mirror of
https://github.com/ApfelTeeSaft/RebrewU.git
synced 2026-08-26 19:33:27 +00:00
61052 lines
3.3 MiB
Plaintext
61052 lines
3.3 MiB
Plaintext
// Generated by RebrewU -- do not edit
|
|
#include <rebrewu_runtime.h>
|
|
#include <stdint.h>
|
|
#include <math.h>
|
|
|
|
#include "Gambit.h"
|
|
|
|
// fn_0238B620 @ 0x238b620
|
|
void Gambit_fn_0238B620(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_0238B620: ; // 0x238b620
|
|
/* 0238B620 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0238B620 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0238B620 */ cpu->r[1] = _t0;
|
|
/* 0238B624 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0238B624 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0238B628 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0238B628 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0238B62C */ cpu->r[31] = cpu->r[3];
|
|
/* 0238B62C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0238B630 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0238B630 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0238B634 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238B634 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0238B634 */ if (_t5) goto L_0238B638; else goto L_0238B648;
|
|
L_0238B638: ; // 0x238b638
|
|
/* 0238B638 */ cpu->r[3] = 0x00000010u;
|
|
/* 0238B63C */ Gambit_fn_02801A78(cpu);
|
|
/* 0238B640 */ cpu->r[31] = cpu->r[3];
|
|
/* 0238B640 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0238B644 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238B644 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0238B644 */ if (_t7) goto L_0238B688; else goto L_0238B648;
|
|
L_0238B648: ; // 0x238b648
|
|
/* 0238B648 */ cpu->r[3] = cpu->r[31];
|
|
/* 0238B648 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238B64C */ cpu->r[30] = 0x00000000u;
|
|
/* 0238B650 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238B650 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0238B650 */ if (_t9) goto L_0238B654; else goto L_0238B664;
|
|
L_0238B654: ; // 0x238b654
|
|
/* 0238B654 */ cpu->r[3] = 0x00000008u;
|
|
/* 0238B658 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238B65C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238B660 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238B660 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0238B660 */ if (_t11) goto L_0238B674; else goto L_0238B664;
|
|
L_0238B664: ; // 0x238b664
|
|
/* 0238B664 */ cpu->r[12] = 0x10080000u;
|
|
/* 0238B668 */ _t12 = cpu->r[3] + 0x00000000u;
|
|
/* 0238B668 */ rbrew_write32(cpu->mem, _t12, cpu->r[30]);
|
|
/* 0238B66C */ cpu->r[12] = cpu->r[12] + 0x00006020u;
|
|
/* 0238B670 */ _t13 = cpu->r[3] + 0x00000004u;
|
|
/* 0238B670 */ rbrew_write32(cpu->mem, _t13, cpu->r[12]);
|
|
L_0238B674: ; // 0x238b674
|
|
/* 0238B674 */ cpu->r[0] = 0x10080000u;
|
|
/* 0238B678 */ _t14 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0238B678 */ rbrew_write32(cpu->mem, _t14, cpu->r[30]);
|
|
/* 0238B67C */ cpu->r[0] = cpu->r[0] + 0x00006030u;
|
|
/* 0238B680 */ _t15 = cpu->r[31] + 0x00000008u;
|
|
/* 0238B680 */ rbrew_write32(cpu->mem, _t15, cpu->r[30]);
|
|
/* 0238B684 */ _t16 = cpu->r[31] + 0x00000004u;
|
|
/* 0238B684 */ rbrew_write32(cpu->mem, _t16, cpu->r[0]);
|
|
L_0238B688: ; // 0x238b688
|
|
/* 0238B688 */ _t17 = cpu->r[1] + 0x00000014u;
|
|
/* 0238B688 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0238B68C */ cpu->r[3] = cpu->r[31];
|
|
/* 0238B690 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0238B690 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0238B694 */ cpu->lr = cpu->r[0];
|
|
/* 0238B698 */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 0238B698 */ cpu->r[30] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0238B69C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0238B6A0 */ return;
|
|
}
|
|
|
|
// fn_0238B6A4 @ 0x238b6a4
|
|
void Gambit_fn_0238B6A4(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0238B6A4: ; // 0x238b6a4
|
|
/* 0238B6A4 */ cpu->r[12] = 0x00000000u;
|
|
/* 0238B6A8 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0238B6A8 */ rbrew_write32(cpu->mem, _t0, cpu->r[12]);
|
|
/* 0238B6AC */ _t1 = cpu->r[3] + 0x00000008u;
|
|
/* 0238B6AC */ rbrew_write32(cpu->mem, _t1, cpu->r[12]);
|
|
/* 0238B6B0 */ return;
|
|
}
|
|
|
|
// fn_0238B6B4 @ 0x238b6b4
|
|
void Gambit_fn_0238B6B4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17;
|
|
|
|
L_0238B6B4: ; // 0x238b6b4
|
|
/* 0238B6B4 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0238B6B4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0238B6B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0238B6BC */ _t1 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0238B6BC */ _t2 = _t1 & 0x00000001u;
|
|
/* 0238B6BC */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 0238B6BC */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0238B6BC */ goto L_0238B6C0;
|
|
L_0238B6C0: ; // 0x238b6c0
|
|
/* 0238B6C0 */ _t4 = cpu->r[3] + 0x00000008u;
|
|
/* 0238B6C0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0238B6C4 */ cpu->r[0] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 0238B6C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0238B6C8 */ cpu->r[11] = 0x00000000u;
|
|
/* 0238B6CC */ _t5 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0238B6CC */ _t6 = _t5 & 0x00000001u;
|
|
/* 0238B6CC */ if (_t6) goto L_0238B6D0; else goto L_0238B6E0;
|
|
L_0238B6D0: ; // 0x238b6d0
|
|
/* 0238B6D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0238B6D4 */ _t7 = cpu->r[3] + 0x00000008u;
|
|
/* 0238B6D4 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 0238B6D8 */ _t8 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0238B6D8 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0238B6D8 */ if (_t9) goto L_0238B6F4; else goto L_0238B6DC;
|
|
L_0238B6DC: ; // 0x238b6dc
|
|
/* 0238B6DC */ return;
|
|
L_0238B6E0: ; // 0x238b6e0
|
|
/* 0238B6E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0238B6E4 */ _t10 = cpu->r[3] + 0x00000008u;
|
|
/* 0238B6E4 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 0238B6E8 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238B6E8 */ _t12 = _t11 & 0x00000001u;
|
|
/* 0238B6E8 */ _t13 = _t12 ^ 0x00000001u;
|
|
/* 0238B6E8 */ if (_t13) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0238B6E8 */ goto L_0238B6EC;
|
|
L_0238B6EC: ; // 0x238b6ec
|
|
/* 0238B6EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0238B6F0 */ _t14 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0238B6F0 */ _t15 = _t14 & 0x00000001u;
|
|
/* 0238B6F0 */ _t16 = _t15 ^ 0x00000001u;
|
|
/* 0238B6F0 */ if (_t16) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0238B6F0 */ goto L_0238B6F4;
|
|
L_0238B6F4: ; // 0x238b6f4
|
|
/* 0238B6F4 */ _t17 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0238B6F4 */ rbrew_write32(cpu->mem, _t17, cpu->r[11]);
|
|
/* 0238B6F8 */ return;
|
|
}
|
|
|
|
// fn_0238B6FC @ 0x238b6fc
|
|
void Gambit_fn_0238B6FC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_0238B6FC: ; // 0x238b6fc
|
|
/* 0238B6FC */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0238B6FC */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0238B700 */ cpu->r[0] = 0x0000012Cu;
|
|
/* 0238B704 */ _t1 = cpu->r[3] + 0x00000008u;
|
|
/* 0238B704 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0238B708 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 0238B70C */ _t2 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0238B70C */ rbrew_write32(cpu->mem, _t2, cpu->r[12]);
|
|
/* 0238B710 */ return;
|
|
}
|
|
|
|
// fn_0238B714 @ 0x238b714
|
|
void Gambit_fn_0238B714(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_0238B714: ; // 0x238b714
|
|
/* 0238B714 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0238B714 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0238B718 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000003u);
|
|
/* 0238B71C */ _t1 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0238B71C */ _t2 = _t1 & 0x00000001u;
|
|
/* 0238B71C */ if (_t2) goto L_0238B720; else goto L_0238B724;
|
|
L_0238B720: ; // 0x238b720
|
|
/* 0238B720 */ cpu->r[0] = 0x00000003u;
|
|
L_0238B724: ; // 0x238b724
|
|
/* 0238B724 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000001u);
|
|
/* 0238B728 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0238B728 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0238B728 */ if (_t4) goto L_0238B744; else goto L_0238B72C;
|
|
L_0238B72C: ; // 0x238b72c
|
|
/* 0238B72C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000004u);
|
|
/* 0238B730 */ _t5 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0238B730 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0238B730 */ if (_t6) goto L_0238B744; else goto L_0238B734;
|
|
L_0238B734: ; // 0x238b734
|
|
/* 0238B734 */ cpu->r[12] = 0x10080000u;
|
|
/* 0238B738 */ cpu->r[12] = cpu->r[12] + 0x0000603Fu;
|
|
/* 0238B73C */ _t7 = cpu->r[12] + cpu->r[0];
|
|
/* 0238B73C */ cpu->r[3] = rbrew_read8(cpu->mem, _t7);
|
|
/* 0238B740 */ return;
|
|
L_0238B744: ; // 0x238b744
|
|
/* 0238B744 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0238B748 */ return;
|
|
}
|
|
|
|
// fn_0238B74C @ 0x238b74c
|
|
void Gambit_fn_0238B74C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_0238B74C: ; // 0x238b74c
|
|
/* 0238B74C */ cpu->r[0] = cpu->lr;
|
|
/* 0238B750 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0238B750 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0238B750 */ cpu->r[1] = _t0;
|
|
/* 0238B754 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0238B754 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0238B758 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0238B758 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0238B75C */ cpu->r[30] = cpu->r[3];
|
|
/* 0238B75C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0238B760 */ cpu->r[31] = cpu->r[4];
|
|
/* 0238B764 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0238B764 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0238B768 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238B768 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0238B768 */ if (_t5) goto L_0238B7B4; else goto L_0238B76C;
|
|
L_0238B76C: ; // 0x238b76c
|
|
/* 0238B76C */ cpu->r[0] = 0x10080000u;
|
|
/* 0238B770 */ cpu->r[9] = 0x10080000u;
|
|
/* 0238B774 */ cpu->r[0] = cpu->r[0] + 0x000060B0u;
|
|
/* 0238B778 */ cpu->r[9] = cpu->r[9] + 0x00006250u;
|
|
/* 0238B77C */ _t6 = cpu->r[30] + 0x00000004u;
|
|
/* 0238B77C */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0238B780 */ cpu->r[0] = 0x10080000u;
|
|
/* 0238B784 */ _t7 = cpu->r[30] + 0x00000244u;
|
|
/* 0238B784 */ rbrew_write32(cpu->mem, _t7, cpu->r[9]);
|
|
/* 0238B788 */ cpu->r[0] = cpu->r[0] + 0x0000607Cu;
|
|
/* 0238B78C */ cpu->r[12] = 0x101C0000u;
|
|
/* 0238B790 */ cpu->r[4] = 0x00000000u;
|
|
/* 0238B794 */ _t8 = cpu->r[30] + 0x000002D4u;
|
|
/* 0238B794 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0238B798 */ cpu->r[3] = cpu->r[30];
|
|
/* 0238B79C */ _t9 = cpu->r[12] + 0x00005B60u;
|
|
/* 0238B79C */ rbrew_write32(cpu->mem, _t9, cpu->r[4]);
|
|
/* 0238B7A0 */ Gambit_fn_023AC354(cpu);
|
|
/* 0238B7A4 */ cpu->r[10] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0238B7A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0238B7A8 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238B7A8 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0238B7A8 */ if (_t11) goto L_0238B7B4; else goto L_0238B7AC;
|
|
L_0238B7AC: ; // 0x238b7ac
|
|
/* 0238B7AC */ cpu->r[3] = cpu->r[30];
|
|
/* 0238B7B0 */ Gambit_fn_02801BB0(cpu);
|
|
L_0238B7B4: ; // 0x238b7b4
|
|
/* 0238B7B4 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0238B7B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0238B7B8 */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 0238B7B8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0238B7BC */ cpu->lr = cpu->r[0];
|
|
/* 0238B7C0 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0238B7C0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0238B7C4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0238B7C8 */ return;
|
|
}
|
|
|
|
// fn_0238B750 @ 0x238b750
|
|
void Gambit_fn_0238B750(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_0238B750: ; // 0x238b750
|
|
/* 0238B750 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0238B750 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0238B750 */ cpu->r[1] = _t0;
|
|
/* 0238B754 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0238B754 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0238B758 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0238B758 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0238B75C */ cpu->r[30] = cpu->r[3];
|
|
/* 0238B75C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0238B760 */ cpu->r[31] = cpu->r[4];
|
|
/* 0238B764 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0238B764 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0238B768 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238B768 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0238B768 */ if (_t5) goto L_0238B7B4; else goto L_0238B76C;
|
|
L_0238B76C: ; // 0x238b76c
|
|
/* 0238B76C */ cpu->r[0] = 0x10080000u;
|
|
/* 0238B770 */ cpu->r[9] = 0x10080000u;
|
|
/* 0238B774 */ cpu->r[0] = cpu->r[0] + 0x000060B0u;
|
|
/* 0238B778 */ cpu->r[9] = cpu->r[9] + 0x00006250u;
|
|
/* 0238B77C */ _t6 = cpu->r[30] + 0x00000004u;
|
|
/* 0238B77C */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0238B780 */ cpu->r[0] = 0x10080000u;
|
|
/* 0238B784 */ _t7 = cpu->r[30] + 0x00000244u;
|
|
/* 0238B784 */ rbrew_write32(cpu->mem, _t7, cpu->r[9]);
|
|
/* 0238B788 */ cpu->r[0] = cpu->r[0] + 0x0000607Cu;
|
|
/* 0238B78C */ cpu->r[12] = 0x101C0000u;
|
|
/* 0238B790 */ cpu->r[4] = 0x00000000u;
|
|
/* 0238B794 */ _t8 = cpu->r[30] + 0x000002D4u;
|
|
/* 0238B794 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0238B798 */ cpu->r[3] = cpu->r[30];
|
|
/* 0238B79C */ _t9 = cpu->r[12] + 0x00005B60u;
|
|
/* 0238B79C */ rbrew_write32(cpu->mem, _t9, cpu->r[4]);
|
|
/* 0238B7A0 */ Gambit_fn_023AC354(cpu);
|
|
/* 0238B7A4 */ cpu->r[10] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0238B7A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0238B7A8 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238B7A8 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0238B7A8 */ if (_t11) goto L_0238B7B4; else goto L_0238B7AC;
|
|
L_0238B7AC: ; // 0x238b7ac
|
|
/* 0238B7AC */ cpu->r[3] = cpu->r[30];
|
|
/* 0238B7B0 */ Gambit_fn_02801BB0(cpu);
|
|
L_0238B7B4: ; // 0x238b7b4
|
|
/* 0238B7B4 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0238B7B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0238B7B8 */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 0238B7B8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0238B7BC */ cpu->lr = cpu->r[0];
|
|
/* 0238B7C0 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0238B7C0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0238B7C4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0238B7C8 */ return;
|
|
}
|
|
|
|
// fn_0238B7CC @ 0x238b7cc
|
|
void Gambit_fn_0238B7CC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_0238B74C: ; // 0x238b74c
|
|
/* 0238B74C */ cpu->r[0] = cpu->lr;
|
|
/* 0238B750 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0238B750 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0238B750 */ cpu->r[1] = _t0;
|
|
/* 0238B754 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0238B754 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0238B758 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0238B758 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0238B75C */ cpu->r[30] = cpu->r[3];
|
|
/* 0238B75C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0238B760 */ cpu->r[31] = cpu->r[4];
|
|
/* 0238B764 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0238B764 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0238B768 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238B768 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0238B768 */ if (_t5) goto L_0238B7B4; else goto L_0238B76C;
|
|
L_0238B76C: ; // 0x238b76c
|
|
/* 0238B76C */ cpu->r[0] = 0x10080000u;
|
|
/* 0238B770 */ cpu->r[9] = 0x10080000u;
|
|
/* 0238B774 */ cpu->r[0] = cpu->r[0] + 0x000060B0u;
|
|
/* 0238B778 */ cpu->r[9] = cpu->r[9] + 0x00006250u;
|
|
/* 0238B77C */ _t6 = cpu->r[30] + 0x00000004u;
|
|
/* 0238B77C */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0238B780 */ cpu->r[0] = 0x10080000u;
|
|
/* 0238B784 */ _t7 = cpu->r[30] + 0x00000244u;
|
|
/* 0238B784 */ rbrew_write32(cpu->mem, _t7, cpu->r[9]);
|
|
/* 0238B788 */ cpu->r[0] = cpu->r[0] + 0x0000607Cu;
|
|
/* 0238B78C */ cpu->r[12] = 0x101C0000u;
|
|
/* 0238B790 */ cpu->r[4] = 0x00000000u;
|
|
/* 0238B794 */ _t8 = cpu->r[30] + 0x000002D4u;
|
|
/* 0238B794 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0238B798 */ cpu->r[3] = cpu->r[30];
|
|
/* 0238B79C */ _t9 = cpu->r[12] + 0x00005B60u;
|
|
/* 0238B79C */ rbrew_write32(cpu->mem, _t9, cpu->r[4]);
|
|
/* 0238B7A0 */ Gambit_fn_023AC354(cpu);
|
|
/* 0238B7A4 */ cpu->r[10] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0238B7A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0238B7A8 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238B7A8 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0238B7A8 */ if (_t11) goto L_0238B7B4; else goto L_0238B7AC;
|
|
L_0238B7AC: ; // 0x238b7ac
|
|
/* 0238B7AC */ cpu->r[3] = cpu->r[30];
|
|
/* 0238B7B0 */ Gambit_fn_02801BB0(cpu);
|
|
L_0238B7B4: ; // 0x238b7b4
|
|
/* 0238B7B4 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0238B7B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0238B7B8 */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 0238B7B8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0238B7BC */ cpu->lr = cpu->r[0];
|
|
/* 0238B7C0 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0238B7C0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0238B7C4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0238B7C8 */ return;
|
|
L_0238B7CC: ; // 0x238b7cc
|
|
/* 0238B7CC */ cpu->r[3] = cpu->r[3] + 0xFFFFFDC8u;
|
|
/* 0238B7D0 */ goto L_0238B74C;
|
|
}
|
|
|
|
// fn_0238B7D8 @ 0x238b7d8
|
|
void Gambit_fn_0238B7D8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_0238B7D8: ; // 0x238b7d8
|
|
/* 0238B7D8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0238B7D8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0238B7D8 */ cpu->r[1] = _t0;
|
|
/* 0238B7DC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0238B7DC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0238B7E0 */ cpu->r[31] = cpu->r[3];
|
|
/* 0238B7E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0238B7E4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0238B7E4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0238B7E8 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238B7E8 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0238B7E8 */ if (_t4) goto L_0238B7EC; else goto L_0238B7FC;
|
|
L_0238B7EC: ; // 0x238b7ec
|
|
/* 0238B7EC */ cpu->r[3] = 0x000002E0u;
|
|
/* 0238B7F0 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238B7F4 */ cpu->r[31] = cpu->r[3];
|
|
/* 0238B7F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0238B7F8 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238B7F8 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0238B7F8 */ if (_t6) goto L_0238B848; else goto L_0238B7FC;
|
|
L_0238B7FC: ; // 0x238b7fc
|
|
/* 0238B7FC */ cpu->r[4] = 0x00000001u;
|
|
/* 0238B800 */ cpu->r[3] = cpu->r[31];
|
|
/* 0238B804 */ cpu->r[6] = 0x0000000Fu;
|
|
/* 0238B808 */ cpu->r[5] = cpu->r[4];
|
|
/* 0238B80C */ Gambit_fn_023AC3D0(cpu);
|
|
/* 0238B810 */ cpu->r[11] = 0x10080000u;
|
|
/* 0238B814 */ cpu->r[0] = 0x10080000u;
|
|
/* 0238B818 */ cpu->r[11] = cpu->r[11] + 0x000060B0u;
|
|
/* 0238B81C */ cpu->r[0] = cpu->r[0] + 0x0000607Cu;
|
|
/* 0238B820 */ cpu->r[12] = 0x10080000u;
|
|
/* 0238B824 */ _t7 = cpu->r[31] + 0x00000004u;
|
|
/* 0238B824 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 0238B828 */ cpu->r[12] = cpu->r[12] + 0x00006250u;
|
|
/* 0238B82C */ _t8 = cpu->r[31] + 0x000002D4u;
|
|
/* 0238B82C */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0238B830 */ cpu->r[0] = 0x00000000u;
|
|
/* 0238B834 */ _t9 = cpu->r[31] + 0x00000244u;
|
|
/* 0238B834 */ rbrew_write32(cpu->mem, _t9, cpu->r[12]);
|
|
/* 0238B838 */ _t10 = cpu->r[31] + 0x000002DCu;
|
|
/* 0238B838 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 0238B83C */ cpu->r[12] = 0x101C0000u;
|
|
/* 0238B840 */ _t11 = cpu->r[31] + 0x000002D8u;
|
|
/* 0238B840 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 0238B844 */ _t12 = cpu->r[12] + 0x00005B60u;
|
|
/* 0238B844 */ rbrew_write32(cpu->mem, _t12, cpu->r[31]);
|
|
L_0238B848: ; // 0x238b848
|
|
/* 0238B848 */ _t13 = cpu->r[1] + 0x00000014u;
|
|
/* 0238B848 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0238B84C */ cpu->r[3] = cpu->r[31];
|
|
/* 0238B850 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0238B850 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0238B854 */ cpu->lr = cpu->r[0];
|
|
/* 0238B858 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0238B85C */ return;
|
|
}
|
|
|
|
// fn_0238B860 @ 0x238b860
|
|
void Gambit_fn_0238B860(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_0238B860: ; // 0x238b860
|
|
/* 0238B860 */ cpu->r[0] = cpu->lr;
|
|
/* 0238B864 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 0238B864 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0238B864 */ cpu->r[1] = _t0;
|
|
/* 0238B868 */ _t1 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0238B868 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0238B86C */ cpu->r[31] = cpu->r[3];
|
|
/* 0238B870 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0238B874 */ _t2 = cpu->r[1] + 0x00000024u;
|
|
/* 0238B874 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0238B878 */ Gambit_fn_02468358(cpu);
|
|
/* 0238B87C */ cpu->r[0] = 0x00000006u;
|
|
/* 0238B880 */ cpu->r[11] = 0x00000008u;
|
|
/* 0238B884 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 0238B884 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0238B888 */ cpu->r[3] = 0x00000000u;
|
|
/* 0238B88C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0238B890 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0238B890 */ rbrew_write32(cpu->mem, _t4, cpu->r[11]);
|
|
/* 0238B894 */ Gambit_fn_02466644(cpu);
|
|
/* 0238B898 */ cpu->r[4] = cpu->r[3];
|
|
/* 0238B898 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 0238B89C */ _t5 = cpu->r[31] + 0x00000250u;
|
|
/* 0238B89C */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0238B8A0 */ _t6 = cpu->r[31] + 0x000002DCu;
|
|
/* 0238B8A0 */ rbrew_write32(cpu->mem, _t6, cpu->r[4]);
|
|
/* 0238B8A4 */ _t7 = cpu->r[12] + 0x00000250u;
|
|
/* 0238B8A4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0238B8A8 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238B8A8 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0238B8A8 */ if (_t9) goto L_0238B8B0; else goto L_0238B8AC;
|
|
L_0238B8AC: ; // 0x238b8ac
|
|
/* 0238B8AC */ cpu->r[4] = cpu->r[4] + 0x00000010u;
|
|
L_0238B8B0: ; // 0x238b8b0
|
|
/* 0238B8B0 */ cpu->r[5] = 0x00000000u;
|
|
/* 0238B8B4 */ Gambit_fn_027EFC10(cpu);
|
|
/* 0238B8B8 */ _t10 = cpu->r[1] + 0x00000024u;
|
|
/* 0238B8B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0238B8BC */ _t11 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0238B8BC */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0238B8C0 */ cpu->lr = cpu->r[0];
|
|
/* 0238B8C4 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 0238B8C8 */ return;
|
|
}
|
|
|
|
// fn_0238B864 @ 0x238b864
|
|
void Gambit_fn_0238B864(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_0238B864: ; // 0x238b864
|
|
/* 0238B864 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 0238B864 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0238B864 */ cpu->r[1] = _t0;
|
|
/* 0238B868 */ _t1 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0238B868 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0238B86C */ cpu->r[31] = cpu->r[3];
|
|
/* 0238B870 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0238B874 */ _t2 = cpu->r[1] + 0x00000024u;
|
|
/* 0238B874 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0238B878 */ Gambit_fn_02468358(cpu);
|
|
/* 0238B87C */ cpu->r[0] = 0x00000006u;
|
|
/* 0238B880 */ cpu->r[11] = 0x00000008u;
|
|
/* 0238B884 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 0238B884 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0238B888 */ cpu->r[3] = 0x00000000u;
|
|
/* 0238B88C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0238B890 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0238B890 */ rbrew_write32(cpu->mem, _t4, cpu->r[11]);
|
|
/* 0238B894 */ Gambit_fn_02466644(cpu);
|
|
/* 0238B898 */ cpu->r[4] = cpu->r[3];
|
|
/* 0238B898 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 0238B89C */ _t5 = cpu->r[31] + 0x00000250u;
|
|
/* 0238B89C */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0238B8A0 */ _t6 = cpu->r[31] + 0x000002DCu;
|
|
/* 0238B8A0 */ rbrew_write32(cpu->mem, _t6, cpu->r[4]);
|
|
/* 0238B8A4 */ _t7 = cpu->r[12] + 0x00000250u;
|
|
/* 0238B8A4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0238B8A8 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238B8A8 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0238B8A8 */ if (_t9) goto L_0238B8B0; else goto L_0238B8AC;
|
|
L_0238B8AC: ; // 0x238b8ac
|
|
/* 0238B8AC */ cpu->r[4] = cpu->r[4] + 0x00000010u;
|
|
L_0238B8B0: ; // 0x238b8b0
|
|
/* 0238B8B0 */ cpu->r[5] = 0x00000000u;
|
|
/* 0238B8B4 */ Gambit_fn_027EFC10(cpu);
|
|
/* 0238B8B8 */ _t10 = cpu->r[1] + 0x00000024u;
|
|
/* 0238B8B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0238B8BC */ _t11 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0238B8BC */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0238B8C0 */ cpu->lr = cpu->r[0];
|
|
/* 0238B8C4 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 0238B8C8 */ return;
|
|
}
|
|
|
|
// fn_0238B8CC @ 0x238b8cc
|
|
void Gambit_fn_0238B8CC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_0238B8CC: ; // 0x238b8cc
|
|
/* 0238B8CC */ cpu->r[0] = cpu->lr;
|
|
/* 0238B8D0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0238B8D0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0238B8D0 */ cpu->r[1] = _t0;
|
|
/* 0238B8D4 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0238B8D4 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0238B8D8 */ cpu->r[5] = 0x101C0000u;
|
|
/* 0238B8DC */ cpu->r[4] = 0x10080000u;
|
|
/* 0238B8E0 */ cpu->r[30] = cpu->r[3];
|
|
/* 0238B8E4 */ cpu->r[5] = cpu->r[5] + 0x0000724Cu;
|
|
/* 0238B8E8 */ cpu->r[4] = cpu->r[4] + 0x0000609Cu;
|
|
/* 0238B8EC */ cpu->r[3] = cpu->r[30] + 0x000002D4u;
|
|
/* 0238B8F0 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0238B8F0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0238B8F4 */ cpu->r[6] = 0x00000000u;
|
|
/* 0238B8F8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0238B8F8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0238B8FC */ Gambit_fn_027E0DC4(cpu);
|
|
/* 0238B900 */ cpu->r[3] = 0x00000000u;
|
|
/* 0238B904 */ Gambit_fn_0239A6D0(cpu);
|
|
/* 0238B908 */ cpu->r[31] = 0x101C0000u;
|
|
/* 0238B90C */ _t4 = cpu->r[31] + 0x00005BA0u;
|
|
/* 0238B90C */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0238B910 */ cpu->r[4] = 0x00000001u;
|
|
/* 0238B914 */ Gambit_fn_0239A770(cpu);
|
|
/* 0238B918 */ cpu->r[3] = 0x00000000u;
|
|
/* 0238B91C */ Gambit_fn_02399CE8(cpu);
|
|
/* 0238B920 */ cpu->r[3] = cpu->r[30];
|
|
/* 0238B924 */ Gambit_fn_0238B860(cpu);
|
|
/* 0238B928 */ cpu->r[3] = cpu->r[30];
|
|
/* 0238B92C */ Gambit_fn_023AC74C(cpu);
|
|
/* 0238B930 */ _t5 = cpu->r[31] + 0x00005BA0u;
|
|
/* 0238B930 */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0238B934 */ cpu->r[4] = 0x00000000u;
|
|
/* 0238B938 */ Gambit_fn_0239A7C0(cpu);
|
|
/* 0238B93C */ cpu->r[3] = 0x00000000u;
|
|
/* 0238B940 */ Gambit_fn_020FAAF4(cpu);
|
|
/* 0238B944 */ _t6 = cpu->r[30] + 0x00000260u;
|
|
/* 0238B944 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0238B948 */ cpu->r[31] = 0x101C0000u;
|
|
/* 0238B94C */ _t7 = cpu->r[31] + 0x00003700u;
|
|
/* 0238B94C */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0238B950 */ _t8 = cpu->r[12] + 0x00000008u;
|
|
/* 0238B950 */ cpu->r[4] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0238B954 */ Gambit_fn_020FAC24(cpu);
|
|
/* 0238B958 */ _t9 = cpu->r[31] + 0x00003700u;
|
|
/* 0238B958 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0238B95C */ Gambit_fn_020FBF58(cpu);
|
|
/* 0238B960 */ _t10 = cpu->r[31] + 0x00003700u;
|
|
/* 0238B960 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0238B964 */ cpu->r[0] = 0x00000001u;
|
|
/* 0238B968 */ _t11 = cpu->r[12] + 0x0000001Cu;
|
|
/* 0238B968 */ rbrew_write8(cpu->mem, _t11, (uint8_t)cpu->r[0]);
|
|
/* 0238B96C */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0238B96C */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0238B970 */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 0238B970 */ cpu->r[30] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0238B974 */ cpu->lr = cpu->r[0];
|
|
/* 0238B978 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0238B978 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0238B97C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0238B980 */ return;
|
|
}
|
|
|
|
// fn_0238B8D0 @ 0x238b8d0
|
|
void Gambit_fn_0238B8D0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_0238B8D0: ; // 0x238b8d0
|
|
/* 0238B8D0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0238B8D0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0238B8D0 */ cpu->r[1] = _t0;
|
|
/* 0238B8D4 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0238B8D4 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0238B8D8 */ cpu->r[5] = 0x101C0000u;
|
|
/* 0238B8DC */ cpu->r[4] = 0x10080000u;
|
|
/* 0238B8E0 */ cpu->r[30] = cpu->r[3];
|
|
/* 0238B8E4 */ cpu->r[5] = cpu->r[5] + 0x0000724Cu;
|
|
/* 0238B8E8 */ cpu->r[4] = cpu->r[4] + 0x0000609Cu;
|
|
/* 0238B8EC */ cpu->r[3] = cpu->r[30] + 0x000002D4u;
|
|
/* 0238B8F0 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0238B8F0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0238B8F4 */ cpu->r[6] = 0x00000000u;
|
|
/* 0238B8F8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0238B8F8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0238B8FC */ Gambit_fn_027E0DC4(cpu);
|
|
/* 0238B900 */ cpu->r[3] = 0x00000000u;
|
|
/* 0238B904 */ Gambit_fn_0239A6D0(cpu);
|
|
/* 0238B908 */ cpu->r[31] = 0x101C0000u;
|
|
/* 0238B90C */ _t4 = cpu->r[31] + 0x00005BA0u;
|
|
/* 0238B90C */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0238B910 */ cpu->r[4] = 0x00000001u;
|
|
/* 0238B914 */ Gambit_fn_0239A770(cpu);
|
|
/* 0238B918 */ cpu->r[3] = 0x00000000u;
|
|
/* 0238B91C */ Gambit_fn_02399CE8(cpu);
|
|
/* 0238B920 */ cpu->r[3] = cpu->r[30];
|
|
/* 0238B924 */ Gambit_fn_0238B860(cpu);
|
|
/* 0238B928 */ cpu->r[3] = cpu->r[30];
|
|
/* 0238B92C */ Gambit_fn_023AC74C(cpu);
|
|
/* 0238B930 */ _t5 = cpu->r[31] + 0x00005BA0u;
|
|
/* 0238B930 */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0238B934 */ cpu->r[4] = 0x00000000u;
|
|
/* 0238B938 */ Gambit_fn_0239A7C0(cpu);
|
|
/* 0238B93C */ cpu->r[3] = 0x00000000u;
|
|
/* 0238B940 */ Gambit_fn_020FAAF4(cpu);
|
|
/* 0238B944 */ _t6 = cpu->r[30] + 0x00000260u;
|
|
/* 0238B944 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0238B948 */ cpu->r[31] = 0x101C0000u;
|
|
/* 0238B94C */ _t7 = cpu->r[31] + 0x00003700u;
|
|
/* 0238B94C */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0238B950 */ _t8 = cpu->r[12] + 0x00000008u;
|
|
/* 0238B950 */ cpu->r[4] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0238B954 */ Gambit_fn_020FAC24(cpu);
|
|
/* 0238B958 */ _t9 = cpu->r[31] + 0x00003700u;
|
|
/* 0238B958 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0238B95C */ Gambit_fn_020FBF58(cpu);
|
|
/* 0238B960 */ _t10 = cpu->r[31] + 0x00003700u;
|
|
/* 0238B960 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0238B964 */ cpu->r[0] = 0x00000001u;
|
|
/* 0238B968 */ _t11 = cpu->r[12] + 0x0000001Cu;
|
|
/* 0238B968 */ rbrew_write8(cpu->mem, _t11, (uint8_t)cpu->r[0]);
|
|
/* 0238B96C */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0238B96C */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0238B970 */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 0238B970 */ cpu->r[30] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0238B974 */ cpu->lr = cpu->r[0];
|
|
/* 0238B978 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0238B978 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0238B97C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0238B980 */ return;
|
|
}
|
|
|
|
// fn_0238B984 @ 0x238b984
|
|
void Gambit_fn_0238B984(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_0238B984: ; // 0x238b984
|
|
/* 0238B984 */ cpu->r[0] = cpu->lr;
|
|
/* 0238B988 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0238B988 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0238B988 */ cpu->r[1] = _t0;
|
|
/* 0238B98C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0238B98C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0238B990 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0238B990 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0238B994 */ cpu->r[0] = 0x00000000u;
|
|
/* 0238B998 */ cpu->r[31] = cpu->r[3];
|
|
/* 0238B99C */ _t3 = cpu->r[3] + 0x000002D8u;
|
|
/* 0238B99C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0238B9A0 */ Gambit_fn_023ACE28(cpu);
|
|
/* 0238B9A4 */ _t4 = cpu->r[31] + 0x000002DCu;
|
|
/* 0238B9A4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0238B9A8 */ Gambit_fn_02466924(cpu);
|
|
/* 0238B9AC */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 0238B9AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0238B9B0 */ cpu->lr = cpu->r[0];
|
|
/* 0238B9B4 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0238B9B4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0238B9B8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0238B9BC */ return;
|
|
}
|
|
|
|
// fn_0238B988 @ 0x238b988
|
|
void Gambit_fn_0238B988(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_0238B988: ; // 0x238b988
|
|
/* 0238B988 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0238B988 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0238B988 */ cpu->r[1] = _t0;
|
|
/* 0238B98C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0238B98C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0238B990 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0238B990 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0238B994 */ cpu->r[0] = 0x00000000u;
|
|
/* 0238B998 */ cpu->r[31] = cpu->r[3];
|
|
/* 0238B99C */ _t3 = cpu->r[3] + 0x000002D8u;
|
|
/* 0238B99C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0238B9A0 */ Gambit_fn_023ACE28(cpu);
|
|
/* 0238B9A4 */ _t4 = cpu->r[31] + 0x000002DCu;
|
|
/* 0238B9A4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0238B9A8 */ Gambit_fn_02466924(cpu);
|
|
/* 0238B9AC */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 0238B9AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0238B9B0 */ cpu->lr = cpu->r[0];
|
|
/* 0238B9B4 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0238B9B4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0238B9B8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0238B9BC */ return;
|
|
}
|
|
|
|
// fn_0238B9C0 @ 0x238b9c0
|
|
void Gambit_fn_0238B9C0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92;
|
|
|
|
L_0238B9C0: ; // 0x238b9c0
|
|
/* 0238B9C0 */ _t0 = cpu->r[3] + 0x000002D8u;
|
|
/* 0238B9C0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0238B9C4 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 0238B9C8 */ _t1 = cpu->r[3] + 0x000002D8u;
|
|
/* 0238B9C8 */ rbrew_write32(cpu->mem, _t1, cpu->r[12]);
|
|
/* 0238B9CC */ goto L_023AD108;
|
|
L_023AD108: ; // 0x23ad108
|
|
/* 023AD108 */ _t2 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 023AD108 */ rbrew_write32(cpu->mem, _t2, cpu->r[1]);
|
|
/* 023AD108 */ cpu->r[1] = _t2;
|
|
/* 023AD10C */ /* nop */
|
|
/* 023AD110 */ cpu->r[0] = cpu->lr;
|
|
/* 023AD114 */ _t3 = cpu->r[1] + 0x00000034u;
|
|
/* 023AD114 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 023AD118 */ cpu->r[31] = cpu->r[3];
|
|
/* 023AD11C */ _t4 = cpu->r[31] + 0x0000025Cu;
|
|
/* 023AD11C */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 023AD120 */ Gambit_fn_023D7680(cpu);
|
|
/* 023AD124 */ _t5 = cpu->r[31] + 0x00000004u;
|
|
/* 023AD124 */ cpu->r[11] = rbrew_read32(cpu->mem, _t5);
|
|
/* 023AD128 */ _t6 = cpu->r[11] + 0x00000154u;
|
|
/* 023AD128 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 023AD12C */ cpu->ctr = cpu->r[0];
|
|
/* 023AD130 */ cpu->r[3] = cpu->r[31];
|
|
/* 023AD134 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 023AD138 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000004u);
|
|
/* 023AD13C */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023AD13C */ _t8 = _t7 & 0x00000001u;
|
|
/* 023AD13C */ if (_t8) goto L_023AD140; else goto L_023AD1F4;
|
|
L_023AD140: ; // 0x23ad140
|
|
/* 023AD140 */ _t9 = cpu->r[31] + 0x00000258u;
|
|
/* 023AD140 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 023AD144 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000004u);
|
|
/* 023AD148 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023AD148 */ _t11 = _t10 & 0x00000001u;
|
|
/* 023AD148 */ if (_t11) goto L_023AD1F4; else goto L_023AD14C;
|
|
L_023AD14C: ; // 0x23ad14c
|
|
/* 023AD14C */ cpu->r[12] = 0x00000000u;
|
|
/* 023AD150 */ cpu->r[0] = 0x0000000Fu;
|
|
/* 023AD154 */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 023AD158 */ cpu->r[4] = cpu->r[12];
|
|
/* 023AD15C */ cpu->ctr = cpu->r[0];
|
|
/* 023AD160 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
L_023AD164: ; // 0x23ad164
|
|
/* 023AD164 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], 0x00000004u);
|
|
/* 023AD168 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 023AD168 */ _t13 = _t12 & 0x00000001u;
|
|
/* 023AD168 */ if (_t13) goto L_023AD16C; else goto L_023AD19C;
|
|
L_023AD16C: ; // 0x23ad16c
|
|
/* 023AD16C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], 0x00000000u);
|
|
/* 023AD170 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023AD170 */ _t15 = _t14 & 0x00000001u;
|
|
/* 023AD170 */ if (_t15) goto L_023AD1E8; else goto L_023AD174;
|
|
L_023AD174: ; // 0x23ad174
|
|
/* 023AD174 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], 0x00000002u);
|
|
/* 023AD178 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023AD178 */ _t17 = _t16 & 0x00000001u;
|
|
/* 023AD178 */ if (_t17) goto L_023AD1E8; else goto L_023AD17C;
|
|
L_023AD17C: ; // 0x23ad17c
|
|
/* 023AD17C */ _t18 = cpu->r[31] + 0x00000030u;
|
|
/* 023AD17C */ cpu->r[8] = rbrew_read32(cpu->mem, _t18);
|
|
/* 023AD180 */ _t19 = cpu->r[8] + cpu->r[4];
|
|
/* 023AD180 */ cpu->r[9] = rbrew_read32(cpu->mem, _t19);
|
|
/* 023AD184 */ _t20 = cpu->r[9] + 0x00000004u;
|
|
/* 023AD184 */ cpu->r[10] = rbrew_read32(cpu->mem, _t20);
|
|
/* 023AD188 */ _t21 = cpu->r[10] + 0x00000000u;
|
|
/* 023AD188 */ cpu->r[9] = rbrew_read32(cpu->mem, _t21);
|
|
/* 023AD18C */ _t22 = cpu->r[1] + 0x00000008u;
|
|
/* 023AD18C */ rbrew_write32(cpu->mem, _t22, cpu->r[11]);
|
|
/* 023AD190 */ _t23 = cpu->r[5] + 0x00000000u;
|
|
/* 023AD190 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 023AD194 */ _t24 = cpu->r[9] + 0x0000000Cu;
|
|
/* 023AD194 */ rbrew_write32(cpu->mem, _t24, cpu->r[0]);
|
|
/* 023AD198 */ goto L_023AD1E8;
|
|
L_023AD19C: ; // 0x23ad19c
|
|
/* 023AD19C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], 0x00000004u);
|
|
/* 023AD1A0 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023AD1A0 */ _t26 = _t25 & 0x00000001u;
|
|
/* 023AD1A0 */ if (_t26) goto L_023AD1E8; else goto L_023AD1A4;
|
|
L_023AD1A4: ; // 0x23ad1a4
|
|
/* 023AD1A4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], 0x00000009u);
|
|
/* 023AD1A8 */ _t27 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 023AD1A8 */ _t28 = _t27 & 0x00000001u;
|
|
/* 023AD1A8 */ if (_t28) goto L_023AD1CC; else goto L_023AD1AC;
|
|
L_023AD1AC: ; // 0x23ad1ac
|
|
/* 023AD1AC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], 0x0000000Au);
|
|
/* 023AD1B0 */ _t29 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 023AD1B0 */ _t30 = _t29 & 0x00000001u;
|
|
/* 023AD1B0 */ if (_t30) goto L_023AD1B4; else goto L_023AD1E8;
|
|
L_023AD1B4: ; // 0x23ad1b4
|
|
/* 023AD1B4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], 0x0000000Cu);
|
|
/* 023AD1B8 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023AD1B8 */ _t32 = _t31 & 0x00000001u;
|
|
/* 023AD1B8 */ if (_t32) goto L_023AD1BC; else goto L_023AD1CC;
|
|
L_023AD1BC: ; // 0x23ad1bc
|
|
/* 023AD1BC */ _t33 = cpu->r[31] + 0x000002B0u;
|
|
/* 023AD1BC */ cpu->r[6] = rbrew_read32(cpu->mem, _t33);
|
|
/* 023AD1C0 */ cpu->r[7] = cpu->r[6] + 0xFFFFFFFFu;
|
|
/* 023AD1C4 */ cpu->r[0] = cpu->r[6] - cpu->r[7];
|
|
/* 023AD1C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 023AD1C8 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023AD1C8 */ _t35 = _t34 & 0x00000001u;
|
|
/* 023AD1C8 */ if (_t35) goto L_023AD1E8; else goto L_023AD1CC;
|
|
L_023AD1CC: ; // 0x23ad1cc
|
|
/* 023AD1CC */ _t36 = cpu->r[31] + 0x00000030u;
|
|
/* 023AD1CC */ cpu->r[8] = rbrew_read32(cpu->mem, _t36);
|
|
/* 023AD1D0 */ _t37 = cpu->r[8] + cpu->r[4];
|
|
/* 023AD1D0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t37);
|
|
/* 023AD1D4 */ _t38 = cpu->r[9] + 0x00000004u;
|
|
/* 023AD1D4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t38);
|
|
/* 023AD1D8 */ _t39 = cpu->r[10] + 0x00000000u;
|
|
/* 023AD1D8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t39);
|
|
/* 023AD1DC */ _t40 = cpu->r[1] + 0x00000008u;
|
|
/* 023AD1DC */ rbrew_write32(cpu->mem, _t40, cpu->r[11]);
|
|
/* 023AD1E0 */ _t41 = cpu->r[5] + 0x00000000u;
|
|
/* 023AD1E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t41);
|
|
/* 023AD1E4 */ _t42 = cpu->r[9] + 0x0000000Cu;
|
|
/* 023AD1E4 */ rbrew_write32(cpu->mem, _t42, cpu->r[0]);
|
|
L_023AD1E8: ; // 0x23ad1e8
|
|
/* 023AD1E8 */ cpu->r[4] = cpu->r[4] + 0x00000004u;
|
|
/* 023AD1EC */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 023AD1F0 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 023AD1F0 */ _t43 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 023AD1F0 */ _t44 = _t43 >> (0x00000002u & 31u);
|
|
/* 023AD1F0 */ _t45 = _t44 & 0x00000001u;
|
|
/* 023AD1F0 */ if (_t45) goto L_023AD164; else goto L_023AD1F4;
|
|
L_023AD1F4: ; // 0x23ad1f4
|
|
/* 023AD1F4 */ _t46 = cpu->r[31] + 0x00000004u;
|
|
/* 023AD1F4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t46);
|
|
/* 023AD1F8 */ _t47 = cpu->r[12] + 0x00000154u;
|
|
/* 023AD1F8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t47);
|
|
/* 023AD1FC */ cpu->ctr = cpu->r[6];
|
|
/* 023AD200 */ cpu->r[3] = cpu->r[31];
|
|
/* 023AD204 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 023AD208 */ cpu->r[8] = 0x10090000u;
|
|
/* 023AD20C */ _t48 = cpu->r[31] + 0x00000258u;
|
|
/* 023AD20C */ rbrew_write32(cpu->mem, _t48, cpu->r[3]);
|
|
/* 023AD210 */ cpu->r[0] = 0x00000004u;
|
|
/* 023AD214 */ _t49 = cpu->r[8] + 0xFFFF8314u;
|
|
/* 023AD214 */ cpu->r[10] = rbrew_read32(cpu->mem, _t49);
|
|
/* 023AD218 */ cpu->r[7] = 0x00000006u;
|
|
/* 023AD21C */ _t50 = cpu->r[1] + 0x00000014u;
|
|
/* 023AD21C */ rbrew_write32(cpu->mem, _t50, cpu->r[0]);
|
|
/* 023AD220 */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 023AD224 */ _t51 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023AD224 */ rbrew_write32(cpu->mem, _t51, cpu->r[7]);
|
|
/* 023AD228 */ cpu->r[3] = cpu->r[31];
|
|
/* 023AD22C */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 023AD230 */ _t52 = cpu->r[1] + 0x00000010u;
|
|
/* 023AD230 */ rbrew_write32(cpu->mem, _t52, cpu->r[10]);
|
|
/* 023AD234 */ Gambit_fn_02791888(cpu);
|
|
/* 023AD238 */ _t53 = cpu->r[31] + 0x00000230u;
|
|
/* 023AD238 */ cpu->r[11] = rbrew_read32(cpu->mem, _t53);
|
|
/* 023AD23C */ _t54 = cpu->r[31] + 0x0000025Cu;
|
|
/* 023AD23C */ cpu->r[3] = rbrew_read32(cpu->mem, _t54);
|
|
/* 023AD240 */ cpu->r[11] = cpu->r[11] | 0x00000040u;
|
|
/* 023AD244 */ _t55 = cpu->r[31] + 0x00000230u;
|
|
/* 023AD244 */ rbrew_write32(cpu->mem, _t55, cpu->r[11]);
|
|
/* 023AD248 */ Gambit_fn_023D768C(cpu);
|
|
/* 023AD24C */ _t56 = cpu->r[31] + 0x00000258u;
|
|
/* 023AD24C */ cpu->r[12] = rbrew_read32(cpu->mem, _t56);
|
|
/* 023AD250 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000003u);
|
|
/* 023AD254 */ cpu->r[29] = cpu->r[31] + 0x000002C0u;
|
|
/* 023AD258 */ _t57 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023AD258 */ _t58 = _t57 & 0x00000001u;
|
|
/* 023AD258 */ if (_t58) goto L_023AD274; else goto L_023AD25C;
|
|
L_023AD25C: ; // 0x23ad25c
|
|
/* 023AD25C */ cpu->r[30] = 0x101C0000u;
|
|
/* 023AD260 */ _t59 = cpu->r[30] + 0x00006000u;
|
|
/* 023AD260 */ cpu->r[6] = rbrew_read32(cpu->mem, _t59);
|
|
/* 023AD260 */ cpu->r[30] = _t59;
|
|
/* 023AD264 */ _t60 = cpu->r[6] + 0x000002C8u;
|
|
/* 023AD264 */ cpu->r[7] = rbrew_read32(cpu->mem, _t60);
|
|
/* 023AD268 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000001u);
|
|
/* 023AD26C */ _t61 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 023AD26C */ _t62 = _t61 & 0x00000001u;
|
|
/* 023AD26C */ if (_t62) goto L_023AD270; else goto L_023AD304;
|
|
L_023AD270: ; // 0x23ad270
|
|
/* 023AD270 */ goto L_023AD2A4;
|
|
L_023AD274: ; // 0x23ad274
|
|
/* 023AD274 */ cpu->r[8] = 0x00000002u;
|
|
/* 023AD278 */ cpu->r[6] = 0x00000000u;
|
|
/* 023AD27C */ cpu->ctr = cpu->r[8];
|
|
/* 023AD280 */ cpu->r[0] = cpu->r[6];
|
|
L_023AD284: ; // 0x23ad284
|
|
/* 023AD284 */ _t63 = cpu->r[29] + cpu->r[6];
|
|
/* 023AD284 */ rbrew_write8(cpu->mem, _t63, (uint8_t)cpu->r[0]);
|
|
/* 023AD288 */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 023AD28C */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 023AD28C */ _t64 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 023AD28C */ _t65 = _t64 >> (0x00000002u & 31u);
|
|
/* 023AD28C */ _t66 = _t65 & 0x00000001u;
|
|
/* 023AD28C */ if (_t66) goto L_023AD284; else goto L_023AD290;
|
|
L_023AD290: ; // 0x23ad290
|
|
/* 023AD290 */ cpu->r[30] = 0x101C0000u;
|
|
/* 023AD294 */ _t67 = cpu->r[30] + 0x00006000u;
|
|
/* 023AD294 */ cpu->r[6] = rbrew_read32(cpu->mem, _t67);
|
|
/* 023AD294 */ cpu->r[30] = _t67;
|
|
/* 023AD298 */ _t68 = cpu->r[6] + 0x000002C8u;
|
|
/* 023AD298 */ cpu->r[7] = rbrew_read32(cpu->mem, _t68);
|
|
/* 023AD29C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000001u);
|
|
/* 023AD2A0 */ _t69 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 023AD2A0 */ _t70 = _t69 & 0x00000001u;
|
|
/* 023AD2A0 */ if (_t70) goto L_023AD2A4; else goto L_023AD304;
|
|
L_023AD2A4: ; // 0x23ad2a4
|
|
/* 023AD2A4 */ cpu->r[27] = 0x00000000u;
|
|
/* 023AD2A8 */ cpu->r[28] = cpu->r[27];
|
|
L_023AD2AC: ; // 0x23ad2ac
|
|
/* 023AD2AC */ _t71 = cpu->r[29] + cpu->r[27];
|
|
/* 023AD2AC */ cpu->r[8] = rbrew_read8(cpu->mem, _t71);
|
|
/* 023AD2B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 023AD2B4 */ _t72 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023AD2B4 */ _t73 = _t72 & 0x00000001u;
|
|
/* 023AD2B4 */ if (_t73) goto L_023AD2DC; else goto L_023AD2B8;
|
|
L_023AD2B8: ; // 0x23ad2b8
|
|
/* 023AD2B8 */ _t74 = cpu->r[31] + 0x000002A4u;
|
|
/* 023AD2B8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t74);
|
|
/* 023AD2BC */ cpu->r[4] = cpu->r[27];
|
|
/* 023AD2C0 */ Gambit_fn_023B4248(cpu);
|
|
/* 023AD2C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023AD2C8 */ _t75 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023AD2C8 */ _t76 = _t75 & 0x00000001u;
|
|
/* 023AD2C8 */ if (_t76) goto L_023AD2DC; else goto L_023AD2CC;
|
|
L_023AD2CC: ; // 0x23ad2cc
|
|
/* 023AD2CC */ _t77 = cpu->r[29] + cpu->r[27];
|
|
/* 023AD2CC */ rbrew_write8(cpu->mem, _t77, (uint8_t)cpu->r[28]);
|
|
/* 023AD2D0 */ _t78 = cpu->r[31] + 0x000002A4u;
|
|
/* 023AD2D0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t78);
|
|
/* 023AD2D4 */ cpu->r[4] = cpu->r[27];
|
|
/* 023AD2D8 */ Gambit_fn_023B4408(cpu);
|
|
L_023AD2DC: ; // 0x23ad2dc
|
|
/* 023AD2DC */ _t79 = cpu->r[30] + 0x00000000u;
|
|
/* 023AD2DC */ cpu->r[11] = rbrew_read32(cpu->mem, _t79);
|
|
/* 023AD2E0 */ _t80 = cpu->r[11] + 0x000002C8u;
|
|
/* 023AD2E0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t80);
|
|
/* 023AD2E4 */ cpu->r[27] = cpu->r[27] + 0x00000001u;
|
|
/* 023AD2E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], cpu->r[12]);
|
|
/* 023AD2EC */ _t81 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 023AD2EC */ _t82 = _t81 & 0x00000001u;
|
|
/* 023AD2EC */ if (_t82) goto L_023AD2AC; else goto L_023AD2F0;
|
|
L_023AD2F0: ; // 0x23ad2f0
|
|
/* 023AD2F0 */ /* nop */
|
|
/* 023AD2F4 */ _t83 = cpu->r[1] + 0x00000034u;
|
|
/* 023AD2F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t83);
|
|
/* 023AD2F8 */ cpu->lr = cpu->r[0];
|
|
/* 023AD2FC */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 023AD300 */ return;
|
|
L_023AD304: ; // 0x23ad304
|
|
/* 023AD304 */ _t84 = cpu->r[29] + 0x00000000u;
|
|
/* 023AD304 */ cpu->r[0] = rbrew_read8(cpu->mem, _t84);
|
|
/* 023AD308 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 023AD30C */ _t85 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023AD30C */ _t86 = _t85 & 0x00000001u;
|
|
/* 023AD30C */ if (_t86) goto L_023AD338; else goto L_023AD310;
|
|
L_023AD310: ; // 0x23ad310
|
|
/* 023AD310 */ _t87 = cpu->r[31] + 0x000002A4u;
|
|
/* 023AD310 */ cpu->r[3] = rbrew_read32(cpu->mem, _t87);
|
|
/* 023AD314 */ cpu->r[4] = 0xFFFFFFFFu;
|
|
/* 023AD318 */ Gambit_fn_023B4248(cpu);
|
|
/* 023AD31C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023AD320 */ _t88 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023AD320 */ _t89 = _t88 & 0x00000001u;
|
|
/* 023AD320 */ if (_t89) goto L_023AD338; else goto L_023AD324;
|
|
L_023AD324: ; // 0x23ad324
|
|
/* 023AD324 */ cpu->r[0] = 0x00000000u;
|
|
/* 023AD328 */ _t90 = cpu->r[29] + 0x00000000u;
|
|
/* 023AD328 */ rbrew_write8(cpu->mem, _t90, (uint8_t)cpu->r[0]);
|
|
/* 023AD32C */ _t91 = cpu->r[31] + 0x000002A4u;
|
|
/* 023AD32C */ cpu->r[3] = rbrew_read32(cpu->mem, _t91);
|
|
/* 023AD330 */ cpu->r[4] = 0xFFFFFFFFu;
|
|
/* 023AD334 */ Gambit_fn_023B4408(cpu);
|
|
L_023AD338: ; // 0x23ad338
|
|
/* 023AD338 */ /* nop */
|
|
/* 023AD33C */ _t92 = cpu->r[1] + 0x00000034u;
|
|
/* 023AD33C */ cpu->r[0] = rbrew_read32(cpu->mem, _t92);
|
|
/* 023AD340 */ cpu->lr = cpu->r[0];
|
|
/* 023AD344 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 023AD348 */ return;
|
|
}
|
|
|
|
// fn_0238B9D0 @ 0x238b9d0
|
|
void Gambit_fn_0238B9D0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_0238B9D0: ; // 0x238b9d0
|
|
/* 0238B9D0 */ cpu->r[0] = cpu->lr;
|
|
/* 0238B9D4 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 0238B9D4 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 0238B9D8 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 0238B9D8 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 0238B9D8 */ cpu->r[1] = _t1;
|
|
/* 0238B9DC */ Gambit_fn_023AD3A8(cpu);
|
|
/* 0238B9E0 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0238B9E4 */ _t2 = cpu->r[3] + 0x00005B90u;
|
|
/* 0238B9E4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0238B9E8 */ Gambit_fn_02399ED0(cpu);
|
|
/* 0238B9EC */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0238B9EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0238B9F0 */ cpu->lr = cpu->r[0];
|
|
/* 0238B9F4 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 0238B9F8 */ return;
|
|
}
|
|
|
|
// fn_0238B9D8 @ 0x238b9d8
|
|
void Gambit_fn_0238B9D8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_0238B9D8: ; // 0x238b9d8
|
|
/* 0238B9D8 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 0238B9D8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0238B9D8 */ cpu->r[1] = _t0;
|
|
/* 0238B9DC */ Gambit_fn_023AD3A8(cpu);
|
|
/* 0238B9E0 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0238B9E4 */ _t1 = cpu->r[3] + 0x00005B90u;
|
|
/* 0238B9E4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0238B9E8 */ Gambit_fn_02399ED0(cpu);
|
|
/* 0238B9EC */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0238B9EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0238B9F0 */ cpu->lr = cpu->r[0];
|
|
/* 0238B9F4 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 0238B9F8 */ return;
|
|
}
|
|
|
|
// fn_0238B9FC @ 0x238b9fc
|
|
void Gambit_fn_0238B9FC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0238B9FC: ; // 0x238b9fc
|
|
/* 0238B9FC */ cpu->r[5] = 0xFFFFFFFDu;
|
|
/* 0238BA00 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0238BA00 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0238BA00 */ cpu->r[1] = _t0;
|
|
/* 0238BA04 */ cpu->r[10] = 0x101E0000u;
|
|
/* 0238BA08 */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 0238BA0C */ _t1 = cpu->r[10] + 0x000047C8u;
|
|
/* 0238BA0C */ rbrew_write32(cpu->mem, _t1, cpu->r[5]);
|
|
/* 0238BA0C */ cpu->r[10] = _t1;
|
|
/* 0238BA10 */ cpu->r[7] = 0x101E0000u;
|
|
/* 0238BA14 */ _t2 = cpu->r[10] + 0x00000004u;
|
|
/* 0238BA14 */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 0238BA18 */ cpu->r[9] = 0xFFFFFFFEu;
|
|
/* 0238BA1C */ cpu->r[8] = 0x101E0000u;
|
|
/* 0238BA20 */ _t3 = cpu->r[7] + 0x000047D8u;
|
|
/* 0238BA20 */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 0238BA20 */ cpu->r[7] = _t3;
|
|
/* 0238BA24 */ _t4 = cpu->r[8] + 0x000047D0u;
|
|
/* 0238BA24 */ rbrew_write32(cpu->mem, _t4, cpu->r[9]);
|
|
/* 0238BA24 */ cpu->r[8] = _t4;
|
|
/* 0238BA28 */ cpu->r[0] = 0x00000002u;
|
|
/* 0238BA2C */ _t5 = cpu->r[8] + 0x00000004u;
|
|
/* 0238BA2C */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 0238BA30 */ cpu->r[8] = 0x101E0000u;
|
|
/* 0238BA34 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 0238BA34 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0238BA38 */ cpu->r[12] = 0x101E0000u;
|
|
/* 0238BA3C */ _t7 = cpu->r[7] + 0x00000004u;
|
|
/* 0238BA3C */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 0238BA40 */ _t8 = cpu->r[8] + 0x000047E8u;
|
|
/* 0238BA40 */ rbrew_write32(cpu->mem, _t8, cpu->r[5]);
|
|
/* 0238BA40 */ cpu->r[8] = _t8;
|
|
/* 0238BA44 */ _t9 = cpu->r[12] + 0x000047E0u;
|
|
/* 0238BA44 */ rbrew_write32(cpu->mem, _t9, cpu->r[5]);
|
|
/* 0238BA44 */ cpu->r[12] = _t9;
|
|
/* 0238BA48 */ _t10 = cpu->r[12] + 0x00000004u;
|
|
/* 0238BA48 */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 0238BA4C */ cpu->r[0] = 0x00000004u;
|
|
/* 0238BA50 */ _t11 = cpu->r[8] + 0x00000004u;
|
|
/* 0238BA50 */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
/* 0238BA54 */ cpu->r[11] = 0x101E0000u;
|
|
/* 0238BA58 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 0238BA58 */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0238BA5C */ _t13 = cpu->r[11] + 0x000047F0u;
|
|
/* 0238BA5C */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 0238BA60 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0238BA64 */ return;
|
|
}
|
|
|
|
// fn_0238BA00 @ 0x238ba00
|
|
void Gambit_fn_0238BA00(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0238BA00: ; // 0x238ba00
|
|
/* 0238BA00 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0238BA00 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0238BA00 */ cpu->r[1] = _t0;
|
|
/* 0238BA04 */ cpu->r[10] = 0x101E0000u;
|
|
/* 0238BA08 */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 0238BA0C */ _t1 = cpu->r[10] + 0x000047C8u;
|
|
/* 0238BA0C */ rbrew_write32(cpu->mem, _t1, cpu->r[5]);
|
|
/* 0238BA0C */ cpu->r[10] = _t1;
|
|
/* 0238BA10 */ cpu->r[7] = 0x101E0000u;
|
|
/* 0238BA14 */ _t2 = cpu->r[10] + 0x00000004u;
|
|
/* 0238BA14 */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 0238BA18 */ cpu->r[9] = 0xFFFFFFFEu;
|
|
/* 0238BA1C */ cpu->r[8] = 0x101E0000u;
|
|
/* 0238BA20 */ _t3 = cpu->r[7] + 0x000047D8u;
|
|
/* 0238BA20 */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 0238BA20 */ cpu->r[7] = _t3;
|
|
/* 0238BA24 */ _t4 = cpu->r[8] + 0x000047D0u;
|
|
/* 0238BA24 */ rbrew_write32(cpu->mem, _t4, cpu->r[9]);
|
|
/* 0238BA24 */ cpu->r[8] = _t4;
|
|
/* 0238BA28 */ cpu->r[0] = 0x00000002u;
|
|
/* 0238BA2C */ _t5 = cpu->r[8] + 0x00000004u;
|
|
/* 0238BA2C */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 0238BA30 */ cpu->r[8] = 0x101E0000u;
|
|
/* 0238BA34 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 0238BA34 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0238BA38 */ cpu->r[12] = 0x101E0000u;
|
|
/* 0238BA3C */ _t7 = cpu->r[7] + 0x00000004u;
|
|
/* 0238BA3C */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 0238BA40 */ _t8 = cpu->r[8] + 0x000047E8u;
|
|
/* 0238BA40 */ rbrew_write32(cpu->mem, _t8, cpu->r[5]);
|
|
/* 0238BA40 */ cpu->r[8] = _t8;
|
|
/* 0238BA44 */ _t9 = cpu->r[12] + 0x000047E0u;
|
|
/* 0238BA44 */ rbrew_write32(cpu->mem, _t9, cpu->r[5]);
|
|
/* 0238BA44 */ cpu->r[12] = _t9;
|
|
/* 0238BA48 */ _t10 = cpu->r[12] + 0x00000004u;
|
|
/* 0238BA48 */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 0238BA4C */ cpu->r[0] = 0x00000004u;
|
|
/* 0238BA50 */ _t11 = cpu->r[8] + 0x00000004u;
|
|
/* 0238BA50 */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
/* 0238BA54 */ cpu->r[11] = 0x101E0000u;
|
|
/* 0238BA58 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 0238BA58 */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0238BA5C */ _t13 = cpu->r[11] + 0x000047F0u;
|
|
/* 0238BA5C */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 0238BA60 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0238BA64 */ return;
|
|
}
|
|
|
|
// fn_0238BA68 @ 0x238ba68
|
|
void Gambit_fn_0238BA68(CPUState* cpu) {
|
|
L_0238BA68: ; // 0x238ba68
|
|
/* 0238BA68 */ return;
|
|
}
|
|
|
|
// fn_0238BA6C @ 0x238ba6c
|
|
void Gambit_fn_0238BA6C(CPUState* cpu) {
|
|
L_0238BA6C: ; // 0x238ba6c
|
|
/* 0238BA6C */ return;
|
|
}
|
|
|
|
// fn_0238BA70 @ 0x238ba70
|
|
void Gambit_fn_0238BA70(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_0238BA70: ; // 0x238ba70
|
|
/* 0238BA70 */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 0238BA70 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0238BA74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0238BA78 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238BA78 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0238BA78 */ if (_t2) goto L_0238BA84; else goto L_0238BA7C;
|
|
L_0238BA7C: ; // 0x238ba7c
|
|
/* 0238BA7C */ cpu->r[3] = cpu->r[12] + 0x00000034u;
|
|
/* 0238BA80 */ return;
|
|
L_0238BA84: ; // 0x238ba84
|
|
/* 0238BA84 */ cpu->r[3] = 0x00000000u;
|
|
/* 0238BA88 */ return;
|
|
}
|
|
|
|
// fn_0238BA8C @ 0x238ba8c
|
|
void Gambit_fn_0238BA8C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_0238BA8C: ; // 0x238ba8c
|
|
/* 0238BA8C */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 0238BA8C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0238BA90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0238BA94 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238BA94 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0238BA94 */ if (_t2) goto L_0238BAA0; else goto L_0238BA98;
|
|
L_0238BA98: ; // 0x238ba98
|
|
/* 0238BA98 */ cpu->r[3] = cpu->r[12] + 0x00000064u;
|
|
/* 0238BA9C */ return;
|
|
L_0238BAA0: ; // 0x238baa0
|
|
/* 0238BAA0 */ cpu->r[3] = 0x00000000u;
|
|
/* 0238BAA4 */ return;
|
|
}
|
|
|
|
// fn_0238BAA8 @ 0x238baa8
|
|
void Gambit_fn_0238BAA8(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0238BAA8: ; // 0x238baa8
|
|
/* 0238BAA8 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0238BAA8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0238BAAC */ _t1 = cpu->r[12] + 0x00000114u;
|
|
/* 0238BAAC */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0238BAB0 */ cpu->ctr = cpu->r[0];
|
|
/* 0238BAB4 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0238BAB8 @ 0x238bab8
|
|
void Gambit_fn_0238BAB8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0238BAB8: ; // 0x238bab8
|
|
/* 0238BAB8 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0238BAB8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0238BABC */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0238BABC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0238BAC0 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238BAC0 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0238BAC0 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 0238BAC0 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0238BAC0 */ goto L_0238BAC4;
|
|
L_0238BAC4: ; // 0x238bac4
|
|
/* 0238BAC4 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 0238BAC4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0238BAC8 */ _t5 = cpu->r[12] + 0x00000044u;
|
|
/* 0238BAC8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0238BACC */ cpu->ctr = cpu->r[12];
|
|
/* 0238BAD0 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0238BAD4 @ 0x238bad4
|
|
void Gambit_fn_0238BAD4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0238BAD4: ; // 0x238bad4
|
|
/* 0238BAD4 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0238BAD4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0238BAD8 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0238BAD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0238BADC */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238BADC */ _t2 = _t1 & 0x00000001u;
|
|
/* 0238BADC */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 0238BADC */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0238BADC */ goto L_0238BAE0;
|
|
L_0238BAE0: ; // 0x238bae0
|
|
/* 0238BAE0 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 0238BAE0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0238BAE4 */ _t5 = cpu->r[12] + 0x0000004Cu;
|
|
/* 0238BAE4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0238BAE8 */ cpu->ctr = cpu->r[0];
|
|
/* 0238BAEC */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0238BAF0 @ 0x238baf0
|
|
void Gambit_fn_0238BAF0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0238BAF0: ; // 0x238baf0
|
|
/* 0238BAF0 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0238BAF0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0238BAF4 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Eu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0238BAF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0238BAF8 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238BAF8 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0238BAF8 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 0238BAF8 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0238BAF8 */ goto L_0238BAFC;
|
|
L_0238BAFC: ; // 0x238bafc
|
|
/* 0238BAFC */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 0238BAFC */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0238BB00 */ _t5 = cpu->r[12] + 0x00000054u;
|
|
/* 0238BB00 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0238BB04 */ cpu->ctr = cpu->r[0];
|
|
/* 0238BB08 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0238BB0C @ 0x238bb0c
|
|
void Gambit_fn_0238BB0C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0238BB0C: ; // 0x238bb0c
|
|
/* 0238BB0C */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0238BB0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0238BB10 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Du, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0238BB10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0238BB14 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238BB14 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0238BB14 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 0238BB14 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0238BB14 */ goto L_0238BB18;
|
|
L_0238BB18: ; // 0x238bb18
|
|
/* 0238BB18 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 0238BB18 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0238BB1C */ _t5 = cpu->r[12] + 0x0000005Cu;
|
|
/* 0238BB1C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0238BB20 */ cpu->ctr = cpu->r[0];
|
|
/* 0238BB24 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0238BB28 @ 0x238bb28
|
|
void Gambit_fn_0238BB28(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0238BB28: ; // 0x238bb28
|
|
/* 0238BB28 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0238BB28 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0238BB2C */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Cu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0238BB2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0238BB30 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238BB30 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0238BB30 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 0238BB30 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0238BB30 */ goto L_0238BB34;
|
|
L_0238BB34: ; // 0x238bb34
|
|
/* 0238BB34 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 0238BB34 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0238BB38 */ _t5 = cpu->r[12] + 0x00000064u;
|
|
/* 0238BB38 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0238BB3C */ cpu->ctr = cpu->r[0];
|
|
/* 0238BB40 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0238BB44 @ 0x238bb44
|
|
void Gambit_fn_0238BB44(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0238BB44: ; // 0x238bb44
|
|
/* 0238BB44 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0238BB44 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0238BB48 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0238BB48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0238BB4C */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238BB4C */ _t2 = _t1 & 0x00000001u;
|
|
/* 0238BB4C */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 0238BB4C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0238BB4C */ goto L_0238BB50;
|
|
L_0238BB50: ; // 0x238bb50
|
|
/* 0238BB50 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 0238BB50 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0238BB54 */ _t5 = cpu->r[11] + 0x0000006Cu;
|
|
/* 0238BB54 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0238BB58 */ cpu->ctr = cpu->r[0];
|
|
/* 0238BB5C */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0238BB60 @ 0x238bb60
|
|
void Gambit_fn_0238BB60(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0238BB60: ; // 0x238bb60
|
|
/* 0238BB60 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0238BB60 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0238BB64 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Au, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0238BB64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0238BB68 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238BB68 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0238BB68 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 0238BB68 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0238BB68 */ goto L_0238BB6C;
|
|
L_0238BB6C: ; // 0x238bb6c
|
|
/* 0238BB6C */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 0238BB6C */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0238BB70 */ _t5 = cpu->r[11] + 0x00000074u;
|
|
/* 0238BB70 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0238BB74 */ cpu->ctr = cpu->r[0];
|
|
/* 0238BB78 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0238BB7C @ 0x238bb7c
|
|
void Gambit_fn_0238BB7C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0238BB7C: ; // 0x238bb7c
|
|
/* 0238BB7C */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0238BB7C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0238BB80 */ _t1 = cpu->r[12] + 0x00000024u;
|
|
/* 0238BB80 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0238BB84 */ cpu->ctr = cpu->r[0];
|
|
/* 0238BB88 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0238BB8C @ 0x238bb8c
|
|
void Gambit_fn_0238BB8C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0238BB8C: ; // 0x238bb8c
|
|
/* 0238BB8C */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0238BB8C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0238BB90 */ _t1 = cpu->r[12] + 0x0000002Cu;
|
|
/* 0238BB90 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0238BB94 */ cpu->ctr = cpu->r[0];
|
|
/* 0238BB98 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0238BB9C @ 0x238bb9c
|
|
void Gambit_fn_0238BB9C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0238BB9C: ; // 0x238bb9c
|
|
/* 0238BB9C */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0238BB9C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0238BBA0 */ _t1 = cpu->r[12] + 0x00000034u;
|
|
/* 0238BBA0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0238BBA4 */ cpu->ctr = cpu->r[0];
|
|
/* 0238BBA8 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0238BBAC @ 0x238bbac
|
|
void Gambit_fn_0238BBAC(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0238BBAC: ; // 0x238bbac
|
|
/* 0238BBAC */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0238BBAC */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0238BBB0 */ _t1 = cpu->r[12] + 0x0000003Cu;
|
|
/* 0238BBB0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0238BBB4 */ cpu->ctr = cpu->r[0];
|
|
/* 0238BBB8 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0238BBBC @ 0x238bbbc
|
|
void Gambit_fn_0238BBBC(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0238BBBC: ; // 0x238bbbc
|
|
/* 0238BBBC */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0238BBBC */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0238BBC0 */ _t1 = cpu->r[12] + 0x0000007Cu;
|
|
/* 0238BBC0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0238BBC4 */ cpu->ctr = cpu->r[0];
|
|
/* 0238BBC8 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0238BBCC @ 0x238bbcc
|
|
void Gambit_fn_0238BBCC(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0238BBCC: ; // 0x238bbcc
|
|
/* 0238BBCC */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0238BBCC */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0238BBD0 */ _t1 = cpu->r[12] + 0x00000084u;
|
|
/* 0238BBD0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0238BBD4 */ cpu->ctr = cpu->r[0];
|
|
/* 0238BBD8 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0238BBDC @ 0x238bbdc
|
|
void Gambit_fn_0238BBDC(CPUState* cpu) {
|
|
L_0238BBDC: ; // 0x238bbdc
|
|
/* 0238BBDC */ return;
|
|
}
|
|
|
|
// fn_0238BBE0 @ 0x238bbe0
|
|
void Gambit_fn_0238BBE0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_0238BBE0: ; // 0x238bbe0
|
|
/* 0238BBE0 */ cpu->r[9] = 0x101D0000u;
|
|
/* 0238BBE4 */ _t0 = cpu->r[9] + 0xFFFFD9BCu;
|
|
/* 0238BBE4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0238BBE4 */ cpu->r[9] = _t0;
|
|
/* 0238BBE8 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0238BBEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0238BBF0 */ cpu->r[12] = cpu->r[12] + 0xFFFFDB18u;
|
|
/* 0238BBF4 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238BBF4 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0238BBF4 */ if (_t2) goto L_0238BBF8; else goto L_0238BC0C;
|
|
L_0238BBF8: ; // 0x238bbf8
|
|
/* 0238BBF8 */ cpu->r[7] = 0x10080000u;
|
|
/* 0238BBFC */ cpu->r[0] = 0x00000001u;
|
|
/* 0238BC00 */ cpu->r[7] = cpu->r[7] + 0x0000606Cu;
|
|
/* 0238BC04 */ _t3 = cpu->r[9] + 0x00000000u;
|
|
/* 0238BC04 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0238BC08 */ _t4 = cpu->r[12] + 0x00000000u;
|
|
/* 0238BC08 */ rbrew_write32(cpu->mem, _t4, cpu->r[7]);
|
|
L_0238BC0C: ; // 0x238bc0c
|
|
/* 0238BC0C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]);
|
|
/* 0238BC10 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238BC10 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0238BC10 */ if (_t6) goto L_0238BC14; else goto L_0238BC1C;
|
|
L_0238BC14: ; // 0x238bc14
|
|
/* 0238BC14 */ cpu->r[3] = 0x00000001u;
|
|
/* 0238BC18 */ return;
|
|
L_0238BC1C: ; // 0x238bc1c
|
|
/* 0238BC1C */ cpu->r[7] = 0x101D0000u;
|
|
/* 0238BC20 */ _t7 = cpu->r[7] + 0xFFFFD4E0u;
|
|
/* 0238BC20 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0238BC20 */ cpu->r[7] = _t7;
|
|
/* 0238BC24 */ cpu->r[11] = 0x101D0000u;
|
|
/* 0238BC28 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0238BC2C */ cpu->r[11] = cpu->r[11] + 0xFFFFD4E4u;
|
|
/* 0238BC30 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238BC30 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0238BC30 */ if (_t9) goto L_0238BC34; else goto L_0238BC48;
|
|
L_0238BC34: ; // 0x238bc34
|
|
/* 0238BC34 */ cpu->r[0] = 0x10080000u;
|
|
/* 0238BC38 */ cpu->r[9] = 0x00000001u;
|
|
/* 0238BC3C */ cpu->r[0] = cpu->r[0] + 0x0000605Cu;
|
|
/* 0238BC40 */ _t10 = cpu->r[7] + 0x00000000u;
|
|
/* 0238BC40 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 0238BC44 */ _t11 = cpu->r[11] + 0x00000000u;
|
|
/* 0238BC44 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
L_0238BC48: ; // 0x238bc48
|
|
/* 0238BC48 */ cpu->r[0] = cpu->r[4] ^ cpu->r[11];
|
|
/* 0238BC4C */ cpu->r[8] = rbrew_clz32(cpu->r[0]);
|
|
/* 0238BC50 */ cpu->r[3] = rbrew_rlwinm(cpu->r[8], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
/* 0238BC54 */ return;
|
|
}
|
|
|
|
// fn_0238BC58 @ 0x238bc58
|
|
void Gambit_fn_0238BC58(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0238BC58: ; // 0x238bc58
|
|
/* 0238BC58 */ cpu->r[0] = cpu->lr;
|
|
/* 0238BC5C */ cpu->r[12] = 0x10080000u;
|
|
/* 0238BC60 */ cpu->r[10] = 0x00000007u;
|
|
/* 0238BC64 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0238BC64 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0238BC64 */ cpu->r[1] = _t0;
|
|
/* 0238BC68 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0238BC68 */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 0238BC6C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0238BC6C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0238BC70 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0238BC74 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0238BC74 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0238BC78 */ cpu->r[0] = 0x00000004u;
|
|
/* 0238BC7C */ _t4 = cpu->r[12] + 0x00006044u;
|
|
/* 0238BC7C */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0238BC80 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0238BC84 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 0238BC84 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0238BC88 */ cpu->r[31] = cpu->r[3];
|
|
/* 0238BC8C */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0238BC8C */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 0238BC90 */ Gambit_fn_02791888(cpu);
|
|
/* 0238BC94 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 0238BC94 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0238BC98 */ cpu->r[0] = cpu->r[0] | 0x00000080u;
|
|
/* 0238BC9C */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 0238BC9C */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0238BCA0 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0238BCA0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0238BCA4 */ cpu->lr = cpu->r[0];
|
|
/* 0238BCA8 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0238BCA8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0238BCAC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0238BCB0 */ return;
|
|
}
|
|
|
|
// fn_0238BC64 @ 0x238bc64
|
|
void Gambit_fn_0238BC64(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0238BC64: ; // 0x238bc64
|
|
/* 0238BC64 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0238BC64 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0238BC64 */ cpu->r[1] = _t0;
|
|
/* 0238BC68 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0238BC68 */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 0238BC6C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0238BC6C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0238BC70 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0238BC74 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0238BC74 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0238BC78 */ cpu->r[0] = 0x00000004u;
|
|
/* 0238BC7C */ _t4 = cpu->r[12] + 0x00006044u;
|
|
/* 0238BC7C */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0238BC80 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0238BC84 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 0238BC84 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0238BC88 */ cpu->r[31] = cpu->r[3];
|
|
/* 0238BC8C */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0238BC8C */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 0238BC90 */ Gambit_fn_02791888(cpu);
|
|
/* 0238BC94 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 0238BC94 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0238BC98 */ cpu->r[0] = cpu->r[0] | 0x00000080u;
|
|
/* 0238BC9C */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 0238BC9C */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0238BCA0 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0238BCA0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0238BCA4 */ cpu->lr = cpu->r[0];
|
|
/* 0238BCA8 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0238BCA8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0238BCAC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0238BCB0 */ return;
|
|
}
|
|
|
|
// fn_0238BCB4 @ 0x238bcb4
|
|
void Gambit_fn_0238BCB4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0238BCB4: ; // 0x238bcb4
|
|
/* 0238BCB4 */ cpu->r[0] = cpu->lr;
|
|
/* 0238BCB8 */ cpu->r[12] = 0x10080000u;
|
|
/* 0238BCBC */ cpu->r[10] = 0x00000009u;
|
|
/* 0238BCC0 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0238BCC0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0238BCC0 */ cpu->r[1] = _t0;
|
|
/* 0238BCC4 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0238BCC4 */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 0238BCC8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0238BCC8 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0238BCCC */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0238BCD0 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0238BCD0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0238BCD4 */ cpu->r[0] = 0x00000004u;
|
|
/* 0238BCD8 */ _t4 = cpu->r[12] + 0x0000604Cu;
|
|
/* 0238BCD8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0238BCDC */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0238BCE0 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 0238BCE0 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0238BCE4 */ cpu->r[31] = cpu->r[3];
|
|
/* 0238BCE8 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0238BCE8 */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 0238BCEC */ Gambit_fn_02791888(cpu);
|
|
/* 0238BCF0 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 0238BCF0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0238BCF4 */ cpu->r[0] = cpu->r[0] | 0x00000200u;
|
|
/* 0238BCF8 */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 0238BCF8 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0238BCFC */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0238BCFC */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0238BD00 */ cpu->lr = cpu->r[0];
|
|
/* 0238BD04 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0238BD04 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0238BD08 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0238BD0C */ return;
|
|
}
|
|
|
|
// fn_0238BCC0 @ 0x238bcc0
|
|
void Gambit_fn_0238BCC0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0238BCC0: ; // 0x238bcc0
|
|
/* 0238BCC0 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0238BCC0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0238BCC0 */ cpu->r[1] = _t0;
|
|
/* 0238BCC4 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0238BCC4 */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 0238BCC8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0238BCC8 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0238BCCC */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0238BCD0 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0238BCD0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0238BCD4 */ cpu->r[0] = 0x00000004u;
|
|
/* 0238BCD8 */ _t4 = cpu->r[12] + 0x0000604Cu;
|
|
/* 0238BCD8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0238BCDC */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0238BCE0 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 0238BCE0 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0238BCE4 */ cpu->r[31] = cpu->r[3];
|
|
/* 0238BCE8 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0238BCE8 */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 0238BCEC */ Gambit_fn_02791888(cpu);
|
|
/* 0238BCF0 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 0238BCF0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0238BCF4 */ cpu->r[0] = cpu->r[0] | 0x00000200u;
|
|
/* 0238BCF8 */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 0238BCF8 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0238BCFC */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0238BCFC */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0238BD00 */ cpu->lr = cpu->r[0];
|
|
/* 0238BD04 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0238BD04 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0238BD08 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0238BD0C */ return;
|
|
}
|
|
|
|
// fn_0238BD10 @ 0x238bd10
|
|
void Gambit_fn_0238BD10(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_0238BD10: ; // 0x238bd10
|
|
/* 0238BD10 */ cpu->r[0] = cpu->lr;
|
|
/* 0238BD14 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0238BD14 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0238BD14 */ cpu->r[1] = _t0;
|
|
/* 0238BD18 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0238BD18 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0238BD1C */ cpu->r[31] = cpu->r[3];
|
|
/* 0238BD20 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0238BD20 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0238BD24 */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0238BD24 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0238BD28 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000003u);
|
|
/* 0238BD2C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238BD2C */ _t5 = _t4 & 0x00000001u;
|
|
/* 0238BD2C */ if (_t5) goto L_0238BD30; else goto L_0238BD4C;
|
|
L_0238BD30: ; // 0x238bd30
|
|
/* 0238BD30 */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 0238BD30 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0238BD34 */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 0238BD34 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0238BD38 */ cpu->ctr = cpu->r[0];
|
|
/* 0238BD3C */ cpu->r[3] = cpu->r[31];
|
|
/* 0238BD40 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0238BD44 */ cpu->r[10] = 0x00000002u;
|
|
/* 0238BD48 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0238BD48 */ rbrew_write32(cpu->mem, _t8, cpu->r[10]);
|
|
L_0238BD4C: ; // 0x238bd4c
|
|
/* 0238BD4C */ cpu->r[0] = 0x00000005u;
|
|
/* 0238BD50 */ cpu->r[12] = 0x10080000u;
|
|
/* 0238BD54 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 0238BD54 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 0238BD58 */ _t10 = cpu->r[12] + 0x00006054u;
|
|
/* 0238BD58 */ cpu->r[11] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0238BD58 */ cpu->r[12] = _t10;
|
|
/* 0238BD5C */ _t11 = cpu->r[12] + 0x00000004u;
|
|
/* 0238BD5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0238BD60 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0238BD64 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0238BD64 */ rbrew_write32(cpu->mem, _t12, cpu->r[11]);
|
|
/* 0238BD68 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0238BD6C */ cpu->r[3] = cpu->r[31];
|
|
/* 0238BD70 */ _t13 = cpu->r[1] + 0x00000010u;
|
|
/* 0238BD70 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 0238BD74 */ Gambit_fn_02791888(cpu);
|
|
/* 0238BD78 */ _t14 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0238BD78 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0238BD7C */ cpu->lr = cpu->r[0];
|
|
/* 0238BD80 */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 0238BD80 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0238BD84 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0238BD88 */ return;
|
|
}
|
|
|
|
// fn_0238BD14 @ 0x238bd14
|
|
void Gambit_fn_0238BD14(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_0238BD14: ; // 0x238bd14
|
|
/* 0238BD14 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0238BD14 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0238BD14 */ cpu->r[1] = _t0;
|
|
/* 0238BD18 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0238BD18 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0238BD1C */ cpu->r[31] = cpu->r[3];
|
|
/* 0238BD20 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0238BD20 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0238BD24 */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0238BD24 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0238BD28 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000003u);
|
|
/* 0238BD2C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238BD2C */ _t5 = _t4 & 0x00000001u;
|
|
/* 0238BD2C */ if (_t5) goto L_0238BD30; else goto L_0238BD4C;
|
|
L_0238BD30: ; // 0x238bd30
|
|
/* 0238BD30 */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 0238BD30 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0238BD34 */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 0238BD34 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0238BD38 */ cpu->ctr = cpu->r[0];
|
|
/* 0238BD3C */ cpu->r[3] = cpu->r[31];
|
|
/* 0238BD40 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0238BD44 */ cpu->r[10] = 0x00000002u;
|
|
/* 0238BD48 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0238BD48 */ rbrew_write32(cpu->mem, _t8, cpu->r[10]);
|
|
L_0238BD4C: ; // 0x238bd4c
|
|
/* 0238BD4C */ cpu->r[0] = 0x00000005u;
|
|
/* 0238BD50 */ cpu->r[12] = 0x10080000u;
|
|
/* 0238BD54 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 0238BD54 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 0238BD58 */ _t10 = cpu->r[12] + 0x00006054u;
|
|
/* 0238BD58 */ cpu->r[11] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0238BD58 */ cpu->r[12] = _t10;
|
|
/* 0238BD5C */ _t11 = cpu->r[12] + 0x00000004u;
|
|
/* 0238BD5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0238BD60 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0238BD64 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0238BD64 */ rbrew_write32(cpu->mem, _t12, cpu->r[11]);
|
|
/* 0238BD68 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0238BD6C */ cpu->r[3] = cpu->r[31];
|
|
/* 0238BD70 */ _t13 = cpu->r[1] + 0x00000010u;
|
|
/* 0238BD70 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 0238BD74 */ Gambit_fn_02791888(cpu);
|
|
/* 0238BD78 */ _t14 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0238BD78 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0238BD7C */ cpu->lr = cpu->r[0];
|
|
/* 0238BD80 */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 0238BD80 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0238BD84 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0238BD88 */ return;
|
|
}
|
|
|
|
// fn_0238BD8C @ 0x238bd8c
|
|
void Gambit_fn_0238BD8C(CPUState* cpu) {
|
|
L_0238BD8C: ; // 0x238bd8c
|
|
/* 0238BD8C */ cpu->r[3] = 0x00000000u;
|
|
/* 0238BD90 */ return;
|
|
}
|
|
|
|
// fn_0238BD94 @ 0x238bd94
|
|
void Gambit_fn_0238BD94(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0238BD94: ; // 0x238bd94
|
|
/* 0238BD94 */ _t0 = cpu->r[3] + 0x00000258u;
|
|
/* 0238BD94 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0238BD98 */ return;
|
|
}
|
|
|
|
// fn_0238BD9C @ 0x238bd9c
|
|
void Gambit_fn_0238BD9C(CPUState* cpu) {
|
|
L_0238BD9C: ; // 0x238bd9c
|
|
/* 0238BD9C */ cpu->r[3] = 0x10080000u;
|
|
/* 0238BDA0 */ cpu->r[3] = cpu->r[3] + 0x0000608Cu;
|
|
/* 0238BDA4 */ return;
|
|
}
|
|
|
|
// fn_0238BDA8 @ 0x238bda8
|
|
void Gambit_fn_0238BDA8(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0238BDA8: ; // 0x238bda8
|
|
/* 0238BDA8 */ _t0 = cpu->r[3] + 0x000002D8u;
|
|
/* 0238BDA8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0238BDAC */ return;
|
|
}
|
|
|
|
// fn_0238BDB0 @ 0x238bdb0
|
|
void Gambit_fn_0238BDB0(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0238BDB0: ; // 0x238bdb0
|
|
/* 0238BDB0 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0238BDB0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0238BDB4 */ _t1 = cpu->r[12] + 0x0000012Cu;
|
|
/* 0238BDB4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0238BDB8 */ cpu->ctr = cpu->r[0];
|
|
/* 0238BDBC */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0238BDC0 @ 0x238bdc0
|
|
void Gambit_fn_0238BDC0(CPUState* cpu) {
|
|
L_0238BDC0: ; // 0x238bdc0
|
|
/* 0238BDC0 */ cpu->r[3] = 0x00000001u;
|
|
/* 0238BDC4 */ return;
|
|
}
|
|
|
|
// fn_0238BDC8 @ 0x238bdc8
|
|
void Gambit_fn_0238BDC8(CPUState* cpu) {
|
|
L_0238BDC8: ; // 0x238bdc8
|
|
/* 0238BDC8 */ cpu->r[3] = 0xFFFFFFFFu;
|
|
/* 0238BDCC */ return;
|
|
}
|
|
|
|
// fn_0238BDD0 @ 0x238bdd0
|
|
void Gambit_fn_0238BDD0(CPUState* cpu) {
|
|
L_0238BDD0: ; // 0x238bdd0
|
|
/* 0238BDD0 */ cpu->r[3] = 0xFFFFFFFFu;
|
|
/* 0238BDD4 */ return;
|
|
}
|
|
|
|
// fn_0238BDD8 @ 0x238bdd8
|
|
void Gambit_fn_0238BDD8(CPUState* cpu) {
|
|
uint32_t _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_0238BDD8: ; // 0x238bdd8
|
|
/* 0238BDD8 */ cpu->r[0] = cpu->lr;
|
|
/* 0238BDDC */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 0238BDDC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0238BDDC */ cpu->r[1] = _t0;
|
|
/* 0238BDE0 */ _t1 = cpu->r[1] + 0x00000018u;
|
|
/* 0238BDE0 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0238BDE4 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0238BDE4 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0238BDE8 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0238BDEC */ _t3 = cpu->r[1] + 0x00000024u;
|
|
/* 0238BDEC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0238BDF0 */ _t4 = cpu->r[12] + 0xFFFF92FCu;
|
|
/* 0238BDF0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0238BDF4 */ _t5 = cpu->r[12] + 0x0000002Cu;
|
|
/* 0238BDF4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0238BDF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0238BDFC */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238BDFC */ _t7 = _t6 & 0x00000001u;
|
|
/* 0238BDFC */ if (_t7) goto L_0238BE54; else goto L_0238BE00;
|
|
L_0238BE00: ; // 0x238be00
|
|
/* 0238BE00 */ cpu->r[31] = 0x101E0000u;
|
|
/* 0238BE04 */ cpu->r[31] = cpu->r[31] + 0x000047FCu;
|
|
/* 0238BE08 */ _t8 = cpu->r[31] + 0x00000004u;
|
|
/* 0238BE08 */ cpu->r[9] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0238BE0C */ _t9 = cpu->r[9] + 0x00000014u;
|
|
/* 0238BE0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0238BE10 */ cpu->ctr = cpu->r[0];
|
|
/* 0238BE14 */ cpu->r[3] = cpu->r[31];
|
|
/* 0238BE18 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0238BE1C */ cpu->r[8] = 0x10080000u;
|
|
/* 0238BE20 */ _t10 = cpu->r[31] + 0x00000000u;
|
|
/* 0238BE20 */ cpu->r[11] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0238BE24 */ cpu->r[8] = cpu->r[8] + 0x00006260u;
|
|
/* 0238BE28 */ cpu->r[3] = cpu->r[30];
|
|
/* 0238BE2C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0238BE30 */ _t11 = cpu->r[1] + 0x00000010u;
|
|
/* 0238BE30 */ rbrew_write32(cpu->mem, _t11, cpu->r[8]);
|
|
/* 0238BE34 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0238BE38 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0238BE38 */ rbrew_write32(cpu->mem, _t12, cpu->r[11]);
|
|
/* 0238BE3C */ Gambit_fn_0280CE90(cpu);
|
|
/* 0238BE40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238BE44 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238BE44 */ _t14 = _t13 & 0x00000001u;
|
|
/* 0238BE44 */ if (_t14) goto L_0238BE54; else goto L_0238BE48;
|
|
L_0238BE48: ; // 0x238be48
|
|
/* 0238BE48 */ _t15 = cpu->r[1] + 0x00000008u;
|
|
/* 0238BE48 */ cpu->r[0] = rbrew_read8(cpu->mem, _t15);
|
|
/* 0238BE4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0238BE50 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238BE50 */ _t17 = _t16 & 0x00000001u;
|
|
/* 0238BE50 */ if (_t17) goto L_0238BE54; else goto L_0238BE70;
|
|
L_0238BE54: ; // 0x238be54
|
|
/* 0238BE54 */ _t18 = cpu->r[1] + 0x00000024u;
|
|
/* 0238BE54 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0238BE58 */ _t19 = cpu->r[1] + 0x00000018u;
|
|
/* 0238BE58 */ cpu->r[30] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0238BE5C */ cpu->lr = cpu->r[0];
|
|
/* 0238BE60 */ _t20 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0238BE60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0238BE64 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 0238BE68 */ cpu->r[3] = 0x00000000u;
|
|
/* 0238BE6C */ return;
|
|
L_0238BE70: ; // 0x238be70
|
|
/* 0238BE70 */ _t21 = cpu->r[1] + 0x00000024u;
|
|
/* 0238BE70 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0238BE74 */ _t22 = cpu->r[1] + 0x00000018u;
|
|
/* 0238BE74 */ cpu->r[30] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0238BE78 */ cpu->lr = cpu->r[0];
|
|
/* 0238BE7C */ _t23 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0238BE7C */ cpu->r[31] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0238BE80 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 0238BE84 */ cpu->r[3] = 0x00000001u;
|
|
/* 0238BE88 */ return;
|
|
}
|
|
|
|
// fn_0238BDDC @ 0x238bddc
|
|
void Gambit_fn_0238BDDC(CPUState* cpu) {
|
|
uint32_t _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_0238BDDC: ; // 0x238bddc
|
|
/* 0238BDDC */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 0238BDDC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0238BDDC */ cpu->r[1] = _t0;
|
|
/* 0238BDE0 */ _t1 = cpu->r[1] + 0x00000018u;
|
|
/* 0238BDE0 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0238BDE4 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0238BDE4 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0238BDE8 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0238BDEC */ _t3 = cpu->r[1] + 0x00000024u;
|
|
/* 0238BDEC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0238BDF0 */ _t4 = cpu->r[12] + 0xFFFF92FCu;
|
|
/* 0238BDF0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0238BDF4 */ _t5 = cpu->r[12] + 0x0000002Cu;
|
|
/* 0238BDF4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0238BDF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0238BDFC */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238BDFC */ _t7 = _t6 & 0x00000001u;
|
|
/* 0238BDFC */ if (_t7) goto L_0238BE54; else goto L_0238BE00;
|
|
L_0238BE00: ; // 0x238be00
|
|
/* 0238BE00 */ cpu->r[31] = 0x101E0000u;
|
|
/* 0238BE04 */ cpu->r[31] = cpu->r[31] + 0x000047FCu;
|
|
/* 0238BE08 */ _t8 = cpu->r[31] + 0x00000004u;
|
|
/* 0238BE08 */ cpu->r[9] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0238BE0C */ _t9 = cpu->r[9] + 0x00000014u;
|
|
/* 0238BE0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0238BE10 */ cpu->ctr = cpu->r[0];
|
|
/* 0238BE14 */ cpu->r[3] = cpu->r[31];
|
|
/* 0238BE18 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0238BE1C */ cpu->r[8] = 0x10080000u;
|
|
/* 0238BE20 */ _t10 = cpu->r[31] + 0x00000000u;
|
|
/* 0238BE20 */ cpu->r[11] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0238BE24 */ cpu->r[8] = cpu->r[8] + 0x00006260u;
|
|
/* 0238BE28 */ cpu->r[3] = cpu->r[30];
|
|
/* 0238BE2C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0238BE30 */ _t11 = cpu->r[1] + 0x00000010u;
|
|
/* 0238BE30 */ rbrew_write32(cpu->mem, _t11, cpu->r[8]);
|
|
/* 0238BE34 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0238BE38 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0238BE38 */ rbrew_write32(cpu->mem, _t12, cpu->r[11]);
|
|
/* 0238BE3C */ Gambit_fn_0280CE90(cpu);
|
|
/* 0238BE40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238BE44 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238BE44 */ _t14 = _t13 & 0x00000001u;
|
|
/* 0238BE44 */ if (_t14) goto L_0238BE54; else goto L_0238BE48;
|
|
L_0238BE48: ; // 0x238be48
|
|
/* 0238BE48 */ _t15 = cpu->r[1] + 0x00000008u;
|
|
/* 0238BE48 */ cpu->r[0] = rbrew_read8(cpu->mem, _t15);
|
|
/* 0238BE4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0238BE50 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238BE50 */ _t17 = _t16 & 0x00000001u;
|
|
/* 0238BE50 */ if (_t17) goto L_0238BE54; else goto L_0238BE70;
|
|
L_0238BE54: ; // 0x238be54
|
|
/* 0238BE54 */ _t18 = cpu->r[1] + 0x00000024u;
|
|
/* 0238BE54 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0238BE58 */ _t19 = cpu->r[1] + 0x00000018u;
|
|
/* 0238BE58 */ cpu->r[30] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0238BE5C */ cpu->lr = cpu->r[0];
|
|
/* 0238BE60 */ _t20 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0238BE60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0238BE64 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 0238BE68 */ cpu->r[3] = 0x00000000u;
|
|
/* 0238BE6C */ return;
|
|
L_0238BE70: ; // 0x238be70
|
|
/* 0238BE70 */ _t21 = cpu->r[1] + 0x00000024u;
|
|
/* 0238BE70 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0238BE74 */ _t22 = cpu->r[1] + 0x00000018u;
|
|
/* 0238BE74 */ cpu->r[30] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0238BE78 */ cpu->lr = cpu->r[0];
|
|
/* 0238BE7C */ _t23 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0238BE7C */ cpu->r[31] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0238BE80 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 0238BE84 */ cpu->r[3] = 0x00000001u;
|
|
/* 0238BE88 */ return;
|
|
}
|
|
|
|
// fn_0238BE8C @ 0x238be8c
|
|
void Gambit_fn_0238BE8C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _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_0238BE8C: ; // 0x238be8c
|
|
/* 0238BE8C */ cpu->r[0] = cpu->lr;
|
|
/* 0238BE90 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 0238BE90 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0238BE90 */ cpu->r[1] = _t0;
|
|
/* 0238BE94 */ _t1 = cpu->r[1] + 0x00000018u;
|
|
/* 0238BE94 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0238BE98 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0238BE98 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 0238BE9C */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0238BE9C */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 0238BEA0 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0238BEA4 */ _t4 = cpu->r[1] + 0x00000024u;
|
|
/* 0238BEA4 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0238BEA8 */ _t5 = cpu->r[12] + 0xFFFF92FCu;
|
|
/* 0238BEA8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0238BEAC */ _t6 = cpu->r[12] + 0x0000002Cu;
|
|
/* 0238BEAC */ cpu->r[29] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0238BEB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0238BEB4 */ cpu->r[31] = cpu->r[3];
|
|
/* 0238BEB8 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238BEB8 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0238BEB8 */ if (_t8) goto L_0238BF40; else goto L_0238BEBC;
|
|
L_0238BEBC: ; // 0x238bebc
|
|
/* 0238BEBC */ _t9 = cpu->r[31] + 0x0000050Cu;
|
|
/* 0238BEBC */ cpu->r[11] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0238BEC0 */ _t10 = cpu->r[11] + 0x00000014u;
|
|
/* 0238BEC0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0238BEC4 */ cpu->ctr = cpu->r[0];
|
|
/* 0238BEC8 */ cpu->r[3] = cpu->r[31] + 0x00000508u;
|
|
/* 0238BECC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0238BED0 */ cpu->r[30] = 0x10080000u;
|
|
/* 0238BED4 */ _t11 = cpu->r[31] + 0x00000508u;
|
|
/* 0238BED4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0238BED8 */ cpu->r[30] = cpu->r[30] + 0x00006260u;
|
|
/* 0238BEDC */ cpu->r[3] = cpu->r[29];
|
|
/* 0238BEE0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0238BEE4 */ _t12 = cpu->r[1] + 0x00000010u;
|
|
/* 0238BEE4 */ rbrew_write32(cpu->mem, _t12, cpu->r[30]);
|
|
/* 0238BEE8 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0238BEEC */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0238BEEC */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 0238BEF0 */ Gambit_fn_0280CE90(cpu);
|
|
/* 0238BEF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238BEF8 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238BEF8 */ _t15 = _t14 & 0x00000001u;
|
|
/* 0238BEF8 */ if (_t15) goto L_0238BF40; else goto L_0238BEFC;
|
|
L_0238BEFC: ; // 0x238befc
|
|
/* 0238BEFC */ _t16 = cpu->r[1] + 0x00000008u;
|
|
/* 0238BEFC */ cpu->r[0] = rbrew_read8(cpu->mem, _t16);
|
|
/* 0238BF00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0238BF04 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238BF04 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0238BF04 */ if (_t18) goto L_0238BF08; else goto L_0238BF60;
|
|
L_0238BF08: ; // 0x238bf08
|
|
/* 0238BF08 */ _t19 = cpu->r[31] + 0x0000050Cu;
|
|
/* 0238BF08 */ cpu->r[8] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0238BF0C */ _t20 = cpu->r[8] + 0x00000014u;
|
|
/* 0238BF0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0238BF10 */ cpu->ctr = cpu->r[0];
|
|
/* 0238BF14 */ cpu->r[3] = cpu->r[31] + 0x00000508u;
|
|
/* 0238BF18 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0238BF1C */ _t21 = cpu->r[31] + 0x00000508u;
|
|
/* 0238BF1C */ cpu->r[10] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0238BF20 */ cpu->r[3] = cpu->r[29];
|
|
/* 0238BF24 */ cpu->r[5] = 0x00000777u;
|
|
/* 0238BF28 */ _t22 = cpu->r[1] + 0x00000010u;
|
|
/* 0238BF28 */ rbrew_write32(cpu->mem, _t22, cpu->r[30]);
|
|
/* 0238BF2C */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0238BF30 */ _t23 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0238BF30 */ rbrew_write32(cpu->mem, _t23, cpu->r[10]);
|
|
/* 0238BF34 */ Gambit_fn_0280D040(cpu);
|
|
/* 0238BF38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238BF3C */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238BF3C */ _t25 = _t24 & 0x00000001u;
|
|
/* 0238BF3C */ if (_t25) goto L_0238BF40; else goto L_0238BF60;
|
|
L_0238BF40: ; // 0x238bf40
|
|
/* 0238BF40 */ _t26 = cpu->r[1] + 0x00000014u;
|
|
/* 0238BF40 */ cpu->r[29] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0238BF44 */ _t27 = cpu->r[1] + 0x00000024u;
|
|
/* 0238BF44 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0238BF48 */ _t28 = cpu->r[1] + 0x00000018u;
|
|
/* 0238BF48 */ cpu->r[30] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0238BF4C */ cpu->lr = cpu->r[0];
|
|
/* 0238BF50 */ _t29 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0238BF50 */ cpu->r[31] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0238BF54 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 0238BF58 */ cpu->r[3] = 0x00000000u;
|
|
/* 0238BF5C */ return;
|
|
L_0238BF60: ; // 0x238bf60
|
|
/* 0238BF60 */ _t30 = cpu->r[1] + 0x00000014u;
|
|
/* 0238BF60 */ cpu->r[29] = rbrew_read32(cpu->mem, _t30);
|
|
/* 0238BF64 */ _t31 = cpu->r[1] + 0x00000024u;
|
|
/* 0238BF64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0238BF68 */ _t32 = cpu->r[1] + 0x00000018u;
|
|
/* 0238BF68 */ cpu->r[30] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0238BF6C */ cpu->lr = cpu->r[0];
|
|
/* 0238BF70 */ _t33 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0238BF70 */ cpu->r[31] = rbrew_read32(cpu->mem, _t33);
|
|
/* 0238BF74 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 0238BF78 */ cpu->r[3] = 0x00000001u;
|
|
/* 0238BF7C */ return;
|
|
}
|
|
|
|
// fn_0238BE90 @ 0x238be90
|
|
void Gambit_fn_0238BE90(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _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_0238BE90: ; // 0x238be90
|
|
/* 0238BE90 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 0238BE90 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0238BE90 */ cpu->r[1] = _t0;
|
|
/* 0238BE94 */ _t1 = cpu->r[1] + 0x00000018u;
|
|
/* 0238BE94 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0238BE98 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0238BE98 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 0238BE9C */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0238BE9C */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 0238BEA0 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0238BEA4 */ _t4 = cpu->r[1] + 0x00000024u;
|
|
/* 0238BEA4 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0238BEA8 */ _t5 = cpu->r[12] + 0xFFFF92FCu;
|
|
/* 0238BEA8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0238BEAC */ _t6 = cpu->r[12] + 0x0000002Cu;
|
|
/* 0238BEAC */ cpu->r[29] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0238BEB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0238BEB4 */ cpu->r[31] = cpu->r[3];
|
|
/* 0238BEB8 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238BEB8 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0238BEB8 */ if (_t8) goto L_0238BF40; else goto L_0238BEBC;
|
|
L_0238BEBC: ; // 0x238bebc
|
|
/* 0238BEBC */ _t9 = cpu->r[31] + 0x0000050Cu;
|
|
/* 0238BEBC */ cpu->r[11] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0238BEC0 */ _t10 = cpu->r[11] + 0x00000014u;
|
|
/* 0238BEC0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0238BEC4 */ cpu->ctr = cpu->r[0];
|
|
/* 0238BEC8 */ cpu->r[3] = cpu->r[31] + 0x00000508u;
|
|
/* 0238BECC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0238BED0 */ cpu->r[30] = 0x10080000u;
|
|
/* 0238BED4 */ _t11 = cpu->r[31] + 0x00000508u;
|
|
/* 0238BED4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0238BED8 */ cpu->r[30] = cpu->r[30] + 0x00006260u;
|
|
/* 0238BEDC */ cpu->r[3] = cpu->r[29];
|
|
/* 0238BEE0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0238BEE4 */ _t12 = cpu->r[1] + 0x00000010u;
|
|
/* 0238BEE4 */ rbrew_write32(cpu->mem, _t12, cpu->r[30]);
|
|
/* 0238BEE8 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0238BEEC */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0238BEEC */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 0238BEF0 */ Gambit_fn_0280CE90(cpu);
|
|
/* 0238BEF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238BEF8 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238BEF8 */ _t15 = _t14 & 0x00000001u;
|
|
/* 0238BEF8 */ if (_t15) goto L_0238BF40; else goto L_0238BEFC;
|
|
L_0238BEFC: ; // 0x238befc
|
|
/* 0238BEFC */ _t16 = cpu->r[1] + 0x00000008u;
|
|
/* 0238BEFC */ cpu->r[0] = rbrew_read8(cpu->mem, _t16);
|
|
/* 0238BF00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0238BF04 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238BF04 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0238BF04 */ if (_t18) goto L_0238BF08; else goto L_0238BF60;
|
|
L_0238BF08: ; // 0x238bf08
|
|
/* 0238BF08 */ _t19 = cpu->r[31] + 0x0000050Cu;
|
|
/* 0238BF08 */ cpu->r[8] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0238BF0C */ _t20 = cpu->r[8] + 0x00000014u;
|
|
/* 0238BF0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0238BF10 */ cpu->ctr = cpu->r[0];
|
|
/* 0238BF14 */ cpu->r[3] = cpu->r[31] + 0x00000508u;
|
|
/* 0238BF18 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0238BF1C */ _t21 = cpu->r[31] + 0x00000508u;
|
|
/* 0238BF1C */ cpu->r[10] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0238BF20 */ cpu->r[3] = cpu->r[29];
|
|
/* 0238BF24 */ cpu->r[5] = 0x00000777u;
|
|
/* 0238BF28 */ _t22 = cpu->r[1] + 0x00000010u;
|
|
/* 0238BF28 */ rbrew_write32(cpu->mem, _t22, cpu->r[30]);
|
|
/* 0238BF2C */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0238BF30 */ _t23 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0238BF30 */ rbrew_write32(cpu->mem, _t23, cpu->r[10]);
|
|
/* 0238BF34 */ Gambit_fn_0280D040(cpu);
|
|
/* 0238BF38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238BF3C */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238BF3C */ _t25 = _t24 & 0x00000001u;
|
|
/* 0238BF3C */ if (_t25) goto L_0238BF40; else goto L_0238BF60;
|
|
L_0238BF40: ; // 0x238bf40
|
|
/* 0238BF40 */ _t26 = cpu->r[1] + 0x00000014u;
|
|
/* 0238BF40 */ cpu->r[29] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0238BF44 */ _t27 = cpu->r[1] + 0x00000024u;
|
|
/* 0238BF44 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0238BF48 */ _t28 = cpu->r[1] + 0x00000018u;
|
|
/* 0238BF48 */ cpu->r[30] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0238BF4C */ cpu->lr = cpu->r[0];
|
|
/* 0238BF50 */ _t29 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0238BF50 */ cpu->r[31] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0238BF54 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 0238BF58 */ cpu->r[3] = 0x00000000u;
|
|
/* 0238BF5C */ return;
|
|
L_0238BF60: ; // 0x238bf60
|
|
/* 0238BF60 */ _t30 = cpu->r[1] + 0x00000014u;
|
|
/* 0238BF60 */ cpu->r[29] = rbrew_read32(cpu->mem, _t30);
|
|
/* 0238BF64 */ _t31 = cpu->r[1] + 0x00000024u;
|
|
/* 0238BF64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0238BF68 */ _t32 = cpu->r[1] + 0x00000018u;
|
|
/* 0238BF68 */ cpu->r[30] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0238BF6C */ cpu->lr = cpu->r[0];
|
|
/* 0238BF70 */ _t33 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0238BF70 */ cpu->r[31] = rbrew_read32(cpu->mem, _t33);
|
|
/* 0238BF74 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 0238BF78 */ cpu->r[3] = 0x00000001u;
|
|
/* 0238BF7C */ return;
|
|
}
|
|
|
|
// fn_0238BF80 @ 0x238bf80
|
|
void Gambit_fn_0238BF80(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _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_0238BF80: ; // 0x238bf80
|
|
/* 0238BF80 */ cpu->r[0] = cpu->lr;
|
|
/* 0238BF84 */ _t0 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 0238BF84 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0238BF84 */ cpu->r[1] = _t0;
|
|
/* 0238BF88 */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 0238BF88 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0238BF8C */ _t2 = cpu->r[1] + 0x00000030u;
|
|
/* 0238BF8C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0238BF90 */ cpu->r[31] = cpu->r[3];
|
|
/* 0238BF94 */ _t3 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0238BF94 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0238BF98 */ _t4 = cpu->r[31] + 0x00000505u;
|
|
/* 0238BF98 */ cpu->r[12] = rbrew_read8(cpu->mem, _t4);
|
|
/* 0238BF9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0238BFA0 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238BFA0 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0238BFA0 */ if (_t6) goto L_0238C0BC; else goto L_0238BFA4;
|
|
L_0238BFA4: ; // 0x238bfa4
|
|
/* 0238BFA4 */ _t7 = cpu->r[4] + 0x00000000u;
|
|
/* 0238BFA4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0238BFA8 */ cpu->r[3] = cpu->r[1] + 0x00000014u;
|
|
/* 0238BFAC */ cpu->r[0] = 0x00000001u;
|
|
/* 0238BFB0 */ _t8 = cpu->r[4] + 0x00000004u;
|
|
/* 0238BFB0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0238BFB4 */ cpu->r[4] = 0x101F0000u;
|
|
/* 0238BFB8 */ cpu->r[5] = 0x101F0000u;
|
|
/* 0238BFBC */ cpu->r[6] = 0x101F0000u;
|
|
/* 0238BFC0 */ cpu->r[4] = cpu->r[4] + 0x00006C18u;
|
|
/* 0238BFC4 */ _t9 = cpu->r[31] + 0x000004F8u;
|
|
/* 0238BFC4 */ rbrew_write32(cpu->mem, _t9, cpu->r[12]);
|
|
/* 0238BFC8 */ cpu->r[7] = 0x101F0000u;
|
|
/* 0238BFCC */ cpu->r[6] = cpu->r[6] + 0x00006C20u;
|
|
/* 0238BFD0 */ cpu->r[8] = 0x101F0000u;
|
|
/* 0238BFD4 */ cpu->r[7] = cpu->r[7] + 0x00006C24u;
|
|
/* 0238BFD8 */ cpu->r[9] = 0x101F0000u;
|
|
/* 0238BFDC */ cpu->r[8] = cpu->r[8] + 0x00006C28u;
|
|
/* 0238BFE0 */ _t10 = cpu->r[31] + 0x00000504u;
|
|
/* 0238BFE0 */ rbrew_write8(cpu->mem, _t10, (uint8_t)cpu->r[0]);
|
|
/* 0238BFE4 */ cpu->r[9] = cpu->r[9] + 0x00006C2Cu;
|
|
/* 0238BFE8 */ cpu->r[5] = cpu->r[5] + 0x00006C1Cu;
|
|
/* 0238BFEC */ _t11 = cpu->r[31] + 0x000004FCu;
|
|
/* 0238BFEC */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
/* 0238BFF0 */ Gambit_fn_0283801C(cpu);
|
|
/* 0238BFF4 */ cpu->r[3] = cpu->r[31] + 0x000004F8u;
|
|
/* 0238BFF8 */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 0238BFFC */ Gambit_fn_02838874(cpu);
|
|
/* 0238C000 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0238C004 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0238C008 */ _t12 = cpu->r[12] + 0x00001358u;
|
|
/* 0238C008 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0238C00C */ _t13 = cpu->r[3] + 0x000036BCu;
|
|
/* 0238C00C */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0238C010 */ cpu->r[4] = cpu->r[12] + 0x0000001Cu;
|
|
/* 0238C014 */ Gambit_fn_020F6CF0(cpu);
|
|
/* 0238C018 */ cpu->r[9] = 0x10080000u;
|
|
/* 0238C01C */ cpu->r[30] = 0x101E0000u;
|
|
/* 0238C020 */ cpu->r[9] = cpu->r[9] + 0x00006260u;
|
|
/* 0238C024 */ _t14 = cpu->r[1] + 0x00000010u;
|
|
/* 0238C024 */ rbrew_write32(cpu->mem, _t14, cpu->r[9]);
|
|
/* 0238C028 */ cpu->r[30] = cpu->r[30] + 0x000047FCu;
|
|
/* 0238C02C */ _t15 = cpu->r[30] + 0x00000004u;
|
|
/* 0238C02C */ cpu->r[10] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0238C030 */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0238C030 */ rbrew_write32(cpu->mem, _t16, cpu->r[3]);
|
|
/* 0238C034 */ _t17 = cpu->r[10] + 0x00000014u;
|
|
/* 0238C034 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0238C038 */ cpu->ctr = cpu->r[0];
|
|
/* 0238C03C */ cpu->r[3] = cpu->r[30];
|
|
/* 0238C040 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0238C044 */ _t18 = cpu->r[1] + 0x00000010u;
|
|
/* 0238C044 */ cpu->r[9] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0238C048 */ _t19 = cpu->r[9] + 0x00000014u;
|
|
/* 0238C048 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0238C04C */ cpu->ctr = cpu->r[0];
|
|
/* 0238C050 */ _t20 = cpu->r[30] + 0x00000000u;
|
|
/* 0238C050 */ cpu->r[30] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0238C054 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0238C058 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0238C05C */ _t21 = cpu->r[1] + 0x00000014u;
|
|
/* 0238C05C */ cpu->r[7] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0238C060 */ cpu->r[4] = 0x10080000u;
|
|
/* 0238C064 */ _t22 = cpu->r[1] + 0x00000028u;
|
|
/* 0238C064 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0238C068 */ cpu->r[5] = cpu->r[30];
|
|
/* 0238C06C */ _t23 = cpu->r[1] + 0x00000024u;
|
|
/* 0238C06C */ cpu->r[10] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0238C070 */ cpu->r[4] = cpu->r[4] + 0x00006370u;
|
|
/* 0238C074 */ _t24 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0238C074 */ cpu->r[9] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0238C078 */ cpu->r[3] = cpu->r[31] + 0x00000508u;
|
|
/* 0238C07C */ _t25 = cpu->r[1] + 0x00000018u;
|
|
/* 0238C07C */ cpu->r[8] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0238C080 */ _t26 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0238C080 */ cpu->r[6] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0238C084 */ _t27 = cpu->r[1] + 0x00000008u;
|
|
/* 0238C084 */ rbrew_write32(cpu->mem, _t27, cpu->r[0]);
|
|
/* 0238C088 */ _t28 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 0238C088 */ _t29 = _t28 & 0x00000001u;
|
|
/* 0238C088 */ if (_t29) goto L_0238C08C; // else: addr-0 trap, fall-through
|
|
L_0238C08C: ; // 0x238c08c
|
|
/* 0238C08C */ Gambit_fn_0282A5F4(cpu);
|
|
/* 0238C090 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0238C094 */ _t30 = cpu->r[3] + 0x00005BA0u;
|
|
/* 0238C094 */ cpu->r[3] = rbrew_read32(cpu->mem, _t30);
|
|
/* 0238C098 */ Gambit_fn_0239ACF0(cpu);
|
|
/* 0238C09C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238C0A0 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238C0A0 */ _t32 = _t31 & 0x00000001u;
|
|
/* 0238C0A0 */ if (_t32) goto L_0238C0A4; else goto L_0238C0BC;
|
|
L_0238C0A4: ; // 0x238c0a4
|
|
/* 0238C0A4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0238C0A8 */ Gambit_fn_0238BDD8(cpu);
|
|
/* 0238C0AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238C0B0 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238C0B0 */ _t34 = _t33 & 0x00000001u;
|
|
/* 0238C0B0 */ if (_t34) goto L_0238C0BC; else goto L_0238C0B4;
|
|
L_0238C0B4: ; // 0x238c0b4
|
|
/* 0238C0B4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0238C0B8 */ Gambit_fn_0238BE8C(cpu);
|
|
L_0238C0BC: ; // 0x238c0bc
|
|
/* 0238C0BC */ _t35 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0238C0BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t35);
|
|
/* 0238C0C0 */ _t36 = cpu->r[1] + 0x00000030u;
|
|
/* 0238C0C0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t36);
|
|
/* 0238C0C4 */ cpu->lr = cpu->r[0];
|
|
/* 0238C0C8 */ _t37 = cpu->r[1] + 0x00000034u;
|
|
/* 0238C0C8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0238C0CC */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 0238C0D0 */ return;
|
|
}
|
|
|
|
// fn_0238BF84 @ 0x238bf84
|
|
void Gambit_fn_0238BF84(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _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_0238BF84: ; // 0x238bf84
|
|
/* 0238BF84 */ _t0 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 0238BF84 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0238BF84 */ cpu->r[1] = _t0;
|
|
/* 0238BF88 */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 0238BF88 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0238BF8C */ _t2 = cpu->r[1] + 0x00000030u;
|
|
/* 0238BF8C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0238BF90 */ cpu->r[31] = cpu->r[3];
|
|
/* 0238BF94 */ _t3 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0238BF94 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0238BF98 */ _t4 = cpu->r[31] + 0x00000505u;
|
|
/* 0238BF98 */ cpu->r[12] = rbrew_read8(cpu->mem, _t4);
|
|
/* 0238BF9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0238BFA0 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238BFA0 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0238BFA0 */ if (_t6) goto L_0238C0BC; else goto L_0238BFA4;
|
|
L_0238BFA4: ; // 0x238bfa4
|
|
/* 0238BFA4 */ _t7 = cpu->r[4] + 0x00000000u;
|
|
/* 0238BFA4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0238BFA8 */ cpu->r[3] = cpu->r[1] + 0x00000014u;
|
|
/* 0238BFAC */ cpu->r[0] = 0x00000001u;
|
|
/* 0238BFB0 */ _t8 = cpu->r[4] + 0x00000004u;
|
|
/* 0238BFB0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0238BFB4 */ cpu->r[4] = 0x101F0000u;
|
|
/* 0238BFB8 */ cpu->r[5] = 0x101F0000u;
|
|
/* 0238BFBC */ cpu->r[6] = 0x101F0000u;
|
|
/* 0238BFC0 */ cpu->r[4] = cpu->r[4] + 0x00006C18u;
|
|
/* 0238BFC4 */ _t9 = cpu->r[31] + 0x000004F8u;
|
|
/* 0238BFC4 */ rbrew_write32(cpu->mem, _t9, cpu->r[12]);
|
|
/* 0238BFC8 */ cpu->r[7] = 0x101F0000u;
|
|
/* 0238BFCC */ cpu->r[6] = cpu->r[6] + 0x00006C20u;
|
|
/* 0238BFD0 */ cpu->r[8] = 0x101F0000u;
|
|
/* 0238BFD4 */ cpu->r[7] = cpu->r[7] + 0x00006C24u;
|
|
/* 0238BFD8 */ cpu->r[9] = 0x101F0000u;
|
|
/* 0238BFDC */ cpu->r[8] = cpu->r[8] + 0x00006C28u;
|
|
/* 0238BFE0 */ _t10 = cpu->r[31] + 0x00000504u;
|
|
/* 0238BFE0 */ rbrew_write8(cpu->mem, _t10, (uint8_t)cpu->r[0]);
|
|
/* 0238BFE4 */ cpu->r[9] = cpu->r[9] + 0x00006C2Cu;
|
|
/* 0238BFE8 */ cpu->r[5] = cpu->r[5] + 0x00006C1Cu;
|
|
/* 0238BFEC */ _t11 = cpu->r[31] + 0x000004FCu;
|
|
/* 0238BFEC */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
/* 0238BFF0 */ Gambit_fn_0283801C(cpu);
|
|
/* 0238BFF4 */ cpu->r[3] = cpu->r[31] + 0x000004F8u;
|
|
/* 0238BFF8 */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 0238BFFC */ Gambit_fn_02838874(cpu);
|
|
/* 0238C000 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0238C004 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0238C008 */ _t12 = cpu->r[12] + 0x00001358u;
|
|
/* 0238C008 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0238C00C */ _t13 = cpu->r[3] + 0x000036BCu;
|
|
/* 0238C00C */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0238C010 */ cpu->r[4] = cpu->r[12] + 0x0000001Cu;
|
|
/* 0238C014 */ Gambit_fn_020F6CF0(cpu);
|
|
/* 0238C018 */ cpu->r[9] = 0x10080000u;
|
|
/* 0238C01C */ cpu->r[30] = 0x101E0000u;
|
|
/* 0238C020 */ cpu->r[9] = cpu->r[9] + 0x00006260u;
|
|
/* 0238C024 */ _t14 = cpu->r[1] + 0x00000010u;
|
|
/* 0238C024 */ rbrew_write32(cpu->mem, _t14, cpu->r[9]);
|
|
/* 0238C028 */ cpu->r[30] = cpu->r[30] + 0x000047FCu;
|
|
/* 0238C02C */ _t15 = cpu->r[30] + 0x00000004u;
|
|
/* 0238C02C */ cpu->r[10] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0238C030 */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0238C030 */ rbrew_write32(cpu->mem, _t16, cpu->r[3]);
|
|
/* 0238C034 */ _t17 = cpu->r[10] + 0x00000014u;
|
|
/* 0238C034 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0238C038 */ cpu->ctr = cpu->r[0];
|
|
/* 0238C03C */ cpu->r[3] = cpu->r[30];
|
|
/* 0238C040 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0238C044 */ _t18 = cpu->r[1] + 0x00000010u;
|
|
/* 0238C044 */ cpu->r[9] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0238C048 */ _t19 = cpu->r[9] + 0x00000014u;
|
|
/* 0238C048 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0238C04C */ cpu->ctr = cpu->r[0];
|
|
/* 0238C050 */ _t20 = cpu->r[30] + 0x00000000u;
|
|
/* 0238C050 */ cpu->r[30] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0238C054 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0238C058 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0238C05C */ _t21 = cpu->r[1] + 0x00000014u;
|
|
/* 0238C05C */ cpu->r[7] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0238C060 */ cpu->r[4] = 0x10080000u;
|
|
/* 0238C064 */ _t22 = cpu->r[1] + 0x00000028u;
|
|
/* 0238C064 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0238C068 */ cpu->r[5] = cpu->r[30];
|
|
/* 0238C06C */ _t23 = cpu->r[1] + 0x00000024u;
|
|
/* 0238C06C */ cpu->r[10] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0238C070 */ cpu->r[4] = cpu->r[4] + 0x00006370u;
|
|
/* 0238C074 */ _t24 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0238C074 */ cpu->r[9] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0238C078 */ cpu->r[3] = cpu->r[31] + 0x00000508u;
|
|
/* 0238C07C */ _t25 = cpu->r[1] + 0x00000018u;
|
|
/* 0238C07C */ cpu->r[8] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0238C080 */ _t26 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0238C080 */ cpu->r[6] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0238C084 */ _t27 = cpu->r[1] + 0x00000008u;
|
|
/* 0238C084 */ rbrew_write32(cpu->mem, _t27, cpu->r[0]);
|
|
/* 0238C088 */ _t28 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 0238C088 */ _t29 = _t28 & 0x00000001u;
|
|
/* 0238C088 */ if (_t29) goto L_0238C08C; // else: addr-0 trap, fall-through
|
|
L_0238C08C: ; // 0x238c08c
|
|
/* 0238C08C */ Gambit_fn_0282A5F4(cpu);
|
|
/* 0238C090 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0238C094 */ _t30 = cpu->r[3] + 0x00005BA0u;
|
|
/* 0238C094 */ cpu->r[3] = rbrew_read32(cpu->mem, _t30);
|
|
/* 0238C098 */ Gambit_fn_0239ACF0(cpu);
|
|
/* 0238C09C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238C0A0 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238C0A0 */ _t32 = _t31 & 0x00000001u;
|
|
/* 0238C0A0 */ if (_t32) goto L_0238C0A4; else goto L_0238C0BC;
|
|
L_0238C0A4: ; // 0x238c0a4
|
|
/* 0238C0A4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0238C0A8 */ Gambit_fn_0238BDD8(cpu);
|
|
/* 0238C0AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238C0B0 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238C0B0 */ _t34 = _t33 & 0x00000001u;
|
|
/* 0238C0B0 */ if (_t34) goto L_0238C0BC; else goto L_0238C0B4;
|
|
L_0238C0B4: ; // 0x238c0b4
|
|
/* 0238C0B4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0238C0B8 */ Gambit_fn_0238BE8C(cpu);
|
|
L_0238C0BC: ; // 0x238c0bc
|
|
/* 0238C0BC */ _t35 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0238C0BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t35);
|
|
/* 0238C0C0 */ _t36 = cpu->r[1] + 0x00000030u;
|
|
/* 0238C0C0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t36);
|
|
/* 0238C0C4 */ cpu->lr = cpu->r[0];
|
|
/* 0238C0C8 */ _t37 = cpu->r[1] + 0x00000034u;
|
|
/* 0238C0C8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0238C0CC */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 0238C0D0 */ return;
|
|
}
|
|
|
|
// fn_0238C0D4 @ 0x238c0d4
|
|
void Gambit_fn_0238C0D4(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0238C0D4: ; // 0x238c0d4
|
|
/* 0238C0D4 */ cpu->r[0] = 0x00000000u;
|
|
/* 0238C0D8 */ _t0 = cpu->r[3] + 0x00000504u;
|
|
/* 0238C0D8 */ rbrew_write8(cpu->mem, _t0, (uint8_t)cpu->r[0]);
|
|
/* 0238C0DC */ return;
|
|
}
|
|
|
|
// fn_0238C0E0 @ 0x238c0e0
|
|
void Gambit_fn_0238C0E0(CPUState* cpu) {
|
|
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_0238C0E0: ; // 0x238c0e0
|
|
/* 0238C0E0 */ cpu->r[0] = cpu->lr;
|
|
/* 0238C0E4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0238C0E4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0238C0E4 */ cpu->r[1] = _t0;
|
|
/* 0238C0E8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0238C0E8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0238C0EC */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0238C0EC */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0238C0F0 */ cpu->r[31] = cpu->r[3];
|
|
/* 0238C0F4 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0238C0F4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0238C0F8 */ _t4 = cpu->r[31] + 0x00000505u;
|
|
/* 0238C0F8 */ cpu->r[11] = rbrew_read8(cpu->mem, _t4);
|
|
/* 0238C0FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0238C100 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238C100 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0238C100 */ if (_t6) goto L_0238C154; else goto L_0238C104;
|
|
L_0238C104: ; // 0x238c104
|
|
/* 0238C104 */ _t7 = cpu->r[31] + 0x00000504u;
|
|
/* 0238C104 */ cpu->r[9] = rbrew_read8(cpu->mem, _t7);
|
|
/* 0238C108 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0238C10C */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238C10C */ _t9 = _t8 & 0x00000001u;
|
|
/* 0238C10C */ if (_t9) goto L_0238C154; else goto L_0238C110;
|
|
L_0238C110: ; // 0x238c110
|
|
/* 0238C110 */ _t10 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0238C110 */ cpu->r[0] = rbrew_read8(cpu->mem, _t10);
|
|
/* 0238C114 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0238C118 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238C118 */ _t12 = _t11 & 0x00000001u;
|
|
/* 0238C118 */ if (_t12) goto L_0238C154; else goto L_0238C11C;
|
|
L_0238C11C: ; // 0x238c11c
|
|
/* 0238C11C */ cpu->r[30] = 0x101D0000u;
|
|
/* 0238C120 */ _t13 = cpu->r[30] + 0xFFFF964Cu;
|
|
/* 0238C120 */ cpu->r[12] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0238C124 */ cpu->r[4] = cpu->r[31] + 0x00000018u;
|
|
/* 0238C128 */ _t14 = cpu->r[12] + 0x00000160u;
|
|
/* 0238C128 */ cpu->r[3] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0238C12C */ cpu->r[5] = cpu->r[31] + 0x0000001Cu;
|
|
/* 0238C130 */ cpu->r[6] = 0x00000000u;
|
|
/* 0238C134 */ Gambit_fn_027D9210(cpu);
|
|
/* 0238C138 */ _t15 = cpu->r[30] + 0xFFFF964Cu;
|
|
/* 0238C138 */ cpu->r[12] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0238C13C */ _t16 = cpu->r[31] + 0x00000018u;
|
|
/* 0238C13C */ cpu->r[4] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0238C140 */ _t17 = cpu->r[12] + 0x00000160u;
|
|
/* 0238C140 */ cpu->r[3] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0238C144 */ cpu->r[5] = 0x00000000u;
|
|
/* 0238C148 */ Gambit_fn_027D9290(cpu);
|
|
/* 0238C14C */ cpu->r[0] = cpu->r[3] ^ 0x00000001u;
|
|
/* 0238C150 */ _t18 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0238C150 */ rbrew_write8(cpu->mem, _t18, (uint8_t)cpu->r[0]);
|
|
L_0238C154: ; // 0x238c154
|
|
/* 0238C154 */ _t19 = cpu->r[1] + 0x00000014u;
|
|
/* 0238C154 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0238C158 */ _t20 = cpu->r[1] + 0x00000008u;
|
|
/* 0238C158 */ cpu->r[30] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0238C15C */ cpu->lr = cpu->r[0];
|
|
/* 0238C160 */ _t21 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0238C160 */ cpu->r[31] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0238C164 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0238C168 */ return;
|
|
}
|
|
|
|
// fn_0238C0E4 @ 0x238c0e4
|
|
void Gambit_fn_0238C0E4(CPUState* cpu) {
|
|
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_0238C0E4: ; // 0x238c0e4
|
|
/* 0238C0E4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0238C0E4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0238C0E4 */ cpu->r[1] = _t0;
|
|
/* 0238C0E8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0238C0E8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0238C0EC */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0238C0EC */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0238C0F0 */ cpu->r[31] = cpu->r[3];
|
|
/* 0238C0F4 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0238C0F4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0238C0F8 */ _t4 = cpu->r[31] + 0x00000505u;
|
|
/* 0238C0F8 */ cpu->r[11] = rbrew_read8(cpu->mem, _t4);
|
|
/* 0238C0FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0238C100 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238C100 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0238C100 */ if (_t6) goto L_0238C154; else goto L_0238C104;
|
|
L_0238C104: ; // 0x238c104
|
|
/* 0238C104 */ _t7 = cpu->r[31] + 0x00000504u;
|
|
/* 0238C104 */ cpu->r[9] = rbrew_read8(cpu->mem, _t7);
|
|
/* 0238C108 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0238C10C */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238C10C */ _t9 = _t8 & 0x00000001u;
|
|
/* 0238C10C */ if (_t9) goto L_0238C154; else goto L_0238C110;
|
|
L_0238C110: ; // 0x238c110
|
|
/* 0238C110 */ _t10 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0238C110 */ cpu->r[0] = rbrew_read8(cpu->mem, _t10);
|
|
/* 0238C114 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0238C118 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238C118 */ _t12 = _t11 & 0x00000001u;
|
|
/* 0238C118 */ if (_t12) goto L_0238C154; else goto L_0238C11C;
|
|
L_0238C11C: ; // 0x238c11c
|
|
/* 0238C11C */ cpu->r[30] = 0x101D0000u;
|
|
/* 0238C120 */ _t13 = cpu->r[30] + 0xFFFF964Cu;
|
|
/* 0238C120 */ cpu->r[12] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0238C124 */ cpu->r[4] = cpu->r[31] + 0x00000018u;
|
|
/* 0238C128 */ _t14 = cpu->r[12] + 0x00000160u;
|
|
/* 0238C128 */ cpu->r[3] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0238C12C */ cpu->r[5] = cpu->r[31] + 0x0000001Cu;
|
|
/* 0238C130 */ cpu->r[6] = 0x00000000u;
|
|
/* 0238C134 */ Gambit_fn_027D9210(cpu);
|
|
/* 0238C138 */ _t15 = cpu->r[30] + 0xFFFF964Cu;
|
|
/* 0238C138 */ cpu->r[12] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0238C13C */ _t16 = cpu->r[31] + 0x00000018u;
|
|
/* 0238C13C */ cpu->r[4] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0238C140 */ _t17 = cpu->r[12] + 0x00000160u;
|
|
/* 0238C140 */ cpu->r[3] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0238C144 */ cpu->r[5] = 0x00000000u;
|
|
/* 0238C148 */ Gambit_fn_027D9290(cpu);
|
|
/* 0238C14C */ cpu->r[0] = cpu->r[3] ^ 0x00000001u;
|
|
/* 0238C150 */ _t18 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0238C150 */ rbrew_write8(cpu->mem, _t18, (uint8_t)cpu->r[0]);
|
|
L_0238C154: ; // 0x238c154
|
|
/* 0238C154 */ _t19 = cpu->r[1] + 0x00000014u;
|
|
/* 0238C154 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0238C158 */ _t20 = cpu->r[1] + 0x00000008u;
|
|
/* 0238C158 */ cpu->r[30] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0238C15C */ cpu->lr = cpu->r[0];
|
|
/* 0238C160 */ _t21 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0238C160 */ cpu->r[31] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0238C164 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0238C168 */ return;
|
|
}
|
|
|
|
// fn_0238C16C @ 0x238c16c
|
|
void Gambit_fn_0238C16C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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;
|
|
|
|
L_0238C16C: ; // 0x238c16c
|
|
/* 0238C16C */ _t0 = cpu->r[1] + 0xFFFFFF70u;
|
|
/* 0238C16C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0238C16C */ cpu->r[1] = _t0;
|
|
/* 0238C170 */ /* nop */
|
|
/* 0238C174 */ cpu->r[0] = cpu->lr;
|
|
/* 0238C178 */ _t1 = cpu->r[1] + 0x00000094u;
|
|
/* 0238C178 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0238C17C */ cpu->r[27] = cpu->r[3];
|
|
/* 0238C180 */ _t2 = cpu->r[27] + 0x00000505u;
|
|
/* 0238C180 */ cpu->r[7] = rbrew_read8(cpu->mem, _t2);
|
|
/* 0238C184 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 0238C188 */ cpu->r[3] = cpu->r[4];
|
|
/* 0238C18C */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238C18C */ _t4 = _t3 & 0x00000001u;
|
|
/* 0238C18C */ if (_t4) goto L_0238C670; else goto L_0238C190;
|
|
L_0238C190: ; // 0x238c190
|
|
/* 0238C190 */ _t5 = cpu->r[27] + 0x00000504u;
|
|
/* 0238C190 */ cpu->r[11] = rbrew_read8(cpu->mem, _t5);
|
|
/* 0238C194 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0238C198 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238C198 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0238C198 */ if (_t7) goto L_0238C670; else goto L_0238C19C;
|
|
L_0238C19C: ; // 0x238c19c
|
|
/* 0238C19C */ _t8 = cpu->r[27] + 0x000004D8u;
|
|
/* 0238C19C */ cpu->r[5] = rbrew_read8(cpu->mem, _t8);
|
|
/* 0238C1A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 0238C1A4 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238C1A4 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0238C1A4 */ if (_t10) goto L_0238C1A8; else goto L_0238C670;
|
|
L_0238C1A8: ; // 0x238c1a8
|
|
/* 0238C1A8 */ cpu->r[26] = 0x00000000u;
|
|
/* 0238C1AC */ cpu->r[4] = cpu->r[27] + 0x00000034u;
|
|
/* 0238C1B0 */ cpu->r[9] = 0x00000001u;
|
|
/* 0238C1B4 */ cpu->r[5] = cpu->r[26];
|
|
/* 0238C1B8 */ cpu->r[7] = 0x00000004u;
|
|
/* 0238C1BC */ cpu->r[8] = cpu->r[26];
|
|
/* 0238C1C0 */ cpu->r[6] = cpu->r[5];
|
|
/* 0238C1C4 */ Gambit_fn_028F71FC(cpu);
|
|
/* 0238C1C8 */ _t11 = cpu->r[27] + 0x00000140u;
|
|
/* 0238C1C8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0238C1CC */ _t12 = cpu->r[27] + 0x00000038u;
|
|
/* 0238C1CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0238C1D0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[0]);
|
|
/* 0238C1D4 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238C1D4 */ _t14 = _t13 & 0x00000001u;
|
|
/* 0238C1D4 */ if (_t14) goto L_0238C1D8; else goto L_0238C268;
|
|
L_0238C1D8: ; // 0x238c1d8
|
|
/* 0238C1D8 */ _t15 = cpu->r[27] + 0x00000144u;
|
|
/* 0238C1D8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0238C1DC */ _t16 = cpu->r[27] + 0x0000003Cu;
|
|
/* 0238C1DC */ cpu->r[6] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0238C1E0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[6]);
|
|
/* 0238C1E4 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238C1E4 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0238C1E4 */ if (_t18) goto L_0238C1E8; else goto L_0238C268;
|
|
L_0238C1E8: ; // 0x238c1e8
|
|
/* 0238C1E8 */ _t19 = cpu->r[27] + 0x00000148u;
|
|
/* 0238C1E8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0238C1EC */ _t20 = cpu->r[27] + 0x00000040u;
|
|
/* 0238C1EC */ cpu->r[8] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0238C1F0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[8]);
|
|
/* 0238C1F4 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238C1F4 */ _t22 = _t21 & 0x00000001u;
|
|
/* 0238C1F4 */ if (_t22) goto L_0238C1F8; else goto L_0238C268;
|
|
L_0238C1F8: ; // 0x238c1f8
|
|
/* 0238C1F8 */ _t23 = cpu->r[27] + 0x0000014Cu;
|
|
/* 0238C1F8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0238C1FC */ _t24 = cpu->r[27] + 0x00000044u;
|
|
/* 0238C1FC */ cpu->r[10] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0238C200 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[10]);
|
|
/* 0238C204 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238C204 */ _t26 = _t25 & 0x00000001u;
|
|
/* 0238C204 */ if (_t26) goto L_0238C208; else goto L_0238C268;
|
|
L_0238C208: ; // 0x238c208
|
|
/* 0238C208 */ _t27 = cpu->r[27] + 0x00000150u;
|
|
/* 0238C208 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0238C20C */ _t28 = cpu->r[27] + 0x00000048u;
|
|
/* 0238C20C */ cpu->r[12] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0238C210 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[12]);
|
|
/* 0238C214 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238C214 */ _t30 = _t29 & 0x00000001u;
|
|
/* 0238C214 */ if (_t30) goto L_0238C218; else goto L_0238C268;
|
|
L_0238C218: ; // 0x238c218
|
|
/* 0238C218 */ _t31 = cpu->r[27] + 0x00000154u;
|
|
/* 0238C218 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0238C21C */ _t32 = cpu->r[27] + 0x0000004Cu;
|
|
/* 0238C21C */ cpu->r[5] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0238C220 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[5]);
|
|
/* 0238C224 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238C224 */ _t34 = _t33 & 0x00000001u;
|
|
/* 0238C224 */ if (_t34) goto L_0238C228; else goto L_0238C268;
|
|
L_0238C228: ; // 0x238c228
|
|
/* 0238C228 */ _t35 = cpu->r[27] + 0x00000174u;
|
|
/* 0238C228 */ cpu->r[6] = rbrew_read32(cpu->mem, _t35);
|
|
/* 0238C22C */ _t36 = cpu->r[27] + 0x0000006Cu;
|
|
/* 0238C22C */ cpu->r[7] = rbrew_read32(cpu->mem, _t36);
|
|
/* 0238C230 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[7]);
|
|
/* 0238C234 */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238C234 */ _t38 = _t37 & 0x00000001u;
|
|
/* 0238C234 */ if (_t38) goto L_0238C238; else goto L_0238C268;
|
|
L_0238C238: ; // 0x238c238
|
|
/* 0238C238 */ _t39 = cpu->r[27] + 0x00000170u;
|
|
/* 0238C238 */ cpu->r[8] = rbrew_read32(cpu->mem, _t39);
|
|
/* 0238C23C */ _t40 = cpu->r[27] + 0x00000068u;
|
|
/* 0238C23C */ cpu->r[9] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0238C240 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[9]);
|
|
/* 0238C244 */ _t41 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238C244 */ _t42 = _t41 & 0x00000001u;
|
|
/* 0238C244 */ if (_t42) goto L_0238C248; else goto L_0238C268;
|
|
L_0238C248: ; // 0x238c248
|
|
/* 0238C248 */ _t43 = cpu->r[27] + 0x0000015Cu;
|
|
/* 0238C248 */ cpu->r[10] = rbrew_read32(cpu->mem, _t43);
|
|
/* 0238C24C */ _t44 = cpu->r[27] + 0x00000054u;
|
|
/* 0238C24C */ cpu->r[0] = rbrew_read32(cpu->mem, _t44);
|
|
/* 0238C250 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[0]);
|
|
/* 0238C254 */ _t45 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238C254 */ _t46 = _t45 & 0x00000001u;
|
|
/* 0238C254 */ if (_t46) goto L_0238C258; else goto L_0238C268;
|
|
L_0238C258: ; // 0x238c258
|
|
/* 0238C258 */ _t47 = cpu->r[27] + 0x00000158u;
|
|
/* 0238C258 */ cpu->r[12] = rbrew_read32(cpu->mem, _t47);
|
|
/* 0238C25C */ _t48 = cpu->r[27] + 0x00000050u;
|
|
/* 0238C25C */ cpu->r[0] = rbrew_read32(cpu->mem, _t48);
|
|
/* 0238C260 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[0]);
|
|
/* 0238C264 */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238C264 */ _t50 = _t49 & 0x00000001u;
|
|
/* 0238C264 */ if (_t50) goto L_0238C34C; else goto L_0238C268;
|
|
L_0238C268: ; // 0x238c268
|
|
/* 0238C268 */ cpu->r[4] = cpu->r[27] + 0x00000034u;
|
|
/* 0238C26C */ cpu->r[3] = cpu->r[27] + 0x0000013Cu;
|
|
/* 0238C270 */ Gambit_fn_028F9D94(cpu);
|
|
/* 0238C274 */ cpu->r[10] = 0x10080000u;
|
|
/* 0238C278 */ cpu->r[8] = 0x10080000u;
|
|
/* 0238C27C */ _t51 = cpu->r[10] + 0x00006368u;
|
|
/* 0238C27C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t51);
|
|
/* 0238C280 */ _t52 = cpu->r[8] + 0x00006394u;
|
|
/* 0238C280 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 0238C284 */ _t53 = cpu->r[1] + 0x00000008u;
|
|
/* 0238C284 */ rbrew_write_f32(cpu->mem, _t53, cpu->f[0]);
|
|
/* 0238C288 */ cpu->r[6] = 0x10080000u;
|
|
/* 0238C28C */ _t54 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0238C28C */ rbrew_write_f32(cpu->mem, _t54, cpu->f[0]);
|
|
/* 0238C290 */ _t55 = cpu->r[6] + 0x00006398u;
|
|
/* 0238C290 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t55);
|
|
/* 0238C294 */ _t56 = cpu->r[1] + 0x00000014u;
|
|
/* 0238C294 */ rbrew_write_f32(cpu->mem, _t56, cpu->f[13]);
|
|
/* 0238C298 */ cpu->r[12] = 0x10080000u;
|
|
/* 0238C29C */ _t57 = cpu->r[1] + 0x00000018u;
|
|
/* 0238C29C */ rbrew_write_f32(cpu->mem, _t57, cpu->f[13]);
|
|
/* 0238C2A0 */ _t58 = cpu->r[12] + 0x0000636Cu;
|
|
/* 0238C2A0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 0238C2A4 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0238C2A8 */ _t59 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0238C2A8 */ rbrew_write_f32(cpu->mem, _t59, cpu->f[0]);
|
|
/* 0238C2AC */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 0238C2B0 */ cpu->r[3] = cpu->r[1] + 0x00000034u;
|
|
/* 0238C2B4 */ _t60 = cpu->r[1] + 0x00000010u;
|
|
/* 0238C2B4 */ rbrew_write_f32(cpu->mem, _t60, cpu->f[13]);
|
|
/* 0238C2B8 */ Gambit_fn_020FF2BC(cpu);
|
|
/* 0238C2BC */ cpu->r[3] = cpu->r[27] + 0x000003D4u;
|
|
/* 0238C2C0 */ Gambit_fn_0281BAE0(cpu);
|
|
/* 0238C2C4 */ cpu->r[3] = cpu->r[27] + 0x00000414u;
|
|
/* 0238C2C8 */ cpu->r[5] = cpu->r[27] + 0x000003D4u;
|
|
/* 0238C2CC */ cpu->r[4] = cpu->r[1] + 0x00000024u;
|
|
/* 0238C2D0 */ Gambit_fn_0281DA38(cpu);
|
|
/* 0238C2D4 */ cpu->r[3] = cpu->r[27] + 0x00000414u;
|
|
/* 0238C2D8 */ cpu->r[5] = cpu->r[27] + 0x000003D4u;
|
|
/* 0238C2DC */ cpu->r[4] = cpu->r[1] + 0x0000002Cu;
|
|
/* 0238C2E0 */ Gambit_fn_0281DC48(cpu);
|
|
/* 0238C2E4 */ cpu->r[4] = cpu->r[27] + 0x000003D4u;
|
|
/* 0238C2E8 */ cpu->r[3] = cpu->r[27] + 0x00000414u;
|
|
/* 0238C2EC */ Gambit_fn_0281DCCC(cpu);
|
|
/* 0238C2F0 */ cpu->r[3] = cpu->r[27] + 0x0000042Cu;
|
|
/* 0238C2F4 */ Gambit_fn_0281BC48(cpu);
|
|
/* 0238C2F8 */ cpu->r[5] = cpu->r[3];
|
|
/* 0238C2FC */ cpu->r[6] = 0x101F0000u;
|
|
/* 0238C300 */ cpu->r[3] = cpu->r[27] + 0x0000013Cu;
|
|
/* 0238C304 */ cpu->r[4] = cpu->r[1] + 0x00000034u;
|
|
/* 0238C308 */ cpu->r[6] = cpu->r[6] + 0x00005BECu;
|
|
/* 0238C30C */ cpu->r[7] = 0x00000004u;
|
|
/* 0238C310 */ Gambit_fn_0294246C(cpu);
|
|
/* 0238C314 */ cpu->r[3] = cpu->r[27] + 0x000007C4u;
|
|
/* 0238C318 */ Gambit_fn_02836FFC(cpu);
|
|
/* 0238C31C */ cpu->r[3] = 0x101C0000u;
|
|
/* 0238C320 */ _t61 = cpu->r[3] + 0x00006000u;
|
|
/* 0238C320 */ cpu->r[3] = rbrew_read32(cpu->mem, _t61);
|
|
/* 0238C324 */ _t62 = cpu->r[3] + 0x00000004u;
|
|
/* 0238C324 */ cpu->r[11] = rbrew_read32(cpu->mem, _t62);
|
|
/* 0238C328 */ _t63 = cpu->r[11] + 0x0000012Cu;
|
|
/* 0238C328 */ cpu->r[12] = rbrew_read32(cpu->mem, _t63);
|
|
/* 0238C32C */ cpu->ctr = cpu->r[12];
|
|
/* 0238C330 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0238C334 */ _t64 = cpu->r[27] + 0x000004F0u;
|
|
/* 0238C334 */ cpu->r[6] = rbrew_read32(cpu->mem, _t64);
|
|
/* 0238C338 */ _t65 = cpu->r[27] + 0x000004E4u;
|
|
/* 0238C338 */ cpu->r[5] = rbrew_read32(cpu->mem, _t65);
|
|
/* 0238C33C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], cpu->r[6]);
|
|
/* 0238C340 */ cpu->r[25] = cpu->r[3];
|
|
/* 0238C344 */ _t66 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0238C344 */ _t67 = _t66 & 0x00000001u;
|
|
/* 0238C344 */ if (_t67) goto L_0238C348; else goto L_0238C438;
|
|
L_0238C348: ; // 0x238c348
|
|
/* 0238C348 */ goto L_0238C458;
|
|
L_0238C34C: ; // 0x238c34c
|
|
/* 0238C34C */ _t68 = cpu->r[27] + 0x0000005Cu;
|
|
/* 0238C34C */ cpu->r[10] = rbrew_read32(cpu->mem, _t68);
|
|
/* 0238C350 */ _t69 = cpu->r[27] + 0x00000064u;
|
|
/* 0238C350 */ cpu->r[12] = rbrew_read32(cpu->mem, _t69);
|
|
/* 0238C354 */ _t70 = cpu->r[27] + 0x00000164u;
|
|
/* 0238C354 */ rbrew_write32(cpu->mem, _t70, cpu->r[10]);
|
|
/* 0238C358 */ cpu->r[8] = 0x10080000u;
|
|
/* 0238C35C */ _t71 = cpu->r[27] + 0x000001E4u;
|
|
/* 0238C35C */ rbrew_write32(cpu->mem, _t71, cpu->r[10]);
|
|
/* 0238C360 */ cpu->r[10] = 0x10080000u;
|
|
/* 0238C364 */ _t72 = cpu->r[8] + 0x00006394u;
|
|
/* 0238C364 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t72);
|
|
/* 0238C368 */ _t73 = cpu->r[10] + 0x00006368u;
|
|
/* 0238C368 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t73);
|
|
/* 0238C36C */ _t74 = cpu->r[27] + 0x0000016Cu;
|
|
/* 0238C36C */ rbrew_write32(cpu->mem, _t74, cpu->r[12]);
|
|
/* 0238C370 */ _t75 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0238C370 */ rbrew_write_f32(cpu->mem, _t75, cpu->f[0]);
|
|
/* 0238C374 */ _t76 = cpu->r[1] + 0x00000008u;
|
|
/* 0238C374 */ rbrew_write_f32(cpu->mem, _t76, cpu->f[0]);
|
|
/* 0238C378 */ _t77 = cpu->r[1] + 0x00000018u;
|
|
/* 0238C378 */ rbrew_write_f32(cpu->mem, _t77, cpu->f[13]);
|
|
/* 0238C37C */ cpu->r[6] = 0x10080000u;
|
|
/* 0238C380 */ _t78 = cpu->r[27] + 0x000001ECu;
|
|
/* 0238C380 */ rbrew_write32(cpu->mem, _t78, cpu->r[12]);
|
|
/* 0238C384 */ _t79 = cpu->r[6] + 0x00006398u;
|
|
/* 0238C384 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t79);
|
|
/* 0238C388 */ cpu->r[12] = 0x10080000u;
|
|
/* 0238C38C */ _t80 = cpu->r[1] + 0x00000014u;
|
|
/* 0238C38C */ rbrew_write_f32(cpu->mem, _t80, cpu->f[13]);
|
|
/* 0238C390 */ cpu->r[3] = cpu->r[1] + 0x00000034u;
|
|
/* 0238C394 */ _t81 = cpu->r[12] + 0x0000636Cu;
|
|
/* 0238C394 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t81);
|
|
/* 0238C398 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 0238C39C */ _t82 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0238C39C */ rbrew_write_f32(cpu->mem, _t82, cpu->f[0]);
|
|
/* 0238C3A0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0238C3A4 */ _t83 = cpu->r[1] + 0x00000010u;
|
|
/* 0238C3A4 */ rbrew_write_f32(cpu->mem, _t83, cpu->f[13]);
|
|
/* 0238C3A8 */ Gambit_fn_020FF2BC(cpu);
|
|
/* 0238C3AC */ cpu->r[3] = cpu->r[27] + 0x000003D4u;
|
|
/* 0238C3B0 */ Gambit_fn_0281BAE0(cpu);
|
|
/* 0238C3B4 */ cpu->r[4] = cpu->r[1] + 0x00000024u;
|
|
/* 0238C3B8 */ cpu->r[5] = cpu->r[27] + 0x000003D4u;
|
|
/* 0238C3BC */ cpu->r[3] = cpu->r[27] + 0x00000414u;
|
|
/* 0238C3C0 */ Gambit_fn_0281DA38(cpu);
|
|
/* 0238C3C4 */ cpu->r[4] = cpu->r[1] + 0x0000002Cu;
|
|
/* 0238C3C8 */ cpu->r[5] = cpu->r[27] + 0x000003D4u;
|
|
/* 0238C3CC */ cpu->r[3] = cpu->r[27] + 0x00000414u;
|
|
/* 0238C3D0 */ Gambit_fn_0281DC48(cpu);
|
|
/* 0238C3D4 */ cpu->r[3] = cpu->r[27] + 0x00000414u;
|
|
/* 0238C3D8 */ cpu->r[4] = cpu->r[27] + 0x000003D4u;
|
|
/* 0238C3DC */ Gambit_fn_0281DCCC(cpu);
|
|
/* 0238C3E0 */ cpu->r[3] = cpu->r[27] + 0x0000042Cu;
|
|
/* 0238C3E4 */ Gambit_fn_0281BC48(cpu);
|
|
/* 0238C3E8 */ cpu->r[5] = cpu->r[3];
|
|
/* 0238C3EC */ cpu->r[6] = 0x101F0000u;
|
|
/* 0238C3F0 */ cpu->r[7] = 0x00000004u;
|
|
/* 0238C3F4 */ cpu->r[4] = cpu->r[1] + 0x00000034u;
|
|
/* 0238C3F8 */ cpu->r[6] = cpu->r[6] + 0x00005BECu;
|
|
/* 0238C3FC */ cpu->r[3] = cpu->r[27] + 0x0000013Cu;
|
|
/* 0238C400 */ Gambit_fn_0294246C(cpu);
|
|
/* 0238C404 */ cpu->r[3] = cpu->r[27] + 0x000007C4u;
|
|
/* 0238C408 */ Gambit_fn_02836FFC(cpu);
|
|
/* 0238C40C */ cpu->r[3] = 0x101C0000u;
|
|
/* 0238C410 */ _t84 = cpu->r[3] + 0x00006000u;
|
|
/* 0238C410 */ cpu->r[3] = rbrew_read32(cpu->mem, _t84);
|
|
/* 0238C414 */ _t85 = cpu->r[3] + 0x00000004u;
|
|
/* 0238C414 */ cpu->r[11] = rbrew_read32(cpu->mem, _t85);
|
|
/* 0238C418 */ _t86 = cpu->r[11] + 0x0000012Cu;
|
|
/* 0238C418 */ cpu->r[12] = rbrew_read32(cpu->mem, _t86);
|
|
/* 0238C41C */ cpu->ctr = cpu->r[12];
|
|
/* 0238C420 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0238C424 */ _t87 = cpu->r[27] + 0x000004F0u;
|
|
/* 0238C424 */ cpu->r[6] = rbrew_read32(cpu->mem, _t87);
|
|
/* 0238C428 */ _t88 = cpu->r[27] + 0x000004E4u;
|
|
/* 0238C428 */ cpu->r[5] = rbrew_read32(cpu->mem, _t88);
|
|
/* 0238C42C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], cpu->r[6]);
|
|
/* 0238C430 */ cpu->r[25] = cpu->r[3];
|
|
/* 0238C434 */ _t89 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0238C434 */ _t90 = _t89 & 0x00000001u;
|
|
/* 0238C434 */ if (_t90) goto L_0238C458; else goto L_0238C438;
|
|
L_0238C438: ; // 0x238c438
|
|
/* 0238C438 */ cpu->r[3] = cpu->r[27] + 0x000007C4u;
|
|
/* 0238C43C */ cpu->r[31] = 0x00000000u;
|
|
/* 0238C440 */ Gambit_fn_02837030(cpu);
|
|
/* 0238C444 */ /* nop */
|
|
/* 0238C448 */ _t91 = cpu->r[1] + 0x00000094u;
|
|
/* 0238C448 */ cpu->r[0] = rbrew_read32(cpu->mem, _t91);
|
|
/* 0238C44C */ cpu->lr = cpu->r[0];
|
|
/* 0238C450 */ cpu->r[1] = cpu->r[1] + 0x00000090u;
|
|
/* 0238C454 */ return;
|
|
L_0238C458: ; // 0x238c458
|
|
/* 0238C458 */ _t92 = cpu->r[27] + 0x000004E8u;
|
|
/* 0238C458 */ cpu->r[31] = rbrew_read32(cpu->mem, _t92);
|
|
/* 0238C45C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0238C460 */ _t93 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238C460 */ _t94 = _t93 & 0x00000001u;
|
|
/* 0238C460 */ if (_t94) goto L_0238C46C; else goto L_0238C464;
|
|
L_0238C464: ; // 0x238c464
|
|
/* 0238C464 */ _t95 = cpu->r[31] + 0x00000000u;
|
|
/* 0238C464 */ cpu->r[7] = rbrew_read32(cpu->mem, _t95);
|
|
/* 0238C468 */ _t96 = cpu->r[27] + 0x000004E8u;
|
|
/* 0238C468 */ rbrew_write32(cpu->mem, _t96, cpu->r[7]);
|
|
L_0238C46C: ; // 0x238c46c
|
|
/* 0238C46C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0238C470 */ _t97 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238C470 */ _t98 = _t97 & 0x00000001u;
|
|
/* 0238C470 */ if (_t98) goto L_0238C630; else goto L_0238C474;
|
|
L_0238C474: ; // 0x238c474
|
|
/* 0238C474 */ cpu->r[28] = cpu->r[31];
|
|
/* 0238C474 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 0238C478 */ _t99 = cpu->r[1] + 0x00000020u;
|
|
/* 0238C478 */ rbrew_write32(cpu->mem, _t99, cpu->r[26]);
|
|
/* 0238C47C */ _t100 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238C47C */ _t101 = _t100 & 0x00000001u;
|
|
/* 0238C47C */ if (_t101) goto L_0238C480; else goto L_0238C490;
|
|
L_0238C480: ; // 0x238c480
|
|
/* 0238C480 */ cpu->r[3] = 0x000000A4u;
|
|
/* 0238C484 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238C488 */ cpu->r[28] = cpu->r[3];
|
|
/* 0238C488 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 0238C48C */ _t102 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238C48C */ _t103 = _t102 & 0x00000001u;
|
|
/* 0238C48C */ if (_t103) goto L_0238C5FC; else goto L_0238C490;
|
|
L_0238C490: ; // 0x238c490
|
|
/* 0238C490 */ cpu->r[24] = 0x10080000u;
|
|
/* 0238C494 */ cpu->r[29] = cpu->r[28];
|
|
/* 0238C494 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0238C498 */ cpu->r[21] = 0x10080000u;
|
|
/* 0238C49C */ cpu->r[24] = cpu->r[24] + 0x000062A8u;
|
|
/* 0238C4A0 */ cpu->r[23] = 0x10080000u;
|
|
/* 0238C4A4 */ cpu->r[21] = cpu->r[21] + 0x00006290u;
|
|
/* 0238C4A8 */ cpu->r[22] = 0x10110000u;
|
|
/* 0238C4AC */ cpu->r[23] = cpu->r[23] + 0x000062C0u;
|
|
/* 0238C4B0 */ _t104 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238C4B0 */ _t105 = _t104 & 0x00000001u;
|
|
/* 0238C4B0 */ if (_t105) goto L_0238C4B4; else goto L_0238C4C4;
|
|
L_0238C4B4: ; // 0x238c4b4
|
|
/* 0238C4B4 */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0238C4B8 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238C4BC */ cpu->r[29] = cpu->r[3];
|
|
/* 0238C4BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0238C4C0 */ _t106 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238C4C0 */ _t107 = _t106 & 0x00000001u;
|
|
/* 0238C4C0 */ if (_t107) goto L_0238C538; else goto L_0238C4C4;
|
|
L_0238C4C4: ; // 0x238c4c4
|
|
/* 0238C4C4 */ cpu->r[30] = cpu->r[29];
|
|
/* 0238C4C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0238C4C8 */ _t108 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238C4C8 */ _t109 = _t108 & 0x00000001u;
|
|
/* 0238C4C8 */ if (_t109) goto L_0238C4CC; else goto L_0238C4DC;
|
|
L_0238C4CC: ; // 0x238c4cc
|
|
/* 0238C4CC */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0238C4D0 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238C4D4 */ cpu->r[30] = cpu->r[3];
|
|
/* 0238C4D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0238C4D8 */ _t110 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238C4D8 */ _t111 = _t110 & 0x00000001u;
|
|
/* 0238C4D8 */ if (_t111) goto L_0238C534; else goto L_0238C4DC;
|
|
L_0238C4DC: ; // 0x238c4dc
|
|
/* 0238C4DC */ cpu->r[3] = cpu->r[30];
|
|
/* 0238C4DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238C4E0 */ _t112 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238C4E0 */ _t113 = _t112 & 0x00000001u;
|
|
/* 0238C4E0 */ if (_t113) goto L_0238C4E4; else goto L_0238C50C;
|
|
L_0238C4E4: ; // 0x238c4e4
|
|
/* 0238C4E4 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0238C4E8 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238C4EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238C4F0 */ _t114 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238C4F0 */ _t115 = _t114 & 0x00000001u;
|
|
/* 0238C4F0 */ if (_t115) goto L_0238C4F4; else goto L_0238C50C;
|
|
L_0238C4F4: ; // 0x238c4f4
|
|
/* 0238C4F4 */ _t116 = cpu->r[30] + 0x00000000u;
|
|
/* 0238C4F4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t116);
|
|
/* 0238C4F8 */ _t117 = cpu->r[22] + 0x00007399u;
|
|
/* 0238C4F8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t117);
|
|
/* 0238C4FC */ _t118 = cpu->r[30] + 0x00000004u;
|
|
/* 0238C4FC */ rbrew_write32(cpu->mem, _t118, cpu->r[24]);
|
|
/* 0238C500 */ _t119 = cpu->r[11] + 0x00000000u;
|
|
/* 0238C500 */ rbrew_write8(cpu->mem, _t119, (uint8_t)cpu->r[0]);
|
|
/* 0238C504 */ _t120 = cpu->r[29] + 0x00000004u;
|
|
/* 0238C504 */ rbrew_write32(cpu->mem, _t120, cpu->r[23]);
|
|
/* 0238C508 */ goto L_0238C538;
|
|
L_0238C50C: ; // 0x238c50c
|
|
/* 0238C50C */ cpu->r[0] = cpu->r[30] + 0x0000000Cu;
|
|
/* 0238C510 */ _t121 = cpu->r[3] + 0x00000004u;
|
|
/* 0238C510 */ rbrew_write32(cpu->mem, _t121, cpu->r[21]);
|
|
/* 0238C514 */ cpu->r[9] = 0x00000020u;
|
|
/* 0238C518 */ _t122 = cpu->r[3] + 0x00000000u;
|
|
/* 0238C518 */ rbrew_write32(cpu->mem, _t122, cpu->r[0]);
|
|
/* 0238C51C */ _t123 = cpu->r[3] + 0x00000008u;
|
|
/* 0238C51C */ rbrew_write32(cpu->mem, _t123, cpu->r[9]);
|
|
/* 0238C520 */ _t124 = cpu->r[22] + 0x00007399u;
|
|
/* 0238C520 */ cpu->r[0] = rbrew_read8(cpu->mem, _t124);
|
|
/* 0238C524 */ _t125 = cpu->r[30] + 0x00000004u;
|
|
/* 0238C524 */ rbrew_write32(cpu->mem, _t125, cpu->r[24]);
|
|
/* 0238C528 */ _t126 = cpu->r[30] + 0x00000000u;
|
|
/* 0238C528 */ cpu->r[11] = rbrew_read32(cpu->mem, _t126);
|
|
/* 0238C52C */ _t127 = cpu->r[30] + 0x0000002Bu;
|
|
/* 0238C52C */ rbrew_write8(cpu->mem, _t127, (uint8_t)cpu->r[0]);
|
|
/* 0238C530 */ _t128 = cpu->r[11] + 0x00000000u;
|
|
/* 0238C530 */ rbrew_write8(cpu->mem, _t128, (uint8_t)cpu->r[0]);
|
|
L_0238C534: ; // 0x238c534
|
|
/* 0238C534 */ _t129 = cpu->r[29] + 0x00000004u;
|
|
/* 0238C534 */ rbrew_write32(cpu->mem, _t129, cpu->r[23]);
|
|
L_0238C538: ; // 0x238c538
|
|
/* 0238C538 */ cpu->r[29] = cpu->r[28] + 0x0000002Cu;
|
|
/* 0238C538 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0238C53C */ _t130 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238C53C */ _t131 = _t130 & 0x00000001u;
|
|
/* 0238C53C */ if (_t131) goto L_0238C540; else goto L_0238C550;
|
|
L_0238C540: ; // 0x238c540
|
|
/* 0238C540 */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0238C544 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238C548 */ cpu->r[29] = cpu->r[3];
|
|
/* 0238C548 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0238C54C */ _t132 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238C54C */ _t133 = _t132 & 0x00000001u;
|
|
/* 0238C54C */ if (_t133) goto L_0238C5C4; else goto L_0238C550;
|
|
L_0238C550: ; // 0x238c550
|
|
/* 0238C550 */ cpu->r[30] = cpu->r[29];
|
|
/* 0238C550 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0238C554 */ _t134 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238C554 */ _t135 = _t134 & 0x00000001u;
|
|
/* 0238C554 */ if (_t135) goto L_0238C558; else goto L_0238C568;
|
|
L_0238C558: ; // 0x238c558
|
|
/* 0238C558 */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0238C55C */ Gambit_fn_02801A78(cpu);
|
|
/* 0238C560 */ cpu->r[30] = cpu->r[3];
|
|
/* 0238C560 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0238C564 */ _t136 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238C564 */ _t137 = _t136 & 0x00000001u;
|
|
/* 0238C564 */ if (_t137) goto L_0238C5C0; else goto L_0238C568;
|
|
L_0238C568: ; // 0x238c568
|
|
/* 0238C568 */ cpu->r[3] = cpu->r[30];
|
|
/* 0238C568 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238C56C */ _t138 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238C56C */ _t139 = _t138 & 0x00000001u;
|
|
/* 0238C56C */ if (_t139) goto L_0238C570; else goto L_0238C598;
|
|
L_0238C570: ; // 0x238c570
|
|
/* 0238C570 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0238C574 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238C578 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238C57C */ _t140 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238C57C */ _t141 = _t140 & 0x00000001u;
|
|
/* 0238C57C */ if (_t141) goto L_0238C580; else goto L_0238C598;
|
|
L_0238C580: ; // 0x238c580
|
|
/* 0238C580 */ _t142 = cpu->r[30] + 0x00000000u;
|
|
/* 0238C580 */ cpu->r[6] = rbrew_read32(cpu->mem, _t142);
|
|
/* 0238C584 */ _t143 = cpu->r[22] + 0x00007399u;
|
|
/* 0238C584 */ cpu->r[0] = rbrew_read8(cpu->mem, _t143);
|
|
/* 0238C588 */ _t144 = cpu->r[30] + 0x00000004u;
|
|
/* 0238C588 */ rbrew_write32(cpu->mem, _t144, cpu->r[24]);
|
|
/* 0238C58C */ _t145 = cpu->r[6] + 0x00000000u;
|
|
/* 0238C58C */ rbrew_write8(cpu->mem, _t145, (uint8_t)cpu->r[0]);
|
|
/* 0238C590 */ _t146 = cpu->r[29] + 0x00000004u;
|
|
/* 0238C590 */ rbrew_write32(cpu->mem, _t146, cpu->r[23]);
|
|
/* 0238C594 */ goto L_0238C5C4;
|
|
L_0238C598: ; // 0x238c598
|
|
/* 0238C598 */ cpu->r[0] = cpu->r[30] + 0x0000000Cu;
|
|
/* 0238C59C */ _t147 = cpu->r[3] + 0x00000004u;
|
|
/* 0238C59C */ rbrew_write32(cpu->mem, _t147, cpu->r[21]);
|
|
/* 0238C5A0 */ cpu->r[5] = 0x00000020u;
|
|
/* 0238C5A4 */ _t148 = cpu->r[3] + 0x00000000u;
|
|
/* 0238C5A4 */ rbrew_write32(cpu->mem, _t148, cpu->r[0]);
|
|
/* 0238C5A8 */ _t149 = cpu->r[3] + 0x00000008u;
|
|
/* 0238C5A8 */ rbrew_write32(cpu->mem, _t149, cpu->r[5]);
|
|
/* 0238C5AC */ _t150 = cpu->r[22] + 0x00007399u;
|
|
/* 0238C5AC */ cpu->r[0] = rbrew_read8(cpu->mem, _t150);
|
|
/* 0238C5B0 */ _t151 = cpu->r[30] + 0x00000004u;
|
|
/* 0238C5B0 */ rbrew_write32(cpu->mem, _t151, cpu->r[24]);
|
|
/* 0238C5B4 */ _t152 = cpu->r[30] + 0x00000000u;
|
|
/* 0238C5B4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t152);
|
|
/* 0238C5B8 */ _t153 = cpu->r[30] + 0x0000002Bu;
|
|
/* 0238C5B8 */ rbrew_write8(cpu->mem, _t153, (uint8_t)cpu->r[0]);
|
|
/* 0238C5BC */ _t154 = cpu->r[6] + 0x00000000u;
|
|
/* 0238C5BC */ rbrew_write8(cpu->mem, _t154, (uint8_t)cpu->r[0]);
|
|
L_0238C5C0: ; // 0x238c5c0
|
|
/* 0238C5C0 */ _t155 = cpu->r[29] + 0x00000004u;
|
|
/* 0238C5C0 */ rbrew_write32(cpu->mem, _t155, cpu->r[23]);
|
|
L_0238C5C4: ; // 0x238c5c4
|
|
/* 0238C5C4 */ cpu->r[8] = cpu->r[28] + 0x00000080u;
|
|
/* 0238C5C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0238C5C8 */ _t156 = cpu->r[28] + 0x00000058u;
|
|
/* 0238C5C8 */ rbrew_write32(cpu->mem, _t156, cpu->r[25]);
|
|
/* 0238C5CC */ _t157 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238C5CC */ _t158 = _t157 & 0x00000001u;
|
|
/* 0238C5CC */ if (_t158) goto L_0238C5D0; else goto L_0238C5D8;
|
|
L_0238C5D0: ; // 0x238c5d0
|
|
/* 0238C5D0 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0238C5D4 */ Gambit_fn_02801A78(cpu);
|
|
L_0238C5D8: ; // 0x238c5d8
|
|
/* 0238C5D8 */ cpu->r[9] = cpu->r[28] + 0x0000008Cu;
|
|
/* 0238C5D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0238C5DC */ _t159 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238C5DC */ _t160 = _t159 & 0x00000001u;
|
|
/* 0238C5DC */ if (_t160) goto L_0238C5E0; else goto L_0238C5E8;
|
|
L_0238C5E0: ; // 0x238c5e0
|
|
/* 0238C5E0 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0238C5E4 */ Gambit_fn_02801A78(cpu);
|
|
L_0238C5E8: ; // 0x238c5e8
|
|
/* 0238C5E8 */ _t161 = cpu->r[1] + 0x00000020u;
|
|
/* 0238C5E8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t161);
|
|
/* 0238C5EC */ _t162 = cpu->r[28] + 0x0000009Cu;
|
|
/* 0238C5EC */ rbrew_write8(cpu->mem, _t162, (uint8_t)cpu->r[26]);
|
|
/* 0238C5F0 */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 0238C5F4 */ _t163 = cpu->r[28] + 0x00000098u;
|
|
/* 0238C5F4 */ rbrew_write32(cpu->mem, _t163, cpu->r[10]);
|
|
/* 0238C5F8 */ _t164 = cpu->r[28] + 0x000000A0u;
|
|
/* 0238C5F8 */ rbrew_write32(cpu->mem, _t164, cpu->r[0]);
|
|
L_0238C5FC: ; // 0x238c5fc
|
|
/* 0238C5FC */ _t165 = cpu->r[31] + 0x000000A4u;
|
|
/* 0238C5FC */ rbrew_write32(cpu->mem, _t165, cpu->r[26]);
|
|
/* 0238C600 */ cpu->r[4] = cpu->r[31] + 0x000000A4u;
|
|
/* 0238C604 */ cpu->r[3] = cpu->r[27] + 0x000004DCu;
|
|
/* 0238C608 */ _t166 = cpu->r[31] + 0x000000A8u;
|
|
/* 0238C608 */ rbrew_write32(cpu->mem, _t166, cpu->r[26]);
|
|
/* 0238C60C */ Gambit_fn_02801EBC(cpu);
|
|
/* 0238C610 */ _t167 = cpu->r[27] + 0x000004E4u;
|
|
/* 0238C610 */ cpu->r[7] = rbrew_read32(cpu->mem, _t167);
|
|
/* 0238C614 */ cpu->r[7] = cpu->r[7] + 0x00000001u;
|
|
/* 0238C618 */ cpu->r[3] = cpu->r[27] + 0x000007C4u;
|
|
/* 0238C61C */ _t168 = cpu->r[27] + 0x000004E4u;
|
|
/* 0238C61C */ rbrew_write32(cpu->mem, _t168, cpu->r[7]);
|
|
/* 0238C620 */ Gambit_fn_02837030(cpu);
|
|
/* 0238C624 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0238C628 */ _t169 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238C628 */ _t170 = _t169 & 0x00000001u;
|
|
/* 0238C628 */ if (_t170) goto L_0238C62C; else goto L_0238C65C;
|
|
L_0238C62C: ; // 0x238c62c
|
|
/* 0238C62C */ goto L_0238C670;
|
|
L_0238C630: ; // 0x238c630
|
|
/* 0238C630 */ cpu->r[4] = 0x000000A4u;
|
|
/* 0238C634 */ cpu->r[3] = cpu->r[27] + 0x000004DCu;
|
|
/* 0238C638 */ cpu->r[31] = 0x00000000u;
|
|
/* 0238C63C */ Gambit_fn_02801EBC(cpu);
|
|
/* 0238C640 */ _t171 = cpu->r[27] + 0x000004E4u;
|
|
/* 0238C640 */ cpu->r[7] = rbrew_read32(cpu->mem, _t171);
|
|
/* 0238C644 */ cpu->r[7] = cpu->r[7] + 0x00000001u;
|
|
/* 0238C648 */ cpu->r[3] = cpu->r[27] + 0x000007C4u;
|
|
/* 0238C64C */ _t172 = cpu->r[27] + 0x000004E4u;
|
|
/* 0238C64C */ rbrew_write32(cpu->mem, _t172, cpu->r[7]);
|
|
/* 0238C650 */ Gambit_fn_02837030(cpu);
|
|
/* 0238C654 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0238C658 */ _t173 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238C658 */ _t174 = _t173 & 0x00000001u;
|
|
/* 0238C658 */ if (_t174) goto L_0238C670; else goto L_0238C65C;
|
|
L_0238C65C: ; // 0x238c65c
|
|
/* 0238C65C */ cpu->r[9] = 0x00000001u;
|
|
/* 0238C660 */ _t175 = cpu->r[31] + 0x0000009Cu;
|
|
/* 0238C660 */ rbrew_write8(cpu->mem, _t175, (uint8_t)cpu->r[9]);
|
|
/* 0238C664 */ cpu->r[3] = cpu->r[27];
|
|
/* 0238C668 */ _t176 = cpu->r[27] + 0x000004D8u;
|
|
/* 0238C668 */ rbrew_write8(cpu->mem, _t176, (uint8_t)cpu->r[9]);
|
|
/* 0238C66C */ Gambit_fn_0238C0E0(cpu);
|
|
L_0238C670: ; // 0x238c670
|
|
/* 0238C670 */ /* nop */
|
|
/* 0238C674 */ _t177 = cpu->r[1] + 0x00000094u;
|
|
/* 0238C674 */ cpu->r[0] = rbrew_read32(cpu->mem, _t177);
|
|
/* 0238C678 */ cpu->lr = cpu->r[0];
|
|
/* 0238C67C */ cpu->r[1] = cpu->r[1] + 0x00000090u;
|
|
/* 0238C680 */ return;
|
|
}
|
|
|
|
// fn_0238C684 @ 0x238c684
|
|
void Gambit_fn_0238C684(CPUState* 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_0238C684: ; // 0x238c684
|
|
/* 0238C684 */ cpu->r[0] = cpu->lr;
|
|
/* 0238C688 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0238C688 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0238C688 */ cpu->r[1] = _t0;
|
|
/* 0238C68C */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0238C68C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0238C690 */ cpu->r[30] = cpu->r[4];
|
|
/* 0238C694 */ cpu->r[4] = 0x10080000u;
|
|
/* 0238C698 */ cpu->r[4] = cpu->r[4] + 0x0000639Cu;
|
|
/* 0238C69C */ cpu->r[3] = cpu->r[30];
|
|
/* 0238C6A0 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0238C6A0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0238C6A4 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0238C6A4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0238C6A8 */ _t4 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 0238C6A8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0238C6A8 */ if (_t5) goto L_0238C6AC; // else: addr-0 trap, fall-through
|
|
L_0238C6AC: ; // 0x238c6ac
|
|
/* 0238C6AC */ Gambit_fn_0282A5F4(cpu);
|
|
/* 0238C6B0 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0238C6B4 */ _t6 = cpu->r[12] + 0x00005BA0u;
|
|
/* 0238C6B4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0238C6B8 */ _t7 = cpu->r[12] + 0x00000044u;
|
|
/* 0238C6B8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 0238C6BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0238C6C0 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238C6C0 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0238C6C0 */ if (_t9) goto L_0238C6C4; else goto L_0238C714;
|
|
L_0238C6C4: ; // 0x238c6c4
|
|
/* 0238C6C4 */ cpu->r[11] = 0x101C0000u;
|
|
/* 0238C6C8 */ _t10 = cpu->r[11] + 0x00006000u;
|
|
/* 0238C6C8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0238C6CC */ _t11 = cpu->r[11] + 0x00000268u;
|
|
/* 0238C6CC */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0238C6D0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0238C6D4 */ Gambit_fn_0261F774(cpu);
|
|
/* 0238C6D8 */ cpu->r[4] = cpu->r[3];
|
|
/* 0238C6DC */ cpu->r[3] = cpu->r[31];
|
|
/* 0238C6E0 */ Gambit_fn_0261F55C(cpu);
|
|
/* 0238C6E4 */ _t12 = cpu->r[3] + 0x00000060u;
|
|
/* 0238C6E4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0238C6E8 */ _t13 = cpu->r[31] + 0x00000004u;
|
|
/* 0238C6E8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0238C6EC */ _t14 = cpu->r[8] + 0x00000014u;
|
|
/* 0238C6EC */ cpu->r[9] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0238C6F0 */ cpu->ctr = cpu->r[9];
|
|
/* 0238C6F4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0238C6F8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0238C6FC */ cpu->r[4] = 0x10080000u;
|
|
/* 0238C700 */ cpu->r[3] = cpu->r[30];
|
|
/* 0238C704 */ _t15 = cpu->r[31] + 0x00000000u;
|
|
/* 0238C704 */ cpu->r[5] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0238C708 */ cpu->r[4] = cpu->r[4] + 0x000063A4u;
|
|
/* 0238C70C */ _t16 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 0238C70C */ _t17 = _t16 & 0x00000001u;
|
|
/* 0238C70C */ if (_t17) goto L_0238C710; // else: addr-0 trap, fall-through
|
|
L_0238C710: ; // 0x238c710
|
|
/* 0238C710 */ Gambit_fn_0282A5F4(cpu);
|
|
L_0238C714: ; // 0x238c714
|
|
/* 0238C714 */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 0238C714 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0238C718 */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 0238C718 */ cpu->r[30] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0238C71C */ cpu->lr = cpu->r[0];
|
|
/* 0238C720 */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0238C720 */ cpu->r[31] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0238C724 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0238C728 */ return;
|
|
}
|
|
|
|
// fn_0238C688 @ 0x238c688
|
|
void Gambit_fn_0238C688(CPUState* 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_0238C688: ; // 0x238c688
|
|
/* 0238C688 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0238C688 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0238C688 */ cpu->r[1] = _t0;
|
|
/* 0238C68C */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0238C68C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0238C690 */ cpu->r[30] = cpu->r[4];
|
|
/* 0238C694 */ cpu->r[4] = 0x10080000u;
|
|
/* 0238C698 */ cpu->r[4] = cpu->r[4] + 0x0000639Cu;
|
|
/* 0238C69C */ cpu->r[3] = cpu->r[30];
|
|
/* 0238C6A0 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0238C6A0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0238C6A4 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0238C6A4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0238C6A8 */ _t4 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 0238C6A8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0238C6A8 */ if (_t5) goto L_0238C6AC; // else: addr-0 trap, fall-through
|
|
L_0238C6AC: ; // 0x238c6ac
|
|
/* 0238C6AC */ Gambit_fn_0282A5F4(cpu);
|
|
/* 0238C6B0 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0238C6B4 */ _t6 = cpu->r[12] + 0x00005BA0u;
|
|
/* 0238C6B4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0238C6B8 */ _t7 = cpu->r[12] + 0x00000044u;
|
|
/* 0238C6B8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 0238C6BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0238C6C0 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238C6C0 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0238C6C0 */ if (_t9) goto L_0238C6C4; else goto L_0238C714;
|
|
L_0238C6C4: ; // 0x238c6c4
|
|
/* 0238C6C4 */ cpu->r[11] = 0x101C0000u;
|
|
/* 0238C6C8 */ _t10 = cpu->r[11] + 0x00006000u;
|
|
/* 0238C6C8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0238C6CC */ _t11 = cpu->r[11] + 0x00000268u;
|
|
/* 0238C6CC */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0238C6D0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0238C6D4 */ Gambit_fn_0261F774(cpu);
|
|
/* 0238C6D8 */ cpu->r[4] = cpu->r[3];
|
|
/* 0238C6DC */ cpu->r[3] = cpu->r[31];
|
|
/* 0238C6E0 */ Gambit_fn_0261F55C(cpu);
|
|
/* 0238C6E4 */ _t12 = cpu->r[3] + 0x00000060u;
|
|
/* 0238C6E4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0238C6E8 */ _t13 = cpu->r[31] + 0x00000004u;
|
|
/* 0238C6E8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0238C6EC */ _t14 = cpu->r[8] + 0x00000014u;
|
|
/* 0238C6EC */ cpu->r[9] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0238C6F0 */ cpu->ctr = cpu->r[9];
|
|
/* 0238C6F4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0238C6F8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0238C6FC */ cpu->r[4] = 0x10080000u;
|
|
/* 0238C700 */ cpu->r[3] = cpu->r[30];
|
|
/* 0238C704 */ _t15 = cpu->r[31] + 0x00000000u;
|
|
/* 0238C704 */ cpu->r[5] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0238C708 */ cpu->r[4] = cpu->r[4] + 0x000063A4u;
|
|
/* 0238C70C */ _t16 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 0238C70C */ _t17 = _t16 & 0x00000001u;
|
|
/* 0238C70C */ if (_t17) goto L_0238C710; // else: addr-0 trap, fall-through
|
|
L_0238C710: ; // 0x238c710
|
|
/* 0238C710 */ Gambit_fn_0282A5F4(cpu);
|
|
L_0238C714: ; // 0x238c714
|
|
/* 0238C714 */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 0238C714 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0238C718 */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 0238C718 */ cpu->r[30] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0238C71C */ cpu->lr = cpu->r[0];
|
|
/* 0238C720 */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0238C720 */ cpu->r[31] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0238C724 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0238C728 */ return;
|
|
}
|
|
|
|
// fn_0238C72C @ 0x238c72c
|
|
void Gambit_fn_0238C72C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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;
|
|
|
|
L_0238C72C: ; // 0x238c72c
|
|
/* 0238C72C */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 0238C72C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0238C72C */ cpu->r[1] = _t0;
|
|
/* 0238C730 */ /* nop */
|
|
/* 0238C734 */ cpu->r[0] = cpu->lr;
|
|
/* 0238C738 */ _t1 = cpu->r[1] + 0x00000044u;
|
|
/* 0238C738 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0238C73C */ cpu->r[29] = cpu->r[3];
|
|
/* 0238C740 */ _t2 = cpu->r[29] + 0x00000505u;
|
|
/* 0238C740 */ cpu->r[0] = rbrew_read8(cpu->mem, _t2);
|
|
/* 0238C744 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0238C748 */ cpu->r[30] = cpu->r[4];
|
|
/* 0238C74C */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238C74C */ _t4 = _t3 & 0x00000001u;
|
|
/* 0238C74C */ if (_t4) goto L_0238C9DC; else goto L_0238C750;
|
|
L_0238C750: ; // 0x238c750
|
|
/* 0238C750 */ _t5 = cpu->r[29] + 0x00000504u;
|
|
/* 0238C750 */ cpu->r[0] = rbrew_read8(cpu->mem, _t5);
|
|
/* 0238C754 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0238C758 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238C758 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0238C758 */ if (_t7) goto L_0238C9DC; else goto L_0238C75C;
|
|
L_0238C75C: ; // 0x238c75c
|
|
/* 0238C75C */ cpu->r[3] = cpu->r[29] + 0x000007C4u;
|
|
/* 0238C760 */ Gambit_fn_02836FFC(cpu);
|
|
/* 0238C764 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0238C768 */ _t8 = cpu->r[3] + 0x00006000u;
|
|
/* 0238C768 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0238C76C */ _t9 = cpu->r[3] + 0x00000004u;
|
|
/* 0238C76C */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0238C770 */ _t10 = cpu->r[12] + 0x0000012Cu;
|
|
/* 0238C770 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0238C774 */ cpu->ctr = cpu->r[0];
|
|
/* 0238C778 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0238C77C */ _t11 = cpu->r[29] + 0x000004E4u;
|
|
/* 0238C77C */ cpu->r[6] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0238C780 */ cpu->r[26] = cpu->r[3];
|
|
/* 0238C784 */ _t12 = cpu->r[29] + 0x000004F0u;
|
|
/* 0238C784 */ cpu->r[7] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0238C788 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], cpu->r[7]);
|
|
/* 0238C78C */ cpu->r[25] = 0x00000000u;
|
|
/* 0238C790 */ _t13 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0238C790 */ _t14 = _t13 & 0x00000001u;
|
|
/* 0238C790 */ if (_t14) goto L_0238C7B4; else goto L_0238C794;
|
|
L_0238C794: ; // 0x238c794
|
|
/* 0238C794 */ cpu->r[3] = cpu->r[29] + 0x000007C4u;
|
|
/* 0238C798 */ cpu->r[31] = 0x00000000u;
|
|
/* 0238C79C */ Gambit_fn_02837030(cpu);
|
|
/* 0238C7A0 */ /* nop */
|
|
/* 0238C7A4 */ _t15 = cpu->r[1] + 0x00000044u;
|
|
/* 0238C7A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0238C7A8 */ cpu->lr = cpu->r[0];
|
|
/* 0238C7AC */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 0238C7B0 */ return;
|
|
L_0238C7B4: ; // 0x238c7b4
|
|
/* 0238C7B4 */ _t16 = cpu->r[29] + 0x000004E8u;
|
|
/* 0238C7B4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0238C7B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0238C7BC */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238C7BC */ _t18 = _t17 & 0x00000001u;
|
|
/* 0238C7BC */ if (_t18) goto L_0238C7C8; else goto L_0238C7C0;
|
|
L_0238C7C0: ; // 0x238c7c0
|
|
/* 0238C7C0 */ _t19 = cpu->r[31] + 0x00000000u;
|
|
/* 0238C7C0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0238C7C4 */ _t20 = cpu->r[29] + 0x000004E8u;
|
|
/* 0238C7C4 */ rbrew_write32(cpu->mem, _t20, cpu->r[8]);
|
|
L_0238C7C8: ; // 0x238c7c8
|
|
/* 0238C7C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0238C7CC */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238C7CC */ _t22 = _t21 & 0x00000001u;
|
|
/* 0238C7CC */ if (_t22) goto L_0238C990; else goto L_0238C7D0;
|
|
L_0238C7D0: ; // 0x238c7d0
|
|
/* 0238C7D0 */ cpu->r[9] = 0x00000001u;
|
|
/* 0238C7D4 */ cpu->r[24] = cpu->r[31];
|
|
/* 0238C7D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 0238C7D8 */ _t23 = cpu->r[1] + 0x00000008u;
|
|
/* 0238C7D8 */ rbrew_write32(cpu->mem, _t23, cpu->r[9]);
|
|
/* 0238C7DC */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238C7DC */ _t25 = _t24 & 0x00000001u;
|
|
/* 0238C7DC */ if (_t25) goto L_0238C7E0; else goto L_0238C7F0;
|
|
L_0238C7E0: ; // 0x238c7e0
|
|
/* 0238C7E0 */ cpu->r[3] = 0x000000A4u;
|
|
/* 0238C7E4 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238C7E8 */ cpu->r[24] = cpu->r[3];
|
|
/* 0238C7E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 0238C7EC */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238C7EC */ _t27 = _t26 & 0x00000001u;
|
|
/* 0238C7EC */ if (_t27) goto L_0238C95C; else goto L_0238C7F0;
|
|
L_0238C7F0: ; // 0x238c7f0
|
|
/* 0238C7F0 */ cpu->r[22] = 0x10080000u;
|
|
/* 0238C7F4 */ cpu->r[27] = cpu->r[24];
|
|
/* 0238C7F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0238C7F8 */ cpu->r[23] = 0x10080000u;
|
|
/* 0238C7FC */ cpu->r[22] = cpu->r[22] + 0x000062A8u;
|
|
/* 0238C800 */ cpu->r[21] = 0x10080000u;
|
|
/* 0238C804 */ cpu->r[23] = cpu->r[23] + 0x00006290u;
|
|
/* 0238C808 */ cpu->r[20] = 0x10110000u;
|
|
/* 0238C80C */ cpu->r[21] = cpu->r[21] + 0x000062C0u;
|
|
/* 0238C810 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238C810 */ _t29 = _t28 & 0x00000001u;
|
|
/* 0238C810 */ if (_t29) goto L_0238C814; else goto L_0238C824;
|
|
L_0238C814: ; // 0x238c814
|
|
/* 0238C814 */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0238C818 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238C81C */ cpu->r[27] = cpu->r[3];
|
|
/* 0238C81C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0238C820 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238C820 */ _t31 = _t30 & 0x00000001u;
|
|
/* 0238C820 */ if (_t31) goto L_0238C898; else goto L_0238C824;
|
|
L_0238C824: ; // 0x238c824
|
|
/* 0238C824 */ cpu->r[28] = cpu->r[27];
|
|
/* 0238C824 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 0238C828 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238C828 */ _t33 = _t32 & 0x00000001u;
|
|
/* 0238C828 */ if (_t33) goto L_0238C82C; else goto L_0238C83C;
|
|
L_0238C82C: ; // 0x238c82c
|
|
/* 0238C82C */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0238C830 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238C834 */ cpu->r[28] = cpu->r[3];
|
|
/* 0238C834 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 0238C838 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238C838 */ _t35 = _t34 & 0x00000001u;
|
|
/* 0238C838 */ if (_t35) goto L_0238C894; else goto L_0238C83C;
|
|
L_0238C83C: ; // 0x238c83c
|
|
/* 0238C83C */ cpu->r[3] = cpu->r[28];
|
|
/* 0238C83C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238C840 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238C840 */ _t37 = _t36 & 0x00000001u;
|
|
/* 0238C840 */ if (_t37) goto L_0238C844; else goto L_0238C86C;
|
|
L_0238C844: ; // 0x238c844
|
|
/* 0238C844 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0238C848 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238C84C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238C850 */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238C850 */ _t39 = _t38 & 0x00000001u;
|
|
/* 0238C850 */ if (_t39) goto L_0238C854; else goto L_0238C86C;
|
|
L_0238C854: ; // 0x238c854
|
|
/* 0238C854 */ _t40 = cpu->r[28] + 0x00000000u;
|
|
/* 0238C854 */ cpu->r[12] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0238C858 */ _t41 = cpu->r[20] + 0x00007399u;
|
|
/* 0238C858 */ cpu->r[7] = rbrew_read8(cpu->mem, _t41);
|
|
/* 0238C85C */ _t42 = cpu->r[28] + 0x00000004u;
|
|
/* 0238C85C */ rbrew_write32(cpu->mem, _t42, cpu->r[22]);
|
|
/* 0238C860 */ _t43 = cpu->r[12] + 0x00000000u;
|
|
/* 0238C860 */ rbrew_write8(cpu->mem, _t43, (uint8_t)cpu->r[7]);
|
|
/* 0238C864 */ _t44 = cpu->r[27] + 0x00000004u;
|
|
/* 0238C864 */ rbrew_write32(cpu->mem, _t44, cpu->r[21]);
|
|
/* 0238C868 */ goto L_0238C898;
|
|
L_0238C86C: ; // 0x238c86c
|
|
/* 0238C86C */ cpu->r[10] = cpu->r[28] + 0x0000000Cu;
|
|
/* 0238C870 */ _t45 = cpu->r[3] + 0x00000004u;
|
|
/* 0238C870 */ rbrew_write32(cpu->mem, _t45, cpu->r[23]);
|
|
/* 0238C874 */ cpu->r[0] = 0x00000020u;
|
|
/* 0238C878 */ _t46 = cpu->r[3] + 0x00000000u;
|
|
/* 0238C878 */ rbrew_write32(cpu->mem, _t46, cpu->r[10]);
|
|
/* 0238C87C */ _t47 = cpu->r[3] + 0x00000008u;
|
|
/* 0238C87C */ rbrew_write32(cpu->mem, _t47, cpu->r[0]);
|
|
/* 0238C880 */ _t48 = cpu->r[20] + 0x00007399u;
|
|
/* 0238C880 */ cpu->r[7] = rbrew_read8(cpu->mem, _t48);
|
|
/* 0238C884 */ _t49 = cpu->r[28] + 0x00000004u;
|
|
/* 0238C884 */ rbrew_write32(cpu->mem, _t49, cpu->r[22]);
|
|
/* 0238C888 */ _t50 = cpu->r[28] + 0x00000000u;
|
|
/* 0238C888 */ cpu->r[12] = rbrew_read32(cpu->mem, _t50);
|
|
/* 0238C88C */ _t51 = cpu->r[28] + 0x0000002Bu;
|
|
/* 0238C88C */ rbrew_write8(cpu->mem, _t51, (uint8_t)cpu->r[7]);
|
|
/* 0238C890 */ _t52 = cpu->r[12] + 0x00000000u;
|
|
/* 0238C890 */ rbrew_write8(cpu->mem, _t52, (uint8_t)cpu->r[7]);
|
|
L_0238C894: ; // 0x238c894
|
|
/* 0238C894 */ _t53 = cpu->r[27] + 0x00000004u;
|
|
/* 0238C894 */ rbrew_write32(cpu->mem, _t53, cpu->r[21]);
|
|
L_0238C898: ; // 0x238c898
|
|
/* 0238C898 */ cpu->r[27] = cpu->r[24] + 0x0000002Cu;
|
|
/* 0238C898 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0238C89C */ _t54 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238C89C */ _t55 = _t54 & 0x00000001u;
|
|
/* 0238C89C */ if (_t55) goto L_0238C8A0; else goto L_0238C8B0;
|
|
L_0238C8A0: ; // 0x238c8a0
|
|
/* 0238C8A0 */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0238C8A4 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238C8A8 */ cpu->r[27] = cpu->r[3];
|
|
/* 0238C8A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0238C8AC */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238C8AC */ _t57 = _t56 & 0x00000001u;
|
|
/* 0238C8AC */ if (_t57) goto L_0238C924; else goto L_0238C8B0;
|
|
L_0238C8B0: ; // 0x238c8b0
|
|
/* 0238C8B0 */ cpu->r[28] = cpu->r[27];
|
|
/* 0238C8B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 0238C8B4 */ _t58 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238C8B4 */ _t59 = _t58 & 0x00000001u;
|
|
/* 0238C8B4 */ if (_t59) goto L_0238C8B8; else goto L_0238C8C8;
|
|
L_0238C8B8: ; // 0x238c8b8
|
|
/* 0238C8B8 */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0238C8BC */ Gambit_fn_02801A78(cpu);
|
|
/* 0238C8C0 */ cpu->r[28] = cpu->r[3];
|
|
/* 0238C8C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 0238C8C4 */ _t60 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238C8C4 */ _t61 = _t60 & 0x00000001u;
|
|
/* 0238C8C4 */ if (_t61) goto L_0238C920; else goto L_0238C8C8;
|
|
L_0238C8C8: ; // 0x238c8c8
|
|
/* 0238C8C8 */ cpu->r[3] = cpu->r[28];
|
|
/* 0238C8C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238C8CC */ _t62 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238C8CC */ _t63 = _t62 & 0x00000001u;
|
|
/* 0238C8CC */ if (_t63) goto L_0238C8D0; else goto L_0238C8F8;
|
|
L_0238C8D0: ; // 0x238c8d0
|
|
/* 0238C8D0 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0238C8D4 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238C8D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238C8DC */ _t64 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238C8DC */ _t65 = _t64 & 0x00000001u;
|
|
/* 0238C8DC */ if (_t65) goto L_0238C8E0; else goto L_0238C8F8;
|
|
L_0238C8E0: ; // 0x238c8e0
|
|
/* 0238C8E0 */ _t66 = cpu->r[28] + 0x00000000u;
|
|
/* 0238C8E0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t66);
|
|
/* 0238C8E4 */ _t67 = cpu->r[20] + 0x00007399u;
|
|
/* 0238C8E4 */ cpu->r[7] = rbrew_read8(cpu->mem, _t67);
|
|
/* 0238C8E8 */ _t68 = cpu->r[28] + 0x00000004u;
|
|
/* 0238C8E8 */ rbrew_write32(cpu->mem, _t68, cpu->r[22]);
|
|
/* 0238C8EC */ _t69 = cpu->r[10] + 0x00000000u;
|
|
/* 0238C8EC */ rbrew_write8(cpu->mem, _t69, (uint8_t)cpu->r[7]);
|
|
/* 0238C8F0 */ _t70 = cpu->r[27] + 0x00000004u;
|
|
/* 0238C8F0 */ rbrew_write32(cpu->mem, _t70, cpu->r[21]);
|
|
/* 0238C8F4 */ goto L_0238C924;
|
|
L_0238C8F8: ; // 0x238c8f8
|
|
/* 0238C8F8 */ cpu->r[8] = cpu->r[28] + 0x0000000Cu;
|
|
/* 0238C8FC */ _t71 = cpu->r[3] + 0x00000004u;
|
|
/* 0238C8FC */ rbrew_write32(cpu->mem, _t71, cpu->r[23]);
|
|
/* 0238C900 */ cpu->r[9] = 0x00000020u;
|
|
/* 0238C904 */ _t72 = cpu->r[3] + 0x00000000u;
|
|
/* 0238C904 */ rbrew_write32(cpu->mem, _t72, cpu->r[8]);
|
|
/* 0238C908 */ _t73 = cpu->r[3] + 0x00000008u;
|
|
/* 0238C908 */ rbrew_write32(cpu->mem, _t73, cpu->r[9]);
|
|
/* 0238C90C */ _t74 = cpu->r[20] + 0x00007399u;
|
|
/* 0238C90C */ cpu->r[7] = rbrew_read8(cpu->mem, _t74);
|
|
/* 0238C910 */ _t75 = cpu->r[28] + 0x00000004u;
|
|
/* 0238C910 */ rbrew_write32(cpu->mem, _t75, cpu->r[22]);
|
|
/* 0238C914 */ _t76 = cpu->r[28] + 0x00000000u;
|
|
/* 0238C914 */ cpu->r[10] = rbrew_read32(cpu->mem, _t76);
|
|
/* 0238C918 */ _t77 = cpu->r[28] + 0x0000002Bu;
|
|
/* 0238C918 */ rbrew_write8(cpu->mem, _t77, (uint8_t)cpu->r[7]);
|
|
/* 0238C91C */ _t78 = cpu->r[10] + 0x00000000u;
|
|
/* 0238C91C */ rbrew_write8(cpu->mem, _t78, (uint8_t)cpu->r[7]);
|
|
L_0238C920: ; // 0x238c920
|
|
/* 0238C920 */ _t79 = cpu->r[27] + 0x00000004u;
|
|
/* 0238C920 */ rbrew_write32(cpu->mem, _t79, cpu->r[21]);
|
|
L_0238C924: ; // 0x238c924
|
|
/* 0238C924 */ cpu->r[11] = cpu->r[24] + 0x00000080u;
|
|
/* 0238C924 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0238C928 */ _t80 = cpu->r[24] + 0x00000058u;
|
|
/* 0238C928 */ rbrew_write32(cpu->mem, _t80, cpu->r[26]);
|
|
/* 0238C92C */ _t81 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238C92C */ _t82 = _t81 & 0x00000001u;
|
|
/* 0238C92C */ if (_t82) goto L_0238C930; else goto L_0238C938;
|
|
L_0238C930: ; // 0x238c930
|
|
/* 0238C930 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0238C934 */ Gambit_fn_02801A78(cpu);
|
|
L_0238C938: ; // 0x238c938
|
|
/* 0238C938 */ cpu->r[12] = cpu->r[24] + 0x0000008Cu;
|
|
/* 0238C938 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0238C93C */ _t83 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238C93C */ _t84 = _t83 & 0x00000001u;
|
|
/* 0238C93C */ if (_t84) goto L_0238C940; else goto L_0238C948;
|
|
L_0238C940: ; // 0x238c940
|
|
/* 0238C940 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0238C944 */ Gambit_fn_02801A78(cpu);
|
|
L_0238C948: ; // 0x238c948
|
|
/* 0238C948 */ _t85 = cpu->r[1] + 0x00000008u;
|
|
/* 0238C948 */ cpu->r[0] = rbrew_read32(cpu->mem, _t85);
|
|
/* 0238C94C */ _t86 = cpu->r[24] + 0x0000009Cu;
|
|
/* 0238C94C */ rbrew_write8(cpu->mem, _t86, (uint8_t)cpu->r[25]);
|
|
/* 0238C950 */ cpu->r[6] = 0xFFFFFFFFu;
|
|
/* 0238C954 */ _t87 = cpu->r[24] + 0x00000098u;
|
|
/* 0238C954 */ rbrew_write32(cpu->mem, _t87, cpu->r[0]);
|
|
/* 0238C958 */ _t88 = cpu->r[24] + 0x000000A0u;
|
|
/* 0238C958 */ rbrew_write32(cpu->mem, _t88, cpu->r[6]);
|
|
L_0238C95C: ; // 0x238c95c
|
|
/* 0238C95C */ _t89 = cpu->r[31] + 0x000000A4u;
|
|
/* 0238C95C */ rbrew_write32(cpu->mem, _t89, cpu->r[25]);
|
|
/* 0238C960 */ cpu->r[4] = cpu->r[31] + 0x000000A4u;
|
|
/* 0238C964 */ cpu->r[3] = cpu->r[29] + 0x000004DCu;
|
|
/* 0238C968 */ _t90 = cpu->r[31] + 0x000000A8u;
|
|
/* 0238C968 */ rbrew_write32(cpu->mem, _t90, cpu->r[25]);
|
|
/* 0238C96C */ Gambit_fn_02801EBC(cpu);
|
|
/* 0238C970 */ _t91 = cpu->r[29] + 0x000004E4u;
|
|
/* 0238C970 */ cpu->r[8] = rbrew_read32(cpu->mem, _t91);
|
|
/* 0238C974 */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 0238C978 */ cpu->r[3] = cpu->r[29] + 0x000007C4u;
|
|
/* 0238C97C */ _t92 = cpu->r[29] + 0x000004E4u;
|
|
/* 0238C97C */ rbrew_write32(cpu->mem, _t92, cpu->r[8]);
|
|
/* 0238C980 */ Gambit_fn_02837030(cpu);
|
|
/* 0238C984 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0238C988 */ _t93 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238C988 */ _t94 = _t93 & 0x00000001u;
|
|
/* 0238C988 */ if (_t94) goto L_0238C98C; else goto L_0238C9BC;
|
|
L_0238C98C: ; // 0x238c98c
|
|
/* 0238C98C */ goto L_0238C9DC;
|
|
L_0238C990: ; // 0x238c990
|
|
/* 0238C990 */ cpu->r[4] = 0x000000A4u;
|
|
/* 0238C994 */ cpu->r[3] = cpu->r[29] + 0x000004DCu;
|
|
/* 0238C998 */ cpu->r[31] = 0x00000000u;
|
|
/* 0238C99C */ Gambit_fn_02801EBC(cpu);
|
|
/* 0238C9A0 */ _t95 = cpu->r[29] + 0x000004E4u;
|
|
/* 0238C9A0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t95);
|
|
/* 0238C9A4 */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 0238C9A8 */ cpu->r[3] = cpu->r[29] + 0x000007C4u;
|
|
/* 0238C9AC */ _t96 = cpu->r[29] + 0x000004E4u;
|
|
/* 0238C9AC */ rbrew_write32(cpu->mem, _t96, cpu->r[8]);
|
|
/* 0238C9B0 */ Gambit_fn_02837030(cpu);
|
|
/* 0238C9B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0238C9B8 */ _t97 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238C9B8 */ _t98 = _t97 & 0x00000001u;
|
|
/* 0238C9B8 */ if (_t98) goto L_0238C9DC; else goto L_0238C9BC;
|
|
L_0238C9BC: ; // 0x238c9bc
|
|
/* 0238C9BC */ cpu->r[3] = cpu->r[29];
|
|
/* 0238C9C0 */ cpu->r[4] = cpu->r[31];
|
|
/* 0238C9C4 */ Gambit_fn_0238C684(cpu);
|
|
/* 0238C9C8 */ _t99 = cpu->r[31] + 0x0000005Cu;
|
|
/* 0238C9C8 */ rbrew_write32(cpu->mem, _t99, cpu->r[30]);
|
|
/* 0238C9CC */ cpu->r[0] = 0x00000001u;
|
|
/* 0238C9D0 */ cpu->r[3] = cpu->r[29];
|
|
/* 0238C9D4 */ _t100 = cpu->r[31] + 0x0000009Cu;
|
|
/* 0238C9D4 */ rbrew_write8(cpu->mem, _t100, (uint8_t)cpu->r[0]);
|
|
/* 0238C9D8 */ Gambit_fn_0238C0E0(cpu);
|
|
L_0238C9DC: ; // 0x238c9dc
|
|
/* 0238C9DC */ /* nop */
|
|
/* 0238C9E0 */ _t101 = cpu->r[1] + 0x00000044u;
|
|
/* 0238C9E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t101);
|
|
/* 0238C9E4 */ cpu->lr = cpu->r[0];
|
|
/* 0238C9E8 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 0238C9EC */ return;
|
|
}
|
|
|
|
// fn_0238C9F0 @ 0x238c9f0
|
|
void Gambit_fn_0238C9F0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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;
|
|
|
|
L_0238C9F0: ; // 0x238c9f0
|
|
/* 0238C9F0 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 0238C9F0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0238C9F0 */ cpu->r[1] = _t0;
|
|
/* 0238C9F4 */ /* nop */
|
|
/* 0238C9F8 */ cpu->r[0] = cpu->lr;
|
|
/* 0238C9FC */ _t1 = cpu->r[1] + 0x00000044u;
|
|
/* 0238C9FC */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0238CA00 */ cpu->r[29] = cpu->r[4];
|
|
/* 0238CA04 */ cpu->r[28] = cpu->r[3];
|
|
/* 0238CA08 */ _t2 = cpu->r[28] + 0x00000505u;
|
|
/* 0238CA08 */ cpu->r[12] = rbrew_read8(cpu->mem, _t2);
|
|
/* 0238CA0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0238CA10 */ cpu->r[30] = cpu->r[5];
|
|
/* 0238CA14 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238CA14 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0238CA14 */ if (_t4) goto L_0238CC9C; else goto L_0238CA18;
|
|
L_0238CA18: ; // 0x238ca18
|
|
/* 0238CA18 */ _t5 = cpu->r[28] + 0x00000504u;
|
|
/* 0238CA18 */ cpu->r[0] = rbrew_read8(cpu->mem, _t5);
|
|
/* 0238CA1C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0238CA20 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238CA20 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0238CA20 */ if (_t7) goto L_0238CC9C; else goto L_0238CA24;
|
|
L_0238CA24: ; // 0x238ca24
|
|
/* 0238CA24 */ cpu->r[3] = cpu->r[28] + 0x000007C4u;
|
|
/* 0238CA28 */ Gambit_fn_02836FFC(cpu);
|
|
/* 0238CA2C */ cpu->r[3] = 0x101C0000u;
|
|
/* 0238CA30 */ _t8 = cpu->r[3] + 0x00006000u;
|
|
/* 0238CA30 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0238CA34 */ _t9 = cpu->r[3] + 0x00000004u;
|
|
/* 0238CA34 */ cpu->r[6] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0238CA38 */ _t10 = cpu->r[6] + 0x0000012Cu;
|
|
/* 0238CA38 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0238CA3C */ cpu->ctr = cpu->r[0];
|
|
/* 0238CA40 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0238CA44 */ _t11 = cpu->r[28] + 0x000004E4u;
|
|
/* 0238CA44 */ cpu->r[8] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0238CA48 */ cpu->r[25] = cpu->r[3];
|
|
/* 0238CA4C */ _t12 = cpu->r[28] + 0x000004F0u;
|
|
/* 0238CA4C */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0238CA50 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], cpu->r[9]);
|
|
/* 0238CA54 */ cpu->r[24] = 0x00000000u;
|
|
/* 0238CA58 */ _t13 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0238CA58 */ _t14 = _t13 & 0x00000001u;
|
|
/* 0238CA58 */ if (_t14) goto L_0238CA7C; else goto L_0238CA5C;
|
|
L_0238CA5C: ; // 0x238ca5c
|
|
/* 0238CA5C */ cpu->r[3] = cpu->r[28] + 0x000007C4u;
|
|
/* 0238CA60 */ cpu->r[31] = 0x00000000u;
|
|
/* 0238CA64 */ Gambit_fn_02837030(cpu);
|
|
/* 0238CA68 */ /* nop */
|
|
/* 0238CA6C */ _t15 = cpu->r[1] + 0x00000044u;
|
|
/* 0238CA6C */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0238CA70 */ cpu->lr = cpu->r[0];
|
|
/* 0238CA74 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 0238CA78 */ return;
|
|
L_0238CA7C: ; // 0x238ca7c
|
|
/* 0238CA7C */ _t16 = cpu->r[28] + 0x000004E8u;
|
|
/* 0238CA7C */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0238CA80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0238CA84 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238CA84 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0238CA84 */ if (_t18) goto L_0238CA90; else goto L_0238CA88;
|
|
L_0238CA88: ; // 0x238ca88
|
|
/* 0238CA88 */ _t19 = cpu->r[31] + 0x00000000u;
|
|
/* 0238CA88 */ cpu->r[10] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0238CA8C */ _t20 = cpu->r[28] + 0x000004E8u;
|
|
/* 0238CA8C */ rbrew_write32(cpu->mem, _t20, cpu->r[10]);
|
|
L_0238CA90: ; // 0x238ca90
|
|
/* 0238CA90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0238CA94 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238CA94 */ _t22 = _t21 & 0x00000001u;
|
|
/* 0238CA94 */ if (_t22) goto L_0238CC58; else goto L_0238CA98;
|
|
L_0238CA98: ; // 0x238ca98
|
|
/* 0238CA98 */ cpu->r[11] = 0x00000002u;
|
|
/* 0238CA9C */ cpu->r[23] = cpu->r[31];
|
|
/* 0238CA9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], 0x00000000u);
|
|
/* 0238CAA0 */ _t23 = cpu->r[1] + 0x00000008u;
|
|
/* 0238CAA0 */ rbrew_write32(cpu->mem, _t23, cpu->r[11]);
|
|
/* 0238CAA4 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238CAA4 */ _t25 = _t24 & 0x00000001u;
|
|
/* 0238CAA4 */ if (_t25) goto L_0238CAA8; else goto L_0238CAB8;
|
|
L_0238CAA8: ; // 0x238caa8
|
|
/* 0238CAA8 */ cpu->r[3] = 0x000000A4u;
|
|
/* 0238CAAC */ Gambit_fn_02801A78(cpu);
|
|
/* 0238CAB0 */ cpu->r[23] = cpu->r[3];
|
|
/* 0238CAB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], 0x00000000u);
|
|
/* 0238CAB4 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238CAB4 */ _t27 = _t26 & 0x00000001u;
|
|
/* 0238CAB4 */ if (_t27) goto L_0238CC24; else goto L_0238CAB8;
|
|
L_0238CAB8: ; // 0x238cab8
|
|
/* 0238CAB8 */ cpu->r[21] = 0x10080000u;
|
|
/* 0238CABC */ cpu->r[26] = cpu->r[23];
|
|
/* 0238CABC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 0238CAC0 */ cpu->r[22] = 0x10080000u;
|
|
/* 0238CAC4 */ cpu->r[21] = cpu->r[21] + 0x000062A8u;
|
|
/* 0238CAC8 */ cpu->r[20] = 0x10080000u;
|
|
/* 0238CACC */ cpu->r[22] = cpu->r[22] + 0x00006290u;
|
|
/* 0238CAD0 */ cpu->r[19] = 0x10110000u;
|
|
/* 0238CAD4 */ cpu->r[20] = cpu->r[20] + 0x000062C0u;
|
|
/* 0238CAD8 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238CAD8 */ _t29 = _t28 & 0x00000001u;
|
|
/* 0238CAD8 */ if (_t29) goto L_0238CADC; else goto L_0238CAEC;
|
|
L_0238CADC: ; // 0x238cadc
|
|
/* 0238CADC */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0238CAE0 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238CAE4 */ cpu->r[26] = cpu->r[3];
|
|
/* 0238CAE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 0238CAE8 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238CAE8 */ _t31 = _t30 & 0x00000001u;
|
|
/* 0238CAE8 */ if (_t31) goto L_0238CB60; else goto L_0238CAEC;
|
|
L_0238CAEC: ; // 0x238caec
|
|
/* 0238CAEC */ cpu->r[27] = cpu->r[26];
|
|
/* 0238CAEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0238CAF0 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238CAF0 */ _t33 = _t32 & 0x00000001u;
|
|
/* 0238CAF0 */ if (_t33) goto L_0238CAF4; else goto L_0238CB04;
|
|
L_0238CAF4: ; // 0x238caf4
|
|
/* 0238CAF4 */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0238CAF8 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238CAFC */ cpu->r[27] = cpu->r[3];
|
|
/* 0238CAFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0238CB00 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238CB00 */ _t35 = _t34 & 0x00000001u;
|
|
/* 0238CB00 */ if (_t35) goto L_0238CB5C; else goto L_0238CB04;
|
|
L_0238CB04: ; // 0x238cb04
|
|
/* 0238CB04 */ cpu->r[3] = cpu->r[27];
|
|
/* 0238CB04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238CB08 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238CB08 */ _t37 = _t36 & 0x00000001u;
|
|
/* 0238CB08 */ if (_t37) goto L_0238CB0C; else goto L_0238CB34;
|
|
L_0238CB0C: ; // 0x238cb0c
|
|
/* 0238CB0C */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0238CB10 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238CB14 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238CB18 */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238CB18 */ _t39 = _t38 & 0x00000001u;
|
|
/* 0238CB18 */ if (_t39) goto L_0238CB1C; else goto L_0238CB34;
|
|
L_0238CB1C: ; // 0x238cb1c
|
|
/* 0238CB1C */ _t40 = cpu->r[27] + 0x00000000u;
|
|
/* 0238CB1C */ cpu->r[9] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0238CB20 */ _t41 = cpu->r[19] + 0x00007399u;
|
|
/* 0238CB20 */ cpu->r[8] = rbrew_read8(cpu->mem, _t41);
|
|
/* 0238CB24 */ _t42 = cpu->r[27] + 0x00000004u;
|
|
/* 0238CB24 */ rbrew_write32(cpu->mem, _t42, cpu->r[21]);
|
|
/* 0238CB28 */ _t43 = cpu->r[9] + 0x00000000u;
|
|
/* 0238CB28 */ rbrew_write8(cpu->mem, _t43, (uint8_t)cpu->r[8]);
|
|
/* 0238CB2C */ _t44 = cpu->r[26] + 0x00000004u;
|
|
/* 0238CB2C */ rbrew_write32(cpu->mem, _t44, cpu->r[20]);
|
|
/* 0238CB30 */ goto L_0238CB60;
|
|
L_0238CB34: ; // 0x238cb34
|
|
/* 0238CB34 */ cpu->r[12] = cpu->r[27] + 0x0000000Cu;
|
|
/* 0238CB38 */ _t45 = cpu->r[3] + 0x00000004u;
|
|
/* 0238CB38 */ rbrew_write32(cpu->mem, _t45, cpu->r[22]);
|
|
/* 0238CB3C */ cpu->r[0] = 0x00000020u;
|
|
/* 0238CB40 */ _t46 = cpu->r[3] + 0x00000000u;
|
|
/* 0238CB40 */ rbrew_write32(cpu->mem, _t46, cpu->r[12]);
|
|
/* 0238CB44 */ _t47 = cpu->r[3] + 0x00000008u;
|
|
/* 0238CB44 */ rbrew_write32(cpu->mem, _t47, cpu->r[0]);
|
|
/* 0238CB48 */ _t48 = cpu->r[19] + 0x00007399u;
|
|
/* 0238CB48 */ cpu->r[8] = rbrew_read8(cpu->mem, _t48);
|
|
/* 0238CB4C */ _t49 = cpu->r[27] + 0x00000004u;
|
|
/* 0238CB4C */ rbrew_write32(cpu->mem, _t49, cpu->r[21]);
|
|
/* 0238CB50 */ _t50 = cpu->r[27] + 0x00000000u;
|
|
/* 0238CB50 */ cpu->r[9] = rbrew_read32(cpu->mem, _t50);
|
|
/* 0238CB54 */ _t51 = cpu->r[27] + 0x0000002Bu;
|
|
/* 0238CB54 */ rbrew_write8(cpu->mem, _t51, (uint8_t)cpu->r[8]);
|
|
/* 0238CB58 */ _t52 = cpu->r[9] + 0x00000000u;
|
|
/* 0238CB58 */ rbrew_write8(cpu->mem, _t52, (uint8_t)cpu->r[8]);
|
|
L_0238CB5C: ; // 0x238cb5c
|
|
/* 0238CB5C */ _t53 = cpu->r[26] + 0x00000004u;
|
|
/* 0238CB5C */ rbrew_write32(cpu->mem, _t53, cpu->r[20]);
|
|
L_0238CB60: ; // 0x238cb60
|
|
/* 0238CB60 */ cpu->r[26] = cpu->r[23] + 0x0000002Cu;
|
|
/* 0238CB60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 0238CB64 */ _t54 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238CB64 */ _t55 = _t54 & 0x00000001u;
|
|
/* 0238CB64 */ if (_t55) goto L_0238CB68; else goto L_0238CB78;
|
|
L_0238CB68: ; // 0x238cb68
|
|
/* 0238CB68 */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0238CB6C */ Gambit_fn_02801A78(cpu);
|
|
/* 0238CB70 */ cpu->r[26] = cpu->r[3];
|
|
/* 0238CB70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 0238CB74 */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238CB74 */ _t57 = _t56 & 0x00000001u;
|
|
/* 0238CB74 */ if (_t57) goto L_0238CBEC; else goto L_0238CB78;
|
|
L_0238CB78: ; // 0x238cb78
|
|
/* 0238CB78 */ cpu->r[27] = cpu->r[26];
|
|
/* 0238CB78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0238CB7C */ _t58 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238CB7C */ _t59 = _t58 & 0x00000001u;
|
|
/* 0238CB7C */ if (_t59) goto L_0238CB80; else goto L_0238CB90;
|
|
L_0238CB80: ; // 0x238cb80
|
|
/* 0238CB80 */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0238CB84 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238CB88 */ cpu->r[27] = cpu->r[3];
|
|
/* 0238CB88 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0238CB8C */ _t60 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238CB8C */ _t61 = _t60 & 0x00000001u;
|
|
/* 0238CB8C */ if (_t61) goto L_0238CBE8; else goto L_0238CB90;
|
|
L_0238CB90: ; // 0x238cb90
|
|
/* 0238CB90 */ cpu->r[3] = cpu->r[27];
|
|
/* 0238CB90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238CB94 */ _t62 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238CB94 */ _t63 = _t62 & 0x00000001u;
|
|
/* 0238CB94 */ if (_t63) goto L_0238CB98; else goto L_0238CBC0;
|
|
L_0238CB98: ; // 0x238cb98
|
|
/* 0238CB98 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0238CB9C */ Gambit_fn_02801A78(cpu);
|
|
/* 0238CBA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238CBA4 */ _t64 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238CBA4 */ _t65 = _t64 & 0x00000001u;
|
|
/* 0238CBA4 */ if (_t65) goto L_0238CBA8; else goto L_0238CBC0;
|
|
L_0238CBA8: ; // 0x238cba8
|
|
/* 0238CBA8 */ _t66 = cpu->r[27] + 0x00000000u;
|
|
/* 0238CBA8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t66);
|
|
/* 0238CBAC */ _t67 = cpu->r[19] + 0x00007399u;
|
|
/* 0238CBAC */ cpu->r[8] = rbrew_read8(cpu->mem, _t67);
|
|
/* 0238CBB0 */ _t68 = cpu->r[27] + 0x00000004u;
|
|
/* 0238CBB0 */ rbrew_write32(cpu->mem, _t68, cpu->r[21]);
|
|
/* 0238CBB4 */ _t69 = cpu->r[12] + 0x00000000u;
|
|
/* 0238CBB4 */ rbrew_write8(cpu->mem, _t69, (uint8_t)cpu->r[8]);
|
|
/* 0238CBB8 */ _t70 = cpu->r[26] + 0x00000004u;
|
|
/* 0238CBB8 */ rbrew_write32(cpu->mem, _t70, cpu->r[20]);
|
|
/* 0238CBBC */ goto L_0238CBEC;
|
|
L_0238CBC0: ; // 0x238cbc0
|
|
/* 0238CBC0 */ cpu->r[10] = cpu->r[27] + 0x0000000Cu;
|
|
/* 0238CBC4 */ _t71 = cpu->r[3] + 0x00000004u;
|
|
/* 0238CBC4 */ rbrew_write32(cpu->mem, _t71, cpu->r[22]);
|
|
/* 0238CBC8 */ cpu->r[11] = 0x00000020u;
|
|
/* 0238CBCC */ _t72 = cpu->r[3] + 0x00000000u;
|
|
/* 0238CBCC */ rbrew_write32(cpu->mem, _t72, cpu->r[10]);
|
|
/* 0238CBD0 */ _t73 = cpu->r[3] + 0x00000008u;
|
|
/* 0238CBD0 */ rbrew_write32(cpu->mem, _t73, cpu->r[11]);
|
|
/* 0238CBD4 */ _t74 = cpu->r[19] + 0x00007399u;
|
|
/* 0238CBD4 */ cpu->r[8] = rbrew_read8(cpu->mem, _t74);
|
|
/* 0238CBD8 */ _t75 = cpu->r[27] + 0x00000004u;
|
|
/* 0238CBD8 */ rbrew_write32(cpu->mem, _t75, cpu->r[21]);
|
|
/* 0238CBDC */ _t76 = cpu->r[27] + 0x00000000u;
|
|
/* 0238CBDC */ cpu->r[12] = rbrew_read32(cpu->mem, _t76);
|
|
/* 0238CBE0 */ _t77 = cpu->r[27] + 0x0000002Bu;
|
|
/* 0238CBE0 */ rbrew_write8(cpu->mem, _t77, (uint8_t)cpu->r[8]);
|
|
/* 0238CBE4 */ _t78 = cpu->r[12] + 0x00000000u;
|
|
/* 0238CBE4 */ rbrew_write8(cpu->mem, _t78, (uint8_t)cpu->r[8]);
|
|
L_0238CBE8: ; // 0x238cbe8
|
|
/* 0238CBE8 */ _t79 = cpu->r[26] + 0x00000004u;
|
|
/* 0238CBE8 */ rbrew_write32(cpu->mem, _t79, cpu->r[20]);
|
|
L_0238CBEC: ; // 0x238cbec
|
|
/* 0238CBEC */ cpu->r[0] = cpu->r[23] + 0x00000080u;
|
|
/* 0238CBEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0238CBF0 */ _t80 = cpu->r[23] + 0x00000058u;
|
|
/* 0238CBF0 */ rbrew_write32(cpu->mem, _t80, cpu->r[25]);
|
|
/* 0238CBF4 */ _t81 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238CBF4 */ _t82 = _t81 & 0x00000001u;
|
|
/* 0238CBF4 */ if (_t82) goto L_0238CBF8; else goto L_0238CC00;
|
|
L_0238CBF8: ; // 0x238cbf8
|
|
/* 0238CBF8 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0238CBFC */ Gambit_fn_02801A78(cpu);
|
|
L_0238CC00: ; // 0x238cc00
|
|
/* 0238CC00 */ cpu->r[6] = cpu->r[23] + 0x0000008Cu;
|
|
/* 0238CC00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 0238CC04 */ _t83 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238CC04 */ _t84 = _t83 & 0x00000001u;
|
|
/* 0238CC04 */ if (_t84) goto L_0238CC08; else goto L_0238CC10;
|
|
L_0238CC08: ; // 0x238cc08
|
|
/* 0238CC08 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0238CC0C */ Gambit_fn_02801A78(cpu);
|
|
L_0238CC10: ; // 0x238cc10
|
|
/* 0238CC10 */ _t85 = cpu->r[1] + 0x00000008u;
|
|
/* 0238CC10 */ cpu->r[7] = rbrew_read32(cpu->mem, _t85);
|
|
/* 0238CC14 */ _t86 = cpu->r[23] + 0x0000009Cu;
|
|
/* 0238CC14 */ rbrew_write8(cpu->mem, _t86, (uint8_t)cpu->r[24]);
|
|
/* 0238CC18 */ cpu->r[9] = 0xFFFFFFFFu;
|
|
/* 0238CC1C */ _t87 = cpu->r[23] + 0x00000098u;
|
|
/* 0238CC1C */ rbrew_write32(cpu->mem, _t87, cpu->r[7]);
|
|
/* 0238CC20 */ _t88 = cpu->r[23] + 0x000000A0u;
|
|
/* 0238CC20 */ rbrew_write32(cpu->mem, _t88, cpu->r[9]);
|
|
L_0238CC24: ; // 0x238cc24
|
|
/* 0238CC24 */ _t89 = cpu->r[31] + 0x000000A4u;
|
|
/* 0238CC24 */ rbrew_write32(cpu->mem, _t89, cpu->r[24]);
|
|
/* 0238CC28 */ cpu->r[4] = cpu->r[31] + 0x000000A4u;
|
|
/* 0238CC2C */ cpu->r[3] = cpu->r[28] + 0x000004DCu;
|
|
/* 0238CC30 */ _t90 = cpu->r[31] + 0x000000A8u;
|
|
/* 0238CC30 */ rbrew_write32(cpu->mem, _t90, cpu->r[24]);
|
|
/* 0238CC34 */ Gambit_fn_02801EBC(cpu);
|
|
/* 0238CC38 */ _t91 = cpu->r[28] + 0x000004E4u;
|
|
/* 0238CC38 */ cpu->r[10] = rbrew_read32(cpu->mem, _t91);
|
|
/* 0238CC3C */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 0238CC40 */ cpu->r[3] = cpu->r[28] + 0x000007C4u;
|
|
/* 0238CC44 */ _t92 = cpu->r[28] + 0x000004E4u;
|
|
/* 0238CC44 */ rbrew_write32(cpu->mem, _t92, cpu->r[10]);
|
|
/* 0238CC48 */ Gambit_fn_02837030(cpu);
|
|
/* 0238CC4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0238CC50 */ _t93 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238CC50 */ _t94 = _t93 & 0x00000001u;
|
|
/* 0238CC50 */ if (_t94) goto L_0238CC54; else goto L_0238CC84;
|
|
L_0238CC54: ; // 0x238cc54
|
|
/* 0238CC54 */ goto L_0238CC9C;
|
|
L_0238CC58: ; // 0x238cc58
|
|
/* 0238CC58 */ cpu->r[4] = 0x000000A4u;
|
|
/* 0238CC5C */ cpu->r[3] = cpu->r[28] + 0x000004DCu;
|
|
/* 0238CC60 */ cpu->r[31] = 0x00000000u;
|
|
/* 0238CC64 */ Gambit_fn_02801EBC(cpu);
|
|
/* 0238CC68 */ _t95 = cpu->r[28] + 0x000004E4u;
|
|
/* 0238CC68 */ cpu->r[10] = rbrew_read32(cpu->mem, _t95);
|
|
/* 0238CC6C */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 0238CC70 */ cpu->r[3] = cpu->r[28] + 0x000007C4u;
|
|
/* 0238CC74 */ _t96 = cpu->r[28] + 0x000004E4u;
|
|
/* 0238CC74 */ rbrew_write32(cpu->mem, _t96, cpu->r[10]);
|
|
/* 0238CC78 */ Gambit_fn_02837030(cpu);
|
|
/* 0238CC7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0238CC80 */ _t97 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238CC80 */ _t98 = _t97 & 0x00000001u;
|
|
/* 0238CC80 */ if (_t98) goto L_0238CC9C; else goto L_0238CC84;
|
|
L_0238CC84: ; // 0x238cc84
|
|
/* 0238CC84 */ _t99 = cpu->r[31] + 0x00000060u;
|
|
/* 0238CC84 */ rbrew_write32(cpu->mem, _t99, cpu->r[29]);
|
|
/* 0238CC88 */ cpu->r[0] = 0x00000001u;
|
|
/* 0238CC8C */ _t100 = cpu->r[31] + 0x00000064u;
|
|
/* 0238CC8C */ rbrew_write32(cpu->mem, _t100, cpu->r[30]);
|
|
/* 0238CC90 */ cpu->r[3] = cpu->r[28];
|
|
/* 0238CC94 */ _t101 = cpu->r[31] + 0x0000009Cu;
|
|
/* 0238CC94 */ rbrew_write8(cpu->mem, _t101, (uint8_t)cpu->r[0]);
|
|
/* 0238CC98 */ Gambit_fn_0238C0E0(cpu);
|
|
L_0238CC9C: ; // 0x238cc9c
|
|
/* 0238CC9C */ /* nop */
|
|
/* 0238CCA0 */ _t102 = cpu->r[1] + 0x00000044u;
|
|
/* 0238CCA0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t102);
|
|
/* 0238CCA4 */ cpu->lr = cpu->r[0];
|
|
/* 0238CCA8 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 0238CCAC */ return;
|
|
}
|
|
|
|
// fn_0238CCB0 @ 0x238ccb0
|
|
void Gambit_fn_0238CCB0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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;
|
|
|
|
L_0238CCB0: ; // 0x238ccb0
|
|
/* 0238CCB0 */ _t0 = cpu->r[1] + 0xFFFFFFB8u;
|
|
/* 0238CCB0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0238CCB0 */ cpu->r[1] = _t0;
|
|
/* 0238CCB4 */ /* nop */
|
|
/* 0238CCB8 */ cpu->r[0] = cpu->lr;
|
|
/* 0238CCBC */ _t1 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0238CCBC */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0238CCC0 */ cpu->r[29] = cpu->r[5];
|
|
/* 0238CCC4 */ cpu->r[27] = cpu->r[3];
|
|
/* 0238CCC8 */ _t2 = cpu->r[27] + 0x00000505u;
|
|
/* 0238CCC8 */ cpu->r[5] = rbrew_read8(cpu->mem, _t2);
|
|
/* 0238CCCC */ cpu->r[28] = cpu->r[4];
|
|
/* 0238CCD0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 0238CCD4 */ cpu->r[30] = cpu->r[6];
|
|
/* 0238CCD8 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238CCD8 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0238CCD8 */ if (_t4) goto L_0238CF64; else goto L_0238CCDC;
|
|
L_0238CCDC: ; // 0x238ccdc
|
|
/* 0238CCDC */ _t5 = cpu->r[27] + 0x00000504u;
|
|
/* 0238CCDC */ cpu->r[0] = rbrew_read8(cpu->mem, _t5);
|
|
/* 0238CCE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0238CCE4 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238CCE4 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0238CCE4 */ if (_t7) goto L_0238CF64; else goto L_0238CCE8;
|
|
L_0238CCE8: ; // 0x238cce8
|
|
/* 0238CCE8 */ cpu->r[3] = cpu->r[27] + 0x000007C4u;
|
|
/* 0238CCEC */ Gambit_fn_02836FFC(cpu);
|
|
/* 0238CCF0 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0238CCF4 */ _t8 = cpu->r[3] + 0x00006000u;
|
|
/* 0238CCF4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0238CCF8 */ _t9 = cpu->r[3] + 0x00000004u;
|
|
/* 0238CCF8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0238CCFC */ _t10 = cpu->r[7] + 0x0000012Cu;
|
|
/* 0238CCFC */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0238CD00 */ cpu->ctr = cpu->r[0];
|
|
/* 0238CD04 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0238CD08 */ _t11 = cpu->r[27] + 0x000004E4u;
|
|
/* 0238CD08 */ cpu->r[9] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0238CD0C */ cpu->r[24] = cpu->r[3];
|
|
/* 0238CD10 */ _t12 = cpu->r[27] + 0x000004F0u;
|
|
/* 0238CD10 */ cpu->r[10] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0238CD14 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], cpu->r[10]);
|
|
/* 0238CD18 */ cpu->r[23] = 0x00000000u;
|
|
/* 0238CD1C */ _t13 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0238CD1C */ _t14 = _t13 & 0x00000001u;
|
|
/* 0238CD1C */ if (_t14) goto L_0238CD40; else goto L_0238CD20;
|
|
L_0238CD20: ; // 0x238cd20
|
|
/* 0238CD20 */ cpu->r[3] = cpu->r[27] + 0x000007C4u;
|
|
/* 0238CD24 */ cpu->r[31] = 0x00000000u;
|
|
/* 0238CD28 */ Gambit_fn_02837030(cpu);
|
|
/* 0238CD2C */ /* nop */
|
|
/* 0238CD30 */ _t15 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0238CD30 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0238CD34 */ cpu->lr = cpu->r[0];
|
|
/* 0238CD38 */ cpu->r[1] = cpu->r[1] + 0x00000048u;
|
|
/* 0238CD3C */ return;
|
|
L_0238CD40: ; // 0x238cd40
|
|
/* 0238CD40 */ _t16 = cpu->r[27] + 0x000004E8u;
|
|
/* 0238CD40 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0238CD44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0238CD48 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238CD48 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0238CD48 */ if (_t18) goto L_0238CD54; else goto L_0238CD4C;
|
|
L_0238CD4C: ; // 0x238cd4c
|
|
/* 0238CD4C */ _t19 = cpu->r[31] + 0x00000000u;
|
|
/* 0238CD4C */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0238CD50 */ _t20 = cpu->r[27] + 0x000004E8u;
|
|
/* 0238CD50 */ rbrew_write32(cpu->mem, _t20, cpu->r[11]);
|
|
L_0238CD54: ; // 0x238cd54
|
|
/* 0238CD54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0238CD58 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238CD58 */ _t22 = _t21 & 0x00000001u;
|
|
/* 0238CD58 */ if (_t22) goto L_0238CF1C; else goto L_0238CD5C;
|
|
L_0238CD5C: ; // 0x238cd5c
|
|
/* 0238CD5C */ cpu->r[12] = 0x00000003u;
|
|
/* 0238CD60 */ cpu->r[22] = cpu->r[31];
|
|
/* 0238CD60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[22], 0x00000000u);
|
|
/* 0238CD64 */ _t23 = cpu->r[1] + 0x00000008u;
|
|
/* 0238CD64 */ rbrew_write32(cpu->mem, _t23, cpu->r[12]);
|
|
/* 0238CD68 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238CD68 */ _t25 = _t24 & 0x00000001u;
|
|
/* 0238CD68 */ if (_t25) goto L_0238CD6C; else goto L_0238CD7C;
|
|
L_0238CD6C: ; // 0x238cd6c
|
|
/* 0238CD6C */ cpu->r[3] = 0x000000A4u;
|
|
/* 0238CD70 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238CD74 */ cpu->r[22] = cpu->r[3];
|
|
/* 0238CD74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[22], 0x00000000u);
|
|
/* 0238CD78 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238CD78 */ _t27 = _t26 & 0x00000001u;
|
|
/* 0238CD78 */ if (_t27) goto L_0238CEE8; else goto L_0238CD7C;
|
|
L_0238CD7C: ; // 0x238cd7c
|
|
/* 0238CD7C */ cpu->r[20] = 0x10080000u;
|
|
/* 0238CD80 */ cpu->r[25] = cpu->r[22];
|
|
/* 0238CD80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 0238CD84 */ cpu->r[21] = 0x10080000u;
|
|
/* 0238CD88 */ cpu->r[20] = cpu->r[20] + 0x000062A8u;
|
|
/* 0238CD8C */ cpu->r[19] = 0x10080000u;
|
|
/* 0238CD90 */ cpu->r[21] = cpu->r[21] + 0x00006290u;
|
|
/* 0238CD94 */ cpu->r[18] = 0x10110000u;
|
|
/* 0238CD98 */ cpu->r[19] = cpu->r[19] + 0x000062C0u;
|
|
/* 0238CD9C */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238CD9C */ _t29 = _t28 & 0x00000001u;
|
|
/* 0238CD9C */ if (_t29) goto L_0238CDA0; else goto L_0238CDB0;
|
|
L_0238CDA0: ; // 0x238cda0
|
|
/* 0238CDA0 */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0238CDA4 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238CDA8 */ cpu->r[25] = cpu->r[3];
|
|
/* 0238CDA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 0238CDAC */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238CDAC */ _t31 = _t30 & 0x00000001u;
|
|
/* 0238CDAC */ if (_t31) goto L_0238CE24; else goto L_0238CDB0;
|
|
L_0238CDB0: ; // 0x238cdb0
|
|
/* 0238CDB0 */ cpu->r[26] = cpu->r[25];
|
|
/* 0238CDB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 0238CDB4 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238CDB4 */ _t33 = _t32 & 0x00000001u;
|
|
/* 0238CDB4 */ if (_t33) goto L_0238CDB8; else goto L_0238CDC8;
|
|
L_0238CDB8: ; // 0x238cdb8
|
|
/* 0238CDB8 */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0238CDBC */ Gambit_fn_02801A78(cpu);
|
|
/* 0238CDC0 */ cpu->r[26] = cpu->r[3];
|
|
/* 0238CDC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 0238CDC4 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238CDC4 */ _t35 = _t34 & 0x00000001u;
|
|
/* 0238CDC4 */ if (_t35) goto L_0238CE20; else goto L_0238CDC8;
|
|
L_0238CDC8: ; // 0x238cdc8
|
|
/* 0238CDC8 */ cpu->r[3] = cpu->r[26];
|
|
/* 0238CDC8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238CDCC */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238CDCC */ _t37 = _t36 & 0x00000001u;
|
|
/* 0238CDCC */ if (_t37) goto L_0238CDD0; else goto L_0238CDF8;
|
|
L_0238CDD0: ; // 0x238cdd0
|
|
/* 0238CDD0 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0238CDD4 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238CDD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238CDDC */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238CDDC */ _t39 = _t38 & 0x00000001u;
|
|
/* 0238CDDC */ if (_t39) goto L_0238CDE0; else goto L_0238CDF8;
|
|
L_0238CDE0: ; // 0x238cde0
|
|
/* 0238CDE0 */ _t40 = cpu->r[26] + 0x00000000u;
|
|
/* 0238CDE0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0238CDE4 */ _t41 = cpu->r[18] + 0x00007399u;
|
|
/* 0238CDE4 */ cpu->r[9] = rbrew_read8(cpu->mem, _t41);
|
|
/* 0238CDE8 */ _t42 = cpu->r[26] + 0x00000004u;
|
|
/* 0238CDE8 */ rbrew_write32(cpu->mem, _t42, cpu->r[20]);
|
|
/* 0238CDEC */ _t43 = cpu->r[12] + 0x00000000u;
|
|
/* 0238CDEC */ rbrew_write8(cpu->mem, _t43, (uint8_t)cpu->r[9]);
|
|
/* 0238CDF0 */ _t44 = cpu->r[25] + 0x00000004u;
|
|
/* 0238CDF0 */ rbrew_write32(cpu->mem, _t44, cpu->r[19]);
|
|
/* 0238CDF4 */ goto L_0238CE24;
|
|
L_0238CDF8: ; // 0x238cdf8
|
|
/* 0238CDF8 */ cpu->r[0] = cpu->r[26] + 0x0000000Cu;
|
|
/* 0238CDFC */ _t45 = cpu->r[3] + 0x00000004u;
|
|
/* 0238CDFC */ rbrew_write32(cpu->mem, _t45, cpu->r[21]);
|
|
/* 0238CE00 */ cpu->r[11] = 0x00000020u;
|
|
/* 0238CE04 */ _t46 = cpu->r[3] + 0x00000000u;
|
|
/* 0238CE04 */ rbrew_write32(cpu->mem, _t46, cpu->r[0]);
|
|
/* 0238CE08 */ _t47 = cpu->r[3] + 0x00000008u;
|
|
/* 0238CE08 */ rbrew_write32(cpu->mem, _t47, cpu->r[11]);
|
|
/* 0238CE0C */ _t48 = cpu->r[18] + 0x00007399u;
|
|
/* 0238CE0C */ cpu->r[9] = rbrew_read8(cpu->mem, _t48);
|
|
/* 0238CE10 */ _t49 = cpu->r[26] + 0x00000004u;
|
|
/* 0238CE10 */ rbrew_write32(cpu->mem, _t49, cpu->r[20]);
|
|
/* 0238CE14 */ _t50 = cpu->r[26] + 0x00000000u;
|
|
/* 0238CE14 */ cpu->r[12] = rbrew_read32(cpu->mem, _t50);
|
|
/* 0238CE18 */ _t51 = cpu->r[26] + 0x0000002Bu;
|
|
/* 0238CE18 */ rbrew_write8(cpu->mem, _t51, (uint8_t)cpu->r[9]);
|
|
/* 0238CE1C */ _t52 = cpu->r[12] + 0x00000000u;
|
|
/* 0238CE1C */ rbrew_write8(cpu->mem, _t52, (uint8_t)cpu->r[9]);
|
|
L_0238CE20: ; // 0x238ce20
|
|
/* 0238CE20 */ _t53 = cpu->r[25] + 0x00000004u;
|
|
/* 0238CE20 */ rbrew_write32(cpu->mem, _t53, cpu->r[19]);
|
|
L_0238CE24: ; // 0x238ce24
|
|
/* 0238CE24 */ cpu->r[25] = cpu->r[22] + 0x0000002Cu;
|
|
/* 0238CE24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 0238CE28 */ _t54 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238CE28 */ _t55 = _t54 & 0x00000001u;
|
|
/* 0238CE28 */ if (_t55) goto L_0238CE2C; else goto L_0238CE3C;
|
|
L_0238CE2C: ; // 0x238ce2c
|
|
/* 0238CE2C */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0238CE30 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238CE34 */ cpu->r[25] = cpu->r[3];
|
|
/* 0238CE34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 0238CE38 */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238CE38 */ _t57 = _t56 & 0x00000001u;
|
|
/* 0238CE38 */ if (_t57) goto L_0238CEB0; else goto L_0238CE3C;
|
|
L_0238CE3C: ; // 0x238ce3c
|
|
/* 0238CE3C */ cpu->r[26] = cpu->r[25];
|
|
/* 0238CE3C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 0238CE40 */ _t58 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238CE40 */ _t59 = _t58 & 0x00000001u;
|
|
/* 0238CE40 */ if (_t59) goto L_0238CE44; else goto L_0238CE54;
|
|
L_0238CE44: ; // 0x238ce44
|
|
/* 0238CE44 */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0238CE48 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238CE4C */ cpu->r[26] = cpu->r[3];
|
|
/* 0238CE4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 0238CE50 */ _t60 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238CE50 */ _t61 = _t60 & 0x00000001u;
|
|
/* 0238CE50 */ if (_t61) goto L_0238CEAC; else goto L_0238CE54;
|
|
L_0238CE54: ; // 0x238ce54
|
|
/* 0238CE54 */ cpu->r[3] = cpu->r[26];
|
|
/* 0238CE54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238CE58 */ _t62 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238CE58 */ _t63 = _t62 & 0x00000001u;
|
|
/* 0238CE58 */ if (_t63) goto L_0238CE5C; else goto L_0238CE84;
|
|
L_0238CE5C: ; // 0x238ce5c
|
|
/* 0238CE5C */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0238CE60 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238CE64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238CE68 */ _t64 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238CE68 */ _t65 = _t64 & 0x00000001u;
|
|
/* 0238CE68 */ if (_t65) goto L_0238CE6C; else goto L_0238CE84;
|
|
L_0238CE6C: ; // 0x238ce6c
|
|
/* 0238CE6C */ _t66 = cpu->r[26] + 0x00000000u;
|
|
/* 0238CE6C */ cpu->r[6] = rbrew_read32(cpu->mem, _t66);
|
|
/* 0238CE70 */ _t67 = cpu->r[18] + 0x00007399u;
|
|
/* 0238CE70 */ cpu->r[9] = rbrew_read8(cpu->mem, _t67);
|
|
/* 0238CE74 */ _t68 = cpu->r[26] + 0x00000004u;
|
|
/* 0238CE74 */ rbrew_write32(cpu->mem, _t68, cpu->r[20]);
|
|
/* 0238CE78 */ _t69 = cpu->r[6] + 0x00000000u;
|
|
/* 0238CE78 */ rbrew_write8(cpu->mem, _t69, (uint8_t)cpu->r[9]);
|
|
/* 0238CE7C */ _t70 = cpu->r[25] + 0x00000004u;
|
|
/* 0238CE7C */ rbrew_write32(cpu->mem, _t70, cpu->r[19]);
|
|
/* 0238CE80 */ goto L_0238CEB0;
|
|
L_0238CE84: ; // 0x238ce84
|
|
/* 0238CE84 */ cpu->r[0] = cpu->r[26] + 0x0000000Cu;
|
|
/* 0238CE88 */ _t71 = cpu->r[3] + 0x00000004u;
|
|
/* 0238CE88 */ rbrew_write32(cpu->mem, _t71, cpu->r[21]);
|
|
/* 0238CE8C */ cpu->r[5] = 0x00000020u;
|
|
/* 0238CE90 */ _t72 = cpu->r[3] + 0x00000000u;
|
|
/* 0238CE90 */ rbrew_write32(cpu->mem, _t72, cpu->r[0]);
|
|
/* 0238CE94 */ _t73 = cpu->r[3] + 0x00000008u;
|
|
/* 0238CE94 */ rbrew_write32(cpu->mem, _t73, cpu->r[5]);
|
|
/* 0238CE98 */ _t74 = cpu->r[18] + 0x00007399u;
|
|
/* 0238CE98 */ cpu->r[9] = rbrew_read8(cpu->mem, _t74);
|
|
/* 0238CE9C */ _t75 = cpu->r[26] + 0x00000004u;
|
|
/* 0238CE9C */ rbrew_write32(cpu->mem, _t75, cpu->r[20]);
|
|
/* 0238CEA0 */ _t76 = cpu->r[26] + 0x00000000u;
|
|
/* 0238CEA0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t76);
|
|
/* 0238CEA4 */ _t77 = cpu->r[26] + 0x0000002Bu;
|
|
/* 0238CEA4 */ rbrew_write8(cpu->mem, _t77, (uint8_t)cpu->r[9]);
|
|
/* 0238CEA8 */ _t78 = cpu->r[6] + 0x00000000u;
|
|
/* 0238CEA8 */ rbrew_write8(cpu->mem, _t78, (uint8_t)cpu->r[9]);
|
|
L_0238CEAC: ; // 0x238ceac
|
|
/* 0238CEAC */ _t79 = cpu->r[25] + 0x00000004u;
|
|
/* 0238CEAC */ rbrew_write32(cpu->mem, _t79, cpu->r[19]);
|
|
L_0238CEB0: ; // 0x238ceb0
|
|
/* 0238CEB0 */ cpu->r[7] = cpu->r[22] + 0x00000080u;
|
|
/* 0238CEB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 0238CEB4 */ _t80 = cpu->r[22] + 0x00000058u;
|
|
/* 0238CEB4 */ rbrew_write32(cpu->mem, _t80, cpu->r[24]);
|
|
/* 0238CEB8 */ _t81 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238CEB8 */ _t82 = _t81 & 0x00000001u;
|
|
/* 0238CEB8 */ if (_t82) goto L_0238CEBC; else goto L_0238CEC4;
|
|
L_0238CEBC: ; // 0x238cebc
|
|
/* 0238CEBC */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0238CEC0 */ Gambit_fn_02801A78(cpu);
|
|
L_0238CEC4: ; // 0x238cec4
|
|
/* 0238CEC4 */ cpu->r[8] = cpu->r[22] + 0x0000008Cu;
|
|
/* 0238CEC4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0238CEC8 */ _t83 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238CEC8 */ _t84 = _t83 & 0x00000001u;
|
|
/* 0238CEC8 */ if (_t84) goto L_0238CECC; else goto L_0238CED4;
|
|
L_0238CECC: ; // 0x238cecc
|
|
/* 0238CECC */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0238CED0 */ Gambit_fn_02801A78(cpu);
|
|
L_0238CED4: ; // 0x238ced4
|
|
/* 0238CED4 */ _t85 = cpu->r[1] + 0x00000008u;
|
|
/* 0238CED4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t85);
|
|
/* 0238CED8 */ _t86 = cpu->r[22] + 0x0000009Cu;
|
|
/* 0238CED8 */ rbrew_write8(cpu->mem, _t86, (uint8_t)cpu->r[23]);
|
|
/* 0238CEDC */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 0238CEE0 */ _t87 = cpu->r[22] + 0x00000098u;
|
|
/* 0238CEE0 */ rbrew_write32(cpu->mem, _t87, cpu->r[10]);
|
|
/* 0238CEE4 */ _t88 = cpu->r[22] + 0x000000A0u;
|
|
/* 0238CEE4 */ rbrew_write32(cpu->mem, _t88, cpu->r[11]);
|
|
L_0238CEE8: ; // 0x238cee8
|
|
/* 0238CEE8 */ _t89 = cpu->r[31] + 0x000000A4u;
|
|
/* 0238CEE8 */ rbrew_write32(cpu->mem, _t89, cpu->r[23]);
|
|
/* 0238CEEC */ cpu->r[4] = cpu->r[31] + 0x000000A4u;
|
|
/* 0238CEF0 */ cpu->r[3] = cpu->r[27] + 0x000004DCu;
|
|
/* 0238CEF4 */ _t90 = cpu->r[31] + 0x000000A8u;
|
|
/* 0238CEF4 */ rbrew_write32(cpu->mem, _t90, cpu->r[23]);
|
|
/* 0238CEF8 */ Gambit_fn_02801EBC(cpu);
|
|
/* 0238CEFC */ _t91 = cpu->r[27] + 0x000004E4u;
|
|
/* 0238CEFC */ cpu->r[12] = rbrew_read32(cpu->mem, _t91);
|
|
/* 0238CF00 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 0238CF04 */ cpu->r[3] = cpu->r[27] + 0x000007C4u;
|
|
/* 0238CF08 */ _t92 = cpu->r[27] + 0x000004E4u;
|
|
/* 0238CF08 */ rbrew_write32(cpu->mem, _t92, cpu->r[12]);
|
|
/* 0238CF0C */ Gambit_fn_02837030(cpu);
|
|
/* 0238CF10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0238CF14 */ _t93 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238CF14 */ _t94 = _t93 & 0x00000001u;
|
|
/* 0238CF14 */ if (_t94) goto L_0238CF18; else goto L_0238CF48;
|
|
L_0238CF18: ; // 0x238cf18
|
|
/* 0238CF18 */ goto L_0238CF64;
|
|
L_0238CF1C: ; // 0x238cf1c
|
|
/* 0238CF1C */ cpu->r[4] = 0x000000A4u;
|
|
/* 0238CF20 */ cpu->r[3] = cpu->r[27] + 0x000004DCu;
|
|
/* 0238CF24 */ cpu->r[31] = 0x00000000u;
|
|
/* 0238CF28 */ Gambit_fn_02801EBC(cpu);
|
|
/* 0238CF2C */ _t95 = cpu->r[27] + 0x000004E4u;
|
|
/* 0238CF2C */ cpu->r[12] = rbrew_read32(cpu->mem, _t95);
|
|
/* 0238CF30 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 0238CF34 */ cpu->r[3] = cpu->r[27] + 0x000007C4u;
|
|
/* 0238CF38 */ _t96 = cpu->r[27] + 0x000004E4u;
|
|
/* 0238CF38 */ rbrew_write32(cpu->mem, _t96, cpu->r[12]);
|
|
/* 0238CF3C */ Gambit_fn_02837030(cpu);
|
|
/* 0238CF40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0238CF44 */ _t97 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238CF44 */ _t98 = _t97 & 0x00000001u;
|
|
/* 0238CF44 */ if (_t98) goto L_0238CF64; else goto L_0238CF48;
|
|
L_0238CF48: ; // 0x238cf48
|
|
/* 0238CF48 */ _t99 = cpu->r[31] + 0x00000068u;
|
|
/* 0238CF48 */ rbrew_write32(cpu->mem, _t99, cpu->r[28]);
|
|
/* 0238CF4C */ cpu->r[0] = 0x00000001u;
|
|
/* 0238CF50 */ _t100 = cpu->r[31] + 0x00000060u;
|
|
/* 0238CF50 */ rbrew_write32(cpu->mem, _t100, cpu->r[29]);
|
|
/* 0238CF54 */ _t101 = cpu->r[31] + 0x0000009Cu;
|
|
/* 0238CF54 */ rbrew_write8(cpu->mem, _t101, (uint8_t)cpu->r[0]);
|
|
/* 0238CF58 */ cpu->r[3] = cpu->r[27];
|
|
/* 0238CF5C */ _t102 = cpu->r[31] + 0x00000064u;
|
|
/* 0238CF5C */ rbrew_write32(cpu->mem, _t102, cpu->r[30]);
|
|
/* 0238CF60 */ Gambit_fn_0238C0E0(cpu);
|
|
L_0238CF64: ; // 0x238cf64
|
|
/* 0238CF64 */ /* nop */
|
|
/* 0238CF68 */ _t103 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0238CF68 */ cpu->r[0] = rbrew_read32(cpu->mem, _t103);
|
|
/* 0238CF6C */ cpu->lr = cpu->r[0];
|
|
/* 0238CF70 */ cpu->r[1] = cpu->r[1] + 0x00000048u;
|
|
/* 0238CF74 */ return;
|
|
}
|
|
|
|
// fn_0238CF78 @ 0x238cf78
|
|
void Gambit_fn_0238CF78(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106;
|
|
|
|
L_0238CF78: ; // 0x238cf78
|
|
/* 0238CF78 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 0238CF78 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0238CF78 */ cpu->r[1] = _t0;
|
|
/* 0238CF7C */ /* nop */
|
|
/* 0238CF80 */ cpu->r[0] = cpu->lr;
|
|
/* 0238CF84 */ _t1 = cpu->r[1] + 0x00000044u;
|
|
/* 0238CF84 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0238CF88 */ cpu->r[29] = cpu->r[3];
|
|
/* 0238CF8C */ _t2 = cpu->r[29] + 0x00000505u;
|
|
/* 0238CF8C */ cpu->r[11] = rbrew_read8(cpu->mem, _t2);
|
|
/* 0238CF90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0238CF94 */ cpu->r[30] = cpu->r[4];
|
|
/* 0238CF98 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238CF98 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0238CF98 */ if (_t4) goto L_0238D23C; else goto L_0238CF9C;
|
|
L_0238CF9C: ; // 0x238cf9c
|
|
/* 0238CF9C */ _t5 = cpu->r[29] + 0x00000504u;
|
|
/* 0238CF9C */ cpu->r[0] = rbrew_read8(cpu->mem, _t5);
|
|
/* 0238CFA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0238CFA4 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238CFA4 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0238CFA4 */ if (_t7) goto L_0238D23C; else goto L_0238CFA8;
|
|
L_0238CFA8: ; // 0x238cfa8
|
|
/* 0238CFA8 */ cpu->r[3] = cpu->r[29] + 0x000007C4u;
|
|
/* 0238CFAC */ Gambit_fn_02836FFC(cpu);
|
|
/* 0238CFB0 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0238CFB4 */ _t8 = cpu->r[3] + 0x00006000u;
|
|
/* 0238CFB4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0238CFB8 */ _t9 = cpu->r[3] + 0x00000004u;
|
|
/* 0238CFB8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0238CFBC */ _t10 = cpu->r[6] + 0x0000012Cu;
|
|
/* 0238CFBC */ cpu->r[7] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0238CFC0 */ cpu->ctr = cpu->r[7];
|
|
/* 0238CFC4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0238CFC8 */ _t11 = cpu->r[29] + 0x000004E4u;
|
|
/* 0238CFC8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0238CFCC */ cpu->r[26] = cpu->r[3];
|
|
/* 0238CFD0 */ _t12 = cpu->r[29] + 0x000004F0u;
|
|
/* 0238CFD0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0238CFD4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], cpu->r[9]);
|
|
/* 0238CFD8 */ cpu->r[25] = 0x00000000u;
|
|
/* 0238CFDC */ _t13 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0238CFDC */ _t14 = _t13 & 0x00000001u;
|
|
/* 0238CFDC */ if (_t14) goto L_0238D000; else goto L_0238CFE0;
|
|
L_0238CFE0: ; // 0x238cfe0
|
|
/* 0238CFE0 */ cpu->r[3] = cpu->r[29] + 0x000007C4u;
|
|
/* 0238CFE4 */ cpu->r[31] = 0x00000000u;
|
|
/* 0238CFE8 */ Gambit_fn_02837030(cpu);
|
|
/* 0238CFEC */ /* nop */
|
|
/* 0238CFF0 */ _t15 = cpu->r[1] + 0x00000044u;
|
|
/* 0238CFF0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0238CFF4 */ cpu->lr = cpu->r[0];
|
|
/* 0238CFF8 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 0238CFFC */ return;
|
|
L_0238D000: ; // 0x238d000
|
|
/* 0238D000 */ _t16 = cpu->r[29] + 0x000004E8u;
|
|
/* 0238D000 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0238D004 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0238D008 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D008 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0238D008 */ if (_t18) goto L_0238D014; else goto L_0238D00C;
|
|
L_0238D00C: ; // 0x238d00c
|
|
/* 0238D00C */ _t19 = cpu->r[31] + 0x00000000u;
|
|
/* 0238D00C */ cpu->r[10] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0238D010 */ _t20 = cpu->r[29] + 0x000004E8u;
|
|
/* 0238D010 */ rbrew_write32(cpu->mem, _t20, cpu->r[10]);
|
|
L_0238D014: ; // 0x238d014
|
|
/* 0238D014 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0238D018 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D018 */ _t22 = _t21 & 0x00000001u;
|
|
/* 0238D018 */ if (_t22) goto L_0238D1DC; else goto L_0238D01C;
|
|
L_0238D01C: ; // 0x238d01c
|
|
/* 0238D01C */ cpu->r[11] = 0x00000004u;
|
|
/* 0238D020 */ cpu->r[23] = cpu->r[31];
|
|
/* 0238D020 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], 0x00000000u);
|
|
/* 0238D024 */ _t23 = cpu->r[1] + 0x00000008u;
|
|
/* 0238D024 */ rbrew_write32(cpu->mem, _t23, cpu->r[11]);
|
|
/* 0238D028 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D028 */ _t25 = _t24 & 0x00000001u;
|
|
/* 0238D028 */ if (_t25) goto L_0238D02C; else goto L_0238D03C;
|
|
L_0238D02C: ; // 0x238d02c
|
|
/* 0238D02C */ cpu->r[3] = 0x000000A4u;
|
|
/* 0238D030 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238D034 */ cpu->r[23] = cpu->r[3];
|
|
/* 0238D034 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], 0x00000000u);
|
|
/* 0238D038 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D038 */ _t27 = _t26 & 0x00000001u;
|
|
/* 0238D038 */ if (_t27) goto L_0238D1A8; else goto L_0238D03C;
|
|
L_0238D03C: ; // 0x238d03c
|
|
/* 0238D03C */ cpu->r[22] = 0x10080000u;
|
|
/* 0238D040 */ cpu->r[27] = cpu->r[23];
|
|
/* 0238D040 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0238D044 */ cpu->r[24] = 0x10080000u;
|
|
/* 0238D048 */ cpu->r[22] = cpu->r[22] + 0x000062A8u;
|
|
/* 0238D04C */ cpu->r[21] = 0x10080000u;
|
|
/* 0238D050 */ cpu->r[24] = cpu->r[24] + 0x00006290u;
|
|
/* 0238D054 */ cpu->r[20] = 0x10110000u;
|
|
/* 0238D058 */ cpu->r[21] = cpu->r[21] + 0x000062C0u;
|
|
/* 0238D05C */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D05C */ _t29 = _t28 & 0x00000001u;
|
|
/* 0238D05C */ if (_t29) goto L_0238D060; else goto L_0238D070;
|
|
L_0238D060: ; // 0x238d060
|
|
/* 0238D060 */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0238D064 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238D068 */ cpu->r[27] = cpu->r[3];
|
|
/* 0238D068 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0238D06C */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D06C */ _t31 = _t30 & 0x00000001u;
|
|
/* 0238D06C */ if (_t31) goto L_0238D0E4; else goto L_0238D070;
|
|
L_0238D070: ; // 0x238d070
|
|
/* 0238D070 */ cpu->r[28] = cpu->r[27];
|
|
/* 0238D070 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 0238D074 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D074 */ _t33 = _t32 & 0x00000001u;
|
|
/* 0238D074 */ if (_t33) goto L_0238D078; else goto L_0238D088;
|
|
L_0238D078: ; // 0x238d078
|
|
/* 0238D078 */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0238D07C */ Gambit_fn_02801A78(cpu);
|
|
/* 0238D080 */ cpu->r[28] = cpu->r[3];
|
|
/* 0238D080 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 0238D084 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D084 */ _t35 = _t34 & 0x00000001u;
|
|
/* 0238D084 */ if (_t35) goto L_0238D0E0; else goto L_0238D088;
|
|
L_0238D088: ; // 0x238d088
|
|
/* 0238D088 */ cpu->r[3] = cpu->r[28];
|
|
/* 0238D088 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238D08C */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D08C */ _t37 = _t36 & 0x00000001u;
|
|
/* 0238D08C */ if (_t37) goto L_0238D090; else goto L_0238D0B8;
|
|
L_0238D090: ; // 0x238d090
|
|
/* 0238D090 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0238D094 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238D098 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238D09C */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D09C */ _t39 = _t38 & 0x00000001u;
|
|
/* 0238D09C */ if (_t39) goto L_0238D0A0; else goto L_0238D0B8;
|
|
L_0238D0A0: ; // 0x238d0a0
|
|
/* 0238D0A0 */ _t40 = cpu->r[28] + 0x00000000u;
|
|
/* 0238D0A0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0238D0A4 */ _t41 = cpu->r[20] + 0x00007399u;
|
|
/* 0238D0A4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t41);
|
|
/* 0238D0A8 */ _t42 = cpu->r[28] + 0x00000004u;
|
|
/* 0238D0A8 */ rbrew_write32(cpu->mem, _t42, cpu->r[22]);
|
|
/* 0238D0AC */ _t43 = cpu->r[9] + 0x00000000u;
|
|
/* 0238D0AC */ rbrew_write8(cpu->mem, _t43, (uint8_t)cpu->r[0]);
|
|
/* 0238D0B0 */ _t44 = cpu->r[27] + 0x00000004u;
|
|
/* 0238D0B0 */ rbrew_write32(cpu->mem, _t44, cpu->r[21]);
|
|
/* 0238D0B4 */ goto L_0238D0E4;
|
|
L_0238D0B8: ; // 0x238d0b8
|
|
/* 0238D0B8 */ cpu->r[12] = cpu->r[28] + 0x0000000Cu;
|
|
/* 0238D0BC */ _t45 = cpu->r[3] + 0x00000004u;
|
|
/* 0238D0BC */ rbrew_write32(cpu->mem, _t45, cpu->r[24]);
|
|
/* 0238D0C0 */ cpu->r[0] = 0x00000020u;
|
|
/* 0238D0C4 */ _t46 = cpu->r[3] + 0x00000000u;
|
|
/* 0238D0C4 */ rbrew_write32(cpu->mem, _t46, cpu->r[12]);
|
|
/* 0238D0C8 */ _t47 = cpu->r[3] + 0x00000008u;
|
|
/* 0238D0C8 */ rbrew_write32(cpu->mem, _t47, cpu->r[0]);
|
|
/* 0238D0CC */ _t48 = cpu->r[20] + 0x00007399u;
|
|
/* 0238D0CC */ cpu->r[0] = rbrew_read8(cpu->mem, _t48);
|
|
/* 0238D0D0 */ _t49 = cpu->r[28] + 0x00000004u;
|
|
/* 0238D0D0 */ rbrew_write32(cpu->mem, _t49, cpu->r[22]);
|
|
/* 0238D0D4 */ _t50 = cpu->r[28] + 0x00000000u;
|
|
/* 0238D0D4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t50);
|
|
/* 0238D0D8 */ _t51 = cpu->r[28] + 0x0000002Bu;
|
|
/* 0238D0D8 */ rbrew_write8(cpu->mem, _t51, (uint8_t)cpu->r[0]);
|
|
/* 0238D0DC */ _t52 = cpu->r[9] + 0x00000000u;
|
|
/* 0238D0DC */ rbrew_write8(cpu->mem, _t52, (uint8_t)cpu->r[0]);
|
|
L_0238D0E0: ; // 0x238d0e0
|
|
/* 0238D0E0 */ _t53 = cpu->r[27] + 0x00000004u;
|
|
/* 0238D0E0 */ rbrew_write32(cpu->mem, _t53, cpu->r[21]);
|
|
L_0238D0E4: ; // 0x238d0e4
|
|
/* 0238D0E4 */ cpu->r[27] = cpu->r[23] + 0x0000002Cu;
|
|
/* 0238D0E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0238D0E8 */ _t54 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D0E8 */ _t55 = _t54 & 0x00000001u;
|
|
/* 0238D0E8 */ if (_t55) goto L_0238D0EC; else goto L_0238D0FC;
|
|
L_0238D0EC: ; // 0x238d0ec
|
|
/* 0238D0EC */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0238D0F0 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238D0F4 */ cpu->r[27] = cpu->r[3];
|
|
/* 0238D0F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0238D0F8 */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D0F8 */ _t57 = _t56 & 0x00000001u;
|
|
/* 0238D0F8 */ if (_t57) goto L_0238D170; else goto L_0238D0FC;
|
|
L_0238D0FC: ; // 0x238d0fc
|
|
/* 0238D0FC */ cpu->r[28] = cpu->r[27];
|
|
/* 0238D0FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 0238D100 */ _t58 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D100 */ _t59 = _t58 & 0x00000001u;
|
|
/* 0238D100 */ if (_t59) goto L_0238D104; else goto L_0238D114;
|
|
L_0238D104: ; // 0x238d104
|
|
/* 0238D104 */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0238D108 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238D10C */ cpu->r[28] = cpu->r[3];
|
|
/* 0238D10C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 0238D110 */ _t60 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D110 */ _t61 = _t60 & 0x00000001u;
|
|
/* 0238D110 */ if (_t61) goto L_0238D16C; else goto L_0238D114;
|
|
L_0238D114: ; // 0x238d114
|
|
/* 0238D114 */ cpu->r[3] = cpu->r[28];
|
|
/* 0238D114 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238D118 */ _t62 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D118 */ _t63 = _t62 & 0x00000001u;
|
|
/* 0238D118 */ if (_t63) goto L_0238D11C; else goto L_0238D144;
|
|
L_0238D11C: ; // 0x238d11c
|
|
/* 0238D11C */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0238D120 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238D124 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238D128 */ _t64 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D128 */ _t65 = _t64 & 0x00000001u;
|
|
/* 0238D128 */ if (_t65) goto L_0238D12C; else goto L_0238D144;
|
|
L_0238D12C: ; // 0x238d12c
|
|
/* 0238D12C */ _t66 = cpu->r[28] + 0x00000000u;
|
|
/* 0238D12C */ cpu->r[12] = rbrew_read32(cpu->mem, _t66);
|
|
/* 0238D130 */ _t67 = cpu->r[20] + 0x00007399u;
|
|
/* 0238D130 */ cpu->r[0] = rbrew_read8(cpu->mem, _t67);
|
|
/* 0238D134 */ _t68 = cpu->r[28] + 0x00000004u;
|
|
/* 0238D134 */ rbrew_write32(cpu->mem, _t68, cpu->r[22]);
|
|
/* 0238D138 */ _t69 = cpu->r[12] + 0x00000000u;
|
|
/* 0238D138 */ rbrew_write8(cpu->mem, _t69, (uint8_t)cpu->r[0]);
|
|
/* 0238D13C */ _t70 = cpu->r[27] + 0x00000004u;
|
|
/* 0238D13C */ rbrew_write32(cpu->mem, _t70, cpu->r[21]);
|
|
/* 0238D140 */ goto L_0238D170;
|
|
L_0238D144: ; // 0x238d144
|
|
/* 0238D144 */ cpu->r[10] = cpu->r[28] + 0x0000000Cu;
|
|
/* 0238D148 */ _t71 = cpu->r[3] + 0x00000004u;
|
|
/* 0238D148 */ rbrew_write32(cpu->mem, _t71, cpu->r[24]);
|
|
/* 0238D14C */ cpu->r[11] = 0x00000020u;
|
|
/* 0238D150 */ _t72 = cpu->r[3] + 0x00000000u;
|
|
/* 0238D150 */ rbrew_write32(cpu->mem, _t72, cpu->r[10]);
|
|
/* 0238D154 */ _t73 = cpu->r[3] + 0x00000008u;
|
|
/* 0238D154 */ rbrew_write32(cpu->mem, _t73, cpu->r[11]);
|
|
/* 0238D158 */ _t74 = cpu->r[20] + 0x00007399u;
|
|
/* 0238D158 */ cpu->r[0] = rbrew_read8(cpu->mem, _t74);
|
|
/* 0238D15C */ _t75 = cpu->r[28] + 0x00000004u;
|
|
/* 0238D15C */ rbrew_write32(cpu->mem, _t75, cpu->r[22]);
|
|
/* 0238D160 */ _t76 = cpu->r[28] + 0x00000000u;
|
|
/* 0238D160 */ cpu->r[12] = rbrew_read32(cpu->mem, _t76);
|
|
/* 0238D164 */ _t77 = cpu->r[28] + 0x0000002Bu;
|
|
/* 0238D164 */ rbrew_write8(cpu->mem, _t77, (uint8_t)cpu->r[0]);
|
|
/* 0238D168 */ _t78 = cpu->r[12] + 0x00000000u;
|
|
/* 0238D168 */ rbrew_write8(cpu->mem, _t78, (uint8_t)cpu->r[0]);
|
|
L_0238D16C: ; // 0x238d16c
|
|
/* 0238D16C */ _t79 = cpu->r[27] + 0x00000004u;
|
|
/* 0238D16C */ rbrew_write32(cpu->mem, _t79, cpu->r[21]);
|
|
L_0238D170: ; // 0x238d170
|
|
/* 0238D170 */ cpu->r[0] = cpu->r[23] + 0x00000080u;
|
|
/* 0238D170 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0238D174 */ _t80 = cpu->r[23] + 0x00000058u;
|
|
/* 0238D174 */ rbrew_write32(cpu->mem, _t80, cpu->r[26]);
|
|
/* 0238D178 */ _t81 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D178 */ _t82 = _t81 & 0x00000001u;
|
|
/* 0238D178 */ if (_t82) goto L_0238D17C; else goto L_0238D184;
|
|
L_0238D17C: ; // 0x238d17c
|
|
/* 0238D17C */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0238D180 */ Gambit_fn_02801A78(cpu);
|
|
L_0238D184: ; // 0x238d184
|
|
/* 0238D184 */ cpu->r[6] = cpu->r[23] + 0x0000008Cu;
|
|
/* 0238D184 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 0238D188 */ _t83 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D188 */ _t84 = _t83 & 0x00000001u;
|
|
/* 0238D188 */ if (_t84) goto L_0238D18C; else goto L_0238D194;
|
|
L_0238D18C: ; // 0x238d18c
|
|
/* 0238D18C */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0238D190 */ Gambit_fn_02801A78(cpu);
|
|
L_0238D194: ; // 0x238d194
|
|
/* 0238D194 */ _t85 = cpu->r[1] + 0x00000008u;
|
|
/* 0238D194 */ cpu->r[7] = rbrew_read32(cpu->mem, _t85);
|
|
/* 0238D198 */ _t86 = cpu->r[23] + 0x0000009Cu;
|
|
/* 0238D198 */ rbrew_write8(cpu->mem, _t86, (uint8_t)cpu->r[25]);
|
|
/* 0238D19C */ cpu->r[8] = 0xFFFFFFFFu;
|
|
/* 0238D1A0 */ _t87 = cpu->r[23] + 0x00000098u;
|
|
/* 0238D1A0 */ rbrew_write32(cpu->mem, _t87, cpu->r[7]);
|
|
/* 0238D1A4 */ _t88 = cpu->r[23] + 0x000000A0u;
|
|
/* 0238D1A4 */ rbrew_write32(cpu->mem, _t88, cpu->r[8]);
|
|
L_0238D1A8: ; // 0x238d1a8
|
|
/* 0238D1A8 */ _t89 = cpu->r[31] + 0x000000A4u;
|
|
/* 0238D1A8 */ rbrew_write32(cpu->mem, _t89, cpu->r[25]);
|
|
/* 0238D1AC */ cpu->r[4] = cpu->r[31] + 0x000000A4u;
|
|
/* 0238D1B0 */ cpu->r[3] = cpu->r[29] + 0x000004DCu;
|
|
/* 0238D1B4 */ _t90 = cpu->r[31] + 0x000000A8u;
|
|
/* 0238D1B4 */ rbrew_write32(cpu->mem, _t90, cpu->r[25]);
|
|
/* 0238D1B8 */ Gambit_fn_02801EBC(cpu);
|
|
/* 0238D1BC */ _t91 = cpu->r[29] + 0x000004E4u;
|
|
/* 0238D1BC */ cpu->r[10] = rbrew_read32(cpu->mem, _t91);
|
|
/* 0238D1C0 */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 0238D1C4 */ cpu->r[3] = cpu->r[29] + 0x000007C4u;
|
|
/* 0238D1C8 */ _t92 = cpu->r[29] + 0x000004E4u;
|
|
/* 0238D1C8 */ rbrew_write32(cpu->mem, _t92, cpu->r[10]);
|
|
/* 0238D1CC */ Gambit_fn_02837030(cpu);
|
|
/* 0238D1D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0238D1D4 */ _t93 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D1D4 */ _t94 = _t93 & 0x00000001u;
|
|
/* 0238D1D4 */ if (_t94) goto L_0238D1D8; else goto L_0238D208;
|
|
L_0238D1D8: ; // 0x238d1d8
|
|
/* 0238D1D8 */ goto L_0238D23C;
|
|
L_0238D1DC: ; // 0x238d1dc
|
|
/* 0238D1DC */ cpu->r[4] = 0x000000A4u;
|
|
/* 0238D1E0 */ cpu->r[3] = cpu->r[29] + 0x000004DCu;
|
|
/* 0238D1E4 */ cpu->r[31] = 0x00000000u;
|
|
/* 0238D1E8 */ Gambit_fn_02801EBC(cpu);
|
|
/* 0238D1EC */ _t95 = cpu->r[29] + 0x000004E4u;
|
|
/* 0238D1EC */ cpu->r[10] = rbrew_read32(cpu->mem, _t95);
|
|
/* 0238D1F0 */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 0238D1F4 */ cpu->r[3] = cpu->r[29] + 0x000007C4u;
|
|
/* 0238D1F8 */ _t96 = cpu->r[29] + 0x000004E4u;
|
|
/* 0238D1F8 */ rbrew_write32(cpu->mem, _t96, cpu->r[10]);
|
|
/* 0238D1FC */ Gambit_fn_02837030(cpu);
|
|
/* 0238D200 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0238D204 */ _t97 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D204 */ _t98 = _t97 & 0x00000001u;
|
|
/* 0238D204 */ if (_t98) goto L_0238D23C; else goto L_0238D208;
|
|
L_0238D208: ; // 0x238d208
|
|
/* 0238D208 */ cpu->r[3] = cpu->r[29];
|
|
/* 0238D20C */ cpu->r[4] = cpu->r[31];
|
|
/* 0238D210 */ Gambit_fn_0238C684(cpu);
|
|
/* 0238D214 */ _t99 = cpu->r[30] + 0x00000000u;
|
|
/* 0238D214 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t99);
|
|
/* 0238D218 */ _t100 = cpu->r[31] + 0x00000080u;
|
|
/* 0238D218 */ rbrew_write_f32(cpu->mem, _t100, cpu->f[0]);
|
|
/* 0238D21C */ _t101 = cpu->r[30] + 0x00000004u;
|
|
/* 0238D21C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t101);
|
|
/* 0238D220 */ cpu->r[12] = 0x00000001u;
|
|
/* 0238D224 */ _t102 = cpu->r[31] + 0x00000084u;
|
|
/* 0238D224 */ rbrew_write_f32(cpu->mem, _t102, cpu->f[0]);
|
|
/* 0238D228 */ _t103 = cpu->r[30] + 0x00000008u;
|
|
/* 0238D228 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t103);
|
|
/* 0238D22C */ _t104 = cpu->r[31] + 0x0000009Cu;
|
|
/* 0238D22C */ rbrew_write8(cpu->mem, _t104, (uint8_t)cpu->r[12]);
|
|
/* 0238D230 */ cpu->r[3] = cpu->r[29];
|
|
/* 0238D234 */ _t105 = cpu->r[31] + 0x00000088u;
|
|
/* 0238D234 */ rbrew_write_f32(cpu->mem, _t105, cpu->f[0]);
|
|
/* 0238D238 */ Gambit_fn_0238C0E0(cpu);
|
|
L_0238D23C: ; // 0x238d23c
|
|
/* 0238D23C */ /* nop */
|
|
/* 0238D240 */ _t106 = cpu->r[1] + 0x00000044u;
|
|
/* 0238D240 */ cpu->r[0] = rbrew_read32(cpu->mem, _t106);
|
|
/* 0238D244 */ cpu->lr = cpu->r[0];
|
|
/* 0238D248 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 0238D24C */ return;
|
|
}
|
|
|
|
// fn_0238D250 @ 0x238d250
|
|
void Gambit_fn_0238D250(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106;
|
|
|
|
L_0238D250: ; // 0x238d250
|
|
/* 0238D250 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 0238D250 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0238D250 */ cpu->r[1] = _t0;
|
|
/* 0238D254 */ /* nop */
|
|
/* 0238D258 */ cpu->r[0] = cpu->lr;
|
|
/* 0238D25C */ _t1 = cpu->r[1] + 0x00000044u;
|
|
/* 0238D25C */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0238D260 */ cpu->r[29] = cpu->r[3];
|
|
/* 0238D264 */ _t2 = cpu->r[29] + 0x00000505u;
|
|
/* 0238D264 */ cpu->r[11] = rbrew_read8(cpu->mem, _t2);
|
|
/* 0238D268 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0238D26C */ cpu->r[30] = cpu->r[4];
|
|
/* 0238D270 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D270 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0238D270 */ if (_t4) goto L_0238D514; else goto L_0238D274;
|
|
L_0238D274: ; // 0x238d274
|
|
/* 0238D274 */ _t5 = cpu->r[29] + 0x00000504u;
|
|
/* 0238D274 */ cpu->r[0] = rbrew_read8(cpu->mem, _t5);
|
|
/* 0238D278 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0238D27C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D27C */ _t7 = _t6 & 0x00000001u;
|
|
/* 0238D27C */ if (_t7) goto L_0238D514; else goto L_0238D280;
|
|
L_0238D280: ; // 0x238d280
|
|
/* 0238D280 */ cpu->r[3] = cpu->r[29] + 0x000007C4u;
|
|
/* 0238D284 */ Gambit_fn_02836FFC(cpu);
|
|
/* 0238D288 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0238D28C */ _t8 = cpu->r[3] + 0x00006000u;
|
|
/* 0238D28C */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0238D290 */ _t9 = cpu->r[3] + 0x00000004u;
|
|
/* 0238D290 */ cpu->r[6] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0238D294 */ _t10 = cpu->r[6] + 0x0000012Cu;
|
|
/* 0238D294 */ cpu->r[7] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0238D298 */ cpu->ctr = cpu->r[7];
|
|
/* 0238D29C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0238D2A0 */ _t11 = cpu->r[29] + 0x000004E4u;
|
|
/* 0238D2A0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0238D2A4 */ cpu->r[26] = cpu->r[3];
|
|
/* 0238D2A8 */ _t12 = cpu->r[29] + 0x000004F0u;
|
|
/* 0238D2A8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0238D2AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], cpu->r[9]);
|
|
/* 0238D2B0 */ cpu->r[25] = 0x00000000u;
|
|
/* 0238D2B4 */ _t13 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0238D2B4 */ _t14 = _t13 & 0x00000001u;
|
|
/* 0238D2B4 */ if (_t14) goto L_0238D2D8; else goto L_0238D2B8;
|
|
L_0238D2B8: ; // 0x238d2b8
|
|
/* 0238D2B8 */ cpu->r[3] = cpu->r[29] + 0x000007C4u;
|
|
/* 0238D2BC */ cpu->r[31] = 0x00000000u;
|
|
/* 0238D2C0 */ Gambit_fn_02837030(cpu);
|
|
/* 0238D2C4 */ /* nop */
|
|
/* 0238D2C8 */ _t15 = cpu->r[1] + 0x00000044u;
|
|
/* 0238D2C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0238D2CC */ cpu->lr = cpu->r[0];
|
|
/* 0238D2D0 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 0238D2D4 */ return;
|
|
L_0238D2D8: ; // 0x238d2d8
|
|
/* 0238D2D8 */ _t16 = cpu->r[29] + 0x000004E8u;
|
|
/* 0238D2D8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0238D2DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0238D2E0 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D2E0 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0238D2E0 */ if (_t18) goto L_0238D2EC; else goto L_0238D2E4;
|
|
L_0238D2E4: ; // 0x238d2e4
|
|
/* 0238D2E4 */ _t19 = cpu->r[31] + 0x00000000u;
|
|
/* 0238D2E4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0238D2E8 */ _t20 = cpu->r[29] + 0x000004E8u;
|
|
/* 0238D2E8 */ rbrew_write32(cpu->mem, _t20, cpu->r[10]);
|
|
L_0238D2EC: ; // 0x238d2ec
|
|
/* 0238D2EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0238D2F0 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D2F0 */ _t22 = _t21 & 0x00000001u;
|
|
/* 0238D2F0 */ if (_t22) goto L_0238D4B4; else goto L_0238D2F4;
|
|
L_0238D2F4: ; // 0x238d2f4
|
|
/* 0238D2F4 */ cpu->r[11] = 0x00000005u;
|
|
/* 0238D2F8 */ cpu->r[23] = cpu->r[31];
|
|
/* 0238D2F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], 0x00000000u);
|
|
/* 0238D2FC */ _t23 = cpu->r[1] + 0x00000008u;
|
|
/* 0238D2FC */ rbrew_write32(cpu->mem, _t23, cpu->r[11]);
|
|
/* 0238D300 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D300 */ _t25 = _t24 & 0x00000001u;
|
|
/* 0238D300 */ if (_t25) goto L_0238D304; else goto L_0238D314;
|
|
L_0238D304: ; // 0x238d304
|
|
/* 0238D304 */ cpu->r[3] = 0x000000A4u;
|
|
/* 0238D308 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238D30C */ cpu->r[23] = cpu->r[3];
|
|
/* 0238D30C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], 0x00000000u);
|
|
/* 0238D310 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D310 */ _t27 = _t26 & 0x00000001u;
|
|
/* 0238D310 */ if (_t27) goto L_0238D480; else goto L_0238D314;
|
|
L_0238D314: ; // 0x238d314
|
|
/* 0238D314 */ cpu->r[22] = 0x10080000u;
|
|
/* 0238D318 */ cpu->r[27] = cpu->r[23];
|
|
/* 0238D318 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0238D31C */ cpu->r[24] = 0x10080000u;
|
|
/* 0238D320 */ cpu->r[22] = cpu->r[22] + 0x000062A8u;
|
|
/* 0238D324 */ cpu->r[21] = 0x10080000u;
|
|
/* 0238D328 */ cpu->r[24] = cpu->r[24] + 0x00006290u;
|
|
/* 0238D32C */ cpu->r[20] = 0x10110000u;
|
|
/* 0238D330 */ cpu->r[21] = cpu->r[21] + 0x000062C0u;
|
|
/* 0238D334 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D334 */ _t29 = _t28 & 0x00000001u;
|
|
/* 0238D334 */ if (_t29) goto L_0238D338; else goto L_0238D348;
|
|
L_0238D338: ; // 0x238d338
|
|
/* 0238D338 */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0238D33C */ Gambit_fn_02801A78(cpu);
|
|
/* 0238D340 */ cpu->r[27] = cpu->r[3];
|
|
/* 0238D340 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0238D344 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D344 */ _t31 = _t30 & 0x00000001u;
|
|
/* 0238D344 */ if (_t31) goto L_0238D3BC; else goto L_0238D348;
|
|
L_0238D348: ; // 0x238d348
|
|
/* 0238D348 */ cpu->r[28] = cpu->r[27];
|
|
/* 0238D348 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 0238D34C */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D34C */ _t33 = _t32 & 0x00000001u;
|
|
/* 0238D34C */ if (_t33) goto L_0238D350; else goto L_0238D360;
|
|
L_0238D350: ; // 0x238d350
|
|
/* 0238D350 */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0238D354 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238D358 */ cpu->r[28] = cpu->r[3];
|
|
/* 0238D358 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 0238D35C */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D35C */ _t35 = _t34 & 0x00000001u;
|
|
/* 0238D35C */ if (_t35) goto L_0238D3B8; else goto L_0238D360;
|
|
L_0238D360: ; // 0x238d360
|
|
/* 0238D360 */ cpu->r[3] = cpu->r[28];
|
|
/* 0238D360 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238D364 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D364 */ _t37 = _t36 & 0x00000001u;
|
|
/* 0238D364 */ if (_t37) goto L_0238D368; else goto L_0238D390;
|
|
L_0238D368: ; // 0x238d368
|
|
/* 0238D368 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0238D36C */ Gambit_fn_02801A78(cpu);
|
|
/* 0238D370 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238D374 */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D374 */ _t39 = _t38 & 0x00000001u;
|
|
/* 0238D374 */ if (_t39) goto L_0238D378; else goto L_0238D390;
|
|
L_0238D378: ; // 0x238d378
|
|
/* 0238D378 */ _t40 = cpu->r[28] + 0x00000000u;
|
|
/* 0238D378 */ cpu->r[9] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0238D37C */ _t41 = cpu->r[20] + 0x00007399u;
|
|
/* 0238D37C */ cpu->r[0] = rbrew_read8(cpu->mem, _t41);
|
|
/* 0238D380 */ _t42 = cpu->r[28] + 0x00000004u;
|
|
/* 0238D380 */ rbrew_write32(cpu->mem, _t42, cpu->r[22]);
|
|
/* 0238D384 */ _t43 = cpu->r[9] + 0x00000000u;
|
|
/* 0238D384 */ rbrew_write8(cpu->mem, _t43, (uint8_t)cpu->r[0]);
|
|
/* 0238D388 */ _t44 = cpu->r[27] + 0x00000004u;
|
|
/* 0238D388 */ rbrew_write32(cpu->mem, _t44, cpu->r[21]);
|
|
/* 0238D38C */ goto L_0238D3BC;
|
|
L_0238D390: ; // 0x238d390
|
|
/* 0238D390 */ cpu->r[12] = cpu->r[28] + 0x0000000Cu;
|
|
/* 0238D394 */ _t45 = cpu->r[3] + 0x00000004u;
|
|
/* 0238D394 */ rbrew_write32(cpu->mem, _t45, cpu->r[24]);
|
|
/* 0238D398 */ cpu->r[0] = 0x00000020u;
|
|
/* 0238D39C */ _t46 = cpu->r[3] + 0x00000000u;
|
|
/* 0238D39C */ rbrew_write32(cpu->mem, _t46, cpu->r[12]);
|
|
/* 0238D3A0 */ _t47 = cpu->r[3] + 0x00000008u;
|
|
/* 0238D3A0 */ rbrew_write32(cpu->mem, _t47, cpu->r[0]);
|
|
/* 0238D3A4 */ _t48 = cpu->r[20] + 0x00007399u;
|
|
/* 0238D3A4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t48);
|
|
/* 0238D3A8 */ _t49 = cpu->r[28] + 0x00000004u;
|
|
/* 0238D3A8 */ rbrew_write32(cpu->mem, _t49, cpu->r[22]);
|
|
/* 0238D3AC */ _t50 = cpu->r[28] + 0x00000000u;
|
|
/* 0238D3AC */ cpu->r[9] = rbrew_read32(cpu->mem, _t50);
|
|
/* 0238D3B0 */ _t51 = cpu->r[28] + 0x0000002Bu;
|
|
/* 0238D3B0 */ rbrew_write8(cpu->mem, _t51, (uint8_t)cpu->r[0]);
|
|
/* 0238D3B4 */ _t52 = cpu->r[9] + 0x00000000u;
|
|
/* 0238D3B4 */ rbrew_write8(cpu->mem, _t52, (uint8_t)cpu->r[0]);
|
|
L_0238D3B8: ; // 0x238d3b8
|
|
/* 0238D3B8 */ _t53 = cpu->r[27] + 0x00000004u;
|
|
/* 0238D3B8 */ rbrew_write32(cpu->mem, _t53, cpu->r[21]);
|
|
L_0238D3BC: ; // 0x238d3bc
|
|
/* 0238D3BC */ cpu->r[27] = cpu->r[23] + 0x0000002Cu;
|
|
/* 0238D3BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0238D3C0 */ _t54 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D3C0 */ _t55 = _t54 & 0x00000001u;
|
|
/* 0238D3C0 */ if (_t55) goto L_0238D3C4; else goto L_0238D3D4;
|
|
L_0238D3C4: ; // 0x238d3c4
|
|
/* 0238D3C4 */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0238D3C8 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238D3CC */ cpu->r[27] = cpu->r[3];
|
|
/* 0238D3CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0238D3D0 */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D3D0 */ _t57 = _t56 & 0x00000001u;
|
|
/* 0238D3D0 */ if (_t57) goto L_0238D448; else goto L_0238D3D4;
|
|
L_0238D3D4: ; // 0x238d3d4
|
|
/* 0238D3D4 */ cpu->r[28] = cpu->r[27];
|
|
/* 0238D3D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 0238D3D8 */ _t58 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D3D8 */ _t59 = _t58 & 0x00000001u;
|
|
/* 0238D3D8 */ if (_t59) goto L_0238D3DC; else goto L_0238D3EC;
|
|
L_0238D3DC: ; // 0x238d3dc
|
|
/* 0238D3DC */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0238D3E0 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238D3E4 */ cpu->r[28] = cpu->r[3];
|
|
/* 0238D3E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 0238D3E8 */ _t60 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D3E8 */ _t61 = _t60 & 0x00000001u;
|
|
/* 0238D3E8 */ if (_t61) goto L_0238D444; else goto L_0238D3EC;
|
|
L_0238D3EC: ; // 0x238d3ec
|
|
/* 0238D3EC */ cpu->r[3] = cpu->r[28];
|
|
/* 0238D3EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238D3F0 */ _t62 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D3F0 */ _t63 = _t62 & 0x00000001u;
|
|
/* 0238D3F0 */ if (_t63) goto L_0238D3F4; else goto L_0238D41C;
|
|
L_0238D3F4: ; // 0x238d3f4
|
|
/* 0238D3F4 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0238D3F8 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238D3FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238D400 */ _t64 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D400 */ _t65 = _t64 & 0x00000001u;
|
|
/* 0238D400 */ if (_t65) goto L_0238D404; else goto L_0238D41C;
|
|
L_0238D404: ; // 0x238d404
|
|
/* 0238D404 */ _t66 = cpu->r[28] + 0x00000000u;
|
|
/* 0238D404 */ cpu->r[12] = rbrew_read32(cpu->mem, _t66);
|
|
/* 0238D408 */ _t67 = cpu->r[20] + 0x00007399u;
|
|
/* 0238D408 */ cpu->r[0] = rbrew_read8(cpu->mem, _t67);
|
|
/* 0238D40C */ _t68 = cpu->r[28] + 0x00000004u;
|
|
/* 0238D40C */ rbrew_write32(cpu->mem, _t68, cpu->r[22]);
|
|
/* 0238D410 */ _t69 = cpu->r[12] + 0x00000000u;
|
|
/* 0238D410 */ rbrew_write8(cpu->mem, _t69, (uint8_t)cpu->r[0]);
|
|
/* 0238D414 */ _t70 = cpu->r[27] + 0x00000004u;
|
|
/* 0238D414 */ rbrew_write32(cpu->mem, _t70, cpu->r[21]);
|
|
/* 0238D418 */ goto L_0238D448;
|
|
L_0238D41C: ; // 0x238d41c
|
|
/* 0238D41C */ cpu->r[10] = cpu->r[28] + 0x0000000Cu;
|
|
/* 0238D420 */ _t71 = cpu->r[3] + 0x00000004u;
|
|
/* 0238D420 */ rbrew_write32(cpu->mem, _t71, cpu->r[24]);
|
|
/* 0238D424 */ cpu->r[11] = 0x00000020u;
|
|
/* 0238D428 */ _t72 = cpu->r[3] + 0x00000000u;
|
|
/* 0238D428 */ rbrew_write32(cpu->mem, _t72, cpu->r[10]);
|
|
/* 0238D42C */ _t73 = cpu->r[3] + 0x00000008u;
|
|
/* 0238D42C */ rbrew_write32(cpu->mem, _t73, cpu->r[11]);
|
|
/* 0238D430 */ _t74 = cpu->r[20] + 0x00007399u;
|
|
/* 0238D430 */ cpu->r[0] = rbrew_read8(cpu->mem, _t74);
|
|
/* 0238D434 */ _t75 = cpu->r[28] + 0x00000004u;
|
|
/* 0238D434 */ rbrew_write32(cpu->mem, _t75, cpu->r[22]);
|
|
/* 0238D438 */ _t76 = cpu->r[28] + 0x00000000u;
|
|
/* 0238D438 */ cpu->r[12] = rbrew_read32(cpu->mem, _t76);
|
|
/* 0238D43C */ _t77 = cpu->r[28] + 0x0000002Bu;
|
|
/* 0238D43C */ rbrew_write8(cpu->mem, _t77, (uint8_t)cpu->r[0]);
|
|
/* 0238D440 */ _t78 = cpu->r[12] + 0x00000000u;
|
|
/* 0238D440 */ rbrew_write8(cpu->mem, _t78, (uint8_t)cpu->r[0]);
|
|
L_0238D444: ; // 0x238d444
|
|
/* 0238D444 */ _t79 = cpu->r[27] + 0x00000004u;
|
|
/* 0238D444 */ rbrew_write32(cpu->mem, _t79, cpu->r[21]);
|
|
L_0238D448: ; // 0x238d448
|
|
/* 0238D448 */ cpu->r[0] = cpu->r[23] + 0x00000080u;
|
|
/* 0238D448 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0238D44C */ _t80 = cpu->r[23] + 0x00000058u;
|
|
/* 0238D44C */ rbrew_write32(cpu->mem, _t80, cpu->r[26]);
|
|
/* 0238D450 */ _t81 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D450 */ _t82 = _t81 & 0x00000001u;
|
|
/* 0238D450 */ if (_t82) goto L_0238D454; else goto L_0238D45C;
|
|
L_0238D454: ; // 0x238d454
|
|
/* 0238D454 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0238D458 */ Gambit_fn_02801A78(cpu);
|
|
L_0238D45C: ; // 0x238d45c
|
|
/* 0238D45C */ cpu->r[6] = cpu->r[23] + 0x0000008Cu;
|
|
/* 0238D45C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 0238D460 */ _t83 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D460 */ _t84 = _t83 & 0x00000001u;
|
|
/* 0238D460 */ if (_t84) goto L_0238D464; else goto L_0238D46C;
|
|
L_0238D464: ; // 0x238d464
|
|
/* 0238D464 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0238D468 */ Gambit_fn_02801A78(cpu);
|
|
L_0238D46C: ; // 0x238d46c
|
|
/* 0238D46C */ _t85 = cpu->r[1] + 0x00000008u;
|
|
/* 0238D46C */ cpu->r[7] = rbrew_read32(cpu->mem, _t85);
|
|
/* 0238D470 */ _t86 = cpu->r[23] + 0x0000009Cu;
|
|
/* 0238D470 */ rbrew_write8(cpu->mem, _t86, (uint8_t)cpu->r[25]);
|
|
/* 0238D474 */ cpu->r[8] = 0xFFFFFFFFu;
|
|
/* 0238D478 */ _t87 = cpu->r[23] + 0x00000098u;
|
|
/* 0238D478 */ rbrew_write32(cpu->mem, _t87, cpu->r[7]);
|
|
/* 0238D47C */ _t88 = cpu->r[23] + 0x000000A0u;
|
|
/* 0238D47C */ rbrew_write32(cpu->mem, _t88, cpu->r[8]);
|
|
L_0238D480: ; // 0x238d480
|
|
/* 0238D480 */ _t89 = cpu->r[31] + 0x000000A4u;
|
|
/* 0238D480 */ rbrew_write32(cpu->mem, _t89, cpu->r[25]);
|
|
/* 0238D484 */ cpu->r[4] = cpu->r[31] + 0x000000A4u;
|
|
/* 0238D488 */ cpu->r[3] = cpu->r[29] + 0x000004DCu;
|
|
/* 0238D48C */ _t90 = cpu->r[31] + 0x000000A8u;
|
|
/* 0238D48C */ rbrew_write32(cpu->mem, _t90, cpu->r[25]);
|
|
/* 0238D490 */ Gambit_fn_02801EBC(cpu);
|
|
/* 0238D494 */ _t91 = cpu->r[29] + 0x000004E4u;
|
|
/* 0238D494 */ cpu->r[10] = rbrew_read32(cpu->mem, _t91);
|
|
/* 0238D498 */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 0238D49C */ cpu->r[3] = cpu->r[29] + 0x000007C4u;
|
|
/* 0238D4A0 */ _t92 = cpu->r[29] + 0x000004E4u;
|
|
/* 0238D4A0 */ rbrew_write32(cpu->mem, _t92, cpu->r[10]);
|
|
/* 0238D4A4 */ Gambit_fn_02837030(cpu);
|
|
/* 0238D4A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0238D4AC */ _t93 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D4AC */ _t94 = _t93 & 0x00000001u;
|
|
/* 0238D4AC */ if (_t94) goto L_0238D4B0; else goto L_0238D4E0;
|
|
L_0238D4B0: ; // 0x238d4b0
|
|
/* 0238D4B0 */ goto L_0238D514;
|
|
L_0238D4B4: ; // 0x238d4b4
|
|
/* 0238D4B4 */ cpu->r[4] = 0x000000A4u;
|
|
/* 0238D4B8 */ cpu->r[3] = cpu->r[29] + 0x000004DCu;
|
|
/* 0238D4BC */ cpu->r[31] = 0x00000000u;
|
|
/* 0238D4C0 */ Gambit_fn_02801EBC(cpu);
|
|
/* 0238D4C4 */ _t95 = cpu->r[29] + 0x000004E4u;
|
|
/* 0238D4C4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t95);
|
|
/* 0238D4C8 */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 0238D4CC */ cpu->r[3] = cpu->r[29] + 0x000007C4u;
|
|
/* 0238D4D0 */ _t96 = cpu->r[29] + 0x000004E4u;
|
|
/* 0238D4D0 */ rbrew_write32(cpu->mem, _t96, cpu->r[10]);
|
|
/* 0238D4D4 */ Gambit_fn_02837030(cpu);
|
|
/* 0238D4D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0238D4DC */ _t97 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D4DC */ _t98 = _t97 & 0x00000001u;
|
|
/* 0238D4DC */ if (_t98) goto L_0238D514; else goto L_0238D4E0;
|
|
L_0238D4E0: ; // 0x238d4e0
|
|
/* 0238D4E0 */ cpu->r[3] = cpu->r[29];
|
|
/* 0238D4E4 */ cpu->r[4] = cpu->r[31];
|
|
/* 0238D4E8 */ Gambit_fn_0238C684(cpu);
|
|
/* 0238D4EC */ _t99 = cpu->r[30] + 0x00000000u;
|
|
/* 0238D4EC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t99);
|
|
/* 0238D4F0 */ _t100 = cpu->r[31] + 0x00000080u;
|
|
/* 0238D4F0 */ rbrew_write_f32(cpu->mem, _t100, cpu->f[0]);
|
|
/* 0238D4F4 */ _t101 = cpu->r[30] + 0x00000004u;
|
|
/* 0238D4F4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t101);
|
|
/* 0238D4F8 */ cpu->r[12] = 0x00000001u;
|
|
/* 0238D4FC */ _t102 = cpu->r[31] + 0x00000084u;
|
|
/* 0238D4FC */ rbrew_write_f32(cpu->mem, _t102, cpu->f[0]);
|
|
/* 0238D500 */ _t103 = cpu->r[30] + 0x00000008u;
|
|
/* 0238D500 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t103);
|
|
/* 0238D504 */ _t104 = cpu->r[31] + 0x0000009Cu;
|
|
/* 0238D504 */ rbrew_write8(cpu->mem, _t104, (uint8_t)cpu->r[12]);
|
|
/* 0238D508 */ cpu->r[3] = cpu->r[29];
|
|
/* 0238D50C */ _t105 = cpu->r[31] + 0x00000088u;
|
|
/* 0238D50C */ rbrew_write_f32(cpu->mem, _t105, cpu->f[0]);
|
|
/* 0238D510 */ Gambit_fn_0238C0E0(cpu);
|
|
L_0238D514: ; // 0x238d514
|
|
/* 0238D514 */ /* nop */
|
|
/* 0238D518 */ _t106 = cpu->r[1] + 0x00000044u;
|
|
/* 0238D518 */ cpu->r[0] = rbrew_read32(cpu->mem, _t106);
|
|
/* 0238D51C */ cpu->lr = cpu->r[0];
|
|
/* 0238D520 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 0238D524 */ return;
|
|
}
|
|
|
|
// fn_0238D528 @ 0x238d528
|
|
void Gambit_fn_0238D528(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106;
|
|
|
|
L_0238D528: ; // 0x238d528
|
|
/* 0238D528 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 0238D528 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0238D528 */ cpu->r[1] = _t0;
|
|
/* 0238D52C */ /* nop */
|
|
/* 0238D530 */ cpu->r[0] = cpu->lr;
|
|
/* 0238D534 */ _t1 = cpu->r[1] + 0x00000044u;
|
|
/* 0238D534 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0238D538 */ cpu->r[29] = cpu->r[3];
|
|
/* 0238D53C */ _t2 = cpu->r[29] + 0x00000505u;
|
|
/* 0238D53C */ cpu->r[11] = rbrew_read8(cpu->mem, _t2);
|
|
/* 0238D540 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0238D544 */ cpu->r[30] = cpu->r[4];
|
|
/* 0238D548 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D548 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0238D548 */ if (_t4) goto L_0238D7EC; else goto L_0238D54C;
|
|
L_0238D54C: ; // 0x238d54c
|
|
/* 0238D54C */ _t5 = cpu->r[29] + 0x00000504u;
|
|
/* 0238D54C */ cpu->r[0] = rbrew_read8(cpu->mem, _t5);
|
|
/* 0238D550 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0238D554 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D554 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0238D554 */ if (_t7) goto L_0238D7EC; else goto L_0238D558;
|
|
L_0238D558: ; // 0x238d558
|
|
/* 0238D558 */ cpu->r[3] = cpu->r[29] + 0x000007C4u;
|
|
/* 0238D55C */ Gambit_fn_02836FFC(cpu);
|
|
/* 0238D560 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0238D564 */ _t8 = cpu->r[3] + 0x00006000u;
|
|
/* 0238D564 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0238D568 */ _t9 = cpu->r[3] + 0x00000004u;
|
|
/* 0238D568 */ cpu->r[6] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0238D56C */ _t10 = cpu->r[6] + 0x0000012Cu;
|
|
/* 0238D56C */ cpu->r[7] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0238D570 */ cpu->ctr = cpu->r[7];
|
|
/* 0238D574 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0238D578 */ _t11 = cpu->r[29] + 0x000004E4u;
|
|
/* 0238D578 */ cpu->r[8] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0238D57C */ cpu->r[26] = cpu->r[3];
|
|
/* 0238D580 */ _t12 = cpu->r[29] + 0x000004F0u;
|
|
/* 0238D580 */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0238D584 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], cpu->r[9]);
|
|
/* 0238D588 */ cpu->r[25] = 0x00000000u;
|
|
/* 0238D58C */ _t13 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0238D58C */ _t14 = _t13 & 0x00000001u;
|
|
/* 0238D58C */ if (_t14) goto L_0238D5B0; else goto L_0238D590;
|
|
L_0238D590: ; // 0x238d590
|
|
/* 0238D590 */ cpu->r[3] = cpu->r[29] + 0x000007C4u;
|
|
/* 0238D594 */ cpu->r[31] = 0x00000000u;
|
|
/* 0238D598 */ Gambit_fn_02837030(cpu);
|
|
/* 0238D59C */ /* nop */
|
|
/* 0238D5A0 */ _t15 = cpu->r[1] + 0x00000044u;
|
|
/* 0238D5A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0238D5A4 */ cpu->lr = cpu->r[0];
|
|
/* 0238D5A8 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 0238D5AC */ return;
|
|
L_0238D5B0: ; // 0x238d5b0
|
|
/* 0238D5B0 */ _t16 = cpu->r[29] + 0x000004E8u;
|
|
/* 0238D5B0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0238D5B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0238D5B8 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D5B8 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0238D5B8 */ if (_t18) goto L_0238D5C4; else goto L_0238D5BC;
|
|
L_0238D5BC: ; // 0x238d5bc
|
|
/* 0238D5BC */ _t19 = cpu->r[31] + 0x00000000u;
|
|
/* 0238D5BC */ cpu->r[10] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0238D5C0 */ _t20 = cpu->r[29] + 0x000004E8u;
|
|
/* 0238D5C0 */ rbrew_write32(cpu->mem, _t20, cpu->r[10]);
|
|
L_0238D5C4: ; // 0x238d5c4
|
|
/* 0238D5C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0238D5C8 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D5C8 */ _t22 = _t21 & 0x00000001u;
|
|
/* 0238D5C8 */ if (_t22) goto L_0238D78C; else goto L_0238D5CC;
|
|
L_0238D5CC: ; // 0x238d5cc
|
|
/* 0238D5CC */ cpu->r[11] = 0x00000006u;
|
|
/* 0238D5D0 */ cpu->r[23] = cpu->r[31];
|
|
/* 0238D5D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], 0x00000000u);
|
|
/* 0238D5D4 */ _t23 = cpu->r[1] + 0x00000008u;
|
|
/* 0238D5D4 */ rbrew_write32(cpu->mem, _t23, cpu->r[11]);
|
|
/* 0238D5D8 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D5D8 */ _t25 = _t24 & 0x00000001u;
|
|
/* 0238D5D8 */ if (_t25) goto L_0238D5DC; else goto L_0238D5EC;
|
|
L_0238D5DC: ; // 0x238d5dc
|
|
/* 0238D5DC */ cpu->r[3] = 0x000000A4u;
|
|
/* 0238D5E0 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238D5E4 */ cpu->r[23] = cpu->r[3];
|
|
/* 0238D5E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], 0x00000000u);
|
|
/* 0238D5E8 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D5E8 */ _t27 = _t26 & 0x00000001u;
|
|
/* 0238D5E8 */ if (_t27) goto L_0238D758; else goto L_0238D5EC;
|
|
L_0238D5EC: ; // 0x238d5ec
|
|
/* 0238D5EC */ cpu->r[22] = 0x10080000u;
|
|
/* 0238D5F0 */ cpu->r[27] = cpu->r[23];
|
|
/* 0238D5F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0238D5F4 */ cpu->r[24] = 0x10080000u;
|
|
/* 0238D5F8 */ cpu->r[22] = cpu->r[22] + 0x000062A8u;
|
|
/* 0238D5FC */ cpu->r[21] = 0x10080000u;
|
|
/* 0238D600 */ cpu->r[24] = cpu->r[24] + 0x00006290u;
|
|
/* 0238D604 */ cpu->r[20] = 0x10110000u;
|
|
/* 0238D608 */ cpu->r[21] = cpu->r[21] + 0x000062C0u;
|
|
/* 0238D60C */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D60C */ _t29 = _t28 & 0x00000001u;
|
|
/* 0238D60C */ if (_t29) goto L_0238D610; else goto L_0238D620;
|
|
L_0238D610: ; // 0x238d610
|
|
/* 0238D610 */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0238D614 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238D618 */ cpu->r[27] = cpu->r[3];
|
|
/* 0238D618 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0238D61C */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D61C */ _t31 = _t30 & 0x00000001u;
|
|
/* 0238D61C */ if (_t31) goto L_0238D694; else goto L_0238D620;
|
|
L_0238D620: ; // 0x238d620
|
|
/* 0238D620 */ cpu->r[28] = cpu->r[27];
|
|
/* 0238D620 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 0238D624 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D624 */ _t33 = _t32 & 0x00000001u;
|
|
/* 0238D624 */ if (_t33) goto L_0238D628; else goto L_0238D638;
|
|
L_0238D628: ; // 0x238d628
|
|
/* 0238D628 */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0238D62C */ Gambit_fn_02801A78(cpu);
|
|
/* 0238D630 */ cpu->r[28] = cpu->r[3];
|
|
/* 0238D630 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 0238D634 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D634 */ _t35 = _t34 & 0x00000001u;
|
|
/* 0238D634 */ if (_t35) goto L_0238D690; else goto L_0238D638;
|
|
L_0238D638: ; // 0x238d638
|
|
/* 0238D638 */ cpu->r[3] = cpu->r[28];
|
|
/* 0238D638 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238D63C */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D63C */ _t37 = _t36 & 0x00000001u;
|
|
/* 0238D63C */ if (_t37) goto L_0238D640; else goto L_0238D668;
|
|
L_0238D640: ; // 0x238d640
|
|
/* 0238D640 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0238D644 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238D648 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238D64C */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D64C */ _t39 = _t38 & 0x00000001u;
|
|
/* 0238D64C */ if (_t39) goto L_0238D650; else goto L_0238D668;
|
|
L_0238D650: ; // 0x238d650
|
|
/* 0238D650 */ _t40 = cpu->r[28] + 0x00000000u;
|
|
/* 0238D650 */ cpu->r[9] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0238D654 */ _t41 = cpu->r[20] + 0x00007399u;
|
|
/* 0238D654 */ cpu->r[0] = rbrew_read8(cpu->mem, _t41);
|
|
/* 0238D658 */ _t42 = cpu->r[28] + 0x00000004u;
|
|
/* 0238D658 */ rbrew_write32(cpu->mem, _t42, cpu->r[22]);
|
|
/* 0238D65C */ _t43 = cpu->r[9] + 0x00000000u;
|
|
/* 0238D65C */ rbrew_write8(cpu->mem, _t43, (uint8_t)cpu->r[0]);
|
|
/* 0238D660 */ _t44 = cpu->r[27] + 0x00000004u;
|
|
/* 0238D660 */ rbrew_write32(cpu->mem, _t44, cpu->r[21]);
|
|
/* 0238D664 */ goto L_0238D694;
|
|
L_0238D668: ; // 0x238d668
|
|
/* 0238D668 */ cpu->r[12] = cpu->r[28] + 0x0000000Cu;
|
|
/* 0238D66C */ _t45 = cpu->r[3] + 0x00000004u;
|
|
/* 0238D66C */ rbrew_write32(cpu->mem, _t45, cpu->r[24]);
|
|
/* 0238D670 */ cpu->r[0] = 0x00000020u;
|
|
/* 0238D674 */ _t46 = cpu->r[3] + 0x00000000u;
|
|
/* 0238D674 */ rbrew_write32(cpu->mem, _t46, cpu->r[12]);
|
|
/* 0238D678 */ _t47 = cpu->r[3] + 0x00000008u;
|
|
/* 0238D678 */ rbrew_write32(cpu->mem, _t47, cpu->r[0]);
|
|
/* 0238D67C */ _t48 = cpu->r[20] + 0x00007399u;
|
|
/* 0238D67C */ cpu->r[0] = rbrew_read8(cpu->mem, _t48);
|
|
/* 0238D680 */ _t49 = cpu->r[28] + 0x00000004u;
|
|
/* 0238D680 */ rbrew_write32(cpu->mem, _t49, cpu->r[22]);
|
|
/* 0238D684 */ _t50 = cpu->r[28] + 0x00000000u;
|
|
/* 0238D684 */ cpu->r[9] = rbrew_read32(cpu->mem, _t50);
|
|
/* 0238D688 */ _t51 = cpu->r[28] + 0x0000002Bu;
|
|
/* 0238D688 */ rbrew_write8(cpu->mem, _t51, (uint8_t)cpu->r[0]);
|
|
/* 0238D68C */ _t52 = cpu->r[9] + 0x00000000u;
|
|
/* 0238D68C */ rbrew_write8(cpu->mem, _t52, (uint8_t)cpu->r[0]);
|
|
L_0238D690: ; // 0x238d690
|
|
/* 0238D690 */ _t53 = cpu->r[27] + 0x00000004u;
|
|
/* 0238D690 */ rbrew_write32(cpu->mem, _t53, cpu->r[21]);
|
|
L_0238D694: ; // 0x238d694
|
|
/* 0238D694 */ cpu->r[27] = cpu->r[23] + 0x0000002Cu;
|
|
/* 0238D694 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0238D698 */ _t54 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D698 */ _t55 = _t54 & 0x00000001u;
|
|
/* 0238D698 */ if (_t55) goto L_0238D69C; else goto L_0238D6AC;
|
|
L_0238D69C: ; // 0x238d69c
|
|
/* 0238D69C */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0238D6A0 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238D6A4 */ cpu->r[27] = cpu->r[3];
|
|
/* 0238D6A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0238D6A8 */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D6A8 */ _t57 = _t56 & 0x00000001u;
|
|
/* 0238D6A8 */ if (_t57) goto L_0238D720; else goto L_0238D6AC;
|
|
L_0238D6AC: ; // 0x238d6ac
|
|
/* 0238D6AC */ cpu->r[28] = cpu->r[27];
|
|
/* 0238D6AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 0238D6B0 */ _t58 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D6B0 */ _t59 = _t58 & 0x00000001u;
|
|
/* 0238D6B0 */ if (_t59) goto L_0238D6B4; else goto L_0238D6C4;
|
|
L_0238D6B4: ; // 0x238d6b4
|
|
/* 0238D6B4 */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0238D6B8 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238D6BC */ cpu->r[28] = cpu->r[3];
|
|
/* 0238D6BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 0238D6C0 */ _t60 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D6C0 */ _t61 = _t60 & 0x00000001u;
|
|
/* 0238D6C0 */ if (_t61) goto L_0238D71C; else goto L_0238D6C4;
|
|
L_0238D6C4: ; // 0x238d6c4
|
|
/* 0238D6C4 */ cpu->r[3] = cpu->r[28];
|
|
/* 0238D6C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238D6C8 */ _t62 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D6C8 */ _t63 = _t62 & 0x00000001u;
|
|
/* 0238D6C8 */ if (_t63) goto L_0238D6CC; else goto L_0238D6F4;
|
|
L_0238D6CC: ; // 0x238d6cc
|
|
/* 0238D6CC */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0238D6D0 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238D6D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238D6D8 */ _t64 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D6D8 */ _t65 = _t64 & 0x00000001u;
|
|
/* 0238D6D8 */ if (_t65) goto L_0238D6DC; else goto L_0238D6F4;
|
|
L_0238D6DC: ; // 0x238d6dc
|
|
/* 0238D6DC */ _t66 = cpu->r[28] + 0x00000000u;
|
|
/* 0238D6DC */ cpu->r[12] = rbrew_read32(cpu->mem, _t66);
|
|
/* 0238D6E0 */ _t67 = cpu->r[20] + 0x00007399u;
|
|
/* 0238D6E0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t67);
|
|
/* 0238D6E4 */ _t68 = cpu->r[28] + 0x00000004u;
|
|
/* 0238D6E4 */ rbrew_write32(cpu->mem, _t68, cpu->r[22]);
|
|
/* 0238D6E8 */ _t69 = cpu->r[12] + 0x00000000u;
|
|
/* 0238D6E8 */ rbrew_write8(cpu->mem, _t69, (uint8_t)cpu->r[0]);
|
|
/* 0238D6EC */ _t70 = cpu->r[27] + 0x00000004u;
|
|
/* 0238D6EC */ rbrew_write32(cpu->mem, _t70, cpu->r[21]);
|
|
/* 0238D6F0 */ goto L_0238D720;
|
|
L_0238D6F4: ; // 0x238d6f4
|
|
/* 0238D6F4 */ cpu->r[10] = cpu->r[28] + 0x0000000Cu;
|
|
/* 0238D6F8 */ _t71 = cpu->r[3] + 0x00000004u;
|
|
/* 0238D6F8 */ rbrew_write32(cpu->mem, _t71, cpu->r[24]);
|
|
/* 0238D6FC */ cpu->r[11] = 0x00000020u;
|
|
/* 0238D700 */ _t72 = cpu->r[3] + 0x00000000u;
|
|
/* 0238D700 */ rbrew_write32(cpu->mem, _t72, cpu->r[10]);
|
|
/* 0238D704 */ _t73 = cpu->r[3] + 0x00000008u;
|
|
/* 0238D704 */ rbrew_write32(cpu->mem, _t73, cpu->r[11]);
|
|
/* 0238D708 */ _t74 = cpu->r[20] + 0x00007399u;
|
|
/* 0238D708 */ cpu->r[0] = rbrew_read8(cpu->mem, _t74);
|
|
/* 0238D70C */ _t75 = cpu->r[28] + 0x00000004u;
|
|
/* 0238D70C */ rbrew_write32(cpu->mem, _t75, cpu->r[22]);
|
|
/* 0238D710 */ _t76 = cpu->r[28] + 0x00000000u;
|
|
/* 0238D710 */ cpu->r[12] = rbrew_read32(cpu->mem, _t76);
|
|
/* 0238D714 */ _t77 = cpu->r[28] + 0x0000002Bu;
|
|
/* 0238D714 */ rbrew_write8(cpu->mem, _t77, (uint8_t)cpu->r[0]);
|
|
/* 0238D718 */ _t78 = cpu->r[12] + 0x00000000u;
|
|
/* 0238D718 */ rbrew_write8(cpu->mem, _t78, (uint8_t)cpu->r[0]);
|
|
L_0238D71C: ; // 0x238d71c
|
|
/* 0238D71C */ _t79 = cpu->r[27] + 0x00000004u;
|
|
/* 0238D71C */ rbrew_write32(cpu->mem, _t79, cpu->r[21]);
|
|
L_0238D720: ; // 0x238d720
|
|
/* 0238D720 */ cpu->r[0] = cpu->r[23] + 0x00000080u;
|
|
/* 0238D720 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0238D724 */ _t80 = cpu->r[23] + 0x00000058u;
|
|
/* 0238D724 */ rbrew_write32(cpu->mem, _t80, cpu->r[26]);
|
|
/* 0238D728 */ _t81 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D728 */ _t82 = _t81 & 0x00000001u;
|
|
/* 0238D728 */ if (_t82) goto L_0238D72C; else goto L_0238D734;
|
|
L_0238D72C: ; // 0x238d72c
|
|
/* 0238D72C */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0238D730 */ Gambit_fn_02801A78(cpu);
|
|
L_0238D734: ; // 0x238d734
|
|
/* 0238D734 */ cpu->r[6] = cpu->r[23] + 0x0000008Cu;
|
|
/* 0238D734 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 0238D738 */ _t83 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D738 */ _t84 = _t83 & 0x00000001u;
|
|
/* 0238D738 */ if (_t84) goto L_0238D73C; else goto L_0238D744;
|
|
L_0238D73C: ; // 0x238d73c
|
|
/* 0238D73C */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0238D740 */ Gambit_fn_02801A78(cpu);
|
|
L_0238D744: ; // 0x238d744
|
|
/* 0238D744 */ _t85 = cpu->r[1] + 0x00000008u;
|
|
/* 0238D744 */ cpu->r[7] = rbrew_read32(cpu->mem, _t85);
|
|
/* 0238D748 */ _t86 = cpu->r[23] + 0x0000009Cu;
|
|
/* 0238D748 */ rbrew_write8(cpu->mem, _t86, (uint8_t)cpu->r[25]);
|
|
/* 0238D74C */ cpu->r[8] = 0xFFFFFFFFu;
|
|
/* 0238D750 */ _t87 = cpu->r[23] + 0x00000098u;
|
|
/* 0238D750 */ rbrew_write32(cpu->mem, _t87, cpu->r[7]);
|
|
/* 0238D754 */ _t88 = cpu->r[23] + 0x000000A0u;
|
|
/* 0238D754 */ rbrew_write32(cpu->mem, _t88, cpu->r[8]);
|
|
L_0238D758: ; // 0x238d758
|
|
/* 0238D758 */ _t89 = cpu->r[31] + 0x000000A4u;
|
|
/* 0238D758 */ rbrew_write32(cpu->mem, _t89, cpu->r[25]);
|
|
/* 0238D75C */ cpu->r[4] = cpu->r[31] + 0x000000A4u;
|
|
/* 0238D760 */ cpu->r[3] = cpu->r[29] + 0x000004DCu;
|
|
/* 0238D764 */ _t90 = cpu->r[31] + 0x000000A8u;
|
|
/* 0238D764 */ rbrew_write32(cpu->mem, _t90, cpu->r[25]);
|
|
/* 0238D768 */ Gambit_fn_02801EBC(cpu);
|
|
/* 0238D76C */ _t91 = cpu->r[29] + 0x000004E4u;
|
|
/* 0238D76C */ cpu->r[10] = rbrew_read32(cpu->mem, _t91);
|
|
/* 0238D770 */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 0238D774 */ cpu->r[3] = cpu->r[29] + 0x000007C4u;
|
|
/* 0238D778 */ _t92 = cpu->r[29] + 0x000004E4u;
|
|
/* 0238D778 */ rbrew_write32(cpu->mem, _t92, cpu->r[10]);
|
|
/* 0238D77C */ Gambit_fn_02837030(cpu);
|
|
/* 0238D780 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0238D784 */ _t93 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D784 */ _t94 = _t93 & 0x00000001u;
|
|
/* 0238D784 */ if (_t94) goto L_0238D788; else goto L_0238D7B8;
|
|
L_0238D788: ; // 0x238d788
|
|
/* 0238D788 */ goto L_0238D7EC;
|
|
L_0238D78C: ; // 0x238d78c
|
|
/* 0238D78C */ cpu->r[4] = 0x000000A4u;
|
|
/* 0238D790 */ cpu->r[3] = cpu->r[29] + 0x000004DCu;
|
|
/* 0238D794 */ cpu->r[31] = 0x00000000u;
|
|
/* 0238D798 */ Gambit_fn_02801EBC(cpu);
|
|
/* 0238D79C */ _t95 = cpu->r[29] + 0x000004E4u;
|
|
/* 0238D79C */ cpu->r[10] = rbrew_read32(cpu->mem, _t95);
|
|
/* 0238D7A0 */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 0238D7A4 */ cpu->r[3] = cpu->r[29] + 0x000007C4u;
|
|
/* 0238D7A8 */ _t96 = cpu->r[29] + 0x000004E4u;
|
|
/* 0238D7A8 */ rbrew_write32(cpu->mem, _t96, cpu->r[10]);
|
|
/* 0238D7AC */ Gambit_fn_02837030(cpu);
|
|
/* 0238D7B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0238D7B4 */ _t97 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D7B4 */ _t98 = _t97 & 0x00000001u;
|
|
/* 0238D7B4 */ if (_t98) goto L_0238D7EC; else goto L_0238D7B8;
|
|
L_0238D7B8: ; // 0x238d7b8
|
|
/* 0238D7B8 */ cpu->r[3] = cpu->r[29];
|
|
/* 0238D7BC */ cpu->r[4] = cpu->r[31];
|
|
/* 0238D7C0 */ Gambit_fn_0238C684(cpu);
|
|
/* 0238D7C4 */ _t99 = cpu->r[30] + 0x00000000u;
|
|
/* 0238D7C4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t99);
|
|
/* 0238D7C8 */ _t100 = cpu->r[31] + 0x00000080u;
|
|
/* 0238D7C8 */ rbrew_write_f32(cpu->mem, _t100, cpu->f[0]);
|
|
/* 0238D7CC */ _t101 = cpu->r[30] + 0x00000004u;
|
|
/* 0238D7CC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t101);
|
|
/* 0238D7D0 */ cpu->r[12] = 0x00000001u;
|
|
/* 0238D7D4 */ _t102 = cpu->r[31] + 0x00000084u;
|
|
/* 0238D7D4 */ rbrew_write_f32(cpu->mem, _t102, cpu->f[0]);
|
|
/* 0238D7D8 */ _t103 = cpu->r[30] + 0x00000008u;
|
|
/* 0238D7D8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t103);
|
|
/* 0238D7DC */ _t104 = cpu->r[31] + 0x0000009Cu;
|
|
/* 0238D7DC */ rbrew_write8(cpu->mem, _t104, (uint8_t)cpu->r[12]);
|
|
/* 0238D7E0 */ cpu->r[3] = cpu->r[29];
|
|
/* 0238D7E4 */ _t105 = cpu->r[31] + 0x00000088u;
|
|
/* 0238D7E4 */ rbrew_write_f32(cpu->mem, _t105, cpu->f[0]);
|
|
/* 0238D7E8 */ Gambit_fn_0238C0E0(cpu);
|
|
L_0238D7EC: ; // 0x238d7ec
|
|
/* 0238D7EC */ /* nop */
|
|
/* 0238D7F0 */ _t106 = cpu->r[1] + 0x00000044u;
|
|
/* 0238D7F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t106);
|
|
/* 0238D7F4 */ cpu->lr = cpu->r[0];
|
|
/* 0238D7F8 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 0238D7FC */ return;
|
|
}
|
|
|
|
// fn_0238D800 @ 0x238d800
|
|
void Gambit_fn_0238D800(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106;
|
|
|
|
L_0238D800: ; // 0x238d800
|
|
/* 0238D800 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 0238D800 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0238D800 */ cpu->r[1] = _t0;
|
|
/* 0238D804 */ /* nop */
|
|
/* 0238D808 */ cpu->r[0] = cpu->lr;
|
|
/* 0238D80C */ _t1 = cpu->r[1] + 0x00000044u;
|
|
/* 0238D80C */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0238D810 */ cpu->r[29] = cpu->r[3];
|
|
/* 0238D814 */ _t2 = cpu->r[29] + 0x00000505u;
|
|
/* 0238D814 */ cpu->r[11] = rbrew_read8(cpu->mem, _t2);
|
|
/* 0238D818 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0238D81C */ cpu->r[30] = cpu->r[4];
|
|
/* 0238D820 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D820 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0238D820 */ if (_t4) goto L_0238DAC4; else goto L_0238D824;
|
|
L_0238D824: ; // 0x238d824
|
|
/* 0238D824 */ _t5 = cpu->r[29] + 0x00000504u;
|
|
/* 0238D824 */ cpu->r[0] = rbrew_read8(cpu->mem, _t5);
|
|
/* 0238D828 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0238D82C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D82C */ _t7 = _t6 & 0x00000001u;
|
|
/* 0238D82C */ if (_t7) goto L_0238DAC4; else goto L_0238D830;
|
|
L_0238D830: ; // 0x238d830
|
|
/* 0238D830 */ cpu->r[3] = cpu->r[29] + 0x000007C4u;
|
|
/* 0238D834 */ Gambit_fn_02836FFC(cpu);
|
|
/* 0238D838 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0238D83C */ _t8 = cpu->r[3] + 0x00006000u;
|
|
/* 0238D83C */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0238D840 */ _t9 = cpu->r[3] + 0x00000004u;
|
|
/* 0238D840 */ cpu->r[6] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0238D844 */ _t10 = cpu->r[6] + 0x0000012Cu;
|
|
/* 0238D844 */ cpu->r[7] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0238D848 */ cpu->ctr = cpu->r[7];
|
|
/* 0238D84C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0238D850 */ _t11 = cpu->r[29] + 0x000004E4u;
|
|
/* 0238D850 */ cpu->r[8] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0238D854 */ cpu->r[26] = cpu->r[3];
|
|
/* 0238D858 */ _t12 = cpu->r[29] + 0x000004F0u;
|
|
/* 0238D858 */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0238D85C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], cpu->r[9]);
|
|
/* 0238D860 */ cpu->r[25] = 0x00000000u;
|
|
/* 0238D864 */ _t13 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0238D864 */ _t14 = _t13 & 0x00000001u;
|
|
/* 0238D864 */ if (_t14) goto L_0238D888; else goto L_0238D868;
|
|
L_0238D868: ; // 0x238d868
|
|
/* 0238D868 */ cpu->r[3] = cpu->r[29] + 0x000007C4u;
|
|
/* 0238D86C */ cpu->r[31] = 0x00000000u;
|
|
/* 0238D870 */ Gambit_fn_02837030(cpu);
|
|
/* 0238D874 */ /* nop */
|
|
/* 0238D878 */ _t15 = cpu->r[1] + 0x00000044u;
|
|
/* 0238D878 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0238D87C */ cpu->lr = cpu->r[0];
|
|
/* 0238D880 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 0238D884 */ return;
|
|
L_0238D888: ; // 0x238d888
|
|
/* 0238D888 */ _t16 = cpu->r[29] + 0x000004E8u;
|
|
/* 0238D888 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0238D88C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0238D890 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D890 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0238D890 */ if (_t18) goto L_0238D89C; else goto L_0238D894;
|
|
L_0238D894: ; // 0x238d894
|
|
/* 0238D894 */ _t19 = cpu->r[31] + 0x00000000u;
|
|
/* 0238D894 */ cpu->r[10] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0238D898 */ _t20 = cpu->r[29] + 0x000004E8u;
|
|
/* 0238D898 */ rbrew_write32(cpu->mem, _t20, cpu->r[10]);
|
|
L_0238D89C: ; // 0x238d89c
|
|
/* 0238D89C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0238D8A0 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D8A0 */ _t22 = _t21 & 0x00000001u;
|
|
/* 0238D8A0 */ if (_t22) goto L_0238DA64; else goto L_0238D8A4;
|
|
L_0238D8A4: ; // 0x238d8a4
|
|
/* 0238D8A4 */ cpu->r[11] = 0x00000007u;
|
|
/* 0238D8A8 */ cpu->r[23] = cpu->r[31];
|
|
/* 0238D8A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], 0x00000000u);
|
|
/* 0238D8AC */ _t23 = cpu->r[1] + 0x00000008u;
|
|
/* 0238D8AC */ rbrew_write32(cpu->mem, _t23, cpu->r[11]);
|
|
/* 0238D8B0 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D8B0 */ _t25 = _t24 & 0x00000001u;
|
|
/* 0238D8B0 */ if (_t25) goto L_0238D8B4; else goto L_0238D8C4;
|
|
L_0238D8B4: ; // 0x238d8b4
|
|
/* 0238D8B4 */ cpu->r[3] = 0x000000A4u;
|
|
/* 0238D8B8 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238D8BC */ cpu->r[23] = cpu->r[3];
|
|
/* 0238D8BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], 0x00000000u);
|
|
/* 0238D8C0 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D8C0 */ _t27 = _t26 & 0x00000001u;
|
|
/* 0238D8C0 */ if (_t27) goto L_0238DA30; else goto L_0238D8C4;
|
|
L_0238D8C4: ; // 0x238d8c4
|
|
/* 0238D8C4 */ cpu->r[22] = 0x10080000u;
|
|
/* 0238D8C8 */ cpu->r[27] = cpu->r[23];
|
|
/* 0238D8C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0238D8CC */ cpu->r[24] = 0x10080000u;
|
|
/* 0238D8D0 */ cpu->r[22] = cpu->r[22] + 0x000062A8u;
|
|
/* 0238D8D4 */ cpu->r[21] = 0x10080000u;
|
|
/* 0238D8D8 */ cpu->r[24] = cpu->r[24] + 0x00006290u;
|
|
/* 0238D8DC */ cpu->r[20] = 0x10110000u;
|
|
/* 0238D8E0 */ cpu->r[21] = cpu->r[21] + 0x000062C0u;
|
|
/* 0238D8E4 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D8E4 */ _t29 = _t28 & 0x00000001u;
|
|
/* 0238D8E4 */ if (_t29) goto L_0238D8E8; else goto L_0238D8F8;
|
|
L_0238D8E8: ; // 0x238d8e8
|
|
/* 0238D8E8 */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0238D8EC */ Gambit_fn_02801A78(cpu);
|
|
/* 0238D8F0 */ cpu->r[27] = cpu->r[3];
|
|
/* 0238D8F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0238D8F4 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D8F4 */ _t31 = _t30 & 0x00000001u;
|
|
/* 0238D8F4 */ if (_t31) goto L_0238D96C; else goto L_0238D8F8;
|
|
L_0238D8F8: ; // 0x238d8f8
|
|
/* 0238D8F8 */ cpu->r[28] = cpu->r[27];
|
|
/* 0238D8F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 0238D8FC */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D8FC */ _t33 = _t32 & 0x00000001u;
|
|
/* 0238D8FC */ if (_t33) goto L_0238D900; else goto L_0238D910;
|
|
L_0238D900: ; // 0x238d900
|
|
/* 0238D900 */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0238D904 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238D908 */ cpu->r[28] = cpu->r[3];
|
|
/* 0238D908 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 0238D90C */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D90C */ _t35 = _t34 & 0x00000001u;
|
|
/* 0238D90C */ if (_t35) goto L_0238D968; else goto L_0238D910;
|
|
L_0238D910: ; // 0x238d910
|
|
/* 0238D910 */ cpu->r[3] = cpu->r[28];
|
|
/* 0238D910 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238D914 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D914 */ _t37 = _t36 & 0x00000001u;
|
|
/* 0238D914 */ if (_t37) goto L_0238D918; else goto L_0238D940;
|
|
L_0238D918: ; // 0x238d918
|
|
/* 0238D918 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0238D91C */ Gambit_fn_02801A78(cpu);
|
|
/* 0238D920 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238D924 */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D924 */ _t39 = _t38 & 0x00000001u;
|
|
/* 0238D924 */ if (_t39) goto L_0238D928; else goto L_0238D940;
|
|
L_0238D928: ; // 0x238d928
|
|
/* 0238D928 */ _t40 = cpu->r[28] + 0x00000000u;
|
|
/* 0238D928 */ cpu->r[9] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0238D92C */ _t41 = cpu->r[20] + 0x00007399u;
|
|
/* 0238D92C */ cpu->r[0] = rbrew_read8(cpu->mem, _t41);
|
|
/* 0238D930 */ _t42 = cpu->r[28] + 0x00000004u;
|
|
/* 0238D930 */ rbrew_write32(cpu->mem, _t42, cpu->r[22]);
|
|
/* 0238D934 */ _t43 = cpu->r[9] + 0x00000000u;
|
|
/* 0238D934 */ rbrew_write8(cpu->mem, _t43, (uint8_t)cpu->r[0]);
|
|
/* 0238D938 */ _t44 = cpu->r[27] + 0x00000004u;
|
|
/* 0238D938 */ rbrew_write32(cpu->mem, _t44, cpu->r[21]);
|
|
/* 0238D93C */ goto L_0238D96C;
|
|
L_0238D940: ; // 0x238d940
|
|
/* 0238D940 */ cpu->r[12] = cpu->r[28] + 0x0000000Cu;
|
|
/* 0238D944 */ _t45 = cpu->r[3] + 0x00000004u;
|
|
/* 0238D944 */ rbrew_write32(cpu->mem, _t45, cpu->r[24]);
|
|
/* 0238D948 */ cpu->r[0] = 0x00000020u;
|
|
/* 0238D94C */ _t46 = cpu->r[3] + 0x00000000u;
|
|
/* 0238D94C */ rbrew_write32(cpu->mem, _t46, cpu->r[12]);
|
|
/* 0238D950 */ _t47 = cpu->r[3] + 0x00000008u;
|
|
/* 0238D950 */ rbrew_write32(cpu->mem, _t47, cpu->r[0]);
|
|
/* 0238D954 */ _t48 = cpu->r[20] + 0x00007399u;
|
|
/* 0238D954 */ cpu->r[0] = rbrew_read8(cpu->mem, _t48);
|
|
/* 0238D958 */ _t49 = cpu->r[28] + 0x00000004u;
|
|
/* 0238D958 */ rbrew_write32(cpu->mem, _t49, cpu->r[22]);
|
|
/* 0238D95C */ _t50 = cpu->r[28] + 0x00000000u;
|
|
/* 0238D95C */ cpu->r[9] = rbrew_read32(cpu->mem, _t50);
|
|
/* 0238D960 */ _t51 = cpu->r[28] + 0x0000002Bu;
|
|
/* 0238D960 */ rbrew_write8(cpu->mem, _t51, (uint8_t)cpu->r[0]);
|
|
/* 0238D964 */ _t52 = cpu->r[9] + 0x00000000u;
|
|
/* 0238D964 */ rbrew_write8(cpu->mem, _t52, (uint8_t)cpu->r[0]);
|
|
L_0238D968: ; // 0x238d968
|
|
/* 0238D968 */ _t53 = cpu->r[27] + 0x00000004u;
|
|
/* 0238D968 */ rbrew_write32(cpu->mem, _t53, cpu->r[21]);
|
|
L_0238D96C: ; // 0x238d96c
|
|
/* 0238D96C */ cpu->r[27] = cpu->r[23] + 0x0000002Cu;
|
|
/* 0238D96C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0238D970 */ _t54 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D970 */ _t55 = _t54 & 0x00000001u;
|
|
/* 0238D970 */ if (_t55) goto L_0238D974; else goto L_0238D984;
|
|
L_0238D974: ; // 0x238d974
|
|
/* 0238D974 */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0238D978 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238D97C */ cpu->r[27] = cpu->r[3];
|
|
/* 0238D97C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0238D980 */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D980 */ _t57 = _t56 & 0x00000001u;
|
|
/* 0238D980 */ if (_t57) goto L_0238D9F8; else goto L_0238D984;
|
|
L_0238D984: ; // 0x238d984
|
|
/* 0238D984 */ cpu->r[28] = cpu->r[27];
|
|
/* 0238D984 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 0238D988 */ _t58 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D988 */ _t59 = _t58 & 0x00000001u;
|
|
/* 0238D988 */ if (_t59) goto L_0238D98C; else goto L_0238D99C;
|
|
L_0238D98C: ; // 0x238d98c
|
|
/* 0238D98C */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0238D990 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238D994 */ cpu->r[28] = cpu->r[3];
|
|
/* 0238D994 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 0238D998 */ _t60 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D998 */ _t61 = _t60 & 0x00000001u;
|
|
/* 0238D998 */ if (_t61) goto L_0238D9F4; else goto L_0238D99C;
|
|
L_0238D99C: ; // 0x238d99c
|
|
/* 0238D99C */ cpu->r[3] = cpu->r[28];
|
|
/* 0238D99C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238D9A0 */ _t62 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D9A0 */ _t63 = _t62 & 0x00000001u;
|
|
/* 0238D9A0 */ if (_t63) goto L_0238D9A4; else goto L_0238D9CC;
|
|
L_0238D9A4: ; // 0x238d9a4
|
|
/* 0238D9A4 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0238D9A8 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238D9AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238D9B0 */ _t64 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238D9B0 */ _t65 = _t64 & 0x00000001u;
|
|
/* 0238D9B0 */ if (_t65) goto L_0238D9B4; else goto L_0238D9CC;
|
|
L_0238D9B4: ; // 0x238d9b4
|
|
/* 0238D9B4 */ _t66 = cpu->r[28] + 0x00000000u;
|
|
/* 0238D9B4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t66);
|
|
/* 0238D9B8 */ _t67 = cpu->r[20] + 0x00007399u;
|
|
/* 0238D9B8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t67);
|
|
/* 0238D9BC */ _t68 = cpu->r[28] + 0x00000004u;
|
|
/* 0238D9BC */ rbrew_write32(cpu->mem, _t68, cpu->r[22]);
|
|
/* 0238D9C0 */ _t69 = cpu->r[12] + 0x00000000u;
|
|
/* 0238D9C0 */ rbrew_write8(cpu->mem, _t69, (uint8_t)cpu->r[0]);
|
|
/* 0238D9C4 */ _t70 = cpu->r[27] + 0x00000004u;
|
|
/* 0238D9C4 */ rbrew_write32(cpu->mem, _t70, cpu->r[21]);
|
|
/* 0238D9C8 */ goto L_0238D9F8;
|
|
L_0238D9CC: ; // 0x238d9cc
|
|
/* 0238D9CC */ cpu->r[10] = cpu->r[28] + 0x0000000Cu;
|
|
/* 0238D9D0 */ _t71 = cpu->r[3] + 0x00000004u;
|
|
/* 0238D9D0 */ rbrew_write32(cpu->mem, _t71, cpu->r[24]);
|
|
/* 0238D9D4 */ cpu->r[11] = 0x00000020u;
|
|
/* 0238D9D8 */ _t72 = cpu->r[3] + 0x00000000u;
|
|
/* 0238D9D8 */ rbrew_write32(cpu->mem, _t72, cpu->r[10]);
|
|
/* 0238D9DC */ _t73 = cpu->r[3] + 0x00000008u;
|
|
/* 0238D9DC */ rbrew_write32(cpu->mem, _t73, cpu->r[11]);
|
|
/* 0238D9E0 */ _t74 = cpu->r[20] + 0x00007399u;
|
|
/* 0238D9E0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t74);
|
|
/* 0238D9E4 */ _t75 = cpu->r[28] + 0x00000004u;
|
|
/* 0238D9E4 */ rbrew_write32(cpu->mem, _t75, cpu->r[22]);
|
|
/* 0238D9E8 */ _t76 = cpu->r[28] + 0x00000000u;
|
|
/* 0238D9E8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t76);
|
|
/* 0238D9EC */ _t77 = cpu->r[28] + 0x0000002Bu;
|
|
/* 0238D9EC */ rbrew_write8(cpu->mem, _t77, (uint8_t)cpu->r[0]);
|
|
/* 0238D9F0 */ _t78 = cpu->r[12] + 0x00000000u;
|
|
/* 0238D9F0 */ rbrew_write8(cpu->mem, _t78, (uint8_t)cpu->r[0]);
|
|
L_0238D9F4: ; // 0x238d9f4
|
|
/* 0238D9F4 */ _t79 = cpu->r[27] + 0x00000004u;
|
|
/* 0238D9F4 */ rbrew_write32(cpu->mem, _t79, cpu->r[21]);
|
|
L_0238D9F8: ; // 0x238d9f8
|
|
/* 0238D9F8 */ cpu->r[0] = cpu->r[23] + 0x00000080u;
|
|
/* 0238D9F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0238D9FC */ _t80 = cpu->r[23] + 0x00000058u;
|
|
/* 0238D9FC */ rbrew_write32(cpu->mem, _t80, cpu->r[26]);
|
|
/* 0238DA00 */ _t81 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238DA00 */ _t82 = _t81 & 0x00000001u;
|
|
/* 0238DA00 */ if (_t82) goto L_0238DA04; else goto L_0238DA0C;
|
|
L_0238DA04: ; // 0x238da04
|
|
/* 0238DA04 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0238DA08 */ Gambit_fn_02801A78(cpu);
|
|
L_0238DA0C: ; // 0x238da0c
|
|
/* 0238DA0C */ cpu->r[6] = cpu->r[23] + 0x0000008Cu;
|
|
/* 0238DA0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 0238DA10 */ _t83 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238DA10 */ _t84 = _t83 & 0x00000001u;
|
|
/* 0238DA10 */ if (_t84) goto L_0238DA14; else goto L_0238DA1C;
|
|
L_0238DA14: ; // 0x238da14
|
|
/* 0238DA14 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0238DA18 */ Gambit_fn_02801A78(cpu);
|
|
L_0238DA1C: ; // 0x238da1c
|
|
/* 0238DA1C */ _t85 = cpu->r[1] + 0x00000008u;
|
|
/* 0238DA1C */ cpu->r[7] = rbrew_read32(cpu->mem, _t85);
|
|
/* 0238DA20 */ _t86 = cpu->r[23] + 0x0000009Cu;
|
|
/* 0238DA20 */ rbrew_write8(cpu->mem, _t86, (uint8_t)cpu->r[25]);
|
|
/* 0238DA24 */ cpu->r[8] = 0xFFFFFFFFu;
|
|
/* 0238DA28 */ _t87 = cpu->r[23] + 0x00000098u;
|
|
/* 0238DA28 */ rbrew_write32(cpu->mem, _t87, cpu->r[7]);
|
|
/* 0238DA2C */ _t88 = cpu->r[23] + 0x000000A0u;
|
|
/* 0238DA2C */ rbrew_write32(cpu->mem, _t88, cpu->r[8]);
|
|
L_0238DA30: ; // 0x238da30
|
|
/* 0238DA30 */ _t89 = cpu->r[31] + 0x000000A4u;
|
|
/* 0238DA30 */ rbrew_write32(cpu->mem, _t89, cpu->r[25]);
|
|
/* 0238DA34 */ cpu->r[4] = cpu->r[31] + 0x000000A4u;
|
|
/* 0238DA38 */ cpu->r[3] = cpu->r[29] + 0x000004DCu;
|
|
/* 0238DA3C */ _t90 = cpu->r[31] + 0x000000A8u;
|
|
/* 0238DA3C */ rbrew_write32(cpu->mem, _t90, cpu->r[25]);
|
|
/* 0238DA40 */ Gambit_fn_02801EBC(cpu);
|
|
/* 0238DA44 */ _t91 = cpu->r[29] + 0x000004E4u;
|
|
/* 0238DA44 */ cpu->r[10] = rbrew_read32(cpu->mem, _t91);
|
|
/* 0238DA48 */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 0238DA4C */ cpu->r[3] = cpu->r[29] + 0x000007C4u;
|
|
/* 0238DA50 */ _t92 = cpu->r[29] + 0x000004E4u;
|
|
/* 0238DA50 */ rbrew_write32(cpu->mem, _t92, cpu->r[10]);
|
|
/* 0238DA54 */ Gambit_fn_02837030(cpu);
|
|
/* 0238DA58 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0238DA5C */ _t93 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238DA5C */ _t94 = _t93 & 0x00000001u;
|
|
/* 0238DA5C */ if (_t94) goto L_0238DA60; else goto L_0238DA90;
|
|
L_0238DA60: ; // 0x238da60
|
|
/* 0238DA60 */ goto L_0238DAC4;
|
|
L_0238DA64: ; // 0x238da64
|
|
/* 0238DA64 */ cpu->r[4] = 0x000000A4u;
|
|
/* 0238DA68 */ cpu->r[3] = cpu->r[29] + 0x000004DCu;
|
|
/* 0238DA6C */ cpu->r[31] = 0x00000000u;
|
|
/* 0238DA70 */ Gambit_fn_02801EBC(cpu);
|
|
/* 0238DA74 */ _t95 = cpu->r[29] + 0x000004E4u;
|
|
/* 0238DA74 */ cpu->r[10] = rbrew_read32(cpu->mem, _t95);
|
|
/* 0238DA78 */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 0238DA7C */ cpu->r[3] = cpu->r[29] + 0x000007C4u;
|
|
/* 0238DA80 */ _t96 = cpu->r[29] + 0x000004E4u;
|
|
/* 0238DA80 */ rbrew_write32(cpu->mem, _t96, cpu->r[10]);
|
|
/* 0238DA84 */ Gambit_fn_02837030(cpu);
|
|
/* 0238DA88 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0238DA8C */ _t97 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238DA8C */ _t98 = _t97 & 0x00000001u;
|
|
/* 0238DA8C */ if (_t98) goto L_0238DAC4; else goto L_0238DA90;
|
|
L_0238DA90: ; // 0x238da90
|
|
/* 0238DA90 */ cpu->r[3] = cpu->r[29];
|
|
/* 0238DA94 */ cpu->r[4] = cpu->r[31];
|
|
/* 0238DA98 */ Gambit_fn_0238C684(cpu);
|
|
/* 0238DA9C */ _t99 = cpu->r[30] + 0x00000000u;
|
|
/* 0238DA9C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t99);
|
|
/* 0238DAA0 */ _t100 = cpu->r[31] + 0x00000080u;
|
|
/* 0238DAA0 */ rbrew_write_f32(cpu->mem, _t100, cpu->f[0]);
|
|
/* 0238DAA4 */ _t101 = cpu->r[30] + 0x00000004u;
|
|
/* 0238DAA4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t101);
|
|
/* 0238DAA8 */ cpu->r[12] = 0x00000001u;
|
|
/* 0238DAAC */ _t102 = cpu->r[31] + 0x00000084u;
|
|
/* 0238DAAC */ rbrew_write_f32(cpu->mem, _t102, cpu->f[0]);
|
|
/* 0238DAB0 */ _t103 = cpu->r[30] + 0x00000008u;
|
|
/* 0238DAB0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t103);
|
|
/* 0238DAB4 */ _t104 = cpu->r[31] + 0x0000009Cu;
|
|
/* 0238DAB4 */ rbrew_write8(cpu->mem, _t104, (uint8_t)cpu->r[12]);
|
|
/* 0238DAB8 */ cpu->r[3] = cpu->r[29];
|
|
/* 0238DABC */ _t105 = cpu->r[31] + 0x00000088u;
|
|
/* 0238DABC */ rbrew_write_f32(cpu->mem, _t105, cpu->f[0]);
|
|
/* 0238DAC0 */ Gambit_fn_0238C0E0(cpu);
|
|
L_0238DAC4: ; // 0x238dac4
|
|
/* 0238DAC4 */ /* nop */
|
|
/* 0238DAC8 */ _t106 = cpu->r[1] + 0x00000044u;
|
|
/* 0238DAC8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t106);
|
|
/* 0238DACC */ cpu->lr = cpu->r[0];
|
|
/* 0238DAD0 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 0238DAD4 */ return;
|
|
}
|
|
|
|
// fn_0238DAD8 @ 0x238dad8
|
|
void Gambit_fn_0238DAD8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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;
|
|
|
|
L_0238DAD8: ; // 0x238dad8
|
|
/* 0238DAD8 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 0238DAD8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0238DAD8 */ cpu->r[1] = _t0;
|
|
/* 0238DADC */ /* nop */
|
|
/* 0238DAE0 */ cpu->r[0] = cpu->lr;
|
|
/* 0238DAE4 */ _t1 = cpu->r[1] + 0x00000044u;
|
|
/* 0238DAE4 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0238DAE8 */ cpu->r[29] = cpu->r[4];
|
|
/* 0238DAEC */ cpu->r[28] = cpu->r[3];
|
|
/* 0238DAF0 */ _t2 = cpu->r[28] + 0x00000505u;
|
|
/* 0238DAF0 */ cpu->r[12] = rbrew_read8(cpu->mem, _t2);
|
|
/* 0238DAF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0238DAF8 */ cpu->r[30] = cpu->r[5];
|
|
/* 0238DAFC */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238DAFC */ _t4 = _t3 & 0x00000001u;
|
|
/* 0238DAFC */ if (_t4) goto L_0238DDA4; else goto L_0238DB00;
|
|
L_0238DB00: ; // 0x238db00
|
|
/* 0238DB00 */ _t5 = cpu->r[28] + 0x00000504u;
|
|
/* 0238DB00 */ cpu->r[0] = rbrew_read8(cpu->mem, _t5);
|
|
/* 0238DB04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0238DB08 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238DB08 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0238DB08 */ if (_t7) goto L_0238DDA4; else goto L_0238DB0C;
|
|
L_0238DB0C: ; // 0x238db0c
|
|
/* 0238DB0C */ cpu->r[3] = cpu->r[28] + 0x000007C4u;
|
|
/* 0238DB10 */ Gambit_fn_02836FFC(cpu);
|
|
/* 0238DB14 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0238DB18 */ _t8 = cpu->r[3] + 0x00006000u;
|
|
/* 0238DB18 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0238DB1C */ _t9 = cpu->r[3] + 0x00000004u;
|
|
/* 0238DB1C */ cpu->r[7] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0238DB20 */ _t10 = cpu->r[7] + 0x0000012Cu;
|
|
/* 0238DB20 */ cpu->r[8] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0238DB24 */ cpu->ctr = cpu->r[8];
|
|
/* 0238DB28 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0238DB2C */ _t11 = cpu->r[28] + 0x000004E4u;
|
|
/* 0238DB2C */ cpu->r[9] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0238DB30 */ cpu->r[25] = cpu->r[3];
|
|
/* 0238DB34 */ _t12 = cpu->r[28] + 0x000004F0u;
|
|
/* 0238DB34 */ cpu->r[10] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0238DB38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], cpu->r[10]);
|
|
/* 0238DB3C */ cpu->r[24] = 0x00000000u;
|
|
/* 0238DB40 */ _t13 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0238DB40 */ _t14 = _t13 & 0x00000001u;
|
|
/* 0238DB40 */ if (_t14) goto L_0238DB64; else goto L_0238DB44;
|
|
L_0238DB44: ; // 0x238db44
|
|
/* 0238DB44 */ cpu->r[3] = cpu->r[28] + 0x000007C4u;
|
|
/* 0238DB48 */ cpu->r[31] = 0x00000000u;
|
|
/* 0238DB4C */ Gambit_fn_02837030(cpu);
|
|
/* 0238DB50 */ /* nop */
|
|
/* 0238DB54 */ _t15 = cpu->r[1] + 0x00000044u;
|
|
/* 0238DB54 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0238DB58 */ cpu->lr = cpu->r[0];
|
|
/* 0238DB5C */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 0238DB60 */ return;
|
|
L_0238DB64: ; // 0x238db64
|
|
/* 0238DB64 */ _t16 = cpu->r[28] + 0x000004E8u;
|
|
/* 0238DB64 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0238DB68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0238DB6C */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238DB6C */ _t18 = _t17 & 0x00000001u;
|
|
/* 0238DB6C */ if (_t18) goto L_0238DB78; else goto L_0238DB70;
|
|
L_0238DB70: ; // 0x238db70
|
|
/* 0238DB70 */ _t19 = cpu->r[31] + 0x00000000u;
|
|
/* 0238DB70 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0238DB74 */ _t20 = cpu->r[28] + 0x000004E8u;
|
|
/* 0238DB74 */ rbrew_write32(cpu->mem, _t20, cpu->r[11]);
|
|
L_0238DB78: ; // 0x238db78
|
|
/* 0238DB78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0238DB7C */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238DB7C */ _t22 = _t21 & 0x00000001u;
|
|
/* 0238DB7C */ if (_t22) goto L_0238DD40; else goto L_0238DB80;
|
|
L_0238DB80: ; // 0x238db80
|
|
/* 0238DB80 */ cpu->r[12] = 0x00000008u;
|
|
/* 0238DB84 */ cpu->r[22] = cpu->r[31];
|
|
/* 0238DB84 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[22], 0x00000000u);
|
|
/* 0238DB88 */ _t23 = cpu->r[1] + 0x00000008u;
|
|
/* 0238DB88 */ rbrew_write32(cpu->mem, _t23, cpu->r[12]);
|
|
/* 0238DB8C */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238DB8C */ _t25 = _t24 & 0x00000001u;
|
|
/* 0238DB8C */ if (_t25) goto L_0238DB90; else goto L_0238DBA0;
|
|
L_0238DB90: ; // 0x238db90
|
|
/* 0238DB90 */ cpu->r[3] = 0x000000A4u;
|
|
/* 0238DB94 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238DB98 */ cpu->r[22] = cpu->r[3];
|
|
/* 0238DB98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[22], 0x00000000u);
|
|
/* 0238DB9C */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238DB9C */ _t27 = _t26 & 0x00000001u;
|
|
/* 0238DB9C */ if (_t27) goto L_0238DD0C; else goto L_0238DBA0;
|
|
L_0238DBA0: ; // 0x238dba0
|
|
/* 0238DBA0 */ cpu->r[21] = 0x10080000u;
|
|
/* 0238DBA4 */ cpu->r[26] = cpu->r[22];
|
|
/* 0238DBA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 0238DBA8 */ cpu->r[23] = 0x10080000u;
|
|
/* 0238DBAC */ cpu->r[21] = cpu->r[21] + 0x000062A8u;
|
|
/* 0238DBB0 */ cpu->r[20] = 0x10080000u;
|
|
/* 0238DBB4 */ cpu->r[23] = cpu->r[23] + 0x00006290u;
|
|
/* 0238DBB8 */ cpu->r[19] = 0x10110000u;
|
|
/* 0238DBBC */ cpu->r[20] = cpu->r[20] + 0x000062C0u;
|
|
/* 0238DBC0 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238DBC0 */ _t29 = _t28 & 0x00000001u;
|
|
/* 0238DBC0 */ if (_t29) goto L_0238DBC4; else goto L_0238DBD4;
|
|
L_0238DBC4: ; // 0x238dbc4
|
|
/* 0238DBC4 */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0238DBC8 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238DBCC */ cpu->r[26] = cpu->r[3];
|
|
/* 0238DBCC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 0238DBD0 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238DBD0 */ _t31 = _t30 & 0x00000001u;
|
|
/* 0238DBD0 */ if (_t31) goto L_0238DC48; else goto L_0238DBD4;
|
|
L_0238DBD4: ; // 0x238dbd4
|
|
/* 0238DBD4 */ cpu->r[27] = cpu->r[26];
|
|
/* 0238DBD4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0238DBD8 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238DBD8 */ _t33 = _t32 & 0x00000001u;
|
|
/* 0238DBD8 */ if (_t33) goto L_0238DBDC; else goto L_0238DBEC;
|
|
L_0238DBDC: ; // 0x238dbdc
|
|
/* 0238DBDC */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0238DBE0 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238DBE4 */ cpu->r[27] = cpu->r[3];
|
|
/* 0238DBE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0238DBE8 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238DBE8 */ _t35 = _t34 & 0x00000001u;
|
|
/* 0238DBE8 */ if (_t35) goto L_0238DC44; else goto L_0238DBEC;
|
|
L_0238DBEC: ; // 0x238dbec
|
|
/* 0238DBEC */ cpu->r[3] = cpu->r[27];
|
|
/* 0238DBEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238DBF0 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238DBF0 */ _t37 = _t36 & 0x00000001u;
|
|
/* 0238DBF0 */ if (_t37) goto L_0238DBF4; else goto L_0238DC1C;
|
|
L_0238DBF4: ; // 0x238dbf4
|
|
/* 0238DBF4 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0238DBF8 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238DBFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238DC00 */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238DC00 */ _t39 = _t38 & 0x00000001u;
|
|
/* 0238DC00 */ if (_t39) goto L_0238DC04; else goto L_0238DC1C;
|
|
L_0238DC04: ; // 0x238dc04
|
|
/* 0238DC04 */ _t40 = cpu->r[27] + 0x00000000u;
|
|
/* 0238DC04 */ cpu->r[8] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0238DC08 */ _t41 = cpu->r[19] + 0x00007399u;
|
|
/* 0238DC08 */ cpu->r[9] = rbrew_read8(cpu->mem, _t41);
|
|
/* 0238DC0C */ _t42 = cpu->r[27] + 0x00000004u;
|
|
/* 0238DC0C */ rbrew_write32(cpu->mem, _t42, cpu->r[21]);
|
|
/* 0238DC10 */ _t43 = cpu->r[8] + 0x00000000u;
|
|
/* 0238DC10 */ rbrew_write8(cpu->mem, _t43, (uint8_t)cpu->r[9]);
|
|
/* 0238DC14 */ _t44 = cpu->r[26] + 0x00000004u;
|
|
/* 0238DC14 */ rbrew_write32(cpu->mem, _t44, cpu->r[20]);
|
|
/* 0238DC18 */ goto L_0238DC48;
|
|
L_0238DC1C: ; // 0x238dc1c
|
|
/* 0238DC1C */ cpu->r[0] = cpu->r[27] + 0x0000000Cu;
|
|
/* 0238DC20 */ _t45 = cpu->r[3] + 0x00000004u;
|
|
/* 0238DC20 */ rbrew_write32(cpu->mem, _t45, cpu->r[23]);
|
|
/* 0238DC24 */ cpu->r[7] = 0x00000020u;
|
|
/* 0238DC28 */ _t46 = cpu->r[3] + 0x00000000u;
|
|
/* 0238DC28 */ rbrew_write32(cpu->mem, _t46, cpu->r[0]);
|
|
/* 0238DC2C */ _t47 = cpu->r[3] + 0x00000008u;
|
|
/* 0238DC2C */ rbrew_write32(cpu->mem, _t47, cpu->r[7]);
|
|
/* 0238DC30 */ _t48 = cpu->r[19] + 0x00007399u;
|
|
/* 0238DC30 */ cpu->r[9] = rbrew_read8(cpu->mem, _t48);
|
|
/* 0238DC34 */ _t49 = cpu->r[27] + 0x00000004u;
|
|
/* 0238DC34 */ rbrew_write32(cpu->mem, _t49, cpu->r[21]);
|
|
/* 0238DC38 */ _t50 = cpu->r[27] + 0x00000000u;
|
|
/* 0238DC38 */ cpu->r[8] = rbrew_read32(cpu->mem, _t50);
|
|
/* 0238DC3C */ _t51 = cpu->r[27] + 0x0000002Bu;
|
|
/* 0238DC3C */ rbrew_write8(cpu->mem, _t51, (uint8_t)cpu->r[9]);
|
|
/* 0238DC40 */ _t52 = cpu->r[8] + 0x00000000u;
|
|
/* 0238DC40 */ rbrew_write8(cpu->mem, _t52, (uint8_t)cpu->r[9]);
|
|
L_0238DC44: ; // 0x238dc44
|
|
/* 0238DC44 */ _t53 = cpu->r[26] + 0x00000004u;
|
|
/* 0238DC44 */ rbrew_write32(cpu->mem, _t53, cpu->r[20]);
|
|
L_0238DC48: ; // 0x238dc48
|
|
/* 0238DC48 */ cpu->r[26] = cpu->r[22] + 0x0000002Cu;
|
|
/* 0238DC48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 0238DC4C */ _t54 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238DC4C */ _t55 = _t54 & 0x00000001u;
|
|
/* 0238DC4C */ if (_t55) goto L_0238DC50; else goto L_0238DC60;
|
|
L_0238DC50: ; // 0x238dc50
|
|
/* 0238DC50 */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0238DC54 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238DC58 */ cpu->r[26] = cpu->r[3];
|
|
/* 0238DC58 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 0238DC5C */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238DC5C */ _t57 = _t56 & 0x00000001u;
|
|
/* 0238DC5C */ if (_t57) goto L_0238DCD4; else goto L_0238DC60;
|
|
L_0238DC60: ; // 0x238dc60
|
|
/* 0238DC60 */ cpu->r[27] = cpu->r[26];
|
|
/* 0238DC60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0238DC64 */ _t58 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238DC64 */ _t59 = _t58 & 0x00000001u;
|
|
/* 0238DC64 */ if (_t59) goto L_0238DC68; else goto L_0238DC78;
|
|
L_0238DC68: ; // 0x238dc68
|
|
/* 0238DC68 */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0238DC6C */ Gambit_fn_02801A78(cpu);
|
|
/* 0238DC70 */ cpu->r[27] = cpu->r[3];
|
|
/* 0238DC70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0238DC74 */ _t60 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238DC74 */ _t61 = _t60 & 0x00000001u;
|
|
/* 0238DC74 */ if (_t61) goto L_0238DCD0; else goto L_0238DC78;
|
|
L_0238DC78: ; // 0x238dc78
|
|
/* 0238DC78 */ cpu->r[3] = cpu->r[27];
|
|
/* 0238DC78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238DC7C */ _t62 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238DC7C */ _t63 = _t62 & 0x00000001u;
|
|
/* 0238DC7C */ if (_t63) goto L_0238DC80; else goto L_0238DCA8;
|
|
L_0238DC80: ; // 0x238dc80
|
|
/* 0238DC80 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0238DC84 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238DC88 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238DC8C */ _t64 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238DC8C */ _t65 = _t64 & 0x00000001u;
|
|
/* 0238DC8C */ if (_t65) goto L_0238DC90; else goto L_0238DCA8;
|
|
L_0238DC90: ; // 0x238dc90
|
|
/* 0238DC90 */ _t66 = cpu->r[27] + 0x00000000u;
|
|
/* 0238DC90 */ cpu->r[12] = rbrew_read32(cpu->mem, _t66);
|
|
/* 0238DC94 */ _t67 = cpu->r[19] + 0x00007399u;
|
|
/* 0238DC94 */ cpu->r[9] = rbrew_read8(cpu->mem, _t67);
|
|
/* 0238DC98 */ _t68 = cpu->r[27] + 0x00000004u;
|
|
/* 0238DC98 */ rbrew_write32(cpu->mem, _t68, cpu->r[21]);
|
|
/* 0238DC9C */ _t69 = cpu->r[12] + 0x00000000u;
|
|
/* 0238DC9C */ rbrew_write8(cpu->mem, _t69, (uint8_t)cpu->r[9]);
|
|
/* 0238DCA0 */ _t70 = cpu->r[26] + 0x00000004u;
|
|
/* 0238DCA0 */ rbrew_write32(cpu->mem, _t70, cpu->r[20]);
|
|
/* 0238DCA4 */ goto L_0238DCD4;
|
|
L_0238DCA8: ; // 0x238dca8
|
|
/* 0238DCA8 */ cpu->r[10] = cpu->r[27] + 0x0000000Cu;
|
|
/* 0238DCAC */ _t71 = cpu->r[3] + 0x00000004u;
|
|
/* 0238DCAC */ rbrew_write32(cpu->mem, _t71, cpu->r[23]);
|
|
/* 0238DCB0 */ cpu->r[0] = 0x00000020u;
|
|
/* 0238DCB4 */ _t72 = cpu->r[3] + 0x00000000u;
|
|
/* 0238DCB4 */ rbrew_write32(cpu->mem, _t72, cpu->r[10]);
|
|
/* 0238DCB8 */ _t73 = cpu->r[3] + 0x00000008u;
|
|
/* 0238DCB8 */ rbrew_write32(cpu->mem, _t73, cpu->r[0]);
|
|
/* 0238DCBC */ _t74 = cpu->r[19] + 0x00007399u;
|
|
/* 0238DCBC */ cpu->r[9] = rbrew_read8(cpu->mem, _t74);
|
|
/* 0238DCC0 */ _t75 = cpu->r[27] + 0x00000004u;
|
|
/* 0238DCC0 */ rbrew_write32(cpu->mem, _t75, cpu->r[21]);
|
|
/* 0238DCC4 */ _t76 = cpu->r[27] + 0x00000000u;
|
|
/* 0238DCC4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t76);
|
|
/* 0238DCC8 */ _t77 = cpu->r[27] + 0x0000002Bu;
|
|
/* 0238DCC8 */ rbrew_write8(cpu->mem, _t77, (uint8_t)cpu->r[9]);
|
|
/* 0238DCCC */ _t78 = cpu->r[12] + 0x00000000u;
|
|
/* 0238DCCC */ rbrew_write8(cpu->mem, _t78, (uint8_t)cpu->r[9]);
|
|
L_0238DCD0: ; // 0x238dcd0
|
|
/* 0238DCD0 */ _t79 = cpu->r[26] + 0x00000004u;
|
|
/* 0238DCD0 */ rbrew_write32(cpu->mem, _t79, cpu->r[20]);
|
|
L_0238DCD4: ; // 0x238dcd4
|
|
/* 0238DCD4 */ cpu->r[6] = cpu->r[22] + 0x00000080u;
|
|
/* 0238DCD4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 0238DCD8 */ _t80 = cpu->r[22] + 0x00000058u;
|
|
/* 0238DCD8 */ rbrew_write32(cpu->mem, _t80, cpu->r[25]);
|
|
/* 0238DCDC */ _t81 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238DCDC */ _t82 = _t81 & 0x00000001u;
|
|
/* 0238DCDC */ if (_t82) goto L_0238DCE0; else goto L_0238DCE8;
|
|
L_0238DCE0: ; // 0x238dce0
|
|
/* 0238DCE0 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0238DCE4 */ Gambit_fn_02801A78(cpu);
|
|
L_0238DCE8: ; // 0x238dce8
|
|
/* 0238DCE8 */ cpu->r[7] = cpu->r[22] + 0x0000008Cu;
|
|
/* 0238DCE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 0238DCEC */ _t83 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238DCEC */ _t84 = _t83 & 0x00000001u;
|
|
/* 0238DCEC */ if (_t84) goto L_0238DCF0; else goto L_0238DCF8;
|
|
L_0238DCF0: ; // 0x238dcf0
|
|
/* 0238DCF0 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0238DCF4 */ Gambit_fn_02801A78(cpu);
|
|
L_0238DCF8: ; // 0x238dcf8
|
|
/* 0238DCF8 */ _t85 = cpu->r[1] + 0x00000008u;
|
|
/* 0238DCF8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t85);
|
|
/* 0238DCFC */ _t86 = cpu->r[22] + 0x0000009Cu;
|
|
/* 0238DCFC */ rbrew_write8(cpu->mem, _t86, (uint8_t)cpu->r[24]);
|
|
/* 0238DD00 */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 0238DD04 */ _t87 = cpu->r[22] + 0x00000098u;
|
|
/* 0238DD04 */ rbrew_write32(cpu->mem, _t87, cpu->r[8]);
|
|
/* 0238DD08 */ _t88 = cpu->r[22] + 0x000000A0u;
|
|
/* 0238DD08 */ rbrew_write32(cpu->mem, _t88, cpu->r[0]);
|
|
L_0238DD0C: ; // 0x238dd0c
|
|
/* 0238DD0C */ _t89 = cpu->r[31] + 0x000000A4u;
|
|
/* 0238DD0C */ rbrew_write32(cpu->mem, _t89, cpu->r[24]);
|
|
/* 0238DD10 */ cpu->r[4] = cpu->r[31] + 0x000000A4u;
|
|
/* 0238DD14 */ cpu->r[3] = cpu->r[28] + 0x000004DCu;
|
|
/* 0238DD18 */ _t90 = cpu->r[31] + 0x000000A8u;
|
|
/* 0238DD18 */ rbrew_write32(cpu->mem, _t90, cpu->r[24]);
|
|
/* 0238DD1C */ Gambit_fn_02801EBC(cpu);
|
|
/* 0238DD20 */ _t91 = cpu->r[28] + 0x000004E4u;
|
|
/* 0238DD20 */ cpu->r[11] = rbrew_read32(cpu->mem, _t91);
|
|
/* 0238DD24 */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 0238DD28 */ cpu->r[3] = cpu->r[28] + 0x000007C4u;
|
|
/* 0238DD2C */ _t92 = cpu->r[28] + 0x000004E4u;
|
|
/* 0238DD2C */ rbrew_write32(cpu->mem, _t92, cpu->r[11]);
|
|
/* 0238DD30 */ Gambit_fn_02837030(cpu);
|
|
/* 0238DD34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0238DD38 */ _t93 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238DD38 */ _t94 = _t93 & 0x00000001u;
|
|
/* 0238DD38 */ if (_t94) goto L_0238DD3C; else goto L_0238DD6C;
|
|
L_0238DD3C: ; // 0x238dd3c
|
|
/* 0238DD3C */ goto L_0238DDA4;
|
|
L_0238DD40: ; // 0x238dd40
|
|
/* 0238DD40 */ cpu->r[4] = 0x000000A4u;
|
|
/* 0238DD44 */ cpu->r[3] = cpu->r[28] + 0x000004DCu;
|
|
/* 0238DD48 */ cpu->r[31] = 0x00000000u;
|
|
/* 0238DD4C */ Gambit_fn_02801EBC(cpu);
|
|
/* 0238DD50 */ _t95 = cpu->r[28] + 0x000004E4u;
|
|
/* 0238DD50 */ cpu->r[11] = rbrew_read32(cpu->mem, _t95);
|
|
/* 0238DD54 */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 0238DD58 */ cpu->r[3] = cpu->r[28] + 0x000007C4u;
|
|
/* 0238DD5C */ _t96 = cpu->r[28] + 0x000004E4u;
|
|
/* 0238DD5C */ rbrew_write32(cpu->mem, _t96, cpu->r[11]);
|
|
/* 0238DD60 */ Gambit_fn_02837030(cpu);
|
|
/* 0238DD64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0238DD68 */ _t97 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238DD68 */ _t98 = _t97 & 0x00000001u;
|
|
/* 0238DD68 */ if (_t98) goto L_0238DDA4; else goto L_0238DD6C;
|
|
L_0238DD6C: ; // 0x238dd6c
|
|
/* 0238DD6C */ cpu->r[3] = cpu->r[28];
|
|
/* 0238DD70 */ cpu->r[4] = cpu->r[31];
|
|
/* 0238DD74 */ Gambit_fn_0238C684(cpu);
|
|
/* 0238DD78 */ _t99 = cpu->r[29] + 0x00000000u;
|
|
/* 0238DD78 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t99);
|
|
/* 0238DD7C */ _t100 = cpu->r[31] + 0x00000080u;
|
|
/* 0238DD7C */ rbrew_write_f32(cpu->mem, _t100, cpu->f[0]);
|
|
/* 0238DD80 */ _t101 = cpu->r[29] + 0x00000004u;
|
|
/* 0238DD80 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t101);
|
|
/* 0238DD84 */ _t102 = cpu->r[31] + 0x00000084u;
|
|
/* 0238DD84 */ rbrew_write_f32(cpu->mem, _t102, cpu->f[0]);
|
|
/* 0238DD88 */ _t103 = cpu->r[29] + 0x00000008u;
|
|
/* 0238DD88 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t103);
|
|
/* 0238DD8C */ _t104 = cpu->r[31] + 0x0000006Cu;
|
|
/* 0238DD8C */ rbrew_write32(cpu->mem, _t104, cpu->r[30]);
|
|
/* 0238DD90 */ cpu->r[0] = 0x00000001u;
|
|
/* 0238DD94 */ _t105 = cpu->r[31] + 0x00000088u;
|
|
/* 0238DD94 */ rbrew_write_f32(cpu->mem, _t105, cpu->f[0]);
|
|
/* 0238DD98 */ cpu->r[3] = cpu->r[28];
|
|
/* 0238DD9C */ _t106 = cpu->r[31] + 0x0000009Cu;
|
|
/* 0238DD9C */ rbrew_write8(cpu->mem, _t106, (uint8_t)cpu->r[0]);
|
|
/* 0238DDA0 */ Gambit_fn_0238C0E0(cpu);
|
|
L_0238DDA4: ; // 0x238dda4
|
|
/* 0238DDA4 */ /* nop */
|
|
/* 0238DDA8 */ _t107 = cpu->r[1] + 0x00000044u;
|
|
/* 0238DDA8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t107);
|
|
/* 0238DDAC */ cpu->lr = cpu->r[0];
|
|
/* 0238DDB0 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 0238DDB4 */ return;
|
|
}
|
|
|
|
// fn_0238DDB8 @ 0x238ddb8
|
|
void Gambit_fn_0238DDB8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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_0238DDB8: ; // 0x238ddb8
|
|
/* 0238DDB8 */ _t0 = cpu->r[1] + 0xFFFFFFB8u;
|
|
/* 0238DDB8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0238DDB8 */ cpu->r[1] = _t0;
|
|
/* 0238DDBC */ /* nop */
|
|
/* 0238DDC0 */ cpu->r[0] = cpu->lr;
|
|
/* 0238DDC4 */ _t1 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0238DDC4 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0238DDC8 */ cpu->r[27] = cpu->r[3];
|
|
/* 0238DDCC */ _t2 = cpu->r[27] + 0x00000505u;
|
|
/* 0238DDCC */ cpu->r[11] = rbrew_read8(cpu->mem, _t2);
|
|
/* 0238DDD0 */ cpu->r[28] = cpu->r[4];
|
|
/* 0238DDD4 */ cpu->r[25] = cpu->r[5];
|
|
/* 0238DDD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0238DDDC */ cpu->r[26] = cpu->r[6];
|
|
/* 0238DDE0 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238DDE0 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0238DDE0 */ if (_t4) goto L_0238E144; else goto L_0238DDE4;
|
|
L_0238DDE4: ; // 0x238dde4
|
|
/* 0238DDE4 */ _t5 = cpu->r[27] + 0x00000504u;
|
|
/* 0238DDE4 */ cpu->r[6] = rbrew_read8(cpu->mem, _t5);
|
|
/* 0238DDE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 0238DDEC */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238DDEC */ _t7 = _t6 & 0x00000001u;
|
|
/* 0238DDEC */ if (_t7) goto L_0238E144; else goto L_0238DDF0;
|
|
L_0238DDF0: ; // 0x238ddf0
|
|
/* 0238DDF0 */ cpu->r[3] = cpu->r[27] + 0x000007C4u;
|
|
/* 0238DDF4 */ Gambit_fn_02836FFC(cpu);
|
|
/* 0238DDF8 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0238DDFC */ _t8 = cpu->r[3] + 0x00006000u;
|
|
/* 0238DDFC */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0238DE00 */ _t9 = cpu->r[3] + 0x00000004u;
|
|
/* 0238DE00 */ cpu->r[8] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0238DE04 */ _t10 = cpu->r[8] + 0x0000012Cu;
|
|
/* 0238DE04 */ cpu->r[9] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0238DE08 */ cpu->ctr = cpu->r[9];
|
|
/* 0238DE0C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0238DE10 */ _t11 = cpu->r[27] + 0x000004E4u;
|
|
/* 0238DE10 */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0238DE14 */ _t12 = cpu->r[27] + 0x000004F0u;
|
|
/* 0238DE14 */ cpu->r[11] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0238DE18 */ cpu->r[18] = cpu->r[3];
|
|
/* 0238DE1C */ cpu->r[22] = 0x10110000u;
|
|
/* 0238DE20 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], cpu->r[11]);
|
|
/* 0238DE24 */ cpu->r[21] = 0x00000000u;
|
|
/* 0238DE28 */ _t13 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0238DE28 */ _t14 = _t13 & 0x00000001u;
|
|
/* 0238DE28 */ if (_t14) goto L_0238DE4C; else goto L_0238DE2C;
|
|
L_0238DE2C: ; // 0x238de2c
|
|
/* 0238DE2C */ cpu->r[3] = cpu->r[27] + 0x000007C4u;
|
|
/* 0238DE30 */ cpu->r[31] = 0x00000000u;
|
|
/* 0238DE34 */ Gambit_fn_02837030(cpu);
|
|
/* 0238DE38 */ /* nop */
|
|
/* 0238DE3C */ _t15 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0238DE3C */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0238DE40 */ cpu->lr = cpu->r[0];
|
|
/* 0238DE44 */ cpu->r[1] = cpu->r[1] + 0x00000048u;
|
|
/* 0238DE48 */ return;
|
|
L_0238DE4C: ; // 0x238de4c
|
|
/* 0238DE4C */ _t16 = cpu->r[27] + 0x000004E8u;
|
|
/* 0238DE4C */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0238DE50 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0238DE54 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238DE54 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0238DE54 */ if (_t18) goto L_0238DE60; else goto L_0238DE58;
|
|
L_0238DE58: ; // 0x238de58
|
|
/* 0238DE58 */ _t19 = cpu->r[31] + 0x00000000u;
|
|
/* 0238DE58 */ cpu->r[12] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0238DE5C */ _t20 = cpu->r[27] + 0x000004E8u;
|
|
/* 0238DE5C */ rbrew_write32(cpu->mem, _t20, cpu->r[12]);
|
|
L_0238DE60: ; // 0x238de60
|
|
/* 0238DE60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0238DE64 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238DE64 */ _t22 = _t21 & 0x00000001u;
|
|
/* 0238DE64 */ if (_t22) goto L_0238E024; else goto L_0238DE68;
|
|
L_0238DE68: ; // 0x238de68
|
|
/* 0238DE68 */ cpu->r[0] = 0x00000009u;
|
|
/* 0238DE6C */ cpu->r[19] = cpu->r[31];
|
|
/* 0238DE6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[19], 0x00000000u);
|
|
/* 0238DE70 */ _t23 = cpu->r[1] + 0x00000008u;
|
|
/* 0238DE70 */ rbrew_write32(cpu->mem, _t23, cpu->r[0]);
|
|
/* 0238DE74 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238DE74 */ _t25 = _t24 & 0x00000001u;
|
|
/* 0238DE74 */ if (_t25) goto L_0238DE78; else goto L_0238DE88;
|
|
L_0238DE78: ; // 0x238de78
|
|
/* 0238DE78 */ cpu->r[3] = 0x000000A4u;
|
|
/* 0238DE7C */ Gambit_fn_02801A78(cpu);
|
|
/* 0238DE80 */ cpu->r[19] = cpu->r[3];
|
|
/* 0238DE80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[19], 0x00000000u);
|
|
/* 0238DE84 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238DE84 */ _t27 = _t26 & 0x00000001u;
|
|
/* 0238DE84 */ if (_t27) goto L_0238DFF0; else goto L_0238DE88;
|
|
L_0238DE88: ; // 0x238de88
|
|
/* 0238DE88 */ cpu->r[24] = 0x10080000u;
|
|
/* 0238DE8C */ cpu->r[23] = 0x10080000u;
|
|
/* 0238DE90 */ cpu->r[30] = 0x10080000u;
|
|
/* 0238DE94 */ cpu->r[17] = cpu->r[19];
|
|
/* 0238DE94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[17], 0x00000000u);
|
|
/* 0238DE98 */ cpu->r[23] = cpu->r[23] + 0x000062C0u;
|
|
/* 0238DE9C */ cpu->r[24] = cpu->r[24] + 0x000062A8u;
|
|
/* 0238DEA0 */ cpu->r[30] = cpu->r[30] + 0x00006290u;
|
|
/* 0238DEA4 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238DEA4 */ _t29 = _t28 & 0x00000001u;
|
|
/* 0238DEA4 */ if (_t29) goto L_0238DEA8; else goto L_0238DEB8;
|
|
L_0238DEA8: ; // 0x238dea8
|
|
/* 0238DEA8 */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0238DEAC */ Gambit_fn_02801A78(cpu);
|
|
/* 0238DEB0 */ cpu->r[17] = cpu->r[3];
|
|
/* 0238DEB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[17], 0x00000000u);
|
|
/* 0238DEB4 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238DEB4 */ _t31 = _t30 & 0x00000001u;
|
|
/* 0238DEB4 */ if (_t31) goto L_0238DF2C; else goto L_0238DEB8;
|
|
L_0238DEB8: ; // 0x238deb8
|
|
/* 0238DEB8 */ cpu->r[20] = cpu->r[17];
|
|
/* 0238DEB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[20], 0x00000000u);
|
|
/* 0238DEBC */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238DEBC */ _t33 = _t32 & 0x00000001u;
|
|
/* 0238DEBC */ if (_t33) goto L_0238DEC0; else goto L_0238DED0;
|
|
L_0238DEC0: ; // 0x238dec0
|
|
/* 0238DEC0 */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0238DEC4 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238DEC8 */ cpu->r[20] = cpu->r[3];
|
|
/* 0238DEC8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[20], 0x00000000u);
|
|
/* 0238DECC */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238DECC */ _t35 = _t34 & 0x00000001u;
|
|
/* 0238DECC */ if (_t35) goto L_0238DF28; else goto L_0238DED0;
|
|
L_0238DED0: ; // 0x238ded0
|
|
/* 0238DED0 */ cpu->r[3] = cpu->r[20];
|
|
/* 0238DED0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238DED4 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238DED4 */ _t37 = _t36 & 0x00000001u;
|
|
/* 0238DED4 */ if (_t37) goto L_0238DED8; else goto L_0238DF00;
|
|
L_0238DED8: ; // 0x238ded8
|
|
/* 0238DED8 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0238DEDC */ Gambit_fn_02801A78(cpu);
|
|
/* 0238DEE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238DEE4 */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238DEE4 */ _t39 = _t38 & 0x00000001u;
|
|
/* 0238DEE4 */ if (_t39) goto L_0238DEE8; else goto L_0238DF00;
|
|
L_0238DEE8: ; // 0x238dee8
|
|
/* 0238DEE8 */ _t40 = cpu->r[22] + 0x00007399u;
|
|
/* 0238DEE8 */ cpu->r[29] = rbrew_read8(cpu->mem, _t40);
|
|
/* 0238DEEC */ _t41 = cpu->r[20] + 0x00000000u;
|
|
/* 0238DEEC */ cpu->r[8] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0238DEF0 */ _t42 = cpu->r[20] + 0x00000004u;
|
|
/* 0238DEF0 */ rbrew_write32(cpu->mem, _t42, cpu->r[24]);
|
|
/* 0238DEF4 */ _t43 = cpu->r[8] + 0x00000000u;
|
|
/* 0238DEF4 */ rbrew_write8(cpu->mem, _t43, (uint8_t)cpu->r[29]);
|
|
/* 0238DEF8 */ _t44 = cpu->r[17] + 0x00000004u;
|
|
/* 0238DEF8 */ rbrew_write32(cpu->mem, _t44, cpu->r[23]);
|
|
/* 0238DEFC */ goto L_0238DF2C;
|
|
L_0238DF00: ; // 0x238df00
|
|
/* 0238DF00 */ cpu->r[6] = cpu->r[20] + 0x0000000Cu;
|
|
/* 0238DF04 */ _t45 = cpu->r[3] + 0x00000004u;
|
|
/* 0238DF04 */ rbrew_write32(cpu->mem, _t45, cpu->r[30]);
|
|
/* 0238DF08 */ cpu->r[0] = 0x00000020u;
|
|
/* 0238DF0C */ _t46 = cpu->r[3] + 0x00000000u;
|
|
/* 0238DF0C */ rbrew_write32(cpu->mem, _t46, cpu->r[6]);
|
|
/* 0238DF10 */ _t47 = cpu->r[3] + 0x00000008u;
|
|
/* 0238DF10 */ rbrew_write32(cpu->mem, _t47, cpu->r[0]);
|
|
/* 0238DF14 */ _t48 = cpu->r[22] + 0x00007399u;
|
|
/* 0238DF14 */ cpu->r[29] = rbrew_read8(cpu->mem, _t48);
|
|
/* 0238DF18 */ _t49 = cpu->r[20] + 0x0000002Bu;
|
|
/* 0238DF18 */ rbrew_write8(cpu->mem, _t49, (uint8_t)cpu->r[29]);
|
|
/* 0238DF1C */ _t50 = cpu->r[20] + 0x00000000u;
|
|
/* 0238DF1C */ cpu->r[8] = rbrew_read32(cpu->mem, _t50);
|
|
/* 0238DF20 */ _t51 = cpu->r[20] + 0x00000004u;
|
|
/* 0238DF20 */ rbrew_write32(cpu->mem, _t51, cpu->r[24]);
|
|
/* 0238DF24 */ _t52 = cpu->r[8] + 0x00000000u;
|
|
/* 0238DF24 */ rbrew_write8(cpu->mem, _t52, (uint8_t)cpu->r[29]);
|
|
L_0238DF28: ; // 0x238df28
|
|
/* 0238DF28 */ _t53 = cpu->r[17] + 0x00000004u;
|
|
/* 0238DF28 */ rbrew_write32(cpu->mem, _t53, cpu->r[23]);
|
|
L_0238DF2C: ; // 0x238df2c
|
|
/* 0238DF2C */ cpu->r[17] = cpu->r[19] + 0x0000002Cu;
|
|
/* 0238DF2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[17], 0x00000000u);
|
|
/* 0238DF30 */ _t54 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238DF30 */ _t55 = _t54 & 0x00000001u;
|
|
/* 0238DF30 */ if (_t55) goto L_0238DF34; else goto L_0238DF44;
|
|
L_0238DF34: ; // 0x238df34
|
|
/* 0238DF34 */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0238DF38 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238DF3C */ cpu->r[17] = cpu->r[3];
|
|
/* 0238DF3C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[17], 0x00000000u);
|
|
/* 0238DF40 */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238DF40 */ _t57 = _t56 & 0x00000001u;
|
|
/* 0238DF40 */ if (_t57) goto L_0238DFB8; else goto L_0238DF44;
|
|
L_0238DF44: ; // 0x238df44
|
|
/* 0238DF44 */ cpu->r[20] = cpu->r[17];
|
|
/* 0238DF44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[20], 0x00000000u);
|
|
/* 0238DF48 */ _t58 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238DF48 */ _t59 = _t58 & 0x00000001u;
|
|
/* 0238DF48 */ if (_t59) goto L_0238DF4C; else goto L_0238DF5C;
|
|
L_0238DF4C: ; // 0x238df4c
|
|
/* 0238DF4C */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0238DF50 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238DF54 */ cpu->r[20] = cpu->r[3];
|
|
/* 0238DF54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[20], 0x00000000u);
|
|
/* 0238DF58 */ _t60 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238DF58 */ _t61 = _t60 & 0x00000001u;
|
|
/* 0238DF58 */ if (_t61) goto L_0238DFB4; else goto L_0238DF5C;
|
|
L_0238DF5C: ; // 0x238df5c
|
|
/* 0238DF5C */ cpu->r[3] = cpu->r[20];
|
|
/* 0238DF5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238DF60 */ _t62 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238DF60 */ _t63 = _t62 & 0x00000001u;
|
|
/* 0238DF60 */ if (_t63) goto L_0238DF64; else goto L_0238DF8C;
|
|
L_0238DF64: ; // 0x238df64
|
|
/* 0238DF64 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0238DF68 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238DF6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238DF70 */ _t64 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238DF70 */ _t65 = _t64 & 0x00000001u;
|
|
/* 0238DF70 */ if (_t65) goto L_0238DF74; else goto L_0238DF8C;
|
|
L_0238DF74: ; // 0x238df74
|
|
/* 0238DF74 */ _t66 = cpu->r[22] + 0x00007399u;
|
|
/* 0238DF74 */ cpu->r[29] = rbrew_read8(cpu->mem, _t66);
|
|
/* 0238DF78 */ _t67 = cpu->r[20] + 0x00000000u;
|
|
/* 0238DF78 */ cpu->r[12] = rbrew_read32(cpu->mem, _t67);
|
|
/* 0238DF7C */ _t68 = cpu->r[20] + 0x00000004u;
|
|
/* 0238DF7C */ rbrew_write32(cpu->mem, _t68, cpu->r[24]);
|
|
/* 0238DF80 */ _t69 = cpu->r[12] + 0x00000000u;
|
|
/* 0238DF80 */ rbrew_write8(cpu->mem, _t69, (uint8_t)cpu->r[29]);
|
|
/* 0238DF84 */ _t70 = cpu->r[17] + 0x00000004u;
|
|
/* 0238DF84 */ rbrew_write32(cpu->mem, _t70, cpu->r[23]);
|
|
/* 0238DF88 */ goto L_0238DFB8;
|
|
L_0238DF8C: ; // 0x238df8c
|
|
/* 0238DF8C */ cpu->r[9] = cpu->r[20] + 0x0000000Cu;
|
|
/* 0238DF90 */ _t71 = cpu->r[3] + 0x00000004u;
|
|
/* 0238DF90 */ rbrew_write32(cpu->mem, _t71, cpu->r[30]);
|
|
/* 0238DF94 */ cpu->r[0] = 0x00000020u;
|
|
/* 0238DF98 */ _t72 = cpu->r[3] + 0x00000000u;
|
|
/* 0238DF98 */ rbrew_write32(cpu->mem, _t72, cpu->r[9]);
|
|
/* 0238DF9C */ _t73 = cpu->r[3] + 0x00000008u;
|
|
/* 0238DF9C */ rbrew_write32(cpu->mem, _t73, cpu->r[0]);
|
|
/* 0238DFA0 */ _t74 = cpu->r[22] + 0x00007399u;
|
|
/* 0238DFA0 */ cpu->r[29] = rbrew_read8(cpu->mem, _t74);
|
|
/* 0238DFA4 */ _t75 = cpu->r[20] + 0x0000002Bu;
|
|
/* 0238DFA4 */ rbrew_write8(cpu->mem, _t75, (uint8_t)cpu->r[29]);
|
|
/* 0238DFA8 */ _t76 = cpu->r[20] + 0x00000000u;
|
|
/* 0238DFA8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t76);
|
|
/* 0238DFAC */ _t77 = cpu->r[20] + 0x00000004u;
|
|
/* 0238DFAC */ rbrew_write32(cpu->mem, _t77, cpu->r[24]);
|
|
/* 0238DFB0 */ _t78 = cpu->r[12] + 0x00000000u;
|
|
/* 0238DFB0 */ rbrew_write8(cpu->mem, _t78, (uint8_t)cpu->r[29]);
|
|
L_0238DFB4: ; // 0x238dfb4
|
|
/* 0238DFB4 */ _t79 = cpu->r[17] + 0x00000004u;
|
|
/* 0238DFB4 */ rbrew_write32(cpu->mem, _t79, cpu->r[23]);
|
|
L_0238DFB8: ; // 0x238dfb8
|
|
/* 0238DFB8 */ cpu->r[0] = cpu->r[19] + 0x00000080u;
|
|
/* 0238DFB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0238DFBC */ _t80 = cpu->r[19] + 0x00000058u;
|
|
/* 0238DFBC */ rbrew_write32(cpu->mem, _t80, cpu->r[18]);
|
|
/* 0238DFC0 */ _t81 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238DFC0 */ _t82 = _t81 & 0x00000001u;
|
|
/* 0238DFC0 */ if (_t82) goto L_0238DFC4; else goto L_0238DFCC;
|
|
L_0238DFC4: ; // 0x238dfc4
|
|
/* 0238DFC4 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0238DFC8 */ Gambit_fn_02801A78(cpu);
|
|
L_0238DFCC: ; // 0x238dfcc
|
|
/* 0238DFCC */ cpu->r[0] = cpu->r[19] + 0x0000008Cu;
|
|
/* 0238DFCC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0238DFD0 */ _t83 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238DFD0 */ _t84 = _t83 & 0x00000001u;
|
|
/* 0238DFD0 */ if (_t84) goto L_0238DFD4; else goto L_0238DFDC;
|
|
L_0238DFD4: ; // 0x238dfd4
|
|
/* 0238DFD4 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0238DFD8 */ Gambit_fn_02801A78(cpu);
|
|
L_0238DFDC: ; // 0x238dfdc
|
|
/* 0238DFDC */ _t85 = cpu->r[1] + 0x00000008u;
|
|
/* 0238DFDC */ cpu->r[8] = rbrew_read32(cpu->mem, _t85);
|
|
/* 0238DFE0 */ _t86 = cpu->r[19] + 0x0000009Cu;
|
|
/* 0238DFE0 */ rbrew_write8(cpu->mem, _t86, (uint8_t)cpu->r[21]);
|
|
/* 0238DFE4 */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 0238DFE8 */ _t87 = cpu->r[19] + 0x00000098u;
|
|
/* 0238DFE8 */ rbrew_write32(cpu->mem, _t87, cpu->r[8]);
|
|
/* 0238DFEC */ _t88 = cpu->r[19] + 0x000000A0u;
|
|
/* 0238DFEC */ rbrew_write32(cpu->mem, _t88, cpu->r[0]);
|
|
L_0238DFF0: ; // 0x238dff0
|
|
/* 0238DFF0 */ _t89 = cpu->r[31] + 0x000000A4u;
|
|
/* 0238DFF0 */ rbrew_write32(cpu->mem, _t89, cpu->r[21]);
|
|
/* 0238DFF4 */ cpu->r[4] = cpu->r[31] + 0x000000A4u;
|
|
/* 0238DFF8 */ cpu->r[3] = cpu->r[27] + 0x000004DCu;
|
|
/* 0238DFFC */ _t90 = cpu->r[31] + 0x000000A8u;
|
|
/* 0238DFFC */ rbrew_write32(cpu->mem, _t90, cpu->r[21]);
|
|
/* 0238E000 */ Gambit_fn_02801EBC(cpu);
|
|
/* 0238E004 */ _t91 = cpu->r[27] + 0x000004E4u;
|
|
/* 0238E004 */ cpu->r[11] = rbrew_read32(cpu->mem, _t91);
|
|
/* 0238E008 */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 0238E00C */ cpu->r[3] = cpu->r[27] + 0x000007C4u;
|
|
/* 0238E010 */ _t92 = cpu->r[27] + 0x000004E4u;
|
|
/* 0238E010 */ rbrew_write32(cpu->mem, _t92, cpu->r[11]);
|
|
/* 0238E014 */ Gambit_fn_02837030(cpu);
|
|
/* 0238E018 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0238E01C */ _t93 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238E01C */ _t94 = _t93 & 0x00000001u;
|
|
/* 0238E01C */ if (_t94) goto L_0238E020; else goto L_0238E050;
|
|
L_0238E020: ; // 0x238e020
|
|
/* 0238E020 */ goto L_0238E144;
|
|
L_0238E024: ; // 0x238e024
|
|
/* 0238E024 */ cpu->r[4] = 0x000000A4u;
|
|
/* 0238E028 */ cpu->r[3] = cpu->r[27] + 0x000004DCu;
|
|
/* 0238E02C */ cpu->r[31] = 0x00000000u;
|
|
/* 0238E030 */ Gambit_fn_02801EBC(cpu);
|
|
/* 0238E034 */ _t95 = cpu->r[27] + 0x000004E4u;
|
|
/* 0238E034 */ cpu->r[11] = rbrew_read32(cpu->mem, _t95);
|
|
/* 0238E038 */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 0238E03C */ cpu->r[3] = cpu->r[27] + 0x000007C4u;
|
|
/* 0238E040 */ _t96 = cpu->r[27] + 0x000004E4u;
|
|
/* 0238E040 */ rbrew_write32(cpu->mem, _t96, cpu->r[11]);
|
|
/* 0238E044 */ Gambit_fn_02837030(cpu);
|
|
/* 0238E048 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0238E04C */ _t97 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238E04C */ _t98 = _t97 & 0x00000001u;
|
|
/* 0238E04C */ if (_t98) goto L_0238E144; else goto L_0238E050;
|
|
L_0238E050: ; // 0x238e050
|
|
/* 0238E050 */ cpu->r[4] = cpu->r[31];
|
|
/* 0238E054 */ cpu->r[3] = cpu->r[27];
|
|
/* 0238E058 */ Gambit_fn_0238C684(cpu);
|
|
/* 0238E05C */ _t99 = cpu->r[28] + 0x00000004u;
|
|
/* 0238E05C */ cpu->r[12] = rbrew_read32(cpu->mem, _t99);
|
|
/* 0238E060 */ _t100 = cpu->r[12] + 0x00000014u;
|
|
/* 0238E060 */ cpu->r[10] = rbrew_read32(cpu->mem, _t100);
|
|
/* 0238E064 */ cpu->ctr = cpu->r[10];
|
|
/* 0238E068 */ _t101 = cpu->r[31] + 0x0000002Cu;
|
|
/* 0238E068 */ cpu->r[24] = rbrew_read32(cpu->mem, _t101);
|
|
/* 0238E06C */ cpu->r[3] = cpu->r[28];
|
|
/* 0238E070 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0238E074 */ _t102 = cpu->r[28] + 0x00000000u;
|
|
/* 0238E074 */ cpu->r[11] = rbrew_read32(cpu->mem, _t102);
|
|
/* 0238E078 */ _t103 = cpu->r[22] + 0x00007399u;
|
|
/* 0238E078 */ cpu->r[29] = rbrew_read8(cpu->mem, _t103);
|
|
/* 0238E07C */ _t104 = cpu->r[11] + 0x00000000u;
|
|
/* 0238E07C */ cpu->r[12] = rbrew_read8(cpu->mem, _t104);
|
|
/* 0238E080 */ cpu->r[30] = 0x00000000u;
|
|
/* 0238E084 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[29]);
|
|
/* 0238E088 */ cpu->r[5] = 0x00080000u;
|
|
/* 0238E08C */ _t105 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238E08C */ _t106 = _t105 & 0x00000001u;
|
|
/* 0238E08C */ if (_t106) goto L_0238E0C8; else goto L_0238E090;
|
|
L_0238E090: ; // 0x238e090
|
|
/* 0238E090 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 0238E094 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[5]);
|
|
/* 0238E098 */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 0238E09C */ _t107 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0238E09C */ _t108 = _t107 & 0x00000001u;
|
|
/* 0238E09C */ if (_t108) goto L_0238E0C4; else goto L_0238E0A0;
|
|
L_0238E0A0: ; // 0x238e0a0
|
|
/* 0238E0A0 */ _t109 = cpu->r[11] + 0x00000000u;
|
|
/* 0238E0A0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t109);
|
|
/* 0238E0A4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[29]);
|
|
/* 0238E0A8 */ _t110 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238E0A8 */ _t111 = _t110 & 0x00000001u;
|
|
/* 0238E0A8 */ if (_t111) goto L_0238E0AC; else goto L_0238E090;
|
|
L_0238E0AC: ; // 0x238e0ac
|
|
/* 0238E0AC */ _t112 = cpu->r[31] + 0x00000034u;
|
|
/* 0238E0AC */ cpu->r[9] = rbrew_read32(cpu->mem, _t112);
|
|
/* 0238E0B0 */ _t113 = cpu->r[28] + 0x00000004u;
|
|
/* 0238E0B0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t113);
|
|
/* 0238E0B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[9]);
|
|
/* 0238E0B8 */ _t114 = cpu->r[5] + 0x00000014u;
|
|
/* 0238E0B8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t114);
|
|
/* 0238E0BC */ _t115 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0238E0BC */ _t116 = _t115 & 0x00000001u;
|
|
/* 0238E0BC */ if (_t116) goto L_0238E0E0; else goto L_0238E0C0;
|
|
L_0238E0C0: ; // 0x238e0c0
|
|
/* 0238E0C0 */ goto L_0238E0DC;
|
|
L_0238E0C4: ; // 0x238e0c4
|
|
/* 0238E0C4 */ cpu->r[30] = 0x00000000u;
|
|
L_0238E0C8: ; // 0x238e0c8
|
|
/* 0238E0C8 */ _t117 = cpu->r[31] + 0x00000034u;
|
|
/* 0238E0C8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t117);
|
|
/* 0238E0CC */ _t118 = cpu->r[28] + 0x00000004u;
|
|
/* 0238E0CC */ cpu->r[5] = rbrew_read32(cpu->mem, _t118);
|
|
/* 0238E0D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[9]);
|
|
/* 0238E0D4 */ _t119 = cpu->r[5] + 0x00000014u;
|
|
/* 0238E0D4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t119);
|
|
/* 0238E0D8 */ _t120 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0238E0D8 */ _t121 = _t120 & 0x00000001u;
|
|
/* 0238E0D8 */ if (_t121) goto L_0238E0E0; else goto L_0238E0DC;
|
|
L_0238E0DC: ; // 0x238e0dc
|
|
/* 0238E0DC */ cpu->r[30] = cpu->r[9] + 0xFFFFFFFFu;
|
|
L_0238E0E0: ; // 0x238e0e0
|
|
/* 0238E0E0 */ cpu->ctr = cpu->r[7];
|
|
/* 0238E0E4 */ cpu->r[3] = cpu->r[28];
|
|
/* 0238E0E8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0238E0EC */ _t122 = cpu->r[28] + 0x00000000u;
|
|
/* 0238E0EC */ cpu->r[4] = rbrew_read32(cpu->mem, _t122);
|
|
/* 0238E0F0 */ cpu->r[3] = cpu->r[24];
|
|
/* 0238E0F4 */ cpu->r[5] = cpu->r[30];
|
|
/* 0238E0F8 */ cpu->r[6] = 0x00000000u;
|
|
/* 0238E0FC */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0238E100 */ _t123 = cpu->r[24] + cpu->r[30];
|
|
/* 0238E100 */ rbrew_write8(cpu->mem, _t123, (uint8_t)cpu->r[29]);
|
|
/* 0238E104 */ _t124 = cpu->r[26] + 0x00000000u;
|
|
/* 0238E104 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t124);
|
|
/* 0238E108 */ _t125 = cpu->r[31] + 0x00000080u;
|
|
/* 0238E108 */ rbrew_write_f32(cpu->mem, _t125, cpu->f[0]);
|
|
/* 0238E10C */ _t126 = cpu->r[26] + 0x00000004u;
|
|
/* 0238E10C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t126);
|
|
/* 0238E110 */ _t127 = cpu->r[31] + 0x00000084u;
|
|
/* 0238E110 */ rbrew_write_f32(cpu->mem, _t127, cpu->f[0]);
|
|
/* 0238E114 */ _t128 = cpu->r[26] + 0x00000008u;
|
|
/* 0238E114 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t128);
|
|
/* 0238E118 */ _t129 = cpu->r[31] + 0x00000088u;
|
|
/* 0238E118 */ rbrew_write_f32(cpu->mem, _t129, cpu->f[0]);
|
|
/* 0238E11C */ _t130 = cpu->r[25] + 0x00000000u;
|
|
/* 0238E11C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t130);
|
|
/* 0238E120 */ _t131 = cpu->r[31] + 0x0000008Cu;
|
|
/* 0238E120 */ rbrew_write_f32(cpu->mem, _t131, cpu->f[0]);
|
|
/* 0238E124 */ _t132 = cpu->r[25] + 0x00000004u;
|
|
/* 0238E124 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t132);
|
|
/* 0238E128 */ _t133 = cpu->r[31] + 0x00000090u;
|
|
/* 0238E128 */ rbrew_write_f32(cpu->mem, _t133, cpu->f[0]);
|
|
/* 0238E12C */ cpu->r[0] = 0x00000001u;
|
|
/* 0238E130 */ _t134 = cpu->r[25] + 0x00000008u;
|
|
/* 0238E130 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t134);
|
|
/* 0238E134 */ _t135 = cpu->r[31] + 0x0000009Cu;
|
|
/* 0238E134 */ rbrew_write8(cpu->mem, _t135, (uint8_t)cpu->r[0]);
|
|
/* 0238E138 */ cpu->r[3] = cpu->r[27];
|
|
/* 0238E13C */ _t136 = cpu->r[31] + 0x00000094u;
|
|
/* 0238E13C */ rbrew_write_f32(cpu->mem, _t136, cpu->f[0]);
|
|
/* 0238E140 */ Gambit_fn_0238C0E0(cpu);
|
|
L_0238E144: ; // 0x238e144
|
|
/* 0238E144 */ /* nop */
|
|
/* 0238E148 */ _t137 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0238E148 */ cpu->r[0] = rbrew_read32(cpu->mem, _t137);
|
|
/* 0238E14C */ cpu->lr = cpu->r[0];
|
|
/* 0238E150 */ cpu->r[1] = cpu->r[1] + 0x00000048u;
|
|
/* 0238E154 */ return;
|
|
}
|
|
|
|
// fn_0238E158 @ 0x238e158
|
|
void Gambit_fn_0238E158(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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;
|
|
|
|
L_0238E158: ; // 0x238e158
|
|
/* 0238E158 */ _t0 = cpu->r[1] + 0xFFFFFFB8u;
|
|
/* 0238E158 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0238E158 */ cpu->r[1] = _t0;
|
|
/* 0238E15C */ /* nop */
|
|
/* 0238E160 */ cpu->r[0] = cpu->lr;
|
|
/* 0238E164 */ _t1 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0238E164 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0238E168 */ cpu->r[29] = cpu->r[6];
|
|
/* 0238E16C */ cpu->r[26] = cpu->r[3];
|
|
/* 0238E170 */ _t2 = cpu->r[26] + 0x00000505u;
|
|
/* 0238E170 */ cpu->r[0] = rbrew_read8(cpu->mem, _t2);
|
|
/* 0238E174 */ cpu->r[27] = cpu->r[4];
|
|
/* 0238E178 */ cpu->r[28] = cpu->r[5];
|
|
/* 0238E17C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0238E180 */ cpu->r[30] = cpu->r[7];
|
|
/* 0238E184 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238E184 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0238E184 */ if (_t4) goto L_0238E424; else goto L_0238E188;
|
|
L_0238E188: ; // 0x238e188
|
|
/* 0238E188 */ _t5 = cpu->r[26] + 0x00000504u;
|
|
/* 0238E188 */ cpu->r[0] = rbrew_read8(cpu->mem, _t5);
|
|
/* 0238E18C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0238E190 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238E190 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0238E190 */ if (_t7) goto L_0238E424; else goto L_0238E194;
|
|
L_0238E194: ; // 0x238e194
|
|
/* 0238E194 */ cpu->r[3] = cpu->r[26] + 0x000007C4u;
|
|
/* 0238E198 */ Gambit_fn_02836FFC(cpu);
|
|
/* 0238E19C */ cpu->r[3] = 0x101C0000u;
|
|
/* 0238E1A0 */ _t8 = cpu->r[3] + 0x00006000u;
|
|
/* 0238E1A0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0238E1A4 */ _t9 = cpu->r[3] + 0x00000004u;
|
|
/* 0238E1A4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0238E1A8 */ _t10 = cpu->r[8] + 0x0000012Cu;
|
|
/* 0238E1A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0238E1AC */ cpu->ctr = cpu->r[0];
|
|
/* 0238E1B0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0238E1B4 */ _t11 = cpu->r[26] + 0x000004E4u;
|
|
/* 0238E1B4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0238E1B8 */ cpu->r[23] = cpu->r[3];
|
|
/* 0238E1BC */ _t12 = cpu->r[26] + 0x000004F0u;
|
|
/* 0238E1BC */ cpu->r[11] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0238E1C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], cpu->r[11]);
|
|
/* 0238E1C4 */ cpu->r[22] = 0x00000000u;
|
|
/* 0238E1C8 */ _t13 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0238E1C8 */ _t14 = _t13 & 0x00000001u;
|
|
/* 0238E1C8 */ if (_t14) goto L_0238E1EC; else goto L_0238E1CC;
|
|
L_0238E1CC: ; // 0x238e1cc
|
|
/* 0238E1CC */ cpu->r[3] = cpu->r[26] + 0x000007C4u;
|
|
/* 0238E1D0 */ cpu->r[31] = 0x00000000u;
|
|
/* 0238E1D4 */ Gambit_fn_02837030(cpu);
|
|
/* 0238E1D8 */ /* nop */
|
|
/* 0238E1DC */ _t15 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0238E1DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0238E1E0 */ cpu->lr = cpu->r[0];
|
|
/* 0238E1E4 */ cpu->r[1] = cpu->r[1] + 0x00000048u;
|
|
/* 0238E1E8 */ return;
|
|
L_0238E1EC: ; // 0x238e1ec
|
|
/* 0238E1EC */ _t16 = cpu->r[26] + 0x000004E8u;
|
|
/* 0238E1EC */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0238E1F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0238E1F4 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238E1F4 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0238E1F4 */ if (_t18) goto L_0238E200; else goto L_0238E1F8;
|
|
L_0238E1F8: ; // 0x238e1f8
|
|
/* 0238E1F8 */ _t19 = cpu->r[31] + 0x00000000u;
|
|
/* 0238E1F8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0238E1FC */ _t20 = cpu->r[26] + 0x000004E8u;
|
|
/* 0238E1FC */ rbrew_write32(cpu->mem, _t20, cpu->r[12]);
|
|
L_0238E200: ; // 0x238e200
|
|
/* 0238E200 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0238E204 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238E204 */ _t22 = _t21 & 0x00000001u;
|
|
/* 0238E204 */ if (_t22) goto L_0238E3C8; else goto L_0238E208;
|
|
L_0238E208: ; // 0x238e208
|
|
/* 0238E208 */ cpu->r[0] = 0x0000000Au;
|
|
/* 0238E20C */ cpu->r[21] = cpu->r[31];
|
|
/* 0238E20C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], 0x00000000u);
|
|
/* 0238E210 */ _t23 = cpu->r[1] + 0x00000008u;
|
|
/* 0238E210 */ rbrew_write32(cpu->mem, _t23, cpu->r[0]);
|
|
/* 0238E214 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238E214 */ _t25 = _t24 & 0x00000001u;
|
|
/* 0238E214 */ if (_t25) goto L_0238E218; else goto L_0238E228;
|
|
L_0238E218: ; // 0x238e218
|
|
/* 0238E218 */ cpu->r[3] = 0x000000A4u;
|
|
/* 0238E21C */ Gambit_fn_02801A78(cpu);
|
|
/* 0238E220 */ cpu->r[21] = cpu->r[3];
|
|
/* 0238E220 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], 0x00000000u);
|
|
/* 0238E224 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238E224 */ _t27 = _t26 & 0x00000001u;
|
|
/* 0238E224 */ if (_t27) goto L_0238E394; else goto L_0238E228;
|
|
L_0238E228: ; // 0x238e228
|
|
/* 0238E228 */ cpu->r[19] = 0x10080000u;
|
|
/* 0238E22C */ cpu->r[24] = cpu->r[21];
|
|
/* 0238E22C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 0238E230 */ cpu->r[20] = 0x10080000u;
|
|
/* 0238E234 */ cpu->r[19] = cpu->r[19] + 0x000062A8u;
|
|
/* 0238E238 */ cpu->r[18] = 0x10080000u;
|
|
/* 0238E23C */ cpu->r[20] = cpu->r[20] + 0x00006290u;
|
|
/* 0238E240 */ cpu->r[17] = 0x10110000u;
|
|
/* 0238E244 */ cpu->r[18] = cpu->r[18] + 0x000062C0u;
|
|
/* 0238E248 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238E248 */ _t29 = _t28 & 0x00000001u;
|
|
/* 0238E248 */ if (_t29) goto L_0238E24C; else goto L_0238E25C;
|
|
L_0238E24C: ; // 0x238e24c
|
|
/* 0238E24C */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0238E250 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238E254 */ cpu->r[24] = cpu->r[3];
|
|
/* 0238E254 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 0238E258 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238E258 */ _t31 = _t30 & 0x00000001u;
|
|
/* 0238E258 */ if (_t31) goto L_0238E2D0; else goto L_0238E25C;
|
|
L_0238E25C: ; // 0x238e25c
|
|
/* 0238E25C */ cpu->r[25] = cpu->r[24];
|
|
/* 0238E25C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 0238E260 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238E260 */ _t33 = _t32 & 0x00000001u;
|
|
/* 0238E260 */ if (_t33) goto L_0238E264; else goto L_0238E274;
|
|
L_0238E264: ; // 0x238e264
|
|
/* 0238E264 */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0238E268 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238E26C */ cpu->r[25] = cpu->r[3];
|
|
/* 0238E26C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 0238E270 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238E270 */ _t35 = _t34 & 0x00000001u;
|
|
/* 0238E270 */ if (_t35) goto L_0238E2CC; else goto L_0238E274;
|
|
L_0238E274: ; // 0x238e274
|
|
/* 0238E274 */ cpu->r[3] = cpu->r[25];
|
|
/* 0238E274 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238E278 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238E278 */ _t37 = _t36 & 0x00000001u;
|
|
/* 0238E278 */ if (_t37) goto L_0238E27C; else goto L_0238E2A4;
|
|
L_0238E27C: ; // 0x238e27c
|
|
/* 0238E27C */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0238E280 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238E284 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238E288 */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238E288 */ _t39 = _t38 & 0x00000001u;
|
|
/* 0238E288 */ if (_t39) goto L_0238E28C; else goto L_0238E2A4;
|
|
L_0238E28C: ; // 0x238e28c
|
|
/* 0238E28C */ _t40 = cpu->r[25] + 0x00000000u;
|
|
/* 0238E28C */ cpu->r[12] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0238E290 */ _t41 = cpu->r[17] + 0x00007399u;
|
|
/* 0238E290 */ cpu->r[8] = rbrew_read8(cpu->mem, _t41);
|
|
/* 0238E294 */ _t42 = cpu->r[25] + 0x00000004u;
|
|
/* 0238E294 */ rbrew_write32(cpu->mem, _t42, cpu->r[19]);
|
|
/* 0238E298 */ _t43 = cpu->r[12] + 0x00000000u;
|
|
/* 0238E298 */ rbrew_write8(cpu->mem, _t43, (uint8_t)cpu->r[8]);
|
|
/* 0238E29C */ _t44 = cpu->r[24] + 0x00000004u;
|
|
/* 0238E29C */ rbrew_write32(cpu->mem, _t44, cpu->r[18]);
|
|
/* 0238E2A0 */ goto L_0238E2D0;
|
|
L_0238E2A4: ; // 0x238e2a4
|
|
/* 0238E2A4 */ cpu->r[10] = cpu->r[25] + 0x0000000Cu;
|
|
/* 0238E2A8 */ _t45 = cpu->r[3] + 0x00000004u;
|
|
/* 0238E2A8 */ rbrew_write32(cpu->mem, _t45, cpu->r[20]);
|
|
/* 0238E2AC */ cpu->r[11] = 0x00000020u;
|
|
/* 0238E2B0 */ _t46 = cpu->r[3] + 0x00000000u;
|
|
/* 0238E2B0 */ rbrew_write32(cpu->mem, _t46, cpu->r[10]);
|
|
/* 0238E2B4 */ _t47 = cpu->r[3] + 0x00000008u;
|
|
/* 0238E2B4 */ rbrew_write32(cpu->mem, _t47, cpu->r[11]);
|
|
/* 0238E2B8 */ _t48 = cpu->r[17] + 0x00007399u;
|
|
/* 0238E2B8 */ cpu->r[8] = rbrew_read8(cpu->mem, _t48);
|
|
/* 0238E2BC */ _t49 = cpu->r[25] + 0x00000004u;
|
|
/* 0238E2BC */ rbrew_write32(cpu->mem, _t49, cpu->r[19]);
|
|
/* 0238E2C0 */ _t50 = cpu->r[25] + 0x00000000u;
|
|
/* 0238E2C0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t50);
|
|
/* 0238E2C4 */ _t51 = cpu->r[25] + 0x0000002Bu;
|
|
/* 0238E2C4 */ rbrew_write8(cpu->mem, _t51, (uint8_t)cpu->r[8]);
|
|
/* 0238E2C8 */ _t52 = cpu->r[12] + 0x00000000u;
|
|
/* 0238E2C8 */ rbrew_write8(cpu->mem, _t52, (uint8_t)cpu->r[8]);
|
|
L_0238E2CC: ; // 0x238e2cc
|
|
/* 0238E2CC */ _t53 = cpu->r[24] + 0x00000004u;
|
|
/* 0238E2CC */ rbrew_write32(cpu->mem, _t53, cpu->r[18]);
|
|
L_0238E2D0: ; // 0x238e2d0
|
|
/* 0238E2D0 */ cpu->r[24] = cpu->r[21] + 0x0000002Cu;
|
|
/* 0238E2D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 0238E2D4 */ _t54 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238E2D4 */ _t55 = _t54 & 0x00000001u;
|
|
/* 0238E2D4 */ if (_t55) goto L_0238E2D8; else goto L_0238E2E8;
|
|
L_0238E2D8: ; // 0x238e2d8
|
|
/* 0238E2D8 */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0238E2DC */ Gambit_fn_02801A78(cpu);
|
|
/* 0238E2E0 */ cpu->r[24] = cpu->r[3];
|
|
/* 0238E2E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 0238E2E4 */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238E2E4 */ _t57 = _t56 & 0x00000001u;
|
|
/* 0238E2E4 */ if (_t57) goto L_0238E35C; else goto L_0238E2E8;
|
|
L_0238E2E8: ; // 0x238e2e8
|
|
/* 0238E2E8 */ cpu->r[25] = cpu->r[24];
|
|
/* 0238E2E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 0238E2EC */ _t58 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238E2EC */ _t59 = _t58 & 0x00000001u;
|
|
/* 0238E2EC */ if (_t59) goto L_0238E2F0; else goto L_0238E300;
|
|
L_0238E2F0: ; // 0x238e2f0
|
|
/* 0238E2F0 */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0238E2F4 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238E2F8 */ cpu->r[25] = cpu->r[3];
|
|
/* 0238E2F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 0238E2FC */ _t60 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238E2FC */ _t61 = _t60 & 0x00000001u;
|
|
/* 0238E2FC */ if (_t61) goto L_0238E358; else goto L_0238E300;
|
|
L_0238E300: ; // 0x238e300
|
|
/* 0238E300 */ cpu->r[3] = cpu->r[25];
|
|
/* 0238E300 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238E304 */ _t62 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238E304 */ _t63 = _t62 & 0x00000001u;
|
|
/* 0238E304 */ if (_t63) goto L_0238E308; else goto L_0238E330;
|
|
L_0238E308: ; // 0x238e308
|
|
/* 0238E308 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0238E30C */ Gambit_fn_02801A78(cpu);
|
|
/* 0238E310 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238E314 */ _t64 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238E314 */ _t65 = _t64 & 0x00000001u;
|
|
/* 0238E314 */ if (_t65) goto L_0238E318; else goto L_0238E330;
|
|
L_0238E318: ; // 0x238e318
|
|
/* 0238E318 */ _t66 = cpu->r[25] + 0x00000000u;
|
|
/* 0238E318 */ cpu->r[6] = rbrew_read32(cpu->mem, _t66);
|
|
/* 0238E31C */ _t67 = cpu->r[17] + 0x00007399u;
|
|
/* 0238E31C */ cpu->r[8] = rbrew_read8(cpu->mem, _t67);
|
|
/* 0238E320 */ _t68 = cpu->r[25] + 0x00000004u;
|
|
/* 0238E320 */ rbrew_write32(cpu->mem, _t68, cpu->r[19]);
|
|
/* 0238E324 */ _t69 = cpu->r[6] + 0x00000000u;
|
|
/* 0238E324 */ rbrew_write8(cpu->mem, _t69, (uint8_t)cpu->r[8]);
|
|
/* 0238E328 */ _t70 = cpu->r[24] + 0x00000004u;
|
|
/* 0238E328 */ rbrew_write32(cpu->mem, _t70, cpu->r[18]);
|
|
/* 0238E32C */ goto L_0238E35C;
|
|
L_0238E330: ; // 0x238e330
|
|
/* 0238E330 */ cpu->r[0] = cpu->r[25] + 0x0000000Cu;
|
|
/* 0238E334 */ _t71 = cpu->r[3] + 0x00000004u;
|
|
/* 0238E334 */ rbrew_write32(cpu->mem, _t71, cpu->r[20]);
|
|
/* 0238E338 */ cpu->r[5] = 0x00000020u;
|
|
/* 0238E33C */ _t72 = cpu->r[3] + 0x00000000u;
|
|
/* 0238E33C */ rbrew_write32(cpu->mem, _t72, cpu->r[0]);
|
|
/* 0238E340 */ _t73 = cpu->r[3] + 0x00000008u;
|
|
/* 0238E340 */ rbrew_write32(cpu->mem, _t73, cpu->r[5]);
|
|
/* 0238E344 */ _t74 = cpu->r[17] + 0x00007399u;
|
|
/* 0238E344 */ cpu->r[8] = rbrew_read8(cpu->mem, _t74);
|
|
/* 0238E348 */ _t75 = cpu->r[25] + 0x00000004u;
|
|
/* 0238E348 */ rbrew_write32(cpu->mem, _t75, cpu->r[19]);
|
|
/* 0238E34C */ _t76 = cpu->r[25] + 0x00000000u;
|
|
/* 0238E34C */ cpu->r[6] = rbrew_read32(cpu->mem, _t76);
|
|
/* 0238E350 */ _t77 = cpu->r[25] + 0x0000002Bu;
|
|
/* 0238E350 */ rbrew_write8(cpu->mem, _t77, (uint8_t)cpu->r[8]);
|
|
/* 0238E354 */ _t78 = cpu->r[6] + 0x00000000u;
|
|
/* 0238E354 */ rbrew_write8(cpu->mem, _t78, (uint8_t)cpu->r[8]);
|
|
L_0238E358: ; // 0x238e358
|
|
/* 0238E358 */ _t79 = cpu->r[24] + 0x00000004u;
|
|
/* 0238E358 */ rbrew_write32(cpu->mem, _t79, cpu->r[18]);
|
|
L_0238E35C: ; // 0x238e35c
|
|
/* 0238E35C */ cpu->r[7] = cpu->r[21] + 0x00000080u;
|
|
/* 0238E35C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 0238E360 */ _t80 = cpu->r[21] + 0x00000058u;
|
|
/* 0238E360 */ rbrew_write32(cpu->mem, _t80, cpu->r[23]);
|
|
/* 0238E364 */ _t81 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238E364 */ _t82 = _t81 & 0x00000001u;
|
|
/* 0238E364 */ if (_t82) goto L_0238E368; else goto L_0238E370;
|
|
L_0238E368: ; // 0x238e368
|
|
/* 0238E368 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0238E36C */ Gambit_fn_02801A78(cpu);
|
|
L_0238E370: ; // 0x238e370
|
|
/* 0238E370 */ cpu->r[9] = cpu->r[21] + 0x0000008Cu;
|
|
/* 0238E370 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0238E374 */ _t83 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238E374 */ _t84 = _t83 & 0x00000001u;
|
|
/* 0238E374 */ if (_t84) goto L_0238E378; else goto L_0238E380;
|
|
L_0238E378: ; // 0x238e378
|
|
/* 0238E378 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0238E37C */ Gambit_fn_02801A78(cpu);
|
|
L_0238E380: ; // 0x238e380
|
|
/* 0238E380 */ _t85 = cpu->r[1] + 0x00000008u;
|
|
/* 0238E380 */ cpu->r[10] = rbrew_read32(cpu->mem, _t85);
|
|
/* 0238E384 */ _t86 = cpu->r[21] + 0x0000009Cu;
|
|
/* 0238E384 */ rbrew_write8(cpu->mem, _t86, (uint8_t)cpu->r[22]);
|
|
/* 0238E388 */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 0238E38C */ _t87 = cpu->r[21] + 0x00000098u;
|
|
/* 0238E38C */ rbrew_write32(cpu->mem, _t87, cpu->r[10]);
|
|
/* 0238E390 */ _t88 = cpu->r[21] + 0x000000A0u;
|
|
/* 0238E390 */ rbrew_write32(cpu->mem, _t88, cpu->r[0]);
|
|
L_0238E394: ; // 0x238e394
|
|
/* 0238E394 */ _t89 = cpu->r[31] + 0x000000A4u;
|
|
/* 0238E394 */ rbrew_write32(cpu->mem, _t89, cpu->r[22]);
|
|
/* 0238E398 */ cpu->r[4] = cpu->r[31] + 0x000000A4u;
|
|
/* 0238E39C */ cpu->r[3] = cpu->r[26] + 0x000004DCu;
|
|
/* 0238E3A0 */ _t90 = cpu->r[31] + 0x000000A8u;
|
|
/* 0238E3A0 */ rbrew_write32(cpu->mem, _t90, cpu->r[22]);
|
|
/* 0238E3A4 */ Gambit_fn_02801EBC(cpu);
|
|
/* 0238E3A8 */ _t91 = cpu->r[26] + 0x000004E4u;
|
|
/* 0238E3A8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t91);
|
|
/* 0238E3AC */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 0238E3B0 */ cpu->r[3] = cpu->r[26] + 0x000007C4u;
|
|
/* 0238E3B4 */ _t92 = cpu->r[26] + 0x000004E4u;
|
|
/* 0238E3B4 */ rbrew_write32(cpu->mem, _t92, cpu->r[12]);
|
|
/* 0238E3B8 */ Gambit_fn_02837030(cpu);
|
|
/* 0238E3BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0238E3C0 */ _t93 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238E3C0 */ _t94 = _t93 & 0x00000001u;
|
|
/* 0238E3C0 */ if (_t94) goto L_0238E3C4; else goto L_0238E3F4;
|
|
L_0238E3C4: ; // 0x238e3c4
|
|
/* 0238E3C4 */ goto L_0238E424;
|
|
L_0238E3C8: ; // 0x238e3c8
|
|
/* 0238E3C8 */ cpu->r[4] = 0x000000A4u;
|
|
/* 0238E3CC */ cpu->r[3] = cpu->r[26] + 0x000004DCu;
|
|
/* 0238E3D0 */ cpu->r[31] = 0x00000000u;
|
|
/* 0238E3D4 */ Gambit_fn_02801EBC(cpu);
|
|
/* 0238E3D8 */ _t95 = cpu->r[26] + 0x000004E4u;
|
|
/* 0238E3D8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t95);
|
|
/* 0238E3DC */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 0238E3E0 */ cpu->r[3] = cpu->r[26] + 0x000007C4u;
|
|
/* 0238E3E4 */ _t96 = cpu->r[26] + 0x000004E4u;
|
|
/* 0238E3E4 */ rbrew_write32(cpu->mem, _t96, cpu->r[12]);
|
|
/* 0238E3E8 */ Gambit_fn_02837030(cpu);
|
|
/* 0238E3EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0238E3F0 */ _t97 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238E3F0 */ _t98 = _t97 & 0x00000001u;
|
|
/* 0238E3F0 */ if (_t98) goto L_0238E424; else goto L_0238E3F4;
|
|
L_0238E3F4: ; // 0x238e3f4
|
|
/* 0238E3F4 */ cpu->r[3] = cpu->r[26];
|
|
/* 0238E3F8 */ cpu->r[4] = cpu->r[31];
|
|
/* 0238E3FC */ Gambit_fn_0238C684(cpu);
|
|
/* 0238E400 */ _t99 = cpu->r[27] + 0x00000000u;
|
|
/* 0238E400 */ cpu->r[0] = rbrew_read32(cpu->mem, _t99);
|
|
/* 0238E404 */ _t100 = cpu->r[31] + 0x00000070u;
|
|
/* 0238E404 */ rbrew_write32(cpu->mem, _t100, cpu->r[29]);
|
|
/* 0238E408 */ cpu->r[5] = 0x00000001u;
|
|
/* 0238E40C */ _t101 = cpu->r[31] + 0x000000A0u;
|
|
/* 0238E40C */ rbrew_write32(cpu->mem, _t101, cpu->r[0]);
|
|
/* 0238E410 */ cpu->r[3] = cpu->r[26];
|
|
/* 0238E414 */ _t102 = cpu->r[31] + 0x0000009Cu;
|
|
/* 0238E414 */ rbrew_write8(cpu->mem, _t102, (uint8_t)cpu->r[5]);
|
|
/* 0238E418 */ _t103 = cpu->r[31] + 0x0000006Cu;
|
|
/* 0238E418 */ rbrew_write32(cpu->mem, _t103, cpu->r[28]);
|
|
/* 0238E41C */ _t104 = cpu->r[31] + 0x00000074u;
|
|
/* 0238E41C */ rbrew_write32(cpu->mem, _t104, cpu->r[30]);
|
|
/* 0238E420 */ Gambit_fn_0238C0E0(cpu);
|
|
L_0238E424: ; // 0x238e424
|
|
/* 0238E424 */ /* nop */
|
|
/* 0238E428 */ _t105 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0238E428 */ cpu->r[0] = rbrew_read32(cpu->mem, _t105);
|
|
/* 0238E42C */ cpu->lr = cpu->r[0];
|
|
/* 0238E430 */ cpu->r[1] = cpu->r[1] + 0x00000048u;
|
|
/* 0238E434 */ return;
|
|
}
|
|
|
|
// fn_0238E438 @ 0x238e438
|
|
void Gambit_fn_0238E438(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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;
|
|
|
|
L_0238E438: ; // 0x238e438
|
|
/* 0238E438 */ _t0 = cpu->r[1] + 0xFFFFFFA0u;
|
|
/* 0238E438 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0238E438 */ cpu->r[1] = _t0;
|
|
/* 0238E43C */ /* nop */
|
|
/* 0238E440 */ _t1 = cpu->r[1] + 0x00000050u;
|
|
/* 0238E440 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0238E444 */ _t2 = cpu->r[1] + 0x00000040u;
|
|
/* 0238E444 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[30]);
|
|
/* 0238E448 */ /* nop */
|
|
/* 0238E44C */ _t3 = cpu->r[1] + 0x00000058u;
|
|
/* 0238E44C */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 0238E450 */ /* nop */
|
|
/* 0238E454 */ cpu->r[0] = cpu->lr;
|
|
/* 0238E458 */ _t4 = cpu->r[1] + 0x00000064u;
|
|
/* 0238E458 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0238E45C */ _t5 = cpu->r[1] + 0x00000048u;
|
|
/* 0238E45C */ rbrew_write_f32(cpu->mem, _t5, cpu->f[30]);
|
|
/* 0238E460 */ cpu->r[29] = cpu->r[4];
|
|
/* 0238E464 */ cpu->r[28] = cpu->r[3];
|
|
/* 0238E468 */ _t6 = cpu->r[28] + 0x00000505u;
|
|
/* 0238E468 */ cpu->r[0] = rbrew_read8(cpu->mem, _t6);
|
|
/* 0238E46C */ cpu->f[31] = cpu->f[2];
|
|
/* 0238E470 */ cpu->r[30] = cpu->r[5];
|
|
/* 0238E474 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0238E478 */ cpu->f[30] = cpu->f[1];
|
|
/* 0238E47C */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238E47C */ _t8 = _t7 & 0x00000001u;
|
|
/* 0238E47C */ if (_t8) goto L_0238E748; else goto L_0238E480;
|
|
L_0238E480: ; // 0x238e480
|
|
/* 0238E480 */ _t9 = cpu->r[28] + 0x00000504u;
|
|
/* 0238E480 */ cpu->r[8] = rbrew_read8(cpu->mem, _t9);
|
|
/* 0238E484 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0238E488 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238E488 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0238E488 */ if (_t11) goto L_0238E748; else goto L_0238E48C;
|
|
L_0238E48C: ; // 0x238e48c
|
|
/* 0238E48C */ cpu->r[3] = cpu->r[28] + 0x000007C4u;
|
|
/* 0238E490 */ Gambit_fn_02836FFC(cpu);
|
|
/* 0238E494 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0238E498 */ _t12 = cpu->r[3] + 0x00006000u;
|
|
/* 0238E498 */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0238E49C */ _t13 = cpu->r[3] + 0x00000004u;
|
|
/* 0238E49C */ cpu->r[9] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0238E4A0 */ _t14 = cpu->r[9] + 0x0000012Cu;
|
|
/* 0238E4A0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0238E4A4 */ cpu->ctr = cpu->r[10];
|
|
/* 0238E4A8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0238E4AC */ _t15 = cpu->r[28] + 0x000004E4u;
|
|
/* 0238E4AC */ cpu->r[11] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0238E4B0 */ cpu->r[23] = cpu->r[3];
|
|
/* 0238E4B4 */ _t16 = cpu->r[28] + 0x000004F0u;
|
|
/* 0238E4B4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0238E4B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], cpu->r[12]);
|
|
/* 0238E4BC */ cpu->r[22] = 0x00000000u;
|
|
/* 0238E4C0 */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0238E4C0 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0238E4C0 */ if (_t18) goto L_0238E4F8; else goto L_0238E4C4;
|
|
L_0238E4C4: ; // 0x238e4c4
|
|
/* 0238E4C4 */ cpu->r[3] = cpu->r[28] + 0x000007C4u;
|
|
/* 0238E4C8 */ cpu->r[31] = 0x00000000u;
|
|
/* 0238E4CC */ Gambit_fn_02837030(cpu);
|
|
/* 0238E4D0 */ /* nop */
|
|
/* 0238E4D4 */ _t19 = cpu->r[1] + 0x00000048u;
|
|
/* 0238E4D4 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 0238E4D8 */ _t20 = cpu->r[1] + 0x00000058u;
|
|
/* 0238E4D8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 0238E4DC */ _t21 = cpu->r[1] + 0x00000040u;
|
|
/* 0238E4DC */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t21);
|
|
/* 0238E4E0 */ _t22 = cpu->r[1] + 0x00000050u;
|
|
/* 0238E4E0 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t22);
|
|
/* 0238E4E4 */ _t23 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0238E4E4 */ _t24 = _t23 & 0x00000001u;
|
|
/* 0238E4E4 */ if (_t24) goto L_0238E4E8; // else: addr-0 trap, fall-through
|
|
L_0238E4E8: ; // 0x238e4e8
|
|
/* 0238E4E8 */ _t25 = cpu->r[1] + 0x00000064u;
|
|
/* 0238E4E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0238E4EC */ cpu->lr = cpu->r[0];
|
|
/* 0238E4F0 */ cpu->r[1] = cpu->r[1] + 0x00000060u;
|
|
/* 0238E4F4 */ return;
|
|
L_0238E4F8: ; // 0x238e4f8
|
|
/* 0238E4F8 */ _t26 = cpu->r[28] + 0x000004E8u;
|
|
/* 0238E4F8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0238E4FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0238E500 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238E500 */ _t28 = _t27 & 0x00000001u;
|
|
/* 0238E500 */ if (_t28) goto L_0238E50C; else goto L_0238E504;
|
|
L_0238E504: ; // 0x238e504
|
|
/* 0238E504 */ _t29 = cpu->r[31] + 0x00000000u;
|
|
/* 0238E504 */ cpu->r[0] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0238E508 */ _t30 = cpu->r[28] + 0x000004E8u;
|
|
/* 0238E508 */ rbrew_write32(cpu->mem, _t30, cpu->r[0]);
|
|
L_0238E50C: ; // 0x238e50c
|
|
/* 0238E50C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0238E510 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238E510 */ _t32 = _t31 & 0x00000001u;
|
|
/* 0238E510 */ if (_t32) goto L_0238E6D4; else goto L_0238E514;
|
|
L_0238E514: ; // 0x238e514
|
|
/* 0238E514 */ cpu->r[8] = 0x0000000Bu;
|
|
/* 0238E518 */ cpu->r[21] = cpu->r[31];
|
|
/* 0238E518 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], 0x00000000u);
|
|
/* 0238E51C */ _t33 = cpu->r[1] + 0x00000008u;
|
|
/* 0238E51C */ rbrew_write32(cpu->mem, _t33, cpu->r[8]);
|
|
/* 0238E520 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238E520 */ _t35 = _t34 & 0x00000001u;
|
|
/* 0238E520 */ if (_t35) goto L_0238E524; else goto L_0238E534;
|
|
L_0238E524: ; // 0x238e524
|
|
/* 0238E524 */ cpu->r[3] = 0x000000A4u;
|
|
/* 0238E528 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238E52C */ cpu->r[21] = cpu->r[3];
|
|
/* 0238E52C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], 0x00000000u);
|
|
/* 0238E530 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238E530 */ _t37 = _t36 & 0x00000001u;
|
|
/* 0238E530 */ if (_t37) goto L_0238E6A0; else goto L_0238E534;
|
|
L_0238E534: ; // 0x238e534
|
|
/* 0238E534 */ cpu->r[24] = 0x10080000u;
|
|
/* 0238E538 */ cpu->r[26] = cpu->r[21];
|
|
/* 0238E538 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 0238E53C */ cpu->r[25] = 0x10080000u;
|
|
/* 0238E540 */ cpu->r[24] = cpu->r[24] + 0x000062A8u;
|
|
/* 0238E544 */ cpu->r[20] = 0x10080000u;
|
|
/* 0238E548 */ cpu->r[25] = cpu->r[25] + 0x00006290u;
|
|
/* 0238E54C */ cpu->r[19] = 0x10110000u;
|
|
/* 0238E550 */ cpu->r[20] = cpu->r[20] + 0x000062C0u;
|
|
/* 0238E554 */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238E554 */ _t39 = _t38 & 0x00000001u;
|
|
/* 0238E554 */ if (_t39) goto L_0238E558; else goto L_0238E568;
|
|
L_0238E558: ; // 0x238e558
|
|
/* 0238E558 */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0238E55C */ Gambit_fn_02801A78(cpu);
|
|
/* 0238E560 */ cpu->r[26] = cpu->r[3];
|
|
/* 0238E560 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 0238E564 */ _t40 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238E564 */ _t41 = _t40 & 0x00000001u;
|
|
/* 0238E564 */ if (_t41) goto L_0238E5DC; else goto L_0238E568;
|
|
L_0238E568: ; // 0x238e568
|
|
/* 0238E568 */ cpu->r[27] = cpu->r[26];
|
|
/* 0238E568 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0238E56C */ _t42 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238E56C */ _t43 = _t42 & 0x00000001u;
|
|
/* 0238E56C */ if (_t43) goto L_0238E570; else goto L_0238E580;
|
|
L_0238E570: ; // 0x238e570
|
|
/* 0238E570 */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0238E574 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238E578 */ cpu->r[27] = cpu->r[3];
|
|
/* 0238E578 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0238E57C */ _t44 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238E57C */ _t45 = _t44 & 0x00000001u;
|
|
/* 0238E57C */ if (_t45) goto L_0238E5D8; else goto L_0238E580;
|
|
L_0238E580: ; // 0x238e580
|
|
/* 0238E580 */ cpu->r[3] = cpu->r[27];
|
|
/* 0238E580 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238E584 */ _t46 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238E584 */ _t47 = _t46 & 0x00000001u;
|
|
/* 0238E584 */ if (_t47) goto L_0238E588; else goto L_0238E5B0;
|
|
L_0238E588: ; // 0x238e588
|
|
/* 0238E588 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0238E58C */ Gambit_fn_02801A78(cpu);
|
|
/* 0238E590 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238E594 */ _t48 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238E594 */ _t49 = _t48 & 0x00000001u;
|
|
/* 0238E594 */ if (_t49) goto L_0238E598; else goto L_0238E5B0;
|
|
L_0238E598: ; // 0x238e598
|
|
/* 0238E598 */ _t50 = cpu->r[27] + 0x00000000u;
|
|
/* 0238E598 */ cpu->r[11] = rbrew_read32(cpu->mem, _t50);
|
|
/* 0238E59C */ _t51 = cpu->r[19] + 0x00007399u;
|
|
/* 0238E59C */ cpu->r[8] = rbrew_read8(cpu->mem, _t51);
|
|
/* 0238E5A0 */ _t52 = cpu->r[27] + 0x00000004u;
|
|
/* 0238E5A0 */ rbrew_write32(cpu->mem, _t52, cpu->r[24]);
|
|
/* 0238E5A4 */ _t53 = cpu->r[11] + 0x00000000u;
|
|
/* 0238E5A4 */ rbrew_write8(cpu->mem, _t53, (uint8_t)cpu->r[8]);
|
|
/* 0238E5A8 */ _t54 = cpu->r[26] + 0x00000004u;
|
|
/* 0238E5A8 */ rbrew_write32(cpu->mem, _t54, cpu->r[20]);
|
|
/* 0238E5AC */ goto L_0238E5DC;
|
|
L_0238E5B0: ; // 0x238e5b0
|
|
/* 0238E5B0 */ cpu->r[9] = cpu->r[27] + 0x0000000Cu;
|
|
/* 0238E5B4 */ _t55 = cpu->r[3] + 0x00000004u;
|
|
/* 0238E5B4 */ rbrew_write32(cpu->mem, _t55, cpu->r[25]);
|
|
/* 0238E5B8 */ cpu->r[10] = 0x00000020u;
|
|
/* 0238E5BC */ _t56 = cpu->r[3] + 0x00000000u;
|
|
/* 0238E5BC */ rbrew_write32(cpu->mem, _t56, cpu->r[9]);
|
|
/* 0238E5C0 */ _t57 = cpu->r[3] + 0x00000008u;
|
|
/* 0238E5C0 */ rbrew_write32(cpu->mem, _t57, cpu->r[10]);
|
|
/* 0238E5C4 */ _t58 = cpu->r[19] + 0x00007399u;
|
|
/* 0238E5C4 */ cpu->r[8] = rbrew_read8(cpu->mem, _t58);
|
|
/* 0238E5C8 */ _t59 = cpu->r[27] + 0x00000004u;
|
|
/* 0238E5C8 */ rbrew_write32(cpu->mem, _t59, cpu->r[24]);
|
|
/* 0238E5CC */ _t60 = cpu->r[27] + 0x00000000u;
|
|
/* 0238E5CC */ cpu->r[11] = rbrew_read32(cpu->mem, _t60);
|
|
/* 0238E5D0 */ _t61 = cpu->r[27] + 0x0000002Bu;
|
|
/* 0238E5D0 */ rbrew_write8(cpu->mem, _t61, (uint8_t)cpu->r[8]);
|
|
/* 0238E5D4 */ _t62 = cpu->r[11] + 0x00000000u;
|
|
/* 0238E5D4 */ rbrew_write8(cpu->mem, _t62, (uint8_t)cpu->r[8]);
|
|
L_0238E5D8: ; // 0x238e5d8
|
|
/* 0238E5D8 */ _t63 = cpu->r[26] + 0x00000004u;
|
|
/* 0238E5D8 */ rbrew_write32(cpu->mem, _t63, cpu->r[20]);
|
|
L_0238E5DC: ; // 0x238e5dc
|
|
/* 0238E5DC */ cpu->r[26] = cpu->r[21] + 0x0000002Cu;
|
|
/* 0238E5DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 0238E5E0 */ _t64 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238E5E0 */ _t65 = _t64 & 0x00000001u;
|
|
/* 0238E5E0 */ if (_t65) goto L_0238E5E4; else goto L_0238E5F4;
|
|
L_0238E5E4: ; // 0x238e5e4
|
|
/* 0238E5E4 */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0238E5E8 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238E5EC */ cpu->r[26] = cpu->r[3];
|
|
/* 0238E5EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 0238E5F0 */ _t66 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238E5F0 */ _t67 = _t66 & 0x00000001u;
|
|
/* 0238E5F0 */ if (_t67) goto L_0238E668; else goto L_0238E5F4;
|
|
L_0238E5F4: ; // 0x238e5f4
|
|
/* 0238E5F4 */ cpu->r[27] = cpu->r[26];
|
|
/* 0238E5F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0238E5F8 */ _t68 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238E5F8 */ _t69 = _t68 & 0x00000001u;
|
|
/* 0238E5F8 */ if (_t69) goto L_0238E5FC; else goto L_0238E60C;
|
|
L_0238E5FC: ; // 0x238e5fc
|
|
/* 0238E5FC */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0238E600 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238E604 */ cpu->r[27] = cpu->r[3];
|
|
/* 0238E604 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0238E608 */ _t70 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238E608 */ _t71 = _t70 & 0x00000001u;
|
|
/* 0238E608 */ if (_t71) goto L_0238E664; else goto L_0238E60C;
|
|
L_0238E60C: ; // 0x238e60c
|
|
/* 0238E60C */ cpu->r[3] = cpu->r[27];
|
|
/* 0238E60C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238E610 */ _t72 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238E610 */ _t73 = _t72 & 0x00000001u;
|
|
/* 0238E610 */ if (_t73) goto L_0238E614; else goto L_0238E63C;
|
|
L_0238E614: ; // 0x238e614
|
|
/* 0238E614 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0238E618 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238E61C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238E620 */ _t74 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238E620 */ _t75 = _t74 & 0x00000001u;
|
|
/* 0238E620 */ if (_t75) goto L_0238E624; else goto L_0238E63C;
|
|
L_0238E624: ; // 0x238e624
|
|
/* 0238E624 */ _t76 = cpu->r[27] + 0x00000000u;
|
|
/* 0238E624 */ cpu->r[6] = rbrew_read32(cpu->mem, _t76);
|
|
/* 0238E628 */ _t77 = cpu->r[19] + 0x00007399u;
|
|
/* 0238E628 */ cpu->r[8] = rbrew_read8(cpu->mem, _t77);
|
|
/* 0238E62C */ _t78 = cpu->r[27] + 0x00000004u;
|
|
/* 0238E62C */ rbrew_write32(cpu->mem, _t78, cpu->r[24]);
|
|
/* 0238E630 */ _t79 = cpu->r[6] + 0x00000000u;
|
|
/* 0238E630 */ rbrew_write8(cpu->mem, _t79, (uint8_t)cpu->r[8]);
|
|
/* 0238E634 */ _t80 = cpu->r[26] + 0x00000004u;
|
|
/* 0238E634 */ rbrew_write32(cpu->mem, _t80, cpu->r[20]);
|
|
/* 0238E638 */ goto L_0238E668;
|
|
L_0238E63C: ; // 0x238e63c
|
|
/* 0238E63C */ cpu->r[12] = cpu->r[27] + 0x0000000Cu;
|
|
/* 0238E640 */ _t81 = cpu->r[3] + 0x00000004u;
|
|
/* 0238E640 */ rbrew_write32(cpu->mem, _t81, cpu->r[25]);
|
|
/* 0238E644 */ cpu->r[0] = 0x00000020u;
|
|
/* 0238E648 */ _t82 = cpu->r[3] + 0x00000000u;
|
|
/* 0238E648 */ rbrew_write32(cpu->mem, _t82, cpu->r[12]);
|
|
/* 0238E64C */ _t83 = cpu->r[3] + 0x00000008u;
|
|
/* 0238E64C */ rbrew_write32(cpu->mem, _t83, cpu->r[0]);
|
|
/* 0238E650 */ _t84 = cpu->r[19] + 0x00007399u;
|
|
/* 0238E650 */ cpu->r[8] = rbrew_read8(cpu->mem, _t84);
|
|
/* 0238E654 */ _t85 = cpu->r[27] + 0x00000004u;
|
|
/* 0238E654 */ rbrew_write32(cpu->mem, _t85, cpu->r[24]);
|
|
/* 0238E658 */ _t86 = cpu->r[27] + 0x00000000u;
|
|
/* 0238E658 */ cpu->r[6] = rbrew_read32(cpu->mem, _t86);
|
|
/* 0238E65C */ _t87 = cpu->r[27] + 0x0000002Bu;
|
|
/* 0238E65C */ rbrew_write8(cpu->mem, _t87, (uint8_t)cpu->r[8]);
|
|
/* 0238E660 */ _t88 = cpu->r[6] + 0x00000000u;
|
|
/* 0238E660 */ rbrew_write8(cpu->mem, _t88, (uint8_t)cpu->r[8]);
|
|
L_0238E664: ; // 0x238e664
|
|
/* 0238E664 */ _t89 = cpu->r[26] + 0x00000004u;
|
|
/* 0238E664 */ rbrew_write32(cpu->mem, _t89, cpu->r[20]);
|
|
L_0238E668: ; // 0x238e668
|
|
/* 0238E668 */ cpu->r[7] = cpu->r[21] + 0x00000080u;
|
|
/* 0238E668 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 0238E66C */ _t90 = cpu->r[21] + 0x00000058u;
|
|
/* 0238E66C */ rbrew_write32(cpu->mem, _t90, cpu->r[23]);
|
|
/* 0238E670 */ _t91 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238E670 */ _t92 = _t91 & 0x00000001u;
|
|
/* 0238E670 */ if (_t92) goto L_0238E674; else goto L_0238E67C;
|
|
L_0238E674: ; // 0x238e674
|
|
/* 0238E674 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0238E678 */ Gambit_fn_02801A78(cpu);
|
|
L_0238E67C: ; // 0x238e67c
|
|
/* 0238E67C */ cpu->r[0] = cpu->r[21] + 0x0000008Cu;
|
|
/* 0238E67C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0238E680 */ _t93 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238E680 */ _t94 = _t93 & 0x00000001u;
|
|
/* 0238E680 */ if (_t94) goto L_0238E684; else goto L_0238E68C;
|
|
L_0238E684: ; // 0x238e684
|
|
/* 0238E684 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0238E688 */ Gambit_fn_02801A78(cpu);
|
|
L_0238E68C: ; // 0x238e68c
|
|
/* 0238E68C */ _t95 = cpu->r[1] + 0x00000008u;
|
|
/* 0238E68C */ cpu->r[10] = rbrew_read32(cpu->mem, _t95);
|
|
/* 0238E690 */ _t96 = cpu->r[21] + 0x0000009Cu;
|
|
/* 0238E690 */ rbrew_write8(cpu->mem, _t96, (uint8_t)cpu->r[22]);
|
|
/* 0238E694 */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 0238E698 */ _t97 = cpu->r[21] + 0x00000098u;
|
|
/* 0238E698 */ rbrew_write32(cpu->mem, _t97, cpu->r[10]);
|
|
/* 0238E69C */ _t98 = cpu->r[21] + 0x000000A0u;
|
|
/* 0238E69C */ rbrew_write32(cpu->mem, _t98, cpu->r[0]);
|
|
L_0238E6A0: ; // 0x238e6a0
|
|
/* 0238E6A0 */ _t99 = cpu->r[31] + 0x000000A4u;
|
|
/* 0238E6A0 */ rbrew_write32(cpu->mem, _t99, cpu->r[22]);
|
|
/* 0238E6A4 */ cpu->r[4] = cpu->r[31] + 0x000000A4u;
|
|
/* 0238E6A8 */ cpu->r[3] = cpu->r[28] + 0x000004DCu;
|
|
/* 0238E6AC */ _t100 = cpu->r[31] + 0x000000A8u;
|
|
/* 0238E6AC */ rbrew_write32(cpu->mem, _t100, cpu->r[22]);
|
|
/* 0238E6B0 */ Gambit_fn_02801EBC(cpu);
|
|
/* 0238E6B4 */ _t101 = cpu->r[28] + 0x000004E4u;
|
|
/* 0238E6B4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t101);
|
|
/* 0238E6B8 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 0238E6BC */ cpu->r[3] = cpu->r[28] + 0x000007C4u;
|
|
/* 0238E6C0 */ _t102 = cpu->r[28] + 0x000004E4u;
|
|
/* 0238E6C0 */ rbrew_write32(cpu->mem, _t102, cpu->r[12]);
|
|
/* 0238E6C4 */ Gambit_fn_02837030(cpu);
|
|
/* 0238E6C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0238E6CC */ _t103 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238E6CC */ _t104 = _t103 & 0x00000001u;
|
|
/* 0238E6CC */ if (_t104) goto L_0238E6D0; else goto L_0238E700;
|
|
L_0238E6D0: ; // 0x238e6d0
|
|
/* 0238E6D0 */ goto L_0238E748;
|
|
L_0238E6D4: ; // 0x238e6d4
|
|
/* 0238E6D4 */ cpu->r[4] = 0x000000A4u;
|
|
/* 0238E6D8 */ cpu->r[3] = cpu->r[28] + 0x000004DCu;
|
|
/* 0238E6DC */ cpu->r[31] = 0x00000000u;
|
|
/* 0238E6E0 */ Gambit_fn_02801EBC(cpu);
|
|
/* 0238E6E4 */ _t105 = cpu->r[28] + 0x000004E4u;
|
|
/* 0238E6E4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t105);
|
|
/* 0238E6E8 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 0238E6EC */ cpu->r[3] = cpu->r[28] + 0x000007C4u;
|
|
/* 0238E6F0 */ _t106 = cpu->r[28] + 0x000004E4u;
|
|
/* 0238E6F0 */ rbrew_write32(cpu->mem, _t106, cpu->r[12]);
|
|
/* 0238E6F4 */ Gambit_fn_02837030(cpu);
|
|
/* 0238E6F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0238E6FC */ _t107 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238E6FC */ _t108 = _t107 & 0x00000001u;
|
|
/* 0238E6FC */ if (_t108) goto L_0238E748; else goto L_0238E700;
|
|
L_0238E700: ; // 0x238e700
|
|
/* 0238E700 */ _t109 = cpu->r[29] + 0x00000000u;
|
|
/* 0238E700 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t109);
|
|
/* 0238E704 */ _t110 = cpu->r[31] + 0x00000080u;
|
|
/* 0238E704 */ rbrew_write_f32(cpu->mem, _t110, cpu->f[13]);
|
|
/* 0238E708 */ _t111 = cpu->r[29] + 0x00000004u;
|
|
/* 0238E708 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t111);
|
|
/* 0238E70C */ _t112 = cpu->r[31] + 0x00000084u;
|
|
/* 0238E70C */ rbrew_write_f32(cpu->mem, _t112, cpu->f[0]);
|
|
/* 0238E710 */ _t113 = cpu->r[29] + 0x00000008u;
|
|
/* 0238E710 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t113);
|
|
/* 0238E714 */ _t114 = cpu->r[31] + 0x00000088u;
|
|
/* 0238E714 */ rbrew_write_f32(cpu->mem, _t114, cpu->f[11]);
|
|
/* 0238E718 */ _t115 = cpu->r[30] + 0x00000000u;
|
|
/* 0238E718 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t115);
|
|
/* 0238E71C */ _t116 = cpu->r[31] + 0x0000008Cu;
|
|
/* 0238E71C */ rbrew_write_f32(cpu->mem, _t116, cpu->f[12]);
|
|
/* 0238E720 */ _t117 = cpu->r[30] + 0x00000004u;
|
|
/* 0238E720 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t117);
|
|
/* 0238E724 */ _t118 = cpu->r[31] + 0x00000090u;
|
|
/* 0238E724 */ rbrew_write_f32(cpu->mem, _t118, cpu->f[13]);
|
|
/* 0238E728 */ _t119 = cpu->r[30] + 0x00000008u;
|
|
/* 0238E728 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t119);
|
|
/* 0238E72C */ _t120 = cpu->r[31] + 0x0000007Cu;
|
|
/* 0238E72C */ rbrew_write_f32(cpu->mem, _t120, cpu->f[31]);
|
|
/* 0238E730 */ cpu->r[0] = 0x00000001u;
|
|
/* 0238E734 */ _t121 = cpu->r[31] + 0x00000094u;
|
|
/* 0238E734 */ rbrew_write_f32(cpu->mem, _t121, cpu->f[0]);
|
|
/* 0238E738 */ _t122 = cpu->r[31] + 0x0000009Cu;
|
|
/* 0238E738 */ rbrew_write8(cpu->mem, _t122, (uint8_t)cpu->r[0]);
|
|
/* 0238E73C */ cpu->r[3] = cpu->r[28];
|
|
/* 0238E740 */ _t123 = cpu->r[31] + 0x00000078u;
|
|
/* 0238E740 */ rbrew_write_f32(cpu->mem, _t123, cpu->f[30]);
|
|
/* 0238E744 */ Gambit_fn_0238C0E0(cpu);
|
|
L_0238E748: ; // 0x238e748
|
|
/* 0238E748 */ /* nop */
|
|
/* 0238E74C */ _t124 = cpu->r[1] + 0x00000048u;
|
|
/* 0238E74C */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t124);
|
|
/* 0238E750 */ _t125 = cpu->r[1] + 0x00000058u;
|
|
/* 0238E750 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t125);
|
|
/* 0238E754 */ _t126 = cpu->r[1] + 0x00000040u;
|
|
/* 0238E754 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t126);
|
|
/* 0238E758 */ _t127 = cpu->r[1] + 0x00000050u;
|
|
/* 0238E758 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t127);
|
|
/* 0238E75C */ _t128 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0238E75C */ _t129 = _t128 & 0x00000001u;
|
|
/* 0238E75C */ if (_t129) goto L_0238E760; // else: addr-0 trap, fall-through
|
|
L_0238E760: ; // 0x238e760
|
|
/* 0238E760 */ _t130 = cpu->r[1] + 0x00000064u;
|
|
/* 0238E760 */ cpu->r[0] = rbrew_read32(cpu->mem, _t130);
|
|
/* 0238E764 */ cpu->lr = cpu->r[0];
|
|
/* 0238E768 */ cpu->r[1] = cpu->r[1] + 0x00000060u;
|
|
/* 0238E76C */ return;
|
|
}
|
|
|
|
// fn_0238E770 @ 0x238e770
|
|
void Gambit_fn_0238E770(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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;
|
|
|
|
L_0238E770: ; // 0x238e770
|
|
/* 0238E770 */ _t0 = cpu->r[1] + 0xFFFFFFB0u;
|
|
/* 0238E770 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0238E770 */ cpu->r[1] = _t0;
|
|
/* 0238E774 */ /* nop */
|
|
/* 0238E778 */ cpu->r[0] = cpu->lr;
|
|
/* 0238E77C */ _t1 = cpu->r[1] + 0x00000054u;
|
|
/* 0238E77C */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0238E780 */ cpu->r[29] = cpu->r[3];
|
|
/* 0238E784 */ _t2 = cpu->r[29] + 0x00000505u;
|
|
/* 0238E784 */ cpu->r[7] = rbrew_read8(cpu->mem, _t2);
|
|
/* 0238E788 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 0238E78C */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238E78C */ _t4 = _t3 & 0x00000001u;
|
|
/* 0238E78C */ if (_t4) goto L_0238EC58; else goto L_0238E790;
|
|
L_0238E790: ; // 0x238e790
|
|
/* 0238E790 */ _t5 = cpu->r[29] + 0x00000504u;
|
|
/* 0238E790 */ cpu->r[0] = rbrew_read8(cpu->mem, _t5);
|
|
/* 0238E794 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0238E798 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238E798 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0238E798 */ if (_t7) goto L_0238EC58; else goto L_0238E79C;
|
|
L_0238E79C: ; // 0x238e79c
|
|
/* 0238E79C */ cpu->r[3] = cpu->r[29] + 0x000007C4u;
|
|
/* 0238E7A0 */ Gambit_fn_02836FFC(cpu);
|
|
/* 0238E7A4 */ cpu->r[25] = 0x101C0000u;
|
|
/* 0238E7A8 */ _t8 = cpu->r[25] + 0x00006000u;
|
|
/* 0238E7A8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0238E7A8 */ cpu->r[25] = _t8;
|
|
/* 0238E7AC */ _t9 = cpu->r[3] + 0x00000004u;
|
|
/* 0238E7AC */ cpu->r[8] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0238E7B0 */ _t10 = cpu->r[8] + 0x0000012Cu;
|
|
/* 0238E7B0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0238E7B4 */ cpu->ctr = cpu->r[9];
|
|
/* 0238E7B8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0238E7BC */ _t11 = cpu->r[29] + 0x000004E4u;
|
|
/* 0238E7BC */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0238E7C0 */ _t12 = cpu->r[29] + 0x000004F0u;
|
|
/* 0238E7C0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0238E7C4 */ cpu->r[22] = cpu->r[3];
|
|
/* 0238E7C8 */ cpu->r[24] = 0x10110000u;
|
|
/* 0238E7CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], cpu->r[11]);
|
|
/* 0238E7D0 */ cpu->r[26] = 0x00000000u;
|
|
/* 0238E7D4 */ _t13 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0238E7D4 */ _t14 = _t13 & 0x00000001u;
|
|
/* 0238E7D4 */ if (_t14) goto L_0238E7F8; else goto L_0238E7D8;
|
|
L_0238E7D8: ; // 0x238e7d8
|
|
/* 0238E7D8 */ cpu->r[3] = cpu->r[29] + 0x000007C4u;
|
|
/* 0238E7DC */ cpu->r[30] = 0x00000000u;
|
|
/* 0238E7E0 */ Gambit_fn_02837030(cpu);
|
|
/* 0238E7E4 */ /* nop */
|
|
/* 0238E7E8 */ _t15 = cpu->r[1] + 0x00000054u;
|
|
/* 0238E7E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0238E7EC */ cpu->lr = cpu->r[0];
|
|
/* 0238E7F0 */ cpu->r[1] = cpu->r[1] + 0x00000050u;
|
|
/* 0238E7F4 */ return;
|
|
L_0238E7F8: ; // 0x238e7f8
|
|
/* 0238E7F8 */ _t16 = cpu->r[29] + 0x000004E8u;
|
|
/* 0238E7F8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0238E7FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0238E800 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238E800 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0238E800 */ if (_t18) goto L_0238E80C; else goto L_0238E804;
|
|
L_0238E804: ; // 0x238e804
|
|
/* 0238E804 */ _t19 = cpu->r[30] + 0x00000000u;
|
|
/* 0238E804 */ cpu->r[12] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0238E808 */ _t20 = cpu->r[29] + 0x000004E8u;
|
|
/* 0238E808 */ rbrew_write32(cpu->mem, _t20, cpu->r[12]);
|
|
L_0238E80C: ; // 0x238e80c
|
|
/* 0238E80C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0238E810 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238E810 */ _t22 = _t21 & 0x00000001u;
|
|
/* 0238E810 */ if (_t22) goto L_0238E9D8; else goto L_0238E814;
|
|
L_0238E814: ; // 0x238e814
|
|
/* 0238E814 */ cpu->r[0] = 0x0000000Cu;
|
|
/* 0238E818 */ cpu->r[23] = cpu->r[30];
|
|
/* 0238E818 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], 0x00000000u);
|
|
/* 0238E81C */ _t23 = cpu->r[1] + 0x00000010u;
|
|
/* 0238E81C */ rbrew_write32(cpu->mem, _t23, cpu->r[0]);
|
|
/* 0238E820 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238E820 */ _t25 = _t24 & 0x00000001u;
|
|
/* 0238E820 */ if (_t25) goto L_0238E824; else goto L_0238E834;
|
|
L_0238E824: ; // 0x238e824
|
|
/* 0238E824 */ cpu->r[3] = 0x000000A4u;
|
|
/* 0238E828 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238E82C */ cpu->r[23] = cpu->r[3];
|
|
/* 0238E82C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], 0x00000000u);
|
|
/* 0238E830 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238E830 */ _t27 = _t26 & 0x00000001u;
|
|
/* 0238E830 */ if (_t27) goto L_0238E9A4; else goto L_0238E834;
|
|
L_0238E834: ; // 0x238e834
|
|
/* 0238E834 */ cpu->r[27] = 0x10080000u;
|
|
/* 0238E838 */ cpu->r[20] = cpu->r[23];
|
|
/* 0238E838 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[20], 0x00000000u);
|
|
/* 0238E83C */ cpu->r[28] = 0x10080000u;
|
|
/* 0238E840 */ cpu->r[27] = cpu->r[27] + 0x000062C0u;
|
|
/* 0238E844 */ cpu->r[28] = cpu->r[28] + 0x000062A8u;
|
|
/* 0238E848 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238E848 */ _t29 = _t28 & 0x00000001u;
|
|
/* 0238E848 */ if (_t29) goto L_0238E84C; else goto L_0238E85C;
|
|
L_0238E84C: ; // 0x238e84c
|
|
/* 0238E84C */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0238E850 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238E854 */ cpu->r[20] = cpu->r[3];
|
|
/* 0238E854 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[20], 0x00000000u);
|
|
/* 0238E858 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238E858 */ _t31 = _t30 & 0x00000001u;
|
|
/* 0238E858 */ if (_t31) goto L_0238E8D8; else goto L_0238E85C;
|
|
L_0238E85C: ; // 0x238e85c
|
|
/* 0238E85C */ cpu->r[21] = cpu->r[20];
|
|
/* 0238E85C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], 0x00000000u);
|
|
/* 0238E860 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238E860 */ _t33 = _t32 & 0x00000001u;
|
|
/* 0238E860 */ if (_t33) goto L_0238E864; else goto L_0238E874;
|
|
L_0238E864: ; // 0x238e864
|
|
/* 0238E864 */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0238E868 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238E86C */ cpu->r[21] = cpu->r[3];
|
|
/* 0238E86C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], 0x00000000u);
|
|
/* 0238E870 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238E870 */ _t35 = _t34 & 0x00000001u;
|
|
/* 0238E870 */ if (_t35) goto L_0238E8D4; else goto L_0238E874;
|
|
L_0238E874: ; // 0x238e874
|
|
/* 0238E874 */ cpu->r[3] = cpu->r[21];
|
|
/* 0238E874 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238E878 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238E878 */ _t37 = _t36 & 0x00000001u;
|
|
/* 0238E878 */ if (_t37) goto L_0238E87C; else goto L_0238E8A4;
|
|
L_0238E87C: ; // 0x238e87c
|
|
/* 0238E87C */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0238E880 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238E884 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238E888 */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238E888 */ _t39 = _t38 & 0x00000001u;
|
|
/* 0238E888 */ if (_t39) goto L_0238E88C; else goto L_0238E8A4;
|
|
L_0238E88C: ; // 0x238e88c
|
|
/* 0238E88C */ _t40 = cpu->r[21] + 0x00000000u;
|
|
/* 0238E88C */ cpu->r[8] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0238E890 */ _t41 = cpu->r[24] + 0x00007399u;
|
|
/* 0238E890 */ cpu->r[31] = rbrew_read8(cpu->mem, _t41);
|
|
/* 0238E894 */ _t42 = cpu->r[21] + 0x00000004u;
|
|
/* 0238E894 */ rbrew_write32(cpu->mem, _t42, cpu->r[28]);
|
|
/* 0238E898 */ _t43 = cpu->r[8] + 0x00000000u;
|
|
/* 0238E898 */ rbrew_write8(cpu->mem, _t43, (uint8_t)cpu->r[31]);
|
|
/* 0238E89C */ _t44 = cpu->r[20] + 0x00000004u;
|
|
/* 0238E89C */ rbrew_write32(cpu->mem, _t44, cpu->r[27]);
|
|
/* 0238E8A0 */ goto L_0238E8D8;
|
|
L_0238E8A4: ; // 0x238e8a4
|
|
/* 0238E8A4 */ cpu->r[6] = 0x10080000u;
|
|
/* 0238E8A8 */ cpu->r[5] = cpu->r[21] + 0x0000000Cu;
|
|
/* 0238E8AC */ cpu->r[6] = cpu->r[6] + 0x00006290u;
|
|
/* 0238E8B0 */ _t45 = cpu->r[3] + 0x00000000u;
|
|
/* 0238E8B0 */ rbrew_write32(cpu->mem, _t45, cpu->r[5]);
|
|
/* 0238E8B4 */ cpu->r[7] = 0x00000020u;
|
|
/* 0238E8B8 */ _t46 = cpu->r[3] + 0x00000004u;
|
|
/* 0238E8B8 */ rbrew_write32(cpu->mem, _t46, cpu->r[6]);
|
|
/* 0238E8BC */ _t47 = cpu->r[3] + 0x00000008u;
|
|
/* 0238E8BC */ rbrew_write32(cpu->mem, _t47, cpu->r[7]);
|
|
/* 0238E8C0 */ _t48 = cpu->r[24] + 0x00007399u;
|
|
/* 0238E8C0 */ cpu->r[31] = rbrew_read8(cpu->mem, _t48);
|
|
/* 0238E8C4 */ _t49 = cpu->r[21] + 0x00000004u;
|
|
/* 0238E8C4 */ rbrew_write32(cpu->mem, _t49, cpu->r[28]);
|
|
/* 0238E8C8 */ _t50 = cpu->r[21] + 0x00000000u;
|
|
/* 0238E8C8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t50);
|
|
/* 0238E8CC */ _t51 = cpu->r[21] + 0x0000002Bu;
|
|
/* 0238E8CC */ rbrew_write8(cpu->mem, _t51, (uint8_t)cpu->r[31]);
|
|
/* 0238E8D0 */ _t52 = cpu->r[8] + 0x00000000u;
|
|
/* 0238E8D0 */ rbrew_write8(cpu->mem, _t52, (uint8_t)cpu->r[31]);
|
|
L_0238E8D4: ; // 0x238e8d4
|
|
/* 0238E8D4 */ _t53 = cpu->r[20] + 0x00000004u;
|
|
/* 0238E8D4 */ rbrew_write32(cpu->mem, _t53, cpu->r[27]);
|
|
L_0238E8D8: ; // 0x238e8d8
|
|
/* 0238E8D8 */ cpu->r[20] = cpu->r[23] + 0x0000002Cu;
|
|
/* 0238E8D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[20], 0x00000000u);
|
|
/* 0238E8DC */ _t54 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238E8DC */ _t55 = _t54 & 0x00000001u;
|
|
/* 0238E8DC */ if (_t55) goto L_0238E8E0; else goto L_0238E8F0;
|
|
L_0238E8E0: ; // 0x238e8e0
|
|
/* 0238E8E0 */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0238E8E4 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238E8E8 */ cpu->r[20] = cpu->r[3];
|
|
/* 0238E8E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[20], 0x00000000u);
|
|
/* 0238E8EC */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238E8EC */ _t57 = _t56 & 0x00000001u;
|
|
/* 0238E8EC */ if (_t57) goto L_0238E96C; else goto L_0238E8F0;
|
|
L_0238E8F0: ; // 0x238e8f0
|
|
/* 0238E8F0 */ cpu->r[21] = cpu->r[20];
|
|
/* 0238E8F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], 0x00000000u);
|
|
/* 0238E8F4 */ _t58 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238E8F4 */ _t59 = _t58 & 0x00000001u;
|
|
/* 0238E8F4 */ if (_t59) goto L_0238E8F8; else goto L_0238E908;
|
|
L_0238E8F8: ; // 0x238e8f8
|
|
/* 0238E8F8 */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0238E8FC */ Gambit_fn_02801A78(cpu);
|
|
/* 0238E900 */ cpu->r[21] = cpu->r[3];
|
|
/* 0238E900 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], 0x00000000u);
|
|
/* 0238E904 */ _t60 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238E904 */ _t61 = _t60 & 0x00000001u;
|
|
/* 0238E904 */ if (_t61) goto L_0238E968; else goto L_0238E908;
|
|
L_0238E908: ; // 0x238e908
|
|
/* 0238E908 */ cpu->r[3] = cpu->r[21];
|
|
/* 0238E908 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238E90C */ _t62 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238E90C */ _t63 = _t62 & 0x00000001u;
|
|
/* 0238E90C */ if (_t63) goto L_0238E910; else goto L_0238E938;
|
|
L_0238E910: ; // 0x238e910
|
|
/* 0238E910 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0238E914 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238E918 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238E91C */ _t64 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238E91C */ _t65 = _t64 & 0x00000001u;
|
|
/* 0238E91C */ if (_t65) goto L_0238E920; else goto L_0238E938;
|
|
L_0238E920: ; // 0x238e920
|
|
/* 0238E920 */ _t66 = cpu->r[21] + 0x00000000u;
|
|
/* 0238E920 */ cpu->r[12] = rbrew_read32(cpu->mem, _t66);
|
|
/* 0238E924 */ _t67 = cpu->r[24] + 0x00007399u;
|
|
/* 0238E924 */ cpu->r[31] = rbrew_read8(cpu->mem, _t67);
|
|
/* 0238E928 */ _t68 = cpu->r[21] + 0x00000004u;
|
|
/* 0238E928 */ rbrew_write32(cpu->mem, _t68, cpu->r[28]);
|
|
/* 0238E92C */ _t69 = cpu->r[12] + 0x00000000u;
|
|
/* 0238E92C */ rbrew_write8(cpu->mem, _t69, (uint8_t)cpu->r[31]);
|
|
/* 0238E930 */ _t70 = cpu->r[20] + 0x00000004u;
|
|
/* 0238E930 */ rbrew_write32(cpu->mem, _t70, cpu->r[27]);
|
|
/* 0238E934 */ goto L_0238E96C;
|
|
L_0238E938: ; // 0x238e938
|
|
/* 0238E938 */ cpu->r[10] = 0x10080000u;
|
|
/* 0238E93C */ cpu->r[0] = cpu->r[21] + 0x0000000Cu;
|
|
/* 0238E940 */ cpu->r[10] = cpu->r[10] + 0x00006290u;
|
|
/* 0238E944 */ _t71 = cpu->r[3] + 0x00000000u;
|
|
/* 0238E944 */ rbrew_write32(cpu->mem, _t71, cpu->r[0]);
|
|
/* 0238E948 */ cpu->r[11] = 0x00000020u;
|
|
/* 0238E94C */ _t72 = cpu->r[3] + 0x00000004u;
|
|
/* 0238E94C */ rbrew_write32(cpu->mem, _t72, cpu->r[10]);
|
|
/* 0238E950 */ _t73 = cpu->r[3] + 0x00000008u;
|
|
/* 0238E950 */ rbrew_write32(cpu->mem, _t73, cpu->r[11]);
|
|
/* 0238E954 */ _t74 = cpu->r[24] + 0x00007399u;
|
|
/* 0238E954 */ cpu->r[31] = rbrew_read8(cpu->mem, _t74);
|
|
/* 0238E958 */ _t75 = cpu->r[21] + 0x00000004u;
|
|
/* 0238E958 */ rbrew_write32(cpu->mem, _t75, cpu->r[28]);
|
|
/* 0238E95C */ _t76 = cpu->r[21] + 0x00000000u;
|
|
/* 0238E95C */ cpu->r[12] = rbrew_read32(cpu->mem, _t76);
|
|
/* 0238E960 */ _t77 = cpu->r[21] + 0x0000002Bu;
|
|
/* 0238E960 */ rbrew_write8(cpu->mem, _t77, (uint8_t)cpu->r[31]);
|
|
/* 0238E964 */ _t78 = cpu->r[12] + 0x00000000u;
|
|
/* 0238E964 */ rbrew_write8(cpu->mem, _t78, (uint8_t)cpu->r[31]);
|
|
L_0238E968: ; // 0x238e968
|
|
/* 0238E968 */ _t79 = cpu->r[20] + 0x00000004u;
|
|
/* 0238E968 */ rbrew_write32(cpu->mem, _t79, cpu->r[27]);
|
|
L_0238E96C: ; // 0x238e96c
|
|
/* 0238E96C */ cpu->r[6] = cpu->r[23] + 0x00000080u;
|
|
/* 0238E96C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 0238E970 */ _t80 = cpu->r[23] + 0x00000058u;
|
|
/* 0238E970 */ rbrew_write32(cpu->mem, _t80, cpu->r[22]);
|
|
/* 0238E974 */ _t81 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238E974 */ _t82 = _t81 & 0x00000001u;
|
|
/* 0238E974 */ if (_t82) goto L_0238E978; else goto L_0238E980;
|
|
L_0238E978: ; // 0x238e978
|
|
/* 0238E978 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0238E97C */ Gambit_fn_02801A78(cpu);
|
|
L_0238E980: ; // 0x238e980
|
|
/* 0238E980 */ cpu->r[7] = cpu->r[23] + 0x0000008Cu;
|
|
/* 0238E980 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 0238E984 */ _t83 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238E984 */ _t84 = _t83 & 0x00000001u;
|
|
/* 0238E984 */ if (_t84) goto L_0238E988; else goto L_0238E990;
|
|
L_0238E988: ; // 0x238e988
|
|
/* 0238E988 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0238E98C */ Gambit_fn_02801A78(cpu);
|
|
L_0238E990: ; // 0x238e990
|
|
/* 0238E990 */ _t85 = cpu->r[1] + 0x00000010u;
|
|
/* 0238E990 */ cpu->r[8] = rbrew_read32(cpu->mem, _t85);
|
|
/* 0238E994 */ _t86 = cpu->r[23] + 0x0000009Cu;
|
|
/* 0238E994 */ rbrew_write8(cpu->mem, _t86, (uint8_t)cpu->r[26]);
|
|
/* 0238E998 */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 0238E99C */ _t87 = cpu->r[23] + 0x00000098u;
|
|
/* 0238E99C */ rbrew_write32(cpu->mem, _t87, cpu->r[8]);
|
|
/* 0238E9A0 */ _t88 = cpu->r[23] + 0x000000A0u;
|
|
/* 0238E9A0 */ rbrew_write32(cpu->mem, _t88, cpu->r[0]);
|
|
L_0238E9A4: ; // 0x238e9a4
|
|
/* 0238E9A4 */ _t89 = cpu->r[30] + 0x000000A4u;
|
|
/* 0238E9A4 */ rbrew_write32(cpu->mem, _t89, cpu->r[26]);
|
|
/* 0238E9A8 */ cpu->r[4] = cpu->r[30] + 0x000000A4u;
|
|
/* 0238E9AC */ cpu->r[3] = cpu->r[29] + 0x000004DCu;
|
|
/* 0238E9B0 */ _t90 = cpu->r[30] + 0x000000A8u;
|
|
/* 0238E9B0 */ rbrew_write32(cpu->mem, _t90, cpu->r[26]);
|
|
/* 0238E9B4 */ Gambit_fn_02801EBC(cpu);
|
|
/* 0238E9B8 */ _t91 = cpu->r[29] + 0x000004E4u;
|
|
/* 0238E9B8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t91);
|
|
/* 0238E9BC */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 0238E9C0 */ cpu->r[3] = cpu->r[29] + 0x000007C4u;
|
|
/* 0238E9C4 */ _t92 = cpu->r[29] + 0x000004E4u;
|
|
/* 0238E9C4 */ rbrew_write32(cpu->mem, _t92, cpu->r[10]);
|
|
/* 0238E9C8 */ Gambit_fn_02837030(cpu);
|
|
/* 0238E9CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0238E9D0 */ _t93 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238E9D0 */ _t94 = _t93 & 0x00000001u;
|
|
/* 0238E9D0 */ if (_t94) goto L_0238E9D4; else goto L_0238EA04;
|
|
L_0238E9D4: ; // 0x238e9d4
|
|
/* 0238E9D4 */ goto L_0238EC58;
|
|
L_0238E9D8: ; // 0x238e9d8
|
|
/* 0238E9D8 */ cpu->r[4] = 0x000000A4u;
|
|
/* 0238E9DC */ cpu->r[3] = cpu->r[29] + 0x000004DCu;
|
|
/* 0238E9E0 */ cpu->r[30] = 0x00000000u;
|
|
/* 0238E9E4 */ Gambit_fn_02801EBC(cpu);
|
|
/* 0238E9E8 */ _t95 = cpu->r[29] + 0x000004E4u;
|
|
/* 0238E9E8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t95);
|
|
/* 0238E9EC */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 0238E9F0 */ cpu->r[3] = cpu->r[29] + 0x000007C4u;
|
|
/* 0238E9F4 */ _t96 = cpu->r[29] + 0x000004E4u;
|
|
/* 0238E9F4 */ rbrew_write32(cpu->mem, _t96, cpu->r[10]);
|
|
/* 0238E9F8 */ Gambit_fn_02837030(cpu);
|
|
/* 0238E9FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0238EA00 */ _t97 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238EA00 */ _t98 = _t97 & 0x00000001u;
|
|
/* 0238EA00 */ if (_t98) goto L_0238EC58; else goto L_0238EA04;
|
|
L_0238EA04: ; // 0x238ea04
|
|
/* 0238EA04 */ Gambit_fn_027FAD20(cpu);
|
|
/* 0238EA08 */ cpu->r[27] = 0x10080000u;
|
|
/* 0238EA0C */ _t99 = cpu->r[1] + 0x00000008u;
|
|
/* 0238EA0C */ rbrew_write32(cpu->mem, _t99, cpu->r[3]);
|
|
/* 0238EA10 */ cpu->r[27] = cpu->r[27] + 0x00006260u;
|
|
/* 0238EA14 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0238EA18 */ _t100 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0238EA18 */ rbrew_write32(cpu->mem, _t100, cpu->r[27]);
|
|
/* 0238EA1C */ _t101 = cpu->r[30] + 0x00000000u;
|
|
/* 0238EA1C */ cpu->r[26] = rbrew_read32(cpu->mem, _t101);
|
|
/* 0238EA20 */ Gambit_fn_0238FFE4(cpu);
|
|
/* 0238EA24 */ _t102 = cpu->r[1] + 0x00000008u;
|
|
/* 0238EA24 */ cpu->r[6] = rbrew_read32(cpu->mem, _t102);
|
|
/* 0238EA28 */ _t103 = cpu->r[24] + 0x00007399u;
|
|
/* 0238EA28 */ cpu->r[31] = rbrew_read8(cpu->mem, _t103);
|
|
/* 0238EA2C */ _t104 = cpu->r[6] + 0x00000000u;
|
|
/* 0238EA2C */ cpu->r[0] = rbrew_read8(cpu->mem, _t104);
|
|
/* 0238EA30 */ cpu->r[28] = 0x00000000u;
|
|
/* 0238EA34 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 0238EA38 */ cpu->r[8] = 0x00080000u;
|
|
/* 0238EA3C */ _t105 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238EA3C */ _t106 = _t105 & 0x00000001u;
|
|
/* 0238EA3C */ if (_t106) goto L_0238EA78; else goto L_0238EA40;
|
|
L_0238EA40: ; // 0x238ea40
|
|
/* 0238EA40 */ cpu->r[28] = cpu->r[28] + 0x00000001u;
|
|
/* 0238EA44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], cpu->r[8]);
|
|
/* 0238EA48 */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 0238EA4C */ _t107 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0238EA4C */ _t108 = _t107 & 0x00000001u;
|
|
/* 0238EA4C */ if (_t108) goto L_0238EA74; else goto L_0238EA50;
|
|
L_0238EA50: ; // 0x238ea50
|
|
/* 0238EA50 */ _t109 = cpu->r[6] + 0x00000000u;
|
|
/* 0238EA50 */ cpu->r[5] = rbrew_read8(cpu->mem, _t109);
|
|
/* 0238EA54 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[31]);
|
|
/* 0238EA58 */ _t110 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238EA58 */ _t111 = _t110 & 0x00000001u;
|
|
/* 0238EA58 */ if (_t111) goto L_0238EA5C; else goto L_0238EA40;
|
|
L_0238EA5C: ; // 0x238ea5c
|
|
/* 0238EA5C */ _t112 = cpu->r[30] + 0x00000008u;
|
|
/* 0238EA5C */ cpu->r[5] = rbrew_read32(cpu->mem, _t112);
|
|
/* 0238EA60 */ _t113 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0238EA60 */ cpu->r[6] = rbrew_read32(cpu->mem, _t113);
|
|
/* 0238EA64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], cpu->r[5]);
|
|
/* 0238EA68 */ _t114 = cpu->r[6] + 0x00000014u;
|
|
/* 0238EA68 */ cpu->r[8] = rbrew_read32(cpu->mem, _t114);
|
|
/* 0238EA6C */ _t115 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0238EA6C */ _t116 = _t115 & 0x00000001u;
|
|
/* 0238EA6C */ if (_t116) goto L_0238EA90; else goto L_0238EA70;
|
|
L_0238EA70: ; // 0x238ea70
|
|
/* 0238EA70 */ goto L_0238EA8C;
|
|
L_0238EA74: ; // 0x238ea74
|
|
/* 0238EA74 */ cpu->r[28] = 0x00000000u;
|
|
L_0238EA78: ; // 0x238ea78
|
|
/* 0238EA78 */ _t117 = cpu->r[30] + 0x00000008u;
|
|
/* 0238EA78 */ cpu->r[5] = rbrew_read32(cpu->mem, _t117);
|
|
/* 0238EA7C */ _t118 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0238EA7C */ cpu->r[6] = rbrew_read32(cpu->mem, _t118);
|
|
/* 0238EA80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], cpu->r[5]);
|
|
/* 0238EA84 */ _t119 = cpu->r[6] + 0x00000014u;
|
|
/* 0238EA84 */ cpu->r[8] = rbrew_read32(cpu->mem, _t119);
|
|
/* 0238EA88 */ _t120 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0238EA88 */ _t121 = _t120 & 0x00000001u;
|
|
/* 0238EA88 */ if (_t121) goto L_0238EA90; else goto L_0238EA8C;
|
|
L_0238EA8C: ; // 0x238ea8c
|
|
/* 0238EA8C */ cpu->r[28] = cpu->r[5] + 0xFFFFFFFFu;
|
|
L_0238EA90: ; // 0x238ea90
|
|
/* 0238EA90 */ cpu->ctr = cpu->r[8];
|
|
/* 0238EA94 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0238EA98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0238EA9C */ _t122 = cpu->r[1] + 0x00000008u;
|
|
/* 0238EA9C */ cpu->r[4] = rbrew_read32(cpu->mem, _t122);
|
|
/* 0238EAA0 */ cpu->r[3] = cpu->r[26];
|
|
/* 0238EAA4 */ cpu->r[5] = cpu->r[28];
|
|
/* 0238EAA8 */ cpu->r[6] = 0x00000000u;
|
|
/* 0238EAAC */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0238EAB0 */ _t123 = cpu->r[26] + cpu->r[28];
|
|
/* 0238EAB0 */ rbrew_write8(cpu->mem, _t123, (uint8_t)cpu->r[31]);
|
|
/* 0238EAB4 */ _t124 = cpu->r[25] + 0x00000000u;
|
|
/* 0238EAB4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t124);
|
|
/* 0238EAB8 */ cpu->r[12] = 0x10080000u;
|
|
/* 0238EABC */ _t125 = cpu->r[11] + 0x00000254u;
|
|
/* 0238EABC */ cpu->r[3] = rbrew_read32(cpu->mem, _t125);
|
|
/* 0238EAC0 */ cpu->r[12] = cpu->r[12] + 0x000063A8u;
|
|
/* 0238EAC4 */ _t126 = cpu->r[1] + 0x00000018u;
|
|
/* 0238EAC4 */ rbrew_write32(cpu->mem, _t126, cpu->r[27]);
|
|
/* 0238EAC8 */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 0238EACC */ _t127 = cpu->r[1] + 0x00000014u;
|
|
/* 0238EACC */ rbrew_write32(cpu->mem, _t127, cpu->r[12]);
|
|
/* 0238EAD0 */ Gambit_fn_020ECD78(cpu);
|
|
/* 0238EAD4 */ _t128 = cpu->r[3] + 0x00000008u;
|
|
/* 0238EAD4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t128);
|
|
/* 0238EAD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0238EADC */ _t129 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0238EADC */ _t130 = _t129 & 0x00000001u;
|
|
/* 0238EADC */ if (_t130) goto L_0238EAE0; else goto L_0238EB28;
|
|
L_0238EAE0: ; // 0x238eae0
|
|
/* 0238EAE0 */ _t131 = cpu->r[3] + 0x00000004u;
|
|
/* 0238EAE0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t131);
|
|
/* 0238EAE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0238EAE8 */ _t132 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238EAE8 */ _t133 = _t132 & 0x00000001u;
|
|
/* 0238EAE8 */ if (_t133) goto L_0238EB28; else goto L_0238EAEC;
|
|
L_0238EAEC: ; // 0x238eaec
|
|
/* 0238EAEC */ _t134 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0238EAEC */ cpu->r[5] = rbrew_read32(cpu->mem, _t134);
|
|
/* 0238EAF0 */ cpu->r[28] = cpu->r[0] - cpu->r[5];
|
|
/* 0238EAF4 */ _t135 = cpu->r[28] + 0x00000034u;
|
|
/* 0238EAF4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t135);
|
|
/* 0238EAF8 */ _t136 = cpu->r[6] + 0x00000014u;
|
|
/* 0238EAF8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t136);
|
|
/* 0238EAFC */ cpu->ctr = cpu->r[7];
|
|
/* 0238EB00 */ cpu->r[3] = cpu->r[28] + 0x00000030u;
|
|
/* 0238EB04 */ _t137 = cpu->r[30] + 0x0000002Cu;
|
|
/* 0238EB04 */ cpu->r[26] = rbrew_read32(cpu->mem, _t137);
|
|
/* 0238EB08 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0238EB0C */ _t138 = cpu->r[28] + 0x00000030u;
|
|
/* 0238EB0C */ cpu->r[9] = rbrew_read32(cpu->mem, _t138);
|
|
/* 0238EB10 */ _t139 = cpu->r[9] + 0x00000000u;
|
|
/* 0238EB10 */ cpu->r[8] = rbrew_read8(cpu->mem, _t139);
|
|
/* 0238EB14 */ cpu->r[27] = 0x00000000u;
|
|
/* 0238EB18 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[31]);
|
|
/* 0238EB1C */ cpu->r[0] = 0x00080000u;
|
|
/* 0238EB20 */ _t140 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238EB20 */ _t141 = _t140 & 0x00000001u;
|
|
/* 0238EB20 */ if (_t141) goto L_0238EB24; else goto L_0238EB5C;
|
|
L_0238EB24: ; // 0x238eb24
|
|
/* 0238EB24 */ goto L_0238EB94;
|
|
L_0238EB28: ; // 0x238eb28
|
|
/* 0238EB28 */ cpu->r[28] = 0x00000000u;
|
|
/* 0238EB2C */ _t142 = cpu->r[28] + 0x00000034u;
|
|
/* 0238EB2C */ cpu->r[6] = rbrew_read32(cpu->mem, _t142);
|
|
/* 0238EB30 */ _t143 = cpu->r[6] + 0x00000014u;
|
|
/* 0238EB30 */ cpu->r[7] = rbrew_read32(cpu->mem, _t143);
|
|
/* 0238EB34 */ cpu->ctr = cpu->r[7];
|
|
/* 0238EB38 */ _t144 = cpu->r[30] + 0x0000002Cu;
|
|
/* 0238EB38 */ cpu->r[26] = rbrew_read32(cpu->mem, _t144);
|
|
/* 0238EB3C */ cpu->r[3] = 0x00000030u;
|
|
/* 0238EB40 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0238EB44 */ _t145 = cpu->r[28] + 0x00000030u;
|
|
/* 0238EB44 */ cpu->r[9] = rbrew_read32(cpu->mem, _t145);
|
|
/* 0238EB48 */ _t146 = cpu->r[9] + 0x00000000u;
|
|
/* 0238EB48 */ cpu->r[8] = rbrew_read8(cpu->mem, _t146);
|
|
/* 0238EB4C */ cpu->r[27] = cpu->r[28];
|
|
/* 0238EB50 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[31]);
|
|
/* 0238EB54 */ cpu->r[0] = 0x00080000u;
|
|
/* 0238EB58 */ _t147 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238EB58 */ _t148 = _t147 & 0x00000001u;
|
|
/* 0238EB58 */ if (_t148) goto L_0238EB94; else goto L_0238EB5C;
|
|
L_0238EB5C: ; // 0x238eb5c
|
|
/* 0238EB5C */ cpu->r[27] = cpu->r[27] + 0x00000001u;
|
|
/* 0238EB60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], cpu->r[0]);
|
|
/* 0238EB64 */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
/* 0238EB68 */ _t149 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0238EB68 */ _t150 = _t149 & 0x00000001u;
|
|
/* 0238EB68 */ if (_t150) goto L_0238EB90; else goto L_0238EB6C;
|
|
L_0238EB6C: ; // 0x238eb6c
|
|
/* 0238EB6C */ _t151 = cpu->r[9] + 0x00000000u;
|
|
/* 0238EB6C */ cpu->r[10] = rbrew_read8(cpu->mem, _t151);
|
|
/* 0238EB70 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[31]);
|
|
/* 0238EB74 */ _t152 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238EB74 */ _t153 = _t152 & 0x00000001u;
|
|
/* 0238EB74 */ if (_t153) goto L_0238EB78; else goto L_0238EB5C;
|
|
L_0238EB78: ; // 0x238eb78
|
|
/* 0238EB78 */ _t154 = cpu->r[30] + 0x00000034u;
|
|
/* 0238EB78 */ cpu->r[7] = rbrew_read32(cpu->mem, _t154);
|
|
/* 0238EB7C */ _t155 = cpu->r[28] + 0x00000034u;
|
|
/* 0238EB7C */ cpu->r[12] = rbrew_read32(cpu->mem, _t155);
|
|
/* 0238EB80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], cpu->r[7]);
|
|
/* 0238EB84 */ _t156 = cpu->r[12] + 0x00000014u;
|
|
/* 0238EB84 */ cpu->r[5] = rbrew_read32(cpu->mem, _t156);
|
|
/* 0238EB88 */ _t157 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0238EB88 */ _t158 = _t157 & 0x00000001u;
|
|
/* 0238EB88 */ if (_t158) goto L_0238EBAC; else goto L_0238EB8C;
|
|
L_0238EB8C: ; // 0x238eb8c
|
|
/* 0238EB8C */ goto L_0238EBA8;
|
|
L_0238EB90: ; // 0x238eb90
|
|
/* 0238EB90 */ cpu->r[27] = 0x00000000u;
|
|
L_0238EB94: ; // 0x238eb94
|
|
/* 0238EB94 */ _t159 = cpu->r[30] + 0x00000034u;
|
|
/* 0238EB94 */ cpu->r[7] = rbrew_read32(cpu->mem, _t159);
|
|
/* 0238EB98 */ _t160 = cpu->r[28] + 0x00000034u;
|
|
/* 0238EB98 */ cpu->r[12] = rbrew_read32(cpu->mem, _t160);
|
|
/* 0238EB9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], cpu->r[7]);
|
|
/* 0238EBA0 */ _t161 = cpu->r[12] + 0x00000014u;
|
|
/* 0238EBA0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t161);
|
|
/* 0238EBA4 */ _t162 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0238EBA4 */ _t163 = _t162 & 0x00000001u;
|
|
/* 0238EBA4 */ if (_t163) goto L_0238EBAC; else goto L_0238EBA8;
|
|
L_0238EBA8: ; // 0x238eba8
|
|
/* 0238EBA8 */ cpu->r[27] = cpu->r[7] + 0xFFFFFFFFu;
|
|
L_0238EBAC: ; // 0x238ebac
|
|
/* 0238EBAC */ cpu->ctr = cpu->r[5];
|
|
/* 0238EBB0 */ cpu->r[3] = cpu->r[28] + 0x00000030u;
|
|
/* 0238EBB4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0238EBB8 */ _t164 = cpu->r[28] + 0x00000030u;
|
|
/* 0238EBB8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t164);
|
|
/* 0238EBBC */ cpu->r[6] = 0x00000000u;
|
|
/* 0238EBC0 */ cpu->r[5] = cpu->r[27];
|
|
/* 0238EBC4 */ cpu->r[3] = cpu->r[26];
|
|
/* 0238EBC8 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0238EBCC */ cpu->r[12] = 0x101D0000u;
|
|
/* 0238EBD0 */ _t165 = cpu->r[26] + cpu->r[27];
|
|
/* 0238EBD0 */ rbrew_write8(cpu->mem, _t165, (uint8_t)cpu->r[31]);
|
|
/* 0238EBD4 */ _t166 = cpu->r[12] + 0xFFFF80F4u;
|
|
/* 0238EBD4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t166);
|
|
/* 0238EBD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0238EBDC */ _t167 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238EBDC */ _t168 = _t167 & 0x00000001u;
|
|
/* 0238EBDC */ if (_t168) goto L_0238EC0C; else goto L_0238EBE0;
|
|
L_0238EBE0: ; // 0x238ebe0
|
|
/* 0238EBE0 */ cpu->r[11] = 0x101D0000u;
|
|
/* 0238EBE4 */ _t169 = cpu->r[11] + 0xFFFF80F8u;
|
|
/* 0238EBE4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t169);
|
|
/* 0238EBE8 */ cpu->r[7] = cpu->r[12] + cpu->r[11];
|
|
/* 0238EBEC */ _t170 = cpu->r[7] + 0x00000104u;
|
|
/* 0238EBEC */ cpu->r[7] = rbrew_read8(cpu->mem, _t170);
|
|
/* 0238EBF0 */ _t171 = cpu->r[12] + 0x00000030u;
|
|
/* 0238EBF0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t171);
|
|
/* 0238EBF4 */ cpu->r[9] = rbrew_rlwinm(cpu->r[7], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0238EBF8 */ _t172 = cpu->r[9] + cpu->r[0];
|
|
/* 0238EBF8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t172);
|
|
/* 0238EBFC */ _t173 = cpu->r[11] + 0x00000004u;
|
|
/* 0238EBFC */ cpu->r[12] = rbrew_read32(cpu->mem, _t173);
|
|
/* 0238EC00 */ _t174 = cpu->r[12] + 0x00000000u;
|
|
/* 0238EC00 */ cpu->r[12] = rbrew_read32(cpu->mem, _t174);
|
|
/* 0238EC04 */ _t175 = cpu->r[12] + 0x000002A4u;
|
|
/* 0238EC04 */ cpu->r[0] = rbrew_read32(cpu->mem, _t175);
|
|
/* 0238EC08 */ _t176 = cpu->r[30] + 0x00000058u;
|
|
/* 0238EC08 */ rbrew_write32(cpu->mem, _t176, cpu->r[0]);
|
|
L_0238EC0C: ; // 0x238ec0c
|
|
/* 0238EC0C */ cpu->r[10] = 0x101C0000u;
|
|
/* 0238EC10 */ _t177 = cpu->r[10] + 0x00006BD0u;
|
|
/* 0238EC10 */ cpu->r[10] = rbrew_read32(cpu->mem, _t177);
|
|
/* 0238EC14 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0238EC18 */ _t178 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238EC18 */ _t179 = _t178 & 0x00000001u;
|
|
/* 0238EC18 */ if (_t179) goto L_0238EC48; else goto L_0238EC1C;
|
|
L_0238EC1C: ; // 0x238ec1c
|
|
/* 0238EC1C */ cpu->r[9] = 0x101C0000u;
|
|
/* 0238EC20 */ _t180 = cpu->r[9] + 0x00006BFCu;
|
|
/* 0238EC20 */ cpu->r[9] = rbrew_read32(cpu->mem, _t180);
|
|
/* 0238EC24 */ cpu->r[8] = cpu->r[10] + cpu->r[9];
|
|
/* 0238EC28 */ _t181 = cpu->r[8] + 0x00000104u;
|
|
/* 0238EC28 */ cpu->r[9] = rbrew_read8(cpu->mem, _t181);
|
|
/* 0238EC2C */ _t182 = cpu->r[10] + 0x00000030u;
|
|
/* 0238EC2C */ cpu->r[0] = rbrew_read32(cpu->mem, _t182);
|
|
/* 0238EC30 */ cpu->r[9] = rbrew_rlwinm(cpu->r[9], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0238EC34 */ _t183 = cpu->r[9] + cpu->r[0];
|
|
/* 0238EC34 */ cpu->r[11] = rbrew_read32(cpu->mem, _t183);
|
|
/* 0238EC38 */ _t184 = cpu->r[11] + 0x00000004u;
|
|
/* 0238EC38 */ cpu->r[12] = rbrew_read32(cpu->mem, _t184);
|
|
/* 0238EC3C */ _t185 = cpu->r[12] + 0x00000000u;
|
|
/* 0238EC3C */ cpu->r[7] = rbrew_read32(cpu->mem, _t185);
|
|
/* 0238EC40 */ _t186 = cpu->r[7] + 0x000002B8u;
|
|
/* 0238EC40 */ cpu->r[5] = rbrew_read32(cpu->mem, _t186);
|
|
/* 0238EC44 */ _t187 = cpu->r[30] + 0x00000058u;
|
|
/* 0238EC44 */ rbrew_write32(cpu->mem, _t187, cpu->r[5]);
|
|
L_0238EC48: ; // 0x238ec48
|
|
/* 0238EC48 */ cpu->r[6] = 0x00000001u;
|
|
/* 0238EC4C */ cpu->r[3] = cpu->r[29];
|
|
/* 0238EC50 */ _t188 = cpu->r[30] + 0x0000009Cu;
|
|
/* 0238EC50 */ rbrew_write8(cpu->mem, _t188, (uint8_t)cpu->r[6]);
|
|
/* 0238EC54 */ Gambit_fn_0238C0E0(cpu);
|
|
L_0238EC58: ; // 0x238ec58
|
|
/* 0238EC58 */ /* nop */
|
|
/* 0238EC5C */ _t189 = cpu->r[1] + 0x00000054u;
|
|
/* 0238EC5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t189);
|
|
/* 0238EC60 */ cpu->lr = cpu->r[0];
|
|
/* 0238EC64 */ cpu->r[1] = cpu->r[1] + 0x00000050u;
|
|
/* 0238EC68 */ return;
|
|
}
|
|
|
|
// fn_0238EC6C @ 0x238ec6c
|
|
void Gambit_fn_0238EC6C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106;
|
|
|
|
L_0238EC6C: ; // 0x238ec6c
|
|
/* 0238EC6C */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 0238EC6C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0238EC6C */ cpu->r[1] = _t0;
|
|
/* 0238EC70 */ /* nop */
|
|
/* 0238EC74 */ cpu->r[0] = cpu->lr;
|
|
/* 0238EC78 */ _t1 = cpu->r[1] + 0x00000044u;
|
|
/* 0238EC78 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0238EC7C */ cpu->r[29] = cpu->r[3];
|
|
/* 0238EC80 */ _t2 = cpu->r[29] + 0x00000505u;
|
|
/* 0238EC80 */ cpu->r[11] = rbrew_read8(cpu->mem, _t2);
|
|
/* 0238EC84 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0238EC88 */ cpu->r[30] = cpu->r[4];
|
|
/* 0238EC8C */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238EC8C */ _t4 = _t3 & 0x00000001u;
|
|
/* 0238EC8C */ if (_t4) goto L_0238EF30; else goto L_0238EC90;
|
|
L_0238EC90: ; // 0x238ec90
|
|
/* 0238EC90 */ _t5 = cpu->r[29] + 0x00000504u;
|
|
/* 0238EC90 */ cpu->r[0] = rbrew_read8(cpu->mem, _t5);
|
|
/* 0238EC94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0238EC98 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238EC98 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0238EC98 */ if (_t7) goto L_0238EF30; else goto L_0238EC9C;
|
|
L_0238EC9C: ; // 0x238ec9c
|
|
/* 0238EC9C */ cpu->r[3] = cpu->r[29] + 0x000007C4u;
|
|
/* 0238ECA0 */ Gambit_fn_02836FFC(cpu);
|
|
/* 0238ECA4 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0238ECA8 */ _t8 = cpu->r[3] + 0x00006000u;
|
|
/* 0238ECA8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0238ECAC */ _t9 = cpu->r[3] + 0x00000004u;
|
|
/* 0238ECAC */ cpu->r[6] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0238ECB0 */ _t10 = cpu->r[6] + 0x0000012Cu;
|
|
/* 0238ECB0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0238ECB4 */ cpu->ctr = cpu->r[7];
|
|
/* 0238ECB8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0238ECBC */ _t11 = cpu->r[29] + 0x000004E4u;
|
|
/* 0238ECBC */ cpu->r[8] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0238ECC0 */ cpu->r[26] = cpu->r[3];
|
|
/* 0238ECC4 */ _t12 = cpu->r[29] + 0x000004F0u;
|
|
/* 0238ECC4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0238ECC8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], cpu->r[9]);
|
|
/* 0238ECCC */ cpu->r[25] = 0x00000000u;
|
|
/* 0238ECD0 */ _t13 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0238ECD0 */ _t14 = _t13 & 0x00000001u;
|
|
/* 0238ECD0 */ if (_t14) goto L_0238ECF4; else goto L_0238ECD4;
|
|
L_0238ECD4: ; // 0x238ecd4
|
|
/* 0238ECD4 */ cpu->r[3] = cpu->r[29] + 0x000007C4u;
|
|
/* 0238ECD8 */ cpu->r[31] = 0x00000000u;
|
|
/* 0238ECDC */ Gambit_fn_02837030(cpu);
|
|
/* 0238ECE0 */ /* nop */
|
|
/* 0238ECE4 */ _t15 = cpu->r[1] + 0x00000044u;
|
|
/* 0238ECE4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0238ECE8 */ cpu->lr = cpu->r[0];
|
|
/* 0238ECEC */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 0238ECF0 */ return;
|
|
L_0238ECF4: ; // 0x238ecf4
|
|
/* 0238ECF4 */ _t16 = cpu->r[29] + 0x000004E8u;
|
|
/* 0238ECF4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0238ECF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0238ECFC */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238ECFC */ _t18 = _t17 & 0x00000001u;
|
|
/* 0238ECFC */ if (_t18) goto L_0238ED08; else goto L_0238ED00;
|
|
L_0238ED00: ; // 0x238ed00
|
|
/* 0238ED00 */ _t19 = cpu->r[31] + 0x00000000u;
|
|
/* 0238ED00 */ cpu->r[10] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0238ED04 */ _t20 = cpu->r[29] + 0x000004E8u;
|
|
/* 0238ED04 */ rbrew_write32(cpu->mem, _t20, cpu->r[10]);
|
|
L_0238ED08: ; // 0x238ed08
|
|
/* 0238ED08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0238ED0C */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238ED0C */ _t22 = _t21 & 0x00000001u;
|
|
/* 0238ED0C */ if (_t22) goto L_0238EED0; else goto L_0238ED10;
|
|
L_0238ED10: ; // 0x238ed10
|
|
/* 0238ED10 */ cpu->r[11] = 0x0000000Du;
|
|
/* 0238ED14 */ cpu->r[23] = cpu->r[31];
|
|
/* 0238ED14 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], 0x00000000u);
|
|
/* 0238ED18 */ _t23 = cpu->r[1] + 0x00000008u;
|
|
/* 0238ED18 */ rbrew_write32(cpu->mem, _t23, cpu->r[11]);
|
|
/* 0238ED1C */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238ED1C */ _t25 = _t24 & 0x00000001u;
|
|
/* 0238ED1C */ if (_t25) goto L_0238ED20; else goto L_0238ED30;
|
|
L_0238ED20: ; // 0x238ed20
|
|
/* 0238ED20 */ cpu->r[3] = 0x000000A4u;
|
|
/* 0238ED24 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238ED28 */ cpu->r[23] = cpu->r[3];
|
|
/* 0238ED28 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], 0x00000000u);
|
|
/* 0238ED2C */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238ED2C */ _t27 = _t26 & 0x00000001u;
|
|
/* 0238ED2C */ if (_t27) goto L_0238EE9C; else goto L_0238ED30;
|
|
L_0238ED30: ; // 0x238ed30
|
|
/* 0238ED30 */ cpu->r[22] = 0x10080000u;
|
|
/* 0238ED34 */ cpu->r[27] = cpu->r[23];
|
|
/* 0238ED34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0238ED38 */ cpu->r[24] = 0x10080000u;
|
|
/* 0238ED3C */ cpu->r[22] = cpu->r[22] + 0x000062A8u;
|
|
/* 0238ED40 */ cpu->r[21] = 0x10080000u;
|
|
/* 0238ED44 */ cpu->r[24] = cpu->r[24] + 0x00006290u;
|
|
/* 0238ED48 */ cpu->r[20] = 0x10110000u;
|
|
/* 0238ED4C */ cpu->r[21] = cpu->r[21] + 0x000062C0u;
|
|
/* 0238ED50 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238ED50 */ _t29 = _t28 & 0x00000001u;
|
|
/* 0238ED50 */ if (_t29) goto L_0238ED54; else goto L_0238ED64;
|
|
L_0238ED54: ; // 0x238ed54
|
|
/* 0238ED54 */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0238ED58 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238ED5C */ cpu->r[27] = cpu->r[3];
|
|
/* 0238ED5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0238ED60 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238ED60 */ _t31 = _t30 & 0x00000001u;
|
|
/* 0238ED60 */ if (_t31) goto L_0238EDD8; else goto L_0238ED64;
|
|
L_0238ED64: ; // 0x238ed64
|
|
/* 0238ED64 */ cpu->r[28] = cpu->r[27];
|
|
/* 0238ED64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 0238ED68 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238ED68 */ _t33 = _t32 & 0x00000001u;
|
|
/* 0238ED68 */ if (_t33) goto L_0238ED6C; else goto L_0238ED7C;
|
|
L_0238ED6C: ; // 0x238ed6c
|
|
/* 0238ED6C */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0238ED70 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238ED74 */ cpu->r[28] = cpu->r[3];
|
|
/* 0238ED74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 0238ED78 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238ED78 */ _t35 = _t34 & 0x00000001u;
|
|
/* 0238ED78 */ if (_t35) goto L_0238EDD4; else goto L_0238ED7C;
|
|
L_0238ED7C: ; // 0x238ed7c
|
|
/* 0238ED7C */ cpu->r[3] = cpu->r[28];
|
|
/* 0238ED7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238ED80 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238ED80 */ _t37 = _t36 & 0x00000001u;
|
|
/* 0238ED80 */ if (_t37) goto L_0238ED84; else goto L_0238EDAC;
|
|
L_0238ED84: ; // 0x238ed84
|
|
/* 0238ED84 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0238ED88 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238ED8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238ED90 */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238ED90 */ _t39 = _t38 & 0x00000001u;
|
|
/* 0238ED90 */ if (_t39) goto L_0238ED94; else goto L_0238EDAC;
|
|
L_0238ED94: ; // 0x238ed94
|
|
/* 0238ED94 */ _t40 = cpu->r[28] + 0x00000000u;
|
|
/* 0238ED94 */ cpu->r[9] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0238ED98 */ _t41 = cpu->r[20] + 0x00007399u;
|
|
/* 0238ED98 */ cpu->r[0] = rbrew_read8(cpu->mem, _t41);
|
|
/* 0238ED9C */ _t42 = cpu->r[28] + 0x00000004u;
|
|
/* 0238ED9C */ rbrew_write32(cpu->mem, _t42, cpu->r[22]);
|
|
/* 0238EDA0 */ _t43 = cpu->r[9] + 0x00000000u;
|
|
/* 0238EDA0 */ rbrew_write8(cpu->mem, _t43, (uint8_t)cpu->r[0]);
|
|
/* 0238EDA4 */ _t44 = cpu->r[27] + 0x00000004u;
|
|
/* 0238EDA4 */ rbrew_write32(cpu->mem, _t44, cpu->r[21]);
|
|
/* 0238EDA8 */ goto L_0238EDD8;
|
|
L_0238EDAC: ; // 0x238edac
|
|
/* 0238EDAC */ cpu->r[12] = cpu->r[28] + 0x0000000Cu;
|
|
/* 0238EDB0 */ _t45 = cpu->r[3] + 0x00000004u;
|
|
/* 0238EDB0 */ rbrew_write32(cpu->mem, _t45, cpu->r[24]);
|
|
/* 0238EDB4 */ cpu->r[0] = 0x00000020u;
|
|
/* 0238EDB8 */ _t46 = cpu->r[3] + 0x00000000u;
|
|
/* 0238EDB8 */ rbrew_write32(cpu->mem, _t46, cpu->r[12]);
|
|
/* 0238EDBC */ _t47 = cpu->r[3] + 0x00000008u;
|
|
/* 0238EDBC */ rbrew_write32(cpu->mem, _t47, cpu->r[0]);
|
|
/* 0238EDC0 */ _t48 = cpu->r[20] + 0x00007399u;
|
|
/* 0238EDC0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t48);
|
|
/* 0238EDC4 */ _t49 = cpu->r[28] + 0x00000004u;
|
|
/* 0238EDC4 */ rbrew_write32(cpu->mem, _t49, cpu->r[22]);
|
|
/* 0238EDC8 */ _t50 = cpu->r[28] + 0x00000000u;
|
|
/* 0238EDC8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t50);
|
|
/* 0238EDCC */ _t51 = cpu->r[28] + 0x0000002Bu;
|
|
/* 0238EDCC */ rbrew_write8(cpu->mem, _t51, (uint8_t)cpu->r[0]);
|
|
/* 0238EDD0 */ _t52 = cpu->r[9] + 0x00000000u;
|
|
/* 0238EDD0 */ rbrew_write8(cpu->mem, _t52, (uint8_t)cpu->r[0]);
|
|
L_0238EDD4: ; // 0x238edd4
|
|
/* 0238EDD4 */ _t53 = cpu->r[27] + 0x00000004u;
|
|
/* 0238EDD4 */ rbrew_write32(cpu->mem, _t53, cpu->r[21]);
|
|
L_0238EDD8: ; // 0x238edd8
|
|
/* 0238EDD8 */ cpu->r[27] = cpu->r[23] + 0x0000002Cu;
|
|
/* 0238EDD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0238EDDC */ _t54 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238EDDC */ _t55 = _t54 & 0x00000001u;
|
|
/* 0238EDDC */ if (_t55) goto L_0238EDE0; else goto L_0238EDF0;
|
|
L_0238EDE0: ; // 0x238ede0
|
|
/* 0238EDE0 */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0238EDE4 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238EDE8 */ cpu->r[27] = cpu->r[3];
|
|
/* 0238EDE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0238EDEC */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238EDEC */ _t57 = _t56 & 0x00000001u;
|
|
/* 0238EDEC */ if (_t57) goto L_0238EE64; else goto L_0238EDF0;
|
|
L_0238EDF0: ; // 0x238edf0
|
|
/* 0238EDF0 */ cpu->r[28] = cpu->r[27];
|
|
/* 0238EDF0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 0238EDF4 */ _t58 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238EDF4 */ _t59 = _t58 & 0x00000001u;
|
|
/* 0238EDF4 */ if (_t59) goto L_0238EDF8; else goto L_0238EE08;
|
|
L_0238EDF8: ; // 0x238edf8
|
|
/* 0238EDF8 */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0238EDFC */ Gambit_fn_02801A78(cpu);
|
|
/* 0238EE00 */ cpu->r[28] = cpu->r[3];
|
|
/* 0238EE00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 0238EE04 */ _t60 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238EE04 */ _t61 = _t60 & 0x00000001u;
|
|
/* 0238EE04 */ if (_t61) goto L_0238EE60; else goto L_0238EE08;
|
|
L_0238EE08: ; // 0x238ee08
|
|
/* 0238EE08 */ cpu->r[3] = cpu->r[28];
|
|
/* 0238EE08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238EE0C */ _t62 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238EE0C */ _t63 = _t62 & 0x00000001u;
|
|
/* 0238EE0C */ if (_t63) goto L_0238EE10; else goto L_0238EE38;
|
|
L_0238EE10: ; // 0x238ee10
|
|
/* 0238EE10 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0238EE14 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238EE18 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238EE1C */ _t64 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238EE1C */ _t65 = _t64 & 0x00000001u;
|
|
/* 0238EE1C */ if (_t65) goto L_0238EE20; else goto L_0238EE38;
|
|
L_0238EE20: ; // 0x238ee20
|
|
/* 0238EE20 */ _t66 = cpu->r[28] + 0x00000000u;
|
|
/* 0238EE20 */ cpu->r[12] = rbrew_read32(cpu->mem, _t66);
|
|
/* 0238EE24 */ _t67 = cpu->r[20] + 0x00007399u;
|
|
/* 0238EE24 */ cpu->r[0] = rbrew_read8(cpu->mem, _t67);
|
|
/* 0238EE28 */ _t68 = cpu->r[28] + 0x00000004u;
|
|
/* 0238EE28 */ rbrew_write32(cpu->mem, _t68, cpu->r[22]);
|
|
/* 0238EE2C */ _t69 = cpu->r[12] + 0x00000000u;
|
|
/* 0238EE2C */ rbrew_write8(cpu->mem, _t69, (uint8_t)cpu->r[0]);
|
|
/* 0238EE30 */ _t70 = cpu->r[27] + 0x00000004u;
|
|
/* 0238EE30 */ rbrew_write32(cpu->mem, _t70, cpu->r[21]);
|
|
/* 0238EE34 */ goto L_0238EE64;
|
|
L_0238EE38: ; // 0x238ee38
|
|
/* 0238EE38 */ cpu->r[10] = cpu->r[28] + 0x0000000Cu;
|
|
/* 0238EE3C */ _t71 = cpu->r[3] + 0x00000004u;
|
|
/* 0238EE3C */ rbrew_write32(cpu->mem, _t71, cpu->r[24]);
|
|
/* 0238EE40 */ cpu->r[11] = 0x00000020u;
|
|
/* 0238EE44 */ _t72 = cpu->r[3] + 0x00000000u;
|
|
/* 0238EE44 */ rbrew_write32(cpu->mem, _t72, cpu->r[10]);
|
|
/* 0238EE48 */ _t73 = cpu->r[3] + 0x00000008u;
|
|
/* 0238EE48 */ rbrew_write32(cpu->mem, _t73, cpu->r[11]);
|
|
/* 0238EE4C */ _t74 = cpu->r[20] + 0x00007399u;
|
|
/* 0238EE4C */ cpu->r[0] = rbrew_read8(cpu->mem, _t74);
|
|
/* 0238EE50 */ _t75 = cpu->r[28] + 0x00000004u;
|
|
/* 0238EE50 */ rbrew_write32(cpu->mem, _t75, cpu->r[22]);
|
|
/* 0238EE54 */ _t76 = cpu->r[28] + 0x00000000u;
|
|
/* 0238EE54 */ cpu->r[12] = rbrew_read32(cpu->mem, _t76);
|
|
/* 0238EE58 */ _t77 = cpu->r[28] + 0x0000002Bu;
|
|
/* 0238EE58 */ rbrew_write8(cpu->mem, _t77, (uint8_t)cpu->r[0]);
|
|
/* 0238EE5C */ _t78 = cpu->r[12] + 0x00000000u;
|
|
/* 0238EE5C */ rbrew_write8(cpu->mem, _t78, (uint8_t)cpu->r[0]);
|
|
L_0238EE60: ; // 0x238ee60
|
|
/* 0238EE60 */ _t79 = cpu->r[27] + 0x00000004u;
|
|
/* 0238EE60 */ rbrew_write32(cpu->mem, _t79, cpu->r[21]);
|
|
L_0238EE64: ; // 0x238ee64
|
|
/* 0238EE64 */ cpu->r[0] = cpu->r[23] + 0x00000080u;
|
|
/* 0238EE64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0238EE68 */ _t80 = cpu->r[23] + 0x00000058u;
|
|
/* 0238EE68 */ rbrew_write32(cpu->mem, _t80, cpu->r[26]);
|
|
/* 0238EE6C */ _t81 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238EE6C */ _t82 = _t81 & 0x00000001u;
|
|
/* 0238EE6C */ if (_t82) goto L_0238EE70; else goto L_0238EE78;
|
|
L_0238EE70: ; // 0x238ee70
|
|
/* 0238EE70 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0238EE74 */ Gambit_fn_02801A78(cpu);
|
|
L_0238EE78: ; // 0x238ee78
|
|
/* 0238EE78 */ cpu->r[6] = cpu->r[23] + 0x0000008Cu;
|
|
/* 0238EE78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 0238EE7C */ _t83 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238EE7C */ _t84 = _t83 & 0x00000001u;
|
|
/* 0238EE7C */ if (_t84) goto L_0238EE80; else goto L_0238EE88;
|
|
L_0238EE80: ; // 0x238ee80
|
|
/* 0238EE80 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0238EE84 */ Gambit_fn_02801A78(cpu);
|
|
L_0238EE88: ; // 0x238ee88
|
|
/* 0238EE88 */ _t85 = cpu->r[1] + 0x00000008u;
|
|
/* 0238EE88 */ cpu->r[7] = rbrew_read32(cpu->mem, _t85);
|
|
/* 0238EE8C */ _t86 = cpu->r[23] + 0x0000009Cu;
|
|
/* 0238EE8C */ rbrew_write8(cpu->mem, _t86, (uint8_t)cpu->r[25]);
|
|
/* 0238EE90 */ cpu->r[8] = 0xFFFFFFFFu;
|
|
/* 0238EE94 */ _t87 = cpu->r[23] + 0x00000098u;
|
|
/* 0238EE94 */ rbrew_write32(cpu->mem, _t87, cpu->r[7]);
|
|
/* 0238EE98 */ _t88 = cpu->r[23] + 0x000000A0u;
|
|
/* 0238EE98 */ rbrew_write32(cpu->mem, _t88, cpu->r[8]);
|
|
L_0238EE9C: ; // 0x238ee9c
|
|
/* 0238EE9C */ _t89 = cpu->r[31] + 0x000000A4u;
|
|
/* 0238EE9C */ rbrew_write32(cpu->mem, _t89, cpu->r[25]);
|
|
/* 0238EEA0 */ cpu->r[4] = cpu->r[31] + 0x000000A4u;
|
|
/* 0238EEA4 */ cpu->r[3] = cpu->r[29] + 0x000004DCu;
|
|
/* 0238EEA8 */ _t90 = cpu->r[31] + 0x000000A8u;
|
|
/* 0238EEA8 */ rbrew_write32(cpu->mem, _t90, cpu->r[25]);
|
|
/* 0238EEAC */ Gambit_fn_02801EBC(cpu);
|
|
/* 0238EEB0 */ _t91 = cpu->r[29] + 0x000004E4u;
|
|
/* 0238EEB0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t91);
|
|
/* 0238EEB4 */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 0238EEB8 */ cpu->r[3] = cpu->r[29] + 0x000007C4u;
|
|
/* 0238EEBC */ _t92 = cpu->r[29] + 0x000004E4u;
|
|
/* 0238EEBC */ rbrew_write32(cpu->mem, _t92, cpu->r[10]);
|
|
/* 0238EEC0 */ Gambit_fn_02837030(cpu);
|
|
/* 0238EEC4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0238EEC8 */ _t93 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238EEC8 */ _t94 = _t93 & 0x00000001u;
|
|
/* 0238EEC8 */ if (_t94) goto L_0238EECC; else goto L_0238EEFC;
|
|
L_0238EECC: ; // 0x238eecc
|
|
/* 0238EECC */ goto L_0238EF30;
|
|
L_0238EED0: ; // 0x238eed0
|
|
/* 0238EED0 */ cpu->r[4] = 0x000000A4u;
|
|
/* 0238EED4 */ cpu->r[3] = cpu->r[29] + 0x000004DCu;
|
|
/* 0238EED8 */ cpu->r[31] = 0x00000000u;
|
|
/* 0238EEDC */ Gambit_fn_02801EBC(cpu);
|
|
/* 0238EEE0 */ _t95 = cpu->r[29] + 0x000004E4u;
|
|
/* 0238EEE0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t95);
|
|
/* 0238EEE4 */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 0238EEE8 */ cpu->r[3] = cpu->r[29] + 0x000007C4u;
|
|
/* 0238EEEC */ _t96 = cpu->r[29] + 0x000004E4u;
|
|
/* 0238EEEC */ rbrew_write32(cpu->mem, _t96, cpu->r[10]);
|
|
/* 0238EEF0 */ Gambit_fn_02837030(cpu);
|
|
/* 0238EEF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0238EEF8 */ _t97 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238EEF8 */ _t98 = _t97 & 0x00000001u;
|
|
/* 0238EEF8 */ if (_t98) goto L_0238EF30; else goto L_0238EEFC;
|
|
L_0238EEFC: ; // 0x238eefc
|
|
/* 0238EEFC */ cpu->r[3] = cpu->r[29];
|
|
/* 0238EF00 */ cpu->r[4] = cpu->r[31];
|
|
/* 0238EF04 */ Gambit_fn_0238C684(cpu);
|
|
/* 0238EF08 */ _t99 = cpu->r[30] + 0x00000000u;
|
|
/* 0238EF08 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t99);
|
|
/* 0238EF0C */ _t100 = cpu->r[31] + 0x00000080u;
|
|
/* 0238EF0C */ rbrew_write_f32(cpu->mem, _t100, cpu->f[0]);
|
|
/* 0238EF10 */ _t101 = cpu->r[30] + 0x00000004u;
|
|
/* 0238EF10 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t101);
|
|
/* 0238EF14 */ cpu->r[12] = 0x00000001u;
|
|
/* 0238EF18 */ _t102 = cpu->r[31] + 0x00000084u;
|
|
/* 0238EF18 */ rbrew_write_f32(cpu->mem, _t102, cpu->f[0]);
|
|
/* 0238EF1C */ _t103 = cpu->r[30] + 0x00000008u;
|
|
/* 0238EF1C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t103);
|
|
/* 0238EF20 */ _t104 = cpu->r[31] + 0x0000009Cu;
|
|
/* 0238EF20 */ rbrew_write8(cpu->mem, _t104, (uint8_t)cpu->r[12]);
|
|
/* 0238EF24 */ cpu->r[3] = cpu->r[29];
|
|
/* 0238EF28 */ _t105 = cpu->r[31] + 0x00000088u;
|
|
/* 0238EF28 */ rbrew_write_f32(cpu->mem, _t105, cpu->f[0]);
|
|
/* 0238EF2C */ Gambit_fn_0238C0E0(cpu);
|
|
L_0238EF30: ; // 0x238ef30
|
|
/* 0238EF30 */ /* nop */
|
|
/* 0238EF34 */ _t106 = cpu->r[1] + 0x00000044u;
|
|
/* 0238EF34 */ cpu->r[0] = rbrew_read32(cpu->mem, _t106);
|
|
/* 0238EF38 */ cpu->lr = cpu->r[0];
|
|
/* 0238EF3C */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 0238EF40 */ return;
|
|
}
|
|
|
|
// fn_0238EF44 @ 0x238ef44
|
|
void Gambit_fn_0238EF44(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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;
|
|
|
|
L_0238EF44: ; // 0x238ef44
|
|
/* 0238EF44 */ _t0 = cpu->r[1] + 0xFFFFFFB8u;
|
|
/* 0238EF44 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0238EF44 */ cpu->r[1] = _t0;
|
|
/* 0238EF48 */ /* nop */
|
|
/* 0238EF4C */ cpu->r[0] = cpu->lr;
|
|
/* 0238EF50 */ _t1 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0238EF50 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0238EF54 */ cpu->r[29] = cpu->r[5];
|
|
/* 0238EF58 */ cpu->r[27] = cpu->r[3];
|
|
/* 0238EF5C */ _t2 = cpu->r[27] + 0x00000505u;
|
|
/* 0238EF5C */ cpu->r[0] = rbrew_read8(cpu->mem, _t2);
|
|
/* 0238EF60 */ cpu->r[28] = cpu->r[4];
|
|
/* 0238EF64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0238EF68 */ cpu->r[30] = cpu->r[6];
|
|
/* 0238EF6C */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238EF6C */ _t4 = _t3 & 0x00000001u;
|
|
/* 0238EF6C */ if (_t4) goto L_0238F21C; else goto L_0238EF70;
|
|
L_0238EF70: ; // 0x238ef70
|
|
/* 0238EF70 */ _t5 = cpu->r[27] + 0x00000504u;
|
|
/* 0238EF70 */ cpu->r[0] = rbrew_read8(cpu->mem, _t5);
|
|
/* 0238EF74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0238EF78 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238EF78 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0238EF78 */ if (_t7) goto L_0238F21C; else goto L_0238EF7C;
|
|
L_0238EF7C: ; // 0x238ef7c
|
|
/* 0238EF7C */ cpu->r[3] = cpu->r[27] + 0x000007C4u;
|
|
/* 0238EF80 */ Gambit_fn_02836FFC(cpu);
|
|
/* 0238EF84 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0238EF88 */ _t8 = cpu->r[3] + 0x00006000u;
|
|
/* 0238EF88 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0238EF8C */ _t9 = cpu->r[3] + 0x00000004u;
|
|
/* 0238EF8C */ cpu->r[8] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0238EF90 */ _t10 = cpu->r[8] + 0x0000012Cu;
|
|
/* 0238EF90 */ cpu->r[9] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0238EF94 */ cpu->ctr = cpu->r[9];
|
|
/* 0238EF98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0238EF9C */ _t11 = cpu->r[27] + 0x000004E4u;
|
|
/* 0238EF9C */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0238EFA0 */ cpu->r[24] = cpu->r[3];
|
|
/* 0238EFA4 */ _t12 = cpu->r[27] + 0x000004F0u;
|
|
/* 0238EFA4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0238EFA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], cpu->r[11]);
|
|
/* 0238EFAC */ cpu->r[23] = 0x00000000u;
|
|
/* 0238EFB0 */ _t13 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0238EFB0 */ _t14 = _t13 & 0x00000001u;
|
|
/* 0238EFB0 */ if (_t14) goto L_0238EFD4; else goto L_0238EFB4;
|
|
L_0238EFB4: ; // 0x238efb4
|
|
/* 0238EFB4 */ cpu->r[3] = cpu->r[27] + 0x000007C4u;
|
|
/* 0238EFB8 */ cpu->r[31] = 0x00000000u;
|
|
/* 0238EFBC */ Gambit_fn_02837030(cpu);
|
|
/* 0238EFC0 */ /* nop */
|
|
/* 0238EFC4 */ _t15 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0238EFC4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0238EFC8 */ cpu->lr = cpu->r[0];
|
|
/* 0238EFCC */ cpu->r[1] = cpu->r[1] + 0x00000048u;
|
|
/* 0238EFD0 */ return;
|
|
L_0238EFD4: ; // 0x238efd4
|
|
/* 0238EFD4 */ _t16 = cpu->r[27] + 0x000004E8u;
|
|
/* 0238EFD4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0238EFD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0238EFDC */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238EFDC */ _t18 = _t17 & 0x00000001u;
|
|
/* 0238EFDC */ if (_t18) goto L_0238EFE8; else goto L_0238EFE0;
|
|
L_0238EFE0: ; // 0x238efe0
|
|
/* 0238EFE0 */ _t19 = cpu->r[31] + 0x00000000u;
|
|
/* 0238EFE0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0238EFE4 */ _t20 = cpu->r[27] + 0x000004E8u;
|
|
/* 0238EFE4 */ rbrew_write32(cpu->mem, _t20, cpu->r[12]);
|
|
L_0238EFE8: ; // 0x238efe8
|
|
/* 0238EFE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0238EFEC */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238EFEC */ _t22 = _t21 & 0x00000001u;
|
|
/* 0238EFEC */ if (_t22) goto L_0238F1B0; else goto L_0238EFF0;
|
|
L_0238EFF0: ; // 0x238eff0
|
|
/* 0238EFF0 */ cpu->r[0] = 0x0000000Eu;
|
|
/* 0238EFF4 */ cpu->r[21] = cpu->r[31];
|
|
/* 0238EFF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], 0x00000000u);
|
|
/* 0238EFF8 */ _t23 = cpu->r[1] + 0x00000008u;
|
|
/* 0238EFF8 */ rbrew_write32(cpu->mem, _t23, cpu->r[0]);
|
|
/* 0238EFFC */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238EFFC */ _t25 = _t24 & 0x00000001u;
|
|
/* 0238EFFC */ if (_t25) goto L_0238F000; else goto L_0238F010;
|
|
L_0238F000: ; // 0x238f000
|
|
/* 0238F000 */ cpu->r[3] = 0x000000A4u;
|
|
/* 0238F004 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238F008 */ cpu->r[21] = cpu->r[3];
|
|
/* 0238F008 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], 0x00000000u);
|
|
/* 0238F00C */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238F00C */ _t27 = _t26 & 0x00000001u;
|
|
/* 0238F00C */ if (_t27) goto L_0238F17C; else goto L_0238F010;
|
|
L_0238F010: ; // 0x238f010
|
|
/* 0238F010 */ cpu->r[20] = 0x10080000u;
|
|
/* 0238F014 */ cpu->r[25] = cpu->r[21];
|
|
/* 0238F014 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 0238F018 */ cpu->r[22] = 0x10080000u;
|
|
/* 0238F01C */ cpu->r[20] = cpu->r[20] + 0x000062A8u;
|
|
/* 0238F020 */ cpu->r[19] = 0x10080000u;
|
|
/* 0238F024 */ cpu->r[22] = cpu->r[22] + 0x00006290u;
|
|
/* 0238F028 */ cpu->r[18] = 0x10110000u;
|
|
/* 0238F02C */ cpu->r[19] = cpu->r[19] + 0x000062C0u;
|
|
/* 0238F030 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238F030 */ _t29 = _t28 & 0x00000001u;
|
|
/* 0238F030 */ if (_t29) goto L_0238F034; else goto L_0238F044;
|
|
L_0238F034: ; // 0x238f034
|
|
/* 0238F034 */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0238F038 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238F03C */ cpu->r[25] = cpu->r[3];
|
|
/* 0238F03C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 0238F040 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238F040 */ _t31 = _t30 & 0x00000001u;
|
|
/* 0238F040 */ if (_t31) goto L_0238F0B8; else goto L_0238F044;
|
|
L_0238F044: ; // 0x238f044
|
|
/* 0238F044 */ cpu->r[26] = cpu->r[25];
|
|
/* 0238F044 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 0238F048 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238F048 */ _t33 = _t32 & 0x00000001u;
|
|
/* 0238F048 */ if (_t33) goto L_0238F04C; else goto L_0238F05C;
|
|
L_0238F04C: ; // 0x238f04c
|
|
/* 0238F04C */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0238F050 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238F054 */ cpu->r[26] = cpu->r[3];
|
|
/* 0238F054 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 0238F058 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238F058 */ _t35 = _t34 & 0x00000001u;
|
|
/* 0238F058 */ if (_t35) goto L_0238F0B4; else goto L_0238F05C;
|
|
L_0238F05C: ; // 0x238f05c
|
|
/* 0238F05C */ cpu->r[3] = cpu->r[26];
|
|
/* 0238F05C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238F060 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238F060 */ _t37 = _t36 & 0x00000001u;
|
|
/* 0238F060 */ if (_t37) goto L_0238F064; else goto L_0238F08C;
|
|
L_0238F064: ; // 0x238f064
|
|
/* 0238F064 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0238F068 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238F06C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238F070 */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238F070 */ _t39 = _t38 & 0x00000001u;
|
|
/* 0238F070 */ if (_t39) goto L_0238F074; else goto L_0238F08C;
|
|
L_0238F074: ; // 0x238f074
|
|
/* 0238F074 */ _t40 = cpu->r[26] + 0x00000000u;
|
|
/* 0238F074 */ cpu->r[12] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0238F078 */ _t41 = cpu->r[18] + 0x00007399u;
|
|
/* 0238F078 */ cpu->r[9] = rbrew_read8(cpu->mem, _t41);
|
|
/* 0238F07C */ _t42 = cpu->r[26] + 0x00000004u;
|
|
/* 0238F07C */ rbrew_write32(cpu->mem, _t42, cpu->r[20]);
|
|
/* 0238F080 */ _t43 = cpu->r[12] + 0x00000000u;
|
|
/* 0238F080 */ rbrew_write8(cpu->mem, _t43, (uint8_t)cpu->r[9]);
|
|
/* 0238F084 */ _t44 = cpu->r[25] + 0x00000004u;
|
|
/* 0238F084 */ rbrew_write32(cpu->mem, _t44, cpu->r[19]);
|
|
/* 0238F088 */ goto L_0238F0B8;
|
|
L_0238F08C: ; // 0x238f08c
|
|
/* 0238F08C */ cpu->r[10] = cpu->r[26] + 0x0000000Cu;
|
|
/* 0238F090 */ _t45 = cpu->r[3] + 0x00000004u;
|
|
/* 0238F090 */ rbrew_write32(cpu->mem, _t45, cpu->r[22]);
|
|
/* 0238F094 */ cpu->r[11] = 0x00000020u;
|
|
/* 0238F098 */ _t46 = cpu->r[3] + 0x00000000u;
|
|
/* 0238F098 */ rbrew_write32(cpu->mem, _t46, cpu->r[10]);
|
|
/* 0238F09C */ _t47 = cpu->r[3] + 0x00000008u;
|
|
/* 0238F09C */ rbrew_write32(cpu->mem, _t47, cpu->r[11]);
|
|
/* 0238F0A0 */ _t48 = cpu->r[18] + 0x00007399u;
|
|
/* 0238F0A0 */ cpu->r[9] = rbrew_read8(cpu->mem, _t48);
|
|
/* 0238F0A4 */ _t49 = cpu->r[26] + 0x00000004u;
|
|
/* 0238F0A4 */ rbrew_write32(cpu->mem, _t49, cpu->r[20]);
|
|
/* 0238F0A8 */ _t50 = cpu->r[26] + 0x00000000u;
|
|
/* 0238F0A8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t50);
|
|
/* 0238F0AC */ _t51 = cpu->r[26] + 0x0000002Bu;
|
|
/* 0238F0AC */ rbrew_write8(cpu->mem, _t51, (uint8_t)cpu->r[9]);
|
|
/* 0238F0B0 */ _t52 = cpu->r[12] + 0x00000000u;
|
|
/* 0238F0B0 */ rbrew_write8(cpu->mem, _t52, (uint8_t)cpu->r[9]);
|
|
L_0238F0B4: ; // 0x238f0b4
|
|
/* 0238F0B4 */ _t53 = cpu->r[25] + 0x00000004u;
|
|
/* 0238F0B4 */ rbrew_write32(cpu->mem, _t53, cpu->r[19]);
|
|
L_0238F0B8: ; // 0x238f0b8
|
|
/* 0238F0B8 */ cpu->r[25] = cpu->r[21] + 0x0000002Cu;
|
|
/* 0238F0B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 0238F0BC */ _t54 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238F0BC */ _t55 = _t54 & 0x00000001u;
|
|
/* 0238F0BC */ if (_t55) goto L_0238F0C0; else goto L_0238F0D0;
|
|
L_0238F0C0: ; // 0x238f0c0
|
|
/* 0238F0C0 */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0238F0C4 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238F0C8 */ cpu->r[25] = cpu->r[3];
|
|
/* 0238F0C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 0238F0CC */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238F0CC */ _t57 = _t56 & 0x00000001u;
|
|
/* 0238F0CC */ if (_t57) goto L_0238F144; else goto L_0238F0D0;
|
|
L_0238F0D0: ; // 0x238f0d0
|
|
/* 0238F0D0 */ cpu->r[26] = cpu->r[25];
|
|
/* 0238F0D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 0238F0D4 */ _t58 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238F0D4 */ _t59 = _t58 & 0x00000001u;
|
|
/* 0238F0D4 */ if (_t59) goto L_0238F0D8; else goto L_0238F0E8;
|
|
L_0238F0D8: ; // 0x238f0d8
|
|
/* 0238F0D8 */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0238F0DC */ Gambit_fn_02801A78(cpu);
|
|
/* 0238F0E0 */ cpu->r[26] = cpu->r[3];
|
|
/* 0238F0E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 0238F0E4 */ _t60 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238F0E4 */ _t61 = _t60 & 0x00000001u;
|
|
/* 0238F0E4 */ if (_t61) goto L_0238F140; else goto L_0238F0E8;
|
|
L_0238F0E8: ; // 0x238f0e8
|
|
/* 0238F0E8 */ cpu->r[3] = cpu->r[26];
|
|
/* 0238F0E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238F0EC */ _t62 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238F0EC */ _t63 = _t62 & 0x00000001u;
|
|
/* 0238F0EC */ if (_t63) goto L_0238F0F0; else goto L_0238F118;
|
|
L_0238F0F0: ; // 0x238f0f0
|
|
/* 0238F0F0 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0238F0F4 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238F0F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238F0FC */ _t64 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238F0FC */ _t65 = _t64 & 0x00000001u;
|
|
/* 0238F0FC */ if (_t65) goto L_0238F100; else goto L_0238F118;
|
|
L_0238F100: ; // 0x238f100
|
|
/* 0238F100 */ _t66 = cpu->r[26] + 0x00000000u;
|
|
/* 0238F100 */ cpu->r[6] = rbrew_read32(cpu->mem, _t66);
|
|
/* 0238F104 */ _t67 = cpu->r[18] + 0x00007399u;
|
|
/* 0238F104 */ cpu->r[9] = rbrew_read8(cpu->mem, _t67);
|
|
/* 0238F108 */ _t68 = cpu->r[26] + 0x00000004u;
|
|
/* 0238F108 */ rbrew_write32(cpu->mem, _t68, cpu->r[20]);
|
|
/* 0238F10C */ _t69 = cpu->r[6] + 0x00000000u;
|
|
/* 0238F10C */ rbrew_write8(cpu->mem, _t69, (uint8_t)cpu->r[9]);
|
|
/* 0238F110 */ _t70 = cpu->r[25] + 0x00000004u;
|
|
/* 0238F110 */ rbrew_write32(cpu->mem, _t70, cpu->r[19]);
|
|
/* 0238F114 */ goto L_0238F144;
|
|
L_0238F118: ; // 0x238f118
|
|
/* 0238F118 */ cpu->r[0] = cpu->r[26] + 0x0000000Cu;
|
|
/* 0238F11C */ _t71 = cpu->r[3] + 0x00000004u;
|
|
/* 0238F11C */ rbrew_write32(cpu->mem, _t71, cpu->r[22]);
|
|
/* 0238F120 */ cpu->r[5] = 0x00000020u;
|
|
/* 0238F124 */ _t72 = cpu->r[3] + 0x00000000u;
|
|
/* 0238F124 */ rbrew_write32(cpu->mem, _t72, cpu->r[0]);
|
|
/* 0238F128 */ _t73 = cpu->r[3] + 0x00000008u;
|
|
/* 0238F128 */ rbrew_write32(cpu->mem, _t73, cpu->r[5]);
|
|
/* 0238F12C */ _t74 = cpu->r[18] + 0x00007399u;
|
|
/* 0238F12C */ cpu->r[9] = rbrew_read8(cpu->mem, _t74);
|
|
/* 0238F130 */ _t75 = cpu->r[26] + 0x00000004u;
|
|
/* 0238F130 */ rbrew_write32(cpu->mem, _t75, cpu->r[20]);
|
|
/* 0238F134 */ _t76 = cpu->r[26] + 0x00000000u;
|
|
/* 0238F134 */ cpu->r[6] = rbrew_read32(cpu->mem, _t76);
|
|
/* 0238F138 */ _t77 = cpu->r[26] + 0x0000002Bu;
|
|
/* 0238F138 */ rbrew_write8(cpu->mem, _t77, (uint8_t)cpu->r[9]);
|
|
/* 0238F13C */ _t78 = cpu->r[6] + 0x00000000u;
|
|
/* 0238F13C */ rbrew_write8(cpu->mem, _t78, (uint8_t)cpu->r[9]);
|
|
L_0238F140: ; // 0x238f140
|
|
/* 0238F140 */ _t79 = cpu->r[25] + 0x00000004u;
|
|
/* 0238F140 */ rbrew_write32(cpu->mem, _t79, cpu->r[19]);
|
|
L_0238F144: ; // 0x238f144
|
|
/* 0238F144 */ cpu->r[7] = cpu->r[21] + 0x00000080u;
|
|
/* 0238F144 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 0238F148 */ _t80 = cpu->r[21] + 0x00000058u;
|
|
/* 0238F148 */ rbrew_write32(cpu->mem, _t80, cpu->r[24]);
|
|
/* 0238F14C */ _t81 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238F14C */ _t82 = _t81 & 0x00000001u;
|
|
/* 0238F14C */ if (_t82) goto L_0238F150; else goto L_0238F158;
|
|
L_0238F150: ; // 0x238f150
|
|
/* 0238F150 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0238F154 */ Gambit_fn_02801A78(cpu);
|
|
L_0238F158: ; // 0x238f158
|
|
/* 0238F158 */ cpu->r[8] = cpu->r[21] + 0x0000008Cu;
|
|
/* 0238F158 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0238F15C */ _t83 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238F15C */ _t84 = _t83 & 0x00000001u;
|
|
/* 0238F15C */ if (_t84) goto L_0238F160; else goto L_0238F168;
|
|
L_0238F160: ; // 0x238f160
|
|
/* 0238F160 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0238F164 */ Gambit_fn_02801A78(cpu);
|
|
L_0238F168: ; // 0x238f168
|
|
/* 0238F168 */ _t85 = cpu->r[1] + 0x00000008u;
|
|
/* 0238F168 */ cpu->r[10] = rbrew_read32(cpu->mem, _t85);
|
|
/* 0238F16C */ _t86 = cpu->r[21] + 0x0000009Cu;
|
|
/* 0238F16C */ rbrew_write8(cpu->mem, _t86, (uint8_t)cpu->r[23]);
|
|
/* 0238F170 */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 0238F174 */ _t87 = cpu->r[21] + 0x00000098u;
|
|
/* 0238F174 */ rbrew_write32(cpu->mem, _t87, cpu->r[10]);
|
|
/* 0238F178 */ _t88 = cpu->r[21] + 0x000000A0u;
|
|
/* 0238F178 */ rbrew_write32(cpu->mem, _t88, cpu->r[0]);
|
|
L_0238F17C: ; // 0x238f17c
|
|
/* 0238F17C */ _t89 = cpu->r[31] + 0x000000A4u;
|
|
/* 0238F17C */ rbrew_write32(cpu->mem, _t89, cpu->r[23]);
|
|
/* 0238F180 */ cpu->r[4] = cpu->r[31] + 0x000000A4u;
|
|
/* 0238F184 */ cpu->r[3] = cpu->r[27] + 0x000004DCu;
|
|
/* 0238F188 */ _t90 = cpu->r[31] + 0x000000A8u;
|
|
/* 0238F188 */ rbrew_write32(cpu->mem, _t90, cpu->r[23]);
|
|
/* 0238F18C */ Gambit_fn_02801EBC(cpu);
|
|
/* 0238F190 */ _t91 = cpu->r[27] + 0x000004E4u;
|
|
/* 0238F190 */ cpu->r[12] = rbrew_read32(cpu->mem, _t91);
|
|
/* 0238F194 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 0238F198 */ cpu->r[3] = cpu->r[27] + 0x000007C4u;
|
|
/* 0238F19C */ _t92 = cpu->r[27] + 0x000004E4u;
|
|
/* 0238F19C */ rbrew_write32(cpu->mem, _t92, cpu->r[12]);
|
|
/* 0238F1A0 */ Gambit_fn_02837030(cpu);
|
|
/* 0238F1A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0238F1A8 */ _t93 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238F1A8 */ _t94 = _t93 & 0x00000001u;
|
|
/* 0238F1A8 */ if (_t94) goto L_0238F1AC; else goto L_0238F1DC;
|
|
L_0238F1AC: ; // 0x238f1ac
|
|
/* 0238F1AC */ goto L_0238F21C;
|
|
L_0238F1B0: ; // 0x238f1b0
|
|
/* 0238F1B0 */ cpu->r[4] = 0x000000A4u;
|
|
/* 0238F1B4 */ cpu->r[3] = cpu->r[27] + 0x000004DCu;
|
|
/* 0238F1B8 */ cpu->r[31] = 0x00000000u;
|
|
/* 0238F1BC */ Gambit_fn_02801EBC(cpu);
|
|
/* 0238F1C0 */ _t95 = cpu->r[27] + 0x000004E4u;
|
|
/* 0238F1C0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t95);
|
|
/* 0238F1C4 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 0238F1C8 */ cpu->r[3] = cpu->r[27] + 0x000007C4u;
|
|
/* 0238F1CC */ _t96 = cpu->r[27] + 0x000004E4u;
|
|
/* 0238F1CC */ rbrew_write32(cpu->mem, _t96, cpu->r[12]);
|
|
/* 0238F1D0 */ Gambit_fn_02837030(cpu);
|
|
/* 0238F1D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0238F1D8 */ _t97 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238F1D8 */ _t98 = _t97 & 0x00000001u;
|
|
/* 0238F1D8 */ if (_t98) goto L_0238F21C; else goto L_0238F1DC;
|
|
L_0238F1DC: ; // 0x238f1dc
|
|
/* 0238F1DC */ cpu->r[3] = cpu->r[27];
|
|
/* 0238F1E0 */ cpu->r[4] = cpu->r[31];
|
|
/* 0238F1E4 */ Gambit_fn_0238C684(cpu);
|
|
/* 0238F1E8 */ _t99 = cpu->r[28] + 0x00000000u;
|
|
/* 0238F1E8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t99);
|
|
/* 0238F1EC */ _t100 = cpu->r[31] + 0x00000080u;
|
|
/* 0238F1EC */ rbrew_write_f32(cpu->mem, _t100, cpu->f[0]);
|
|
/* 0238F1F0 */ _t101 = cpu->r[28] + 0x00000004u;
|
|
/* 0238F1F0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t101);
|
|
/* 0238F1F4 */ _t102 = cpu->r[31] + 0x00000084u;
|
|
/* 0238F1F4 */ rbrew_write_f32(cpu->mem, _t102, cpu->f[0]);
|
|
/* 0238F1F8 */ _t103 = cpu->r[28] + 0x00000008u;
|
|
/* 0238F1F8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t103);
|
|
/* 0238F1FC */ _t104 = cpu->r[31] + 0x00000088u;
|
|
/* 0238F1FC */ rbrew_write_f32(cpu->mem, _t104, cpu->f[0]);
|
|
/* 0238F200 */ _t105 = cpu->r[29] + 0x00000000u;
|
|
/* 0238F200 */ cpu->r[5] = rbrew_read32(cpu->mem, _t105);
|
|
/* 0238F204 */ _t106 = cpu->r[31] + 0x00000070u;
|
|
/* 0238F204 */ rbrew_write32(cpu->mem, _t106, cpu->r[30]);
|
|
/* 0238F208 */ cpu->r[0] = 0x00000001u;
|
|
/* 0238F20C */ _t107 = cpu->r[31] + 0x0000006Cu;
|
|
/* 0238F20C */ rbrew_write32(cpu->mem, _t107, cpu->r[5]);
|
|
/* 0238F210 */ cpu->r[3] = cpu->r[27];
|
|
/* 0238F214 */ _t108 = cpu->r[31] + 0x0000009Cu;
|
|
/* 0238F214 */ rbrew_write8(cpu->mem, _t108, (uint8_t)cpu->r[0]);
|
|
/* 0238F218 */ Gambit_fn_0238C0E0(cpu);
|
|
L_0238F21C: ; // 0x238f21c
|
|
/* 0238F21C */ /* nop */
|
|
/* 0238F220 */ _t109 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0238F220 */ cpu->r[0] = rbrew_read32(cpu->mem, _t109);
|
|
/* 0238F224 */ cpu->lr = cpu->r[0];
|
|
/* 0238F228 */ cpu->r[1] = cpu->r[1] + 0x00000048u;
|
|
/* 0238F22C */ return;
|
|
}
|
|
|
|
// fn_0238F230 @ 0x238f230
|
|
void Gambit_fn_0238F230(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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_0238F230: ; // 0x238f230
|
|
/* 0238F230 */ _t0 = cpu->r[1] + 0xFFFFFFB8u;
|
|
/* 0238F230 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0238F230 */ cpu->r[1] = _t0;
|
|
/* 0238F234 */ /* nop */
|
|
/* 0238F238 */ cpu->r[0] = cpu->lr;
|
|
/* 0238F23C */ _t1 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0238F23C */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0238F240 */ cpu->r[27] = cpu->r[3];
|
|
/* 0238F244 */ _t2 = cpu->r[27] + 0x00000505u;
|
|
/* 0238F244 */ cpu->r[0] = rbrew_read8(cpu->mem, _t2);
|
|
/* 0238F248 */ cpu->r[26] = cpu->r[4];
|
|
/* 0238F24C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0238F250 */ cpu->r[28] = cpu->r[5];
|
|
/* 0238F254 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238F254 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0238F254 */ if (_t4) goto L_0238F61C; else goto L_0238F258;
|
|
L_0238F258: ; // 0x238f258
|
|
/* 0238F258 */ _t5 = cpu->r[27] + 0x00000504u;
|
|
/* 0238F258 */ cpu->r[0] = rbrew_read8(cpu->mem, _t5);
|
|
/* 0238F25C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0238F260 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238F260 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0238F260 */ if (_t7) goto L_0238F61C; else goto L_0238F264;
|
|
L_0238F264: ; // 0x238f264
|
|
/* 0238F264 */ cpu->r[3] = cpu->r[27] + 0x000007C4u;
|
|
/* 0238F268 */ Gambit_fn_02836FFC(cpu);
|
|
/* 0238F26C */ cpu->r[3] = 0x101C0000u;
|
|
/* 0238F270 */ _t8 = cpu->r[3] + 0x00006000u;
|
|
/* 0238F270 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0238F274 */ _t9 = cpu->r[3] + 0x00000004u;
|
|
/* 0238F274 */ cpu->r[6] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0238F278 */ _t10 = cpu->r[6] + 0x0000012Cu;
|
|
/* 0238F278 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0238F27C */ cpu->ctr = cpu->r[0];
|
|
/* 0238F280 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0238F284 */ _t11 = cpu->r[27] + 0x000004F0u;
|
|
/* 0238F284 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0238F288 */ _t12 = cpu->r[27] + 0x000004E4u;
|
|
/* 0238F288 */ cpu->r[8] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0238F28C */ cpu->r[29] = 0x10110000u;
|
|
/* 0238F290 */ cpu->r[23] = cpu->r[3];
|
|
/* 0238F294 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], cpu->r[0]);
|
|
/* 0238F298 */ cpu->r[25] = 0x00000000u;
|
|
/* 0238F29C */ _t13 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0238F29C */ _t14 = _t13 & 0x00000001u;
|
|
/* 0238F29C */ if (_t14) goto L_0238F2C0; else goto L_0238F2A0;
|
|
L_0238F2A0: ; // 0x238f2a0
|
|
/* 0238F2A0 */ cpu->r[3] = cpu->r[27] + 0x000007C4u;
|
|
/* 0238F2A4 */ cpu->r[30] = 0x00000000u;
|
|
/* 0238F2A8 */ Gambit_fn_02837030(cpu);
|
|
/* 0238F2AC */ /* nop */
|
|
/* 0238F2B0 */ _t15 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0238F2B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0238F2B4 */ cpu->lr = cpu->r[0];
|
|
/* 0238F2B8 */ cpu->r[1] = cpu->r[1] + 0x00000048u;
|
|
/* 0238F2BC */ return;
|
|
L_0238F2C0: ; // 0x238f2c0
|
|
/* 0238F2C0 */ _t16 = cpu->r[27] + 0x000004E8u;
|
|
/* 0238F2C0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0238F2C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0238F2C8 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238F2C8 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0238F2C8 */ if (_t18) goto L_0238F2D4; else goto L_0238F2CC;
|
|
L_0238F2CC: ; // 0x238f2cc
|
|
/* 0238F2CC */ _t19 = cpu->r[30] + 0x00000000u;
|
|
/* 0238F2CC */ cpu->r[10] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0238F2D0 */ _t20 = cpu->r[27] + 0x000004E8u;
|
|
/* 0238F2D0 */ rbrew_write32(cpu->mem, _t20, cpu->r[10]);
|
|
L_0238F2D4: ; // 0x238f2d4
|
|
/* 0238F2D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0238F2D8 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238F2D8 */ _t22 = _t21 & 0x00000001u;
|
|
/* 0238F2D8 */ if (_t22) goto L_0238F498; else goto L_0238F2DC;
|
|
L_0238F2DC: ; // 0x238f2dc
|
|
/* 0238F2DC */ cpu->r[0] = 0x0000000Fu;
|
|
/* 0238F2E0 */ cpu->r[24] = cpu->r[30];
|
|
/* 0238F2E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 0238F2E4 */ _t23 = cpu->r[1] + 0x00000008u;
|
|
/* 0238F2E4 */ rbrew_write32(cpu->mem, _t23, cpu->r[0]);
|
|
/* 0238F2E8 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238F2E8 */ _t25 = _t24 & 0x00000001u;
|
|
/* 0238F2E8 */ if (_t25) goto L_0238F2EC; else goto L_0238F2FC;
|
|
L_0238F2EC: ; // 0x238f2ec
|
|
/* 0238F2EC */ cpu->r[3] = 0x000000A4u;
|
|
/* 0238F2F0 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238F2F4 */ cpu->r[24] = cpu->r[3];
|
|
/* 0238F2F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 0238F2F8 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238F2F8 */ _t27 = _t26 & 0x00000001u;
|
|
/* 0238F2F8 */ if (_t27) goto L_0238F464; else goto L_0238F2FC;
|
|
L_0238F2FC: ; // 0x238f2fc
|
|
/* 0238F2FC */ cpu->r[22] = 0x10080000u;
|
|
/* 0238F300 */ cpu->r[21] = 0x10080000u;
|
|
/* 0238F304 */ cpu->r[19] = 0x10080000u;
|
|
/* 0238F308 */ cpu->r[18] = cpu->r[24];
|
|
/* 0238F308 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[18], 0x00000000u);
|
|
/* 0238F30C */ cpu->r[21] = cpu->r[21] + 0x000062C0u;
|
|
/* 0238F310 */ cpu->r[22] = cpu->r[22] + 0x000062A8u;
|
|
/* 0238F314 */ cpu->r[19] = cpu->r[19] + 0x00006290u;
|
|
/* 0238F318 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238F318 */ _t29 = _t28 & 0x00000001u;
|
|
/* 0238F318 */ if (_t29) goto L_0238F31C; else goto L_0238F32C;
|
|
L_0238F31C: ; // 0x238f31c
|
|
/* 0238F31C */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0238F320 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238F324 */ cpu->r[18] = cpu->r[3];
|
|
/* 0238F324 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[18], 0x00000000u);
|
|
/* 0238F328 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238F328 */ _t31 = _t30 & 0x00000001u;
|
|
/* 0238F328 */ if (_t31) goto L_0238F3A0; else goto L_0238F32C;
|
|
L_0238F32C: ; // 0x238f32c
|
|
/* 0238F32C */ cpu->r[20] = cpu->r[18];
|
|
/* 0238F32C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[20], 0x00000000u);
|
|
/* 0238F330 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238F330 */ _t33 = _t32 & 0x00000001u;
|
|
/* 0238F330 */ if (_t33) goto L_0238F334; else goto L_0238F344;
|
|
L_0238F334: ; // 0x238f334
|
|
/* 0238F334 */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0238F338 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238F33C */ cpu->r[20] = cpu->r[3];
|
|
/* 0238F33C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[20], 0x00000000u);
|
|
/* 0238F340 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238F340 */ _t35 = _t34 & 0x00000001u;
|
|
/* 0238F340 */ if (_t35) goto L_0238F39C; else goto L_0238F344;
|
|
L_0238F344: ; // 0x238f344
|
|
/* 0238F344 */ cpu->r[3] = cpu->r[20];
|
|
/* 0238F344 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238F348 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238F348 */ _t37 = _t36 & 0x00000001u;
|
|
/* 0238F348 */ if (_t37) goto L_0238F34C; else goto L_0238F374;
|
|
L_0238F34C: ; // 0x238f34c
|
|
/* 0238F34C */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0238F350 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238F354 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238F358 */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238F358 */ _t39 = _t38 & 0x00000001u;
|
|
/* 0238F358 */ if (_t39) goto L_0238F35C; else goto L_0238F374;
|
|
L_0238F35C: ; // 0x238f35c
|
|
/* 0238F35C */ _t40 = cpu->r[20] + 0x00000000u;
|
|
/* 0238F35C */ cpu->r[6] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0238F360 */ _t41 = cpu->r[29] + 0x00007399u;
|
|
/* 0238F360 */ cpu->r[31] = rbrew_read8(cpu->mem, _t41);
|
|
/* 0238F364 */ _t42 = cpu->r[20] + 0x00000004u;
|
|
/* 0238F364 */ rbrew_write32(cpu->mem, _t42, cpu->r[22]);
|
|
/* 0238F368 */ _t43 = cpu->r[6] + 0x00000000u;
|
|
/* 0238F368 */ rbrew_write8(cpu->mem, _t43, (uint8_t)cpu->r[31]);
|
|
/* 0238F36C */ _t44 = cpu->r[18] + 0x00000004u;
|
|
/* 0238F36C */ rbrew_write32(cpu->mem, _t44, cpu->r[21]);
|
|
/* 0238F370 */ goto L_0238F3A0;
|
|
L_0238F374: ; // 0x238f374
|
|
/* 0238F374 */ cpu->r[12] = cpu->r[20] + 0x0000000Cu;
|
|
/* 0238F378 */ _t45 = cpu->r[3] + 0x00000004u;
|
|
/* 0238F378 */ rbrew_write32(cpu->mem, _t45, cpu->r[19]);
|
|
/* 0238F37C */ cpu->r[0] = 0x00000020u;
|
|
/* 0238F380 */ _t46 = cpu->r[3] + 0x00000000u;
|
|
/* 0238F380 */ rbrew_write32(cpu->mem, _t46, cpu->r[12]);
|
|
/* 0238F384 */ _t47 = cpu->r[3] + 0x00000008u;
|
|
/* 0238F384 */ rbrew_write32(cpu->mem, _t47, cpu->r[0]);
|
|
/* 0238F388 */ _t48 = cpu->r[29] + 0x00007399u;
|
|
/* 0238F388 */ cpu->r[31] = rbrew_read8(cpu->mem, _t48);
|
|
/* 0238F38C */ _t49 = cpu->r[20] + 0x00000004u;
|
|
/* 0238F38C */ rbrew_write32(cpu->mem, _t49, cpu->r[22]);
|
|
/* 0238F390 */ _t50 = cpu->r[20] + 0x00000000u;
|
|
/* 0238F390 */ cpu->r[6] = rbrew_read32(cpu->mem, _t50);
|
|
/* 0238F394 */ _t51 = cpu->r[20] + 0x0000002Bu;
|
|
/* 0238F394 */ rbrew_write8(cpu->mem, _t51, (uint8_t)cpu->r[31]);
|
|
/* 0238F398 */ _t52 = cpu->r[6] + 0x00000000u;
|
|
/* 0238F398 */ rbrew_write8(cpu->mem, _t52, (uint8_t)cpu->r[31]);
|
|
L_0238F39C: ; // 0x238f39c
|
|
/* 0238F39C */ _t53 = cpu->r[18] + 0x00000004u;
|
|
/* 0238F39C */ rbrew_write32(cpu->mem, _t53, cpu->r[21]);
|
|
L_0238F3A0: ; // 0x238f3a0
|
|
/* 0238F3A0 */ cpu->r[18] = cpu->r[24] + 0x0000002Cu;
|
|
/* 0238F3A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[18], 0x00000000u);
|
|
/* 0238F3A4 */ _t54 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238F3A4 */ _t55 = _t54 & 0x00000001u;
|
|
/* 0238F3A4 */ if (_t55) goto L_0238F3A8; else goto L_0238F3B8;
|
|
L_0238F3A8: ; // 0x238f3a8
|
|
/* 0238F3A8 */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0238F3AC */ Gambit_fn_02801A78(cpu);
|
|
/* 0238F3B0 */ cpu->r[18] = cpu->r[3];
|
|
/* 0238F3B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[18], 0x00000000u);
|
|
/* 0238F3B4 */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238F3B4 */ _t57 = _t56 & 0x00000001u;
|
|
/* 0238F3B4 */ if (_t57) goto L_0238F42C; else goto L_0238F3B8;
|
|
L_0238F3B8: ; // 0x238f3b8
|
|
/* 0238F3B8 */ cpu->r[20] = cpu->r[18];
|
|
/* 0238F3B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[20], 0x00000000u);
|
|
/* 0238F3BC */ _t58 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238F3BC */ _t59 = _t58 & 0x00000001u;
|
|
/* 0238F3BC */ if (_t59) goto L_0238F3C0; else goto L_0238F3D0;
|
|
L_0238F3C0: ; // 0x238f3c0
|
|
/* 0238F3C0 */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0238F3C4 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238F3C8 */ cpu->r[20] = cpu->r[3];
|
|
/* 0238F3C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[20], 0x00000000u);
|
|
/* 0238F3CC */ _t60 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238F3CC */ _t61 = _t60 & 0x00000001u;
|
|
/* 0238F3CC */ if (_t61) goto L_0238F428; else goto L_0238F3D0;
|
|
L_0238F3D0: ; // 0x238f3d0
|
|
/* 0238F3D0 */ cpu->r[3] = cpu->r[20];
|
|
/* 0238F3D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238F3D4 */ _t62 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238F3D4 */ _t63 = _t62 & 0x00000001u;
|
|
/* 0238F3D4 */ if (_t63) goto L_0238F3D8; else goto L_0238F400;
|
|
L_0238F3D8: ; // 0x238f3d8
|
|
/* 0238F3D8 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0238F3DC */ Gambit_fn_02801A78(cpu);
|
|
/* 0238F3E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238F3E4 */ _t64 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238F3E4 */ _t65 = _t64 & 0x00000001u;
|
|
/* 0238F3E4 */ if (_t65) goto L_0238F3E8; else goto L_0238F400;
|
|
L_0238F3E8: ; // 0x238f3e8
|
|
/* 0238F3E8 */ _t66 = cpu->r[20] + 0x00000000u;
|
|
/* 0238F3E8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t66);
|
|
/* 0238F3EC */ _t67 = cpu->r[29] + 0x00007399u;
|
|
/* 0238F3EC */ cpu->r[31] = rbrew_read8(cpu->mem, _t67);
|
|
/* 0238F3F0 */ _t68 = cpu->r[20] + 0x00000004u;
|
|
/* 0238F3F0 */ rbrew_write32(cpu->mem, _t68, cpu->r[22]);
|
|
/* 0238F3F4 */ _t69 = cpu->r[9] + 0x00000000u;
|
|
/* 0238F3F4 */ rbrew_write8(cpu->mem, _t69, (uint8_t)cpu->r[31]);
|
|
/* 0238F3F8 */ _t70 = cpu->r[18] + 0x00000004u;
|
|
/* 0238F3F8 */ rbrew_write32(cpu->mem, _t70, cpu->r[21]);
|
|
/* 0238F3FC */ goto L_0238F42C;
|
|
L_0238F400: ; // 0x238f400
|
|
/* 0238F400 */ cpu->r[0] = cpu->r[20] + 0x0000000Cu;
|
|
/* 0238F404 */ _t71 = cpu->r[3] + 0x00000004u;
|
|
/* 0238F404 */ rbrew_write32(cpu->mem, _t71, cpu->r[19]);
|
|
/* 0238F408 */ cpu->r[8] = 0x00000020u;
|
|
/* 0238F40C */ _t72 = cpu->r[3] + 0x00000000u;
|
|
/* 0238F40C */ rbrew_write32(cpu->mem, _t72, cpu->r[0]);
|
|
/* 0238F410 */ _t73 = cpu->r[3] + 0x00000008u;
|
|
/* 0238F410 */ rbrew_write32(cpu->mem, _t73, cpu->r[8]);
|
|
/* 0238F414 */ _t74 = cpu->r[29] + 0x00007399u;
|
|
/* 0238F414 */ cpu->r[31] = rbrew_read8(cpu->mem, _t74);
|
|
/* 0238F418 */ _t75 = cpu->r[20] + 0x00000004u;
|
|
/* 0238F418 */ rbrew_write32(cpu->mem, _t75, cpu->r[22]);
|
|
/* 0238F41C */ _t76 = cpu->r[20] + 0x00000000u;
|
|
/* 0238F41C */ cpu->r[9] = rbrew_read32(cpu->mem, _t76);
|
|
/* 0238F420 */ _t77 = cpu->r[20] + 0x0000002Bu;
|
|
/* 0238F420 */ rbrew_write8(cpu->mem, _t77, (uint8_t)cpu->r[31]);
|
|
/* 0238F424 */ _t78 = cpu->r[9] + 0x00000000u;
|
|
/* 0238F424 */ rbrew_write8(cpu->mem, _t78, (uint8_t)cpu->r[31]);
|
|
L_0238F428: ; // 0x238f428
|
|
/* 0238F428 */ _t79 = cpu->r[18] + 0x00000004u;
|
|
/* 0238F428 */ rbrew_write32(cpu->mem, _t79, cpu->r[21]);
|
|
L_0238F42C: ; // 0x238f42c
|
|
/* 0238F42C */ cpu->r[10] = cpu->r[24] + 0x00000080u;
|
|
/* 0238F42C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0238F430 */ _t80 = cpu->r[24] + 0x00000058u;
|
|
/* 0238F430 */ rbrew_write32(cpu->mem, _t80, cpu->r[23]);
|
|
/* 0238F434 */ _t81 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238F434 */ _t82 = _t81 & 0x00000001u;
|
|
/* 0238F434 */ if (_t82) goto L_0238F438; else goto L_0238F440;
|
|
L_0238F438: ; // 0x238f438
|
|
/* 0238F438 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0238F43C */ Gambit_fn_02801A78(cpu);
|
|
L_0238F440: ; // 0x238f440
|
|
/* 0238F440 */ cpu->r[0] = cpu->r[24] + 0x0000008Cu;
|
|
/* 0238F440 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0238F444 */ _t83 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238F444 */ _t84 = _t83 & 0x00000001u;
|
|
/* 0238F444 */ if (_t84) goto L_0238F448; else goto L_0238F450;
|
|
L_0238F448: ; // 0x238f448
|
|
/* 0238F448 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0238F44C */ Gambit_fn_02801A78(cpu);
|
|
L_0238F450: ; // 0x238f450
|
|
/* 0238F450 */ _t85 = cpu->r[1] + 0x00000008u;
|
|
/* 0238F450 */ cpu->r[12] = rbrew_read32(cpu->mem, _t85);
|
|
/* 0238F454 */ _t86 = cpu->r[24] + 0x0000009Cu;
|
|
/* 0238F454 */ rbrew_write8(cpu->mem, _t86, (uint8_t)cpu->r[25]);
|
|
/* 0238F458 */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 0238F45C */ _t87 = cpu->r[24] + 0x00000098u;
|
|
/* 0238F45C */ rbrew_write32(cpu->mem, _t87, cpu->r[12]);
|
|
/* 0238F460 */ _t88 = cpu->r[24] + 0x000000A0u;
|
|
/* 0238F460 */ rbrew_write32(cpu->mem, _t88, cpu->r[0]);
|
|
L_0238F464: ; // 0x238f464
|
|
/* 0238F464 */ _t89 = cpu->r[30] + 0x000000A4u;
|
|
/* 0238F464 */ rbrew_write32(cpu->mem, _t89, cpu->r[25]);
|
|
/* 0238F468 */ cpu->r[4] = cpu->r[30] + 0x000000A4u;
|
|
/* 0238F46C */ cpu->r[3] = cpu->r[27] + 0x000004DCu;
|
|
/* 0238F470 */ _t90 = cpu->r[30] + 0x000000A8u;
|
|
/* 0238F470 */ rbrew_write32(cpu->mem, _t90, cpu->r[25]);
|
|
/* 0238F474 */ Gambit_fn_02801EBC(cpu);
|
|
/* 0238F478 */ _t91 = cpu->r[27] + 0x000004E4u;
|
|
/* 0238F478 */ cpu->r[5] = rbrew_read32(cpu->mem, _t91);
|
|
/* 0238F47C */ cpu->r[5] = cpu->r[5] + 0x00000001u;
|
|
/* 0238F480 */ cpu->r[3] = cpu->r[27] + 0x000007C4u;
|
|
/* 0238F484 */ _t92 = cpu->r[27] + 0x000004E4u;
|
|
/* 0238F484 */ rbrew_write32(cpu->mem, _t92, cpu->r[5]);
|
|
/* 0238F488 */ Gambit_fn_02837030(cpu);
|
|
/* 0238F48C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0238F490 */ _t93 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238F490 */ _t94 = _t93 & 0x00000001u;
|
|
/* 0238F490 */ if (_t94) goto L_0238F494; else goto L_0238F4C4;
|
|
L_0238F494: ; // 0x238f494
|
|
/* 0238F494 */ goto L_0238F61C;
|
|
L_0238F498: ; // 0x238f498
|
|
/* 0238F498 */ cpu->r[4] = 0x000000A4u;
|
|
/* 0238F49C */ cpu->r[3] = cpu->r[27] + 0x000004DCu;
|
|
/* 0238F4A0 */ cpu->r[30] = 0x00000000u;
|
|
/* 0238F4A4 */ Gambit_fn_02801EBC(cpu);
|
|
/* 0238F4A8 */ _t95 = cpu->r[27] + 0x000004E4u;
|
|
/* 0238F4A8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t95);
|
|
/* 0238F4AC */ cpu->r[5] = cpu->r[5] + 0x00000001u;
|
|
/* 0238F4B0 */ cpu->r[3] = cpu->r[27] + 0x000007C4u;
|
|
/* 0238F4B4 */ _t96 = cpu->r[27] + 0x000004E4u;
|
|
/* 0238F4B4 */ rbrew_write32(cpu->mem, _t96, cpu->r[5]);
|
|
/* 0238F4B8 */ Gambit_fn_02837030(cpu);
|
|
/* 0238F4BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0238F4C0 */ _t97 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238F4C0 */ _t98 = _t97 & 0x00000001u;
|
|
/* 0238F4C0 */ if (_t98) goto L_0238F61C; else goto L_0238F4C4;
|
|
L_0238F4C4: ; // 0x238f4c4
|
|
/* 0238F4C4 */ cpu->r[3] = cpu->r[27];
|
|
/* 0238F4C8 */ cpu->r[4] = cpu->r[30];
|
|
/* 0238F4CC */ Gambit_fn_0238C684(cpu);
|
|
/* 0238F4D0 */ _t99 = cpu->r[26] + 0x00000004u;
|
|
/* 0238F4D0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t99);
|
|
/* 0238F4D4 */ _t100 = cpu->r[6] + 0x00000014u;
|
|
/* 0238F4D4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t100);
|
|
/* 0238F4D8 */ cpu->ctr = cpu->r[7];
|
|
/* 0238F4DC */ _t101 = cpu->r[30] + 0x00000000u;
|
|
/* 0238F4DC */ cpu->r[25] = rbrew_read32(cpu->mem, _t101);
|
|
/* 0238F4E0 */ cpu->r[3] = cpu->r[26];
|
|
/* 0238F4E4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0238F4E8 */ _t102 = cpu->r[26] + 0x00000000u;
|
|
/* 0238F4E8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t102);
|
|
/* 0238F4EC */ _t103 = cpu->r[29] + 0x00007399u;
|
|
/* 0238F4EC */ cpu->r[31] = rbrew_read8(cpu->mem, _t103);
|
|
/* 0238F4F0 */ _t104 = cpu->r[12] + 0x00000000u;
|
|
/* 0238F4F0 */ cpu->r[8] = rbrew_read8(cpu->mem, _t104);
|
|
/* 0238F4F4 */ cpu->r[10] = 0x00080000u;
|
|
/* 0238F4F8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[31]);
|
|
/* 0238F4FC */ cpu->r[29] = 0x00000000u;
|
|
/* 0238F500 */ _t105 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238F500 */ _t106 = _t105 & 0x00000001u;
|
|
/* 0238F500 */ if (_t106) goto L_0238F534; else goto L_0238F504;
|
|
L_0238F504: ; // 0x238f504
|
|
/* 0238F504 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 0238F508 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[10]);
|
|
/* 0238F50C */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 0238F510 */ _t107 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0238F510 */ _t108 = _t107 & 0x00000001u;
|
|
/* 0238F510 */ if (_t108) goto L_0238F530; else goto L_0238F514;
|
|
L_0238F514: ; // 0x238f514
|
|
/* 0238F514 */ _t109 = cpu->r[12] + 0x00000000u;
|
|
/* 0238F514 */ cpu->r[0] = rbrew_read8(cpu->mem, _t109);
|
|
/* 0238F518 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 0238F51C */ _t110 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238F51C */ _t111 = _t110 & 0x00000001u;
|
|
/* 0238F51C */ if (_t111) goto L_0238F520; else goto L_0238F504;
|
|
L_0238F520: ; // 0x238f520
|
|
/* 0238F520 */ _t112 = cpu->r[30] + 0x00000008u;
|
|
/* 0238F520 */ cpu->r[11] = rbrew_read32(cpu->mem, _t112);
|
|
/* 0238F524 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[11]);
|
|
/* 0238F528 */ _t113 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0238F528 */ _t114 = _t113 & 0x00000001u;
|
|
/* 0238F528 */ if (_t114) goto L_0238F544; else goto L_0238F52C;
|
|
L_0238F52C: ; // 0x238f52c
|
|
/* 0238F52C */ goto L_0238F540;
|
|
L_0238F530: ; // 0x238f530
|
|
/* 0238F530 */ cpu->r[29] = 0x00000000u;
|
|
L_0238F534: ; // 0x238f534
|
|
/* 0238F534 */ _t115 = cpu->r[30] + 0x00000008u;
|
|
/* 0238F534 */ cpu->r[11] = rbrew_read32(cpu->mem, _t115);
|
|
/* 0238F538 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[11]);
|
|
/* 0238F53C */ _t116 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0238F53C */ _t117 = _t116 & 0x00000001u;
|
|
/* 0238F53C */ if (_t117) goto L_0238F544; else goto L_0238F540;
|
|
L_0238F540: ; // 0x238f540
|
|
/* 0238F540 */ cpu->r[29] = cpu->r[11] + 0xFFFFFFFFu;
|
|
L_0238F544: ; // 0x238f544
|
|
/* 0238F544 */ _t118 = cpu->r[26] + 0x00000004u;
|
|
/* 0238F544 */ cpu->r[10] = rbrew_read32(cpu->mem, _t118);
|
|
/* 0238F548 */ _t119 = cpu->r[10] + 0x00000014u;
|
|
/* 0238F548 */ cpu->r[11] = rbrew_read32(cpu->mem, _t119);
|
|
/* 0238F54C */ cpu->ctr = cpu->r[11];
|
|
/* 0238F550 */ cpu->r[3] = cpu->r[26];
|
|
/* 0238F554 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0238F558 */ _t120 = cpu->r[26] + 0x00000000u;
|
|
/* 0238F558 */ cpu->r[4] = rbrew_read32(cpu->mem, _t120);
|
|
/* 0238F55C */ cpu->r[6] = 0x00000000u;
|
|
/* 0238F560 */ cpu->r[5] = cpu->r[29];
|
|
/* 0238F564 */ cpu->r[3] = cpu->r[25];
|
|
/* 0238F568 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0238F56C */ _t121 = cpu->r[25] + cpu->r[29];
|
|
/* 0238F56C */ rbrew_write8(cpu->mem, _t121, (uint8_t)cpu->r[31]);
|
|
/* 0238F570 */ _t122 = cpu->r[28] + 0x00000004u;
|
|
/* 0238F570 */ cpu->r[12] = rbrew_read32(cpu->mem, _t122);
|
|
/* 0238F574 */ _t123 = cpu->r[12] + 0x00000014u;
|
|
/* 0238F574 */ cpu->r[0] = rbrew_read32(cpu->mem, _t123);
|
|
/* 0238F578 */ cpu->ctr = cpu->r[0];
|
|
/* 0238F57C */ _t124 = cpu->r[30] + 0x0000002Cu;
|
|
/* 0238F57C */ cpu->r[26] = rbrew_read32(cpu->mem, _t124);
|
|
/* 0238F580 */ cpu->r[3] = cpu->r[28];
|
|
/* 0238F584 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0238F588 */ _t125 = cpu->r[28] + 0x00000000u;
|
|
/* 0238F588 */ cpu->r[10] = rbrew_read32(cpu->mem, _t125);
|
|
/* 0238F58C */ _t126 = cpu->r[10] + 0x00000000u;
|
|
/* 0238F58C */ cpu->r[5] = rbrew_read8(cpu->mem, _t126);
|
|
/* 0238F590 */ cpu->r[0] = 0x00080000u;
|
|
/* 0238F594 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[31]);
|
|
/* 0238F598 */ cpu->r[29] = 0x00000000u;
|
|
/* 0238F59C */ _t127 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238F59C */ _t128 = _t127 & 0x00000001u;
|
|
/* 0238F59C */ if (_t128) goto L_0238F5D0; else goto L_0238F5A0;
|
|
L_0238F5A0: ; // 0x238f5a0
|
|
/* 0238F5A0 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 0238F5A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[0]);
|
|
/* 0238F5A8 */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 0238F5AC */ _t129 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0238F5AC */ _t130 = _t129 & 0x00000001u;
|
|
/* 0238F5AC */ if (_t130) goto L_0238F5CC; else goto L_0238F5B0;
|
|
L_0238F5B0: ; // 0x238f5b0
|
|
/* 0238F5B0 */ _t131 = cpu->r[10] + 0x00000000u;
|
|
/* 0238F5B0 */ cpu->r[6] = rbrew_read8(cpu->mem, _t131);
|
|
/* 0238F5B4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[31]);
|
|
/* 0238F5B8 */ _t132 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238F5B8 */ _t133 = _t132 & 0x00000001u;
|
|
/* 0238F5B8 */ if (_t133) goto L_0238F5BC; else goto L_0238F5A0;
|
|
L_0238F5BC: ; // 0x238f5bc
|
|
/* 0238F5BC */ _t134 = cpu->r[30] + 0x00000034u;
|
|
/* 0238F5BC */ cpu->r[12] = rbrew_read32(cpu->mem, _t134);
|
|
/* 0238F5C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[12]);
|
|
/* 0238F5C4 */ _t135 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0238F5C4 */ _t136 = _t135 & 0x00000001u;
|
|
/* 0238F5C4 */ if (_t136) goto L_0238F5E0; else goto L_0238F5C8;
|
|
L_0238F5C8: ; // 0x238f5c8
|
|
/* 0238F5C8 */ goto L_0238F5DC;
|
|
L_0238F5CC: ; // 0x238f5cc
|
|
/* 0238F5CC */ cpu->r[29] = 0x00000000u;
|
|
L_0238F5D0: ; // 0x238f5d0
|
|
/* 0238F5D0 */ _t137 = cpu->r[30] + 0x00000034u;
|
|
/* 0238F5D0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t137);
|
|
/* 0238F5D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[12]);
|
|
/* 0238F5D8 */ _t138 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0238F5D8 */ _t139 = _t138 & 0x00000001u;
|
|
/* 0238F5D8 */ if (_t139) goto L_0238F5E0; else goto L_0238F5DC;
|
|
L_0238F5DC: ; // 0x238f5dc
|
|
/* 0238F5DC */ cpu->r[29] = cpu->r[12] + 0xFFFFFFFFu;
|
|
L_0238F5E0: ; // 0x238f5e0
|
|
/* 0238F5E0 */ _t140 = cpu->r[28] + 0x00000004u;
|
|
/* 0238F5E0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t140);
|
|
/* 0238F5E4 */ _t141 = cpu->r[7] + 0x00000014u;
|
|
/* 0238F5E4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t141);
|
|
/* 0238F5E8 */ cpu->ctr = cpu->r[8];
|
|
/* 0238F5EC */ cpu->r[3] = cpu->r[28];
|
|
/* 0238F5F0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0238F5F4 */ _t142 = cpu->r[28] + 0x00000000u;
|
|
/* 0238F5F4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t142);
|
|
/* 0238F5F8 */ cpu->r[6] = 0x00000000u;
|
|
/* 0238F5FC */ cpu->r[5] = cpu->r[29];
|
|
/* 0238F600 */ cpu->r[3] = cpu->r[26];
|
|
/* 0238F604 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0238F608 */ _t143 = cpu->r[26] + cpu->r[29];
|
|
/* 0238F608 */ rbrew_write8(cpu->mem, _t143, (uint8_t)cpu->r[31]);
|
|
/* 0238F60C */ cpu->r[9] = 0x00000001u;
|
|
/* 0238F610 */ cpu->r[3] = cpu->r[27];
|
|
/* 0238F614 */ _t144 = cpu->r[30] + 0x0000009Cu;
|
|
/* 0238F614 */ rbrew_write8(cpu->mem, _t144, (uint8_t)cpu->r[9]);
|
|
/* 0238F618 */ Gambit_fn_0238C0E0(cpu);
|
|
L_0238F61C: ; // 0x238f61c
|
|
/* 0238F61C */ /* nop */
|
|
/* 0238F620 */ _t145 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0238F620 */ cpu->r[0] = rbrew_read32(cpu->mem, _t145);
|
|
/* 0238F624 */ cpu->lr = cpu->r[0];
|
|
/* 0238F628 */ cpu->r[1] = cpu->r[1] + 0x00000048u;
|
|
/* 0238F62C */ return;
|
|
}
|
|
|
|
// fn_0238F630 @ 0x238f630
|
|
void Gambit_fn_0238F630(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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_0238F630: ; // 0x238f630
|
|
/* 0238F630 */ _t0 = cpu->r[1] + 0xFFFFFF78u;
|
|
/* 0238F630 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0238F630 */ cpu->r[1] = _t0;
|
|
/* 0238F634 */ /* nop */
|
|
/* 0238F638 */ cpu->r[0] = cpu->lr;
|
|
/* 0238F63C */ _t1 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0238F63C */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0238F640 */ cpu->r[28] = cpu->r[3];
|
|
/* 0238F644 */ _t2 = cpu->r[28] + 0x00000724u;
|
|
/* 0238F644 */ cpu->r[12] = rbrew_read16(cpu->mem, _t2);
|
|
/* 0238F648 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0238F64C */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238F64C */ _t4 = _t3 & 0x00000001u;
|
|
/* 0238F64C */ if (_t4) goto L_0238F66C; else goto L_0238F650;
|
|
L_0238F650: ; // 0x238f650
|
|
/* 0238F650 */ cpu->r[7] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 0238F654 */ _t5 = cpu->r[28] + 0x00000724u;
|
|
/* 0238F654 */ rbrew_write16(cpu->mem, _t5, (uint16_t)cpu->r[7]);
|
|
/* 0238F658 */ /* nop */
|
|
/* 0238F65C */ _t6 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0238F65C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0238F660 */ cpu->lr = cpu->r[0];
|
|
/* 0238F664 */ cpu->r[1] = cpu->r[1] + 0x00000088u;
|
|
/* 0238F668 */ return;
|
|
L_0238F66C: ; // 0x238f66c
|
|
/* 0238F66C */ cpu->r[27] = 0x101D0000u;
|
|
/* 0238F670 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0238F674 */ _t7 = cpu->r[27] + 0xFFFF93ECu;
|
|
/* 0238F674 */ cpu->r[27] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0238F678 */ _t8 = cpu->r[12] + 0x00001344u;
|
|
/* 0238F678 */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0238F67C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0238F680 */ _t9 = cpu->r[12] + 0x00000050u;
|
|
/* 0238F680 */ cpu->r[26] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0238F684 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238F684 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0238F684 */ if (_t11) goto L_0238FB7C; else goto L_0238F688;
|
|
L_0238F688: ; // 0x238f688
|
|
/* 0238F688 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 0238F68C */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238F68C */ _t13 = _t12 & 0x00000001u;
|
|
/* 0238F68C */ if (_t13) goto L_0238FB7C; else goto L_0238F690;
|
|
L_0238F690: ; // 0x238f690
|
|
/* 0238F690 */ _t14 = cpu->r[27] + 0x000002F1u;
|
|
/* 0238F690 */ cpu->r[10] = rbrew_read8(cpu->mem, _t14);
|
|
/* 0238F694 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0238F698 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238F698 */ _t16 = _t15 & 0x00000001u;
|
|
/* 0238F698 */ if (_t16) goto L_0238F69C; else goto L_0238F6A8;
|
|
L_0238F69C: ; // 0x238f69c
|
|
/* 0238F69C */ _t17 = cpu->r[28] + 0x00000726u;
|
|
/* 0238F69C */ cpu->r[11] = rbrew_read8(cpu->mem, _t17);
|
|
/* 0238F6A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0238F6A4 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238F6A4 */ _t19 = _t18 & 0x00000001u;
|
|
/* 0238F6A4 */ if (_t19) goto L_0238F6A8; else goto L_0238FB7C;
|
|
L_0238F6A8: ; // 0x238f6a8
|
|
/* 0238F6A8 */ cpu->r[12] = 0x00000001u;
|
|
/* 0238F6AC */ cpu->r[31] = 0x10110000u;
|
|
/* 0238F6B0 */ cpu->r[0] = cpu->r[1] + 0x00000024u;
|
|
/* 0238F6B4 */ _t20 = cpu->r[28] + 0x00000726u;
|
|
/* 0238F6B4 */ rbrew_write8(cpu->mem, _t20, (uint8_t)cpu->r[12]);
|
|
/* 0238F6B8 */ _t21 = cpu->r[31] + 0x00007399u;
|
|
/* 0238F6B8 */ cpu->r[31] = rbrew_read8(cpu->mem, _t21);
|
|
/* 0238F6BC */ cpu->r[7] = 0x10080000u;
|
|
/* 0238F6C0 */ _t22 = cpu->r[1] + 0x00000018u;
|
|
/* 0238F6C0 */ rbrew_write32(cpu->mem, _t22, cpu->r[0]);
|
|
/* 0238F6C4 */ cpu->r[7] = cpu->r[7] + 0x000062F0u;
|
|
/* 0238F6C8 */ _t23 = cpu->r[1] + 0x00000024u;
|
|
/* 0238F6C8 */ rbrew_write8(cpu->mem, _t23, (uint8_t)cpu->r[31]);
|
|
/* 0238F6CC */ cpu->r[6] = 0x00000040u;
|
|
/* 0238F6D0 */ _t24 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0238F6D0 */ rbrew_write32(cpu->mem, _t24, cpu->r[7]);
|
|
/* 0238F6D4 */ _t25 = cpu->r[1] + 0x00000020u;
|
|
/* 0238F6D4 */ rbrew_write32(cpu->mem, _t25, cpu->r[6]);
|
|
/* 0238F6D8 */ _t26 = cpu->r[1] + 0x00000063u;
|
|
/* 0238F6D8 */ rbrew_write8(cpu->mem, _t26, (uint8_t)cpu->r[31]);
|
|
/* 0238F6DC */ _t27 = cpu->r[27] + 0x000002F8u;
|
|
/* 0238F6DC */ cpu->r[8] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0238F6E0 */ _t28 = cpu->r[8] + 0x00000014u;
|
|
/* 0238F6E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0238F6E4 */ cpu->r[25] = 0x10080000u;
|
|
/* 0238F6E8 */ cpu->ctr = cpu->r[0];
|
|
/* 0238F6EC */ cpu->r[25] = cpu->r[25] + 0x00006260u;
|
|
/* 0238F6F0 */ cpu->r[3] = cpu->r[27] + 0x000002F4u;
|
|
/* 0238F6F4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0238F6F8 */ _t29 = cpu->r[27] + 0x000002F4u;
|
|
/* 0238F6F8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0238F6FC */ _t30 = cpu->r[7] + 0x00000000u;
|
|
/* 0238F6FC */ cpu->r[0] = rbrew_read8(cpu->mem, _t30);
|
|
/* 0238F700 */ cpu->r[5] = 0x00000000u;
|
|
/* 0238F704 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 0238F708 */ cpu->r[9] = 0x00080000u;
|
|
/* 0238F70C */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238F70C */ _t32 = _t31 & 0x00000001u;
|
|
/* 0238F70C */ if (_t32) goto L_0238F72C; else goto L_0238F710;
|
|
L_0238F710: ; // 0x238f710
|
|
/* 0238F710 */ cpu->r[5] = cpu->r[5] + 0x00000001u;
|
|
/* 0238F714 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], cpu->r[9]);
|
|
/* 0238F718 */ cpu->r[7] = cpu->r[7] + 0x00000001u;
|
|
/* 0238F71C */ _t33 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0238F71C */ _t34 = _t33 & 0x00000001u;
|
|
/* 0238F71C */ if (_t34) goto L_0238F734; else goto L_0238F720;
|
|
L_0238F720: ; // 0x238f720
|
|
/* 0238F720 */ _t35 = cpu->r[7] + 0x00000000u;
|
|
/* 0238F720 */ cpu->r[6] = rbrew_read8(cpu->mem, _t35);
|
|
/* 0238F724 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[31]);
|
|
/* 0238F728 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238F728 */ _t37 = _t36 & 0x00000001u;
|
|
/* 0238F728 */ if (_t37) goto L_0238F72C; else goto L_0238F710;
|
|
L_0238F72C: ; // 0x238f72c
|
|
/* 0238F72C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 0238F730 */ _t38 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0238F730 */ _t39 = _t38 & 0x00000001u;
|
|
/* 0238F730 */ if (_t39) goto L_0238F844; else goto L_0238F734;
|
|
L_0238F734: ; // 0x238f734
|
|
/* 0238F734 */ cpu->r[3] = 0x101D0000u;
|
|
/* 0238F738 */ _t40 = cpu->r[1] + 0x00000014u;
|
|
/* 0238F738 */ rbrew_write32(cpu->mem, _t40, cpu->r[25]);
|
|
/* 0238F73C */ cpu->r[8] = 0x10080000u;
|
|
/* 0238F740 */ cpu->r[5] = 0x00000001u;
|
|
/* 0238F744 */ _t41 = cpu->r[3] + 0xFFFF9884u;
|
|
/* 0238F744 */ cpu->r[3] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0238F748 */ cpu->r[8] = cpu->r[8] + 0x000063B8u;
|
|
/* 0238F74C */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 0238F750 */ _t42 = cpu->r[1] + 0x00000010u;
|
|
/* 0238F750 */ rbrew_write32(cpu->mem, _t42, cpu->r[8]);
|
|
/* 0238F754 */ Gambit_fn_02809408(cpu);
|
|
/* 0238F758 */ cpu->r[30] = cpu->r[3];
|
|
/* 0238F758 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0238F75C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0238F760 */ _t43 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238F760 */ _t44 = _t43 & 0x00000001u;
|
|
/* 0238F760 */ if (_t44) goto L_0238FB7C; else goto L_0238F764;
|
|
L_0238F764: ; // 0x238f764
|
|
/* 0238F764 */ _t45 = cpu->r[30] + 0x00000004u;
|
|
/* 0238F764 */ cpu->r[9] = rbrew_read32(cpu->mem, _t45);
|
|
/* 0238F768 */ _t46 = cpu->r[9] + 0x00000014u;
|
|
/* 0238F768 */ cpu->r[10] = rbrew_read32(cpu->mem, _t46);
|
|
/* 0238F76C */ cpu->ctr = cpu->r[10];
|
|
/* 0238F770 */ cpu->r[3] = cpu->r[30];
|
|
/* 0238F774 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0238F778 */ _t47 = cpu->r[30] + 0x00000000u;
|
|
/* 0238F778 */ cpu->r[11] = rbrew_read32(cpu->mem, _t47);
|
|
/* 0238F77C */ _t48 = cpu->r[11] + 0x00000000u;
|
|
/* 0238F77C */ cpu->r[0] = rbrew_read8(cpu->mem, _t48);
|
|
/* 0238F780 */ cpu->r[10] = 0x00000000u;
|
|
/* 0238F784 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 0238F788 */ cpu->r[0] = 0x00080000u;
|
|
/* 0238F78C */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238F78C */ _t50 = _t49 & 0x00000001u;
|
|
/* 0238F78C */ if (_t50) goto L_0238F7AC; else goto L_0238F790;
|
|
L_0238F790: ; // 0x238f790
|
|
/* 0238F790 */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 0238F794 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], cpu->r[0]);
|
|
/* 0238F798 */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 0238F79C */ _t51 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0238F79C */ _t52 = _t51 & 0x00000001u;
|
|
/* 0238F79C */ if (_t52) goto L_0238FB7C; else goto L_0238F7A0;
|
|
L_0238F7A0: ; // 0x238f7a0
|
|
/* 0238F7A0 */ _t53 = cpu->r[11] + 0x00000000u;
|
|
/* 0238F7A0 */ cpu->r[12] = rbrew_read8(cpu->mem, _t53);
|
|
/* 0238F7A4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[31]);
|
|
/* 0238F7A8 */ _t54 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238F7A8 */ _t55 = _t54 & 0x00000001u;
|
|
/* 0238F7A8 */ if (_t55) goto L_0238F7AC; else goto L_0238F790;
|
|
L_0238F7AC: ; // 0x238f7ac
|
|
/* 0238F7AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0238F7B0 */ _t56 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0238F7B0 */ _t57 = _t56 & 0x00000001u;
|
|
/* 0238F7B0 */ if (_t57) goto L_0238F7B4; else goto L_0238FB7C;
|
|
L_0238F7B4: ; // 0x238f7b4
|
|
/* 0238F7B4 */ _t58 = cpu->r[30] + 0x00000004u;
|
|
/* 0238F7B4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t58);
|
|
/* 0238F7B8 */ _t59 = cpu->r[5] + 0x00000014u;
|
|
/* 0238F7B8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t59);
|
|
/* 0238F7BC */ cpu->ctr = cpu->r[6];
|
|
/* 0238F7C0 */ _t60 = cpu->r[1] + 0x00000018u;
|
|
/* 0238F7C0 */ cpu->r[24] = rbrew_read32(cpu->mem, _t60);
|
|
/* 0238F7C4 */ cpu->r[3] = cpu->r[30];
|
|
/* 0238F7C8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0238F7CC */ _t61 = cpu->r[30] + 0x00000000u;
|
|
/* 0238F7CC */ cpu->r[11] = rbrew_read32(cpu->mem, _t61);
|
|
/* 0238F7D0 */ _t62 = cpu->r[11] + 0x00000000u;
|
|
/* 0238F7D0 */ cpu->r[7] = rbrew_read8(cpu->mem, _t62);
|
|
/* 0238F7D4 */ cpu->r[0] = 0x00080000u;
|
|
/* 0238F7D8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[31]);
|
|
/* 0238F7DC */ cpu->r[29] = 0x00000000u;
|
|
/* 0238F7E0 */ _t63 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238F7E0 */ _t64 = _t63 & 0x00000001u;
|
|
/* 0238F7E0 */ if (_t64) goto L_0238F808; else goto L_0238F7E4;
|
|
L_0238F7E4: ; // 0x238f7e4
|
|
/* 0238F7E4 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 0238F7E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[0]);
|
|
/* 0238F7EC */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 0238F7F0 */ _t65 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0238F7F0 */ _t66 = _t65 & 0x00000001u;
|
|
/* 0238F7F0 */ if (_t66) goto L_0238F804; else goto L_0238F7F4;
|
|
L_0238F7F4: ; // 0x238f7f4
|
|
/* 0238F7F4 */ _t67 = cpu->r[11] + 0x00000000u;
|
|
/* 0238F7F4 */ cpu->r[9] = rbrew_read8(cpu->mem, _t67);
|
|
/* 0238F7F8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[31]);
|
|
/* 0238F7FC */ _t68 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238F7FC */ _t69 = _t68 & 0x00000001u;
|
|
/* 0238F7FC */ if (_t69) goto L_0238F800; else goto L_0238F7E4;
|
|
L_0238F800: ; // 0x238f800
|
|
/* 0238F800 */ goto L_0238F808;
|
|
L_0238F804: ; // 0x238f804
|
|
/* 0238F804 */ cpu->r[29] = 0x00000000u;
|
|
L_0238F808: ; // 0x238f808
|
|
/* 0238F808 */ _t70 = cpu->r[1] + 0x00000020u;
|
|
/* 0238F808 */ cpu->r[12] = rbrew_read32(cpu->mem, _t70);
|
|
/* 0238F80C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[12]);
|
|
/* 0238F810 */ _t71 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0238F810 */ _t72 = _t71 & 0x00000001u;
|
|
/* 0238F810 */ if (_t72) goto L_0238F818; else goto L_0238F814;
|
|
L_0238F814: ; // 0x238f814
|
|
/* 0238F814 */ cpu->r[29] = cpu->r[12] + 0xFFFFFFFFu;
|
|
L_0238F818: ; // 0x238f818
|
|
/* 0238F818 */ _t73 = cpu->r[30] + 0x00000004u;
|
|
/* 0238F818 */ cpu->r[10] = rbrew_read32(cpu->mem, _t73);
|
|
/* 0238F81C */ _t74 = cpu->r[10] + 0x00000014u;
|
|
/* 0238F81C */ cpu->r[12] = rbrew_read32(cpu->mem, _t74);
|
|
/* 0238F820 */ cpu->ctr = cpu->r[12];
|
|
/* 0238F824 */ cpu->r[3] = cpu->r[30];
|
|
/* 0238F828 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0238F82C */ _t75 = cpu->r[30] + 0x00000000u;
|
|
/* 0238F82C */ cpu->r[4] = rbrew_read32(cpu->mem, _t75);
|
|
/* 0238F830 */ cpu->r[6] = 0x00000000u;
|
|
/* 0238F834 */ cpu->r[5] = cpu->r[29];
|
|
/* 0238F838 */ cpu->r[3] = cpu->r[24];
|
|
/* 0238F83C */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0238F840 */ _t76 = cpu->r[24] + cpu->r[29];
|
|
/* 0238F840 */ rbrew_write8(cpu->mem, _t76, (uint8_t)cpu->r[31]);
|
|
L_0238F844: ; // 0x238f844
|
|
/* 0238F844 */ _t77 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0238F844 */ cpu->r[5] = rbrew_read32(cpu->mem, _t77);
|
|
/* 0238F848 */ _t78 = cpu->r[5] + 0x00000014u;
|
|
/* 0238F848 */ cpu->r[7] = rbrew_read32(cpu->mem, _t78);
|
|
/* 0238F84C */ cpu->ctr = cpu->r[7];
|
|
/* 0238F850 */ cpu->r[3] = cpu->r[1] + 0x00000018u;
|
|
/* 0238F854 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0238F858 */ _t79 = cpu->r[1] + 0x00000018u;
|
|
/* 0238F858 */ cpu->r[30] = rbrew_read32(cpu->mem, _t79);
|
|
/* 0238F85C */ cpu->r[5] = cpu->r[30];
|
|
/* 0238F860 */ _t80 = cpu->r[5] + 0x00000000u;
|
|
/* 0238F860 */ cpu->r[8] = rbrew_read8(cpu->mem, _t80);
|
|
/* 0238F864 */ cpu->r[12] = 0x00000000u;
|
|
/* 0238F868 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[31]);
|
|
/* 0238F86C */ cpu->r[7] = 0x00080000u;
|
|
/* 0238F870 */ _t81 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238F870 */ _t82 = _t81 & 0x00000001u;
|
|
/* 0238F870 */ if (_t82) goto L_0238F890; else goto L_0238F874;
|
|
L_0238F874: ; // 0x238f874
|
|
/* 0238F874 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 0238F878 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], cpu->r[7]);
|
|
/* 0238F87C */ cpu->r[5] = cpu->r[5] + 0x00000001u;
|
|
/* 0238F880 */ _t83 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0238F880 */ _t84 = _t83 & 0x00000001u;
|
|
/* 0238F880 */ if (_t84) goto L_0238F898; else goto L_0238F884;
|
|
L_0238F884: ; // 0x238f884
|
|
/* 0238F884 */ _t85 = cpu->r[5] + 0x00000000u;
|
|
/* 0238F884 */ cpu->r[10] = rbrew_read8(cpu->mem, _t85);
|
|
/* 0238F888 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[31]);
|
|
/* 0238F88C */ _t86 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238F88C */ _t87 = _t86 & 0x00000001u;
|
|
/* 0238F88C */ if (_t87) goto L_0238F890; else goto L_0238F874;
|
|
L_0238F890: ; // 0x238f890
|
|
/* 0238F890 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0238F894 */ _t88 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0238F894 */ _t89 = _t88 & 0x00000001u;
|
|
/* 0238F894 */ if (_t89) goto L_0238F924; else goto L_0238F898;
|
|
L_0238F898: ; // 0x238f898
|
|
/* 0238F898 */ _t90 = cpu->r[27] + 0x000002F8u;
|
|
/* 0238F898 */ cpu->r[12] = rbrew_read32(cpu->mem, _t90);
|
|
/* 0238F89C */ _t91 = cpu->r[12] + 0x00000014u;
|
|
/* 0238F89C */ cpu->r[5] = rbrew_read32(cpu->mem, _t91);
|
|
/* 0238F8A0 */ cpu->ctr = cpu->r[5];
|
|
/* 0238F8A4 */ cpu->r[3] = cpu->r[27] + 0x000002F4u;
|
|
/* 0238F8A8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0238F8AC */ _t92 = cpu->r[27] + 0x000002F4u;
|
|
/* 0238F8AC */ cpu->r[11] = rbrew_read32(cpu->mem, _t92);
|
|
/* 0238F8B0 */ _t93 = cpu->r[11] + 0x00000000u;
|
|
/* 0238F8B0 */ cpu->r[7] = rbrew_read8(cpu->mem, _t93);
|
|
/* 0238F8B4 */ cpu->r[0] = 0x00080000u;
|
|
/* 0238F8B8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[31]);
|
|
/* 0238F8BC */ cpu->r[29] = 0x00000000u;
|
|
/* 0238F8C0 */ _t94 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238F8C0 */ _t95 = _t94 & 0x00000001u;
|
|
/* 0238F8C0 */ if (_t95) goto L_0238F8E8; else goto L_0238F8C4;
|
|
L_0238F8C4: ; // 0x238f8c4
|
|
/* 0238F8C4 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 0238F8C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[0]);
|
|
/* 0238F8CC */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 0238F8D0 */ _t96 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0238F8D0 */ _t97 = _t96 & 0x00000001u;
|
|
/* 0238F8D0 */ if (_t97) goto L_0238F8E4; else goto L_0238F8D4;
|
|
L_0238F8D4: ; // 0x238f8d4
|
|
/* 0238F8D4 */ _t98 = cpu->r[11] + 0x00000000u;
|
|
/* 0238F8D4 */ cpu->r[9] = rbrew_read8(cpu->mem, _t98);
|
|
/* 0238F8D8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[31]);
|
|
/* 0238F8DC */ _t99 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238F8DC */ _t100 = _t99 & 0x00000001u;
|
|
/* 0238F8DC */ if (_t100) goto L_0238F8E0; else goto L_0238F8C4;
|
|
L_0238F8E0: ; // 0x238f8e0
|
|
/* 0238F8E0 */ goto L_0238F8E8;
|
|
L_0238F8E4: ; // 0x238f8e4
|
|
/* 0238F8E4 */ cpu->r[29] = 0x00000000u;
|
|
L_0238F8E8: ; // 0x238f8e8
|
|
/* 0238F8E8 */ _t101 = cpu->r[1] + 0x00000020u;
|
|
/* 0238F8E8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t101);
|
|
/* 0238F8EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[12]);
|
|
/* 0238F8F0 */ _t102 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0238F8F0 */ _t103 = _t102 & 0x00000001u;
|
|
/* 0238F8F0 */ if (_t103) goto L_0238F8F8; else goto L_0238F8F4;
|
|
L_0238F8F4: ; // 0x238f8f4
|
|
/* 0238F8F4 */ cpu->r[29] = cpu->r[12] + 0xFFFFFFFFu;
|
|
L_0238F8F8: ; // 0x238f8f8
|
|
/* 0238F8F8 */ _t104 = cpu->r[27] + 0x000002F8u;
|
|
/* 0238F8F8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t104);
|
|
/* 0238F8FC */ _t105 = cpu->r[10] + 0x00000014u;
|
|
/* 0238F8FC */ cpu->r[12] = rbrew_read32(cpu->mem, _t105);
|
|
/* 0238F900 */ cpu->ctr = cpu->r[12];
|
|
/* 0238F904 */ cpu->r[3] = cpu->r[27] + 0x000002F4u;
|
|
/* 0238F908 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0238F90C */ _t106 = cpu->r[27] + 0x000002F4u;
|
|
/* 0238F90C */ cpu->r[4] = rbrew_read32(cpu->mem, _t106);
|
|
/* 0238F910 */ cpu->r[6] = 0x00000000u;
|
|
/* 0238F914 */ cpu->r[5] = cpu->r[29];
|
|
/* 0238F918 */ cpu->r[3] = cpu->r[30];
|
|
/* 0238F91C */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0238F920 */ _t107 = cpu->r[30] + cpu->r[29];
|
|
/* 0238F920 */ rbrew_write8(cpu->mem, _t107, (uint8_t)cpu->r[31]);
|
|
L_0238F924: ; // 0x238f924
|
|
/* 0238F924 */ cpu->r[3] = cpu->r[26];
|
|
/* 0238F928 */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 0238F92C */ Gambit_fn_02026DC4(cpu);
|
|
/* 0238F930 */ _t108 = cpu->r[28] + 0x0000072Cu;
|
|
/* 0238F930 */ cpu->r[6] = rbrew_read32(cpu->mem, _t108);
|
|
/* 0238F934 */ _t109 = cpu->r[6] + 0x00000014u;
|
|
/* 0238F934 */ cpu->r[8] = rbrew_read32(cpu->mem, _t109);
|
|
/* 0238F938 */ cpu->r[26] = cpu->r[3];
|
|
/* 0238F93C */ cpu->ctr = cpu->r[8];
|
|
/* 0238F940 */ cpu->r[3] = cpu->r[28] + 0x00000728u;
|
|
/* 0238F944 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0238F948 */ _t110 = cpu->r[28] + 0x0000072Cu;
|
|
/* 0238F948 */ cpu->r[9] = rbrew_read32(cpu->mem, _t110);
|
|
/* 0238F94C */ _t111 = cpu->r[9] + 0x00000014u;
|
|
/* 0238F94C */ cpu->r[10] = rbrew_read32(cpu->mem, _t111);
|
|
/* 0238F950 */ cpu->ctr = cpu->r[10];
|
|
/* 0238F954 */ cpu->r[3] = cpu->r[28] + 0x00000728u;
|
|
/* 0238F958 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0238F95C */ _t112 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0238F95C */ cpu->r[12] = rbrew_read32(cpu->mem, _t112);
|
|
/* 0238F960 */ _t113 = cpu->r[12] + 0x00000014u;
|
|
/* 0238F960 */ cpu->r[5] = rbrew_read32(cpu->mem, _t113);
|
|
/* 0238F964 */ cpu->ctr = cpu->r[5];
|
|
/* 0238F968 */ _t114 = cpu->r[28] + 0x00000728u;
|
|
/* 0238F968 */ cpu->r[29] = rbrew_read32(cpu->mem, _t114);
|
|
/* 0238F96C */ cpu->r[3] = cpu->r[1] + 0x00000018u;
|
|
/* 0238F970 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0238F974 */ _t115 = cpu->r[1] + 0x00000018u;
|
|
/* 0238F974 */ cpu->r[30] = rbrew_read32(cpu->mem, _t115);
|
|
/* 0238F978 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[30]);
|
|
/* 0238F97C */ _t116 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238F97C */ _t117 = _t116 & 0x00000001u;
|
|
/* 0238F97C */ if (_t117) goto L_0238FB64; else goto L_0238F980;
|
|
L_0238F980: ; // 0x238f980
|
|
/* 0238F980 */ cpu->r[8] = 0x00080000u;
|
|
/* 0238F984 */ _t118 = cpu->r[28] + 0x00000728u;
|
|
/* 0238F984 */ cpu->r[29] = rbrew_read32(cpu->mem, _t118);
|
|
/* 0238F988 */ cpu->ctr = cpu->r[8];
|
|
/* 0238F98C */ cpu->r[6] = cpu->r[29] + 0xFFFFFFFFu;
|
|
L_0238F990: ; // 0x238f990
|
|
/* 0238F990 */ _t119 = cpu->r[6] + 0x00000001u;
|
|
/* 0238F990 */ cpu->r[8] = rbrew_read8(cpu->mem, _t119);
|
|
/* 0238F990 */ cpu->r[6] = _t119;
|
|
/* 0238F994 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[31]);
|
|
/* 0238F998 */ _t120 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238F998 */ _t121 = _t120 & 0x00000001u;
|
|
/* 0238F998 */ if (_t121) goto L_0238F99C; else goto L_0238F9AC;
|
|
L_0238F99C: ; // 0x238f99c
|
|
/* 0238F99C */ _t122 = cpu->r[30] + 0x00000000u;
|
|
/* 0238F99C */ cpu->r[6] = rbrew_read8(cpu->mem, _t122);
|
|
/* 0238F9A0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[31]);
|
|
/* 0238F9A4 */ _t123 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238F9A4 */ _t124 = _t123 & 0x00000001u;
|
|
/* 0238F9A4 */ if (_t124) goto L_0238F9A8; else goto L_0238F9E4;
|
|
L_0238F9A8: ; // 0x238f9a8
|
|
/* 0238F9A8 */ goto L_0238FB64;
|
|
L_0238F9AC: ; // 0x238f9ac
|
|
/* 0238F9AC */ _t125 = cpu->r[30] + 0x00000000u;
|
|
/* 0238F9AC */ cpu->r[0] = rbrew_read8(cpu->mem, _t125);
|
|
/* 0238F9B0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 0238F9B4 */ _t126 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238F9B4 */ _t127 = _t126 & 0x00000001u;
|
|
/* 0238F9B4 */ if (_t127) goto L_0238F9E4; else goto L_0238F9B8;
|
|
L_0238F9B8: ; // 0x238f9b8
|
|
/* 0238F9B8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[8]);
|
|
/* 0238F9BC */ _t128 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238F9BC */ _t129 = _t128 & 0x00000001u;
|
|
/* 0238F9BC */ if (_t129) goto L_0238F9C0; else goto L_0238F9E4;
|
|
L_0238F9C0: ; // 0x238f9c0
|
|
/* 0238F9C0 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 0238F9C4 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0238F9C4 */ _t130 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0238F9C4 */ _t131 = _t130 >> (0x00000002u & 31u);
|
|
/* 0238F9C4 */ _t132 = _t131 & 0x00000001u;
|
|
/* 0238F9C4 */ if (_t132) goto L_0238F990; else goto L_0238F9C8;
|
|
L_0238F9C8: ; // 0x238f9c8
|
|
/* 0238F9C8 */ cpu->r[6] = 0x000000B4u;
|
|
/* 0238F9CC */ cpu->r[8] = 0x00000000u;
|
|
/* 0238F9D0 */ _t133 = cpu->r[28] + 0x000007C0u;
|
|
/* 0238F9D0 */ rbrew_write16(cpu->mem, _t133, (uint16_t)cpu->r[6]);
|
|
/* 0238F9D4 */ cpu->r[9] = 0x0000003Cu;
|
|
/* 0238F9D8 */ _t134 = cpu->r[27] + 0x000002F1u;
|
|
/* 0238F9D8 */ rbrew_write8(cpu->mem, _t134, (uint8_t)cpu->r[8]);
|
|
/* 0238F9DC */ _t135 = cpu->r[28] + 0x00000724u;
|
|
/* 0238F9DC */ rbrew_write16(cpu->mem, _t135, (uint16_t)cpu->r[9]);
|
|
/* 0238F9E0 */ goto L_0238FB7C;
|
|
L_0238F9E4: ; // 0x238f9e4
|
|
/* 0238F9E4 */ _t136 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0238F9E4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t136);
|
|
/* 0238F9E8 */ _t137 = cpu->r[8] + 0x00000014u;
|
|
/* 0238F9E8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t137);
|
|
/* 0238F9EC */ cpu->ctr = cpu->r[10];
|
|
/* 0238F9F0 */ cpu->r[3] = cpu->r[1] + 0x00000018u;
|
|
/* 0238F9F4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0238F9F8 */ _t138 = cpu->r[1] + 0x00000018u;
|
|
/* 0238F9F8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t138);
|
|
/* 0238F9FC */ _t139 = cpu->r[6] + 0x00000000u;
|
|
/* 0238F9FC */ cpu->r[11] = rbrew_read8(cpu->mem, _t139);
|
|
/* 0238FA00 */ cpu->r[30] = 0x00000000u;
|
|
/* 0238FA04 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[31]);
|
|
/* 0238FA08 */ cpu->r[8] = 0x00080000u;
|
|
/* 0238FA0C */ _t140 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238FA0C */ _t141 = _t140 & 0x00000001u;
|
|
/* 0238FA0C */ if (_t141) goto L_0238FA34; else goto L_0238FA10;
|
|
L_0238FA10: ; // 0x238fa10
|
|
/* 0238FA10 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 0238FA14 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[8]);
|
|
/* 0238FA18 */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 0238FA1C */ _t142 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0238FA1C */ _t143 = _t142 & 0x00000001u;
|
|
/* 0238FA1C */ if (_t143) goto L_0238FA30; else goto L_0238FA20;
|
|
L_0238FA20: ; // 0x238fa20
|
|
/* 0238FA20 */ _t144 = cpu->r[6] + 0x00000000u;
|
|
/* 0238FA20 */ cpu->r[0] = rbrew_read8(cpu->mem, _t144);
|
|
/* 0238FA24 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 0238FA28 */ _t145 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238FA28 */ _t146 = _t145 & 0x00000001u;
|
|
/* 0238FA28 */ if (_t146) goto L_0238FA2C; else goto L_0238FA10;
|
|
L_0238FA2C: ; // 0x238fa2c
|
|
/* 0238FA2C */ goto L_0238FA34;
|
|
L_0238FA30: ; // 0x238fa30
|
|
/* 0238FA30 */ cpu->r[30] = 0x00000000u;
|
|
L_0238FA34: ; // 0x238fa34
|
|
/* 0238FA34 */ _t147 = cpu->r[28] + 0x00000730u;
|
|
/* 0238FA34 */ cpu->r[11] = rbrew_read32(cpu->mem, _t147);
|
|
/* 0238FA38 */ _t148 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0238FA38 */ cpu->r[5] = rbrew_read32(cpu->mem, _t148);
|
|
/* 0238FA3C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[11]);
|
|
/* 0238FA40 */ _t149 = cpu->r[5] + 0x00000014u;
|
|
/* 0238FA40 */ cpu->r[7] = rbrew_read32(cpu->mem, _t149);
|
|
/* 0238FA44 */ _t150 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0238FA44 */ _t151 = _t150 & 0x00000001u;
|
|
/* 0238FA44 */ if (_t151) goto L_0238FA4C; else goto L_0238FA48;
|
|
L_0238FA48: ; // 0x238fa48
|
|
/* 0238FA48 */ cpu->r[30] = cpu->r[11] + 0xFFFFFFFFu;
|
|
L_0238FA4C: ; // 0x238fa4c
|
|
/* 0238FA4C */ cpu->ctr = cpu->r[7];
|
|
/* 0238FA50 */ cpu->r[3] = cpu->r[1] + 0x00000018u;
|
|
/* 0238FA54 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0238FA58 */ _t152 = cpu->r[1] + 0x00000018u;
|
|
/* 0238FA58 */ cpu->r[4] = rbrew_read32(cpu->mem, _t152);
|
|
/* 0238FA5C */ cpu->r[6] = 0x00000000u;
|
|
/* 0238FA60 */ cpu->r[5] = cpu->r[30];
|
|
/* 0238FA64 */ cpu->r[3] = cpu->r[29];
|
|
/* 0238FA68 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0238FA6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 0238FA70 */ _t153 = cpu->r[29] + cpu->r[30];
|
|
/* 0238FA70 */ rbrew_write8(cpu->mem, _t153, (uint8_t)cpu->r[31]);
|
|
/* 0238FA74 */ _t154 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238FA74 */ _t155 = _t154 & 0x00000001u;
|
|
/* 0238FA74 */ if (_t155) goto L_0238FA78; else goto L_0238FAB0;
|
|
L_0238FA78: ; // 0x238fa78
|
|
/* 0238FA78 */ _t156 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0238FA78 */ rbrew_write32(cpu->mem, _t156, cpu->r[25]);
|
|
/* 0238FA7C */ cpu->r[0] = 0x10080000u;
|
|
/* 0238FA80 */ _t157 = cpu->r[28] + 0x00000774u;
|
|
/* 0238FA80 */ cpu->r[29] = rbrew_read32(cpu->mem, _t157);
|
|
/* 0238FA84 */ cpu->r[0] = cpu->r[0] + 0x000063B0u;
|
|
/* 0238FA88 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0238FA8C */ _t158 = cpu->r[1] + 0x00000008u;
|
|
/* 0238FA8C */ rbrew_write32(cpu->mem, _t158, cpu->r[0]);
|
|
/* 0238FA90 */ Gambit_fn_0238FFE4(cpu);
|
|
/* 0238FA94 */ _t159 = cpu->r[1] + 0x00000008u;
|
|
/* 0238FA94 */ cpu->r[9] = rbrew_read32(cpu->mem, _t159);
|
|
/* 0238FA98 */ _t160 = cpu->r[9] + 0x00000000u;
|
|
/* 0238FA98 */ cpu->r[0] = rbrew_read8(cpu->mem, _t160);
|
|
/* 0238FA9C */ cpu->r[30] = 0x00000000u;
|
|
/* 0238FAA0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 0238FAA4 */ cpu->r[0] = 0x00080000u;
|
|
/* 0238FAA8 */ _t161 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238FAA8 */ _t162 = _t161 & 0x00000001u;
|
|
/* 0238FAA8 */ if (_t162) goto L_0238FAAC; else goto L_0238FAF4;
|
|
L_0238FAAC: ; // 0x238faac
|
|
/* 0238FAAC */ goto L_0238FB18;
|
|
L_0238FAB0: ; // 0x238fab0
|
|
/* 0238FAB0 */ _t163 = cpu->r[26] + 0x00000034u;
|
|
/* 0238FAB0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t163);
|
|
/* 0238FAB4 */ _t164 = cpu->r[9] + 0x00000014u;
|
|
/* 0238FAB4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t164);
|
|
/* 0238FAB8 */ cpu->ctr = cpu->r[0];
|
|
/* 0238FABC */ cpu->r[3] = cpu->r[26] + 0x00000030u;
|
|
/* 0238FAC0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0238FAC4 */ _t165 = cpu->r[26] + 0x00000030u;
|
|
/* 0238FAC4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t165);
|
|
/* 0238FAC8 */ _t166 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0238FAC8 */ rbrew_write32(cpu->mem, _t166, cpu->r[25]);
|
|
/* 0238FACC */ _t167 = cpu->r[28] + 0x00000774u;
|
|
/* 0238FACC */ cpu->r[29] = rbrew_read32(cpu->mem, _t167);
|
|
/* 0238FAD0 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0238FAD4 */ _t168 = cpu->r[1] + 0x00000008u;
|
|
/* 0238FAD4 */ rbrew_write32(cpu->mem, _t168, cpu->r[0]);
|
|
/* 0238FAD8 */ Gambit_fn_0238FFE4(cpu);
|
|
/* 0238FADC */ _t169 = cpu->r[1] + 0x00000008u;
|
|
/* 0238FADC */ cpu->r[9] = rbrew_read32(cpu->mem, _t169);
|
|
/* 0238FAE0 */ _t170 = cpu->r[9] + 0x00000000u;
|
|
/* 0238FAE0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t170);
|
|
/* 0238FAE4 */ cpu->r[30] = 0x00000000u;
|
|
/* 0238FAE8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 0238FAEC */ cpu->r[0] = 0x00080000u;
|
|
/* 0238FAF0 */ _t171 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238FAF0 */ _t172 = _t171 & 0x00000001u;
|
|
/* 0238FAF0 */ if (_t172) goto L_0238FAAC; else goto L_0238FAF4;
|
|
L_0238FAF4: ; // 0x238faf4
|
|
/* 0238FAF4 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 0238FAF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[0]);
|
|
/* 0238FAFC */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
/* 0238FB00 */ _t173 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0238FB00 */ _t174 = _t173 & 0x00000001u;
|
|
/* 0238FB00 */ if (_t174) goto L_0238FB14; else goto L_0238FB04;
|
|
L_0238FB04: ; // 0x238fb04
|
|
/* 0238FB04 */ _t175 = cpu->r[9] + 0x00000000u;
|
|
/* 0238FB04 */ cpu->r[8] = rbrew_read8(cpu->mem, _t175);
|
|
/* 0238FB08 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[31]);
|
|
/* 0238FB0C */ _t176 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238FB0C */ _t177 = _t176 & 0x00000001u;
|
|
/* 0238FB0C */ if (_t177) goto L_0238FB10; else goto L_0238FAF4;
|
|
L_0238FB10: ; // 0x238fb10
|
|
/* 0238FB10 */ goto L_0238FB18;
|
|
L_0238FB14: ; // 0x238fb14
|
|
/* 0238FB14 */ cpu->r[30] = 0x00000000u;
|
|
L_0238FB18: ; // 0x238fb18
|
|
/* 0238FB18 */ _t178 = cpu->r[28] + 0x0000077Cu;
|
|
/* 0238FB18 */ cpu->r[10] = rbrew_read32(cpu->mem, _t178);
|
|
/* 0238FB1C */ _t179 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0238FB1C */ cpu->r[11] = rbrew_read32(cpu->mem, _t179);
|
|
/* 0238FB20 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[10]);
|
|
/* 0238FB24 */ _t180 = cpu->r[11] + 0x00000014u;
|
|
/* 0238FB24 */ cpu->r[5] = rbrew_read32(cpu->mem, _t180);
|
|
/* 0238FB28 */ _t181 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0238FB28 */ _t182 = _t181 & 0x00000001u;
|
|
/* 0238FB28 */ if (_t182) goto L_0238FB30; else goto L_0238FB2C;
|
|
L_0238FB2C: ; // 0x238fb2c
|
|
/* 0238FB2C */ cpu->r[30] = cpu->r[10] + 0xFFFFFFFFu;
|
|
L_0238FB30: ; // 0x238fb30
|
|
/* 0238FB30 */ cpu->ctr = cpu->r[5];
|
|
/* 0238FB34 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0238FB38 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0238FB3C */ _t183 = cpu->r[1] + 0x00000008u;
|
|
/* 0238FB3C */ cpu->r[4] = rbrew_read32(cpu->mem, _t183);
|
|
/* 0238FB40 */ cpu->r[6] = 0x00000000u;
|
|
/* 0238FB44 */ cpu->r[5] = cpu->r[30];
|
|
/* 0238FB48 */ cpu->r[3] = cpu->r[29];
|
|
/* 0238FB4C */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0238FB50 */ cpu->r[5] = cpu->r[28] + 0x00000774u;
|
|
/* 0238FB54 */ cpu->r[3] = cpu->r[28];
|
|
/* 0238FB58 */ cpu->r[4] = cpu->r[28] + 0x00000728u;
|
|
/* 0238FB5C */ _t184 = cpu->r[29] + cpu->r[30];
|
|
/* 0238FB5C */ rbrew_write8(cpu->mem, _t184, (uint8_t)cpu->r[31]);
|
|
/* 0238FB60 */ Gambit_fn_0238F230(cpu);
|
|
L_0238FB64: ; // 0x238fb64
|
|
/* 0238FB64 */ cpu->r[6] = 0x000000B4u;
|
|
/* 0238FB68 */ cpu->r[8] = 0x00000000u;
|
|
/* 0238FB6C */ _t185 = cpu->r[28] + 0x000007C0u;
|
|
/* 0238FB6C */ rbrew_write16(cpu->mem, _t185, (uint16_t)cpu->r[6]);
|
|
/* 0238FB70 */ cpu->r[9] = 0x0000003Cu;
|
|
/* 0238FB74 */ _t186 = cpu->r[27] + 0x000002F1u;
|
|
/* 0238FB74 */ rbrew_write8(cpu->mem, _t186, (uint8_t)cpu->r[8]);
|
|
/* 0238FB78 */ _t187 = cpu->r[28] + 0x00000724u;
|
|
/* 0238FB78 */ rbrew_write16(cpu->mem, _t187, (uint16_t)cpu->r[9]);
|
|
L_0238FB7C: ; // 0x238fb7c
|
|
/* 0238FB7C */ /* nop */
|
|
/* 0238FB80 */ _t188 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0238FB80 */ cpu->r[0] = rbrew_read32(cpu->mem, _t188);
|
|
/* 0238FB84 */ cpu->lr = cpu->r[0];
|
|
/* 0238FB88 */ cpu->r[1] = cpu->r[1] + 0x00000088u;
|
|
/* 0238FB8C */ return;
|
|
}
|
|
|
|
// fn_0238FB90 @ 0x238fb90
|
|
void Gambit_fn_0238FB90(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _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_0238FB90: ; // 0x238fb90
|
|
/* 0238FB90 */ cpu->r[0] = cpu->lr;
|
|
/* 0238FB94 */ _t0 = cpu->r[1] + 0xFFFFFD38u;
|
|
/* 0238FB94 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0238FB94 */ cpu->r[1] = _t0;
|
|
/* 0238FB98 */ _t1 = cpu->r[1] + 0x000002C4u;
|
|
/* 0238FB98 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0238FB9C */ cpu->r[31] = cpu->r[3];
|
|
/* 0238FBA0 */ _t2 = cpu->r[1] + 0x000002CCu;
|
|
/* 0238FBA0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0238FBA4 */ _t3 = cpu->r[31] + 0x000007C0u;
|
|
/* 0238FBA4 */ cpu->r[8] = rbrew_read16(cpu->mem, _t3);
|
|
/* 0238FBA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0238FBAC */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238FBAC */ _t5 = _t4 & 0x00000001u;
|
|
/* 0238FBAC */ if (_t5) goto L_0238FC78; else goto L_0238FBB0;
|
|
L_0238FBB0: ; // 0x238fbb0
|
|
/* 0238FBB0 */ cpu->r[10] = cpu->r[8] + 0xFFFFFFFFu;
|
|
/* 0238FBB4 */ cpu->r[3] = cpu->r[1] + 0x0000005Cu;
|
|
/* 0238FBB8 */ _t6 = cpu->r[31] + 0x000007C0u;
|
|
/* 0238FBB8 */ rbrew_write16(cpu->mem, _t6, (uint16_t)cpu->r[10]);
|
|
/* 0238FBBC */ Gambit_fn_027FF40C(cpu);
|
|
/* 0238FBC0 */ cpu->r[3] = cpu->r[1] + 0x0000005Cu;
|
|
/* 0238FBC4 */ cpu->r[4] = 0x00000000u;
|
|
/* 0238FBC8 */ Gambit_fn_027FF658(cpu);
|
|
/* 0238FBCC */ cpu->r[9] = 0x10080000u;
|
|
/* 0238FBD0 */ _t7 = cpu->r[9] + 0x000063D0u;
|
|
/* 0238FBD0 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 0238FBD4 */ cpu->r[3] = cpu->r[1] + 0x0000005Cu;
|
|
/* 0238FBD8 */ Gambit_fn_027FF5D4(cpu);
|
|
/* 0238FBDC */ cpu->r[12] = 0x10110000u;
|
|
/* 0238FBE0 */ _t8 = cpu->r[31] + 0x00000778u;
|
|
/* 0238FBE0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0238FBE4 */ cpu->r[9] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0238FBE8 */ _t9 = cpu->r[12] + 0x00007399u;
|
|
/* 0238FBE8 */ cpu->r[12] = rbrew_read8(cpu->mem, _t9);
|
|
/* 0238FBEC */ cpu->r[8] = 0x00000140u;
|
|
/* 0238FBF0 */ _t10 = cpu->r[1] + 0x00000010u;
|
|
/* 0238FBF0 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 0238FBF4 */ cpu->r[10] = 0x00000040u;
|
|
/* 0238FBF8 */ _t11 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0238FBF8 */ rbrew_write8(cpu->mem, _t11, (uint8_t)cpu->r[12]);
|
|
/* 0238FBFC */ cpu->r[0] = 0x10080000u;
|
|
/* 0238FC00 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 0238FC00 */ rbrew_write32(cpu->mem, _t12, cpu->r[8]);
|
|
/* 0238FC04 */ cpu->r[0] = cpu->r[0] + 0x000062F0u;
|
|
/* 0238FC08 */ _t13 = cpu->r[1] + 0x00000018u;
|
|
/* 0238FC08 */ rbrew_write32(cpu->mem, _t13, cpu->r[10]);
|
|
/* 0238FC0C */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 0238FC0C */ rbrew_write32(cpu->mem, _t14, cpu->r[0]);
|
|
/* 0238FC10 */ _t15 = cpu->r[1] + 0x0000005Bu;
|
|
/* 0238FC10 */ rbrew_write8(cpu->mem, _t15, (uint8_t)cpu->r[12]);
|
|
/* 0238FC14 */ _t16 = cpu->r[6] + 0x00000014u;
|
|
/* 0238FC14 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0238FC18 */ cpu->ctr = cpu->r[0];
|
|
/* 0238FC1C */ cpu->r[3] = cpu->r[31] + 0x00000774u;
|
|
/* 0238FC20 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0238FC24 */ cpu->r[4] = 0x10080000u;
|
|
/* 0238FC28 */ _t17 = cpu->r[31] + 0x00000774u;
|
|
/* 0238FC28 */ cpu->r[5] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0238FC2C */ cpu->r[4] = cpu->r[4] + 0x000063D4u;
|
|
/* 0238FC30 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 0238FC34 */ _t18 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 0238FC34 */ _t19 = _t18 & 0x00000001u;
|
|
/* 0238FC34 */ if (_t19) goto L_0238FC38; // else: addr-0 trap, fall-through
|
|
L_0238FC38: ; // 0x238fc38
|
|
/* 0238FC38 */ Gambit_fn_0282A5F4(cpu);
|
|
/* 0238FC3C */ _t20 = cpu->r[1] + 0x00000014u;
|
|
/* 0238FC3C */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0238FC40 */ _t21 = cpu->r[11] + 0x00000014u;
|
|
/* 0238FC40 */ cpu->r[12] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0238FC44 */ cpu->ctr = cpu->r[12];
|
|
/* 0238FC48 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 0238FC4C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0238FC50 */ cpu->r[3] = cpu->r[1] + 0x0000005Cu;
|
|
/* 0238FC54 */ _t22 = cpu->r[1] + 0x00000010u;
|
|
/* 0238FC54 */ cpu->r[7] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0238FC58 */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0238FC5C */ cpu->r[5] = 0x101E0000u;
|
|
/* 0238FC60 */ _t23 = cpu->r[1] + 0x00000008u;
|
|
/* 0238FC60 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0238FC64 */ cpu->r[8] = 0xFFFFFFFFu;
|
|
/* 0238FC68 */ cpu->r[5] = cpu->r[5] + 0x000047F4u;
|
|
/* 0238FC6C */ cpu->r[6] = 0x00000001u;
|
|
/* 0238FC70 */ _t24 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0238FC70 */ rbrew_write32(cpu->mem, _t24, cpu->r[0]);
|
|
/* 0238FC74 */ Gambit_fn_027FF75C(cpu);
|
|
L_0238FC78: ; // 0x238fc78
|
|
/* 0238FC78 */ _t25 = cpu->r[1] + 0x000002CCu;
|
|
/* 0238FC78 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0238FC7C */ _t26 = cpu->r[1] + 0x000002C4u;
|
|
/* 0238FC7C */ cpu->r[31] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0238FC80 */ cpu->lr = cpu->r[0];
|
|
/* 0238FC84 */ cpu->r[1] = cpu->r[1] + 0x000002C8u;
|
|
/* 0238FC88 */ return;
|
|
}
|
|
|
|
// fn_0238FB94 @ 0x238fb94
|
|
void Gambit_fn_0238FB94(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _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_0238FB94: ; // 0x238fb94
|
|
/* 0238FB94 */ _t0 = cpu->r[1] + 0xFFFFFD38u;
|
|
/* 0238FB94 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0238FB94 */ cpu->r[1] = _t0;
|
|
/* 0238FB98 */ _t1 = cpu->r[1] + 0x000002C4u;
|
|
/* 0238FB98 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0238FB9C */ cpu->r[31] = cpu->r[3];
|
|
/* 0238FBA0 */ _t2 = cpu->r[1] + 0x000002CCu;
|
|
/* 0238FBA0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0238FBA4 */ _t3 = cpu->r[31] + 0x000007C0u;
|
|
/* 0238FBA4 */ cpu->r[8] = rbrew_read16(cpu->mem, _t3);
|
|
/* 0238FBA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0238FBAC */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238FBAC */ _t5 = _t4 & 0x00000001u;
|
|
/* 0238FBAC */ if (_t5) goto L_0238FC78; else goto L_0238FBB0;
|
|
L_0238FBB0: ; // 0x238fbb0
|
|
/* 0238FBB0 */ cpu->r[10] = cpu->r[8] + 0xFFFFFFFFu;
|
|
/* 0238FBB4 */ cpu->r[3] = cpu->r[1] + 0x0000005Cu;
|
|
/* 0238FBB8 */ _t6 = cpu->r[31] + 0x000007C0u;
|
|
/* 0238FBB8 */ rbrew_write16(cpu->mem, _t6, (uint16_t)cpu->r[10]);
|
|
/* 0238FBBC */ Gambit_fn_027FF40C(cpu);
|
|
/* 0238FBC0 */ cpu->r[3] = cpu->r[1] + 0x0000005Cu;
|
|
/* 0238FBC4 */ cpu->r[4] = 0x00000000u;
|
|
/* 0238FBC8 */ Gambit_fn_027FF658(cpu);
|
|
/* 0238FBCC */ cpu->r[9] = 0x10080000u;
|
|
/* 0238FBD0 */ _t7 = cpu->r[9] + 0x000063D0u;
|
|
/* 0238FBD0 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 0238FBD4 */ cpu->r[3] = cpu->r[1] + 0x0000005Cu;
|
|
/* 0238FBD8 */ Gambit_fn_027FF5D4(cpu);
|
|
/* 0238FBDC */ cpu->r[12] = 0x10110000u;
|
|
/* 0238FBE0 */ _t8 = cpu->r[31] + 0x00000778u;
|
|
/* 0238FBE0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0238FBE4 */ cpu->r[9] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0238FBE8 */ _t9 = cpu->r[12] + 0x00007399u;
|
|
/* 0238FBE8 */ cpu->r[12] = rbrew_read8(cpu->mem, _t9);
|
|
/* 0238FBEC */ cpu->r[8] = 0x00000140u;
|
|
/* 0238FBF0 */ _t10 = cpu->r[1] + 0x00000010u;
|
|
/* 0238FBF0 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 0238FBF4 */ cpu->r[10] = 0x00000040u;
|
|
/* 0238FBF8 */ _t11 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0238FBF8 */ rbrew_write8(cpu->mem, _t11, (uint8_t)cpu->r[12]);
|
|
/* 0238FBFC */ cpu->r[0] = 0x10080000u;
|
|
/* 0238FC00 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 0238FC00 */ rbrew_write32(cpu->mem, _t12, cpu->r[8]);
|
|
/* 0238FC04 */ cpu->r[0] = cpu->r[0] + 0x000062F0u;
|
|
/* 0238FC08 */ _t13 = cpu->r[1] + 0x00000018u;
|
|
/* 0238FC08 */ rbrew_write32(cpu->mem, _t13, cpu->r[10]);
|
|
/* 0238FC0C */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 0238FC0C */ rbrew_write32(cpu->mem, _t14, cpu->r[0]);
|
|
/* 0238FC10 */ _t15 = cpu->r[1] + 0x0000005Bu;
|
|
/* 0238FC10 */ rbrew_write8(cpu->mem, _t15, (uint8_t)cpu->r[12]);
|
|
/* 0238FC14 */ _t16 = cpu->r[6] + 0x00000014u;
|
|
/* 0238FC14 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0238FC18 */ cpu->ctr = cpu->r[0];
|
|
/* 0238FC1C */ cpu->r[3] = cpu->r[31] + 0x00000774u;
|
|
/* 0238FC20 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0238FC24 */ cpu->r[4] = 0x10080000u;
|
|
/* 0238FC28 */ _t17 = cpu->r[31] + 0x00000774u;
|
|
/* 0238FC28 */ cpu->r[5] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0238FC2C */ cpu->r[4] = cpu->r[4] + 0x000063D4u;
|
|
/* 0238FC30 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 0238FC34 */ _t18 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 0238FC34 */ _t19 = _t18 & 0x00000001u;
|
|
/* 0238FC34 */ if (_t19) goto L_0238FC38; // else: addr-0 trap, fall-through
|
|
L_0238FC38: ; // 0x238fc38
|
|
/* 0238FC38 */ Gambit_fn_0282A5F4(cpu);
|
|
/* 0238FC3C */ _t20 = cpu->r[1] + 0x00000014u;
|
|
/* 0238FC3C */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0238FC40 */ _t21 = cpu->r[11] + 0x00000014u;
|
|
/* 0238FC40 */ cpu->r[12] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0238FC44 */ cpu->ctr = cpu->r[12];
|
|
/* 0238FC48 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 0238FC4C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0238FC50 */ cpu->r[3] = cpu->r[1] + 0x0000005Cu;
|
|
/* 0238FC54 */ _t22 = cpu->r[1] + 0x00000010u;
|
|
/* 0238FC54 */ cpu->r[7] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0238FC58 */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0238FC5C */ cpu->r[5] = 0x101E0000u;
|
|
/* 0238FC60 */ _t23 = cpu->r[1] + 0x00000008u;
|
|
/* 0238FC60 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0238FC64 */ cpu->r[8] = 0xFFFFFFFFu;
|
|
/* 0238FC68 */ cpu->r[5] = cpu->r[5] + 0x000047F4u;
|
|
/* 0238FC6C */ cpu->r[6] = 0x00000001u;
|
|
/* 0238FC70 */ _t24 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0238FC70 */ rbrew_write32(cpu->mem, _t24, cpu->r[0]);
|
|
/* 0238FC74 */ Gambit_fn_027FF75C(cpu);
|
|
L_0238FC78: ; // 0x238fc78
|
|
/* 0238FC78 */ _t25 = cpu->r[1] + 0x000002CCu;
|
|
/* 0238FC78 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0238FC7C */ _t26 = cpu->r[1] + 0x000002C4u;
|
|
/* 0238FC7C */ cpu->r[31] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0238FC80 */ cpu->lr = cpu->r[0];
|
|
/* 0238FC84 */ cpu->r[1] = cpu->r[1] + 0x000002C8u;
|
|
/* 0238FC88 */ return;
|
|
}
|
|
|
|
// fn_0238FC8C @ 0x238fc8c
|
|
void Gambit_fn_0238FC8C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_0238FC8C: ; // 0x238fc8c
|
|
/* 0238FC8C */ cpu->r[0] = cpu->lr;
|
|
/* 0238FC90 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0238FC90 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0238FC90 */ cpu->r[1] = _t0;
|
|
/* 0238FC94 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0238FC94 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0238FC98 */ cpu->r[31] = cpu->r[3];
|
|
/* 0238FC9C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0238FC9C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0238FCA0 */ Gambit_fn_0238F630(cpu);
|
|
/* 0238FCA4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0238FCA8 */ Gambit_fn_0238FB90(cpu);
|
|
/* 0238FCAC */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0238FCAC */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0238FCB0 */ cpu->lr = cpu->r[0];
|
|
/* 0238FCB4 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0238FCB4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0238FCB8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0238FCBC */ return;
|
|
}
|
|
|
|
// fn_0238FC90 @ 0x238fc90
|
|
void Gambit_fn_0238FC90(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_0238FC90: ; // 0x238fc90
|
|
/* 0238FC90 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0238FC90 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0238FC90 */ cpu->r[1] = _t0;
|
|
/* 0238FC94 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0238FC94 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0238FC98 */ cpu->r[31] = cpu->r[3];
|
|
/* 0238FC9C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0238FC9C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0238FCA0 */ Gambit_fn_0238F630(cpu);
|
|
/* 0238FCA4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0238FCA8 */ Gambit_fn_0238FB90(cpu);
|
|
/* 0238FCAC */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0238FCAC */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0238FCB0 */ cpu->lr = cpu->r[0];
|
|
/* 0238FCB4 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0238FCB4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0238FCB8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0238FCBC */ return;
|
|
}
|
|
|
|
// fn_0238FCC0 @ 0x238fcc0
|
|
void Gambit_fn_0238FCC0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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;
|
|
|
|
L_0238FCC0: ; // 0x238fcc0
|
|
/* 0238FCC0 */ _t0 = cpu->r[1] + 0xFFFFFFA0u;
|
|
/* 0238FCC0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0238FCC0 */ cpu->r[1] = _t0;
|
|
/* 0238FCC4 */ _t1 = cpu->r[1] + 0x00000020u;
|
|
/* 0238FCC4 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[28]);
|
|
/* 0238FCC8 */ /* nop */
|
|
/* 0238FCCC */ _t2 = cpu->r[1] + 0x00000030u;
|
|
/* 0238FCCC */ rbrew_write_f64(cpu->mem, _t2, cpu->f[29]);
|
|
/* 0238FCD0 */ _t3 = cpu->r[1] + 0x00000050u;
|
|
/* 0238FCD0 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[31]);
|
|
/* 0238FCD4 */ cpu->r[0] = cpu->lr;
|
|
/* 0238FCD8 */ /* nop */
|
|
/* 0238FCDC */ /* nop */
|
|
/* 0238FCE0 */ _t4 = cpu->r[1] + 0x00000064u;
|
|
/* 0238FCE0 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0238FCE4 */ /* nop */
|
|
/* 0238FCE8 */ _t5 = cpu->r[1] + 0x00000040u;
|
|
/* 0238FCE8 */ rbrew_write_f64(cpu->mem, _t5, cpu->f[30]);
|
|
/* 0238FCEC */ cpu->r[10] = 0xFFFFFFFEu;
|
|
/* 0238FCF0 */ _t6 = cpu->r[1] + 0x00000058u;
|
|
/* 0238FCF0 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[31]);
|
|
/* 0238FCF4 */ /* nop */
|
|
/* 0238FCF8 */ _t7 = cpu->r[1] + 0x00000028u;
|
|
/* 0238FCF8 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[28]);
|
|
/* 0238FCFC */ cpu->r[12] = 0x101E0000u;
|
|
/* 0238FD00 */ _t8 = cpu->r[1] + 0x00000048u;
|
|
/* 0238FD00 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[30]);
|
|
/* 0238FD04 */ cpu->r[4] = 0xFFFFFFFFu;
|
|
/* 0238FD08 */ _t9 = cpu->r[1] + 0x00000038u;
|
|
/* 0238FD08 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[29]);
|
|
/* 0238FD0C */ cpu->r[7] = 0xFFFFFFFDu;
|
|
/* 0238FD10 */ cpu->r[5] = 0x101E0000u;
|
|
/* 0238FD14 */ cpu->r[8] = 0x101F0000u;
|
|
/* 0238FD18 */ _t10 = cpu->r[5] + 0x00004804u;
|
|
/* 0238FD18 */ rbrew_write32(cpu->mem, _t10, cpu->r[7]);
|
|
/* 0238FD18 */ cpu->r[5] = _t10;
|
|
/* 0238FD1C */ cpu->r[8] = cpu->r[8] + 0x00005BFCu;
|
|
/* 0238FD20 */ _t11 = cpu->r[5] + 0x00000004u;
|
|
/* 0238FD20 */ rbrew_write32(cpu->mem, _t11, cpu->r[4]);
|
|
/* 0238FD24 */ cpu->r[11] = 0x101E0000u;
|
|
/* 0238FD28 */ _t12 = cpu->r[12] + 0x0000480Cu;
|
|
/* 0238FD28 */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 0238FD28 */ cpu->r[12] = _t12;
|
|
/* 0238FD2C */ _t13 = cpu->r[8] + 0x0000000Cu;
|
|
/* 0238FD2C */ cpu->r[27] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0238FD30 */ cpu->r[10] = 0x101E0000u;
|
|
/* 0238FD34 */ _t14 = cpu->r[12] + 0x00000004u;
|
|
/* 0238FD34 */ rbrew_write32(cpu->mem, _t14, cpu->r[4]);
|
|
/* 0238FD38 */ cpu->r[11] = cpu->r[11] + 0x0000481Cu;
|
|
/* 0238FD3C */ _t15 = cpu->r[10] + 0x00004814u;
|
|
/* 0238FD3C */ rbrew_write32(cpu->mem, _t15, cpu->r[4]);
|
|
/* 0238FD3C */ cpu->r[10] = _t15;
|
|
/* 0238FD40 */ _t16 = cpu->r[10] + 0x00000004u;
|
|
/* 0238FD40 */ rbrew_write32(cpu->mem, _t16, cpu->r[4]);
|
|
/* 0238FD44 */ cpu->r[12] = 0x00000002u;
|
|
/* 0238FD48 */ _t17 = cpu->r[8] + 0x00000004u;
|
|
/* 0238FD48 */ cpu->r[28] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0238FD4C */ _t18 = cpu->r[1] + 0x00000008u;
|
|
/* 0238FD4C */ rbrew_write32(cpu->mem, _t18, cpu->r[12]);
|
|
/* 0238FD50 */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 0238FD50 */ cpu->r[10] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0238FD54 */ _t20 = cpu->r[11] + 0x00000004u;
|
|
/* 0238FD54 */ rbrew_write32(cpu->mem, _t20, cpu->r[4]);
|
|
/* 0238FD58 */ _t21 = cpu->r[8] + 0x00000000u;
|
|
/* 0238FD58 */ cpu->r[29] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0238FD5C */ cpu->r[31] = 0x101E0000u;
|
|
/* 0238FD60 */ _t22 = cpu->r[8] + 0x00000008u;
|
|
/* 0238FD60 */ cpu->r[30] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0238FD64 */ cpu->r[12] = 0x101F0000u;
|
|
/* 0238FD68 */ _t23 = cpu->r[12] + 0x00005C2Cu;
|
|
/* 0238FD68 */ cpu->r[10] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0238FD68 */ cpu->r[12] = _t23;
|
|
/* 0238FD6C */ _t24 = cpu->r[31] + 0x00004830u;
|
|
/* 0238FD6C */ rbrew_write32(cpu->mem, _t24, cpu->r[29]);
|
|
/* 0238FD6C */ cpu->r[31] = _t24;
|
|
/* 0238FD70 */ _t25 = cpu->r[31] + 0x00000010u;
|
|
/* 0238FD70 */ rbrew_write32(cpu->mem, _t25, cpu->r[29]);
|
|
/* 0238FD74 */ _t26 = cpu->r[31] + 0x00000018u;
|
|
/* 0238FD74 */ rbrew_write32(cpu->mem, _t26, cpu->r[30]);
|
|
/* 0238FD78 */ _t27 = cpu->r[31] + 0x00000030u;
|
|
/* 0238FD78 */ rbrew_write32(cpu->mem, _t27, cpu->r[10]);
|
|
/* 0238FD7C */ _t28 = cpu->r[31] + 0x0000002Cu;
|
|
/* 0238FD7C */ rbrew_write32(cpu->mem, _t28, cpu->r[27]);
|
|
/* 0238FD80 */ _t29 = cpu->r[31] + 0x00000008u;
|
|
/* 0238FD80 */ rbrew_write32(cpu->mem, _t29, cpu->r[30]);
|
|
/* 0238FD84 */ cpu->r[0] = 0x00000004u;
|
|
/* 0238FD88 */ _t30 = cpu->r[31] + 0x00000024u;
|
|
/* 0238FD88 */ rbrew_write32(cpu->mem, _t30, cpu->r[28]);
|
|
/* 0238FD8C */ cpu->r[9] = 0x101E0000u;
|
|
/* 0238FD90 */ _t31 = cpu->r[31] + 0x00000028u;
|
|
/* 0238FD90 */ rbrew_write32(cpu->mem, _t31, cpu->r[30]);
|
|
/* 0238FD94 */ cpu->r[10] = 0x101F0000u;
|
|
/* 0238FD98 */ _t32 = cpu->r[9] + 0x0000482Cu;
|
|
/* 0238FD98 */ rbrew_write32(cpu->mem, _t32, cpu->r[0]);
|
|
/* 0238FD9C */ _t33 = cpu->r[10] + 0x00005C1Cu;
|
|
/* 0238FD9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 0238FD9C */ cpu->r[10] = _t33;
|
|
/* 0238FDA0 */ _t34 = cpu->r[31] + 0x00000004u;
|
|
/* 0238FDA0 */ rbrew_write32(cpu->mem, _t34, cpu->r[28]);
|
|
/* 0238FDA4 */ _t35 = cpu->r[12] + 0x0000000Cu;
|
|
/* 0238FDA4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t35);
|
|
/* 0238FDA8 */ _t36 = cpu->r[12] + 0x00000008u;
|
|
/* 0238FDA8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t36);
|
|
/* 0238FDAC */ _t37 = cpu->r[31] + 0x00000020u;
|
|
/* 0238FDAC */ rbrew_write32(cpu->mem, _t37, cpu->r[29]);
|
|
/* 0238FDB0 */ _t38 = cpu->r[31] + 0x00000014u;
|
|
/* 0238FDB0 */ rbrew_write32(cpu->mem, _t38, cpu->r[28]);
|
|
/* 0238FDB4 */ _t39 = cpu->r[31] + 0x00000040u;
|
|
/* 0238FDB4 */ rbrew_write32(cpu->mem, _t39, cpu->r[0]);
|
|
/* 0238FDB8 */ _t40 = cpu->r[31] + 0x0000003Cu;
|
|
/* 0238FDB8 */ rbrew_write32(cpu->mem, _t40, cpu->r[8]);
|
|
/* 0238FDBC */ _t41 = cpu->r[10] + 0x00000004u;
|
|
/* 0238FDBC */ cpu->r[0] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0238FDC0 */ _t42 = cpu->r[10] + 0x00000008u;
|
|
/* 0238FDC0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t42);
|
|
/* 0238FDC4 */ _t43 = cpu->r[31] + 0x00000044u;
|
|
/* 0238FDC4 */ rbrew_write32(cpu->mem, _t43, cpu->r[0]);
|
|
/* 0238FDC8 */ _t44 = cpu->r[31] + 0x00000048u;
|
|
/* 0238FDC8 */ rbrew_write32(cpu->mem, _t44, cpu->r[9]);
|
|
/* 0238FDCC */ _t45 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0238FDCC */ rbrew_write32(cpu->mem, _t45, cpu->r[27]);
|
|
/* 0238FDD0 */ _t46 = cpu->r[10] + 0x0000000Cu;
|
|
/* 0238FDD0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t46);
|
|
/* 0238FDD4 */ _t47 = cpu->r[12] + 0x00000004u;
|
|
/* 0238FDD4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t47);
|
|
/* 0238FDD8 */ _t48 = cpu->r[31] + 0x0000004Cu;
|
|
/* 0238FDD8 */ rbrew_write32(cpu->mem, _t48, cpu->r[0]);
|
|
/* 0238FDDC */ _t49 = cpu->r[31] + 0x00000034u;
|
|
/* 0238FDDC */ rbrew_write32(cpu->mem, _t49, cpu->r[12]);
|
|
/* 0238FDE0 */ _t50 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0238FDE0 */ rbrew_write32(cpu->mem, _t50, cpu->r[27]);
|
|
/* 0238FDE4 */ _t51 = cpu->r[11] + 0x00000000u;
|
|
/* 0238FDE4 */ rbrew_write32(cpu->mem, _t51, cpu->r[7]);
|
|
/* 0238FDE8 */ cpu->r[6] = 0x101E0000u;
|
|
/* 0238FDEC */ _t52 = cpu->r[6] + 0x00004824u;
|
|
/* 0238FDEC */ rbrew_write32(cpu->mem, _t52, cpu->r[7]);
|
|
/* 0238FDEC */ cpu->r[6] = _t52;
|
|
/* 0238FDF0 */ cpu->r[11] = 0x101F0000u;
|
|
/* 0238FDF4 */ _t53 = cpu->r[31] + 0x00000038u;
|
|
/* 0238FDF4 */ rbrew_write32(cpu->mem, _t53, cpu->r[5]);
|
|
/* 0238FDF8 */ _t54 = cpu->r[11] + 0x00005BDCu;
|
|
/* 0238FDF8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t54);
|
|
/* 0238FDF8 */ cpu->r[11] = _t54;
|
|
/* 0238FDFC */ cpu->r[5] = 0x101F0000u;
|
|
/* 0238FE00 */ _t55 = cpu->r[6] + 0x00000004u;
|
|
/* 0238FE00 */ rbrew_write32(cpu->mem, _t55, cpu->r[4]);
|
|
/* 0238FE04 */ _t56 = cpu->r[11] + 0x00000008u;
|
|
/* 0238FE04 */ cpu->r[10] = rbrew_read32(cpu->mem, _t56);
|
|
/* 0238FE08 */ _t57 = cpu->r[5] + 0x00005C3Cu;
|
|
/* 0238FE08 */ cpu->r[7] = rbrew_read32(cpu->mem, _t57);
|
|
/* 0238FE08 */ cpu->r[5] = _t57;
|
|
/* 0238FE0C */ cpu->r[6] = 0x101F0000u;
|
|
/* 0238FE10 */ _t58 = cpu->r[31] + 0x00000088u;
|
|
/* 0238FE10 */ rbrew_write32(cpu->mem, _t58, cpu->r[10]);
|
|
/* 0238FE14 */ cpu->r[6] = cpu->r[6] + 0x00005C4Cu;
|
|
/* 0238FE18 */ _t59 = cpu->r[31] + 0x00000080u;
|
|
/* 0238FE18 */ rbrew_write32(cpu->mem, _t59, cpu->r[3]);
|
|
/* 0238FE1C */ _t60 = cpu->r[6] + 0x00000004u;
|
|
/* 0238FE1C */ cpu->r[9] = rbrew_read32(cpu->mem, _t60);
|
|
/* 0238FE20 */ _t61 = cpu->r[5] + 0x00000004u;
|
|
/* 0238FE20 */ cpu->r[8] = rbrew_read32(cpu->mem, _t61);
|
|
/* 0238FE24 */ _t62 = cpu->r[11] + 0x0000000Cu;
|
|
/* 0238FE24 */ cpu->r[12] = rbrew_read32(cpu->mem, _t62);
|
|
/* 0238FE28 */ _t63 = cpu->r[31] + 0x00000058u;
|
|
/* 0238FE28 */ rbrew_write32(cpu->mem, _t63, cpu->r[10]);
|
|
/* 0238FE2C */ _t64 = cpu->r[31] + 0x00000064u;
|
|
/* 0238FE2C */ rbrew_write32(cpu->mem, _t64, cpu->r[9]);
|
|
/* 0238FE30 */ _t65 = cpu->r[31] + 0x00000090u;
|
|
/* 0238FE30 */ rbrew_write32(cpu->mem, _t65, cpu->r[3]);
|
|
/* 0238FE34 */ _t66 = cpu->r[31] + 0x00000070u;
|
|
/* 0238FE34 */ rbrew_write32(cpu->mem, _t66, cpu->r[7]);
|
|
/* 0238FE38 */ _t67 = cpu->r[11] + 0x00000004u;
|
|
/* 0238FE38 */ cpu->r[4] = rbrew_read32(cpu->mem, _t67);
|
|
/* 0238FE3C */ _t68 = cpu->r[5] + 0x0000000Cu;
|
|
/* 0238FE3C */ cpu->r[11] = rbrew_read32(cpu->mem, _t68);
|
|
/* 0238FE40 */ _t69 = cpu->r[31] + 0x00000074u;
|
|
/* 0238FE40 */ rbrew_write32(cpu->mem, _t69, cpu->r[8]);
|
|
/* 0238FE44 */ _t70 = cpu->r[31] + 0x0000007Cu;
|
|
/* 0238FE44 */ rbrew_write32(cpu->mem, _t70, cpu->r[11]);
|
|
/* 0238FE48 */ _t71 = cpu->r[6] + 0x0000000Cu;
|
|
/* 0238FE48 */ cpu->r[0] = rbrew_read32(cpu->mem, _t71);
|
|
/* 0238FE4C */ _t72 = cpu->r[31] + 0x0000005Cu;
|
|
/* 0238FE4C */ rbrew_write32(cpu->mem, _t72, cpu->r[12]);
|
|
/* 0238FE50 */ _t73 = cpu->r[31] + 0x0000006Cu;
|
|
/* 0238FE50 */ rbrew_write32(cpu->mem, _t73, cpu->r[0]);
|
|
/* 0238FE54 */ _t74 = cpu->r[31] + 0x00000094u;
|
|
/* 0238FE54 */ rbrew_write32(cpu->mem, _t74, cpu->r[4]);
|
|
/* 0238FE58 */ _t75 = cpu->r[31] + 0x00000054u;
|
|
/* 0238FE58 */ rbrew_write32(cpu->mem, _t75, cpu->r[4]);
|
|
/* 0238FE5C */ _t76 = cpu->r[31] + 0x00000084u;
|
|
/* 0238FE5C */ rbrew_write32(cpu->mem, _t76, cpu->r[4]);
|
|
/* 0238FE60 */ _t77 = cpu->r[31] + 0x00000050u;
|
|
/* 0238FE60 */ rbrew_write32(cpu->mem, _t77, cpu->r[3]);
|
|
/* 0238FE64 */ _t78 = cpu->r[31] + 0x0000008Cu;
|
|
/* 0238FE64 */ rbrew_write32(cpu->mem, _t78, cpu->r[12]);
|
|
/* 0238FE68 */ _t79 = cpu->r[31] + 0x000000BCu;
|
|
/* 0238FE68 */ rbrew_write32(cpu->mem, _t79, cpu->r[27]);
|
|
/* 0238FE6C */ cpu->r[11] = 0x101F0000u;
|
|
/* 0238FE70 */ _t80 = cpu->r[5] + 0x00000008u;
|
|
/* 0238FE70 */ cpu->r[9] = rbrew_read32(cpu->mem, _t80);
|
|
/* 0238FE74 */ _t81 = cpu->r[11] + 0x00005C0Cu;
|
|
/* 0238FE74 */ cpu->r[5] = rbrew_read32(cpu->mem, _t81);
|
|
/* 0238FE74 */ cpu->r[11] = _t81;
|
|
/* 0238FE78 */ _t82 = cpu->r[11] + 0x00000004u;
|
|
/* 0238FE78 */ cpu->r[8] = rbrew_read32(cpu->mem, _t82);
|
|
/* 0238FE7C */ _t83 = cpu->r[31] + 0x000000A0u;
|
|
/* 0238FE7C */ rbrew_write32(cpu->mem, _t83, cpu->r[5]);
|
|
/* 0238FE80 */ _t84 = cpu->r[31] + 0x000000A4u;
|
|
/* 0238FE80 */ rbrew_write32(cpu->mem, _t84, cpu->r[8]);
|
|
/* 0238FE84 */ _t85 = cpu->r[31] + 0x00000078u;
|
|
/* 0238FE84 */ rbrew_write32(cpu->mem, _t85, cpu->r[9]);
|
|
/* 0238FE88 */ _t86 = cpu->r[6] + 0x00000000u;
|
|
/* 0238FE88 */ cpu->r[7] = rbrew_read32(cpu->mem, _t86);
|
|
/* 0238FE8C */ _t87 = cpu->r[11] + 0x00000008u;
|
|
/* 0238FE8C */ cpu->r[9] = rbrew_read32(cpu->mem, _t87);
|
|
/* 0238FE90 */ _t88 = cpu->r[31] + 0x00000060u;
|
|
/* 0238FE90 */ rbrew_write32(cpu->mem, _t88, cpu->r[7]);
|
|
/* 0238FE94 */ _t89 = cpu->r[31] + 0x000000A8u;
|
|
/* 0238FE94 */ rbrew_write32(cpu->mem, _t89, cpu->r[9]);
|
|
/* 0238FE98 */ _t90 = cpu->r[31] + 0x00000098u;
|
|
/* 0238FE98 */ rbrew_write32(cpu->mem, _t90, cpu->r[10]);
|
|
/* 0238FE9C */ _t91 = cpu->r[31] + 0x0000009Cu;
|
|
/* 0238FE9C */ rbrew_write32(cpu->mem, _t91, cpu->r[12]);
|
|
/* 0238FEA0 */ _t92 = cpu->r[31] + 0x000000B8u;
|
|
/* 0238FEA0 */ rbrew_write32(cpu->mem, _t92, cpu->r[30]);
|
|
/* 0238FEA4 */ _t93 = cpu->r[31] + 0x000000B0u;
|
|
/* 0238FEA4 */ rbrew_write32(cpu->mem, _t93, cpu->r[29]);
|
|
/* 0238FEA8 */ _t94 = cpu->r[31] + 0x000000B4u;
|
|
/* 0238FEA8 */ rbrew_write32(cpu->mem, _t94, cpu->r[28]);
|
|
/* 0238FEAC */ _t95 = cpu->r[11] + 0x0000000Cu;
|
|
/* 0238FEAC */ cpu->r[0] = rbrew_read32(cpu->mem, _t95);
|
|
/* 0238FEB0 */ _t96 = cpu->r[6] + 0x00000008u;
|
|
/* 0238FEB0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t96);
|
|
/* 0238FEB4 */ cpu->r[3] = cpu->r[31] + 0x000000C0u;
|
|
/* 0238FEB8 */ _t97 = cpu->r[31] + 0x000000ACu;
|
|
/* 0238FEB8 */ rbrew_write32(cpu->mem, _t97, cpu->r[0]);
|
|
/* 0238FEBC */ cpu->r[8] = 0x10080000u;
|
|
/* 0238FEC0 */ _t98 = cpu->r[31] + 0x00000068u;
|
|
/* 0238FEC0 */ rbrew_write32(cpu->mem, _t98, cpu->r[10]);
|
|
/* 0238FEC4 */ cpu->r[11] = 0x10080000u;
|
|
/* 0238FEC8 */ _t99 = cpu->r[8] + 0x000063D0u;
|
|
/* 0238FEC8 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t99);
|
|
/* 0238FECC */ cpu->r[5] = 0x10080000u;
|
|
/* 0238FED0 */ _t100 = cpu->r[11] + 0x000063ECu;
|
|
/* 0238FED0 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t100);
|
|
/* 0238FED4 */ cpu->r[12] = 0x10080000u;
|
|
/* 0238FED8 */ _t101 = cpu->r[5] + 0x0000636Cu;
|
|
/* 0238FED8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t101);
|
|
/* 0238FEDC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0xFFFFFF40u);
|
|
/* 0238FEE0 */ _t102 = cpu->r[12] + 0x000063F0u;
|
|
/* 0238FEE0 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t102);
|
|
/* 0238FEE4 */ _t103 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238FEE4 */ _t104 = _t103 & 0x00000001u;
|
|
/* 0238FEE4 */ if (_t104) goto L_0238FEE8; else goto L_0238FEF8;
|
|
L_0238FEE8: ; // 0x238fee8
|
|
/* 0238FEE8 */ cpu->r[3] = 0x00000010u;
|
|
/* 0238FEEC */ Gambit_fn_02801A78(cpu);
|
|
/* 0238FEF0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238FEF4 */ _t105 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238FEF4 */ _t106 = _t105 & 0x00000001u;
|
|
/* 0238FEF4 */ if (_t106) goto L_0238FF08; else goto L_0238FEF8;
|
|
L_0238FEF8: ; // 0x238fef8
|
|
/* 0238FEF8 */ _t107 = cpu->r[3] + 0x00000004u;
|
|
/* 0238FEF8 */ rbrew_write_f32(cpu->mem, _t107, cpu->f[29]);
|
|
/* 0238FEFC */ _t108 = cpu->r[3] + 0x00000008u;
|
|
/* 0238FEFC */ rbrew_write_f32(cpu->mem, _t108, cpu->f[28]);
|
|
/* 0238FF00 */ _t109 = cpu->r[3] + 0x00000000u;
|
|
/* 0238FF00 */ rbrew_write_f32(cpu->mem, _t109, cpu->f[30]);
|
|
/* 0238FF04 */ _t110 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0238FF04 */ rbrew_write_f32(cpu->mem, _t110, cpu->f[31]);
|
|
L_0238FF08: ; // 0x238ff08
|
|
/* 0238FF08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0xFFFFFF30u);
|
|
/* 0238FF0C */ cpu->r[3] = cpu->r[31] + 0x000000D0u;
|
|
/* 0238FF10 */ _t111 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238FF10 */ _t112 = _t111 & 0x00000001u;
|
|
/* 0238FF10 */ if (_t112) goto L_0238FF14; else goto L_0238FF24;
|
|
L_0238FF14: ; // 0x238ff14
|
|
/* 0238FF14 */ cpu->r[3] = 0x00000010u;
|
|
/* 0238FF18 */ Gambit_fn_02801A78(cpu);
|
|
/* 0238FF1C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238FF20 */ _t113 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238FF20 */ _t114 = _t113 & 0x00000001u;
|
|
/* 0238FF20 */ if (_t114) goto L_0238FF34; else goto L_0238FF24;
|
|
L_0238FF24: ; // 0x238ff24
|
|
/* 0238FF24 */ _t115 = cpu->r[3] + 0x00000004u;
|
|
/* 0238FF24 */ rbrew_write_f32(cpu->mem, _t115, cpu->f[29]);
|
|
/* 0238FF28 */ _t116 = cpu->r[3] + 0x00000008u;
|
|
/* 0238FF28 */ rbrew_write_f32(cpu->mem, _t116, cpu->f[30]);
|
|
/* 0238FF2C */ _t117 = cpu->r[3] + 0x00000000u;
|
|
/* 0238FF2C */ rbrew_write_f32(cpu->mem, _t117, cpu->f[28]);
|
|
/* 0238FF30 */ _t118 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0238FF30 */ rbrew_write_f32(cpu->mem, _t118, cpu->f[31]);
|
|
L_0238FF34: ; // 0x238ff34
|
|
/* 0238FF34 */ cpu->r[12] = 0x10080000u;
|
|
/* 0238FF38 */ cpu->r[6] = 0x101E0000u;
|
|
/* 0238FF3C */ cpu->r[7] = 0x10080000u;
|
|
/* 0238FF40 */ _t119 = cpu->r[12] + 0x000063F8u;
|
|
/* 0238FF40 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t119);
|
|
/* 0238FF44 */ cpu->r[12] = 0x10080000u;
|
|
/* 0238FF48 */ cpu->r[6] = cpu->r[6] + 0x000047FCu;
|
|
/* 0238FF4C */ _t120 = cpu->r[7] + 0x000063F4u;
|
|
/* 0238FF4C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t120);
|
|
/* 0238FF50 */ cpu->r[12] = cpu->r[12] + 0x00006260u;
|
|
/* 0238FF54 */ cpu->r[8] = 0x101E0000u;
|
|
/* 0238FF58 */ _t121 = cpu->r[6] + 0x00000004u;
|
|
/* 0238FF58 */ rbrew_write32(cpu->mem, _t121, cpu->r[12]);
|
|
/* 0238FF5C */ cpu->r[9] = 0x101F0000u;
|
|
/* 0238FF60 */ _t122 = cpu->r[8] + 0x000047F4u;
|
|
/* 0238FF60 */ rbrew_write_f32(cpu->mem, _t122, cpu->f[0]);
|
|
/* 0238FF60 */ cpu->r[8] = _t122;
|
|
/* 0238FF64 */ cpu->r[9] = cpu->r[9] + 0x00005BCCu;
|
|
/* 0238FF68 */ _t123 = cpu->r[8] + 0x00000004u;
|
|
/* 0238FF68 */ rbrew_write_f32(cpu->mem, _t123, cpu->f[13]);
|
|
/* 0238FF6C */ cpu->r[5] = 0x10080000u;
|
|
/* 0238FF70 */ _t124 = cpu->r[9] + 0x00000000u;
|
|
/* 0238FF70 */ cpu->r[11] = rbrew_read32(cpu->mem, _t124);
|
|
/* 0238FF74 */ cpu->r[5] = cpu->r[5] + 0x000063FCu;
|
|
/* 0238FF78 */ _t125 = cpu->r[9] + 0x00000008u;
|
|
/* 0238FF78 */ cpu->r[7] = rbrew_read32(cpu->mem, _t125);
|
|
/* 0238FF7C */ _t126 = cpu->r[9] + 0x00000004u;
|
|
/* 0238FF7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t126);
|
|
/* 0238FF80 */ _t127 = cpu->r[9] + 0x0000000Cu;
|
|
/* 0238FF80 */ cpu->r[9] = rbrew_read32(cpu->mem, _t127);
|
|
/* 0238FF84 */ _t128 = cpu->r[31] + 0x000000E0u;
|
|
/* 0238FF84 */ rbrew_write32(cpu->mem, _t128, cpu->r[11]);
|
|
/* 0238FF88 */ _t129 = cpu->r[31] + 0x000000E4u;
|
|
/* 0238FF88 */ rbrew_write32(cpu->mem, _t129, cpu->r[0]);
|
|
/* 0238FF8C */ _t130 = cpu->r[31] + 0x000000E8u;
|
|
/* 0238FF8C */ rbrew_write32(cpu->mem, _t130, cpu->r[7]);
|
|
/* 0238FF90 */ _t131 = cpu->r[31] + 0x000000ECu;
|
|
/* 0238FF90 */ rbrew_write32(cpu->mem, _t131, cpu->r[9]);
|
|
/* 0238FF94 */ _t132 = cpu->r[6] + 0x00000000u;
|
|
/* 0238FF94 */ rbrew_write32(cpu->mem, _t132, cpu->r[5]);
|
|
/* 0238FF98 */ /* nop */
|
|
/* 0238FF9C */ _t133 = cpu->r[1] + 0x00000038u;
|
|
/* 0238FF9C */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t133);
|
|
/* 0238FFA0 */ _t134 = cpu->r[1] + 0x00000048u;
|
|
/* 0238FFA0 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t134);
|
|
/* 0238FFA4 */ _t135 = cpu->r[1] + 0x00000030u;
|
|
/* 0238FFA4 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t135);
|
|
/* 0238FFA8 */ _t136 = cpu->r[1] + 0x00000040u;
|
|
/* 0238FFA8 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t136);
|
|
/* 0238FFAC */ _t137 = cpu->r[1] + 0x00000028u;
|
|
/* 0238FFAC */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t137);
|
|
/* 0238FFB0 */ _t138 = cpu->r[1] + 0x00000058u;
|
|
/* 0238FFB0 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t138);
|
|
/* 0238FFB4 */ _t139 = cpu->r[1] + 0x00000020u;
|
|
/* 0238FFB4 */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t139);
|
|
/* 0238FFB8 */ _t140 = cpu->r[1] + 0x00000050u;
|
|
/* 0238FFB8 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t140);
|
|
/* 0238FFBC */ _t141 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0238FFBC */ _t142 = _t141 & 0x00000001u;
|
|
/* 0238FFBC */ if (_t142) goto L_0238FFC0; // else: addr-0 trap, fall-through
|
|
L_0238FFC0: ; // 0x238ffc0
|
|
/* 0238FFC0 */ _t143 = cpu->r[1] + 0x00000064u;
|
|
/* 0238FFC0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t143);
|
|
/* 0238FFC4 */ cpu->lr = cpu->r[0];
|
|
/* 0238FFC8 */ cpu->r[1] = cpu->r[1] + 0x00000060u;
|
|
/* 0238FFCC */ return;
|
|
}
|
|
|
|
// fn_0238FFD0 @ 0x238ffd0
|
|
void Gambit_fn_0238FFD0(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_0238FFD0: ; // 0x238ffd0
|
|
/* 0238FFD0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238FFD4 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238FFD4 */ _t1 = _t0 & 0x00000001u;
|
|
/* 0238FFD4 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0238FFD4 */ goto L_0238FFD8;
|
|
L_0238FFD8: ; // 0x238ffd8
|
|
/* 0238FFD8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0238FFD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0238FFDC */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238FFDC */ _t3 = _t2 & 0x00000001u;
|
|
/* 0238FFDC */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0238FFDC */ goto L_0238FFE0;
|
|
L_0238FFE0: ; // 0x238ffe0
|
|
/* 0238FFE0 */ 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_0238FFE4 @ 0x238ffe4
|
|
void Gambit_fn_0238FFE4(CPUState* cpu) {
|
|
L_0238FFE4: ; // 0x238ffe4
|
|
/* 0238FFE4 */ return;
|
|
}
|
|
|
|
// fn_0238FFE8 @ 0x238ffe8
|
|
void Gambit_fn_0238FFE8(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_0238FFE8: ; // 0x238ffe8
|
|
/* 0238FFE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0238FFEC */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238FFEC */ _t1 = _t0 & 0x00000001u;
|
|
/* 0238FFEC */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0238FFEC */ goto L_0238FFF0;
|
|
L_0238FFF0: ; // 0x238fff0
|
|
/* 0238FFF0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0238FFF0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0238FFF4 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0238FFF4 */ _t3 = _t2 & 0x00000001u;
|
|
/* 0238FFF4 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0238FFF4 */ goto L_0238FFF8;
|
|
L_0238FFF8: ; // 0x238fff8
|
|
/* 0238FFF8 */ 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_0238FFFC @ 0x238fffc
|
|
void Gambit_fn_0238FFFC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_0238FFFC: ; // 0x238fffc
|
|
/* 0238FFFC */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 0238FFFC */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02390000 */ _t1 = cpu->r[3] + 0x00000008u;
|
|
/* 02390000 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02390004 */ cpu->r[12] = cpu->r[11] + cpu->r[12];
|
|
/* 02390008 */ cpu->r[11] = 0x10110000u;
|
|
/* 0239000C */ _t2 = cpu->r[11] + 0x00007399u;
|
|
/* 0239000C */ cpu->r[0] = rbrew_read8(cpu->mem, _t2);
|
|
/* 02390010 */ _t3 = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 02390010 */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[0]);
|
|
/* 02390014 */ return;
|
|
}
|
|
|
|
// fn_02390018 @ 0x2390018
|
|
void Gambit_fn_02390018(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_02390018: ; // 0x2390018
|
|
/* 02390018 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239001C */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239001C */ _t1 = _t0 & 0x00000001u;
|
|
/* 0239001C */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0239001C */ goto L_02390020;
|
|
L_02390020: ; // 0x2390020
|
|
/* 02390020 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02390020 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02390024 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02390024 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02390024 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02390024 */ goto L_02390028;
|
|
L_02390028: ; // 0x2390028
|
|
/* 02390028 */ 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_0239002C @ 0x239002c
|
|
void Gambit_fn_0239002C(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_0239002C: ; // 0x239002c
|
|
/* 0239002C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02390030 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02390030 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02390030 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02390030 */ goto L_02390034;
|
|
L_02390034: ; // 0x2390034
|
|
/* 02390034 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02390034 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02390038 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02390038 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02390038 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02390038 */ goto L_0239003C;
|
|
L_0239003C: ; // 0x239003c
|
|
/* 0239003C */ 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_02390040 @ 0x2390040
|
|
void Gambit_fn_02390040(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_02390040: ; // 0x2390040
|
|
/* 02390040 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02390044 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02390044 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02390044 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02390044 */ goto L_02390048;
|
|
L_02390048: ; // 0x2390048
|
|
/* 02390048 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02390048 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0239004C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239004C */ _t3 = _t2 & 0x00000001u;
|
|
/* 0239004C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0239004C */ goto L_02390050;
|
|
L_02390050: ; // 0x2390050
|
|
/* 02390050 */ 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_02390054 @ 0x2390054
|
|
void Gambit_fn_02390054(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_02390054: ; // 0x2390054
|
|
/* 02390054 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02390058 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02390058 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02390058 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02390058 */ goto L_0239005C;
|
|
L_0239005C: ; // 0x239005c
|
|
/* 0239005C */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0239005C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02390060 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02390060 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02390060 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02390060 */ goto L_02390064;
|
|
L_02390064: ; // 0x2390064
|
|
/* 02390064 */ 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_02390068 @ 0x2390068
|
|
void Gambit_fn_02390068(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_02390068: ; // 0x2390068
|
|
/* 02390068 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239006C */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239006C */ _t1 = _t0 & 0x00000001u;
|
|
/* 0239006C */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0239006C */ goto L_02390070;
|
|
L_02390070: ; // 0x2390070
|
|
/* 02390070 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02390070 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02390074 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02390074 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02390074 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02390074 */ goto L_02390078;
|
|
L_02390078: ; // 0x2390078
|
|
/* 02390078 */ 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_0239007C @ 0x239007c
|
|
void Gambit_fn_0239007C(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_0239007C: ; // 0x239007c
|
|
/* 0239007C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02390080 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02390080 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02390080 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02390080 */ goto L_02390084;
|
|
L_02390084: ; // 0x2390084
|
|
/* 02390084 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02390084 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02390088 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02390088 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02390088 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02390088 */ goto L_0239008C;
|
|
L_0239008C: ; // 0x239008c
|
|
/* 0239008C */ 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_02390090 @ 0x2390090
|
|
void Gambit_fn_02390090(CPUState* cpu) {
|
|
L_02390090: ; // 0x2390090
|
|
/* 02390090 */ cpu->r[3] = 0x00000000u;
|
|
/* 02390094 */ return;
|
|
}
|
|
|
|
// fn_02390098 @ 0x2390098
|
|
void Gambit_fn_02390098(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _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_02390098: ; // 0x2390098
|
|
/* 02390098 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 02390098 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02390098 */ cpu->r[1] = _t0;
|
|
/* 0239009C */ cpu->r[0] = cpu->lr;
|
|
/* 023900A0 */ /* nop */
|
|
/* 023900A4 */ cpu->r[31] = cpu->r[3];
|
|
/* 023900A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 023900A8 */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 023900A8 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 023900AC */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023900AC */ _t3 = _t2 & 0x00000001u;
|
|
/* 023900AC */ if (_t3) goto L_023900B0; else goto L_023900C0;
|
|
L_023900B0: ; // 0x23900b0
|
|
/* 023900B0 */ cpu->r[3] = 0x00000094u;
|
|
/* 023900B4 */ Gambit_fn_02801A78(cpu);
|
|
/* 023900B8 */ cpu->r[31] = cpu->r[3];
|
|
/* 023900B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 023900BC */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023900BC */ _t5 = _t4 & 0x00000001u;
|
|
/* 023900BC */ if (_t5) goto L_02390178; else goto L_023900C0;
|
|
L_023900C0: ; // 0x23900c0
|
|
/* 023900C0 */ cpu->r[28] = 0x00000000u;
|
|
/* 023900C4 */ cpu->r[27] = cpu->r[31] + 0x00000004u;
|
|
/* 023900C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 023900C8 */ _t6 = cpu->r[31] + 0x00000000u;
|
|
/* 023900C8 */ rbrew_write32(cpu->mem, _t6, cpu->r[28]);
|
|
/* 023900CC */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023900CC */ _t8 = _t7 & 0x00000001u;
|
|
/* 023900CC */ if (_t8) goto L_023900D0; else goto L_023900E0;
|
|
L_023900D0: ; // 0x23900d0
|
|
/* 023900D0 */ cpu->r[3] = 0x0000008Cu;
|
|
/* 023900D4 */ Gambit_fn_02801A78(cpu);
|
|
/* 023900D8 */ cpu->r[27] = cpu->r[3];
|
|
/* 023900D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 023900DC */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023900DC */ _t10 = _t9 & 0x00000001u;
|
|
/* 023900DC */ if (_t10) goto L_02390174; else goto L_023900E0;
|
|
L_023900E0: ; // 0x23900e0
|
|
/* 023900E0 */ cpu->r[29] = cpu->r[27];
|
|
/* 023900E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 023900E4 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023900E4 */ _t12 = _t11 & 0x00000001u;
|
|
/* 023900E4 */ if (_t12) goto L_023900E8; else goto L_023900F8;
|
|
L_023900E8: ; // 0x23900e8
|
|
/* 023900E8 */ cpu->r[3] = 0x0000008Cu;
|
|
/* 023900EC */ Gambit_fn_02801A78(cpu);
|
|
/* 023900F0 */ cpu->r[29] = cpu->r[3];
|
|
/* 023900F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 023900F4 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023900F4 */ _t14 = _t13 & 0x00000001u;
|
|
/* 023900F4 */ if (_t14) goto L_02390168; else goto L_023900F8;
|
|
L_023900F8: ; // 0x23900f8
|
|
/* 023900F8 */ cpu->r[3] = cpu->r[29];
|
|
/* 023900F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023900FC */ cpu->r[30] = 0x10110000u;
|
|
/* 02390100 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02390100 */ _t16 = _t15 & 0x00000001u;
|
|
/* 02390100 */ if (_t16) goto L_02390104; else goto L_02390130;
|
|
L_02390104: ; // 0x2390104
|
|
/* 02390104 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02390108 */ Gambit_fn_02801A78(cpu);
|
|
/* 0239010C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02390110 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02390110 */ _t18 = _t17 & 0x00000001u;
|
|
/* 02390110 */ if (_t18) goto L_02390114; else goto L_02390130;
|
|
L_02390114: ; // 0x2390114
|
|
/* 02390114 */ cpu->r[11] = 0x10080000u;
|
|
/* 02390118 */ _t19 = cpu->r[30] + 0x00007399u;
|
|
/* 02390118 */ cpu->r[0] = rbrew_read8(cpu->mem, _t19);
|
|
/* 0239011C */ cpu->r[11] = cpu->r[11] + 0x00006478u;
|
|
/* 02390120 */ _t20 = cpu->r[29] + 0x00000000u;
|
|
/* 02390120 */ cpu->r[12] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02390124 */ _t21 = cpu->r[29] + 0x00000004u;
|
|
/* 02390124 */ rbrew_write32(cpu->mem, _t21, cpu->r[11]);
|
|
/* 02390128 */ _t22 = cpu->r[12] + 0x00000000u;
|
|
/* 02390128 */ rbrew_write8(cpu->mem, _t22, (uint8_t)cpu->r[0]);
|
|
/* 0239012C */ goto L_02390168;
|
|
L_02390130: ; // 0x2390130
|
|
/* 02390130 */ cpu->r[9] = 0x10080000u;
|
|
/* 02390134 */ cpu->r[8] = cpu->r[29] + 0x0000000Cu;
|
|
/* 02390138 */ cpu->r[9] = cpu->r[9] + 0x00006460u;
|
|
/* 0239013C */ _t23 = cpu->r[3] + 0x00000000u;
|
|
/* 0239013C */ rbrew_write32(cpu->mem, _t23, cpu->r[8]);
|
|
/* 02390140 */ cpu->r[10] = 0x00000080u;
|
|
/* 02390144 */ _t24 = cpu->r[3] + 0x00000004u;
|
|
/* 02390144 */ rbrew_write32(cpu->mem, _t24, cpu->r[9]);
|
|
/* 02390148 */ _t25 = cpu->r[3] + 0x00000008u;
|
|
/* 02390148 */ rbrew_write32(cpu->mem, _t25, cpu->r[10]);
|
|
/* 0239014C */ _t26 = cpu->r[30] + 0x00007399u;
|
|
/* 0239014C */ cpu->r[0] = rbrew_read8(cpu->mem, _t26);
|
|
/* 02390150 */ cpu->r[11] = 0x10080000u;
|
|
/* 02390154 */ _t27 = cpu->r[29] + 0x00000000u;
|
|
/* 02390154 */ cpu->r[12] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02390158 */ cpu->r[11] = cpu->r[11] + 0x00006478u;
|
|
/* 0239015C */ _t28 = cpu->r[29] + 0x0000008Bu;
|
|
/* 0239015C */ rbrew_write8(cpu->mem, _t28, (uint8_t)cpu->r[0]);
|
|
/* 02390160 */ _t29 = cpu->r[29] + 0x00000004u;
|
|
/* 02390160 */ rbrew_write32(cpu->mem, _t29, cpu->r[11]);
|
|
/* 02390164 */ _t30 = cpu->r[12] + 0x00000000u;
|
|
/* 02390164 */ rbrew_write8(cpu->mem, _t30, (uint8_t)cpu->r[0]);
|
|
L_02390168: ; // 0x2390168
|
|
/* 02390168 */ cpu->r[0] = 0x10080000u;
|
|
/* 0239016C */ cpu->r[0] = cpu->r[0] + 0x00006490u;
|
|
/* 02390170 */ _t31 = cpu->r[27] + 0x00000004u;
|
|
/* 02390170 */ rbrew_write32(cpu->mem, _t31, cpu->r[0]);
|
|
L_02390174: ; // 0x2390174
|
|
/* 02390174 */ _t32 = cpu->r[31] + 0x00000090u;
|
|
/* 02390174 */ rbrew_write8(cpu->mem, _t32, (uint8_t)cpu->r[28]);
|
|
L_02390178: ; // 0x2390178
|
|
/* 02390178 */ cpu->r[3] = cpu->r[31];
|
|
/* 0239017C */ /* nop */
|
|
/* 02390180 */ _t33 = cpu->r[1] + 0x00000024u;
|
|
/* 02390180 */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02390184 */ cpu->lr = cpu->r[0];
|
|
/* 02390188 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 0239018C */ return;
|
|
}
|
|
|
|
// fn_02390190 @ 0x2390190
|
|
void Gambit_fn_02390190(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_02390190: ; // 0x2390190
|
|
/* 02390190 */ cpu->r[0] = cpu->lr;
|
|
/* 02390194 */ cpu->r[12] = 0x10080000u;
|
|
/* 02390198 */ cpu->r[12] = cpu->r[12] + 0x00006448u;
|
|
/* 0239019C */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 0239019C */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 023901A0 */ _t1 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 023901A0 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 023901A0 */ cpu->r[1] = _t1;
|
|
/* 023901A4 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 023901A4 */ rbrew_write32(cpu->mem, _t2, cpu->r[4]);
|
|
/* 023901A8 */ cpu->r[4] = 0x00000000u;
|
|
/* 023901AC */ _t3 = cpu->r[3] + 0x000000A4u;
|
|
/* 023901AC */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 023901B0 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 023901B4 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023901B4 */ rbrew_write32(cpu->mem, _t4, cpu->r[12]);
|
|
/* 023901B8 */ Gambit_fn_029843D4(cpu);
|
|
/* 023901BC */ /* nop */
|
|
/* 023901C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0xFFFFFFFFu);
|
|
/* 023901C4 */ cpu->r[0] = 0x00000000u;
|
|
/* 023901C8 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023901C8 */ _t6 = _t5 & 0x00000001u;
|
|
/* 023901C8 */ if (_t6) goto L_023901DC; else goto L_023901CC;
|
|
L_023901CC: ; // 0x23901cc
|
|
/* 023901CC */ /* nop */
|
|
/* 023901D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0xFFFFFFFFu);
|
|
/* 023901D4 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023901D4 */ _t8 = _t7 & 0x00000001u;
|
|
/* 023901D4 */ if (_t8) goto L_023901DC; else goto L_023901D8;
|
|
L_023901D8: ; // 0x23901d8
|
|
/* 023901D8 */ cpu->r[0] = 0x00000001u;
|
|
L_023901DC: ; // 0x23901dc
|
|
/* 023901DC */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 023901DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 023901E0 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023901E0 */ _t10 = _t9 & 0x00000001u;
|
|
/* 023901E0 */ if (_t10) goto L_02390208; else goto L_023901E4;
|
|
L_023901E4: ; // 0x23901e4
|
|
/* 023901E4 */ cpu->r[3] = 0x00000094u;
|
|
/* 023901E8 */ Gambit_fn_02801A78(cpu);
|
|
/* 023901EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023901F0 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023901F0 */ _t12 = _t11 & 0x00000001u;
|
|
/* 023901F0 */ if (_t12) goto L_02390208; else goto L_023901F4;
|
|
L_023901F4: ; // 0x23901f4
|
|
/* 023901F4 */ Gambit_fn_02390098(cpu);
|
|
/* 023901F8 */ _t13 = cpu->r[1] + 0x00000014u;
|
|
/* 023901F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 023901FC */ cpu->lr = cpu->r[0];
|
|
/* 02390200 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02390204 */ return;
|
|
L_02390208: ; // 0x2390208
|
|
/* 02390208 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02390208 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0239020C */ cpu->lr = cpu->r[0];
|
|
/* 02390210 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02390214 */ cpu->r[3] = 0x00000000u;
|
|
/* 02390218 */ return;
|
|
}
|
|
|
|
// fn_023901A0 @ 0x23901a0
|
|
void Gambit_fn_023901A0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_023901A0: ; // 0x23901a0
|
|
/* 023901A0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 023901A0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 023901A0 */ cpu->r[1] = _t0;
|
|
/* 023901A4 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 023901A4 */ rbrew_write32(cpu->mem, _t1, cpu->r[4]);
|
|
/* 023901A8 */ cpu->r[4] = 0x00000000u;
|
|
/* 023901AC */ _t2 = cpu->r[3] + 0x000000A4u;
|
|
/* 023901AC */ cpu->r[3] = rbrew_read32(cpu->mem, _t2);
|
|
/* 023901B0 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 023901B4 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023901B4 */ rbrew_write32(cpu->mem, _t3, cpu->r[12]);
|
|
/* 023901B8 */ Gambit_fn_029843D4(cpu);
|
|
/* 023901BC */ /* nop */
|
|
/* 023901C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0xFFFFFFFFu);
|
|
/* 023901C4 */ cpu->r[0] = 0x00000000u;
|
|
/* 023901C8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023901C8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 023901C8 */ if (_t5) goto L_023901DC; else goto L_023901CC;
|
|
L_023901CC: ; // 0x23901cc
|
|
/* 023901CC */ /* nop */
|
|
/* 023901D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0xFFFFFFFFu);
|
|
/* 023901D4 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023901D4 */ _t7 = _t6 & 0x00000001u;
|
|
/* 023901D4 */ if (_t7) goto L_023901DC; else goto L_023901D8;
|
|
L_023901D8: ; // 0x23901d8
|
|
/* 023901D8 */ cpu->r[0] = 0x00000001u;
|
|
L_023901DC: ; // 0x23901dc
|
|
/* 023901DC */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 023901DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 023901E0 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023901E0 */ _t9 = _t8 & 0x00000001u;
|
|
/* 023901E0 */ if (_t9) goto L_02390208; else goto L_023901E4;
|
|
L_023901E4: ; // 0x23901e4
|
|
/* 023901E4 */ cpu->r[3] = 0x00000094u;
|
|
/* 023901E8 */ Gambit_fn_02801A78(cpu);
|
|
/* 023901EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023901F0 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023901F0 */ _t11 = _t10 & 0x00000001u;
|
|
/* 023901F0 */ if (_t11) goto L_02390208; else goto L_023901F4;
|
|
L_023901F4: ; // 0x23901f4
|
|
/* 023901F4 */ Gambit_fn_02390098(cpu);
|
|
/* 023901F8 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 023901F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 023901FC */ cpu->lr = cpu->r[0];
|
|
/* 02390200 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02390204 */ return;
|
|
L_02390208: ; // 0x2390208
|
|
/* 02390208 */ _t13 = cpu->r[1] + 0x00000014u;
|
|
/* 02390208 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0239020C */ cpu->lr = cpu->r[0];
|
|
/* 02390210 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02390214 */ cpu->r[3] = 0x00000000u;
|
|
/* 02390218 */ return;
|
|
}
|
|
|
|
// fn_0239021C @ 0x239021c
|
|
void Gambit_fn_0239021C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _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_0239021C: ; // 0x239021c
|
|
/* 0239021C */ cpu->r[0] = cpu->lr;
|
|
/* 02390220 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 02390220 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02390220 */ cpu->r[1] = _t0;
|
|
/* 02390224 */ _t1 = cpu->r[1] + 0x00000018u;
|
|
/* 02390224 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02390228 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02390228 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0239022C */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 0239022C */ rbrew_write32(cpu->mem, _t3, cpu->r[28]);
|
|
/* 02390230 */ cpu->r[28] = cpu->r[3];
|
|
/* 02390234 */ cpu->r[3] = 0x00000014u;
|
|
/* 02390238 */ cpu->r[30] = cpu->r[4];
|
|
/* 0239023C */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 0239023C */ rbrew_write32(cpu->mem, _t4, cpu->r[29]);
|
|
/* 02390240 */ cpu->r[31] = cpu->r[5];
|
|
/* 02390244 */ _t5 = cpu->r[1] + 0x00000024u;
|
|
/* 02390244 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02390248 */ Gambit_fn_02801A78(cpu);
|
|
/* 0239024C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02390250 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02390250 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02390250 */ if (_t7) goto L_02390258; else goto L_02390254;
|
|
L_02390254: ; // 0x2390254
|
|
/* 02390254 */ Gambit_fn_027C6158(cpu);
|
|
L_02390258: ; // 0x2390258
|
|
/* 02390258 */ _t8 = cpu->r[28] + 0x00000000u;
|
|
/* 02390258 */ rbrew_write32(cpu->mem, _t8, cpu->r[3]);
|
|
/* 0239025C */ cpu->r[7] = 0x10080000u;
|
|
/* 02390260 */ _t9 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02390260 */ rbrew_write32(cpu->mem, _t9, cpu->r[30]);
|
|
/* 02390264 */ _t10 = cpu->r[28] + 0x00000004u;
|
|
/* 02390264 */ cpu->r[29] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02390268 */ cpu->r[7] = cpu->r[7] + 0x00006448u;
|
|
/* 0239026C */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239026C */ rbrew_write32(cpu->mem, _t11, cpu->r[7]);
|
|
/* 02390270 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02390274 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 02390274 */ rbrew_write32(cpu->mem, _t12, cpu->r[31]);
|
|
/* 02390278 */ Gambit_fn_02393AA4(cpu);
|
|
/* 0239027C */ cpu->r[31] = 0x10110000u;
|
|
/* 02390280 */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 02390280 */ cpu->r[11] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02390284 */ _t14 = cpu->r[31] + 0x00007399u;
|
|
/* 02390284 */ cpu->r[31] = rbrew_read8(cpu->mem, _t14);
|
|
/* 02390288 */ _t15 = cpu->r[11] + 0x00000000u;
|
|
/* 02390288 */ cpu->r[8] = rbrew_read8(cpu->mem, _t15);
|
|
/* 0239028C */ cpu->r[30] = 0x00000000u;
|
|
/* 02390290 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[31]);
|
|
/* 02390294 */ cpu->r[0] = 0x00080000u;
|
|
/* 02390298 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02390298 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02390298 */ if (_t17) goto L_023902C0; else goto L_0239029C;
|
|
L_0239029C: ; // 0x239029c
|
|
/* 0239029C */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 023902A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[0]);
|
|
/* 023902A4 */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 023902A8 */ _t18 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 023902A8 */ _t19 = _t18 & 0x00000001u;
|
|
/* 023902A8 */ if (_t19) goto L_023902BC; else goto L_023902AC;
|
|
L_023902AC: ; // 0x23902ac
|
|
/* 023902AC */ _t20 = cpu->r[11] + 0x00000000u;
|
|
/* 023902AC */ cpu->r[9] = rbrew_read8(cpu->mem, _t20);
|
|
/* 023902B0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[31]);
|
|
/* 023902B4 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023902B4 */ _t22 = _t21 & 0x00000001u;
|
|
/* 023902B4 */ if (_t22) goto L_023902B8; else goto L_0239029C;
|
|
L_023902B8: ; // 0x23902b8
|
|
/* 023902B8 */ goto L_023902C0;
|
|
L_023902BC: ; // 0x23902bc
|
|
/* 023902BC */ cpu->r[30] = 0x00000000u;
|
|
L_023902C0: ; // 0x23902c0
|
|
/* 023902C0 */ _t23 = cpu->r[28] + 0x0000000Cu;
|
|
/* 023902C0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t23);
|
|
/* 023902C4 */ _t24 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023902C4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t24);
|
|
/* 023902C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[12]);
|
|
/* 023902CC */ _t25 = cpu->r[10] + 0x00000014u;
|
|
/* 023902CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 023902D0 */ _t26 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 023902D0 */ _t27 = _t26 & 0x00000001u;
|
|
/* 023902D0 */ if (_t27) goto L_023902D8; else goto L_023902D4;
|
|
L_023902D4: ; // 0x23902d4
|
|
/* 023902D4 */ cpu->r[30] = cpu->r[12] + 0xFFFFFFFFu;
|
|
L_023902D8: ; // 0x23902d8
|
|
/* 023902D8 */ cpu->ctr = cpu->r[0];
|
|
/* 023902DC */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 023902E0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 023902E4 */ _t28 = cpu->r[1] + 0x00000008u;
|
|
/* 023902E4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t28);
|
|
/* 023902E8 */ cpu->r[6] = 0x00000000u;
|
|
/* 023902EC */ cpu->r[5] = cpu->r[30];
|
|
/* 023902F0 */ cpu->r[3] = cpu->r[29];
|
|
/* 023902F4 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 023902F8 */ _t29 = cpu->r[29] + cpu->r[30];
|
|
/* 023902F8 */ rbrew_write8(cpu->mem, _t29, (uint8_t)cpu->r[31]);
|
|
/* 023902FC */ _t30 = cpu->r[1] + 0x00000010u;
|
|
/* 023902FC */ cpu->r[28] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02390300 */ _t31 = cpu->r[1] + 0x00000014u;
|
|
/* 02390300 */ cpu->r[29] = rbrew_read32(cpu->mem, _t31);
|
|
/* 02390304 */ _t32 = cpu->r[1] + 0x00000024u;
|
|
/* 02390304 */ cpu->r[0] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02390308 */ _t33 = cpu->r[1] + 0x00000018u;
|
|
/* 02390308 */ cpu->r[30] = rbrew_read32(cpu->mem, _t33);
|
|
/* 0239030C */ cpu->lr = cpu->r[0];
|
|
/* 02390310 */ _t34 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02390310 */ cpu->r[31] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02390314 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 02390318 */ return;
|
|
}
|
|
|
|
// fn_02390220 @ 0x2390220
|
|
void Gambit_fn_02390220(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _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_02390220: ; // 0x2390220
|
|
/* 02390220 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 02390220 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02390220 */ cpu->r[1] = _t0;
|
|
/* 02390224 */ _t1 = cpu->r[1] + 0x00000018u;
|
|
/* 02390224 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02390228 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02390228 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0239022C */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 0239022C */ rbrew_write32(cpu->mem, _t3, cpu->r[28]);
|
|
/* 02390230 */ cpu->r[28] = cpu->r[3];
|
|
/* 02390234 */ cpu->r[3] = 0x00000014u;
|
|
/* 02390238 */ cpu->r[30] = cpu->r[4];
|
|
/* 0239023C */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 0239023C */ rbrew_write32(cpu->mem, _t4, cpu->r[29]);
|
|
/* 02390240 */ cpu->r[31] = cpu->r[5];
|
|
/* 02390244 */ _t5 = cpu->r[1] + 0x00000024u;
|
|
/* 02390244 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02390248 */ Gambit_fn_02801A78(cpu);
|
|
/* 0239024C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02390250 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02390250 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02390250 */ if (_t7) goto L_02390258; else goto L_02390254;
|
|
L_02390254: ; // 0x2390254
|
|
/* 02390254 */ Gambit_fn_027C6158(cpu);
|
|
L_02390258: ; // 0x2390258
|
|
/* 02390258 */ _t8 = cpu->r[28] + 0x00000000u;
|
|
/* 02390258 */ rbrew_write32(cpu->mem, _t8, cpu->r[3]);
|
|
/* 0239025C */ cpu->r[7] = 0x10080000u;
|
|
/* 02390260 */ _t9 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02390260 */ rbrew_write32(cpu->mem, _t9, cpu->r[30]);
|
|
/* 02390264 */ _t10 = cpu->r[28] + 0x00000004u;
|
|
/* 02390264 */ cpu->r[29] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02390268 */ cpu->r[7] = cpu->r[7] + 0x00006448u;
|
|
/* 0239026C */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239026C */ rbrew_write32(cpu->mem, _t11, cpu->r[7]);
|
|
/* 02390270 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02390274 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 02390274 */ rbrew_write32(cpu->mem, _t12, cpu->r[31]);
|
|
/* 02390278 */ Gambit_fn_02393AA4(cpu);
|
|
/* 0239027C */ cpu->r[31] = 0x10110000u;
|
|
/* 02390280 */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 02390280 */ cpu->r[11] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02390284 */ _t14 = cpu->r[31] + 0x00007399u;
|
|
/* 02390284 */ cpu->r[31] = rbrew_read8(cpu->mem, _t14);
|
|
/* 02390288 */ _t15 = cpu->r[11] + 0x00000000u;
|
|
/* 02390288 */ cpu->r[8] = rbrew_read8(cpu->mem, _t15);
|
|
/* 0239028C */ cpu->r[30] = 0x00000000u;
|
|
/* 02390290 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[31]);
|
|
/* 02390294 */ cpu->r[0] = 0x00080000u;
|
|
/* 02390298 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02390298 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02390298 */ if (_t17) goto L_023902C0; else goto L_0239029C;
|
|
L_0239029C: ; // 0x239029c
|
|
/* 0239029C */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 023902A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[0]);
|
|
/* 023902A4 */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 023902A8 */ _t18 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 023902A8 */ _t19 = _t18 & 0x00000001u;
|
|
/* 023902A8 */ if (_t19) goto L_023902BC; else goto L_023902AC;
|
|
L_023902AC: ; // 0x23902ac
|
|
/* 023902AC */ _t20 = cpu->r[11] + 0x00000000u;
|
|
/* 023902AC */ cpu->r[9] = rbrew_read8(cpu->mem, _t20);
|
|
/* 023902B0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[31]);
|
|
/* 023902B4 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023902B4 */ _t22 = _t21 & 0x00000001u;
|
|
/* 023902B4 */ if (_t22) goto L_023902B8; else goto L_0239029C;
|
|
L_023902B8: ; // 0x23902b8
|
|
/* 023902B8 */ goto L_023902C0;
|
|
L_023902BC: ; // 0x23902bc
|
|
/* 023902BC */ cpu->r[30] = 0x00000000u;
|
|
L_023902C0: ; // 0x23902c0
|
|
/* 023902C0 */ _t23 = cpu->r[28] + 0x0000000Cu;
|
|
/* 023902C0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t23);
|
|
/* 023902C4 */ _t24 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023902C4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t24);
|
|
/* 023902C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[12]);
|
|
/* 023902CC */ _t25 = cpu->r[10] + 0x00000014u;
|
|
/* 023902CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 023902D0 */ _t26 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 023902D0 */ _t27 = _t26 & 0x00000001u;
|
|
/* 023902D0 */ if (_t27) goto L_023902D8; else goto L_023902D4;
|
|
L_023902D4: ; // 0x23902d4
|
|
/* 023902D4 */ cpu->r[30] = cpu->r[12] + 0xFFFFFFFFu;
|
|
L_023902D8: ; // 0x23902d8
|
|
/* 023902D8 */ cpu->ctr = cpu->r[0];
|
|
/* 023902DC */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 023902E0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 023902E4 */ _t28 = cpu->r[1] + 0x00000008u;
|
|
/* 023902E4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t28);
|
|
/* 023902E8 */ cpu->r[6] = 0x00000000u;
|
|
/* 023902EC */ cpu->r[5] = cpu->r[30];
|
|
/* 023902F0 */ cpu->r[3] = cpu->r[29];
|
|
/* 023902F4 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 023902F8 */ _t29 = cpu->r[29] + cpu->r[30];
|
|
/* 023902F8 */ rbrew_write8(cpu->mem, _t29, (uint8_t)cpu->r[31]);
|
|
/* 023902FC */ _t30 = cpu->r[1] + 0x00000010u;
|
|
/* 023902FC */ cpu->r[28] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02390300 */ _t31 = cpu->r[1] + 0x00000014u;
|
|
/* 02390300 */ cpu->r[29] = rbrew_read32(cpu->mem, _t31);
|
|
/* 02390304 */ _t32 = cpu->r[1] + 0x00000024u;
|
|
/* 02390304 */ cpu->r[0] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02390308 */ _t33 = cpu->r[1] + 0x00000018u;
|
|
/* 02390308 */ cpu->r[30] = rbrew_read32(cpu->mem, _t33);
|
|
/* 0239030C */ cpu->lr = cpu->r[0];
|
|
/* 02390310 */ _t34 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02390310 */ cpu->r[31] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02390314 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 02390318 */ return;
|
|
}
|
|
|
|
// fn_0239031C @ 0x239031c
|
|
void Gambit_fn_0239031C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0239031C: ; // 0x239031c
|
|
/* 0239031C */ cpu->r[0] = cpu->lr;
|
|
/* 02390320 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02390320 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02390320 */ cpu->r[1] = _t0;
|
|
/* 02390324 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02390324 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02390328 */ cpu->r[31] = cpu->r[3];
|
|
/* 0239032C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0239032C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02390330 */ _t3 = cpu->r[31] + 0x00000000u;
|
|
/* 02390330 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02390334 */ Gambit_fn_027C6130(cpu);
|
|
/* 02390338 */ _t4 = cpu->r[31] + 0x00000008u;
|
|
/* 02390338 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0239033C */ _t5 = cpu->r[11] + 0x00000014u;
|
|
/* 0239033C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02390340 */ cpu->ctr = cpu->r[0];
|
|
/* 02390344 */ cpu->r[3] = cpu->r[31] + 0x00000004u;
|
|
/* 02390348 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0239034C */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 0239034C */ cpu->r[5] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02390350 */ cpu->r[4] = 0x00000000u;
|
|
/* 02390354 */ _t7 = cpu->r[31] + 0x00000000u;
|
|
/* 02390354 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02390358 */ Gambit_fn_027C63C4(cpu);
|
|
/* 0239035C */ cpu->r[12] = 0x10080000u;
|
|
/* 02390360 */ _t8 = cpu->r[12] + 0x000064D8u;
|
|
/* 02390360 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 02390364 */ _t9 = cpu->r[31] + 0x00000000u;
|
|
/* 02390364 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02390368 */ cpu->r[0] = 0x00000000u;
|
|
/* 0239036C */ _t10 = cpu->r[12] + 0x00000008u;
|
|
/* 0239036C */ rbrew_write_f32(cpu->mem, _t10, cpu->f[0]);
|
|
/* 02390370 */ _t11 = cpu->r[31] + 0x00000090u;
|
|
/* 02390370 */ rbrew_write8(cpu->mem, _t11, (uint8_t)cpu->r[0]);
|
|
/* 02390374 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 02390374 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02390378 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02390378 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0239037C */ cpu->lr = cpu->r[0];
|
|
/* 02390380 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02390384 */ return;
|
|
}
|
|
|
|
// fn_02390320 @ 0x2390320
|
|
void Gambit_fn_02390320(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_02390320: ; // 0x2390320
|
|
/* 02390320 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02390320 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02390320 */ cpu->r[1] = _t0;
|
|
/* 02390324 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02390324 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02390328 */ cpu->r[31] = cpu->r[3];
|
|
/* 0239032C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0239032C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02390330 */ _t3 = cpu->r[31] + 0x00000000u;
|
|
/* 02390330 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02390334 */ Gambit_fn_027C6130(cpu);
|
|
/* 02390338 */ _t4 = cpu->r[31] + 0x00000008u;
|
|
/* 02390338 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0239033C */ _t5 = cpu->r[11] + 0x00000014u;
|
|
/* 0239033C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02390340 */ cpu->ctr = cpu->r[0];
|
|
/* 02390344 */ cpu->r[3] = cpu->r[31] + 0x00000004u;
|
|
/* 02390348 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0239034C */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 0239034C */ cpu->r[5] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02390350 */ cpu->r[4] = 0x00000000u;
|
|
/* 02390354 */ _t7 = cpu->r[31] + 0x00000000u;
|
|
/* 02390354 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02390358 */ Gambit_fn_027C63C4(cpu);
|
|
/* 0239035C */ cpu->r[12] = 0x10080000u;
|
|
/* 02390360 */ _t8 = cpu->r[12] + 0x000064D8u;
|
|
/* 02390360 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 02390364 */ _t9 = cpu->r[31] + 0x00000000u;
|
|
/* 02390364 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02390368 */ cpu->r[0] = 0x00000000u;
|
|
/* 0239036C */ _t10 = cpu->r[12] + 0x00000008u;
|
|
/* 0239036C */ rbrew_write_f32(cpu->mem, _t10, cpu->f[0]);
|
|
/* 02390370 */ _t11 = cpu->r[31] + 0x00000090u;
|
|
/* 02390370 */ rbrew_write8(cpu->mem, _t11, (uint8_t)cpu->r[0]);
|
|
/* 02390374 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 02390374 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02390378 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02390378 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0239037C */ cpu->lr = cpu->r[0];
|
|
/* 02390380 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02390384 */ return;
|
|
}
|
|
|
|
// fn_02390388 @ 0x2390388
|
|
void Gambit_fn_02390388(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_02390388: ; // 0x2390388
|
|
/* 02390388 */ cpu->r[0] = cpu->lr;
|
|
/* 0239038C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0239038C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239038C */ cpu->r[1] = _t0;
|
|
/* 02390390 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02390390 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02390394 */ cpu->r[31] = cpu->r[3];
|
|
/* 02390398 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02390398 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0239039C */ _t3 = cpu->r[31] + 0x00000000u;
|
|
/* 0239039C */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 023903A0 */ Gambit_fn_027C6130(cpu);
|
|
/* 023903A4 */ cpu->r[0] = 0x00000001u;
|
|
/* 023903A8 */ _t4 = cpu->r[31] + 0x00000090u;
|
|
/* 023903A8 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[0]);
|
|
/* 023903AC */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 023903AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 023903B0 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023903B0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 023903B4 */ cpu->lr = cpu->r[0];
|
|
/* 023903B8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 023903BC */ return;
|
|
}
|
|
|
|
// fn_0239038C @ 0x239038c
|
|
void Gambit_fn_0239038C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_0239038C: ; // 0x239038c
|
|
/* 0239038C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0239038C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239038C */ cpu->r[1] = _t0;
|
|
/* 02390390 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02390390 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02390394 */ cpu->r[31] = cpu->r[3];
|
|
/* 02390398 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02390398 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0239039C */ _t3 = cpu->r[31] + 0x00000000u;
|
|
/* 0239039C */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 023903A0 */ Gambit_fn_027C6130(cpu);
|
|
/* 023903A4 */ cpu->r[0] = 0x00000001u;
|
|
/* 023903A8 */ _t4 = cpu->r[31] + 0x00000090u;
|
|
/* 023903A8 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[0]);
|
|
/* 023903AC */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 023903AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 023903B0 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023903B0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 023903B4 */ cpu->lr = cpu->r[0];
|
|
/* 023903B8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 023903BC */ return;
|
|
}
|
|
|
|
// fn_023903C0 @ 0x23903c0
|
|
void Gambit_fn_023903C0(CPUState* cpu) {
|
|
uint32_t _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_023903C0: ; // 0x23903c0
|
|
/* 023903C0 */ cpu->r[0] = cpu->lr;
|
|
/* 023903C4 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 023903C4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 023903C4 */ cpu->r[1] = _t0;
|
|
/* 023903C8 */ _t1 = cpu->r[1] + 0x00000020u;
|
|
/* 023903C8 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 023903CC */ /* nop */
|
|
/* 023903D0 */ _t2 = cpu->r[1] + 0x00000028u;
|
|
/* 023903D0 */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 023903D4 */ _t3 = cpu->r[1] + 0x00000034u;
|
|
/* 023903D4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 023903D8 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 023903D8 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 023903DC */ cpu->r[31] = cpu->r[3];
|
|
/* 023903E0 */ _t5 = cpu->r[31] + 0x00000000u;
|
|
/* 023903E0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t5);
|
|
/* 023903E4 */ _t6 = cpu->r[6] + 0x00000000u;
|
|
/* 023903E4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t6);
|
|
/* 023903E8 */ _t7 = cpu->r[6] + 0x0000000Cu;
|
|
/* 023903E8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 023903EC */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 023903F0 */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 023903F0 */ rbrew_write32(cpu->mem, _t8, cpu->r[7]);
|
|
/* 023903F4 */ _t9 = cpu->r[8] + 0x000000A4u;
|
|
/* 023903F4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 023903F8 */ cpu->f[31] = cpu->f[1];
|
|
/* 023903FC */ Gambit_fn_0298415C(cpu);
|
|
/* 02390400 */ cpu->r[11] = 0x10080000u;
|
|
/* 02390404 */ cpu->r[0] = cpu->r[3] ^ 0x80000000u;
|
|
/* 02390408 */ _t10 = cpu->r[11] + 0x000064E0u;
|
|
/* 02390408 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t10);
|
|
/* 0239040C */ cpu->r[12] = 0x43300000u;
|
|
/* 02390410 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 02390410 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 02390414 */ _t12 = cpu->r[1] + 0x00000010u;
|
|
/* 02390414 */ rbrew_write32(cpu->mem, _t12, cpu->r[12]);
|
|
/* 02390418 */ _t13 = cpu->r[1] + 0x00000010u;
|
|
/* 02390418 */ cpu->f[12] = rbrew_read_f64(cpu->mem, _t13);
|
|
/* 0239041C */ cpu->r[10] = 0x10080000u;
|
|
/* 02390420 */ _t14 = cpu->r[10] + 0x000064E8u;
|
|
/* 02390420 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 02390424 */ cpu->f[13] = cpu->f[12] - cpu->f[13];
|
|
/* 02390428 */ cpu->f[0] = cpu->f[0] - cpu->f[31];
|
|
/* 0239042C */ cpu->f[10] = (double)(float)cpu->f[13];
|
|
/* 02390430 */ cpu->f[11] = cpu->f[10] * cpu->f[0];
|
|
/* 02390434 */ _t15 = cpu->r[31] + 0x00000000u;
|
|
/* 02390434 */ cpu->r[9] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02390438 */ _t16 = cpu->r[9] + 0x00000004u;
|
|
/* 02390438 */ rbrew_write_f32(cpu->mem, _t16, cpu->f[11]);
|
|
/* 0239043C */ _t17 = cpu->r[31] + 0x00000000u;
|
|
/* 0239043C */ cpu->r[3] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02390440 */ Gambit_fn_027C61D0(cpu);
|
|
/* 02390444 */ _t18 = cpu->r[1] + 0x00000028u;
|
|
/* 02390444 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 02390448 */ _t19 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02390448 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0239044C */ _t20 = cpu->r[1] + 0x00000020u;
|
|
/* 0239044C */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t20);
|
|
/* 02390450 */ _t21 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02390450 */ _t22 = _t21 & 0x00000001u;
|
|
/* 02390450 */ if (_t22) goto L_02390454; // else: addr-0 trap, fall-through
|
|
L_02390454: ; // 0x2390454
|
|
/* 02390454 */ _t23 = cpu->r[1] + 0x00000034u;
|
|
/* 02390454 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02390458 */ cpu->lr = cpu->r[0];
|
|
/* 0239045C */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 02390460 */ return;
|
|
}
|
|
|
|
// fn_023903C4 @ 0x23903c4
|
|
void Gambit_fn_023903C4(CPUState* cpu) {
|
|
uint32_t _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_023903C4: ; // 0x23903c4
|
|
/* 023903C4 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 023903C4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 023903C4 */ cpu->r[1] = _t0;
|
|
/* 023903C8 */ _t1 = cpu->r[1] + 0x00000020u;
|
|
/* 023903C8 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 023903CC */ /* nop */
|
|
/* 023903D0 */ _t2 = cpu->r[1] + 0x00000028u;
|
|
/* 023903D0 */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 023903D4 */ _t3 = cpu->r[1] + 0x00000034u;
|
|
/* 023903D4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 023903D8 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 023903D8 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 023903DC */ cpu->r[31] = cpu->r[3];
|
|
/* 023903E0 */ _t5 = cpu->r[31] + 0x00000000u;
|
|
/* 023903E0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t5);
|
|
/* 023903E4 */ _t6 = cpu->r[6] + 0x00000000u;
|
|
/* 023903E4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t6);
|
|
/* 023903E8 */ _t7 = cpu->r[6] + 0x0000000Cu;
|
|
/* 023903E8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 023903EC */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 023903F0 */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 023903F0 */ rbrew_write32(cpu->mem, _t8, cpu->r[7]);
|
|
/* 023903F4 */ _t9 = cpu->r[8] + 0x000000A4u;
|
|
/* 023903F4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 023903F8 */ cpu->f[31] = cpu->f[1];
|
|
/* 023903FC */ Gambit_fn_0298415C(cpu);
|
|
/* 02390400 */ cpu->r[11] = 0x10080000u;
|
|
/* 02390404 */ cpu->r[0] = cpu->r[3] ^ 0x80000000u;
|
|
/* 02390408 */ _t10 = cpu->r[11] + 0x000064E0u;
|
|
/* 02390408 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t10);
|
|
/* 0239040C */ cpu->r[12] = 0x43300000u;
|
|
/* 02390410 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 02390410 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 02390414 */ _t12 = cpu->r[1] + 0x00000010u;
|
|
/* 02390414 */ rbrew_write32(cpu->mem, _t12, cpu->r[12]);
|
|
/* 02390418 */ _t13 = cpu->r[1] + 0x00000010u;
|
|
/* 02390418 */ cpu->f[12] = rbrew_read_f64(cpu->mem, _t13);
|
|
/* 0239041C */ cpu->r[10] = 0x10080000u;
|
|
/* 02390420 */ _t14 = cpu->r[10] + 0x000064E8u;
|
|
/* 02390420 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 02390424 */ cpu->f[13] = cpu->f[12] - cpu->f[13];
|
|
/* 02390428 */ cpu->f[0] = cpu->f[0] - cpu->f[31];
|
|
/* 0239042C */ cpu->f[10] = (double)(float)cpu->f[13];
|
|
/* 02390430 */ cpu->f[11] = cpu->f[10] * cpu->f[0];
|
|
/* 02390434 */ _t15 = cpu->r[31] + 0x00000000u;
|
|
/* 02390434 */ cpu->r[9] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02390438 */ _t16 = cpu->r[9] + 0x00000004u;
|
|
/* 02390438 */ rbrew_write_f32(cpu->mem, _t16, cpu->f[11]);
|
|
/* 0239043C */ _t17 = cpu->r[31] + 0x00000000u;
|
|
/* 0239043C */ cpu->r[3] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02390440 */ Gambit_fn_027C61D0(cpu);
|
|
/* 02390444 */ _t18 = cpu->r[1] + 0x00000028u;
|
|
/* 02390444 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 02390448 */ _t19 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02390448 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0239044C */ _t20 = cpu->r[1] + 0x00000020u;
|
|
/* 0239044C */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t20);
|
|
/* 02390450 */ _t21 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02390450 */ _t22 = _t21 & 0x00000001u;
|
|
/* 02390450 */ if (_t22) goto L_02390454; // else: addr-0 trap, fall-through
|
|
L_02390454: ; // 0x2390454
|
|
/* 02390454 */ _t23 = cpu->r[1] + 0x00000034u;
|
|
/* 02390454 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02390458 */ cpu->lr = cpu->r[0];
|
|
/* 0239045C */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 02390460 */ return;
|
|
}
|
|
|
|
// fn_02390464 @ 0x2390464
|
|
void Gambit_fn_02390464(CPUState* cpu) {
|
|
uint32_t _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_023903C0: ; // 0x23903c0
|
|
/* 023903C0 */ cpu->r[0] = cpu->lr;
|
|
/* 023903C4 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 023903C4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 023903C4 */ cpu->r[1] = _t0;
|
|
/* 023903C8 */ _t1 = cpu->r[1] + 0x00000020u;
|
|
/* 023903C8 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 023903CC */ /* nop */
|
|
/* 023903D0 */ _t2 = cpu->r[1] + 0x00000028u;
|
|
/* 023903D0 */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 023903D4 */ _t3 = cpu->r[1] + 0x00000034u;
|
|
/* 023903D4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 023903D8 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 023903D8 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 023903DC */ cpu->r[31] = cpu->r[3];
|
|
/* 023903E0 */ _t5 = cpu->r[31] + 0x00000000u;
|
|
/* 023903E0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t5);
|
|
/* 023903E4 */ _t6 = cpu->r[6] + 0x00000000u;
|
|
/* 023903E4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t6);
|
|
/* 023903E8 */ _t7 = cpu->r[6] + 0x0000000Cu;
|
|
/* 023903E8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 023903EC */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 023903F0 */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 023903F0 */ rbrew_write32(cpu->mem, _t8, cpu->r[7]);
|
|
/* 023903F4 */ _t9 = cpu->r[8] + 0x000000A4u;
|
|
/* 023903F4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 023903F8 */ cpu->f[31] = cpu->f[1];
|
|
/* 023903FC */ Gambit_fn_0298415C(cpu);
|
|
/* 02390400 */ cpu->r[11] = 0x10080000u;
|
|
/* 02390404 */ cpu->r[0] = cpu->r[3] ^ 0x80000000u;
|
|
/* 02390408 */ _t10 = cpu->r[11] + 0x000064E0u;
|
|
/* 02390408 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t10);
|
|
/* 0239040C */ cpu->r[12] = 0x43300000u;
|
|
/* 02390410 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 02390410 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 02390414 */ _t12 = cpu->r[1] + 0x00000010u;
|
|
/* 02390414 */ rbrew_write32(cpu->mem, _t12, cpu->r[12]);
|
|
/* 02390418 */ _t13 = cpu->r[1] + 0x00000010u;
|
|
/* 02390418 */ cpu->f[12] = rbrew_read_f64(cpu->mem, _t13);
|
|
/* 0239041C */ cpu->r[10] = 0x10080000u;
|
|
/* 02390420 */ _t14 = cpu->r[10] + 0x000064E8u;
|
|
/* 02390420 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 02390424 */ cpu->f[13] = cpu->f[12] - cpu->f[13];
|
|
/* 02390428 */ cpu->f[0] = cpu->f[0] - cpu->f[31];
|
|
/* 0239042C */ cpu->f[10] = (double)(float)cpu->f[13];
|
|
/* 02390430 */ cpu->f[11] = cpu->f[10] * cpu->f[0];
|
|
/* 02390434 */ _t15 = cpu->r[31] + 0x00000000u;
|
|
/* 02390434 */ cpu->r[9] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02390438 */ _t16 = cpu->r[9] + 0x00000004u;
|
|
/* 02390438 */ rbrew_write_f32(cpu->mem, _t16, cpu->f[11]);
|
|
/* 0239043C */ _t17 = cpu->r[31] + 0x00000000u;
|
|
/* 0239043C */ cpu->r[3] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02390440 */ Gambit_fn_027C61D0(cpu);
|
|
/* 02390444 */ _t18 = cpu->r[1] + 0x00000028u;
|
|
/* 02390444 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 02390448 */ _t19 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02390448 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0239044C */ _t20 = cpu->r[1] + 0x00000020u;
|
|
/* 0239044C */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t20);
|
|
/* 02390450 */ _t21 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02390450 */ _t22 = _t21 & 0x00000001u;
|
|
/* 02390450 */ if (_t22) goto L_02390454; // else: addr-0 trap, fall-through
|
|
L_02390454: ; // 0x2390454
|
|
/* 02390454 */ _t23 = cpu->r[1] + 0x00000034u;
|
|
/* 02390454 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02390458 */ cpu->lr = cpu->r[0];
|
|
/* 0239045C */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 02390460 */ return;
|
|
L_02390464: ; // 0x2390464
|
|
/* 02390464 */ cpu->f[1] = cpu->f[1] / cpu->f[2];
|
|
/* 02390468 */ goto L_023903C0;
|
|
}
|
|
|
|
// fn_0239046C @ 0x239046c
|
|
void Gambit_fn_0239046C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0239046C: ; // 0x239046c
|
|
/* 0239046C */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 0239046C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02390470 */ _t1 = cpu->r[12] + 0x00000010u;
|
|
/* 02390470 */ rbrew_write32(cpu->mem, _t1, cpu->r[4]);
|
|
/* 02390474 */ return;
|
|
}
|
|
|
|
// fn_02390478 @ 0x2390478
|
|
void Gambit_fn_02390478(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _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_02390478: ; // 0x2390478
|
|
/* 02390478 */ cpu->r[0] = cpu->lr;
|
|
/* 0239047C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0239047C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239047C */ cpu->r[1] = _t0;
|
|
/* 02390480 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02390480 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02390484 */ cpu->r[31] = cpu->r[3];
|
|
/* 02390484 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02390488 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02390488 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0239048C */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239048C */ _t4 = _t3 & 0x00000001u;
|
|
/* 0239048C */ if (_t4) goto L_02390490; else goto L_023904A0;
|
|
L_02390490: ; // 0x2390490
|
|
/* 02390490 */ cpu->r[3] = 0x00000030u;
|
|
/* 02390494 */ Gambit_fn_02801A78(cpu);
|
|
/* 02390498 */ cpu->r[31] = cpu->r[3];
|
|
/* 02390498 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0239049C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239049C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0239049C */ if (_t6) goto L_02390518; else goto L_023904A0;
|
|
L_023904A0: ; // 0x23904a0
|
|
/* 023904A0 */ cpu->r[12] = 0x10080000u;
|
|
/* 023904A4 */ cpu->r[11] = 0x00000000u;
|
|
/* 023904A8 */ _t7 = cpu->r[12] + 0x000064D8u;
|
|
/* 023904A8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 023904AC */ _t8 = cpu->r[31] + 0x00000004u;
|
|
/* 023904AC */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 023904B0 */ _t9 = cpu->r[31] + 0x00000008u;
|
|
/* 023904B0 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[0]);
|
|
/* 023904B4 */ _t10 = cpu->r[31] + 0x0000000Cu;
|
|
/* 023904B4 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[0]);
|
|
/* 023904B8 */ _t11 = cpu->r[31] + 0x00000010u;
|
|
/* 023904B8 */ rbrew_write_f32(cpu->mem, _t11, cpu->f[0]);
|
|
/* 023904BC */ cpu->r[12] = 0x101F0000u;
|
|
/* 023904C0 */ _t12 = cpu->r[31] + 0x00000000u;
|
|
/* 023904C0 */ rbrew_write32(cpu->mem, _t12, cpu->r[11]);
|
|
/* 023904C4 */ _t13 = cpu->r[12] + 0x00006338u;
|
|
/* 023904C4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 023904C4 */ cpu->r[12] = _t13;
|
|
/* 023904C8 */ _t14 = cpu->r[31] + 0x00000014u;
|
|
/* 023904C8 */ rbrew_write32(cpu->mem, _t14, cpu->r[0]);
|
|
/* 023904CC */ _t15 = cpu->r[12] + 0x00000004u;
|
|
/* 023904CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 023904D0 */ _t16 = cpu->r[31] + 0x00000018u;
|
|
/* 023904D0 */ rbrew_write32(cpu->mem, _t16, cpu->r[0]);
|
|
/* 023904D4 */ _t17 = cpu->r[12] + 0x00000008u;
|
|
/* 023904D4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t17);
|
|
/* 023904D8 */ _t18 = cpu->r[31] + 0x0000001Cu;
|
|
/* 023904D8 */ rbrew_write32(cpu->mem, _t18, cpu->r[11]);
|
|
/* 023904DC */ cpu->r[11] = 0x10080000u;
|
|
/* 023904E0 */ _t19 = cpu->r[12] + 0x00000000u;
|
|
/* 023904E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 023904E4 */ _t20 = cpu->r[11] + 0x000064E8u;
|
|
/* 023904E4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 023904E8 */ _t21 = cpu->r[31] + 0x00000020u;
|
|
/* 023904E8 */ rbrew_write32(cpu->mem, _t21, cpu->r[0]);
|
|
/* 023904EC */ _t22 = cpu->r[12] + 0x00000004u;
|
|
/* 023904EC */ cpu->r[11] = rbrew_read32(cpu->mem, _t22);
|
|
/* 023904F0 */ _t23 = cpu->r[31] + 0x00000024u;
|
|
/* 023904F0 */ rbrew_write32(cpu->mem, _t23, cpu->r[11]);
|
|
/* 023904F4 */ _t24 = cpu->r[12] + 0x00000008u;
|
|
/* 023904F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 023904F8 */ _t25 = cpu->r[31] + 0x0000002Cu;
|
|
/* 023904F8 */ rbrew_write_f32(cpu->mem, _t25, cpu->f[0]);
|
|
/* 023904FC */ cpu->r[3] = 0x0000002Cu;
|
|
/* 02390500 */ _t26 = cpu->r[31] + 0x00000028u;
|
|
/* 02390500 */ rbrew_write32(cpu->mem, _t26, cpu->r[0]);
|
|
/* 02390504 */ Gambit_fn_02801A78(cpu);
|
|
/* 02390508 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239050C */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239050C */ _t28 = _t27 & 0x00000001u;
|
|
/* 0239050C */ if (_t28) goto L_02390514; else goto L_02390510;
|
|
L_02390510: ; // 0x2390510
|
|
/* 02390510 */ Gambit_fn_0204FCFC(cpu);
|
|
L_02390514: ; // 0x2390514
|
|
/* 02390514 */ _t29 = cpu->r[31] + 0x00000000u;
|
|
/* 02390514 */ rbrew_write32(cpu->mem, _t29, cpu->r[3]);
|
|
L_02390518: ; // 0x2390518
|
|
/* 02390518 */ _t30 = cpu->r[1] + 0x00000014u;
|
|
/* 02390518 */ cpu->r[0] = rbrew_read32(cpu->mem, _t30);
|
|
/* 0239051C */ cpu->r[3] = cpu->r[31];
|
|
/* 02390520 */ _t31 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02390520 */ cpu->r[31] = rbrew_read32(cpu->mem, _t31);
|
|
/* 02390524 */ cpu->lr = cpu->r[0];
|
|
/* 02390528 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0239052C */ return;
|
|
}
|
|
|
|
// fn_0239047C @ 0x239047c
|
|
void Gambit_fn_0239047C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _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_0239047C: ; // 0x239047c
|
|
/* 0239047C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0239047C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239047C */ cpu->r[1] = _t0;
|
|
/* 02390480 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02390480 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02390484 */ cpu->r[31] = cpu->r[3];
|
|
/* 02390484 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02390488 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02390488 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0239048C */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239048C */ _t4 = _t3 & 0x00000001u;
|
|
/* 0239048C */ if (_t4) goto L_02390490; else goto L_023904A0;
|
|
L_02390490: ; // 0x2390490
|
|
/* 02390490 */ cpu->r[3] = 0x00000030u;
|
|
/* 02390494 */ Gambit_fn_02801A78(cpu);
|
|
/* 02390498 */ cpu->r[31] = cpu->r[3];
|
|
/* 02390498 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0239049C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239049C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0239049C */ if (_t6) goto L_02390518; else goto L_023904A0;
|
|
L_023904A0: ; // 0x23904a0
|
|
/* 023904A0 */ cpu->r[12] = 0x10080000u;
|
|
/* 023904A4 */ cpu->r[11] = 0x00000000u;
|
|
/* 023904A8 */ _t7 = cpu->r[12] + 0x000064D8u;
|
|
/* 023904A8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 023904AC */ _t8 = cpu->r[31] + 0x00000004u;
|
|
/* 023904AC */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 023904B0 */ _t9 = cpu->r[31] + 0x00000008u;
|
|
/* 023904B0 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[0]);
|
|
/* 023904B4 */ _t10 = cpu->r[31] + 0x0000000Cu;
|
|
/* 023904B4 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[0]);
|
|
/* 023904B8 */ _t11 = cpu->r[31] + 0x00000010u;
|
|
/* 023904B8 */ rbrew_write_f32(cpu->mem, _t11, cpu->f[0]);
|
|
/* 023904BC */ cpu->r[12] = 0x101F0000u;
|
|
/* 023904C0 */ _t12 = cpu->r[31] + 0x00000000u;
|
|
/* 023904C0 */ rbrew_write32(cpu->mem, _t12, cpu->r[11]);
|
|
/* 023904C4 */ _t13 = cpu->r[12] + 0x00006338u;
|
|
/* 023904C4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 023904C4 */ cpu->r[12] = _t13;
|
|
/* 023904C8 */ _t14 = cpu->r[31] + 0x00000014u;
|
|
/* 023904C8 */ rbrew_write32(cpu->mem, _t14, cpu->r[0]);
|
|
/* 023904CC */ _t15 = cpu->r[12] + 0x00000004u;
|
|
/* 023904CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 023904D0 */ _t16 = cpu->r[31] + 0x00000018u;
|
|
/* 023904D0 */ rbrew_write32(cpu->mem, _t16, cpu->r[0]);
|
|
/* 023904D4 */ _t17 = cpu->r[12] + 0x00000008u;
|
|
/* 023904D4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t17);
|
|
/* 023904D8 */ _t18 = cpu->r[31] + 0x0000001Cu;
|
|
/* 023904D8 */ rbrew_write32(cpu->mem, _t18, cpu->r[11]);
|
|
/* 023904DC */ cpu->r[11] = 0x10080000u;
|
|
/* 023904E0 */ _t19 = cpu->r[12] + 0x00000000u;
|
|
/* 023904E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 023904E4 */ _t20 = cpu->r[11] + 0x000064E8u;
|
|
/* 023904E4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 023904E8 */ _t21 = cpu->r[31] + 0x00000020u;
|
|
/* 023904E8 */ rbrew_write32(cpu->mem, _t21, cpu->r[0]);
|
|
/* 023904EC */ _t22 = cpu->r[12] + 0x00000004u;
|
|
/* 023904EC */ cpu->r[11] = rbrew_read32(cpu->mem, _t22);
|
|
/* 023904F0 */ _t23 = cpu->r[31] + 0x00000024u;
|
|
/* 023904F0 */ rbrew_write32(cpu->mem, _t23, cpu->r[11]);
|
|
/* 023904F4 */ _t24 = cpu->r[12] + 0x00000008u;
|
|
/* 023904F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 023904F8 */ _t25 = cpu->r[31] + 0x0000002Cu;
|
|
/* 023904F8 */ rbrew_write_f32(cpu->mem, _t25, cpu->f[0]);
|
|
/* 023904FC */ cpu->r[3] = 0x0000002Cu;
|
|
/* 02390500 */ _t26 = cpu->r[31] + 0x00000028u;
|
|
/* 02390500 */ rbrew_write32(cpu->mem, _t26, cpu->r[0]);
|
|
/* 02390504 */ Gambit_fn_02801A78(cpu);
|
|
/* 02390508 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239050C */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239050C */ _t28 = _t27 & 0x00000001u;
|
|
/* 0239050C */ if (_t28) goto L_02390514; else goto L_02390510;
|
|
L_02390510: ; // 0x2390510
|
|
/* 02390510 */ Gambit_fn_0204FCFC(cpu);
|
|
L_02390514: ; // 0x2390514
|
|
/* 02390514 */ _t29 = cpu->r[31] + 0x00000000u;
|
|
/* 02390514 */ rbrew_write32(cpu->mem, _t29, cpu->r[3]);
|
|
L_02390518: ; // 0x2390518
|
|
/* 02390518 */ _t30 = cpu->r[1] + 0x00000014u;
|
|
/* 02390518 */ cpu->r[0] = rbrew_read32(cpu->mem, _t30);
|
|
/* 0239051C */ cpu->r[3] = cpu->r[31];
|
|
/* 02390520 */ _t31 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02390520 */ cpu->r[31] = rbrew_read32(cpu->mem, _t31);
|
|
/* 02390524 */ cpu->lr = cpu->r[0];
|
|
/* 02390528 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0239052C */ return;
|
|
}
|
|
|
|
// fn_02390530 @ 0x2390530
|
|
void Gambit_fn_02390530(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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_02390530: ; // 0x2390530
|
|
/* 02390530 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 02390530 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02390530 */ cpu->r[1] = _t0;
|
|
/* 02390534 */ _t1 = cpu->r[1] + 0x00000030u;
|
|
/* 02390534 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 02390538 */ cpu->r[0] = cpu->lr;
|
|
/* 0239053C */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 0239053C */ rbrew_write_f64(cpu->mem, _t2, cpu->f[29]);
|
|
/* 02390540 */ /* nop */
|
|
/* 02390544 */ _t3 = cpu->r[1] + 0x00000020u;
|
|
/* 02390544 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[30]);
|
|
/* 02390548 */ /* nop */
|
|
/* 0239054C */ _t4 = cpu->r[1] + 0x00000018u;
|
|
/* 0239054C */ rbrew_write_f32(cpu->mem, _t4, cpu->f[29]);
|
|
/* 02390550 */ cpu->r[12] = cpu->r[5];
|
|
/* 02390554 */ _t5 = cpu->r[1] + 0x00000008u;
|
|
/* 02390554 */ rbrew_write32(cpu->mem, _t5, cpu->r[30]);
|
|
/* 02390558 */ cpu->r[5] = cpu->r[6];
|
|
/* 0239055C */ _t6 = cpu->r[1] + 0x00000038u;
|
|
/* 0239055C */ rbrew_write_f32(cpu->mem, _t6, cpu->f[31]);
|
|
/* 02390560 */ /* nop */
|
|
/* 02390564 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02390564 */ rbrew_write32(cpu->mem, _t7, cpu->r[31]);
|
|
/* 02390568 */ _t8 = cpu->r[1] + 0x00000044u;
|
|
/* 02390568 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0239056C */ cpu->r[30] = cpu->r[3];
|
|
/* 02390570 */ _t9 = cpu->r[1] + 0x00000028u;
|
|
/* 02390570 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[30]);
|
|
/* 02390574 */ _t10 = cpu->r[5] + 0x00000000u;
|
|
/* 02390574 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 02390578 */ _t11 = cpu->r[30] + 0x00000014u;
|
|
/* 02390578 */ rbrew_write_f32(cpu->mem, _t11, cpu->f[0]);
|
|
/* 0239057C */ _t12 = cpu->r[5] + 0x00000004u;
|
|
/* 0239057C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 02390580 */ cpu->f[30] = cpu->f[3];
|
|
/* 02390584 */ _t13 = cpu->r[30] + 0x00000018u;
|
|
/* 02390584 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[11]);
|
|
/* 02390588 */ _t14 = cpu->r[5] + 0x00000008u;
|
|
/* 02390588 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 0239058C */ cpu->f[3] = cpu->f[4];
|
|
/* 02390590 */ _t15 = cpu->r[30] + 0x00000004u;
|
|
/* 02390590 */ rbrew_write32(cpu->mem, _t15, cpu->r[4]);
|
|
/* 02390594 */ cpu->f[29] = cpu->f[2];
|
|
/* 02390598 */ _t16 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02390598 */ rbrew_write_f32(cpu->mem, _t16, cpu->f[13]);
|
|
/* 0239059C */ _t17 = cpu->r[12] + 0x00000000u;
|
|
/* 0239059C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 023905A0 */ cpu->f[4] = cpu->f[1];
|
|
/* 023905A4 */ cpu->r[10] = 0x10080000u;
|
|
/* 023905A8 */ _t18 = cpu->r[4] + 0x00000000u;
|
|
/* 023905A8 */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
/* 023905AC */ _t19 = cpu->r[12] + 0x00000004u;
|
|
/* 023905AC */ cpu->r[8] = rbrew_read32(cpu->mem, _t19);
|
|
/* 023905B0 */ cpu->f[1] = cpu->f[29];
|
|
/* 023905B4 */ _t20 = cpu->r[10] + 0x000064D8u;
|
|
/* 023905B4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 023905B8 */ _t21 = cpu->r[4] + 0x00000004u;
|
|
/* 023905B8 */ rbrew_write32(cpu->mem, _t21, cpu->r[8]);
|
|
/* 023905BC */ _t22 = cpu->r[12] + 0x00000008u;
|
|
/* 023905BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 023905C0 */ cpu->f[2] = cpu->f[31];
|
|
/* 023905C4 */ _t23 = cpu->r[4] + 0x00000008u;
|
|
/* 023905C4 */ rbrew_write32(cpu->mem, _t23, cpu->r[0]);
|
|
/* 023905C8 */ _t24 = cpu->r[30] + 0x00000000u;
|
|
/* 023905C8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t24);
|
|
/* 023905CC */ cpu->r[4] = cpu->r[12];
|
|
/* 023905D0 */ cpu->r[31] = cpu->r[7];
|
|
/* 023905D4 */ Gambit_fn_0204F87C(cpu);
|
|
/* 023905D8 */ _t25 = cpu->r[30] + 0x0000000Cu;
|
|
/* 023905D8 */ rbrew_write_f32(cpu->mem, _t25, cpu->f[29]);
|
|
/* 023905DC */ _t26 = cpu->r[30] + 0x00000010u;
|
|
/* 023905DC */ rbrew_write_f32(cpu->mem, _t26, cpu->f[31]);
|
|
/* 023905E0 */ _t27 = cpu->r[30] + 0x00000008u;
|
|
/* 023905E0 */ rbrew_write_f32(cpu->mem, _t27, cpu->f[30]);
|
|
/* 023905E4 */ _t28 = cpu->r[31] + 0x00000000u;
|
|
/* 023905E4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 023905E8 */ cpu->r[12] = 0x10080000u;
|
|
/* 023905EC */ _t29 = cpu->r[30] + 0x00000020u;
|
|
/* 023905EC */ rbrew_write_f32(cpu->mem, _t29, cpu->f[13]);
|
|
/* 023905F0 */ _t30 = cpu->r[31] + 0x00000004u;
|
|
/* 023905F0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 023905F4 */ _t31 = cpu->r[12] + 0x000064E8u;
|
|
/* 023905F4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 023905F8 */ _t32 = cpu->r[30] + 0x00000024u;
|
|
/* 023905F8 */ rbrew_write_f32(cpu->mem, _t32, cpu->f[10]);
|
|
/* 023905FC */ _t33 = cpu->r[31] + 0x00000008u;
|
|
/* 023905FC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 02390600 */ _t34 = cpu->r[30] + 0x0000002Cu;
|
|
/* 02390600 */ rbrew_write_f32(cpu->mem, _t34, cpu->f[0]);
|
|
/* 02390604 */ _t35 = cpu->r[30] + 0x00000028u;
|
|
/* 02390604 */ rbrew_write_f32(cpu->mem, _t35, cpu->f[12]);
|
|
/* 02390608 */ _t36 = cpu->r[1] + 0x00000038u;
|
|
/* 02390608 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 0239060C */ _t37 = cpu->r[1] + 0x00000018u;
|
|
/* 0239060C */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 02390610 */ _t38 = cpu->r[1] + 0x00000030u;
|
|
/* 02390610 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t38);
|
|
/* 02390614 */ _t39 = cpu->r[1] + 0x00000028u;
|
|
/* 02390614 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t39);
|
|
/* 02390618 */ _t40 = cpu->r[1] + 0x00000010u;
|
|
/* 02390618 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t40);
|
|
/* 0239061C */ _t41 = cpu->r[1] + 0x00000020u;
|
|
/* 0239061C */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t41);
|
|
/* 02390620 */ _t42 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02390620 */ cpu->r[31] = rbrew_read32(cpu->mem, _t42);
|
|
/* 02390624 */ _t43 = cpu->r[1] + 0x00000008u;
|
|
/* 02390624 */ cpu->r[30] = rbrew_read32(cpu->mem, _t43);
|
|
/* 02390628 */ _t44 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02390628 */ _t45 = _t44 & 0x00000001u;
|
|
/* 02390628 */ if (_t45) goto L_0239062C; // else: addr-0 trap, fall-through
|
|
L_0239062C: ; // 0x239062c
|
|
/* 0239062C */ _t46 = cpu->r[1] + 0x00000044u;
|
|
/* 0239062C */ cpu->r[0] = rbrew_read32(cpu->mem, _t46);
|
|
/* 02390630 */ cpu->lr = cpu->r[0];
|
|
/* 02390634 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 02390638 */ return;
|
|
}
|
|
|
|
// fn_0239063C @ 0x239063c
|
|
void Gambit_fn_0239063C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _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 _ft72, _ft73, _ft85, _ft86;
|
|
|
|
L_0239063C: ; // 0x239063c
|
|
/* 0239063C */ _t0 = cpu->r[1] + 0xFFFFFF70u;
|
|
/* 0239063C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239063C */ cpu->r[1] = _t0;
|
|
/* 02390640 */ _t1 = cpu->r[1] + 0x00000028u;
|
|
/* 02390640 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02390644 */ cpu->r[0] = cpu->lr;
|
|
/* 02390648 */ _t2 = cpu->r[1] + 0x00000060u;
|
|
/* 02390648 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[29]);
|
|
/* 0239064C */ /* nop */
|
|
/* 02390650 */ _t3 = cpu->r[1] + 0x00000030u;
|
|
/* 02390650 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[26]);
|
|
/* 02390654 */ _t4 = cpu->r[1] + 0x00000050u;
|
|
/* 02390654 */ rbrew_write_f64(cpu->mem, _t4, cpu->f[28]);
|
|
/* 02390658 */ /* nop */
|
|
/* 0239065C */ _t5 = cpu->r[1] + 0x00000068u;
|
|
/* 0239065C */ rbrew_write_f32(cpu->mem, _t5, cpu->f[29]);
|
|
/* 02390660 */ cpu->f[29] = cpu->f[4];
|
|
/* 02390664 */ _t6 = cpu->r[1] + 0x00000024u;
|
|
/* 02390664 */ rbrew_write32(cpu->mem, _t6, cpu->r[29]);
|
|
/* 02390668 */ cpu->r[30] = cpu->r[6];
|
|
/* 0239066C */ _t7 = cpu->r[1] + 0x00000038u;
|
|
/* 0239066C */ rbrew_write_f32(cpu->mem, _t7, cpu->f[26]);
|
|
/* 02390670 */ _t8 = cpu->r[1] + 0x00000094u;
|
|
/* 02390670 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 02390674 */ cpu->f[26] = cpu->f[1];
|
|
/* 02390678 */ _t9 = cpu->r[1] + 0x00000040u;
|
|
/* 02390678 */ rbrew_write_f64(cpu->mem, _t9, cpu->f[27]);
|
|
/* 0239067C */ /* nop */
|
|
/* 02390680 */ _t10 = cpu->r[1] + 0x00000070u;
|
|
/* 02390680 */ rbrew_write_f64(cpu->mem, _t10, cpu->f[30]);
|
|
/* 02390684 */ _t11 = cpu->r[1] + 0x00000080u;
|
|
/* 02390684 */ rbrew_write_f64(cpu->mem, _t11, cpu->f[31]);
|
|
/* 02390688 */ /* nop */
|
|
/* 0239068C */ _t12 = cpu->r[1] + 0x00000058u;
|
|
/* 0239068C */ rbrew_write_f32(cpu->mem, _t12, cpu->f[28]);
|
|
/* 02390690 */ /* nop */
|
|
/* 02390694 */ _t13 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02390694 */ rbrew_write32(cpu->mem, _t13, cpu->r[31]);
|
|
/* 02390698 */ cpu->r[8] = 0x10080000u;
|
|
/* 0239069C */ _t14 = cpu->r[1] + 0x00000078u;
|
|
/* 0239069C */ rbrew_write_f32(cpu->mem, _t14, cpu->f[30]);
|
|
/* 023906A0 */ /* nop */
|
|
/* 023906A4 */ _t15 = cpu->r[1] + 0x00000020u;
|
|
/* 023906A4 */ rbrew_write32(cpu->mem, _t15, cpu->r[28]);
|
|
/* 023906A8 */ _t16 = cpu->r[1] + 0x00000088u;
|
|
/* 023906A8 */ rbrew_write_f32(cpu->mem, _t16, cpu->f[31]);
|
|
/* 023906AC */ _t17 = cpu->r[1] + 0x00000048u;
|
|
/* 023906AC */ rbrew_write_f32(cpu->mem, _t17, cpu->f[27]);
|
|
/* 023906B0 */ cpu->r[29] = cpu->r[5];
|
|
/* 023906B4 */ cpu->f[27] = cpu->f[2];
|
|
/* 023906B8 */ _t18 = cpu->r[8] + 0x000064F0u;
|
|
/* 023906B8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 023906BC */ cpu->r[31] = cpu->r[7];
|
|
/* 023906C0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[27], cpu->f[11]);
|
|
/* 023906C4 */ cpu->r[7] = 0x10080000u;
|
|
/* 023906C8 */ cpu->f[28] = cpu->f[3];
|
|
/* 023906CC */ _t19 = cpu->r[7] + 0x000064D8u;
|
|
/* 023906CC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 023906D0 */ cpu->r[28] = cpu->r[3];
|
|
/* 023906D4 */ _t20 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 023906D4 */ _t21 = _t20 & 0x00000001u;
|
|
/* 023906D4 */ if (_t21) goto L_023906D8; else goto L_02390730;
|
|
L_023906D8: ; // 0x23906d8
|
|
/* 023906D8 */ _t22 = cpu->r[1] + 0x00000020u;
|
|
/* 023906D8 */ cpu->r[28] = rbrew_read32(cpu->mem, _t22);
|
|
/* 023906DC */ _t23 = cpu->r[1] + 0x00000024u;
|
|
/* 023906DC */ cpu->r[29] = rbrew_read32(cpu->mem, _t23);
|
|
/* 023906E0 */ _t24 = cpu->r[1] + 0x00000058u;
|
|
/* 023906E0 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 023906E4 */ _t25 = cpu->r[1] + 0x00000048u;
|
|
/* 023906E4 */ cpu->f[27] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 023906E8 */ _t26 = cpu->r[1] + 0x00000050u;
|
|
/* 023906E8 */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t26);
|
|
/* 023906EC */ _t27 = cpu->r[1] + 0x00000068u;
|
|
/* 023906EC */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 023906F0 */ _t28 = cpu->r[1] + 0x00000040u;
|
|
/* 023906F0 */ cpu->f[27] = rbrew_read_f64(cpu->mem, _t28);
|
|
/* 023906F4 */ _t29 = cpu->r[1] + 0x00000060u;
|
|
/* 023906F4 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t29);
|
|
/* 023906F8 */ cpu->f[1] = cpu->f[31];
|
|
/* 023906FC */ _t30 = cpu->r[1] + 0x00000088u;
|
|
/* 023906FC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 02390700 */ _t31 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02390700 */ cpu->r[31] = rbrew_read32(cpu->mem, _t31);
|
|
/* 02390704 */ _t32 = cpu->r[1] + 0x00000080u;
|
|
/* 02390704 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t32);
|
|
/* 02390708 */ _t33 = cpu->r[1] + 0x00000078u;
|
|
/* 02390708 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 0239070C */ _t34 = cpu->r[1] + 0x00000038u;
|
|
/* 0239070C */ cpu->f[26] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 02390710 */ _t35 = cpu->r[1] + 0x00000070u;
|
|
/* 02390710 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t35);
|
|
/* 02390714 */ _t36 = cpu->r[1] + 0x00000030u;
|
|
/* 02390714 */ cpu->f[26] = rbrew_read_f64(cpu->mem, _t36);
|
|
/* 02390718 */ _t37 = cpu->r[1] + 0x00000028u;
|
|
/* 02390718 */ cpu->r[30] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0239071C */ _t38 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0239071C */ _t39 = _t38 & 0x00000001u;
|
|
/* 0239071C */ if (_t39) goto L_02390720; // else: addr-0 trap, fall-through
|
|
L_02390720: ; // 0x2390720
|
|
/* 02390720 */ _t40 = cpu->r[1] + 0x00000094u;
|
|
/* 02390720 */ cpu->r[0] = rbrew_read32(cpu->mem, _t40);
|
|
/* 02390724 */ cpu->lr = cpu->r[0];
|
|
/* 02390728 */ cpu->r[1] = cpu->r[1] + 0x00000090u;
|
|
/* 0239072C */ return;
|
|
L_02390730: ; // 0x2390730
|
|
/* 02390730 */ _t41 = cpu->r[30] + 0x00000000u;
|
|
/* 02390730 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 02390734 */ _t42 = cpu->r[28] + 0x00000014u;
|
|
/* 02390734 */ rbrew_write_f32(cpu->mem, _t42, cpu->f[7]);
|
|
/* 02390738 */ _t43 = cpu->r[30] + 0x00000004u;
|
|
/* 02390738 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t43);
|
|
/* 0239073C */ _t44 = cpu->r[28] + 0x00000018u;
|
|
/* 0239073C */ rbrew_write_f32(cpu->mem, _t44, cpu->f[9]);
|
|
/* 02390740 */ _t45 = cpu->r[30] + 0x00000008u;
|
|
/* 02390740 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t45);
|
|
/* 02390744 */ _t46 = cpu->r[28] + 0x00000004u;
|
|
/* 02390744 */ rbrew_write32(cpu->mem, _t46, cpu->r[4]);
|
|
/* 02390748 */ _t47 = cpu->r[28] + 0x0000001Cu;
|
|
/* 02390748 */ rbrew_write_f32(cpu->mem, _t47, cpu->f[8]);
|
|
/* 0239074C */ _t48 = cpu->r[29] + 0x00000000u;
|
|
/* 0239074C */ cpu->r[9] = rbrew_read32(cpu->mem, _t48);
|
|
/* 02390750 */ _t49 = cpu->r[4] + 0x00000000u;
|
|
/* 02390750 */ rbrew_write32(cpu->mem, _t49, cpu->r[9]);
|
|
/* 02390754 */ _t50 = cpu->r[29] + 0x00000004u;
|
|
/* 02390754 */ cpu->r[10] = rbrew_read32(cpu->mem, _t50);
|
|
/* 02390758 */ _t51 = cpu->r[4] + 0x00000004u;
|
|
/* 02390758 */ rbrew_write32(cpu->mem, _t51, cpu->r[10]);
|
|
/* 0239075C */ _t52 = cpu->r[29] + 0x00000008u;
|
|
/* 0239075C */ cpu->r[0] = rbrew_read32(cpu->mem, _t52);
|
|
/* 02390760 */ _t53 = cpu->r[4] + 0x00000008u;
|
|
/* 02390760 */ rbrew_write32(cpu->mem, _t53, cpu->r[0]);
|
|
/* 02390764 */ /* nop */
|
|
/* 02390768 */ /* nop */
|
|
/* 0239076C */ _t54 = cpu->r[29] + 0x00000008u;
|
|
/* 0239076C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 02390770 */ /* nop */
|
|
/* 02390774 */ _t55 = cpu->r[30] + 0x00000008u;
|
|
/* 02390774 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t55);
|
|
/* 02390778 */ /* nop */
|
|
/* 0239077C */ _t56 = cpu->r[1] + 0x00000008u;
|
|
/* 0239077C */ cpu->r[7] = rbrew_read32(cpu->mem, _t56);
|
|
/* 02390780 */ cpu->f[0] = cpu->f[10] - cpu->f[13];
|
|
/* 02390784 */ _t57 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02390784 */ cpu->r[8] = rbrew_read32(cpu->mem, _t57);
|
|
/* 02390788 */ _t58 = cpu->r[1] + 0x00000014u;
|
|
/* 02390788 */ rbrew_write32(cpu->mem, _t58, cpu->r[7]);
|
|
/* 0239078C */ _t59 = cpu->r[1] + 0x00000010u;
|
|
/* 0239078C */ rbrew_write_f32(cpu->mem, _t59, cpu->f[0]);
|
|
/* 02390790 */ _t60 = cpu->r[1] + 0x00000010u;
|
|
/* 02390790 */ cpu->r[0] = rbrew_read32(cpu->mem, _t60);
|
|
/* 02390794 */ _t61 = cpu->r[1] + 0x00000018u;
|
|
/* 02390794 */ rbrew_write32(cpu->mem, _t61, cpu->r[8]);
|
|
/* 02390798 */ cpu->r[3] = cpu->r[1] + 0x00000014u;
|
|
/* 0239079C */ _t62 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239079C */ rbrew_write32(cpu->mem, _t62, cpu->r[0]);
|
|
/* 023907A0 */ Gambit_fn_02C69350(cpu);
|
|
/* 023907A4 */ cpu->f[0] = cpu->f[1] * cpu->f[29];
|
|
/* 023907A8 */ _t63 = cpu->r[29] + 0x00000004u;
|
|
/* 023907A8 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t63);
|
|
/* 023907AC */ cpu->r[12] = 0x10080000u;
|
|
/* 023907B0 */ _t64 = cpu->r[30] + 0x00000004u;
|
|
/* 023907B0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t64);
|
|
/* 023907B4 */ cpu->f[9] = cpu->f[8] - cpu->f[11];
|
|
/* 023907B8 */ _t65 = cpu->r[12] + 0x000064F4u;
|
|
/* 023907B8 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t65);
|
|
/* 023907BC */ /* nop */
|
|
/* 023907C0 */ cpu->f[9] = cpu->f[13] + cpu->f[26];
|
|
/* 023907C4 */ cpu->f[8] = cpu->f[9] - cpu->f[8];
|
|
/* 023907C8 */ cpu->f[7] = cpu->f[8] * cpu->f[8];
|
|
/* 023907CC */ cpu->f[6] = fma(cpu->f[0], cpu->f[0], cpu->f[7]);
|
|
/* 023907D0 */ cpu->r[11] = 0x10080000u;
|
|
/* 023907D4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[6], cpu->f[31]);
|
|
/* 023907D8 */ _t66 = cpu->r[11] + 0x000064F8u;
|
|
/* 023907D8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t66);
|
|
/* 023907DC */ _t67 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 023907DC */ _t68 = _t67 & 0x00000001u;
|
|
/* 023907DC */ if (_t68) goto L_02390870; else goto L_023907E0;
|
|
L_023907E0: ; // 0x23907e0
|
|
/* 023907E0 */ cpu->r[10] = 0x10080000u;
|
|
/* 023907E4 */ cpu->f[9] = cpu->f[9] - cpu->f[11];
|
|
/* 023907E8 */ _t69 = cpu->r[10] + 0x000064E8u;
|
|
/* 023907E8 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t69);
|
|
/* 023907EC */ cpu->f[7] = cpu->f[31] * cpu->f[6];
|
|
/* 023907F0 */ cpu->f[8] = cpu->f[30] - cpu->f[29];
|
|
/* 023907F4 */ cpu->f[11] = cpu->f[9] * cpu->f[9];
|
|
/* 023907F8 */ cpu->f[9] = cpu->f[1] * cpu->f[8];
|
|
/* 023907FC */ cpu->f[6] = fma(cpu->f[9], cpu->f[9], cpu->f[11]);
|
|
/* 02390800 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[6], cpu->f[31]);
|
|
/* 02390804 */ _t70 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02390804 */ _t71 = _t70 & 0x00000001u;
|
|
/* 02390804 */ if (_t71) goto L_02390808; else goto L_023908B0;
|
|
L_02390808: ; // 0x2390808
|
|
/* 02390808 */ _ft72 = sqrt(cpu->f[6]);
|
|
/* 02390808 */ _ft73 = (double)(int32_t)0x00000001u;
|
|
/* 02390808 */ cpu->f[0] = _ft73 / _ft72;
|
|
/* 0239080C */ cpu->f[13] = cpu->f[0] * cpu->f[0];
|
|
/* 02390810 */ cpu->f[8] = cpu->f[0] * cpu->f[10];
|
|
/* 02390814 */ cpu->f[13] = -fma(cpu->f[13], cpu->f[6], -(cpu->f[12]));
|
|
/* 02390818 */ cpu->f[0] = cpu->f[13] * cpu->f[8];
|
|
/* 0239081C */ cpu->f[12] = fma(cpu->f[0], cpu->f[6], cpu->f[7]);
|
|
/* 02390820 */ cpu->f[3] = cpu->f[29];
|
|
/* 02390824 */ cpu->f[2] = cpu->f[31];
|
|
/* 02390828 */ cpu->f[27] = cpu->f[12] / cpu->f[27];
|
|
/* 0239082C */ cpu->f[1] = cpu->f[27];
|
|
/* 02390830 */ _t74 = cpu->r[28] + 0x00000000u;
|
|
/* 02390830 */ cpu->r[3] = rbrew_read32(cpu->mem, _t74);
|
|
/* 02390834 */ cpu->f[4] = cpu->f[26];
|
|
/* 02390838 */ cpu->r[4] = cpu->r[29];
|
|
/* 0239083C */ cpu->r[5] = cpu->r[30];
|
|
/* 02390840 */ Gambit_fn_0204F87C(cpu);
|
|
/* 02390844 */ _t75 = cpu->r[28] + 0x0000000Cu;
|
|
/* 02390844 */ rbrew_write_f32(cpu->mem, _t75, cpu->f[27]);
|
|
/* 02390848 */ _t76 = cpu->r[28] + 0x00000010u;
|
|
/* 02390848 */ rbrew_write_f32(cpu->mem, _t76, cpu->f[31]);
|
|
/* 0239084C */ _t77 = cpu->r[28] + 0x00000008u;
|
|
/* 0239084C */ rbrew_write_f32(cpu->mem, _t77, cpu->f[28]);
|
|
/* 02390850 */ _t78 = cpu->r[31] + 0x00000000u;
|
|
/* 02390850 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t78);
|
|
/* 02390854 */ _t79 = cpu->r[28] + 0x00000020u;
|
|
/* 02390854 */ rbrew_write_f32(cpu->mem, _t79, cpu->f[12]);
|
|
/* 02390858 */ _t80 = cpu->r[31] + 0x00000004u;
|
|
/* 02390858 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t80);
|
|
/* 0239085C */ _t81 = cpu->r[28] + 0x00000024u;
|
|
/* 0239085C */ rbrew_write_f32(cpu->mem, _t81, cpu->f[8]);
|
|
/* 02390860 */ _t82 = cpu->r[31] + 0x00000008u;
|
|
/* 02390860 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t82);
|
|
/* 02390864 */ _t83 = cpu->r[28] + 0x0000002Cu;
|
|
/* 02390864 */ rbrew_write_f32(cpu->mem, _t83, cpu->f[30]);
|
|
/* 02390868 */ _t84 = cpu->r[28] + 0x00000028u;
|
|
/* 02390868 */ rbrew_write_f32(cpu->mem, _t84, cpu->f[7]);
|
|
/* 0239086C */ goto L_02390900;
|
|
L_02390870: ; // 0x2390870
|
|
/* 02390870 */ _ft85 = sqrt(cpu->f[6]);
|
|
/* 02390870 */ _ft86 = (double)(int32_t)0x00000001u;
|
|
/* 02390870 */ cpu->f[13] = _ft86 / _ft85;
|
|
/* 02390874 */ cpu->f[11] = cpu->f[13] * cpu->f[13];
|
|
/* 02390878 */ cpu->f[0] = cpu->f[13] * cpu->f[10];
|
|
/* 0239087C */ cpu->f[11] = -fma(cpu->f[11], cpu->f[6], -(cpu->f[12]));
|
|
/* 02390880 */ cpu->f[13] = cpu->f[11] * cpu->f[0];
|
|
/* 02390884 */ _t87 = cpu->r[30] + 0x00000004u;
|
|
/* 02390884 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t87);
|
|
/* 02390888 */ cpu->r[10] = 0x10080000u;
|
|
/* 0239088C */ cpu->f[7] = cpu->f[13] * cpu->f[6];
|
|
/* 02390890 */ _t88 = cpu->r[10] + 0x000064E8u;
|
|
/* 02390890 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t88);
|
|
/* 02390894 */ cpu->f[9] = cpu->f[9] - cpu->f[11];
|
|
/* 02390898 */ cpu->f[8] = cpu->f[30] - cpu->f[29];
|
|
/* 0239089C */ cpu->f[11] = cpu->f[9] * cpu->f[9];
|
|
/* 023908A0 */ cpu->f[9] = cpu->f[1] * cpu->f[8];
|
|
/* 023908A4 */ cpu->f[6] = fma(cpu->f[9], cpu->f[9], cpu->f[11]);
|
|
/* 023908A8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[6], cpu->f[31]);
|
|
/* 023908AC */ _t89 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 023908AC */ _t90 = _t89 & 0x00000001u;
|
|
/* 023908AC */ if (_t90) goto L_02390808; else goto L_023908B0;
|
|
L_023908B0: ; // 0x23908b0
|
|
/* 023908B0 */ cpu->f[12] = fma(cpu->f[31], cpu->f[6], cpu->f[7]);
|
|
/* 023908B4 */ cpu->f[3] = cpu->f[29];
|
|
/* 023908B8 */ cpu->f[2] = cpu->f[31];
|
|
/* 023908BC */ cpu->f[27] = cpu->f[12] / cpu->f[27];
|
|
/* 023908C0 */ cpu->f[1] = cpu->f[27];
|
|
/* 023908C4 */ _t91 = cpu->r[28] + 0x00000000u;
|
|
/* 023908C4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t91);
|
|
/* 023908C8 */ cpu->f[4] = cpu->f[26];
|
|
/* 023908CC */ cpu->r[4] = cpu->r[29];
|
|
/* 023908D0 */ cpu->r[5] = cpu->r[30];
|
|
/* 023908D4 */ Gambit_fn_0204F87C(cpu);
|
|
/* 023908D8 */ _t92 = cpu->r[28] + 0x0000000Cu;
|
|
/* 023908D8 */ rbrew_write_f32(cpu->mem, _t92, cpu->f[27]);
|
|
/* 023908DC */ _t93 = cpu->r[28] + 0x00000010u;
|
|
/* 023908DC */ rbrew_write_f32(cpu->mem, _t93, cpu->f[31]);
|
|
/* 023908E0 */ _t94 = cpu->r[28] + 0x00000008u;
|
|
/* 023908E0 */ rbrew_write_f32(cpu->mem, _t94, cpu->f[28]);
|
|
/* 023908E4 */ _t95 = cpu->r[31] + 0x00000000u;
|
|
/* 023908E4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t95);
|
|
/* 023908E8 */ _t96 = cpu->r[28] + 0x00000020u;
|
|
/* 023908E8 */ rbrew_write_f32(cpu->mem, _t96, cpu->f[12]);
|
|
/* 023908EC */ _t97 = cpu->r[31] + 0x00000004u;
|
|
/* 023908EC */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t97);
|
|
/* 023908F0 */ _t98 = cpu->r[28] + 0x00000024u;
|
|
/* 023908F0 */ rbrew_write_f32(cpu->mem, _t98, cpu->f[8]);
|
|
/* 023908F4 */ _t99 = cpu->r[31] + 0x00000008u;
|
|
/* 023908F4 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t99);
|
|
/* 023908F8 */ _t100 = cpu->r[28] + 0x0000002Cu;
|
|
/* 023908F8 */ rbrew_write_f32(cpu->mem, _t100, cpu->f[30]);
|
|
/* 023908FC */ _t101 = cpu->r[28] + 0x00000028u;
|
|
/* 023908FC */ rbrew_write_f32(cpu->mem, _t101, cpu->f[7]);
|
|
L_02390900: ; // 0x2390900
|
|
/* 02390900 */ _t102 = cpu->r[1] + 0x00000020u;
|
|
/* 02390900 */ cpu->r[28] = rbrew_read32(cpu->mem, _t102);
|
|
/* 02390904 */ _t103 = cpu->r[1] + 0x00000024u;
|
|
/* 02390904 */ cpu->r[29] = rbrew_read32(cpu->mem, _t103);
|
|
/* 02390908 */ _t104 = cpu->r[1] + 0x00000058u;
|
|
/* 02390908 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t104);
|
|
/* 0239090C */ cpu->f[1] = cpu->f[27];
|
|
/* 02390910 */ _t105 = cpu->r[1] + 0x00000048u;
|
|
/* 02390910 */ cpu->f[27] = rbrew_read_f32(cpu->mem, _t105);
|
|
/* 02390914 */ _t106 = cpu->r[1] + 0x00000050u;
|
|
/* 02390914 */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t106);
|
|
/* 02390918 */ _t107 = cpu->r[1] + 0x00000068u;
|
|
/* 02390918 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t107);
|
|
/* 0239091C */ _t108 = cpu->r[1] + 0x00000040u;
|
|
/* 0239091C */ cpu->f[27] = rbrew_read_f64(cpu->mem, _t108);
|
|
/* 02390920 */ _t109 = cpu->r[1] + 0x00000060u;
|
|
/* 02390920 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t109);
|
|
/* 02390924 */ _t110 = cpu->r[1] + 0x00000088u;
|
|
/* 02390924 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t110);
|
|
/* 02390928 */ _t111 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02390928 */ cpu->r[31] = rbrew_read32(cpu->mem, _t111);
|
|
/* 0239092C */ _t112 = cpu->r[1] + 0x00000080u;
|
|
/* 0239092C */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t112);
|
|
/* 02390930 */ _t113 = cpu->r[1] + 0x00000078u;
|
|
/* 02390930 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t113);
|
|
/* 02390934 */ _t114 = cpu->r[1] + 0x00000038u;
|
|
/* 02390934 */ cpu->f[26] = rbrew_read_f32(cpu->mem, _t114);
|
|
/* 02390938 */ _t115 = cpu->r[1] + 0x00000070u;
|
|
/* 02390938 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t115);
|
|
/* 0239093C */ _t116 = cpu->r[1] + 0x00000030u;
|
|
/* 0239093C */ cpu->f[26] = rbrew_read_f64(cpu->mem, _t116);
|
|
/* 02390940 */ _t117 = cpu->r[1] + 0x00000028u;
|
|
/* 02390940 */ cpu->r[30] = rbrew_read32(cpu->mem, _t117);
|
|
/* 02390944 */ _t118 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02390944 */ _t119 = _t118 & 0x00000001u;
|
|
/* 02390944 */ if (_t119) goto L_02390948; // else: addr-0 trap, fall-through
|
|
L_02390948: ; // 0x2390948
|
|
/* 02390948 */ _t120 = cpu->r[1] + 0x00000094u;
|
|
/* 02390948 */ cpu->r[0] = rbrew_read32(cpu->mem, _t120);
|
|
/* 0239094C */ cpu->lr = cpu->r[0];
|
|
/* 02390950 */ cpu->r[1] = cpu->r[1] + 0x00000090u;
|
|
/* 02390954 */ return;
|
|
}
|
|
|
|
// fn_0239095C @ 0x239095c
|
|
void Gambit_fn_0239095C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61;
|
|
|
|
L_0239095C: ; // 0x239095c
|
|
/* 0239095C */ _t0 = cpu->r[1] + 0xFFFFFF68u;
|
|
/* 0239095C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239095C */ cpu->r[1] = _t0;
|
|
/* 02390960 */ _t1 = cpu->r[1] + 0x00000088u;
|
|
/* 02390960 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 02390964 */ /* nop */
|
|
/* 02390968 */ _t2 = cpu->r[1] + 0x00000084u;
|
|
/* 02390968 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0239096C */ _t3 = cpu->r[1] + 0x00000090u;
|
|
/* 0239096C */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 02390970 */ cpu->r[31] = cpu->r[3];
|
|
/* 02390974 */ _t4 = cpu->r[1] + 0x0000009Cu;
|
|
/* 02390974 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02390978 */ /* nop */
|
|
/* 0239097C */ _t5 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0239097C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 02390980 */ /* nop */
|
|
/* 02390984 */ _t6 = cpu->r[4] + 0x00000008u;
|
|
/* 02390984 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 02390988 */ /* nop */
|
|
/* 0239098C */ _t7 = cpu->r[31] + 0x00000010u;
|
|
/* 0239098C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 02390990 */ cpu->f[13] = cpu->f[10] - cpu->f[11];
|
|
/* 02390994 */ /* nop */
|
|
/* 02390998 */ _t8 = cpu->r[1] + 0x00000010u;
|
|
/* 02390998 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[13]);
|
|
/* 0239099C */ _t9 = cpu->r[1] + 0x00000010u;
|
|
/* 0239099C */ cpu->r[7] = rbrew_read32(cpu->mem, _t9);
|
|
/* 023909A0 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023909A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 023909A4 */ _t11 = cpu->r[1] + 0x00000008u;
|
|
/* 023909A4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 023909A8 */ _t12 = cpu->r[1] + 0x00000060u;
|
|
/* 023909A8 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 023909AC */ _t13 = cpu->r[1] + 0x0000005Cu;
|
|
/* 023909AC */ rbrew_write32(cpu->mem, _t13, cpu->r[12]);
|
|
/* 023909B0 */ _t14 = cpu->r[31] + 0x00000000u;
|
|
/* 023909B0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t14);
|
|
/* 023909B4 */ cpu->r[4] = cpu->r[1] + 0x00000068u;
|
|
/* 023909B8 */ _t15 = cpu->r[1] + 0x00000064u;
|
|
/* 023909B8 */ rbrew_write32(cpu->mem, _t15, cpu->r[7]);
|
|
/* 023909BC */ Gambit_fn_0204F97C(cpu);
|
|
/* 023909C0 */ _t16 = cpu->r[31] + 0x0000000Cu;
|
|
/* 023909C0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 023909C4 */ _t17 = cpu->r[31] + 0x00000010u;
|
|
/* 023909C4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 023909C8 */ cpu->r[8] = 0x10080000u;
|
|
/* 023909CC */ cpu->f[31] = cpu->f[12] / cpu->f[13];
|
|
/* 023909D0 */ _t18 = cpu->r[8] + 0x000064FCu;
|
|
/* 023909D0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 023909D4 */ cpu->f[1] = cpu->f[0] * cpu->f[31];
|
|
/* 023909D8 */ Gambit_fn_02C886F8(cpu);
|
|
/* 023909DC */ /* nop */
|
|
/* 023909E0 */ /* nop */
|
|
/* 023909E4 */ _t19 = cpu->r[1] + 0x00000064u;
|
|
/* 023909E4 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 023909E8 */ _t20 = cpu->r[1] + 0x00000070u;
|
|
/* 023909E8 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 023909EC */ /* nop */
|
|
/* 023909F0 */ cpu->f[11] = cpu->f[9] * cpu->f[31];
|
|
/* 023909F4 */ _t21 = cpu->r[31] + 0x00000028u;
|
|
/* 023909F4 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 023909F8 */ /* nop */
|
|
/* 023909FC */ _t22 = cpu->r[1] + 0x00000018u;
|
|
/* 023909FC */ cpu->r[6] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02390A00 */ /* nop */
|
|
/* 02390A04 */ _t23 = cpu->r[1] + 0x00000028u;
|
|
/* 02390A04 */ rbrew_write_f32(cpu->mem, _t23, cpu->f[11]);
|
|
/* 02390A08 */ _t24 = cpu->r[1] + 0x00000028u;
|
|
/* 02390A08 */ cpu->r[11] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02390A0C */ /* nop */
|
|
/* 02390A10 */ _t25 = cpu->r[1] + 0x00000024u;
|
|
/* 02390A10 */ cpu->r[10] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02390A14 */ _t26 = cpu->r[1] + 0x00000020u;
|
|
/* 02390A14 */ cpu->r[9] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02390A18 */ _t27 = cpu->r[1] + 0x00000014u;
|
|
/* 02390A18 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02390A1C */ _t28 = cpu->r[1] + 0x00000050u;
|
|
/* 02390A1C */ rbrew_write32(cpu->mem, _t28, cpu->r[9]);
|
|
/* 02390A20 */ cpu->f[9] = cpu->f[8] * cpu->f[1];
|
|
/* 02390A24 */ _t29 = cpu->r[1] + 0x00000054u;
|
|
/* 02390A24 */ rbrew_write32(cpu->mem, _t29, cpu->r[10]);
|
|
/* 02390A28 */ _t30 = cpu->r[1] + 0x00000058u;
|
|
/* 02390A28 */ rbrew_write32(cpu->mem, _t30, cpu->r[11]);
|
|
/* 02390A2C */ _t31 = cpu->r[1] + 0x00000058u;
|
|
/* 02390A2C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 02390A30 */ /* nop */
|
|
/* 02390A34 */ /* nop */
|
|
/* 02390A38 */ _t32 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02390A38 */ rbrew_write_f32(cpu->mem, _t32, cpu->f[9]);
|
|
/* 02390A3C */ _t33 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02390A3C */ cpu->r[10] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02390A40 */ /* nop */
|
|
/* 02390A44 */ /* nop */
|
|
/* 02390A48 */ _t34 = cpu->r[1] + 0x00000030u;
|
|
/* 02390A48 */ cpu->r[12] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02390A4C */ cpu->f[9] = cpu->f[10] + cpu->f[11];
|
|
/* 02390A50 */ _t35 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02390A50 */ rbrew_write32(cpu->mem, _t35, cpu->r[10]);
|
|
/* 02390A54 */ _t36 = cpu->r[1] + 0x00000074u;
|
|
/* 02390A54 */ rbrew_write32(cpu->mem, _t36, cpu->r[0]);
|
|
/* 02390A58 */ _t37 = cpu->r[1] + 0x00000034u;
|
|
/* 02390A58 */ rbrew_write_f32(cpu->mem, _t37, cpu->f[9]);
|
|
/* 02390A5C */ _t38 = cpu->r[1] + 0x00000034u;
|
|
/* 02390A5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02390A60 */ _t39 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02390A60 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t39);
|
|
/* 02390A64 */ _t40 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02390A64 */ rbrew_write32(cpu->mem, _t40, cpu->r[0]);
|
|
/* 02390A68 */ _t41 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02390A68 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 02390A6C */ _t42 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02390A6C */ cpu->r[11] = rbrew_read32(cpu->mem, _t42);
|
|
/* 02390A70 */ _t43 = cpu->r[1] + 0x00000078u;
|
|
/* 02390A70 */ rbrew_write32(cpu->mem, _t43, cpu->r[6]);
|
|
/* 02390A74 */ /* nop */
|
|
/* 02390A78 */ _t44 = cpu->r[1] + 0x00000044u;
|
|
/* 02390A78 */ rbrew_write32(cpu->mem, _t44, cpu->r[11]);
|
|
/* 02390A7C */ _t45 = cpu->r[1] + 0x00000048u;
|
|
/* 02390A7C */ rbrew_write32(cpu->mem, _t45, cpu->r[12]);
|
|
/* 02390A80 */ /* nop */
|
|
/* 02390A84 */ cpu->f[12] = cpu->f[13] + cpu->f[0];
|
|
/* 02390A88 */ _t46 = cpu->r[31] + 0x00000004u;
|
|
/* 02390A88 */ cpu->r[10] = rbrew_read32(cpu->mem, _t46);
|
|
/* 02390A8C */ /* nop */
|
|
/* 02390A90 */ /* nop */
|
|
/* 02390A94 */ _t47 = cpu->r[1] + 0x00000038u;
|
|
/* 02390A94 */ cpu->r[7] = rbrew_read32(cpu->mem, _t47);
|
|
/* 02390A98 */ _t48 = cpu->r[1] + 0x00000040u;
|
|
/* 02390A98 */ rbrew_write_f32(cpu->mem, _t48, cpu->f[12]);
|
|
/* 02390A9C */ _t49 = cpu->r[10] + 0x00000000u;
|
|
/* 02390A9C */ rbrew_write32(cpu->mem, _t49, cpu->r[7]);
|
|
/* 02390AA0 */ _t50 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02390AA0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t50);
|
|
/* 02390AA4 */ _t51 = cpu->r[10] + 0x00000004u;
|
|
/* 02390AA4 */ rbrew_write32(cpu->mem, _t51, cpu->r[9]);
|
|
/* 02390AA8 */ _t52 = cpu->r[1] + 0x00000040u;
|
|
/* 02390AA8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t52);
|
|
/* 02390AAC */ _t53 = cpu->r[10] + 0x00000008u;
|
|
/* 02390AAC */ rbrew_write32(cpu->mem, _t53, cpu->r[0]);
|
|
/* 02390AB0 */ _t54 = cpu->r[31] + 0x00000010u;
|
|
/* 02390AB0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 02390AB4 */ _t55 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02390AB4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t55);
|
|
/* 02390AB8 */ _t56 = cpu->r[1] + 0x00000090u;
|
|
/* 02390AB8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 02390ABC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[0]);
|
|
/* 02390AC0 */ /* nop */
|
|
/* 02390AC4 */ _t57 = cpu->r[1] + 0x00000084u;
|
|
/* 02390AC4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t57);
|
|
/* 02390AC8 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000001u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02390ACC */ _t58 = cpu->r[1] + 0x00000088u;
|
|
/* 02390ACC */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t58);
|
|
/* 02390AD0 */ cpu->r[3] = cpu->r[3] ^ 0x00000001u;
|
|
/* 02390AD4 */ _t59 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02390AD4 */ _t60 = _t59 & 0x00000001u;
|
|
/* 02390AD4 */ if (_t60) goto L_02390AD8; // else: addr-0 trap, fall-through
|
|
L_02390AD8: ; // 0x2390ad8
|
|
/* 02390AD8 */ _t61 = cpu->r[1] + 0x0000009Cu;
|
|
/* 02390AD8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t61);
|
|
/* 02390ADC */ cpu->lr = cpu->r[0];
|
|
/* 02390AE0 */ cpu->r[1] = cpu->r[1] + 0x00000098u;
|
|
/* 02390AE4 */ return;
|
|
}
|
|
|
|
// fn_02390AE8 @ 0x2390ae8
|
|
void Gambit_fn_02390AE8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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;
|
|
|
|
L_02390958: ; // 0x2390958
|
|
/* 02390958 */ cpu->r[0] = cpu->lr;
|
|
/* 0239095C */ _t0 = cpu->r[1] + 0xFFFFFF68u;
|
|
/* 0239095C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239095C */ cpu->r[1] = _t0;
|
|
/* 02390960 */ _t1 = cpu->r[1] + 0x00000088u;
|
|
/* 02390960 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 02390964 */ /* nop */
|
|
/* 02390968 */ _t2 = cpu->r[1] + 0x00000084u;
|
|
/* 02390968 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0239096C */ _t3 = cpu->r[1] + 0x00000090u;
|
|
/* 0239096C */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 02390970 */ cpu->r[31] = cpu->r[3];
|
|
/* 02390974 */ _t4 = cpu->r[1] + 0x0000009Cu;
|
|
/* 02390974 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02390978 */ /* nop */
|
|
/* 0239097C */ _t5 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0239097C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 02390980 */ /* nop */
|
|
/* 02390984 */ _t6 = cpu->r[4] + 0x00000008u;
|
|
/* 02390984 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 02390988 */ /* nop */
|
|
/* 0239098C */ _t7 = cpu->r[31] + 0x00000010u;
|
|
/* 0239098C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 02390990 */ cpu->f[13] = cpu->f[10] - cpu->f[11];
|
|
/* 02390994 */ /* nop */
|
|
/* 02390998 */ _t8 = cpu->r[1] + 0x00000010u;
|
|
/* 02390998 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[13]);
|
|
/* 0239099C */ _t9 = cpu->r[1] + 0x00000010u;
|
|
/* 0239099C */ cpu->r[7] = rbrew_read32(cpu->mem, _t9);
|
|
/* 023909A0 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023909A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 023909A4 */ _t11 = cpu->r[1] + 0x00000008u;
|
|
/* 023909A4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 023909A8 */ _t12 = cpu->r[1] + 0x00000060u;
|
|
/* 023909A8 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 023909AC */ _t13 = cpu->r[1] + 0x0000005Cu;
|
|
/* 023909AC */ rbrew_write32(cpu->mem, _t13, cpu->r[12]);
|
|
/* 023909B0 */ _t14 = cpu->r[31] + 0x00000000u;
|
|
/* 023909B0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t14);
|
|
/* 023909B4 */ cpu->r[4] = cpu->r[1] + 0x00000068u;
|
|
/* 023909B8 */ _t15 = cpu->r[1] + 0x00000064u;
|
|
/* 023909B8 */ rbrew_write32(cpu->mem, _t15, cpu->r[7]);
|
|
/* 023909BC */ Gambit_fn_0204F97C(cpu);
|
|
/* 023909C0 */ _t16 = cpu->r[31] + 0x0000000Cu;
|
|
/* 023909C0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 023909C4 */ _t17 = cpu->r[31] + 0x00000010u;
|
|
/* 023909C4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 023909C8 */ cpu->r[8] = 0x10080000u;
|
|
/* 023909CC */ cpu->f[31] = cpu->f[12] / cpu->f[13];
|
|
/* 023909D0 */ _t18 = cpu->r[8] + 0x000064FCu;
|
|
/* 023909D0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 023909D4 */ cpu->f[1] = cpu->f[0] * cpu->f[31];
|
|
/* 023909D8 */ Gambit_fn_02C886F8(cpu);
|
|
/* 023909DC */ /* nop */
|
|
/* 023909E0 */ /* nop */
|
|
/* 023909E4 */ _t19 = cpu->r[1] + 0x00000064u;
|
|
/* 023909E4 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 023909E8 */ _t20 = cpu->r[1] + 0x00000070u;
|
|
/* 023909E8 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 023909EC */ /* nop */
|
|
/* 023909F0 */ cpu->f[11] = cpu->f[9] * cpu->f[31];
|
|
/* 023909F4 */ _t21 = cpu->r[31] + 0x00000028u;
|
|
/* 023909F4 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 023909F8 */ /* nop */
|
|
/* 023909FC */ _t22 = cpu->r[1] + 0x00000018u;
|
|
/* 023909FC */ cpu->r[6] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02390A00 */ /* nop */
|
|
/* 02390A04 */ _t23 = cpu->r[1] + 0x00000028u;
|
|
/* 02390A04 */ rbrew_write_f32(cpu->mem, _t23, cpu->f[11]);
|
|
/* 02390A08 */ _t24 = cpu->r[1] + 0x00000028u;
|
|
/* 02390A08 */ cpu->r[11] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02390A0C */ /* nop */
|
|
/* 02390A10 */ _t25 = cpu->r[1] + 0x00000024u;
|
|
/* 02390A10 */ cpu->r[10] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02390A14 */ _t26 = cpu->r[1] + 0x00000020u;
|
|
/* 02390A14 */ cpu->r[9] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02390A18 */ _t27 = cpu->r[1] + 0x00000014u;
|
|
/* 02390A18 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02390A1C */ _t28 = cpu->r[1] + 0x00000050u;
|
|
/* 02390A1C */ rbrew_write32(cpu->mem, _t28, cpu->r[9]);
|
|
/* 02390A20 */ cpu->f[9] = cpu->f[8] * cpu->f[1];
|
|
/* 02390A24 */ _t29 = cpu->r[1] + 0x00000054u;
|
|
/* 02390A24 */ rbrew_write32(cpu->mem, _t29, cpu->r[10]);
|
|
/* 02390A28 */ _t30 = cpu->r[1] + 0x00000058u;
|
|
/* 02390A28 */ rbrew_write32(cpu->mem, _t30, cpu->r[11]);
|
|
/* 02390A2C */ _t31 = cpu->r[1] + 0x00000058u;
|
|
/* 02390A2C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 02390A30 */ /* nop */
|
|
/* 02390A34 */ /* nop */
|
|
/* 02390A38 */ _t32 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02390A38 */ rbrew_write_f32(cpu->mem, _t32, cpu->f[9]);
|
|
/* 02390A3C */ _t33 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02390A3C */ cpu->r[10] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02390A40 */ /* nop */
|
|
/* 02390A44 */ /* nop */
|
|
/* 02390A48 */ _t34 = cpu->r[1] + 0x00000030u;
|
|
/* 02390A48 */ cpu->r[12] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02390A4C */ cpu->f[9] = cpu->f[10] + cpu->f[11];
|
|
/* 02390A50 */ _t35 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02390A50 */ rbrew_write32(cpu->mem, _t35, cpu->r[10]);
|
|
/* 02390A54 */ _t36 = cpu->r[1] + 0x00000074u;
|
|
/* 02390A54 */ rbrew_write32(cpu->mem, _t36, cpu->r[0]);
|
|
/* 02390A58 */ _t37 = cpu->r[1] + 0x00000034u;
|
|
/* 02390A58 */ rbrew_write_f32(cpu->mem, _t37, cpu->f[9]);
|
|
/* 02390A5C */ _t38 = cpu->r[1] + 0x00000034u;
|
|
/* 02390A5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02390A60 */ _t39 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02390A60 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t39);
|
|
/* 02390A64 */ _t40 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02390A64 */ rbrew_write32(cpu->mem, _t40, cpu->r[0]);
|
|
/* 02390A68 */ _t41 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02390A68 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 02390A6C */ _t42 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02390A6C */ cpu->r[11] = rbrew_read32(cpu->mem, _t42);
|
|
/* 02390A70 */ _t43 = cpu->r[1] + 0x00000078u;
|
|
/* 02390A70 */ rbrew_write32(cpu->mem, _t43, cpu->r[6]);
|
|
/* 02390A74 */ /* nop */
|
|
/* 02390A78 */ _t44 = cpu->r[1] + 0x00000044u;
|
|
/* 02390A78 */ rbrew_write32(cpu->mem, _t44, cpu->r[11]);
|
|
/* 02390A7C */ _t45 = cpu->r[1] + 0x00000048u;
|
|
/* 02390A7C */ rbrew_write32(cpu->mem, _t45, cpu->r[12]);
|
|
/* 02390A80 */ /* nop */
|
|
/* 02390A84 */ cpu->f[12] = cpu->f[13] + cpu->f[0];
|
|
/* 02390A88 */ _t46 = cpu->r[31] + 0x00000004u;
|
|
/* 02390A88 */ cpu->r[10] = rbrew_read32(cpu->mem, _t46);
|
|
/* 02390A8C */ /* nop */
|
|
/* 02390A90 */ /* nop */
|
|
/* 02390A94 */ _t47 = cpu->r[1] + 0x00000038u;
|
|
/* 02390A94 */ cpu->r[7] = rbrew_read32(cpu->mem, _t47);
|
|
/* 02390A98 */ _t48 = cpu->r[1] + 0x00000040u;
|
|
/* 02390A98 */ rbrew_write_f32(cpu->mem, _t48, cpu->f[12]);
|
|
/* 02390A9C */ _t49 = cpu->r[10] + 0x00000000u;
|
|
/* 02390A9C */ rbrew_write32(cpu->mem, _t49, cpu->r[7]);
|
|
/* 02390AA0 */ _t50 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02390AA0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t50);
|
|
/* 02390AA4 */ _t51 = cpu->r[10] + 0x00000004u;
|
|
/* 02390AA4 */ rbrew_write32(cpu->mem, _t51, cpu->r[9]);
|
|
/* 02390AA8 */ _t52 = cpu->r[1] + 0x00000040u;
|
|
/* 02390AA8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t52);
|
|
/* 02390AAC */ _t53 = cpu->r[10] + 0x00000008u;
|
|
/* 02390AAC */ rbrew_write32(cpu->mem, _t53, cpu->r[0]);
|
|
/* 02390AB0 */ _t54 = cpu->r[31] + 0x00000010u;
|
|
/* 02390AB0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 02390AB4 */ _t55 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02390AB4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t55);
|
|
/* 02390AB8 */ _t56 = cpu->r[1] + 0x00000090u;
|
|
/* 02390AB8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 02390ABC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[0]);
|
|
/* 02390AC0 */ /* nop */
|
|
/* 02390AC4 */ _t57 = cpu->r[1] + 0x00000084u;
|
|
/* 02390AC4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t57);
|
|
/* 02390AC8 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000001u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02390ACC */ _t58 = cpu->r[1] + 0x00000088u;
|
|
/* 02390ACC */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t58);
|
|
/* 02390AD0 */ cpu->r[3] = cpu->r[3] ^ 0x00000001u;
|
|
/* 02390AD4 */ _t59 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02390AD4 */ _t60 = _t59 & 0x00000001u;
|
|
/* 02390AD4 */ if (_t60) goto L_02390AD8; // else: addr-0 trap, fall-through
|
|
L_02390AD8: ; // 0x2390ad8
|
|
/* 02390AD8 */ _t61 = cpu->r[1] + 0x0000009Cu;
|
|
/* 02390AD8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t61);
|
|
/* 02390ADC */ cpu->lr = cpu->r[0];
|
|
/* 02390AE0 */ cpu->r[1] = cpu->r[1] + 0x00000098u;
|
|
/* 02390AE4 */ return;
|
|
L_02390AE8: ; // 0x2390ae8
|
|
/* 02390AE8 */ _t62 = cpu->r[3] + 0x00000004u;
|
|
/* 02390AE8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t62);
|
|
/* 02390AEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02390AF0 */ _t63 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02390AF0 */ _t64 = _t63 & 0x00000001u;
|
|
/* 02390AF0 */ if (_t64) goto L_02390B50; else goto L_02390AF4;
|
|
L_02390AF4: ; // 0x2390af4
|
|
/* 02390AF4 */ cpu->r[11] = 0x10080000u;
|
|
/* 02390AF8 */ _t65 = cpu->r[3] + 0x00000008u;
|
|
/* 02390AF8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t65);
|
|
/* 02390AFC */ _t66 = cpu->r[11] + 0x000064E8u;
|
|
/* 02390AFC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t66);
|
|
/* 02390B00 */ cpu->r[12] = 0x10080000u;
|
|
/* 02390B04 */ cpu->f[12] = cpu->f[12] - cpu->f[13];
|
|
/* 02390B08 */ _t67 = cpu->r[12] + 0x000064D8u;
|
|
/* 02390B08 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t67);
|
|
/* 02390B0C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[12]);
|
|
/* 02390B10 */ cpu->f[13] = cpu->f[12];
|
|
/* 02390B14 */ _t68 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02390B14 */ _t69 = _t68 & 0x00000001u;
|
|
/* 02390B14 */ if (_t69) goto L_02390B18; else goto L_02390B30;
|
|
L_02390B18: ; // 0x2390b18
|
|
/* 02390B18 */ _t70 = cpu->r[3] + 0x00000008u;
|
|
/* 02390B18 */ rbrew_write_f32(cpu->mem, _t70, cpu->f[0]);
|
|
/* 02390B1C */ _t71 = cpu->r[3] + 0x00000010u;
|
|
/* 02390B1C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t71);
|
|
/* 02390B20 */ _t72 = cpu->r[3] + 0x0000002Cu;
|
|
/* 02390B20 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t72);
|
|
/* 02390B24 */ cpu->f[0] = cpu->f[0] + cpu->f[12];
|
|
/* 02390B28 */ _t73 = cpu->r[3] + 0x00000010u;
|
|
/* 02390B28 */ rbrew_write_f32(cpu->mem, _t73, cpu->f[0]);
|
|
/* 02390B2C */ goto L_02390958;
|
|
L_02390B30: ; // 0x2390b30
|
|
/* 02390B30 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[0]);
|
|
/* 02390B34 */ _t74 = cpu->r[3] + 0x00000008u;
|
|
/* 02390B34 */ rbrew_write_f32(cpu->mem, _t74, cpu->f[13]);
|
|
/* 02390B38 */ _t75 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02390B38 */ _t76 = _t75 & 0x00000001u;
|
|
/* 02390B38 */ if (_t76) goto L_02390B3C; else goto L_02390B50;
|
|
L_02390B3C: ; // 0x2390b3c
|
|
/* 02390B3C */ _t77 = cpu->r[3] + 0x0000002Cu;
|
|
/* 02390B3C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t77);
|
|
/* 02390B40 */ _t78 = cpu->r[3] + 0x00000010u;
|
|
/* 02390B40 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t78);
|
|
/* 02390B44 */ cpu->f[0] = cpu->f[0] + cpu->f[12];
|
|
/* 02390B48 */ _t79 = cpu->r[3] + 0x00000010u;
|
|
/* 02390B48 */ rbrew_write_f32(cpu->mem, _t79, cpu->f[0]);
|
|
/* 02390B4C */ goto L_02390958;
|
|
L_02390B50: ; // 0x2390b50
|
|
/* 02390B50 */ cpu->r[3] = 0x00000000u;
|
|
/* 02390B54 */ return;
|
|
}
|
|
|
|
// fn_02390B58 @ 0x2390b58
|
|
void Gambit_fn_02390B58(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75;
|
|
|
|
L_02390958: ; // 0x2390958
|
|
/* 02390958 */ cpu->r[0] = cpu->lr;
|
|
/* 0239095C */ _t0 = cpu->r[1] + 0xFFFFFF68u;
|
|
/* 0239095C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239095C */ cpu->r[1] = _t0;
|
|
/* 02390960 */ _t1 = cpu->r[1] + 0x00000088u;
|
|
/* 02390960 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 02390964 */ /* nop */
|
|
/* 02390968 */ _t2 = cpu->r[1] + 0x00000084u;
|
|
/* 02390968 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0239096C */ _t3 = cpu->r[1] + 0x00000090u;
|
|
/* 0239096C */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 02390970 */ cpu->r[31] = cpu->r[3];
|
|
/* 02390974 */ _t4 = cpu->r[1] + 0x0000009Cu;
|
|
/* 02390974 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02390978 */ /* nop */
|
|
/* 0239097C */ _t5 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0239097C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 02390980 */ /* nop */
|
|
/* 02390984 */ _t6 = cpu->r[4] + 0x00000008u;
|
|
/* 02390984 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 02390988 */ /* nop */
|
|
/* 0239098C */ _t7 = cpu->r[31] + 0x00000010u;
|
|
/* 0239098C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 02390990 */ cpu->f[13] = cpu->f[10] - cpu->f[11];
|
|
/* 02390994 */ /* nop */
|
|
/* 02390998 */ _t8 = cpu->r[1] + 0x00000010u;
|
|
/* 02390998 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[13]);
|
|
/* 0239099C */ _t9 = cpu->r[1] + 0x00000010u;
|
|
/* 0239099C */ cpu->r[7] = rbrew_read32(cpu->mem, _t9);
|
|
/* 023909A0 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023909A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 023909A4 */ _t11 = cpu->r[1] + 0x00000008u;
|
|
/* 023909A4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 023909A8 */ _t12 = cpu->r[1] + 0x00000060u;
|
|
/* 023909A8 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 023909AC */ _t13 = cpu->r[1] + 0x0000005Cu;
|
|
/* 023909AC */ rbrew_write32(cpu->mem, _t13, cpu->r[12]);
|
|
/* 023909B0 */ _t14 = cpu->r[31] + 0x00000000u;
|
|
/* 023909B0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t14);
|
|
/* 023909B4 */ cpu->r[4] = cpu->r[1] + 0x00000068u;
|
|
/* 023909B8 */ _t15 = cpu->r[1] + 0x00000064u;
|
|
/* 023909B8 */ rbrew_write32(cpu->mem, _t15, cpu->r[7]);
|
|
/* 023909BC */ Gambit_fn_0204F97C(cpu);
|
|
/* 023909C0 */ _t16 = cpu->r[31] + 0x0000000Cu;
|
|
/* 023909C0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 023909C4 */ _t17 = cpu->r[31] + 0x00000010u;
|
|
/* 023909C4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 023909C8 */ cpu->r[8] = 0x10080000u;
|
|
/* 023909CC */ cpu->f[31] = cpu->f[12] / cpu->f[13];
|
|
/* 023909D0 */ _t18 = cpu->r[8] + 0x000064FCu;
|
|
/* 023909D0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 023909D4 */ cpu->f[1] = cpu->f[0] * cpu->f[31];
|
|
/* 023909D8 */ Gambit_fn_02C886F8(cpu);
|
|
/* 023909DC */ /* nop */
|
|
/* 023909E0 */ /* nop */
|
|
/* 023909E4 */ _t19 = cpu->r[1] + 0x00000064u;
|
|
/* 023909E4 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 023909E8 */ _t20 = cpu->r[1] + 0x00000070u;
|
|
/* 023909E8 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 023909EC */ /* nop */
|
|
/* 023909F0 */ cpu->f[11] = cpu->f[9] * cpu->f[31];
|
|
/* 023909F4 */ _t21 = cpu->r[31] + 0x00000028u;
|
|
/* 023909F4 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 023909F8 */ /* nop */
|
|
/* 023909FC */ _t22 = cpu->r[1] + 0x00000018u;
|
|
/* 023909FC */ cpu->r[6] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02390A00 */ /* nop */
|
|
/* 02390A04 */ _t23 = cpu->r[1] + 0x00000028u;
|
|
/* 02390A04 */ rbrew_write_f32(cpu->mem, _t23, cpu->f[11]);
|
|
/* 02390A08 */ _t24 = cpu->r[1] + 0x00000028u;
|
|
/* 02390A08 */ cpu->r[11] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02390A0C */ /* nop */
|
|
/* 02390A10 */ _t25 = cpu->r[1] + 0x00000024u;
|
|
/* 02390A10 */ cpu->r[10] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02390A14 */ _t26 = cpu->r[1] + 0x00000020u;
|
|
/* 02390A14 */ cpu->r[9] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02390A18 */ _t27 = cpu->r[1] + 0x00000014u;
|
|
/* 02390A18 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02390A1C */ _t28 = cpu->r[1] + 0x00000050u;
|
|
/* 02390A1C */ rbrew_write32(cpu->mem, _t28, cpu->r[9]);
|
|
/* 02390A20 */ cpu->f[9] = cpu->f[8] * cpu->f[1];
|
|
/* 02390A24 */ _t29 = cpu->r[1] + 0x00000054u;
|
|
/* 02390A24 */ rbrew_write32(cpu->mem, _t29, cpu->r[10]);
|
|
/* 02390A28 */ _t30 = cpu->r[1] + 0x00000058u;
|
|
/* 02390A28 */ rbrew_write32(cpu->mem, _t30, cpu->r[11]);
|
|
/* 02390A2C */ _t31 = cpu->r[1] + 0x00000058u;
|
|
/* 02390A2C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 02390A30 */ /* nop */
|
|
/* 02390A34 */ /* nop */
|
|
/* 02390A38 */ _t32 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02390A38 */ rbrew_write_f32(cpu->mem, _t32, cpu->f[9]);
|
|
/* 02390A3C */ _t33 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02390A3C */ cpu->r[10] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02390A40 */ /* nop */
|
|
/* 02390A44 */ /* nop */
|
|
/* 02390A48 */ _t34 = cpu->r[1] + 0x00000030u;
|
|
/* 02390A48 */ cpu->r[12] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02390A4C */ cpu->f[9] = cpu->f[10] + cpu->f[11];
|
|
/* 02390A50 */ _t35 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02390A50 */ rbrew_write32(cpu->mem, _t35, cpu->r[10]);
|
|
/* 02390A54 */ _t36 = cpu->r[1] + 0x00000074u;
|
|
/* 02390A54 */ rbrew_write32(cpu->mem, _t36, cpu->r[0]);
|
|
/* 02390A58 */ _t37 = cpu->r[1] + 0x00000034u;
|
|
/* 02390A58 */ rbrew_write_f32(cpu->mem, _t37, cpu->f[9]);
|
|
/* 02390A5C */ _t38 = cpu->r[1] + 0x00000034u;
|
|
/* 02390A5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02390A60 */ _t39 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02390A60 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t39);
|
|
/* 02390A64 */ _t40 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02390A64 */ rbrew_write32(cpu->mem, _t40, cpu->r[0]);
|
|
/* 02390A68 */ _t41 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02390A68 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 02390A6C */ _t42 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02390A6C */ cpu->r[11] = rbrew_read32(cpu->mem, _t42);
|
|
/* 02390A70 */ _t43 = cpu->r[1] + 0x00000078u;
|
|
/* 02390A70 */ rbrew_write32(cpu->mem, _t43, cpu->r[6]);
|
|
/* 02390A74 */ /* nop */
|
|
/* 02390A78 */ _t44 = cpu->r[1] + 0x00000044u;
|
|
/* 02390A78 */ rbrew_write32(cpu->mem, _t44, cpu->r[11]);
|
|
/* 02390A7C */ _t45 = cpu->r[1] + 0x00000048u;
|
|
/* 02390A7C */ rbrew_write32(cpu->mem, _t45, cpu->r[12]);
|
|
/* 02390A80 */ /* nop */
|
|
/* 02390A84 */ cpu->f[12] = cpu->f[13] + cpu->f[0];
|
|
/* 02390A88 */ _t46 = cpu->r[31] + 0x00000004u;
|
|
/* 02390A88 */ cpu->r[10] = rbrew_read32(cpu->mem, _t46);
|
|
/* 02390A8C */ /* nop */
|
|
/* 02390A90 */ /* nop */
|
|
/* 02390A94 */ _t47 = cpu->r[1] + 0x00000038u;
|
|
/* 02390A94 */ cpu->r[7] = rbrew_read32(cpu->mem, _t47);
|
|
/* 02390A98 */ _t48 = cpu->r[1] + 0x00000040u;
|
|
/* 02390A98 */ rbrew_write_f32(cpu->mem, _t48, cpu->f[12]);
|
|
/* 02390A9C */ _t49 = cpu->r[10] + 0x00000000u;
|
|
/* 02390A9C */ rbrew_write32(cpu->mem, _t49, cpu->r[7]);
|
|
/* 02390AA0 */ _t50 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02390AA0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t50);
|
|
/* 02390AA4 */ _t51 = cpu->r[10] + 0x00000004u;
|
|
/* 02390AA4 */ rbrew_write32(cpu->mem, _t51, cpu->r[9]);
|
|
/* 02390AA8 */ _t52 = cpu->r[1] + 0x00000040u;
|
|
/* 02390AA8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t52);
|
|
/* 02390AAC */ _t53 = cpu->r[10] + 0x00000008u;
|
|
/* 02390AAC */ rbrew_write32(cpu->mem, _t53, cpu->r[0]);
|
|
/* 02390AB0 */ _t54 = cpu->r[31] + 0x00000010u;
|
|
/* 02390AB0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 02390AB4 */ _t55 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02390AB4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t55);
|
|
/* 02390AB8 */ _t56 = cpu->r[1] + 0x00000090u;
|
|
/* 02390AB8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 02390ABC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[0]);
|
|
/* 02390AC0 */ /* nop */
|
|
/* 02390AC4 */ _t57 = cpu->r[1] + 0x00000084u;
|
|
/* 02390AC4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t57);
|
|
/* 02390AC8 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000001u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02390ACC */ _t58 = cpu->r[1] + 0x00000088u;
|
|
/* 02390ACC */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t58);
|
|
/* 02390AD0 */ cpu->r[3] = cpu->r[3] ^ 0x00000001u;
|
|
/* 02390AD4 */ _t59 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02390AD4 */ _t60 = _t59 & 0x00000001u;
|
|
/* 02390AD4 */ if (_t60) goto L_02390AD8; // else: addr-0 trap, fall-through
|
|
L_02390AD8: ; // 0x2390ad8
|
|
/* 02390AD8 */ _t61 = cpu->r[1] + 0x0000009Cu;
|
|
/* 02390AD8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t61);
|
|
/* 02390ADC */ cpu->lr = cpu->r[0];
|
|
/* 02390AE0 */ cpu->r[1] = cpu->r[1] + 0x00000098u;
|
|
/* 02390AE4 */ return;
|
|
L_02390B58: ; // 0x2390b58
|
|
/* 02390B58 */ _t62 = cpu->r[3] + 0x00000004u;
|
|
/* 02390B58 */ cpu->r[0] = rbrew_read32(cpu->mem, _t62);
|
|
/* 02390B5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02390B60 */ _t63 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02390B60 */ _t64 = _t63 & 0x00000001u;
|
|
/* 02390B60 */ if (_t64) goto L_02390BA8; else goto L_02390B64;
|
|
L_02390B64: ; // 0x2390b64
|
|
/* 02390B64 */ cpu->r[12] = 0x10080000u;
|
|
/* 02390B68 */ _t65 = cpu->r[3] + 0x00000008u;
|
|
/* 02390B68 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t65);
|
|
/* 02390B6C */ _t66 = cpu->r[12] + 0x000064E8u;
|
|
/* 02390B6C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t66);
|
|
/* 02390B70 */ cpu->r[12] = 0x10080000u;
|
|
/* 02390B74 */ cpu->f[0] = cpu->f[12] - cpu->f[0];
|
|
/* 02390B78 */ _t67 = cpu->r[12] + 0x000064D8u;
|
|
/* 02390B78 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t67);
|
|
/* 02390B7C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[0]);
|
|
/* 02390B80 */ cpu->f[11] = cpu->f[0];
|
|
/* 02390B84 */ _t68 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02390B84 */ _t69 = _t68 & 0x00000001u;
|
|
/* 02390B84 */ if (_t69) goto L_02390B88; else goto L_02390B94;
|
|
L_02390B88: ; // 0x2390b88
|
|
/* 02390B88 */ _t70 = cpu->r[3] + 0x00000008u;
|
|
/* 02390B88 */ rbrew_write_f32(cpu->mem, _t70, cpu->f[13]);
|
|
/* 02390B8C */ _t71 = cpu->r[3] + 0x00000010u;
|
|
/* 02390B8C */ rbrew_write_f32(cpu->mem, _t71, cpu->f[1]);
|
|
/* 02390B90 */ goto L_02390958;
|
|
L_02390B94: ; // 0x2390b94
|
|
/* 02390B94 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[13]);
|
|
/* 02390B98 */ _t72 = cpu->r[3] + 0x00000008u;
|
|
/* 02390B98 */ rbrew_write_f32(cpu->mem, _t72, cpu->f[11]);
|
|
/* 02390B9C */ _t73 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02390B9C */ _t74 = _t73 & 0x00000001u;
|
|
/* 02390B9C */ if (_t74) goto L_02390BA0; else goto L_02390BA8;
|
|
L_02390BA0: ; // 0x2390ba0
|
|
/* 02390BA0 */ _t75 = cpu->r[3] + 0x00000010u;
|
|
/* 02390BA0 */ rbrew_write_f32(cpu->mem, _t75, cpu->f[1]);
|
|
/* 02390BA4 */ goto L_02390958;
|
|
L_02390BA8: ; // 0x2390ba8
|
|
/* 02390BA8 */ cpu->r[3] = 0x00000000u;
|
|
/* 02390BAC */ return;
|
|
}
|
|
|
|
// fn_02390BB0 @ 0x2390bb0
|
|
void Gambit_fn_02390BB0(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02390BB0: ; // 0x2390bb0
|
|
/* 02390BB0 */ _t0 = cpu->r[3] + 0x00000010u;
|
|
/* 02390BB0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 02390BB4 */ _t1 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02390BB4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 02390BB8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[0]);
|
|
/* 02390BBC */ /* nop */
|
|
/* 02390BC0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000001u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02390BC4 */ cpu->r[3] = cpu->r[0] ^ 0x00000001u;
|
|
/* 02390BC8 */ return;
|
|
}
|
|
|
|
// fn_02390BCC @ 0x2390bcc
|
|
void Gambit_fn_02390BCC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_02390BCC: ; // 0x2390bcc
|
|
/* 02390BCC */ cpu->r[0] = cpu->lr;
|
|
/* 02390BD0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02390BD0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02390BD0 */ cpu->r[1] = _t0;
|
|
/* 02390BD4 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02390BD4 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02390BD8 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02390BD8 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02390BDC */ cpu->r[31] = cpu->r[3];
|
|
/* 02390BDC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02390BE0 */ cpu->r[30] = cpu->r[4];
|
|
/* 02390BE4 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02390BE4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02390BE8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02390BE8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02390BE8 */ if (_t5) goto L_02390BEC; else goto L_02390BFC;
|
|
L_02390BEC: ; // 0x2390bec
|
|
/* 02390BEC */ cpu->r[3] = 0x0000001Cu;
|
|
/* 02390BF0 */ Gambit_fn_02801A78(cpu);
|
|
/* 02390BF4 */ cpu->r[31] = cpu->r[3];
|
|
/* 02390BF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02390BF8 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02390BF8 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02390BF8 */ if (_t7) goto L_02390C34; else goto L_02390BFC;
|
|
L_02390BFC: ; // 0x2390bfc
|
|
/* 02390BFC */ cpu->r[0] = 0x10080000u;
|
|
/* 02390C00 */ _t8 = cpu->r[31] + 0x00000000u;
|
|
/* 02390C00 */ rbrew_write32(cpu->mem, _t8, cpu->r[30]);
|
|
/* 02390C04 */ cpu->r[3] = 0x00000000u;
|
|
/* 02390C08 */ cpu->r[0] = cpu->r[0] + 0x00006570u;
|
|
/* 02390C0C */ _t9 = cpu->r[31] + 0x00000004u;
|
|
/* 02390C0C */ rbrew_write32(cpu->mem, _t9, cpu->r[3]);
|
|
/* 02390C10 */ cpu->r[12] = 0x00000001u;
|
|
/* 02390C14 */ _t10 = cpu->r[31] + 0x00000018u;
|
|
/* 02390C14 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 02390C18 */ cpu->r[0] = 0x00000005u;
|
|
/* 02390C1C */ _t11 = cpu->r[31] + 0x00000008u;
|
|
/* 02390C1C */ rbrew_write32(cpu->mem, _t11, cpu->r[12]);
|
|
/* 02390C20 */ _t12 = cpu->r[31] + 0x00000014u;
|
|
/* 02390C20 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 02390C24 */ _t13 = cpu->r[31] + 0x00000010u;
|
|
/* 02390C24 */ rbrew_write8(cpu->mem, _t13, (uint8_t)cpu->r[12]);
|
|
/* 02390C28 */ _t14 = cpu->r[31] + 0x00000011u;
|
|
/* 02390C28 */ rbrew_write8(cpu->mem, _t14, (uint8_t)cpu->r[3]);
|
|
/* 02390C2C */ Gambit_fn_02043B8C(cpu);
|
|
/* 02390C30 */ _t15 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02390C30 */ rbrew_write32(cpu->mem, _t15, cpu->r[3]);
|
|
L_02390C34: ; // 0x2390c34
|
|
/* 02390C34 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 02390C34 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02390C38 */ cpu->r[3] = cpu->r[31];
|
|
/* 02390C3C */ _t17 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02390C3C */ cpu->r[31] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02390C40 */ cpu->lr = cpu->r[0];
|
|
/* 02390C44 */ _t18 = cpu->r[1] + 0x00000008u;
|
|
/* 02390C44 */ cpu->r[30] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02390C48 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02390C4C */ return;
|
|
}
|
|
|
|
// fn_02390BD0 @ 0x2390bd0
|
|
void Gambit_fn_02390BD0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_02390BD0: ; // 0x2390bd0
|
|
/* 02390BD0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02390BD0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02390BD0 */ cpu->r[1] = _t0;
|
|
/* 02390BD4 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02390BD4 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02390BD8 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02390BD8 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02390BDC */ cpu->r[31] = cpu->r[3];
|
|
/* 02390BDC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02390BE0 */ cpu->r[30] = cpu->r[4];
|
|
/* 02390BE4 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02390BE4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02390BE8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02390BE8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02390BE8 */ if (_t5) goto L_02390BEC; else goto L_02390BFC;
|
|
L_02390BEC: ; // 0x2390bec
|
|
/* 02390BEC */ cpu->r[3] = 0x0000001Cu;
|
|
/* 02390BF0 */ Gambit_fn_02801A78(cpu);
|
|
/* 02390BF4 */ cpu->r[31] = cpu->r[3];
|
|
/* 02390BF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02390BF8 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02390BF8 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02390BF8 */ if (_t7) goto L_02390C34; else goto L_02390BFC;
|
|
L_02390BFC: ; // 0x2390bfc
|
|
/* 02390BFC */ cpu->r[0] = 0x10080000u;
|
|
/* 02390C00 */ _t8 = cpu->r[31] + 0x00000000u;
|
|
/* 02390C00 */ rbrew_write32(cpu->mem, _t8, cpu->r[30]);
|
|
/* 02390C04 */ cpu->r[3] = 0x00000000u;
|
|
/* 02390C08 */ cpu->r[0] = cpu->r[0] + 0x00006570u;
|
|
/* 02390C0C */ _t9 = cpu->r[31] + 0x00000004u;
|
|
/* 02390C0C */ rbrew_write32(cpu->mem, _t9, cpu->r[3]);
|
|
/* 02390C10 */ cpu->r[12] = 0x00000001u;
|
|
/* 02390C14 */ _t10 = cpu->r[31] + 0x00000018u;
|
|
/* 02390C14 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 02390C18 */ cpu->r[0] = 0x00000005u;
|
|
/* 02390C1C */ _t11 = cpu->r[31] + 0x00000008u;
|
|
/* 02390C1C */ rbrew_write32(cpu->mem, _t11, cpu->r[12]);
|
|
/* 02390C20 */ _t12 = cpu->r[31] + 0x00000014u;
|
|
/* 02390C20 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 02390C24 */ _t13 = cpu->r[31] + 0x00000010u;
|
|
/* 02390C24 */ rbrew_write8(cpu->mem, _t13, (uint8_t)cpu->r[12]);
|
|
/* 02390C28 */ _t14 = cpu->r[31] + 0x00000011u;
|
|
/* 02390C28 */ rbrew_write8(cpu->mem, _t14, (uint8_t)cpu->r[3]);
|
|
/* 02390C2C */ Gambit_fn_02043B8C(cpu);
|
|
/* 02390C30 */ _t15 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02390C30 */ rbrew_write32(cpu->mem, _t15, cpu->r[3]);
|
|
L_02390C34: ; // 0x2390c34
|
|
/* 02390C34 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 02390C34 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02390C38 */ cpu->r[3] = cpu->r[31];
|
|
/* 02390C3C */ _t17 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02390C3C */ cpu->r[31] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02390C40 */ cpu->lr = cpu->r[0];
|
|
/* 02390C44 */ _t18 = cpu->r[1] + 0x00000008u;
|
|
/* 02390C44 */ cpu->r[30] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02390C48 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02390C4C */ return;
|
|
}
|
|
|
|
// fn_02390C50 @ 0x2390c50
|
|
void Gambit_fn_02390C50(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68;
|
|
|
|
L_02390C50: ; // 0x2390c50
|
|
/* 02390C50 */ _t0 = cpu->r[1] + 0xFFFFFF50u;
|
|
/* 02390C50 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02390C50 */ cpu->r[1] = _t0;
|
|
/* 02390C54 */ /* nop */
|
|
/* 02390C58 */ cpu->r[0] = cpu->lr;
|
|
/* 02390C5C */ _t1 = cpu->r[1] + 0x000000A0u;
|
|
/* 02390C5C */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 02390C60 */ /* nop */
|
|
/* 02390C64 */ _t2 = cpu->r[1] + 0x000000A8u;
|
|
/* 02390C64 */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 02390C68 */ _t3 = cpu->r[1] + 0x00000090u;
|
|
/* 02390C68 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[30]);
|
|
/* 02390C6C */ _t4 = cpu->r[1] + 0x000000B4u;
|
|
/* 02390C6C */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02390C70 */ /* nop */
|
|
/* 02390C74 */ _t5 = cpu->r[1] + 0x00000098u;
|
|
/* 02390C74 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[30]);
|
|
/* 02390C78 */ cpu->r[29] = cpu->r[5];
|
|
/* 02390C7C */ cpu->r[28] = cpu->r[3];
|
|
/* 02390C80 */ cpu->r[27] = 0x101D0000u;
|
|
/* 02390C84 */ _t6 = cpu->r[28] + 0x00000008u;
|
|
/* 02390C84 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02390C88 */ _t7 = cpu->r[27] + 0xFFFF9918u;
|
|
/* 02390C88 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02390C8C */ cpu->r[0] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 02390C90 */ cpu->r[31] = cpu->r[4];
|
|
/* 02390C94 */ cpu->r[30] = cpu->r[12] - cpu->r[0];
|
|
/* 02390C98 */ Gambit_fn_02830138(cpu);
|
|
/* 02390C9C */ cpu->r[5] = rbrew_rlwinm(cpu->r[3], 0x00000017u, 0x00000009u, 0x0000001Fu);
|
|
/* 02390CA0 */ cpu->r[11] = 0x10080000u;
|
|
/* 02390CA4 */ _t8 = cpu->r[27] + 0xFFFF9918u;
|
|
/* 02390CA4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02390CA8 */ cpu->r[6] = cpu->r[5] | 0x3F800000u;
|
|
/* 02390CAC */ _t9 = cpu->r[11] + 0x000064E8u;
|
|
/* 02390CAC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 02390CB0 */ _t10 = cpu->r[1] + 0x00000010u;
|
|
/* 02390CB0 */ rbrew_write32(cpu->mem, _t10, cpu->r[6]);
|
|
/* 02390CB4 */ _t11 = cpu->r[1] + 0x00000010u;
|
|
/* 02390CB4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 02390CB8 */ cpu->f[30] = cpu->f[0] - cpu->f[31];
|
|
/* 02390CBC */ Gambit_fn_02830138(cpu);
|
|
/* 02390CC0 */ _t12 = cpu->r[28] + 0x00000000u;
|
|
/* 02390CC0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02390CC4 */ cpu->r[7] = rbrew_rlwinm(cpu->r[3], 0x00000017u, 0x00000009u, 0x0000001Fu);
|
|
/* 02390CC8 */ _t13 = cpu->r[31] + 0x00000008u;
|
|
/* 02390CC8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02390CCC */ cpu->r[8] = cpu->r[7] | 0x3F800000u;
|
|
/* 02390CD0 */ _t14 = cpu->r[1] + 0x00000008u;
|
|
/* 02390CD0 */ rbrew_write_f32(cpu->mem, _t14, cpu->f[30]);
|
|
/* 02390CD4 */ _t15 = cpu->r[1] + 0x00000008u;
|
|
/* 02390CD4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02390CD8 */ _t16 = cpu->r[28] + 0x00000018u;
|
|
/* 02390CD8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02390CDC */ cpu->r[27] = 0x101C0000u;
|
|
/* 02390CE0 */ _t17 = cpu->r[1] + 0x00000014u;
|
|
/* 02390CE0 */ rbrew_write32(cpu->mem, _t17, cpu->r[8]);
|
|
/* 02390CE4 */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02390CE4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 02390CE8 */ cpu->r[0] = 0x00000001u;
|
|
/* 02390CEC */ _t19 = cpu->r[31] + 0x00000000u;
|
|
/* 02390CEC */ cpu->r[4] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02390CF0 */ _t20 = cpu->r[27] + 0x00006000u;
|
|
/* 02390CF0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02390CF4 */ cpu->f[13] = cpu->f[0] - cpu->f[31];
|
|
/* 02390CF8 */ _t21 = cpu->r[1] + 0x00000018u;
|
|
/* 02390CF8 */ rbrew_write32(cpu->mem, _t21, cpu->r[0]);
|
|
/* 02390CFC */ _t22 = cpu->r[31] + 0x00000004u;
|
|
/* 02390CFC */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02390D00 */ _t23 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02390D00 */ rbrew_write_f32(cpu->mem, _t23, cpu->f[13]);
|
|
/* 02390D04 */ _t24 = cpu->r[11] + 0x00000004u;
|
|
/* 02390D04 */ cpu->r[31] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02390D08 */ _t25 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02390D08 */ rbrew_write32(cpu->mem, _t25, cpu->r[4]);
|
|
/* 02390D0C */ _t26 = cpu->r[1] + 0x00000060u;
|
|
/* 02390D0C */ rbrew_write32(cpu->mem, _t26, cpu->r[0]);
|
|
/* 02390D10 */ _t27 = cpu->r[1] + 0x00000064u;
|
|
/* 02390D10 */ rbrew_write32(cpu->mem, _t27, cpu->r[5]);
|
|
/* 02390D14 */ _t28 = cpu->r[6] + 0x00000000u;
|
|
/* 02390D14 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 02390D18 */ _t29 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02390D18 */ cpu->r[5] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02390D1C */ _t30 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02390D1C */ rbrew_write32(cpu->mem, _t30, cpu->r[10]);
|
|
/* 02390D20 */ _t31 = cpu->r[1] + 0x00000020u;
|
|
/* 02390D20 */ rbrew_write32(cpu->mem, _t31, cpu->r[5]);
|
|
/* 02390D24 */ _t32 = cpu->r[9] + 0x00000014u;
|
|
/* 02390D24 */ cpu->r[6] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02390D28 */ cpu->ctr = cpu->r[6];
|
|
/* 02390D2C */ _t33 = cpu->r[28] + 0x0000000Cu;
|
|
/* 02390D2C */ cpu->r[26] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02390D30 */ cpu->r[3] = cpu->r[28];
|
|
/* 02390D34 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02390D38 */ _t34 = cpu->r[31] + 0x00000134u;
|
|
/* 02390D38 */ cpu->r[0] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02390D3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02390D40 */ _t35 = cpu->r[27] + 0x00006000u;
|
|
/* 02390D40 */ cpu->r[3] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02390D44 */ cpu->ctr = cpu->r[0];
|
|
/* 02390D48 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02390D4C */ _t36 = cpu->r[1] + 0x00000018u;
|
|
/* 02390D4C */ cpu->r[6] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02390D50 */ _t37 = cpu->r[29] + 0x00000008u;
|
|
/* 02390D50 */ cpu->r[0] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02390D54 */ _t38 = cpu->r[1] + 0x00000048u;
|
|
/* 02390D54 */ rbrew_write32(cpu->mem, _t38, cpu->r[6]);
|
|
/* 02390D58 */ _t39 = cpu->r[1] + 0x00000070u;
|
|
/* 02390D58 */ rbrew_write32(cpu->mem, _t39, cpu->r[0]);
|
|
/* 02390D5C */ _t40 = cpu->r[29] + 0x00000004u;
|
|
/* 02390D5C */ cpu->r[10] = rbrew_read32(cpu->mem, _t40);
|
|
/* 02390D60 */ _t41 = cpu->r[29] + 0x00000000u;
|
|
/* 02390D60 */ cpu->r[9] = rbrew_read32(cpu->mem, _t41);
|
|
/* 02390D64 */ _t42 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02390D64 */ rbrew_write32(cpu->mem, _t42, cpu->r[10]);
|
|
/* 02390D68 */ _t43 = cpu->r[1] + 0x00000050u;
|
|
/* 02390D68 */ rbrew_write32(cpu->mem, _t43, cpu->r[9]);
|
|
/* 02390D6C */ _t44 = cpu->r[1] + 0x00000028u;
|
|
/* 02390D6C */ rbrew_write32(cpu->mem, _t44, cpu->r[30]);
|
|
/* 02390D70 */ _t45 = cpu->r[1] + 0x00000068u;
|
|
/* 02390D70 */ rbrew_write32(cpu->mem, _t45, cpu->r[9]);
|
|
/* 02390D74 */ _t46 = cpu->r[1] + 0x00000054u;
|
|
/* 02390D74 */ rbrew_write32(cpu->mem, _t46, cpu->r[10]);
|
|
/* 02390D78 */ _t47 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02390D78 */ cpu->r[4] = rbrew_read32(cpu->mem, _t47);
|
|
/* 02390D7C */ _t48 = cpu->r[1] + 0x00000044u;
|
|
/* 02390D7C */ rbrew_write32(cpu->mem, _t48, cpu->r[31]);
|
|
/* 02390D80 */ _t49 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02390D80 */ rbrew_write32(cpu->mem, _t49, cpu->r[4]);
|
|
/* 02390D84 */ _t50 = cpu->r[1] + 0x00000040u;
|
|
/* 02390D84 */ rbrew_write_f32(cpu->mem, _t50, cpu->f[31]);
|
|
/* 02390D88 */ _t51 = cpu->r[1] + 0x00000060u;
|
|
/* 02390D88 */ cpu->r[7] = rbrew_read32(cpu->mem, _t51);
|
|
/* 02390D8C */ _t52 = cpu->r[1] + 0x00000064u;
|
|
/* 02390D8C */ cpu->r[11] = rbrew_read32(cpu->mem, _t52);
|
|
/* 02390D90 */ _t53 = cpu->r[1] + 0x00000030u;
|
|
/* 02390D90 */ rbrew_write32(cpu->mem, _t53, cpu->r[7]);
|
|
/* 02390D94 */ _t54 = cpu->r[1] + 0x00000034u;
|
|
/* 02390D94 */ rbrew_write32(cpu->mem, _t54, cpu->r[11]);
|
|
/* 02390D98 */ _t55 = cpu->r[1] + 0x00000058u;
|
|
/* 02390D98 */ rbrew_write32(cpu->mem, _t55, cpu->r[0]);
|
|
/* 02390D9C */ _t56 = cpu->r[1] + 0x00000020u;
|
|
/* 02390D9C */ cpu->r[5] = rbrew_read32(cpu->mem, _t56);
|
|
/* 02390DA0 */ _t57 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02390DA0 */ rbrew_write32(cpu->mem, _t57, cpu->r[3]);
|
|
/* 02390DA4 */ cpu->r[3] = cpu->r[1] + 0x00000024u;
|
|
/* 02390DA8 */ _t58 = cpu->r[1] + 0x00000024u;
|
|
/* 02390DA8 */ rbrew_write32(cpu->mem, _t58, cpu->r[26]);
|
|
/* 02390DAC */ _t59 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02390DAC */ cpu->r[12] = rbrew_read32(cpu->mem, _t59);
|
|
/* 02390DB0 */ _t60 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02390DB0 */ rbrew_write32(cpu->mem, _t60, cpu->r[5]);
|
|
/* 02390DB4 */ _t61 = cpu->r[1] + 0x00000038u;
|
|
/* 02390DB4 */ rbrew_write32(cpu->mem, _t61, cpu->r[12]);
|
|
/* 02390DB8 */ Gambit_fn_023945F8(cpu);
|
|
/* 02390DBC */ /* nop */
|
|
/* 02390DC0 */ _t62 = cpu->r[1] + 0x00000098u;
|
|
/* 02390DC0 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t62);
|
|
/* 02390DC4 */ _t63 = cpu->r[1] + 0x000000A8u;
|
|
/* 02390DC4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t63);
|
|
/* 02390DC8 */ _t64 = cpu->r[1] + 0x00000090u;
|
|
/* 02390DC8 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t64);
|
|
/* 02390DCC */ _t65 = cpu->r[1] + 0x000000A0u;
|
|
/* 02390DCC */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t65);
|
|
/* 02390DD0 */ _t66 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02390DD0 */ _t67 = _t66 & 0x00000001u;
|
|
/* 02390DD0 */ if (_t67) goto L_02390DD4; // else: addr-0 trap, fall-through
|
|
L_02390DD4: ; // 0x2390dd4
|
|
/* 02390DD4 */ _t68 = cpu->r[1] + 0x000000B4u;
|
|
/* 02390DD4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t68);
|
|
/* 02390DD8 */ cpu->lr = cpu->r[0];
|
|
/* 02390DDC */ cpu->r[1] = cpu->r[1] + 0x000000B0u;
|
|
/* 02390DE0 */ return;
|
|
}
|
|
|
|
// fn_02390DE4 @ 0x2390de4
|
|
void Gambit_fn_02390DE4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39;
|
|
|
|
L_02390DE4: ; // 0x2390de4
|
|
/* 02390DE4 */ cpu->r[0] = cpu->lr;
|
|
/* 02390DE8 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02390DE8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02390DE8 */ cpu->r[1] = _t0;
|
|
/* 02390DEC */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 02390DEC */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02390DF0 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02390DF0 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 02390DF4 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02390DF4 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 02390DF8 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02390DF8 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02390DFC */ _t5 = cpu->r[3] + 0x00000018u;
|
|
/* 02390DFC */ cpu->r[10] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02390E00 */ _t6 = cpu->r[10] + 0x0000000Cu;
|
|
/* 02390E00 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02390E04 */ cpu->ctr = cpu->r[0];
|
|
/* 02390E08 */ cpu->r[29] = cpu->r[3];
|
|
/* 02390E0C */ cpu->r[30] = cpu->r[4];
|
|
/* 02390E10 */ cpu->r[31] = cpu->r[5];
|
|
/* 02390E14 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02390E18 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02390E1C */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02390E1C */ _t8 = _t7 & 0x00000001u;
|
|
/* 02390E1C */ if (_t8) goto L_02390EE8; else goto L_02390E20;
|
|
L_02390E20: ; // 0x2390e20
|
|
/* 02390E20 */ _t9 = cpu->r[29] + 0x00000011u;
|
|
/* 02390E20 */ cpu->r[9] = rbrew_read8(cpu->mem, _t9);
|
|
/* 02390E24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02390E28 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02390E28 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02390E28 */ if (_t11) goto L_02390E2C; else goto L_02390E60;
|
|
L_02390E2C: ; // 0x2390e2c
|
|
/* 02390E2C */ _t12 = cpu->r[29] + 0x00000004u;
|
|
/* 02390E2C */ cpu->r[10] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02390E30 */ _t13 = cpu->r[29] + 0x00000014u;
|
|
/* 02390E30 */ cpu->r[12] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02390E34 */ cpu->r[0] = cpu->r[10] + 0x00000001u;
|
|
/* 02390E38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], cpu->r[12]);
|
|
/* 02390E3C */ _t14 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02390E3C */ _t15 = _t14 & 0x00000001u;
|
|
/* 02390E3C */ if (_t15) goto L_02390E40; else goto L_02390E60;
|
|
L_02390E40: ; // 0x2390e40
|
|
/* 02390E40 */ _t16 = cpu->r[29] + 0x00000004u;
|
|
/* 02390E40 */ rbrew_write32(cpu->mem, _t16, cpu->r[0]);
|
|
/* 02390E44 */ _t17 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02390E44 */ cpu->r[29] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02390E48 */ _t18 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02390E48 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02390E4C */ _t19 = cpu->r[1] + 0x00000010u;
|
|
/* 02390E4C */ cpu->r[30] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02390E50 */ cpu->lr = cpu->r[0];
|
|
/* 02390E54 */ _t20 = cpu->r[1] + 0x00000014u;
|
|
/* 02390E54 */ cpu->r[31] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02390E58 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02390E5C */ return;
|
|
L_02390E60: ; // 0x2390e60
|
|
/* 02390E60 */ _t21 = cpu->r[29] + 0x00000008u;
|
|
/* 02390E60 */ cpu->r[5] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02390E64 */ cpu->r[0] = 0x00000000u;
|
|
/* 02390E68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000002u);
|
|
/* 02390E6C */ _t22 = cpu->r[29] + 0x00000004u;
|
|
/* 02390E6C */ rbrew_write32(cpu->mem, _t22, cpu->r[0]);
|
|
/* 02390E70 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02390E70 */ _t24 = _t23 & 0x00000001u;
|
|
/* 02390E70 */ if (_t24) goto L_02390E74; else goto L_02390ED8;
|
|
L_02390E74: ; // 0x2390e74
|
|
/* 02390E74 */ cpu->r[3] = 0x101C0000u;
|
|
/* 02390E78 */ _t25 = cpu->r[3] + 0x00006000u;
|
|
/* 02390E78 */ cpu->r[3] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02390E7C */ cpu->r[7] = 0x00000001u;
|
|
/* 02390E80 */ _t26 = cpu->r[3] + 0x00000004u;
|
|
/* 02390E80 */ cpu->r[6] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02390E84 */ _t27 = cpu->r[1] + 0x00000008u;
|
|
/* 02390E84 */ rbrew_write32(cpu->mem, _t27, cpu->r[7]);
|
|
/* 02390E88 */ _t28 = cpu->r[6] + 0x00000134u;
|
|
/* 02390E88 */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02390E8C */ cpu->ctr = cpu->r[0];
|
|
/* 02390E90 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02390E94 */ cpu->r[4] = cpu->r[3];
|
|
/* 02390E98 */ _t29 = cpu->r[29] + 0x00000000u;
|
|
/* 02390E98 */ cpu->r[12] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02390E9C */ cpu->r[3] = 0x101C0000u;
|
|
/* 02390EA0 */ cpu->r[7] = 0x00000004u;
|
|
/* 02390EA4 */ _t30 = cpu->r[3] + 0x000060F4u;
|
|
/* 02390EA4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02390EA8 */ cpu->r[5] = cpu->r[30];
|
|
/* 02390EAC */ _t31 = cpu->r[12] + 0x00000000u;
|
|
/* 02390EAC */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 02390EB0 */ cpu->r[8] = 0x000000FEu;
|
|
/* 02390EB4 */ cpu->r[6] = cpu->r[1] + 0x00000008u;
|
|
/* 02390EB8 */ Gambit_fn_023F00A0(cpu);
|
|
/* 02390EBC */ _t32 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02390EBC */ cpu->r[29] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02390EC0 */ _t33 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02390EC0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02390EC4 */ _t34 = cpu->r[1] + 0x00000010u;
|
|
/* 02390EC4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02390EC8 */ cpu->lr = cpu->r[0];
|
|
/* 02390ECC */ _t35 = cpu->r[1] + 0x00000014u;
|
|
/* 02390ECC */ cpu->r[31] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02390ED0 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02390ED4 */ return;
|
|
L_02390ED8: ; // 0x2390ed8
|
|
/* 02390ED8 */ cpu->r[5] = cpu->r[31];
|
|
/* 02390EDC */ cpu->r[4] = cpu->r[30];
|
|
/* 02390EE0 */ cpu->r[3] = cpu->r[29];
|
|
/* 02390EE4 */ Gambit_fn_02390C50(cpu);
|
|
L_02390EE8: ; // 0x2390ee8
|
|
/* 02390EE8 */ _t36 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02390EE8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02390EEC */ _t37 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02390EEC */ cpu->r[0] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02390EF0 */ _t38 = cpu->r[1] + 0x00000010u;
|
|
/* 02390EF0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02390EF4 */ cpu->lr = cpu->r[0];
|
|
/* 02390EF8 */ _t39 = cpu->r[1] + 0x00000014u;
|
|
/* 02390EF8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t39);
|
|
/* 02390EFC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02390F00 */ return;
|
|
}
|
|
|
|
// fn_02390DE8 @ 0x2390de8
|
|
void Gambit_fn_02390DE8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39;
|
|
|
|
L_02390DE8: ; // 0x2390de8
|
|
/* 02390DE8 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02390DE8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02390DE8 */ cpu->r[1] = _t0;
|
|
/* 02390DEC */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 02390DEC */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02390DF0 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02390DF0 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 02390DF4 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02390DF4 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 02390DF8 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02390DF8 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02390DFC */ _t5 = cpu->r[3] + 0x00000018u;
|
|
/* 02390DFC */ cpu->r[10] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02390E00 */ _t6 = cpu->r[10] + 0x0000000Cu;
|
|
/* 02390E00 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02390E04 */ cpu->ctr = cpu->r[0];
|
|
/* 02390E08 */ cpu->r[29] = cpu->r[3];
|
|
/* 02390E0C */ cpu->r[30] = cpu->r[4];
|
|
/* 02390E10 */ cpu->r[31] = cpu->r[5];
|
|
/* 02390E14 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02390E18 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02390E1C */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02390E1C */ _t8 = _t7 & 0x00000001u;
|
|
/* 02390E1C */ if (_t8) goto L_02390EE8; else goto L_02390E20;
|
|
L_02390E20: ; // 0x2390e20
|
|
/* 02390E20 */ _t9 = cpu->r[29] + 0x00000011u;
|
|
/* 02390E20 */ cpu->r[9] = rbrew_read8(cpu->mem, _t9);
|
|
/* 02390E24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02390E28 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02390E28 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02390E28 */ if (_t11) goto L_02390E2C; else goto L_02390E60;
|
|
L_02390E2C: ; // 0x2390e2c
|
|
/* 02390E2C */ _t12 = cpu->r[29] + 0x00000004u;
|
|
/* 02390E2C */ cpu->r[10] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02390E30 */ _t13 = cpu->r[29] + 0x00000014u;
|
|
/* 02390E30 */ cpu->r[12] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02390E34 */ cpu->r[0] = cpu->r[10] + 0x00000001u;
|
|
/* 02390E38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], cpu->r[12]);
|
|
/* 02390E3C */ _t14 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02390E3C */ _t15 = _t14 & 0x00000001u;
|
|
/* 02390E3C */ if (_t15) goto L_02390E40; else goto L_02390E60;
|
|
L_02390E40: ; // 0x2390e40
|
|
/* 02390E40 */ _t16 = cpu->r[29] + 0x00000004u;
|
|
/* 02390E40 */ rbrew_write32(cpu->mem, _t16, cpu->r[0]);
|
|
/* 02390E44 */ _t17 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02390E44 */ cpu->r[29] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02390E48 */ _t18 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02390E48 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02390E4C */ _t19 = cpu->r[1] + 0x00000010u;
|
|
/* 02390E4C */ cpu->r[30] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02390E50 */ cpu->lr = cpu->r[0];
|
|
/* 02390E54 */ _t20 = cpu->r[1] + 0x00000014u;
|
|
/* 02390E54 */ cpu->r[31] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02390E58 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02390E5C */ return;
|
|
L_02390E60: ; // 0x2390e60
|
|
/* 02390E60 */ _t21 = cpu->r[29] + 0x00000008u;
|
|
/* 02390E60 */ cpu->r[5] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02390E64 */ cpu->r[0] = 0x00000000u;
|
|
/* 02390E68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000002u);
|
|
/* 02390E6C */ _t22 = cpu->r[29] + 0x00000004u;
|
|
/* 02390E6C */ rbrew_write32(cpu->mem, _t22, cpu->r[0]);
|
|
/* 02390E70 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02390E70 */ _t24 = _t23 & 0x00000001u;
|
|
/* 02390E70 */ if (_t24) goto L_02390E74; else goto L_02390ED8;
|
|
L_02390E74: ; // 0x2390e74
|
|
/* 02390E74 */ cpu->r[3] = 0x101C0000u;
|
|
/* 02390E78 */ _t25 = cpu->r[3] + 0x00006000u;
|
|
/* 02390E78 */ cpu->r[3] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02390E7C */ cpu->r[7] = 0x00000001u;
|
|
/* 02390E80 */ _t26 = cpu->r[3] + 0x00000004u;
|
|
/* 02390E80 */ cpu->r[6] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02390E84 */ _t27 = cpu->r[1] + 0x00000008u;
|
|
/* 02390E84 */ rbrew_write32(cpu->mem, _t27, cpu->r[7]);
|
|
/* 02390E88 */ _t28 = cpu->r[6] + 0x00000134u;
|
|
/* 02390E88 */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02390E8C */ cpu->ctr = cpu->r[0];
|
|
/* 02390E90 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02390E94 */ cpu->r[4] = cpu->r[3];
|
|
/* 02390E98 */ _t29 = cpu->r[29] + 0x00000000u;
|
|
/* 02390E98 */ cpu->r[12] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02390E9C */ cpu->r[3] = 0x101C0000u;
|
|
/* 02390EA0 */ cpu->r[7] = 0x00000004u;
|
|
/* 02390EA4 */ _t30 = cpu->r[3] + 0x000060F4u;
|
|
/* 02390EA4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02390EA8 */ cpu->r[5] = cpu->r[30];
|
|
/* 02390EAC */ _t31 = cpu->r[12] + 0x00000000u;
|
|
/* 02390EAC */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 02390EB0 */ cpu->r[8] = 0x000000FEu;
|
|
/* 02390EB4 */ cpu->r[6] = cpu->r[1] + 0x00000008u;
|
|
/* 02390EB8 */ Gambit_fn_023F00A0(cpu);
|
|
/* 02390EBC */ _t32 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02390EBC */ cpu->r[29] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02390EC0 */ _t33 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02390EC0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02390EC4 */ _t34 = cpu->r[1] + 0x00000010u;
|
|
/* 02390EC4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02390EC8 */ cpu->lr = cpu->r[0];
|
|
/* 02390ECC */ _t35 = cpu->r[1] + 0x00000014u;
|
|
/* 02390ECC */ cpu->r[31] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02390ED0 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02390ED4 */ return;
|
|
L_02390ED8: ; // 0x2390ed8
|
|
/* 02390ED8 */ cpu->r[5] = cpu->r[31];
|
|
/* 02390EDC */ cpu->r[4] = cpu->r[30];
|
|
/* 02390EE0 */ cpu->r[3] = cpu->r[29];
|
|
/* 02390EE4 */ Gambit_fn_02390C50(cpu);
|
|
L_02390EE8: ; // 0x2390ee8
|
|
/* 02390EE8 */ _t36 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02390EE8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02390EEC */ _t37 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02390EEC */ cpu->r[0] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02390EF0 */ _t38 = cpu->r[1] + 0x00000010u;
|
|
/* 02390EF0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02390EF4 */ cpu->lr = cpu->r[0];
|
|
/* 02390EF8 */ _t39 = cpu->r[1] + 0x00000014u;
|
|
/* 02390EF8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t39);
|
|
/* 02390EFC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02390F00 */ return;
|
|
}
|
|
|
|
// fn_02390F04 @ 0x2390f04
|
|
void Gambit_fn_02390F04(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_02390F04: ; // 0x2390f04
|
|
/* 02390F04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0xFFFFFFFFu);
|
|
/* 02390F08 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02390F08 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02390F08 */ if (_t1) goto L_02390F0C; else goto L_02390F10;
|
|
L_02390F0C: ; // 0x2390f0c
|
|
/* 02390F0C */ cpu->r[4] = 0x00000002u;
|
|
L_02390F10: ; // 0x2390f10
|
|
/* 02390F10 */ _t2 = cpu->r[3] + 0x00000008u;
|
|
/* 02390F10 */ rbrew_write32(cpu->mem, _t2, cpu->r[4]);
|
|
/* 02390F14 */ return;
|
|
}
|
|
|
|
// fn_02390F18 @ 0x2390f18
|
|
void Gambit_fn_02390F18(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_02390F18: ; // 0x2390f18
|
|
/* 02390F18 */ cpu->r[0] = cpu->lr;
|
|
/* 02390F1C */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 02390F1C */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 02390F20 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02390F24 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 02390F24 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 02390F24 */ cpu->r[1] = _t1;
|
|
/* 02390F28 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02390F28 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02390F28 */ if (_t3) goto L_02390F2C; else goto L_02390F3C;
|
|
L_02390F2C: ; // 0x2390f2c
|
|
/* 02390F2C */ cpu->r[3] = 0x0000001Cu;
|
|
/* 02390F30 */ Gambit_fn_02801A78(cpu);
|
|
/* 02390F34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02390F38 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02390F38 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02390F38 */ if (_t5) goto L_02390F68; else goto L_02390F3C;
|
|
L_02390F3C: ; // 0x2390f3c
|
|
/* 02390F3C */ cpu->r[12] = 0x10080000u;
|
|
/* 02390F40 */ cpu->r[0] = 0x00000000u;
|
|
/* 02390F44 */ _t6 = cpu->r[12] + 0x000064E8u;
|
|
/* 02390F44 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 02390F48 */ cpu->r[12] = 0x0000003Cu;
|
|
/* 02390F4C */ _t7 = cpu->r[3] + 0x00000000u;
|
|
/* 02390F4C */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 02390F50 */ _t8 = cpu->r[3] + 0x00000018u;
|
|
/* 02390F50 */ rbrew_write32(cpu->mem, _t8, cpu->r[12]);
|
|
/* 02390F54 */ _t9 = cpu->r[3] + 0x00000004u;
|
|
/* 02390F54 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 02390F58 */ _t10 = cpu->r[3] + 0x00000014u;
|
|
/* 02390F58 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[0]);
|
|
/* 02390F5C */ _t11 = cpu->r[3] + 0x00000008u;
|
|
/* 02390F5C */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 02390F60 */ _t12 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02390F60 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 02390F64 */ _t13 = cpu->r[3] + 0x00000010u;
|
|
/* 02390F64 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
L_02390F68: ; // 0x2390f68
|
|
/* 02390F68 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02390F68 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02390F6C */ cpu->lr = cpu->r[0];
|
|
/* 02390F70 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 02390F74 */ return;
|
|
}
|
|
|
|
// fn_02390F24 @ 0x2390f24
|
|
void Gambit_fn_02390F24(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_02390F24: ; // 0x2390f24
|
|
/* 02390F24 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 02390F24 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02390F24 */ cpu->r[1] = _t0;
|
|
/* 02390F28 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02390F28 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02390F28 */ if (_t2) goto L_02390F2C; else goto L_02390F3C;
|
|
L_02390F2C: ; // 0x2390f2c
|
|
/* 02390F2C */ cpu->r[3] = 0x0000001Cu;
|
|
/* 02390F30 */ Gambit_fn_02801A78(cpu);
|
|
/* 02390F34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02390F38 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02390F38 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02390F38 */ if (_t4) goto L_02390F68; else goto L_02390F3C;
|
|
L_02390F3C: ; // 0x2390f3c
|
|
/* 02390F3C */ cpu->r[12] = 0x10080000u;
|
|
/* 02390F40 */ cpu->r[0] = 0x00000000u;
|
|
/* 02390F44 */ _t5 = cpu->r[12] + 0x000064E8u;
|
|
/* 02390F44 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 02390F48 */ cpu->r[12] = 0x0000003Cu;
|
|
/* 02390F4C */ _t6 = cpu->r[3] + 0x00000000u;
|
|
/* 02390F4C */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02390F50 */ _t7 = cpu->r[3] + 0x00000018u;
|
|
/* 02390F50 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 02390F54 */ _t8 = cpu->r[3] + 0x00000004u;
|
|
/* 02390F54 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 02390F58 */ _t9 = cpu->r[3] + 0x00000014u;
|
|
/* 02390F58 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[0]);
|
|
/* 02390F5C */ _t10 = cpu->r[3] + 0x00000008u;
|
|
/* 02390F5C */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 02390F60 */ _t11 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02390F60 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 02390F64 */ _t12 = cpu->r[3] + 0x00000010u;
|
|
/* 02390F64 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
L_02390F68: ; // 0x2390f68
|
|
/* 02390F68 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02390F68 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02390F6C */ cpu->lr = cpu->r[0];
|
|
/* 02390F70 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 02390F74 */ return;
|
|
}
|
|
|
|
// fn_02390F78 @ 0x2390f78
|
|
void Gambit_fn_02390F78(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_02390F78: ; // 0x2390f78
|
|
/* 02390F78 */ _t0 = cpu->r[3] + 0x00000014u;
|
|
/* 02390F78 */ rbrew_write_f32(cpu->mem, _t0, cpu->f[1]);
|
|
/* 02390F7C */ _t1 = cpu->r[3] + 0x00000018u;
|
|
/* 02390F7C */ rbrew_write32(cpu->mem, _t1, cpu->r[5]);
|
|
/* 02390F80 */ _t2 = cpu->r[3] + 0x00000000u;
|
|
/* 02390F80 */ rbrew_write32(cpu->mem, _t2, cpu->r[4]);
|
|
/* 02390F84 */ return;
|
|
}
|
|
|
|
// fn_02390F88 @ 0x2390f88
|
|
void Gambit_fn_02390F88(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_02390F88: ; // 0x2390f88
|
|
/* 02390F88 */ cpu->r[0] = 0x00000000u;
|
|
/* 02390F8C */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02390F8C */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 02390F90 */ _t1 = cpu->r[3] + 0x00000008u;
|
|
/* 02390F90 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02390F94 */ _t2 = cpu->r[3] + 0x00000008u;
|
|
/* 02390F94 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02390F98 */ return;
|
|
}
|
|
|
|
// fn_02390F9C @ 0x2390f9c
|
|
void Gambit_fn_02390F9C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_02390F9C: ; // 0x2390f9c
|
|
/* 02390F9C */ cpu->r[0] = 0x00000000u;
|
|
/* 02390FA0 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02390FA0 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 02390FA4 */ _t1 = cpu->r[4] + 0x00000000u;
|
|
/* 02390FA4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02390FA8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000001u);
|
|
/* 02390FAC */ _t2 = cpu->r[3] + 0x00000008u;
|
|
/* 02390FAC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02390FB0 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02390FB0 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02390FB0 */ if (_t4) goto L_02390FBC; else goto L_02390FB4;
|
|
L_02390FB4: ; // 0x2390fb4
|
|
/* 02390FB4 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02390FB4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02390FB4 */ if (_t6) goto L_02390FD0; else goto L_02390FB8;
|
|
L_02390FB8: ; // 0x2390fb8
|
|
/* 02390FB8 */ return;
|
|
L_02390FBC: ; // 0x2390fbc
|
|
/* 02390FBC */ _t7 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02390FBC */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02390FC0 */ _t8 = cpu->r[3] + 0x00000000u;
|
|
/* 02390FC0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02390FC4 */ _t9 = cpu->r[12] + 0x0000000Cu;
|
|
/* 02390FC4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02390FC8 */ cpu->ctr = cpu->r[0];
|
|
/* 02390FCC */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
L_02390FD0: ; // 0x2390fd0
|
|
/* 02390FD0 */ _t10 = cpu->r[3] + 0x00000010u;
|
|
/* 02390FD0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02390FD4 */ _t11 = cpu->r[3] + 0x00000000u;
|
|
/* 02390FD4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02390FD8 */ _t12 = cpu->r[12] + 0x0000000Cu;
|
|
/* 02390FD8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02390FDC */ cpu->ctr = cpu->r[12];
|
|
/* 02390FE0 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02390FE4 @ 0x2390fe4
|
|
void Gambit_fn_02390FE4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _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_02390FE4: ; // 0x2390fe4
|
|
/* 02390FE4 */ cpu->r[0] = cpu->lr;
|
|
/* 02390FE8 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02390FE8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02390FE8 */ cpu->r[1] = _t0;
|
|
/* 02390FEC */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 02390FEC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02390FF0 */ cpu->r[31] = cpu->r[3];
|
|
/* 02390FF4 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02390FF4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02390FF8 */ _t3 = cpu->r[31] + 0x00000008u;
|
|
/* 02390FF8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02390FFC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], 0x00000001u);
|
|
/* 02391000 */ _t4 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02391000 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02391000 */ if (_t5) goto L_0239101C; else goto L_02391004;
|
|
L_02391004: ; // 0x2391004
|
|
/* 02391004 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02391004 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02391004 */ if (_t7) goto L_02391090; else goto L_02391008;
|
|
L_02391008: ; // 0x2391008
|
|
/* 02391008 */ _t8 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02391008 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0239100C */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0239100C */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02391010 */ cpu->lr = cpu->r[0];
|
|
/* 02391014 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02391018 */ return;
|
|
L_0239101C: ; // 0x239101c
|
|
/* 0239101C */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 0239101C */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02391020 */ _t11 = cpu->r[31] + 0x00000018u;
|
|
/* 02391020 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02391024 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 02391028 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], cpu->r[0]);
|
|
/* 0239102C */ _t12 = cpu->r[31] + 0x00000004u;
|
|
/* 0239102C */ rbrew_write32(cpu->mem, _t12, cpu->r[12]);
|
|
/* 02391030 */ _t13 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02391030 */ _t14 = _t13 & 0x00000001u;
|
|
/* 02391030 */ if (_t14) goto L_02391034; else goto L_023910B4;
|
|
L_02391034: ; // 0x2391034
|
|
/* 02391034 */ _t15 = cpu->r[31] + 0x00000000u;
|
|
/* 02391034 */ cpu->r[3] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02391038 */ Gambit_fn_023991BC(cpu);
|
|
/* 0239103C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02391040 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02391040 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02391040 */ if (_t17) goto L_023910B4; else goto L_02391044;
|
|
L_02391044: ; // 0x2391044
|
|
/* 02391044 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02391048 */ _t18 = cpu->r[3] + 0xFFFF9918u;
|
|
/* 02391048 */ cpu->r[3] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0239104C */ Gambit_fn_02830138(cpu);
|
|
/* 02391050 */ cpu->r[0] = rbrew_rlwinm(cpu->r[3], 0x00000017u, 0x00000009u, 0x0000001Fu);
|
|
/* 02391054 */ cpu->r[12] = 0x10080000u;
|
|
/* 02391058 */ cpu->r[0] = cpu->r[0] | 0x3F800000u;
|
|
/* 0239105C */ _t19 = cpu->r[12] + 0x000064E8u;
|
|
/* 0239105C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 02391060 */ _t20 = cpu->r[1] + 0x00000008u;
|
|
/* 02391060 */ rbrew_write32(cpu->mem, _t20, cpu->r[0]);
|
|
/* 02391064 */ _t21 = cpu->r[1] + 0x00000008u;
|
|
/* 02391064 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 02391068 */ cpu->f[0] = cpu->f[13] - cpu->f[0];
|
|
/* 0239106C */ _t22 = cpu->r[31] + 0x00000014u;
|
|
/* 0239106C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 02391070 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[13]);
|
|
/* 02391074 */ _t23 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02391074 */ _t24 = _t23 & 0x00000001u;
|
|
/* 02391074 */ if (_t24) goto L_02391078; else goto L_023910B4;
|
|
L_02391078: ; // 0x2391078
|
|
/* 02391078 */ cpu->r[0] = 0x00000001u;
|
|
/* 0239107C */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02391080 */ cpu->r[3] = cpu->r[31];
|
|
/* 02391084 */ _t25 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02391084 */ rbrew_write32(cpu->mem, _t25, cpu->r[0]);
|
|
/* 02391088 */ Gambit_fn_02390F9C(cpu);
|
|
/* 0239108C */ goto L_023910B4;
|
|
L_02391090: ; // 0x2391090
|
|
/* 02391090 */ _t26 = cpu->r[31] + 0x00000000u;
|
|
/* 02391090 */ cpu->r[3] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02391094 */ Gambit_fn_02398FA8(cpu);
|
|
/* 02391098 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239109C */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239109C */ _t28 = _t27 & 0x00000001u;
|
|
/* 0239109C */ if (_t28) goto L_023910B4; else goto L_023910A0;
|
|
L_023910A0: ; // 0x23910a0
|
|
/* 023910A0 */ cpu->r[0] = 0x00000000u;
|
|
/* 023910A4 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 023910A8 */ cpu->r[3] = cpu->r[31];
|
|
/* 023910AC */ _t29 = cpu->r[1] + 0x00000010u;
|
|
/* 023910AC */ rbrew_write32(cpu->mem, _t29, cpu->r[0]);
|
|
/* 023910B0 */ Gambit_fn_02390F9C(cpu);
|
|
L_023910B4: ; // 0x23910b4
|
|
/* 023910B4 */ _t30 = cpu->r[1] + 0x0000001Cu;
|
|
/* 023910B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t30);
|
|
/* 023910B8 */ _t31 = cpu->r[1] + 0x00000014u;
|
|
/* 023910B8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t31);
|
|
/* 023910BC */ cpu->lr = cpu->r[0];
|
|
/* 023910C0 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 023910C4 */ return;
|
|
}
|
|
|
|
// fn_02390FE8 @ 0x2390fe8
|
|
void Gambit_fn_02390FE8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _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_02390FE8: ; // 0x2390fe8
|
|
/* 02390FE8 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02390FE8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02390FE8 */ cpu->r[1] = _t0;
|
|
/* 02390FEC */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 02390FEC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02390FF0 */ cpu->r[31] = cpu->r[3];
|
|
/* 02390FF4 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02390FF4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02390FF8 */ _t3 = cpu->r[31] + 0x00000008u;
|
|
/* 02390FF8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02390FFC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], 0x00000001u);
|
|
/* 02391000 */ _t4 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02391000 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02391000 */ if (_t5) goto L_0239101C; else goto L_02391004;
|
|
L_02391004: ; // 0x2391004
|
|
/* 02391004 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02391004 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02391004 */ if (_t7) goto L_02391090; else goto L_02391008;
|
|
L_02391008: ; // 0x2391008
|
|
/* 02391008 */ _t8 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02391008 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0239100C */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0239100C */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02391010 */ cpu->lr = cpu->r[0];
|
|
/* 02391014 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02391018 */ return;
|
|
L_0239101C: ; // 0x239101c
|
|
/* 0239101C */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 0239101C */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02391020 */ _t11 = cpu->r[31] + 0x00000018u;
|
|
/* 02391020 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02391024 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 02391028 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], cpu->r[0]);
|
|
/* 0239102C */ _t12 = cpu->r[31] + 0x00000004u;
|
|
/* 0239102C */ rbrew_write32(cpu->mem, _t12, cpu->r[12]);
|
|
/* 02391030 */ _t13 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02391030 */ _t14 = _t13 & 0x00000001u;
|
|
/* 02391030 */ if (_t14) goto L_02391034; else goto L_023910B4;
|
|
L_02391034: ; // 0x2391034
|
|
/* 02391034 */ _t15 = cpu->r[31] + 0x00000000u;
|
|
/* 02391034 */ cpu->r[3] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02391038 */ Gambit_fn_023991BC(cpu);
|
|
/* 0239103C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02391040 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02391040 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02391040 */ if (_t17) goto L_023910B4; else goto L_02391044;
|
|
L_02391044: ; // 0x2391044
|
|
/* 02391044 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02391048 */ _t18 = cpu->r[3] + 0xFFFF9918u;
|
|
/* 02391048 */ cpu->r[3] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0239104C */ Gambit_fn_02830138(cpu);
|
|
/* 02391050 */ cpu->r[0] = rbrew_rlwinm(cpu->r[3], 0x00000017u, 0x00000009u, 0x0000001Fu);
|
|
/* 02391054 */ cpu->r[12] = 0x10080000u;
|
|
/* 02391058 */ cpu->r[0] = cpu->r[0] | 0x3F800000u;
|
|
/* 0239105C */ _t19 = cpu->r[12] + 0x000064E8u;
|
|
/* 0239105C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 02391060 */ _t20 = cpu->r[1] + 0x00000008u;
|
|
/* 02391060 */ rbrew_write32(cpu->mem, _t20, cpu->r[0]);
|
|
/* 02391064 */ _t21 = cpu->r[1] + 0x00000008u;
|
|
/* 02391064 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 02391068 */ cpu->f[0] = cpu->f[13] - cpu->f[0];
|
|
/* 0239106C */ _t22 = cpu->r[31] + 0x00000014u;
|
|
/* 0239106C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 02391070 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[13]);
|
|
/* 02391074 */ _t23 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02391074 */ _t24 = _t23 & 0x00000001u;
|
|
/* 02391074 */ if (_t24) goto L_02391078; else goto L_023910B4;
|
|
L_02391078: ; // 0x2391078
|
|
/* 02391078 */ cpu->r[0] = 0x00000001u;
|
|
/* 0239107C */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02391080 */ cpu->r[3] = cpu->r[31];
|
|
/* 02391084 */ _t25 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02391084 */ rbrew_write32(cpu->mem, _t25, cpu->r[0]);
|
|
/* 02391088 */ Gambit_fn_02390F9C(cpu);
|
|
/* 0239108C */ goto L_023910B4;
|
|
L_02391090: ; // 0x2391090
|
|
/* 02391090 */ _t26 = cpu->r[31] + 0x00000000u;
|
|
/* 02391090 */ cpu->r[3] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02391094 */ Gambit_fn_02398FA8(cpu);
|
|
/* 02391098 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239109C */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239109C */ _t28 = _t27 & 0x00000001u;
|
|
/* 0239109C */ if (_t28) goto L_023910B4; else goto L_023910A0;
|
|
L_023910A0: ; // 0x23910a0
|
|
/* 023910A0 */ cpu->r[0] = 0x00000000u;
|
|
/* 023910A4 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 023910A8 */ cpu->r[3] = cpu->r[31];
|
|
/* 023910AC */ _t29 = cpu->r[1] + 0x00000010u;
|
|
/* 023910AC */ rbrew_write32(cpu->mem, _t29, cpu->r[0]);
|
|
/* 023910B0 */ Gambit_fn_02390F9C(cpu);
|
|
L_023910B4: ; // 0x23910b4
|
|
/* 023910B4 */ _t30 = cpu->r[1] + 0x0000001Cu;
|
|
/* 023910B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t30);
|
|
/* 023910B8 */ _t31 = cpu->r[1] + 0x00000014u;
|
|
/* 023910B8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t31);
|
|
/* 023910BC */ cpu->lr = cpu->r[0];
|
|
/* 023910C0 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 023910C4 */ return;
|
|
}
|
|
|
|
// fn_023910C8 @ 0x23910c8
|
|
void Gambit_fn_023910C8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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;
|
|
|
|
L_023910C8: ; // 0x23910c8
|
|
/* 023910C8 */ _t0 = cpu->r[1] + 0xFFFFFF28u;
|
|
/* 023910C8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 023910C8 */ cpu->r[1] = _t0;
|
|
/* 023910CC */ cpu->r[0] = cpu->lr;
|
|
/* 023910D0 */ _t1 = cpu->r[1] + 0x000000C8u;
|
|
/* 023910D0 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 023910D4 */ /* nop */
|
|
/* 023910D8 */ _t2 = cpu->r[1] + 0x000000B8u;
|
|
/* 023910D8 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[30]);
|
|
/* 023910DC */ /* nop */
|
|
/* 023910E0 */ _t3 = cpu->r[1] + 0x000000D0u;
|
|
/* 023910E0 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 023910E4 */ _t4 = cpu->r[1] + 0x000000B0u;
|
|
/* 023910E4 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 023910E8 */ _t5 = cpu->r[1] + 0x000000B4u;
|
|
/* 023910E8 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 023910EC */ cpu->r[30] = cpu->r[4];
|
|
/* 023910F0 */ _t6 = cpu->r[1] + 0x000000C0u;
|
|
/* 023910F0 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[30]);
|
|
/* 023910F4 */ cpu->r[31] = cpu->r[3];
|
|
/* 023910F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 023910F8 */ _t7 = cpu->r[1] + 0x000000DCu;
|
|
/* 023910F8 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 023910FC */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023910FC */ _t9 = _t8 & 0x00000001u;
|
|
/* 023910FC */ if (_t9) goto L_02391100; else goto L_02391110;
|
|
L_02391100: ; // 0x2391100
|
|
/* 02391100 */ cpu->r[3] = 0x00000034u;
|
|
/* 02391104 */ Gambit_fn_02801A78(cpu);
|
|
/* 02391108 */ cpu->r[31] = cpu->r[3];
|
|
/* 02391108 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0239110C */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239110C */ _t11 = _t10 & 0x00000001u;
|
|
/* 0239110C */ if (_t11) goto L_023913E4; else goto L_02391110;
|
|
L_02391110: ; // 0x2391110
|
|
/* 02391110 */ cpu->r[5] = 0x101E0000u;
|
|
/* 02391114 */ cpu->r[7] = 0x00000003u;
|
|
/* 02391118 */ cpu->r[0] = 0x00000000u;
|
|
/* 0239111C */ cpu->r[5] = cpu->r[5] + 0xFFFF96F8u;
|
|
/* 02391120 */ cpu->ctr = cpu->r[7];
|
|
/* 02391124 */ cpu->r[6] = cpu->r[31];
|
|
/* 02391128 */ _t12 = cpu->r[31] + 0x00000000u;
|
|
/* 02391128 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
L_0239112C: ; // 0x239112c
|
|
/* 0239112C */ _t13 = cpu->r[5] + 0x00000004u;
|
|
/* 0239112C */ cpu->r[8] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02391130 */ _t14 = cpu->r[6] + 0x00000004u;
|
|
/* 02391130 */ rbrew_write32(cpu->mem, _t14, cpu->r[8]);
|
|
/* 02391134 */ _t15 = cpu->r[5] + 0x00000008u;
|
|
/* 02391134 */ cpu->r[9] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02391138 */ _t16 = cpu->r[6] + 0x00000008u;
|
|
/* 02391138 */ rbrew_write32(cpu->mem, _t16, cpu->r[9]);
|
|
/* 0239113C */ _t17 = cpu->r[5] + 0x0000000Cu;
|
|
/* 0239113C */ cpu->r[10] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02391140 */ _t18 = cpu->r[6] + 0x0000000Cu;
|
|
/* 02391140 */ rbrew_write32(cpu->mem, _t18, cpu->r[10]);
|
|
/* 02391144 */ _t19 = cpu->r[5] + 0x00000010u;
|
|
/* 02391144 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02391144 */ cpu->r[5] = _t19;
|
|
/* 02391148 */ _t20 = cpu->r[6] + 0x00000010u;
|
|
/* 02391148 */ rbrew_write32(cpu->mem, _t20, cpu->r[11]);
|
|
/* 02391148 */ cpu->r[6] = _t20;
|
|
/* 0239114C */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0239114C */ _t21 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0239114C */ _t22 = _t21 >> (0x00000002u & 31u);
|
|
/* 0239114C */ _t23 = _t22 & 0x00000001u;
|
|
/* 0239114C */ if (_t23) goto L_0239112C; else goto L_02391150;
|
|
L_02391150: ; // 0x2391150
|
|
/* 02391150 */ cpu->r[12] = 0x10080000u;
|
|
/* 02391154 */ _t24 = cpu->r[30] + 0x00000000u;
|
|
/* 02391154 */ cpu->r[3] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02391158 */ cpu->r[12] = cpu->r[12] + 0x00006448u;
|
|
/* 0239115C */ cpu->r[0] = 0x10080000u;
|
|
/* 02391160 */ _t25 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02391160 */ rbrew_write32(cpu->mem, _t25, cpu->r[12]);
|
|
/* 02391164 */ cpu->r[0] = cpu->r[0] + 0x00006500u;
|
|
/* 02391168 */ cpu->r[4] = cpu->r[1] + 0x00000068u;
|
|
/* 0239116C */ _t26 = cpu->r[1] + 0x00000068u;
|
|
/* 0239116C */ rbrew_write32(cpu->mem, _t26, cpu->r[0]);
|
|
/* 02391170 */ Gambit_fn_020F0AA8(cpu);
|
|
/* 02391174 */ cpu->r[12] = 0x101C0000u;
|
|
/* 02391178 */ _t27 = cpu->r[12] + 0x00006000u;
|
|
/* 02391178 */ cpu->r[12] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0239117C */ cpu->r[8] = cpu->r[3];
|
|
/* 02391180 */ _t28 = cpu->r[12] + 0x00000264u;
|
|
/* 02391180 */ cpu->r[3] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02391184 */ cpu->r[4] = cpu->r[8] + 0x0000008Cu;
|
|
/* 02391188 */ Gambit_fn_024FDCB0(cpu);
|
|
/* 0239118C */ _t29 = cpu->r[31] + 0x00000000u;
|
|
/* 0239118C */ rbrew_write32(cpu->mem, _t29, cpu->r[3]);
|
|
/* 02391190 */ _t30 = cpu->r[30] + 0x00000000u;
|
|
/* 02391190 */ cpu->r[3] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02391194 */ _t31 = cpu->r[3] + 0x00000074u;
|
|
/* 02391194 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 02391198 */ _t32 = cpu->r[3] + 0x0000005Cu;
|
|
/* 02391198 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 0239119C */ _t33 = cpu->r[3] + 0x00000068u;
|
|
/* 0239119C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 023911A0 */ _t34 = cpu->r[1] + 0x00000008u;
|
|
/* 023911A0 */ rbrew_write_f32(cpu->mem, _t34, cpu->f[12]);
|
|
/* 023911A4 */ _t35 = cpu->r[1] + 0x00000010u;
|
|
/* 023911A4 */ rbrew_write_f32(cpu->mem, _t35, cpu->f[8]);
|
|
/* 023911A8 */ _t36 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023911A8 */ rbrew_write_f32(cpu->mem, _t36, cpu->f[0]);
|
|
/* 023911AC */ _t37 = cpu->r[3] + 0x00000078u;
|
|
/* 023911AC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 023911B0 */ _t38 = cpu->r[3] + 0x00000060u;
|
|
/* 023911B0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 023911B4 */ _t39 = cpu->r[3] + 0x0000006Cu;
|
|
/* 023911B4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t39);
|
|
/* 023911B8 */ _t40 = cpu->r[1] + 0x00000014u;
|
|
/* 023911B8 */ rbrew_write_f32(cpu->mem, _t40, cpu->f[10]);
|
|
/* 023911BC */ _t41 = cpu->r[1] + 0x0000001Cu;
|
|
/* 023911BC */ rbrew_write_f32(cpu->mem, _t41, cpu->f[12]);
|
|
/* 023911C0 */ _t42 = cpu->r[1] + 0x00000018u;
|
|
/* 023911C0 */ rbrew_write_f32(cpu->mem, _t42, cpu->f[11]);
|
|
/* 023911C4 */ _t43 = cpu->r[3] + 0x0000007Cu;
|
|
/* 023911C4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t43);
|
|
/* 023911C8 */ _t44 = cpu->r[3] + 0x00000064u;
|
|
/* 023911C8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 023911CC */ _t45 = cpu->r[3] + 0x00000070u;
|
|
/* 023911CC */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t45);
|
|
/* 023911D0 */ _t46 = cpu->r[1] + 0x00000020u;
|
|
/* 023911D0 */ rbrew_write_f32(cpu->mem, _t46, cpu->f[0]);
|
|
/* 023911D4 */ _t47 = cpu->r[1] + 0x00000028u;
|
|
/* 023911D4 */ rbrew_write_f32(cpu->mem, _t47, cpu->f[10]);
|
|
/* 023911D8 */ _t48 = cpu->r[1] + 0x00000024u;
|
|
/* 023911D8 */ rbrew_write_f32(cpu->mem, _t48, cpu->f[8]);
|
|
/* 023911DC */ _t49 = cpu->r[3] + 0x000046BCu;
|
|
/* 023911DC */ cpu->r[9] = rbrew_read32(cpu->mem, _t49);
|
|
/* 023911E0 */ _t50 = cpu->r[9] + 0x0000002Cu;
|
|
/* 023911E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t50);
|
|
/* 023911E4 */ cpu->ctr = cpu->r[0];
|
|
/* 023911E8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 023911EC */ _t51 = cpu->r[3] + 0x00000000u;
|
|
/* 023911EC */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t51);
|
|
/* 023911F0 */ _t52 = cpu->r[1] + 0x0000002Cu;
|
|
/* 023911F0 */ rbrew_write_f32(cpu->mem, _t52, cpu->f[8]);
|
|
/* 023911F4 */ _t53 = cpu->r[3] + 0x00000004u;
|
|
/* 023911F4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t53);
|
|
/* 023911F8 */ _t54 = cpu->r[1] + 0x00000030u;
|
|
/* 023911F8 */ rbrew_write_f32(cpu->mem, _t54, cpu->f[10]);
|
|
/* 023911FC */ _t55 = cpu->r[3] + 0x00000008u;
|
|
/* 023911FC */ cpu->f[2] = rbrew_read_f32(cpu->mem, _t55);
|
|
/* 02391200 */ _t56 = cpu->r[1] + 0x00000034u;
|
|
/* 02391200 */ rbrew_write_f32(cpu->mem, _t56, cpu->f[2]);
|
|
/* 02391204 */ _t57 = cpu->r[31] + 0x00000000u;
|
|
/* 02391204 */ cpu->r[6] = rbrew_read32(cpu->mem, _t57);
|
|
/* 02391208 */ /* nop */
|
|
/* 0239120C */ /* nop */
|
|
/* 02391210 */ /* nop */
|
|
/* 02391214 */ /* nop */
|
|
/* 02391218 */ /* nop */
|
|
/* 0239121C */ /* nop */
|
|
/* 02391220 */ /* nop */
|
|
/* 02391224 */ /* nop */
|
|
/* 02391228 */ cpu->f[9] = cpu->f[8];
|
|
/* 0239122C */ /* nop */
|
|
/* 02391230 */ cpu->f[6] = cpu->f[13];
|
|
/* 02391234 */ /* nop */
|
|
/* 02391238 */ _t58 = cpu->r[1] + 0x00000010u;
|
|
/* 02391238 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 0239123C */ /* nop */
|
|
/* 02391240 */ _t59 = cpu->r[6] + 0x0000005Cu;
|
|
/* 02391240 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t59);
|
|
/* 02391244 */ /* nop */
|
|
/* 02391248 */ cpu->f[30] = fma(cpu->f[13], cpu->f[12], cpu->f[9]);
|
|
/* 0239124C */ /* nop */
|
|
/* 02391250 */ /* nop */
|
|
/* 02391254 */ _t60 = cpu->r[6] + 0x00000068u;
|
|
/* 02391254 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t60);
|
|
/* 02391258 */ /* nop */
|
|
/* 0239125C */ _t61 = cpu->r[6] + 0x00000074u;
|
|
/* 0239125C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t61);
|
|
/* 02391260 */ cpu->f[31] = cpu->f[12];
|
|
/* 02391264 */ _t62 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02391264 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t62);
|
|
/* 02391268 */ cpu->f[0] = fma(cpu->f[13], cpu->f[0], cpu->f[6]);
|
|
/* 0239126C */ _t63 = cpu->r[1] + 0x00000038u;
|
|
/* 0239126C */ rbrew_write_f32(cpu->mem, _t63, cpu->f[30]);
|
|
/* 02391270 */ cpu->f[13] = fma(cpu->f[13], cpu->f[9], cpu->f[8]);
|
|
/* 02391274 */ _t64 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02391274 */ rbrew_write_f32(cpu->mem, _t64, cpu->f[0]);
|
|
/* 02391278 */ /* nop */
|
|
/* 0239127C */ _t65 = cpu->r[1] + 0x00000040u;
|
|
/* 0239127C */ rbrew_write_f32(cpu->mem, _t65, cpu->f[13]);
|
|
/* 02391280 */ _t66 = cpu->r[6] + 0x00000068u;
|
|
/* 02391280 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t66);
|
|
/* 02391284 */ /* nop */
|
|
/* 02391288 */ /* nop */
|
|
/* 0239128C */ cpu->f[12] = fma(cpu->f[1], cpu->f[13], cpu->f[12]);
|
|
/* 02391290 */ /* nop */
|
|
/* 02391294 */ _t67 = cpu->r[6] + 0x0000005Cu;
|
|
/* 02391294 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t67);
|
|
/* 02391298 */ /* nop */
|
|
/* 0239129C */ _t68 = cpu->r[6] + 0x00000074u;
|
|
/* 0239129C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t68);
|
|
/* 023912A0 */ cpu->f[0] = fma(cpu->f[1], cpu->f[0], cpu->f[31]);
|
|
/* 023912A4 */ _t69 = cpu->r[1] + 0x00000048u;
|
|
/* 023912A4 */ rbrew_write_f32(cpu->mem, _t69, cpu->f[12]);
|
|
/* 023912A8 */ cpu->f[9] = fma(cpu->f[1], cpu->f[9], cpu->f[7]);
|
|
/* 023912AC */ /* nop */
|
|
/* 023912B0 */ /* nop */
|
|
/* 023912B4 */ _t70 = cpu->r[1] + 0x00000044u;
|
|
/* 023912B4 */ rbrew_write_f32(cpu->mem, _t70, cpu->f[0]);
|
|
/* 023912B8 */ /* nop */
|
|
/* 023912BC */ _t71 = cpu->r[1] + 0x0000004Cu;
|
|
/* 023912BC */ rbrew_write_f32(cpu->mem, _t71, cpu->f[9]);
|
|
/* 023912C0 */ /* nop */
|
|
/* 023912C4 */ _t72 = cpu->r[1] + 0x00000028u;
|
|
/* 023912C4 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t72);
|
|
/* 023912C8 */ cpu->f[13] = cpu->f[12];
|
|
/* 023912CC */ _t73 = cpu->r[6] + 0x0000005Cu;
|
|
/* 023912CC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t73);
|
|
/* 023912D0 */ cpu->f[7] = cpu->f[0];
|
|
/* 023912D4 */ _t74 = cpu->r[6] + 0x00000068u;
|
|
/* 023912D4 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t74);
|
|
/* 023912D8 */ cpu->f[7] = fma(cpu->f[1], cpu->f[8], cpu->f[7]);
|
|
/* 023912DC */ _t75 = cpu->r[6] + 0x00000074u;
|
|
/* 023912DC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t75);
|
|
/* 023912E0 */ cpu->f[0] = fma(cpu->f[1], cpu->f[9], cpu->f[13]);
|
|
/* 023912E4 */ /* nop */
|
|
/* 023912E8 */ cpu->f[9] = fma(cpu->f[1], cpu->f[12], cpu->f[10]);
|
|
/* 023912EC */ _t76 = cpu->r[1] + 0x00000054u;
|
|
/* 023912EC */ rbrew_write_f32(cpu->mem, _t76, cpu->f[7]);
|
|
/* 023912F0 */ _t77 = cpu->r[1] + 0x00000050u;
|
|
/* 023912F0 */ rbrew_write_f32(cpu->mem, _t77, cpu->f[0]);
|
|
/* 023912F4 */ cpu->r[12] = 0x00000003u;
|
|
/* 023912F8 */ _t78 = cpu->r[1] + 0x00000058u;
|
|
/* 023912F8 */ rbrew_write_f32(cpu->mem, _t78, cpu->f[9]);
|
|
/* 023912FC */ /* nop */
|
|
/* 02391300 */ cpu->ctr = cpu->r[12];
|
|
/* 02391304 */ /* nop */
|
|
/* 02391308 */ _t79 = cpu->r[6] + 0x00000080u;
|
|
/* 02391308 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t79);
|
|
/* 0239130C */ /* nop */
|
|
/* 02391310 */ cpu->f[7] = cpu->f[2] - cpu->f[7];
|
|
/* 02391314 */ /* nop */
|
|
/* 02391318 */ /* nop */
|
|
/* 0239131C */ _t80 = cpu->r[1] + 0x000000A8u;
|
|
/* 0239131C */ rbrew_write_f32(cpu->mem, _t80, cpu->f[7]);
|
|
/* 02391320 */ /* nop */
|
|
/* 02391324 */ _t81 = cpu->r[6] + 0x0000005Cu;
|
|
/* 02391324 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t81);
|
|
/* 02391328 */ cpu->f[0] = cpu->f[13];
|
|
/* 0239132C */ cpu->f[13] = fma(cpu->f[7], cpu->f[11], cpu->f[9]);
|
|
/* 02391330 */ /* nop */
|
|
/* 02391334 */ /* nop */
|
|
/* 02391338 */ _t82 = cpu->r[6] + 0x00000068u;
|
|
/* 02391338 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t82);
|
|
/* 0239133C */ cpu->f[12] = cpu->f[11];
|
|
/* 02391340 */ _t83 = cpu->r[6] + 0x00000074u;
|
|
/* 02391340 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t83);
|
|
/* 02391344 */ cpu->f[11] = fma(cpu->f[7], cpu->f[9], cpu->f[0]);
|
|
/* 02391348 */ _t84 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02391348 */ rbrew_write_f32(cpu->mem, _t84, cpu->f[13]);
|
|
/* 0239134C */ cpu->f[9] = fma(cpu->f[7], cpu->f[8], cpu->f[12]);
|
|
/* 02391350 */ _t85 = cpu->r[1] + 0x00000060u;
|
|
/* 02391350 */ rbrew_write_f32(cpu->mem, _t85, cpu->f[11]);
|
|
/* 02391354 */ cpu->r[9] = cpu->r[1] + 0x00000034u;
|
|
/* 02391358 */ cpu->r[10] = cpu->r[1] + 0x0000006Cu;
|
|
/* 0239135C */ _t86 = cpu->r[1] + 0x00000064u;
|
|
/* 0239135C */ rbrew_write_f32(cpu->mem, _t86, cpu->f[9]);
|
|
L_02391360: ; // 0x2391360
|
|
/* 02391360 */ _t87 = cpu->r[9] + 0x00000004u;
|
|
/* 02391360 */ cpu->r[0] = rbrew_read32(cpu->mem, _t87);
|
|
/* 02391364 */ _t88 = cpu->r[10] + 0x00000004u;
|
|
/* 02391364 */ rbrew_write32(cpu->mem, _t88, cpu->r[0]);
|
|
/* 02391368 */ _t89 = cpu->r[9] + 0x00000008u;
|
|
/* 02391368 */ cpu->r[5] = rbrew_read32(cpu->mem, _t89);
|
|
/* 0239136C */ _t90 = cpu->r[10] + 0x00000008u;
|
|
/* 0239136C */ rbrew_write32(cpu->mem, _t90, cpu->r[5]);
|
|
/* 02391370 */ _t91 = cpu->r[9] + 0x0000000Cu;
|
|
/* 02391370 */ cpu->r[6] = rbrew_read32(cpu->mem, _t91);
|
|
/* 02391374 */ _t92 = cpu->r[10] + 0x0000000Cu;
|
|
/* 02391374 */ rbrew_write32(cpu->mem, _t92, cpu->r[6]);
|
|
/* 02391378 */ _t93 = cpu->r[9] + 0x00000010u;
|
|
/* 02391378 */ cpu->r[0] = rbrew_read32(cpu->mem, _t93);
|
|
/* 02391378 */ cpu->r[9] = _t93;
|
|
/* 0239137C */ _t94 = cpu->r[10] + 0x00000010u;
|
|
/* 0239137C */ rbrew_write32(cpu->mem, _t94, cpu->r[0]);
|
|
/* 0239137C */ cpu->r[10] = _t94;
|
|
/* 02391380 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02391380 */ _t95 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02391380 */ _t96 = _t95 >> (0x00000002u & 31u);
|
|
/* 02391380 */ _t97 = _t96 & 0x00000001u;
|
|
/* 02391380 */ if (_t97) goto L_02391360; else goto L_02391384;
|
|
L_02391384: ; // 0x2391384
|
|
/* 02391384 */ _t98 = cpu->r[1] + 0x00000070u;
|
|
/* 02391384 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t98);
|
|
/* 02391388 */ _t99 = cpu->r[31] + 0x00000004u;
|
|
/* 02391388 */ rbrew_write_f32(cpu->mem, _t99, cpu->f[9]);
|
|
/* 0239138C */ _t100 = cpu->r[1] + 0x00000074u;
|
|
/* 0239138C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t100);
|
|
/* 02391390 */ _t101 = cpu->r[31] + 0x00000008u;
|
|
/* 02391390 */ rbrew_write_f32(cpu->mem, _t101, cpu->f[10]);
|
|
/* 02391394 */ _t102 = cpu->r[1] + 0x00000078u;
|
|
/* 02391394 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t102);
|
|
/* 02391398 */ _t103 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02391398 */ rbrew_write_f32(cpu->mem, _t103, cpu->f[11]);
|
|
/* 0239139C */ _t104 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0239139C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t104);
|
|
/* 023913A0 */ _t105 = cpu->r[31] + 0x00000010u;
|
|
/* 023913A0 */ rbrew_write_f32(cpu->mem, _t105, cpu->f[13]);
|
|
/* 023913A4 */ _t106 = cpu->r[1] + 0x00000080u;
|
|
/* 023913A4 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t106);
|
|
/* 023913A8 */ _t107 = cpu->r[31] + 0x00000014u;
|
|
/* 023913A8 */ rbrew_write_f32(cpu->mem, _t107, cpu->f[7]);
|
|
/* 023913AC */ _t108 = cpu->r[1] + 0x00000084u;
|
|
/* 023913AC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t108);
|
|
/* 023913B0 */ _t109 = cpu->r[31] + 0x00000018u;
|
|
/* 023913B0 */ rbrew_write_f32(cpu->mem, _t109, cpu->f[9]);
|
|
/* 023913B4 */ _t110 = cpu->r[1] + 0x00000088u;
|
|
/* 023913B4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t110);
|
|
/* 023913B8 */ _t111 = cpu->r[31] + 0x0000001Cu;
|
|
/* 023913B8 */ rbrew_write_f32(cpu->mem, _t111, cpu->f[13]);
|
|
/* 023913BC */ _t112 = cpu->r[1] + 0x0000008Cu;
|
|
/* 023913BC */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t112);
|
|
/* 023913C0 */ _t113 = cpu->r[31] + 0x00000020u;
|
|
/* 023913C0 */ rbrew_write_f32(cpu->mem, _t113, cpu->f[7]);
|
|
/* 023913C4 */ _t114 = cpu->r[1] + 0x00000090u;
|
|
/* 023913C4 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t114);
|
|
/* 023913C8 */ _t115 = cpu->r[31] + 0x00000024u;
|
|
/* 023913C8 */ rbrew_write_f32(cpu->mem, _t115, cpu->f[9]);
|
|
/* 023913CC */ _t116 = cpu->r[1] + 0x00000094u;
|
|
/* 023913CC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t116);
|
|
/* 023913D0 */ _t117 = cpu->r[31] + 0x00000028u;
|
|
/* 023913D0 */ rbrew_write_f32(cpu->mem, _t117, cpu->f[11]);
|
|
/* 023913D4 */ _t118 = cpu->r[1] + 0x00000098u;
|
|
/* 023913D4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t118);
|
|
/* 023913D8 */ _t119 = cpu->r[31] + 0x0000002Cu;
|
|
/* 023913D8 */ rbrew_write_f32(cpu->mem, _t119, cpu->f[12]);
|
|
/* 023913DC */ _t120 = cpu->r[1] + 0x0000009Cu;
|
|
/* 023913DC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t120);
|
|
/* 023913E0 */ _t121 = cpu->r[31] + 0x00000030u;
|
|
/* 023913E0 */ rbrew_write_f32(cpu->mem, _t121, cpu->f[13]);
|
|
L_023913E4: ; // 0x23913e4
|
|
/* 023913E4 */ _t122 = cpu->r[1] + 0x000000C0u;
|
|
/* 023913E4 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t122);
|
|
/* 023913E8 */ cpu->r[3] = cpu->r[31];
|
|
/* 023913EC */ _t123 = cpu->r[1] + 0x000000D0u;
|
|
/* 023913EC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t123);
|
|
/* 023913F0 */ _t124 = cpu->r[1] + 0x000000B8u;
|
|
/* 023913F0 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t124);
|
|
/* 023913F4 */ _t125 = cpu->r[1] + 0x000000C8u;
|
|
/* 023913F4 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t125);
|
|
/* 023913F8 */ _t126 = cpu->r[1] + 0x000000B0u;
|
|
/* 023913F8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t126);
|
|
/* 023913FC */ _t127 = cpu->r[1] + 0x000000B4u;
|
|
/* 023913FC */ cpu->r[31] = rbrew_read32(cpu->mem, _t127);
|
|
/* 02391400 */ _t128 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02391400 */ _t129 = _t128 & 0x00000001u;
|
|
/* 02391400 */ if (_t129) goto L_02391404; // else: addr-0 trap, fall-through
|
|
L_02391404: ; // 0x2391404
|
|
/* 02391404 */ _t130 = cpu->r[1] + 0x000000DCu;
|
|
/* 02391404 */ cpu->r[0] = rbrew_read32(cpu->mem, _t130);
|
|
/* 02391408 */ cpu->lr = cpu->r[0];
|
|
/* 0239140C */ cpu->r[1] = cpu->r[1] + 0x000000D8u;
|
|
/* 02391410 */ return;
|
|
}
|
|
|
|
// fn_02391414 @ 0x2391414
|
|
void Gambit_fn_02391414(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_02391414: ; // 0x2391414
|
|
/* 02391414 */ cpu->r[0] = cpu->lr;
|
|
/* 02391418 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02391418 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02391418 */ cpu->r[1] = _t0;
|
|
/* 0239141C */ cpu->r[12] = 0x10080000u;
|
|
/* 02391420 */ cpu->r[12] = cpu->r[12] + 0x00006448u;
|
|
/* 02391424 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 02391424 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02391428 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02391428 */ rbrew_write32(cpu->mem, _t2, cpu->r[12]);
|
|
/* 0239142C */ cpu->r[31] = cpu->r[3];
|
|
/* 02391430 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02391430 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02391434 */ cpu->r[0] = 0x10080000u;
|
|
/* 02391438 */ _t4 = cpu->r[31] + 0x00000000u;
|
|
/* 02391438 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0239143C */ cpu->r[0] = cpu->r[0] + 0x00006510u;
|
|
/* 02391440 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02391444 */ _t5 = cpu->r[1] + 0x00000008u;
|
|
/* 02391444 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02391448 */ Gambit_fn_020F0AA8(cpu);
|
|
/* 0239144C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02391450 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02391450 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02391450 */ if (_t7) goto L_02391454; else goto L_0239146C;
|
|
L_02391454: ; // 0x2391454
|
|
/* 02391454 */ _t8 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02391454 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02391458 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 02391458 */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0239145C */ cpu->lr = cpu->r[0];
|
|
/* 02391460 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02391464 */ cpu->r[3] = 0x00000000u;
|
|
/* 02391468 */ return;
|
|
L_0239146C: ; // 0x239146c
|
|
/* 0239146C */ cpu->r[3] = 0x00000000u;
|
|
/* 02391470 */ cpu->r[4] = cpu->r[31];
|
|
/* 02391474 */ Gambit_fn_023910C8(cpu);
|
|
/* 02391478 */ _t10 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02391478 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0239147C */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 0239147C */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02391480 */ cpu->lr = cpu->r[0];
|
|
/* 02391484 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02391488 */ return;
|
|
}
|
|
|
|
// fn_02391418 @ 0x2391418
|
|
void Gambit_fn_02391418(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_02391418: ; // 0x2391418
|
|
/* 02391418 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02391418 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02391418 */ cpu->r[1] = _t0;
|
|
/* 0239141C */ cpu->r[12] = 0x10080000u;
|
|
/* 02391420 */ cpu->r[12] = cpu->r[12] + 0x00006448u;
|
|
/* 02391424 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 02391424 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02391428 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02391428 */ rbrew_write32(cpu->mem, _t2, cpu->r[12]);
|
|
/* 0239142C */ cpu->r[31] = cpu->r[3];
|
|
/* 02391430 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02391430 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02391434 */ cpu->r[0] = 0x10080000u;
|
|
/* 02391438 */ _t4 = cpu->r[31] + 0x00000000u;
|
|
/* 02391438 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0239143C */ cpu->r[0] = cpu->r[0] + 0x00006510u;
|
|
/* 02391440 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02391444 */ _t5 = cpu->r[1] + 0x00000008u;
|
|
/* 02391444 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02391448 */ Gambit_fn_020F0AA8(cpu);
|
|
/* 0239144C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02391450 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02391450 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02391450 */ if (_t7) goto L_02391454; else goto L_0239146C;
|
|
L_02391454: ; // 0x2391454
|
|
/* 02391454 */ _t8 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02391454 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02391458 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 02391458 */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0239145C */ cpu->lr = cpu->r[0];
|
|
/* 02391460 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02391464 */ cpu->r[3] = 0x00000000u;
|
|
/* 02391468 */ return;
|
|
L_0239146C: ; // 0x239146c
|
|
/* 0239146C */ cpu->r[3] = 0x00000000u;
|
|
/* 02391470 */ cpu->r[4] = cpu->r[31];
|
|
/* 02391474 */ Gambit_fn_023910C8(cpu);
|
|
/* 02391478 */ _t10 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02391478 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0239147C */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 0239147C */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02391480 */ cpu->lr = cpu->r[0];
|
|
/* 02391484 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02391488 */ return;
|
|
}
|
|
|
|
// fn_0239148C @ 0x239148c
|
|
void Gambit_fn_0239148C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68;
|
|
|
|
L_0239148C: ; // 0x239148c
|
|
/* 0239148C */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 0239148C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239148C */ cpu->r[1] = _t0;
|
|
/* 02391490 */ cpu->r[10] = 0x00000003u;
|
|
/* 02391494 */ cpu->r[9] = cpu->r[1] + 0x00000004u;
|
|
/* 02391498 */ cpu->ctr = cpu->r[10];
|
|
/* 0239149C */ cpu->r[12] = cpu->r[3];
|
|
L_023914A0: ; // 0x23914a0
|
|
/* 023914A0 */ _t1 = cpu->r[12] + 0x00000004u;
|
|
/* 023914A0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t1);
|
|
/* 023914A4 */ _t2 = cpu->r[9] + 0x00000004u;
|
|
/* 023914A4 */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 023914A8 */ _t3 = cpu->r[12] + 0x00000008u;
|
|
/* 023914A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 023914AC */ _t4 = cpu->r[9] + 0x00000008u;
|
|
/* 023914AC */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 023914B0 */ _t5 = cpu->r[12] + 0x0000000Cu;
|
|
/* 023914B0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t5);
|
|
/* 023914B4 */ _t6 = cpu->r[9] + 0x0000000Cu;
|
|
/* 023914B4 */ rbrew_write32(cpu->mem, _t6, cpu->r[5]);
|
|
/* 023914B8 */ _t7 = cpu->r[12] + 0x00000010u;
|
|
/* 023914B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 023914B8 */ cpu->r[12] = _t7;
|
|
/* 023914BC */ _t8 = cpu->r[9] + 0x00000010u;
|
|
/* 023914BC */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 023914BC */ cpu->r[9] = _t8;
|
|
/* 023914C0 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 023914C0 */ _t9 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 023914C0 */ _t10 = _t9 >> (0x00000002u & 31u);
|
|
/* 023914C0 */ _t11 = _t10 & 0x00000001u;
|
|
/* 023914C0 */ if (_t11) goto L_023914A0; else goto L_023914C4;
|
|
L_023914C4: ; // 0x23914c4
|
|
/* 023914C4 */ _t12 = cpu->r[3] + 0x00000000u;
|
|
/* 023914C4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 023914C8 */ _t13 = cpu->r[1] + 0x00000034u;
|
|
/* 023914C8 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 023914CC */ _t14 = cpu->r[9] + 0x000000E4u;
|
|
/* 023914CC */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 023914D0 */ /* nop */
|
|
/* 023914D4 */ cpu->f[6] = cpu->f[6] * cpu->f[8];
|
|
/* 023914D8 */ _t15 = cpu->r[1] + 0x00000008u;
|
|
/* 023914D8 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 023914DC */ /* nop */
|
|
/* 023914E0 */ _t16 = cpu->r[1] + 0x00000034u;
|
|
/* 023914E0 */ rbrew_write_f32(cpu->mem, _t16, cpu->f[6]);
|
|
/* 023914E4 */ /* nop */
|
|
/* 023914E8 */ _t17 = cpu->r[9] + 0x00000054u;
|
|
/* 023914E8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 023914EC */ _t18 = cpu->r[4] + 0x00000000u;
|
|
/* 023914EC */ rbrew_write_f32(cpu->mem, _t18, cpu->f[0]);
|
|
/* 023914F0 */ _t19 = cpu->r[9] + 0x00000058u;
|
|
/* 023914F0 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 023914F4 */ _t20 = cpu->r[4] + 0x00000004u;
|
|
/* 023914F4 */ rbrew_write_f32(cpu->mem, _t20, cpu->f[7]);
|
|
/* 023914F8 */ _t21 = cpu->r[9] + 0x0000005Cu;
|
|
/* 023914F8 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 023914FC */ /* nop */
|
|
/* 02391500 */ cpu->f[11] = cpu->f[8] * cpu->f[9];
|
|
/* 02391504 */ _t22 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02391504 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 02391508 */ /* nop */
|
|
/* 0239150C */ _t23 = cpu->r[4] + 0x00000008u;
|
|
/* 0239150C */ rbrew_write_f32(cpu->mem, _t23, cpu->f[11]);
|
|
/* 02391510 */ /* nop */
|
|
/* 02391514 */ /* nop */
|
|
/* 02391518 */ /* nop */
|
|
/* 0239151C */ /* nop */
|
|
/* 02391520 */ _t24 = cpu->r[9] + 0x00000068u;
|
|
/* 02391520 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 02391524 */ cpu->f[11] = fma(cpu->f[8], cpu->f[0], cpu->f[11]);
|
|
/* 02391528 */ _t25 = cpu->r[1] + 0x00000010u;
|
|
/* 02391528 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 0239152C */ _t26 = cpu->r[4] + 0x00000008u;
|
|
/* 0239152C */ rbrew_write_f32(cpu->mem, _t26, cpu->f[11]);
|
|
/* 02391530 */ /* nop */
|
|
/* 02391534 */ /* nop */
|
|
/* 02391538 */ /* nop */
|
|
/* 0239153C */ _t27 = cpu->r[9] + 0x00000074u;
|
|
/* 0239153C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 02391540 */ cpu->f[11] = fma(cpu->f[0], cpu->f[9], cpu->f[11]);
|
|
/* 02391544 */ _t28 = cpu->r[4] + 0x00000008u;
|
|
/* 02391544 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[11]);
|
|
/* 02391548 */ _t29 = cpu->r[9] + 0x00000054u;
|
|
/* 02391548 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 0239154C */ _t30 = cpu->r[4] + 0x0000000Cu;
|
|
/* 0239154C */ rbrew_write_f32(cpu->mem, _t30, cpu->f[10]);
|
|
/* 02391550 */ _t31 = cpu->r[9] + 0x00000058u;
|
|
/* 02391550 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 02391554 */ _t32 = cpu->r[1] + 0x00000014u;
|
|
/* 02391554 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 02391558 */ _t33 = cpu->r[4] + 0x00000010u;
|
|
/* 02391558 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[11]);
|
|
/* 0239155C */ _t34 = cpu->r[9] + 0x0000005Cu;
|
|
/* 0239155C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 02391560 */ /* nop */
|
|
/* 02391564 */ cpu->f[7] = cpu->f[12] * cpu->f[9];
|
|
/* 02391568 */ _t35 = cpu->r[1] + 0x00000018u;
|
|
/* 02391568 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 0239156C */ /* nop */
|
|
/* 02391570 */ _t36 = cpu->r[4] + 0x00000014u;
|
|
/* 02391570 */ rbrew_write_f32(cpu->mem, _t36, cpu->f[7]);
|
|
/* 02391574 */ /* nop */
|
|
/* 02391578 */ /* nop */
|
|
/* 0239157C */ /* nop */
|
|
/* 02391580 */ /* nop */
|
|
/* 02391584 */ _t37 = cpu->r[9] + 0x00000068u;
|
|
/* 02391584 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 02391588 */ cpu->f[7] = fma(cpu->f[12], cpu->f[10], cpu->f[7]);
|
|
/* 0239158C */ _t38 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239158C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 02391590 */ _t39 = cpu->r[4] + 0x00000014u;
|
|
/* 02391590 */ rbrew_write_f32(cpu->mem, _t39, cpu->f[7]);
|
|
/* 02391594 */ /* nop */
|
|
/* 02391598 */ /* nop */
|
|
/* 0239159C */ /* nop */
|
|
/* 023915A0 */ _t40 = cpu->r[9] + 0x00000074u;
|
|
/* 023915A0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 023915A4 */ cpu->f[7] = fma(cpu->f[0], cpu->f[13], cpu->f[7]);
|
|
/* 023915A8 */ _t41 = cpu->r[1] + 0x00000020u;
|
|
/* 023915A8 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 023915AC */ _t42 = cpu->r[4] + 0x00000014u;
|
|
/* 023915AC */ rbrew_write_f32(cpu->mem, _t42, cpu->f[7]);
|
|
/* 023915B0 */ _t43 = cpu->r[9] + 0x00000054u;
|
|
/* 023915B0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t43);
|
|
/* 023915B4 */ _t44 = cpu->r[4] + 0x00000018u;
|
|
/* 023915B4 */ rbrew_write_f32(cpu->mem, _t44, cpu->f[0]);
|
|
/* 023915B8 */ _t45 = cpu->r[9] + 0x00000058u;
|
|
/* 023915B8 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t45);
|
|
/* 023915BC */ _t46 = cpu->r[4] + 0x0000001Cu;
|
|
/* 023915BC */ rbrew_write_f32(cpu->mem, _t46, cpu->f[7]);
|
|
/* 023915C0 */ _t47 = cpu->r[9] + 0x0000005Cu;
|
|
/* 023915C0 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 023915C4 */ /* nop */
|
|
/* 023915C8 */ cpu->f[11] = cpu->f[8] * cpu->f[9];
|
|
/* 023915CC */ /* nop */
|
|
/* 023915D0 */ _t48 = cpu->r[1] + 0x00000024u;
|
|
/* 023915D0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 023915D4 */ /* nop */
|
|
/* 023915D8 */ _t49 = cpu->r[4] + 0x00000020u;
|
|
/* 023915D8 */ rbrew_write_f32(cpu->mem, _t49, cpu->f[11]);
|
|
/* 023915DC */ /* nop */
|
|
/* 023915E0 */ /* nop */
|
|
/* 023915E4 */ /* nop */
|
|
/* 023915E8 */ _t50 = cpu->r[9] + 0x00000068u;
|
|
/* 023915E8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t50);
|
|
/* 023915EC */ cpu->f[11] = fma(cpu->f[10], cpu->f[0], cpu->f[11]);
|
|
/* 023915F0 */ _t51 = cpu->r[1] + 0x00000028u;
|
|
/* 023915F0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t51);
|
|
/* 023915F4 */ _t52 = cpu->r[4] + 0x00000020u;
|
|
/* 023915F4 */ rbrew_write_f32(cpu->mem, _t52, cpu->f[11]);
|
|
/* 023915F8 */ /* nop */
|
|
/* 023915FC */ /* nop */
|
|
/* 02391600 */ /* nop */
|
|
/* 02391604 */ _t53 = cpu->r[9] + 0x00000074u;
|
|
/* 02391604 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t53);
|
|
/* 02391608 */ cpu->f[11] = fma(cpu->f[0], cpu->f[9], cpu->f[11]);
|
|
/* 0239160C */ _t54 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0239160C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 02391610 */ _t55 = cpu->r[4] + 0x00000020u;
|
|
/* 02391610 */ rbrew_write_f32(cpu->mem, _t55, cpu->f[11]);
|
|
/* 02391614 */ _t56 = cpu->r[9] + 0x00000054u;
|
|
/* 02391614 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 02391618 */ _t57 = cpu->r[4] + 0x00000024u;
|
|
/* 02391618 */ rbrew_write_f32(cpu->mem, _t57, cpu->f[10]);
|
|
/* 0239161C */ _t58 = cpu->r[9] + 0x00000058u;
|
|
/* 0239161C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 02391620 */ _t59 = cpu->r[4] + 0x00000028u;
|
|
/* 02391620 */ rbrew_write_f32(cpu->mem, _t59, cpu->f[11]);
|
|
/* 02391624 */ _t60 = cpu->r[9] + 0x0000005Cu;
|
|
/* 02391624 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t60);
|
|
/* 02391628 */ /* nop */
|
|
/* 0239162C */ cpu->f[7] = cpu->f[12] * cpu->f[9];
|
|
/* 02391630 */ _t61 = cpu->r[1] + 0x00000030u;
|
|
/* 02391630 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t61);
|
|
/* 02391634 */ /* nop */
|
|
/* 02391638 */ _t62 = cpu->r[4] + 0x0000002Cu;
|
|
/* 02391638 */ rbrew_write_f32(cpu->mem, _t62, cpu->f[7]);
|
|
/* 0239163C */ /* nop */
|
|
/* 02391640 */ /* nop */
|
|
/* 02391644 */ /* nop */
|
|
/* 02391648 */ /* nop */
|
|
/* 0239164C */ _t63 = cpu->r[9] + 0x00000068u;
|
|
/* 0239164C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t63);
|
|
/* 02391650 */ cpu->f[7] = fma(cpu->f[11], cpu->f[10], cpu->f[7]);
|
|
/* 02391654 */ _t64 = cpu->r[4] + 0x0000002Cu;
|
|
/* 02391654 */ rbrew_write_f32(cpu->mem, _t64, cpu->f[7]);
|
|
/* 02391658 */ /* nop */
|
|
/* 0239165C */ /* nop */
|
|
/* 02391660 */ /* nop */
|
|
/* 02391664 */ _t65 = cpu->r[9] + 0x00000074u;
|
|
/* 02391664 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t65);
|
|
/* 02391668 */ cpu->f[7] = fma(cpu->f[6], cpu->f[13], cpu->f[7]);
|
|
/* 0239166C */ _t66 = cpu->r[4] + 0x0000002Cu;
|
|
/* 0239166C */ rbrew_write_f32(cpu->mem, _t66, cpu->f[7]);
|
|
/* 02391670 */ /* nop */
|
|
/* 02391674 */ /* nop */
|
|
/* 02391678 */ /* nop */
|
|
/* 0239167C */ _t67 = cpu->r[9] + 0x00000080u;
|
|
/* 0239167C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t67);
|
|
/* 02391680 */ cpu->f[13] = cpu->f[7] + cpu->f[0];
|
|
/* 02391684 */ _t68 = cpu->r[4] + 0x0000002Cu;
|
|
/* 02391684 */ rbrew_write_f32(cpu->mem, _t68, cpu->f[13]);
|
|
/* 02391688 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 0239168C */ return;
|
|
}
|
|
|
|
// fn_02391690 @ 0x2391690
|
|
void Gambit_fn_02391690(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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_02391690: ; // 0x2391690
|
|
/* 02391690 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 02391690 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02391690 */ cpu->r[1] = _t0;
|
|
/* 02391694 */ cpu->r[8] = 0x00000003u;
|
|
/* 02391698 */ cpu->r[6] = cpu->r[1] + 0x00000004u;
|
|
/* 0239169C */ cpu->ctr = cpu->r[8];
|
|
/* 023916A0 */ cpu->r[12] = cpu->r[3];
|
|
L_023916A4: ; // 0x23916a4
|
|
/* 023916A4 */ _t1 = cpu->r[12] + 0x00000004u;
|
|
/* 023916A4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t1);
|
|
/* 023916A8 */ _t2 = cpu->r[6] + 0x00000004u;
|
|
/* 023916A8 */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 023916AC */ _t3 = cpu->r[12] + 0x00000008u;
|
|
/* 023916AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 023916B0 */ _t4 = cpu->r[6] + 0x00000008u;
|
|
/* 023916B0 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 023916B4 */ _t5 = cpu->r[12] + 0x0000000Cu;
|
|
/* 023916B4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t5);
|
|
/* 023916B8 */ _t6 = cpu->r[6] + 0x0000000Cu;
|
|
/* 023916B8 */ rbrew_write32(cpu->mem, _t6, cpu->r[7]);
|
|
/* 023916BC */ _t7 = cpu->r[12] + 0x00000010u;
|
|
/* 023916BC */ cpu->r[9] = rbrew_read32(cpu->mem, _t7);
|
|
/* 023916BC */ cpu->r[12] = _t7;
|
|
/* 023916C0 */ _t8 = cpu->r[6] + 0x00000010u;
|
|
/* 023916C0 */ rbrew_write32(cpu->mem, _t8, cpu->r[9]);
|
|
/* 023916C0 */ cpu->r[6] = _t8;
|
|
/* 023916C4 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 023916C4 */ _t9 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 023916C4 */ _t10 = _t9 >> (0x00000002u & 31u);
|
|
/* 023916C4 */ _t11 = _t10 & 0x00000001u;
|
|
/* 023916C4 */ if (_t11) goto L_023916A4; else goto L_023916C8;
|
|
L_023916C8: ; // 0x23916c8
|
|
/* 023916C8 */ _t12 = cpu->r[3] + 0x00000000u;
|
|
/* 023916C8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t12);
|
|
/* 023916CC */ _t13 = cpu->r[1] + 0x00000034u;
|
|
/* 023916CC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 023916D0 */ _t14 = cpu->r[10] + 0x000000E4u;
|
|
/* 023916D0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 023916D4 */ cpu->f[12] = cpu->f[12] * cpu->f[13];
|
|
/* 023916D8 */ _t15 = cpu->r[1] + 0x00000034u;
|
|
/* 023916D8 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[12]);
|
|
/* 023916DC */ _t16 = cpu->r[10] + 0x00000054u;
|
|
/* 023916DC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 023916E0 */ _t17 = cpu->r[4] + 0x00000000u;
|
|
/* 023916E0 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[13]);
|
|
/* 023916E4 */ _t18 = cpu->r[10] + 0x00000058u;
|
|
/* 023916E4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 023916E8 */ _t19 = cpu->r[4] + 0x00000004u;
|
|
/* 023916E8 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[0]);
|
|
/* 023916EC */ _t20 = cpu->r[10] + 0x0000005Cu;
|
|
/* 023916EC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 023916F0 */ _t21 = cpu->r[4] + 0x00000008u;
|
|
/* 023916F0 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[9]);
|
|
/* 023916F4 */ _t22 = cpu->r[3] + 0x00000004u;
|
|
/* 023916F4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 023916F8 */ /* nop */
|
|
/* 023916FC */ cpu->f[8] = cpu->f[9] * cpu->f[0];
|
|
/* 02391700 */ /* nop */
|
|
/* 02391704 */ /* nop */
|
|
/* 02391708 */ _t23 = cpu->r[4] + 0x00000008u;
|
|
/* 02391708 */ rbrew_write_f32(cpu->mem, _t23, cpu->f[8]);
|
|
/* 0239170C */ _t24 = cpu->r[3] + 0x00000008u;
|
|
/* 0239170C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 02391710 */ /* nop */
|
|
/* 02391714 */ /* nop */
|
|
/* 02391718 */ /* nop */
|
|
/* 0239171C */ _t25 = cpu->r[10] + 0x00000068u;
|
|
/* 0239171C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 02391720 */ cpu->f[8] = fma(cpu->f[11], cpu->f[0], cpu->f[8]);
|
|
/* 02391724 */ _t26 = cpu->r[4] + 0x00000008u;
|
|
/* 02391724 */ rbrew_write_f32(cpu->mem, _t26, cpu->f[8]);
|
|
/* 02391728 */ _t27 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02391728 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 0239172C */ /* nop */
|
|
/* 02391730 */ /* nop */
|
|
/* 02391734 */ /* nop */
|
|
/* 02391738 */ _t28 = cpu->r[10] + 0x00000074u;
|
|
/* 02391738 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 0239173C */ cpu->f[8] = fma(cpu->f[13], cpu->f[11], cpu->f[8]);
|
|
/* 02391740 */ _t29 = cpu->r[4] + 0x00000008u;
|
|
/* 02391740 */ rbrew_write_f32(cpu->mem, _t29, cpu->f[8]);
|
|
/* 02391744 */ _t30 = cpu->r[10] + 0x00000054u;
|
|
/* 02391744 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 02391748 */ _t31 = cpu->r[4] + 0x0000000Cu;
|
|
/* 02391748 */ rbrew_write_f32(cpu->mem, _t31, cpu->f[12]);
|
|
/* 0239174C */ _t32 = cpu->r[10] + 0x00000058u;
|
|
/* 0239174C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 02391750 */ _t33 = cpu->r[4] + 0x00000010u;
|
|
/* 02391750 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[13]);
|
|
/* 02391754 */ _t34 = cpu->r[10] + 0x0000005Cu;
|
|
/* 02391754 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 02391758 */ _t35 = cpu->r[4] + 0x00000014u;
|
|
/* 02391758 */ rbrew_write_f32(cpu->mem, _t35, cpu->f[0]);
|
|
/* 0239175C */ _t36 = cpu->r[3] + 0x00000010u;
|
|
/* 0239175C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 02391760 */ /* nop */
|
|
/* 02391764 */ cpu->f[8] = cpu->f[0] * cpu->f[10];
|
|
/* 02391768 */ /* nop */
|
|
/* 0239176C */ /* nop */
|
|
/* 02391770 */ _t37 = cpu->r[4] + 0x00000014u;
|
|
/* 02391770 */ rbrew_write_f32(cpu->mem, _t37, cpu->f[8]);
|
|
/* 02391774 */ _t38 = cpu->r[3] + 0x00000014u;
|
|
/* 02391774 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 02391778 */ /* nop */
|
|
/* 0239177C */ /* nop */
|
|
/* 02391780 */ /* nop */
|
|
/* 02391784 */ _t39 = cpu->r[10] + 0x00000068u;
|
|
/* 02391784 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t39);
|
|
/* 02391788 */ cpu->f[8] = fma(cpu->f[11], cpu->f[10], cpu->f[8]);
|
|
/* 0239178C */ _t40 = cpu->r[4] + 0x00000014u;
|
|
/* 0239178C */ rbrew_write_f32(cpu->mem, _t40, cpu->f[8]);
|
|
/* 02391790 */ _t41 = cpu->r[3] + 0x00000018u;
|
|
/* 02391790 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 02391794 */ /* nop */
|
|
/* 02391798 */ /* nop */
|
|
/* 0239179C */ /* nop */
|
|
/* 023917A0 */ _t42 = cpu->r[10] + 0x00000074u;
|
|
/* 023917A0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 023917A4 */ cpu->f[8] = fma(cpu->f[12], cpu->f[13], cpu->f[8]);
|
|
/* 023917A8 */ _t43 = cpu->r[4] + 0x00000014u;
|
|
/* 023917A8 */ rbrew_write_f32(cpu->mem, _t43, cpu->f[8]);
|
|
/* 023917AC */ _t44 = cpu->r[10] + 0x00000054u;
|
|
/* 023917AC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 023917B0 */ _t45 = cpu->r[4] + 0x00000018u;
|
|
/* 023917B0 */ rbrew_write_f32(cpu->mem, _t45, cpu->f[10]);
|
|
/* 023917B4 */ _t46 = cpu->r[10] + 0x00000058u;
|
|
/* 023917B4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t46);
|
|
/* 023917B8 */ _t47 = cpu->r[4] + 0x0000001Cu;
|
|
/* 023917B8 */ rbrew_write_f32(cpu->mem, _t47, cpu->f[13]);
|
|
/* 023917BC */ _t48 = cpu->r[10] + 0x0000005Cu;
|
|
/* 023917BC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 023917C0 */ _t49 = cpu->r[4] + 0x00000020u;
|
|
/* 023917C0 */ rbrew_write_f32(cpu->mem, _t49, cpu->f[9]);
|
|
/* 023917C4 */ _t50 = cpu->r[3] + 0x0000001Cu;
|
|
/* 023917C4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t50);
|
|
/* 023917C8 */ cpu->f[8] = cpu->f[9] * cpu->f[0];
|
|
/* 023917CC */ /* nop */
|
|
/* 023917D0 */ /* nop */
|
|
/* 023917D4 */ /* nop */
|
|
/* 023917D8 */ _t51 = cpu->r[4] + 0x00000020u;
|
|
/* 023917D8 */ rbrew_write_f32(cpu->mem, _t51, cpu->f[8]);
|
|
/* 023917DC */ _t52 = cpu->r[3] + 0x00000020u;
|
|
/* 023917DC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 023917E0 */ /* nop */
|
|
/* 023917E4 */ /* nop */
|
|
/* 023917E8 */ /* nop */
|
|
/* 023917EC */ _t53 = cpu->r[10] + 0x00000068u;
|
|
/* 023917EC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t53);
|
|
/* 023917F0 */ cpu->f[8] = fma(cpu->f[11], cpu->f[0], cpu->f[8]);
|
|
/* 023917F4 */ _t54 = cpu->r[4] + 0x00000020u;
|
|
/* 023917F4 */ rbrew_write_f32(cpu->mem, _t54, cpu->f[8]);
|
|
/* 023917F8 */ _t55 = cpu->r[3] + 0x00000024u;
|
|
/* 023917F8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t55);
|
|
/* 023917FC */ /* nop */
|
|
/* 02391800 */ /* nop */
|
|
/* 02391804 */ /* nop */
|
|
/* 02391808 */ _t56 = cpu->r[10] + 0x00000074u;
|
|
/* 02391808 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 0239180C */ cpu->f[8] = fma(cpu->f[0], cpu->f[11], cpu->f[8]);
|
|
/* 02391810 */ _t57 = cpu->r[4] + 0x00000020u;
|
|
/* 02391810 */ rbrew_write_f32(cpu->mem, _t57, cpu->f[8]);
|
|
/* 02391814 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 02391818 */ return;
|
|
}
|
|
|
|
// fn_0239181C @ 0x239181c
|
|
void Gambit_fn_0239181C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _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_0239181C: ; // 0x239181c
|
|
/* 0239181C */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 0239181C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239181C */ cpu->r[1] = _t0;
|
|
/* 02391820 */ cpu->r[10] = 0x00000003u;
|
|
/* 02391824 */ cpu->r[8] = cpu->r[1] + 0x00000004u;
|
|
/* 02391828 */ cpu->ctr = cpu->r[10];
|
|
/* 0239182C */ cpu->r[6] = cpu->r[3];
|
|
L_02391830: ; // 0x2391830
|
|
/* 02391830 */ _t1 = cpu->r[6] + 0x00000004u;
|
|
/* 02391830 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02391834 */ _t2 = cpu->r[8] + 0x00000004u;
|
|
/* 02391834 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02391838 */ _t3 = cpu->r[6] + 0x00000008u;
|
|
/* 02391838 */ cpu->r[7] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0239183C */ _t4 = cpu->r[8] + 0x00000008u;
|
|
/* 0239183C */ rbrew_write32(cpu->mem, _t4, cpu->r[7]);
|
|
/* 02391840 */ _t5 = cpu->r[6] + 0x0000000Cu;
|
|
/* 02391840 */ cpu->r[9] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02391844 */ _t6 = cpu->r[8] + 0x0000000Cu;
|
|
/* 02391844 */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 02391848 */ _t7 = cpu->r[6] + 0x00000010u;
|
|
/* 02391848 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02391848 */ cpu->r[6] = _t7;
|
|
/* 0239184C */ _t8 = cpu->r[8] + 0x00000010u;
|
|
/* 0239184C */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 0239184C */ cpu->r[8] = _t8;
|
|
/* 02391850 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02391850 */ _t9 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02391850 */ _t10 = _t9 >> (0x00000002u & 31u);
|
|
/* 02391850 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02391850 */ if (_t11) goto L_02391830; else goto L_02391854;
|
|
L_02391854: ; // 0x2391854
|
|
/* 02391854 */ _t12 = cpu->r[3] + 0x00000000u;
|
|
/* 02391854 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02391858 */ _t13 = cpu->r[1] + 0x00000034u;
|
|
/* 02391858 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 0239185C */ _t14 = cpu->r[12] + 0x000000E4u;
|
|
/* 0239185C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 02391860 */ cpu->f[11] = cpu->f[11] * cpu->f[13];
|
|
/* 02391864 */ _t15 = cpu->r[1] + 0x00000034u;
|
|
/* 02391864 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[11]);
|
|
/* 02391868 */ _t16 = cpu->r[12] + 0x00000054u;
|
|
/* 02391868 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 0239186C */ _t17 = cpu->r[4] + 0x00000000u;
|
|
/* 0239186C */ rbrew_write_f32(cpu->mem, _t17, cpu->f[12]);
|
|
/* 02391870 */ _t18 = cpu->r[12] + 0x00000058u;
|
|
/* 02391870 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 02391874 */ _t19 = cpu->r[4] + 0x00000004u;
|
|
/* 02391874 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[0]);
|
|
/* 02391878 */ _t20 = cpu->r[12] + 0x0000005Cu;
|
|
/* 02391878 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 0239187C */ _t21 = cpu->r[4] + 0x00000008u;
|
|
/* 0239187C */ rbrew_write_f32(cpu->mem, _t21, cpu->f[10]);
|
|
/* 02391880 */ _t22 = cpu->r[3] + 0x00000028u;
|
|
/* 02391880 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 02391884 */ /* nop */
|
|
/* 02391888 */ cpu->f[9] = cpu->f[10] * cpu->f[12];
|
|
/* 0239188C */ /* nop */
|
|
/* 02391890 */ /* nop */
|
|
/* 02391894 */ _t23 = cpu->r[4] + 0x00000008u;
|
|
/* 02391894 */ rbrew_write_f32(cpu->mem, _t23, cpu->f[9]);
|
|
/* 02391898 */ _t24 = cpu->r[3] + 0x0000002Cu;
|
|
/* 02391898 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 0239189C */ /* nop */
|
|
/* 023918A0 */ /* nop */
|
|
/* 023918A4 */ /* nop */
|
|
/* 023918A8 */ _t25 = cpu->r[12] + 0x00000068u;
|
|
/* 023918A8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 023918AC */ cpu->f[9] = fma(cpu->f[0], cpu->f[12], cpu->f[9]);
|
|
/* 023918B0 */ _t26 = cpu->r[4] + 0x00000008u;
|
|
/* 023918B0 */ rbrew_write_f32(cpu->mem, _t26, cpu->f[9]);
|
|
/* 023918B4 */ _t27 = cpu->r[3] + 0x00000030u;
|
|
/* 023918B4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 023918B8 */ /* nop */
|
|
/* 023918BC */ /* nop */
|
|
/* 023918C0 */ /* nop */
|
|
/* 023918C4 */ _t28 = cpu->r[12] + 0x00000074u;
|
|
/* 023918C4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 023918C8 */ cpu->f[9] = fma(cpu->f[12], cpu->f[10], cpu->f[9]);
|
|
/* 023918CC */ _t29 = cpu->r[4] + 0x00000008u;
|
|
/* 023918CC */ rbrew_write_f32(cpu->mem, _t29, cpu->f[9]);
|
|
/* 023918D0 */ /* nop */
|
|
/* 023918D4 */ /* nop */
|
|
/* 023918D8 */ /* nop */
|
|
/* 023918DC */ _t30 = cpu->r[12] + 0x00000080u;
|
|
/* 023918DC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 023918E0 */ cpu->f[13] = cpu->f[9] + cpu->f[0];
|
|
/* 023918E4 */ _t31 = cpu->r[4] + 0x00000008u;
|
|
/* 023918E4 */ rbrew_write_f32(cpu->mem, _t31, cpu->f[13]);
|
|
/* 023918E8 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 023918EC */ return;
|
|
}
|
|
|
|
// fn_023918F0 @ 0x23918f0
|
|
void Gambit_fn_023918F0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_023918F0: ; // 0x23918f0
|
|
/* 023918F0 */ cpu->r[0] = cpu->lr;
|
|
/* 023918F4 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 023918F4 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 023918F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023918FC */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 023918FC */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 023918FC */ cpu->r[1] = _t1;
|
|
/* 02391900 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02391900 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02391900 */ if (_t3) goto L_02391904; else goto L_02391914;
|
|
L_02391904: ; // 0x2391904
|
|
/* 02391904 */ cpu->r[3] = 0x00000004u;
|
|
/* 02391908 */ Gambit_fn_02801A78(cpu);
|
|
/* 0239190C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02391910 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02391910 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02391910 */ if (_t5) goto L_0239191C; else goto L_02391914;
|
|
L_02391914: ; // 0x2391914
|
|
/* 02391914 */ cpu->r[0] = 0x00000000u;
|
|
/* 02391918 */ _t6 = cpu->r[3] + 0x00000000u;
|
|
/* 02391918 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
L_0239191C: ; // 0x239191c
|
|
/* 0239191C */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239191C */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02391920 */ cpu->lr = cpu->r[0];
|
|
/* 02391924 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 02391928 */ return;
|
|
}
|
|
|
|
// fn_023918FC @ 0x23918fc
|
|
void Gambit_fn_023918FC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_023918FC: ; // 0x23918fc
|
|
/* 023918FC */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 023918FC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 023918FC */ cpu->r[1] = _t0;
|
|
/* 02391900 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02391900 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02391900 */ if (_t2) goto L_02391904; else goto L_02391914;
|
|
L_02391904: ; // 0x2391904
|
|
/* 02391904 */ cpu->r[3] = 0x00000004u;
|
|
/* 02391908 */ Gambit_fn_02801A78(cpu);
|
|
/* 0239190C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02391910 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02391910 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02391910 */ if (_t4) goto L_0239191C; else goto L_02391914;
|
|
L_02391914: ; // 0x2391914
|
|
/* 02391914 */ cpu->r[0] = 0x00000000u;
|
|
/* 02391918 */ _t5 = cpu->r[3] + 0x00000000u;
|
|
/* 02391918 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
L_0239191C: ; // 0x239191c
|
|
/* 0239191C */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239191C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02391920 */ cpu->lr = cpu->r[0];
|
|
/* 02391924 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 02391928 */ return;
|
|
}
|
|
|
|
// fn_0239192C @ 0x239192c
|
|
void Gambit_fn_0239192C(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_0239192C: ; // 0x239192c
|
|
/* 0239192C */ cpu->r[0] = cpu->lr;
|
|
/* 02391930 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 02391930 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 02391934 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02391938 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 02391938 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 02391938 */ cpu->r[1] = _t1;
|
|
/* 0239193C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239193C */ _t3 = _t2 & 0x00000001u;
|
|
/* 0239193C */ if (_t3) goto L_02391940; else goto L_02391950;
|
|
L_02391940: ; // 0x2391940
|
|
/* 02391940 */ cpu->r[3] = 0x00000038u;
|
|
/* 02391944 */ Gambit_fn_02801A78(cpu);
|
|
/* 02391948 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239194C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239194C */ _t5 = _t4 & 0x00000001u;
|
|
/* 0239194C */ if (_t5) goto L_02391994; else goto L_02391950;
|
|
L_02391950: ; // 0x2391950
|
|
/* 02391950 */ cpu->r[6] = 0x101E0000u;
|
|
/* 02391954 */ cpu->r[0] = 0x00000000u;
|
|
/* 02391958 */ cpu->r[8] = 0x00000003u;
|
|
/* 0239195C */ cpu->r[6] = cpu->r[6] + 0xFFFF96F8u;
|
|
/* 02391960 */ _t6 = cpu->r[3] + 0x00000000u;
|
|
/* 02391960 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02391964 */ cpu->r[7] = cpu->r[3] + 0x00000004u;
|
|
/* 02391968 */ cpu->ctr = cpu->r[8];
|
|
/* 0239196C */ _t7 = cpu->r[3] + 0x00000004u;
|
|
/* 0239196C */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
L_02391970: ; // 0x2391970
|
|
/* 02391970 */ _t8 = cpu->r[6] + 0x00000004u;
|
|
/* 02391970 */ cpu->r[9] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02391974 */ _t9 = cpu->r[7] + 0x00000004u;
|
|
/* 02391974 */ rbrew_write32(cpu->mem, _t9, cpu->r[9]);
|
|
/* 02391978 */ _t10 = cpu->r[6] + 0x00000008u;
|
|
/* 02391978 */ cpu->r[10] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0239197C */ _t11 = cpu->r[7] + 0x00000008u;
|
|
/* 0239197C */ rbrew_write32(cpu->mem, _t11, cpu->r[10]);
|
|
/* 02391980 */ _t12 = cpu->r[6] + 0x0000000Cu;
|
|
/* 02391980 */ cpu->r[11] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02391984 */ _t13 = cpu->r[7] + 0x0000000Cu;
|
|
/* 02391984 */ rbrew_write32(cpu->mem, _t13, cpu->r[11]);
|
|
/* 02391988 */ _t14 = cpu->r[6] + 0x00000010u;
|
|
/* 02391988 */ cpu->r[12] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02391988 */ cpu->r[6] = _t14;
|
|
/* 0239198C */ _t15 = cpu->r[7] + 0x00000010u;
|
|
/* 0239198C */ rbrew_write32(cpu->mem, _t15, cpu->r[12]);
|
|
/* 0239198C */ cpu->r[7] = _t15;
|
|
/* 02391990 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02391990 */ _t16 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02391990 */ _t17 = _t16 >> (0x00000002u & 31u);
|
|
/* 02391990 */ _t18 = _t17 & 0x00000001u;
|
|
/* 02391990 */ if (_t18) goto L_02391970; else goto L_02391994;
|
|
L_02391994: ; // 0x2391994
|
|
/* 02391994 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02391994 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02391998 */ cpu->lr = cpu->r[0];
|
|
/* 0239199C */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 023919A0 */ return;
|
|
}
|
|
|
|
// fn_02391938 @ 0x2391938
|
|
void Gambit_fn_02391938(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_02391938: ; // 0x2391938
|
|
/* 02391938 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 02391938 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02391938 */ cpu->r[1] = _t0;
|
|
/* 0239193C */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239193C */ _t2 = _t1 & 0x00000001u;
|
|
/* 0239193C */ if (_t2) goto L_02391940; else goto L_02391950;
|
|
L_02391940: ; // 0x2391940
|
|
/* 02391940 */ cpu->r[3] = 0x00000038u;
|
|
/* 02391944 */ Gambit_fn_02801A78(cpu);
|
|
/* 02391948 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239194C */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239194C */ _t4 = _t3 & 0x00000001u;
|
|
/* 0239194C */ if (_t4) goto L_02391994; else goto L_02391950;
|
|
L_02391950: ; // 0x2391950
|
|
/* 02391950 */ cpu->r[6] = 0x101E0000u;
|
|
/* 02391954 */ cpu->r[0] = 0x00000000u;
|
|
/* 02391958 */ cpu->r[8] = 0x00000003u;
|
|
/* 0239195C */ cpu->r[6] = cpu->r[6] + 0xFFFF96F8u;
|
|
/* 02391960 */ _t5 = cpu->r[3] + 0x00000000u;
|
|
/* 02391960 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02391964 */ cpu->r[7] = cpu->r[3] + 0x00000004u;
|
|
/* 02391968 */ cpu->ctr = cpu->r[8];
|
|
/* 0239196C */ _t6 = cpu->r[3] + 0x00000004u;
|
|
/* 0239196C */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
L_02391970: ; // 0x2391970
|
|
/* 02391970 */ _t7 = cpu->r[6] + 0x00000004u;
|
|
/* 02391970 */ cpu->r[9] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02391974 */ _t8 = cpu->r[7] + 0x00000004u;
|
|
/* 02391974 */ rbrew_write32(cpu->mem, _t8, cpu->r[9]);
|
|
/* 02391978 */ _t9 = cpu->r[6] + 0x00000008u;
|
|
/* 02391978 */ cpu->r[10] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0239197C */ _t10 = cpu->r[7] + 0x00000008u;
|
|
/* 0239197C */ rbrew_write32(cpu->mem, _t10, cpu->r[10]);
|
|
/* 02391980 */ _t11 = cpu->r[6] + 0x0000000Cu;
|
|
/* 02391980 */ cpu->r[11] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02391984 */ _t12 = cpu->r[7] + 0x0000000Cu;
|
|
/* 02391984 */ rbrew_write32(cpu->mem, _t12, cpu->r[11]);
|
|
/* 02391988 */ _t13 = cpu->r[6] + 0x00000010u;
|
|
/* 02391988 */ cpu->r[12] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02391988 */ cpu->r[6] = _t13;
|
|
/* 0239198C */ _t14 = cpu->r[7] + 0x00000010u;
|
|
/* 0239198C */ rbrew_write32(cpu->mem, _t14, cpu->r[12]);
|
|
/* 0239198C */ cpu->r[7] = _t14;
|
|
/* 02391990 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02391990 */ _t15 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02391990 */ _t16 = _t15 >> (0x00000002u & 31u);
|
|
/* 02391990 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02391990 */ if (_t17) goto L_02391970; else goto L_02391994;
|
|
L_02391994: ; // 0x2391994
|
|
/* 02391994 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02391994 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02391998 */ cpu->lr = cpu->r[0];
|
|
/* 0239199C */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 023919A0 */ return;
|
|
}
|
|
|
|
// fn_023919A4 @ 0x23919a4
|
|
void Gambit_fn_023919A4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _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_023919A4: ; // 0x23919a4
|
|
/* 023919A4 */ cpu->r[0] = cpu->lr;
|
|
/* 023919A8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 023919A8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 023919A8 */ cpu->r[1] = _t0;
|
|
/* 023919AC */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 023919AC */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 023919B0 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023919B0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 023919B4 */ cpu->r[31] = cpu->r[4];
|
|
/* 023919B8 */ cpu->r[30] = cpu->r[3];
|
|
/* 023919BC */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 023919BC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 023919C0 */ _t4 = cpu->r[31] + 0x00000000u;
|
|
/* 023919C0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 023919C4 */ _t5 = cpu->r[30] + 0x00000000u;
|
|
/* 023919C4 */ rbrew_write32(cpu->mem, _t5, cpu->r[3]);
|
|
/* 023919C8 */ Gambit_fn_02043A7C(cpu);
|
|
/* 023919CC */ _t6 = cpu->r[30] + 0x00000004u;
|
|
/* 023919CC */ rbrew_write32(cpu->mem, _t6, cpu->r[3]);
|
|
/* 023919D0 */ _t7 = cpu->r[31] + 0x00000004u;
|
|
/* 023919D0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 023919D4 */ _t8 = cpu->r[30] + 0x00000008u;
|
|
/* 023919D4 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[0]);
|
|
/* 023919D8 */ _t9 = cpu->r[31] + 0x00000008u;
|
|
/* 023919D8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 023919DC */ _t10 = cpu->r[30] + 0x0000000Cu;
|
|
/* 023919DC */ rbrew_write_f32(cpu->mem, _t10, cpu->f[0]);
|
|
/* 023919E0 */ _t11 = cpu->r[31] + 0x0000000Cu;
|
|
/* 023919E0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 023919E4 */ _t12 = cpu->r[30] + 0x00000010u;
|
|
/* 023919E4 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[0]);
|
|
/* 023919E8 */ _t13 = cpu->r[31] + 0x00000010u;
|
|
/* 023919E8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 023919EC */ _t14 = cpu->r[30] + 0x00000014u;
|
|
/* 023919EC */ rbrew_write_f32(cpu->mem, _t14, cpu->f[0]);
|
|
/* 023919F0 */ _t15 = cpu->r[31] + 0x00000014u;
|
|
/* 023919F0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 023919F4 */ _t16 = cpu->r[30] + 0x00000018u;
|
|
/* 023919F4 */ rbrew_write_f32(cpu->mem, _t16, cpu->f[0]);
|
|
/* 023919F8 */ _t17 = cpu->r[31] + 0x00000018u;
|
|
/* 023919F8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 023919FC */ _t18 = cpu->r[30] + 0x0000001Cu;
|
|
/* 023919FC */ rbrew_write_f32(cpu->mem, _t18, cpu->f[0]);
|
|
/* 02391A00 */ _t19 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02391A00 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 02391A04 */ _t20 = cpu->r[30] + 0x00000020u;
|
|
/* 02391A04 */ rbrew_write_f32(cpu->mem, _t20, cpu->f[0]);
|
|
/* 02391A08 */ _t21 = cpu->r[31] + 0x00000020u;
|
|
/* 02391A08 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 02391A0C */ _t22 = cpu->r[30] + 0x00000024u;
|
|
/* 02391A0C */ rbrew_write_f32(cpu->mem, _t22, cpu->f[0]);
|
|
/* 02391A10 */ _t23 = cpu->r[31] + 0x00000024u;
|
|
/* 02391A10 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 02391A14 */ _t24 = cpu->r[30] + 0x00000028u;
|
|
/* 02391A14 */ rbrew_write_f32(cpu->mem, _t24, cpu->f[0]);
|
|
/* 02391A18 */ _t25 = cpu->r[31] + 0x00000028u;
|
|
/* 02391A18 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 02391A1C */ _t26 = cpu->r[30] + 0x0000002Cu;
|
|
/* 02391A1C */ rbrew_write_f32(cpu->mem, _t26, cpu->f[0]);
|
|
/* 02391A20 */ _t27 = cpu->r[31] + 0x0000002Cu;
|
|
/* 02391A20 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 02391A24 */ _t28 = cpu->r[30] + 0x00000030u;
|
|
/* 02391A24 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[0]);
|
|
/* 02391A28 */ _t29 = cpu->r[31] + 0x00000030u;
|
|
/* 02391A28 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 02391A2C */ _t30 = cpu->r[30] + 0x00000034u;
|
|
/* 02391A2C */ rbrew_write_f32(cpu->mem, _t30, cpu->f[0]);
|
|
/* 02391A30 */ _t31 = cpu->r[1] + 0x00000014u;
|
|
/* 02391A30 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 02391A34 */ _t32 = cpu->r[1] + 0x00000008u;
|
|
/* 02391A34 */ cpu->r[30] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02391A38 */ cpu->lr = cpu->r[0];
|
|
/* 02391A3C */ _t33 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02391A3C */ cpu->r[31] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02391A40 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02391A44 */ return;
|
|
}
|
|
|
|
// fn_023919A8 @ 0x23919a8
|
|
void Gambit_fn_023919A8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _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_023919A8: ; // 0x23919a8
|
|
/* 023919A8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 023919A8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 023919A8 */ cpu->r[1] = _t0;
|
|
/* 023919AC */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 023919AC */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 023919B0 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023919B0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 023919B4 */ cpu->r[31] = cpu->r[4];
|
|
/* 023919B8 */ cpu->r[30] = cpu->r[3];
|
|
/* 023919BC */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 023919BC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 023919C0 */ _t4 = cpu->r[31] + 0x00000000u;
|
|
/* 023919C0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 023919C4 */ _t5 = cpu->r[30] + 0x00000000u;
|
|
/* 023919C4 */ rbrew_write32(cpu->mem, _t5, cpu->r[3]);
|
|
/* 023919C8 */ Gambit_fn_02043A7C(cpu);
|
|
/* 023919CC */ _t6 = cpu->r[30] + 0x00000004u;
|
|
/* 023919CC */ rbrew_write32(cpu->mem, _t6, cpu->r[3]);
|
|
/* 023919D0 */ _t7 = cpu->r[31] + 0x00000004u;
|
|
/* 023919D0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 023919D4 */ _t8 = cpu->r[30] + 0x00000008u;
|
|
/* 023919D4 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[0]);
|
|
/* 023919D8 */ _t9 = cpu->r[31] + 0x00000008u;
|
|
/* 023919D8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 023919DC */ _t10 = cpu->r[30] + 0x0000000Cu;
|
|
/* 023919DC */ rbrew_write_f32(cpu->mem, _t10, cpu->f[0]);
|
|
/* 023919E0 */ _t11 = cpu->r[31] + 0x0000000Cu;
|
|
/* 023919E0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 023919E4 */ _t12 = cpu->r[30] + 0x00000010u;
|
|
/* 023919E4 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[0]);
|
|
/* 023919E8 */ _t13 = cpu->r[31] + 0x00000010u;
|
|
/* 023919E8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 023919EC */ _t14 = cpu->r[30] + 0x00000014u;
|
|
/* 023919EC */ rbrew_write_f32(cpu->mem, _t14, cpu->f[0]);
|
|
/* 023919F0 */ _t15 = cpu->r[31] + 0x00000014u;
|
|
/* 023919F0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 023919F4 */ _t16 = cpu->r[30] + 0x00000018u;
|
|
/* 023919F4 */ rbrew_write_f32(cpu->mem, _t16, cpu->f[0]);
|
|
/* 023919F8 */ _t17 = cpu->r[31] + 0x00000018u;
|
|
/* 023919F8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 023919FC */ _t18 = cpu->r[30] + 0x0000001Cu;
|
|
/* 023919FC */ rbrew_write_f32(cpu->mem, _t18, cpu->f[0]);
|
|
/* 02391A00 */ _t19 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02391A00 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 02391A04 */ _t20 = cpu->r[30] + 0x00000020u;
|
|
/* 02391A04 */ rbrew_write_f32(cpu->mem, _t20, cpu->f[0]);
|
|
/* 02391A08 */ _t21 = cpu->r[31] + 0x00000020u;
|
|
/* 02391A08 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 02391A0C */ _t22 = cpu->r[30] + 0x00000024u;
|
|
/* 02391A0C */ rbrew_write_f32(cpu->mem, _t22, cpu->f[0]);
|
|
/* 02391A10 */ _t23 = cpu->r[31] + 0x00000024u;
|
|
/* 02391A10 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 02391A14 */ _t24 = cpu->r[30] + 0x00000028u;
|
|
/* 02391A14 */ rbrew_write_f32(cpu->mem, _t24, cpu->f[0]);
|
|
/* 02391A18 */ _t25 = cpu->r[31] + 0x00000028u;
|
|
/* 02391A18 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 02391A1C */ _t26 = cpu->r[30] + 0x0000002Cu;
|
|
/* 02391A1C */ rbrew_write_f32(cpu->mem, _t26, cpu->f[0]);
|
|
/* 02391A20 */ _t27 = cpu->r[31] + 0x0000002Cu;
|
|
/* 02391A20 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 02391A24 */ _t28 = cpu->r[30] + 0x00000030u;
|
|
/* 02391A24 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[0]);
|
|
/* 02391A28 */ _t29 = cpu->r[31] + 0x00000030u;
|
|
/* 02391A28 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 02391A2C */ _t30 = cpu->r[30] + 0x00000034u;
|
|
/* 02391A2C */ rbrew_write_f32(cpu->mem, _t30, cpu->f[0]);
|
|
/* 02391A30 */ _t31 = cpu->r[1] + 0x00000014u;
|
|
/* 02391A30 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 02391A34 */ _t32 = cpu->r[1] + 0x00000008u;
|
|
/* 02391A34 */ cpu->r[30] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02391A38 */ cpu->lr = cpu->r[0];
|
|
/* 02391A3C */ _t33 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02391A3C */ cpu->r[31] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02391A40 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02391A44 */ return;
|
|
}
|
|
|
|
// fn_02391A48 @ 0x2391a48
|
|
void Gambit_fn_02391A48(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58;
|
|
|
|
L_02391A48: ; // 0x2391a48
|
|
/* 02391A48 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02391A48 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02391A4C */ _t1 = cpu->r[12] + 0x00000004u;
|
|
/* 02391A4C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 02391A50 */ _t2 = cpu->r[4] + 0x00000000u;
|
|
/* 02391A50 */ rbrew_write_f32(cpu->mem, _t2, cpu->f[12]);
|
|
/* 02391A54 */ _t3 = cpu->r[12] + 0x00000008u;
|
|
/* 02391A54 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 02391A58 */ _t4 = cpu->r[4] + 0x00000004u;
|
|
/* 02391A58 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[0]);
|
|
/* 02391A5C */ _t5 = cpu->r[12] + 0x0000000Cu;
|
|
/* 02391A5C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 02391A60 */ _t6 = cpu->r[4] + 0x00000008u;
|
|
/* 02391A60 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[9]);
|
|
/* 02391A64 */ _t7 = cpu->r[3] + 0x00000008u;
|
|
/* 02391A64 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 02391A68 */ /* nop */
|
|
/* 02391A6C */ cpu->f[9] = cpu->f[9] * cpu->f[11];
|
|
/* 02391A70 */ /* nop */
|
|
/* 02391A74 */ /* nop */
|
|
/* 02391A78 */ _t8 = cpu->r[4] + 0x00000008u;
|
|
/* 02391A78 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[9]);
|
|
/* 02391A7C */ _t9 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02391A7C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 02391A80 */ /* nop */
|
|
/* 02391A84 */ /* nop */
|
|
/* 02391A88 */ /* nop */
|
|
/* 02391A8C */ _t10 = cpu->r[12] + 0x00000018u;
|
|
/* 02391A8C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 02391A90 */ cpu->f[9] = fma(cpu->f[13], cpu->f[0], cpu->f[9]);
|
|
/* 02391A94 */ _t11 = cpu->r[4] + 0x00000008u;
|
|
/* 02391A94 */ rbrew_write_f32(cpu->mem, _t11, cpu->f[9]);
|
|
/* 02391A98 */ _t12 = cpu->r[3] + 0x00000010u;
|
|
/* 02391A98 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 02391A9C */ /* nop */
|
|
/* 02391AA0 */ /* nop */
|
|
/* 02391AA4 */ /* nop */
|
|
/* 02391AA8 */ _t13 = cpu->r[12] + 0x00000024u;
|
|
/* 02391AA8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 02391AAC */ cpu->f[9] = fma(cpu->f[12], cpu->f[0], cpu->f[9]);
|
|
/* 02391AB0 */ _t14 = cpu->r[4] + 0x00000008u;
|
|
/* 02391AB0 */ rbrew_write_f32(cpu->mem, _t14, cpu->f[9]);
|
|
/* 02391AB4 */ _t15 = cpu->r[12] + 0x00000004u;
|
|
/* 02391AB4 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 02391AB8 */ _t16 = cpu->r[4] + 0x0000000Cu;
|
|
/* 02391AB8 */ rbrew_write_f32(cpu->mem, _t16, cpu->f[9]);
|
|
/* 02391ABC */ _t17 = cpu->r[12] + 0x00000008u;
|
|
/* 02391ABC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 02391AC0 */ _t18 = cpu->r[4] + 0x00000010u;
|
|
/* 02391AC0 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[10]);
|
|
/* 02391AC4 */ _t19 = cpu->r[12] + 0x0000000Cu;
|
|
/* 02391AC4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 02391AC8 */ _t20 = cpu->r[4] + 0x00000014u;
|
|
/* 02391AC8 */ rbrew_write_f32(cpu->mem, _t20, cpu->f[11]);
|
|
/* 02391ACC */ _t21 = cpu->r[3] + 0x00000014u;
|
|
/* 02391ACC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 02391AD0 */ /* nop */
|
|
/* 02391AD4 */ cpu->f[8] = cpu->f[11] * cpu->f[10];
|
|
/* 02391AD8 */ /* nop */
|
|
/* 02391ADC */ /* nop */
|
|
/* 02391AE0 */ _t22 = cpu->r[4] + 0x00000014u;
|
|
/* 02391AE0 */ rbrew_write_f32(cpu->mem, _t22, cpu->f[8]);
|
|
/* 02391AE4 */ _t23 = cpu->r[3] + 0x00000018u;
|
|
/* 02391AE4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 02391AE8 */ /* nop */
|
|
/* 02391AEC */ /* nop */
|
|
/* 02391AF0 */ /* nop */
|
|
/* 02391AF4 */ _t24 = cpu->r[12] + 0x00000018u;
|
|
/* 02391AF4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 02391AF8 */ cpu->f[8] = fma(cpu->f[13], cpu->f[10], cpu->f[8]);
|
|
/* 02391AFC */ _t25 = cpu->r[4] + 0x00000014u;
|
|
/* 02391AFC */ rbrew_write_f32(cpu->mem, _t25, cpu->f[8]);
|
|
/* 02391B00 */ _t26 = cpu->r[3] + 0x0000001Cu;
|
|
/* 02391B00 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 02391B04 */ /* nop */
|
|
/* 02391B08 */ /* nop */
|
|
/* 02391B0C */ /* nop */
|
|
/* 02391B10 */ _t27 = cpu->r[12] + 0x00000024u;
|
|
/* 02391B10 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 02391B14 */ cpu->f[8] = fma(cpu->f[10], cpu->f[13], cpu->f[8]);
|
|
/* 02391B18 */ _t28 = cpu->r[4] + 0x00000014u;
|
|
/* 02391B18 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[8]);
|
|
/* 02391B1C */ _t29 = cpu->r[12] + 0x00000004u;
|
|
/* 02391B1C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 02391B20 */ _t30 = cpu->r[4] + 0x00000018u;
|
|
/* 02391B20 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[0]);
|
|
/* 02391B24 */ _t31 = cpu->r[12] + 0x00000008u;
|
|
/* 02391B24 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 02391B28 */ _t32 = cpu->r[4] + 0x0000001Cu;
|
|
/* 02391B28 */ rbrew_write_f32(cpu->mem, _t32, cpu->f[0]);
|
|
/* 02391B2C */ _t33 = cpu->r[12] + 0x0000000Cu;
|
|
/* 02391B2C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 02391B30 */ _t34 = cpu->r[4] + 0x00000020u;
|
|
/* 02391B30 */ rbrew_write_f32(cpu->mem, _t34, cpu->f[9]);
|
|
/* 02391B34 */ _t35 = cpu->r[3] + 0x00000020u;
|
|
/* 02391B34 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 02391B38 */ /* nop */
|
|
/* 02391B3C */ cpu->f[8] = cpu->f[9] * cpu->f[13];
|
|
/* 02391B40 */ /* nop */
|
|
/* 02391B44 */ /* nop */
|
|
/* 02391B48 */ _t36 = cpu->r[4] + 0x00000020u;
|
|
/* 02391B48 */ rbrew_write_f32(cpu->mem, _t36, cpu->f[8]);
|
|
/* 02391B4C */ _t37 = cpu->r[3] + 0x00000024u;
|
|
/* 02391B4C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 02391B50 */ /* nop */
|
|
/* 02391B54 */ /* nop */
|
|
/* 02391B58 */ /* nop */
|
|
/* 02391B5C */ _t38 = cpu->r[12] + 0x00000018u;
|
|
/* 02391B5C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 02391B60 */ cpu->f[8] = fma(cpu->f[9], cpu->f[0], cpu->f[8]);
|
|
/* 02391B64 */ _t39 = cpu->r[4] + 0x00000020u;
|
|
/* 02391B64 */ rbrew_write_f32(cpu->mem, _t39, cpu->f[8]);
|
|
/* 02391B68 */ _t40 = cpu->r[3] + 0x00000028u;
|
|
/* 02391B68 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 02391B6C */ /* nop */
|
|
/* 02391B70 */ /* nop */
|
|
/* 02391B74 */ /* nop */
|
|
/* 02391B78 */ _t41 = cpu->r[12] + 0x00000024u;
|
|
/* 02391B78 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 02391B7C */ cpu->f[8] = fma(cpu->f[10], cpu->f[0], cpu->f[8]);
|
|
/* 02391B80 */ _t42 = cpu->r[4] + 0x00000020u;
|
|
/* 02391B80 */ rbrew_write_f32(cpu->mem, _t42, cpu->f[8]);
|
|
/* 02391B84 */ _t43 = cpu->r[12] + 0x00000004u;
|
|
/* 02391B84 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t43);
|
|
/* 02391B88 */ _t44 = cpu->r[4] + 0x00000024u;
|
|
/* 02391B88 */ rbrew_write_f32(cpu->mem, _t44, cpu->f[9]);
|
|
/* 02391B8C */ _t45 = cpu->r[12] + 0x00000008u;
|
|
/* 02391B8C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t45);
|
|
/* 02391B90 */ _t46 = cpu->r[4] + 0x00000028u;
|
|
/* 02391B90 */ rbrew_write_f32(cpu->mem, _t46, cpu->f[10]);
|
|
/* 02391B94 */ _t47 = cpu->r[12] + 0x0000000Cu;
|
|
/* 02391B94 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 02391B98 */ _t48 = cpu->r[4] + 0x0000002Cu;
|
|
/* 02391B98 */ rbrew_write_f32(cpu->mem, _t48, cpu->f[11]);
|
|
/* 02391B9C */ _t49 = cpu->r[3] + 0x0000002Cu;
|
|
/* 02391B9C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t49);
|
|
/* 02391BA0 */ /* nop */
|
|
/* 02391BA4 */ cpu->f[0] = cpu->f[11] * cpu->f[12];
|
|
/* 02391BA8 */ /* nop */
|
|
/* 02391BAC */ /* nop */
|
|
/* 02391BB0 */ _t50 = cpu->r[4] + 0x0000002Cu;
|
|
/* 02391BB0 */ rbrew_write_f32(cpu->mem, _t50, cpu->f[0]);
|
|
/* 02391BB4 */ _t51 = cpu->r[3] + 0x00000030u;
|
|
/* 02391BB4 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t51);
|
|
/* 02391BB8 */ /* nop */
|
|
/* 02391BBC */ /* nop */
|
|
/* 02391BC0 */ /* nop */
|
|
/* 02391BC4 */ _t52 = cpu->r[12] + 0x00000018u;
|
|
/* 02391BC4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 02391BC8 */ cpu->f[0] = fma(cpu->f[9], cpu->f[13], cpu->f[0]);
|
|
/* 02391BCC */ _t53 = cpu->r[4] + 0x0000002Cu;
|
|
/* 02391BCC */ rbrew_write_f32(cpu->mem, _t53, cpu->f[0]);
|
|
/* 02391BD0 */ _t54 = cpu->r[3] + 0x00000034u;
|
|
/* 02391BD0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 02391BD4 */ /* nop */
|
|
/* 02391BD8 */ /* nop */
|
|
/* 02391BDC */ /* nop */
|
|
/* 02391BE0 */ _t55 = cpu->r[12] + 0x00000024u;
|
|
/* 02391BE0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t55);
|
|
/* 02391BE4 */ cpu->f[0] = fma(cpu->f[12], cpu->f[11], cpu->f[0]);
|
|
/* 02391BE8 */ _t56 = cpu->r[4] + 0x0000002Cu;
|
|
/* 02391BE8 */ rbrew_write_f32(cpu->mem, _t56, cpu->f[0]);
|
|
/* 02391BEC */ /* nop */
|
|
/* 02391BF0 */ /* nop */
|
|
/* 02391BF4 */ /* nop */
|
|
/* 02391BF8 */ _t57 = cpu->r[12] + 0x00000030u;
|
|
/* 02391BF8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t57);
|
|
/* 02391BFC */ cpu->f[10] = cpu->f[0] + cpu->f[12];
|
|
/* 02391C00 */ _t58 = cpu->r[4] + 0x0000002Cu;
|
|
/* 02391C00 */ rbrew_write_f32(cpu->mem, _t58, cpu->f[10]);
|
|
/* 02391C04 */ return;
|
|
}
|
|
|
|
// fn_02391C08 @ 0x2391c08
|
|
void Gambit_fn_02391C08(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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;
|
|
|
|
L_02391C08: ; // 0x2391c08
|
|
/* 02391C08 */ cpu->r[0] = cpu->lr;
|
|
/* 02391C0C */ _t0 = cpu->r[1] + 0xFFFFFFA8u;
|
|
/* 02391C0C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02391C0C */ cpu->r[1] = _t0;
|
|
/* 02391C10 */ _t1 = cpu->r[1] + 0x00000048u;
|
|
/* 02391C10 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 02391C14 */ /* nop */
|
|
/* 02391C18 */ _t2 = cpu->r[1] + 0x00000050u;
|
|
/* 02391C18 */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 02391C1C */ _t3 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02391C1C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02391C20 */ /* nop */
|
|
/* 02391C24 */ cpu->r[30] = cpu->r[3];
|
|
/* 02391C24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02391C28 */ cpu->r[27] = cpu->r[4];
|
|
/* 02391C2C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02391C2C */ _t5 = _t4 & 0x00000001u;
|
|
/* 02391C2C */ if (_t5) goto L_02391C30; else goto L_02391C40;
|
|
L_02391C30: ; // 0x2391c30
|
|
/* 02391C30 */ cpu->r[3] = 0x00000040u;
|
|
/* 02391C34 */ Gambit_fn_02801A78(cpu);
|
|
/* 02391C38 */ cpu->r[30] = cpu->r[3];
|
|
/* 02391C38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02391C3C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02391C3C */ _t7 = _t6 & 0x00000001u;
|
|
/* 02391C3C */ if (_t7) goto L_02391F08; else goto L_02391C40;
|
|
L_02391C40: ; // 0x2391c40
|
|
/* 02391C40 */ cpu->r[6] = 0xFFFFFFFFu;
|
|
/* 02391C44 */ _t8 = cpu->r[30] + 0x00000000u;
|
|
/* 02391C44 */ rbrew_write16(cpu->mem, _t8, (uint16_t)cpu->r[6]);
|
|
/* 02391C48 */ _t9 = cpu->r[30] + 0x00000002u;
|
|
/* 02391C48 */ rbrew_write16(cpu->mem, _t9, (uint16_t)cpu->r[6]);
|
|
/* 02391C4C */ _t10 = cpu->r[27] + 0x00000004u;
|
|
/* 02391C4C */ cpu->r[8] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02391C50 */ _t11 = cpu->r[30] + 0x00000004u;
|
|
/* 02391C50 */ rbrew_write32(cpu->mem, _t11, cpu->r[8]);
|
|
/* 02391C54 */ _t12 = cpu->r[27] + 0x00000000u;
|
|
/* 02391C54 */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02391C58 */ cpu->r[31] = 0x00000000u;
|
|
/* 02391C5C */ cpu->r[3] = cpu->r[30] + 0x0000000Cu;
|
|
/* 02391C5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02391C60 */ _t13 = cpu->r[30] + 0x00000008u;
|
|
/* 02391C60 */ rbrew_write32(cpu->mem, _t13, cpu->r[9]);
|
|
/* 02391C64 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02391C64 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02391C64 */ if (_t15) goto L_02391C68; else goto L_02391C78;
|
|
L_02391C68: ; // 0x2391c68
|
|
/* 02391C68 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02391C6C */ Gambit_fn_02801A78(cpu);
|
|
/* 02391C70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02391C74 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02391C74 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02391C74 */ if (_t17) goto L_02391C9C; else goto L_02391C78;
|
|
L_02391C78: ; // 0x2391c78
|
|
/* 02391C78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02391C7C */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02391C7C */ _t19 = _t18 & 0x00000001u;
|
|
/* 02391C7C */ if (_t19) goto L_02391C80; else goto L_02391C90;
|
|
L_02391C80: ; // 0x2391c80
|
|
/* 02391C80 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02391C84 */ Gambit_fn_02801A78(cpu);
|
|
/* 02391C88 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02391C8C */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02391C8C */ _t21 = _t20 & 0x00000001u;
|
|
/* 02391C8C */ if (_t21) goto L_02391C9C; else goto L_02391C90;
|
|
L_02391C90: ; // 0x2391c90
|
|
/* 02391C90 */ _t22 = cpu->r[3] + 0x00000004u;
|
|
/* 02391C90 */ rbrew_write32(cpu->mem, _t22, cpu->r[31]);
|
|
/* 02391C94 */ _t23 = cpu->r[3] + 0x00000000u;
|
|
/* 02391C94 */ rbrew_write32(cpu->mem, _t23, cpu->r[31]);
|
|
/* 02391C98 */ _t24 = cpu->r[3] + 0x00000008u;
|
|
/* 02391C98 */ rbrew_write32(cpu->mem, _t24, cpu->r[31]);
|
|
L_02391C9C: ; // 0x2391c9c
|
|
/* 02391C9C */ cpu->r[5] = 0x10080000u;
|
|
/* 02391CA0 */ cpu->r[3] = cpu->r[30] + 0x00000018u;
|
|
/* 02391CA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02391CA4 */ _t25 = cpu->r[5] + 0x000064D8u;
|
|
/* 02391CA4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 02391CA8 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02391CA8 */ _t27 = _t26 & 0x00000001u;
|
|
/* 02391CA8 */ if (_t27) goto L_02391CAC; else goto L_02391CBC;
|
|
L_02391CAC: ; // 0x2391cac
|
|
/* 02391CAC */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02391CB0 */ Gambit_fn_02801A78(cpu);
|
|
/* 02391CB4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02391CB8 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02391CB8 */ _t29 = _t28 & 0x00000001u;
|
|
/* 02391CB8 */ if (_t29) goto L_02391CE0; else goto L_02391CBC;
|
|
L_02391CBC: ; // 0x2391cbc
|
|
/* 02391CBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02391CC0 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02391CC0 */ _t31 = _t30 & 0x00000001u;
|
|
/* 02391CC0 */ if (_t31) goto L_02391CC4; else goto L_02391CD4;
|
|
L_02391CC4: ; // 0x2391cc4
|
|
/* 02391CC4 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02391CC8 */ Gambit_fn_02801A78(cpu);
|
|
/* 02391CCC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02391CD0 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02391CD0 */ _t33 = _t32 & 0x00000001u;
|
|
/* 02391CD0 */ if (_t33) goto L_02391CE0; else goto L_02391CD4;
|
|
L_02391CD4: ; // 0x2391cd4
|
|
/* 02391CD4 */ _t34 = cpu->r[3] + 0x00000004u;
|
|
/* 02391CD4 */ rbrew_write_f32(cpu->mem, _t34, cpu->f[31]);
|
|
/* 02391CD8 */ _t35 = cpu->r[3] + 0x00000000u;
|
|
/* 02391CD8 */ rbrew_write_f32(cpu->mem, _t35, cpu->f[31]);
|
|
/* 02391CDC */ _t36 = cpu->r[3] + 0x00000008u;
|
|
/* 02391CDC */ rbrew_write_f32(cpu->mem, _t36, cpu->f[31]);
|
|
L_02391CE0: ; // 0x2391ce0
|
|
/* 02391CE0 */ cpu->r[3] = cpu->r[30] + 0x00000024u;
|
|
/* 02391CE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02391CE4 */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02391CE4 */ _t38 = _t37 & 0x00000001u;
|
|
/* 02391CE4 */ if (_t38) goto L_02391CE8; else goto L_02391CF8;
|
|
L_02391CE8: ; // 0x2391ce8
|
|
/* 02391CE8 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02391CEC */ Gambit_fn_02801A78(cpu);
|
|
/* 02391CF0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02391CF4 */ _t39 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02391CF4 */ _t40 = _t39 & 0x00000001u;
|
|
/* 02391CF4 */ if (_t40) goto L_02391D1C; else goto L_02391CF8;
|
|
L_02391CF8: ; // 0x2391cf8
|
|
/* 02391CF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02391CFC */ _t41 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02391CFC */ _t42 = _t41 & 0x00000001u;
|
|
/* 02391CFC */ if (_t42) goto L_02391D00; else goto L_02391D10;
|
|
L_02391D00: ; // 0x2391d00
|
|
/* 02391D00 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02391D04 */ Gambit_fn_02801A78(cpu);
|
|
/* 02391D08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02391D0C */ _t43 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02391D0C */ _t44 = _t43 & 0x00000001u;
|
|
/* 02391D0C */ if (_t44) goto L_02391D1C; else goto L_02391D10;
|
|
L_02391D10: ; // 0x2391d10
|
|
/* 02391D10 */ _t45 = cpu->r[3] + 0x00000004u;
|
|
/* 02391D10 */ rbrew_write_f32(cpu->mem, _t45, cpu->f[31]);
|
|
/* 02391D14 */ _t46 = cpu->r[3] + 0x00000000u;
|
|
/* 02391D14 */ rbrew_write_f32(cpu->mem, _t46, cpu->f[31]);
|
|
/* 02391D18 */ _t47 = cpu->r[3] + 0x00000008u;
|
|
/* 02391D18 */ rbrew_write_f32(cpu->mem, _t47, cpu->f[31]);
|
|
L_02391D1C: ; // 0x2391d1c
|
|
/* 02391D1C */ cpu->r[3] = cpu->r[30] + 0x00000030u;
|
|
/* 02391D1C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02391D20 */ _t48 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02391D20 */ _t49 = _t48 & 0x00000001u;
|
|
/* 02391D20 */ if (_t49) goto L_02391D24; else goto L_02391D34;
|
|
L_02391D24: ; // 0x2391d24
|
|
/* 02391D24 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02391D28 */ Gambit_fn_02801A78(cpu);
|
|
/* 02391D2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02391D30 */ _t50 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02391D30 */ _t51 = _t50 & 0x00000001u;
|
|
/* 02391D30 */ if (_t51) goto L_02391D58; else goto L_02391D34;
|
|
L_02391D34: ; // 0x2391d34
|
|
/* 02391D34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02391D38 */ _t52 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02391D38 */ _t53 = _t52 & 0x00000001u;
|
|
/* 02391D38 */ if (_t53) goto L_02391D3C; else goto L_02391D4C;
|
|
L_02391D3C: ; // 0x2391d3c
|
|
/* 02391D3C */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02391D40 */ Gambit_fn_02801A78(cpu);
|
|
/* 02391D44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02391D48 */ _t54 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02391D48 */ _t55 = _t54 & 0x00000001u;
|
|
/* 02391D48 */ if (_t55) goto L_02391D58; else goto L_02391D4C;
|
|
L_02391D4C: ; // 0x2391d4c
|
|
/* 02391D4C */ _t56 = cpu->r[3] + 0x00000004u;
|
|
/* 02391D4C */ rbrew_write_f32(cpu->mem, _t56, cpu->f[31]);
|
|
/* 02391D50 */ _t57 = cpu->r[3] + 0x00000000u;
|
|
/* 02391D50 */ rbrew_write_f32(cpu->mem, _t57, cpu->f[31]);
|
|
/* 02391D54 */ _t58 = cpu->r[3] + 0x00000008u;
|
|
/* 02391D54 */ rbrew_write_f32(cpu->mem, _t58, cpu->f[31]);
|
|
L_02391D58: ; // 0x2391d58
|
|
/* 02391D58 */ cpu->r[28] = 0x10080000u;
|
|
/* 02391D5C */ _t59 = cpu->r[30] + 0x0000003Cu;
|
|
/* 02391D5C */ rbrew_write8(cpu->mem, _t59, (uint8_t)cpu->r[31]);
|
|
/* 02391D60 */ _t60 = cpu->r[27] + 0x00000008u;
|
|
/* 02391D60 */ cpu->r[0] = rbrew_read32(cpu->mem, _t60);
|
|
/* 02391D64 */ cpu->r[28] = cpu->r[28] + 0x00006448u;
|
|
/* 02391D68 */ _t61 = cpu->r[1] + 0x00000014u;
|
|
/* 02391D68 */ rbrew_write32(cpu->mem, _t61, cpu->r[28]);
|
|
/* 02391D6C */ _t62 = cpu->r[1] + 0x00000010u;
|
|
/* 02391D6C */ rbrew_write32(cpu->mem, _t62, cpu->r[0]);
|
|
/* 02391D70 */ _t63 = cpu->r[30] + 0x00000004u;
|
|
/* 02391D70 */ cpu->r[3] = rbrew_read32(cpu->mem, _t63);
|
|
/* 02391D74 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 02391D78 */ Gambit_fn_029807A8(cpu);
|
|
/* 02391D7C */ _t64 = cpu->r[1] + 0x00000018u;
|
|
/* 02391D7C */ rbrew_write32(cpu->mem, _t64, cpu->r[3]);
|
|
/* 02391D80 */ _t65 = cpu->r[30] + 0x00000000u;
|
|
/* 02391D80 */ rbrew_write32(cpu->mem, _t65, cpu->r[3]);
|
|
/* 02391D84 */ _t66 = cpu->r[27] + 0x00000000u;
|
|
/* 02391D84 */ cpu->r[12] = rbrew_read32(cpu->mem, _t66);
|
|
/* 02391D88 */ _t67 = cpu->r[12] + 0x000000A4u;
|
|
/* 02391D88 */ cpu->r[24] = rbrew_read32(cpu->mem, _t67);
|
|
/* 02391D8C */ cpu->r[23] = 0x00000000u;
|
|
/* 02391D90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 02391D94 */ cpu->r[29] = cpu->r[23];
|
|
/* 02391D98 */ _t68 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02391D98 */ _t69 = _t68 & 0x00000001u;
|
|
/* 02391D98 */ if (_t69) goto L_02391D9C; else goto L_02391F08;
|
|
L_02391D9C: ; // 0x2391d9c
|
|
/* 02391D9C */ cpu->r[31] = 0x10110000u;
|
|
/* 02391DA0 */ cpu->r[22] = 0x00080000u;
|
|
/* 02391DA4 */ cpu->r[26] = 0x10080000u;
|
|
/* 02391DA8 */ _t70 = cpu->r[31] + 0x00007399u;
|
|
/* 02391DA8 */ cpu->r[31] = rbrew_read8(cpu->mem, _t70);
|
|
/* 02391DAC */ cpu->r[22] = cpu->r[22] + 0x00000001u;
|
|
/* 02391DB0 */ cpu->r[26] = cpu->r[26] + 0x00006520u;
|
|
L_02391DB4: ; // 0x2391db4
|
|
/* 02391DB4 */ _t71 = cpu->r[12] + 0x000000B4u;
|
|
/* 02391DB4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t71);
|
|
/* 02391DB8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[10]);
|
|
/* 02391DBC */ _t72 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02391DBC */ _t73 = _t72 & 0x00000001u;
|
|
/* 02391DBC */ if (_t73) goto L_02391DC0; else goto L_02391E3C;
|
|
L_02391DC0: ; // 0x2391dc0
|
|
/* 02391DC0 */ _t74 = cpu->r[12] + 0x000000B0u;
|
|
/* 02391DC0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t74);
|
|
/* 02391DC4 */ _t75 = cpu->r[12] + 0x000000ACu;
|
|
/* 02391DC4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t75);
|
|
/* 02391DC8 */ cpu->r[0] = cpu->r[11] + cpu->r[29];
|
|
/* 02391DCC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], cpu->r[8]);
|
|
/* 02391DD0 */ _t76 = cpu->r[12] + 0x000000A8u;
|
|
/* 02391DD0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t76);
|
|
/* 02391DD4 */ _t77 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02391DD4 */ _t78 = _t77 & 0x00000001u;
|
|
/* 02391DD4 */ if (_t78) goto L_02391DDC; else goto L_02391DD8;
|
|
L_02391DD8: ; // 0x2391dd8
|
|
/* 02391DD8 */ cpu->r[0] = cpu->r[0] - cpu->r[8];
|
|
L_02391DDC: ; // 0x2391ddc
|
|
/* 02391DDC */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x00000118u);
|
|
/* 02391DE0 */ _t79 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02391DE0 */ rbrew_write32(cpu->mem, _t79, cpu->r[28]);
|
|
/* 02391DE4 */ cpu->r[25] = cpu->r[4] + cpu->r[0];
|
|
/* 02391DE8 */ _t80 = cpu->r[1] + 0x00000008u;
|
|
/* 02391DE8 */ rbrew_write32(cpu->mem, _t80, cpu->r[26]);
|
|
/* 02391DEC */ _t81 = cpu->r[25] + 0x00000004u;
|
|
/* 02391DEC */ cpu->r[5] = rbrew_read32(cpu->mem, _t81);
|
|
/* 02391DF0 */ _t82 = cpu->r[5] + 0x00000014u;
|
|
/* 02391DF0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t82);
|
|
/* 02391DF4 */ cpu->ctr = cpu->r[6];
|
|
/* 02391DF8 */ cpu->r[3] = cpu->r[25];
|
|
/* 02391DFC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02391E00 */ _t83 = cpu->r[25] + 0x00000004u;
|
|
/* 02391E00 */ cpu->r[11] = rbrew_read32(cpu->mem, _t83);
|
|
/* 02391E04 */ _t84 = cpu->r[11] + 0x00000014u;
|
|
/* 02391E04 */ cpu->r[4] = rbrew_read32(cpu->mem, _t84);
|
|
/* 02391E08 */ cpu->ctr = cpu->r[4];
|
|
/* 02391E0C */ cpu->r[3] = cpu->r[25];
|
|
/* 02391E10 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02391E14 */ _t85 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02391E14 */ cpu->r[6] = rbrew_read32(cpu->mem, _t85);
|
|
/* 02391E18 */ _t86 = cpu->r[6] + 0x00000014u;
|
|
/* 02391E18 */ cpu->r[0] = rbrew_read32(cpu->mem, _t86);
|
|
/* 02391E1C */ cpu->ctr = cpu->r[0];
|
|
/* 02391E20 */ _t87 = cpu->r[25] + 0x00000000u;
|
|
/* 02391E20 */ cpu->r[21] = rbrew_read32(cpu->mem, _t87);
|
|
/* 02391E24 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02391E28 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02391E2C */ _t88 = cpu->r[1] + 0x00000008u;
|
|
/* 02391E2C */ cpu->r[0] = rbrew_read32(cpu->mem, _t88);
|
|
/* 02391E30 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[21], cpu->r[0]);
|
|
/* 02391E34 */ _t89 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02391E34 */ _t90 = _t89 & 0x00000001u;
|
|
/* 02391E34 */ if (_t90) goto L_02391ED4; else goto L_02391E38;
|
|
L_02391E38: ; // 0x2391e38
|
|
/* 02391E38 */ goto L_02391E94;
|
|
L_02391E3C: ; // 0x2391e3c
|
|
/* 02391E3C */ _t91 = cpu->r[12] + 0x000000A8u;
|
|
/* 02391E3C */ cpu->r[25] = rbrew_read32(cpu->mem, _t91);
|
|
/* 02391E40 */ _t92 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02391E40 */ rbrew_write32(cpu->mem, _t92, cpu->r[28]);
|
|
/* 02391E44 */ _t93 = cpu->r[1] + 0x00000008u;
|
|
/* 02391E44 */ rbrew_write32(cpu->mem, _t93, cpu->r[26]);
|
|
/* 02391E48 */ _t94 = cpu->r[25] + 0x00000004u;
|
|
/* 02391E48 */ cpu->r[5] = rbrew_read32(cpu->mem, _t94);
|
|
/* 02391E4C */ _t95 = cpu->r[5] + 0x00000014u;
|
|
/* 02391E4C */ cpu->r[6] = rbrew_read32(cpu->mem, _t95);
|
|
/* 02391E50 */ cpu->ctr = cpu->r[6];
|
|
/* 02391E54 */ cpu->r[3] = cpu->r[25];
|
|
/* 02391E58 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02391E5C */ _t96 = cpu->r[25] + 0x00000004u;
|
|
/* 02391E5C */ cpu->r[11] = rbrew_read32(cpu->mem, _t96);
|
|
/* 02391E60 */ _t97 = cpu->r[11] + 0x00000014u;
|
|
/* 02391E60 */ cpu->r[4] = rbrew_read32(cpu->mem, _t97);
|
|
/* 02391E64 */ cpu->ctr = cpu->r[4];
|
|
/* 02391E68 */ cpu->r[3] = cpu->r[25];
|
|
/* 02391E6C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02391E70 */ _t98 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02391E70 */ cpu->r[6] = rbrew_read32(cpu->mem, _t98);
|
|
/* 02391E74 */ _t99 = cpu->r[6] + 0x00000014u;
|
|
/* 02391E74 */ cpu->r[0] = rbrew_read32(cpu->mem, _t99);
|
|
/* 02391E78 */ cpu->ctr = cpu->r[0];
|
|
/* 02391E7C */ _t100 = cpu->r[25] + 0x00000000u;
|
|
/* 02391E7C */ cpu->r[21] = rbrew_read32(cpu->mem, _t100);
|
|
/* 02391E80 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02391E84 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02391E88 */ _t101 = cpu->r[1] + 0x00000008u;
|
|
/* 02391E88 */ cpu->r[0] = rbrew_read32(cpu->mem, _t101);
|
|
/* 02391E8C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[21], cpu->r[0]);
|
|
/* 02391E90 */ _t102 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02391E90 */ _t103 = _t102 & 0x00000001u;
|
|
/* 02391E90 */ if (_t103) goto L_02391ED4; else goto L_02391E94;
|
|
L_02391E94: ; // 0x2391e94
|
|
/* 02391E94 */ _t104 = cpu->r[25] + 0x00000000u;
|
|
/* 02391E94 */ cpu->r[9] = rbrew_read32(cpu->mem, _t104);
|
|
/* 02391E98 */ _t105 = cpu->r[1] + 0x00000008u;
|
|
/* 02391E98 */ cpu->r[8] = rbrew_read32(cpu->mem, _t105);
|
|
/* 02391E9C */ cpu->r[9] = cpu->r[9] + 0xFFFFFFFFu;
|
|
/* 02391EA0 */ cpu->ctr = cpu->r[22];
|
|
/* 02391EA4 */ cpu->r[8] = cpu->r[8] + 0xFFFFFFFFu;
|
|
L_02391EA8: ; // 0x2391ea8
|
|
/* 02391EA8 */ _t106 = cpu->r[9] + 0x00000001u;
|
|
/* 02391EA8 */ cpu->r[10] = rbrew_read8(cpu->mem, _t106);
|
|
/* 02391EA8 */ cpu->r[9] = _t106;
|
|
/* 02391EAC */ _t107 = cpu->r[8] + 0x00000001u;
|
|
/* 02391EAC */ cpu->r[0] = rbrew_read8(cpu->mem, _t107);
|
|
/* 02391EAC */ cpu->r[8] = _t107;
|
|
/* 02391EB0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[0]);
|
|
/* 02391EB4 */ _t108 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02391EB4 */ _t109 = _t108 & 0x00000001u;
|
|
/* 02391EB4 */ if (_t109) goto L_02391EB8; else goto L_02391ED8;
|
|
L_02391EB8: ; // 0x2391eb8
|
|
/* 02391EB8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[31]);
|
|
/* 02391EBC */ _t110 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02391EBC */ _t111 = _t110 & 0x00000001u;
|
|
/* 02391EBC */ if (_t111) goto L_02391ED4; else goto L_02391EC0;
|
|
L_02391EC0: ; // 0x2391ec0
|
|
/* 02391EC0 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02391EC0 */ _t112 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02391EC0 */ _t113 = _t112 >> (0x00000002u & 31u);
|
|
/* 02391EC0 */ _t114 = _t113 & 0x00000001u;
|
|
/* 02391EC0 */ if (_t114) goto L_02391EA8; else goto L_02391EC4;
|
|
L_02391EC4: ; // 0x2391ec4
|
|
/* 02391EC4 */ cpu->r[24] = cpu->r[24] + 0xFFFFFFFFu;
|
|
/* 02391EC4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 02391EC8 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 02391ECC */ _t115 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02391ECC */ _t116 = _t115 & 0x00000001u;
|
|
/* 02391ECC */ if (_t116) goto L_02391ED0; else goto L_02391EE4;
|
|
L_02391ED0: ; // 0x2391ed0
|
|
/* 02391ED0 */ goto L_02391EEC;
|
|
L_02391ED4: ; // 0x2391ed4
|
|
/* 02391ED4 */ cpu->r[23] = cpu->r[23] + 0x00000001u;
|
|
L_02391ED8: ; // 0x2391ed8
|
|
/* 02391ED8 */ cpu->r[24] = cpu->r[24] + 0xFFFFFFFFu;
|
|
/* 02391ED8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 02391EDC */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 02391EE0 */ _t117 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02391EE0 */ _t118 = _t117 & 0x00000001u;
|
|
/* 02391EE0 */ if (_t118) goto L_02391EEC; else goto L_02391EE4;
|
|
L_02391EE4: ; // 0x2391ee4
|
|
/* 02391EE4 */ _t119 = cpu->r[27] + 0x00000000u;
|
|
/* 02391EE4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t119);
|
|
/* 02391EE8 */ goto L_02391DB4;
|
|
L_02391EEC: ; // 0x2391eec
|
|
/* 02391EEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], 0x00000000u);
|
|
/* 02391EF0 */ _t120 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02391EF0 */ _t121 = _t120 & 0x00000001u;
|
|
/* 02391EF0 */ if (_t121) goto L_02391F08; else goto L_02391EF4;
|
|
L_02391EF4: ; // 0x2391ef4
|
|
/* 02391EF4 */ cpu->r[6] = 0x00000004u;
|
|
/* 02391EF8 */ cpu->r[5] = 0x00000000u;
|
|
/* 02391EFC */ cpu->r[4] = cpu->r[23];
|
|
/* 02391F00 */ cpu->r[3] = cpu->r[30] + 0x0000000Cu;
|
|
/* 02391F04 */ Gambit_fn_028023CC(cpu);
|
|
L_02391F08: ; // 0x2391f08
|
|
/* 02391F08 */ cpu->r[3] = cpu->r[30];
|
|
/* 02391F0C */ /* nop */
|
|
/* 02391F10 */ _t122 = cpu->r[1] + 0x00000050u;
|
|
/* 02391F10 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t122);
|
|
/* 02391F14 */ _t123 = cpu->r[1] + 0x00000048u;
|
|
/* 02391F14 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t123);
|
|
/* 02391F18 */ _t124 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02391F18 */ _t125 = _t124 & 0x00000001u;
|
|
/* 02391F18 */ if (_t125) goto L_02391F1C; // else: addr-0 trap, fall-through
|
|
L_02391F1C: ; // 0x2391f1c
|
|
/* 02391F1C */ _t126 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02391F1C */ cpu->r[0] = rbrew_read32(cpu->mem, _t126);
|
|
/* 02391F20 */ cpu->lr = cpu->r[0];
|
|
/* 02391F24 */ cpu->r[1] = cpu->r[1] + 0x00000058u;
|
|
/* 02391F28 */ return;
|
|
}
|
|
|
|
// fn_02391C0C @ 0x2391c0c
|
|
void Gambit_fn_02391C0C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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;
|
|
|
|
L_02391C0C: ; // 0x2391c0c
|
|
/* 02391C0C */ _t0 = cpu->r[1] + 0xFFFFFFA8u;
|
|
/* 02391C0C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02391C0C */ cpu->r[1] = _t0;
|
|
/* 02391C10 */ _t1 = cpu->r[1] + 0x00000048u;
|
|
/* 02391C10 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 02391C14 */ /* nop */
|
|
/* 02391C18 */ _t2 = cpu->r[1] + 0x00000050u;
|
|
/* 02391C18 */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 02391C1C */ _t3 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02391C1C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02391C20 */ /* nop */
|
|
/* 02391C24 */ cpu->r[30] = cpu->r[3];
|
|
/* 02391C24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02391C28 */ cpu->r[27] = cpu->r[4];
|
|
/* 02391C2C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02391C2C */ _t5 = _t4 & 0x00000001u;
|
|
/* 02391C2C */ if (_t5) goto L_02391C30; else goto L_02391C40;
|
|
L_02391C30: ; // 0x2391c30
|
|
/* 02391C30 */ cpu->r[3] = 0x00000040u;
|
|
/* 02391C34 */ Gambit_fn_02801A78(cpu);
|
|
/* 02391C38 */ cpu->r[30] = cpu->r[3];
|
|
/* 02391C38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02391C3C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02391C3C */ _t7 = _t6 & 0x00000001u;
|
|
/* 02391C3C */ if (_t7) goto L_02391F08; else goto L_02391C40;
|
|
L_02391C40: ; // 0x2391c40
|
|
/* 02391C40 */ cpu->r[6] = 0xFFFFFFFFu;
|
|
/* 02391C44 */ _t8 = cpu->r[30] + 0x00000000u;
|
|
/* 02391C44 */ rbrew_write16(cpu->mem, _t8, (uint16_t)cpu->r[6]);
|
|
/* 02391C48 */ _t9 = cpu->r[30] + 0x00000002u;
|
|
/* 02391C48 */ rbrew_write16(cpu->mem, _t9, (uint16_t)cpu->r[6]);
|
|
/* 02391C4C */ _t10 = cpu->r[27] + 0x00000004u;
|
|
/* 02391C4C */ cpu->r[8] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02391C50 */ _t11 = cpu->r[30] + 0x00000004u;
|
|
/* 02391C50 */ rbrew_write32(cpu->mem, _t11, cpu->r[8]);
|
|
/* 02391C54 */ _t12 = cpu->r[27] + 0x00000000u;
|
|
/* 02391C54 */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02391C58 */ cpu->r[31] = 0x00000000u;
|
|
/* 02391C5C */ cpu->r[3] = cpu->r[30] + 0x0000000Cu;
|
|
/* 02391C5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02391C60 */ _t13 = cpu->r[30] + 0x00000008u;
|
|
/* 02391C60 */ rbrew_write32(cpu->mem, _t13, cpu->r[9]);
|
|
/* 02391C64 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02391C64 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02391C64 */ if (_t15) goto L_02391C68; else goto L_02391C78;
|
|
L_02391C68: ; // 0x2391c68
|
|
/* 02391C68 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02391C6C */ Gambit_fn_02801A78(cpu);
|
|
/* 02391C70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02391C74 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02391C74 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02391C74 */ if (_t17) goto L_02391C9C; else goto L_02391C78;
|
|
L_02391C78: ; // 0x2391c78
|
|
/* 02391C78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02391C7C */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02391C7C */ _t19 = _t18 & 0x00000001u;
|
|
/* 02391C7C */ if (_t19) goto L_02391C80; else goto L_02391C90;
|
|
L_02391C80: ; // 0x2391c80
|
|
/* 02391C80 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02391C84 */ Gambit_fn_02801A78(cpu);
|
|
/* 02391C88 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02391C8C */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02391C8C */ _t21 = _t20 & 0x00000001u;
|
|
/* 02391C8C */ if (_t21) goto L_02391C9C; else goto L_02391C90;
|
|
L_02391C90: ; // 0x2391c90
|
|
/* 02391C90 */ _t22 = cpu->r[3] + 0x00000004u;
|
|
/* 02391C90 */ rbrew_write32(cpu->mem, _t22, cpu->r[31]);
|
|
/* 02391C94 */ _t23 = cpu->r[3] + 0x00000000u;
|
|
/* 02391C94 */ rbrew_write32(cpu->mem, _t23, cpu->r[31]);
|
|
/* 02391C98 */ _t24 = cpu->r[3] + 0x00000008u;
|
|
/* 02391C98 */ rbrew_write32(cpu->mem, _t24, cpu->r[31]);
|
|
L_02391C9C: ; // 0x2391c9c
|
|
/* 02391C9C */ cpu->r[5] = 0x10080000u;
|
|
/* 02391CA0 */ cpu->r[3] = cpu->r[30] + 0x00000018u;
|
|
/* 02391CA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02391CA4 */ _t25 = cpu->r[5] + 0x000064D8u;
|
|
/* 02391CA4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 02391CA8 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02391CA8 */ _t27 = _t26 & 0x00000001u;
|
|
/* 02391CA8 */ if (_t27) goto L_02391CAC; else goto L_02391CBC;
|
|
L_02391CAC: ; // 0x2391cac
|
|
/* 02391CAC */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02391CB0 */ Gambit_fn_02801A78(cpu);
|
|
/* 02391CB4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02391CB8 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02391CB8 */ _t29 = _t28 & 0x00000001u;
|
|
/* 02391CB8 */ if (_t29) goto L_02391CE0; else goto L_02391CBC;
|
|
L_02391CBC: ; // 0x2391cbc
|
|
/* 02391CBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02391CC0 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02391CC0 */ _t31 = _t30 & 0x00000001u;
|
|
/* 02391CC0 */ if (_t31) goto L_02391CC4; else goto L_02391CD4;
|
|
L_02391CC4: ; // 0x2391cc4
|
|
/* 02391CC4 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02391CC8 */ Gambit_fn_02801A78(cpu);
|
|
/* 02391CCC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02391CD0 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02391CD0 */ _t33 = _t32 & 0x00000001u;
|
|
/* 02391CD0 */ if (_t33) goto L_02391CE0; else goto L_02391CD4;
|
|
L_02391CD4: ; // 0x2391cd4
|
|
/* 02391CD4 */ _t34 = cpu->r[3] + 0x00000004u;
|
|
/* 02391CD4 */ rbrew_write_f32(cpu->mem, _t34, cpu->f[31]);
|
|
/* 02391CD8 */ _t35 = cpu->r[3] + 0x00000000u;
|
|
/* 02391CD8 */ rbrew_write_f32(cpu->mem, _t35, cpu->f[31]);
|
|
/* 02391CDC */ _t36 = cpu->r[3] + 0x00000008u;
|
|
/* 02391CDC */ rbrew_write_f32(cpu->mem, _t36, cpu->f[31]);
|
|
L_02391CE0: ; // 0x2391ce0
|
|
/* 02391CE0 */ cpu->r[3] = cpu->r[30] + 0x00000024u;
|
|
/* 02391CE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02391CE4 */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02391CE4 */ _t38 = _t37 & 0x00000001u;
|
|
/* 02391CE4 */ if (_t38) goto L_02391CE8; else goto L_02391CF8;
|
|
L_02391CE8: ; // 0x2391ce8
|
|
/* 02391CE8 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02391CEC */ Gambit_fn_02801A78(cpu);
|
|
/* 02391CF0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02391CF4 */ _t39 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02391CF4 */ _t40 = _t39 & 0x00000001u;
|
|
/* 02391CF4 */ if (_t40) goto L_02391D1C; else goto L_02391CF8;
|
|
L_02391CF8: ; // 0x2391cf8
|
|
/* 02391CF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02391CFC */ _t41 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02391CFC */ _t42 = _t41 & 0x00000001u;
|
|
/* 02391CFC */ if (_t42) goto L_02391D00; else goto L_02391D10;
|
|
L_02391D00: ; // 0x2391d00
|
|
/* 02391D00 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02391D04 */ Gambit_fn_02801A78(cpu);
|
|
/* 02391D08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02391D0C */ _t43 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02391D0C */ _t44 = _t43 & 0x00000001u;
|
|
/* 02391D0C */ if (_t44) goto L_02391D1C; else goto L_02391D10;
|
|
L_02391D10: ; // 0x2391d10
|
|
/* 02391D10 */ _t45 = cpu->r[3] + 0x00000004u;
|
|
/* 02391D10 */ rbrew_write_f32(cpu->mem, _t45, cpu->f[31]);
|
|
/* 02391D14 */ _t46 = cpu->r[3] + 0x00000000u;
|
|
/* 02391D14 */ rbrew_write_f32(cpu->mem, _t46, cpu->f[31]);
|
|
/* 02391D18 */ _t47 = cpu->r[3] + 0x00000008u;
|
|
/* 02391D18 */ rbrew_write_f32(cpu->mem, _t47, cpu->f[31]);
|
|
L_02391D1C: ; // 0x2391d1c
|
|
/* 02391D1C */ cpu->r[3] = cpu->r[30] + 0x00000030u;
|
|
/* 02391D1C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02391D20 */ _t48 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02391D20 */ _t49 = _t48 & 0x00000001u;
|
|
/* 02391D20 */ if (_t49) goto L_02391D24; else goto L_02391D34;
|
|
L_02391D24: ; // 0x2391d24
|
|
/* 02391D24 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02391D28 */ Gambit_fn_02801A78(cpu);
|
|
/* 02391D2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02391D30 */ _t50 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02391D30 */ _t51 = _t50 & 0x00000001u;
|
|
/* 02391D30 */ if (_t51) goto L_02391D58; else goto L_02391D34;
|
|
L_02391D34: ; // 0x2391d34
|
|
/* 02391D34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02391D38 */ _t52 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02391D38 */ _t53 = _t52 & 0x00000001u;
|
|
/* 02391D38 */ if (_t53) goto L_02391D3C; else goto L_02391D4C;
|
|
L_02391D3C: ; // 0x2391d3c
|
|
/* 02391D3C */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02391D40 */ Gambit_fn_02801A78(cpu);
|
|
/* 02391D44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02391D48 */ _t54 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02391D48 */ _t55 = _t54 & 0x00000001u;
|
|
/* 02391D48 */ if (_t55) goto L_02391D58; else goto L_02391D4C;
|
|
L_02391D4C: ; // 0x2391d4c
|
|
/* 02391D4C */ _t56 = cpu->r[3] + 0x00000004u;
|
|
/* 02391D4C */ rbrew_write_f32(cpu->mem, _t56, cpu->f[31]);
|
|
/* 02391D50 */ _t57 = cpu->r[3] + 0x00000000u;
|
|
/* 02391D50 */ rbrew_write_f32(cpu->mem, _t57, cpu->f[31]);
|
|
/* 02391D54 */ _t58 = cpu->r[3] + 0x00000008u;
|
|
/* 02391D54 */ rbrew_write_f32(cpu->mem, _t58, cpu->f[31]);
|
|
L_02391D58: ; // 0x2391d58
|
|
/* 02391D58 */ cpu->r[28] = 0x10080000u;
|
|
/* 02391D5C */ _t59 = cpu->r[30] + 0x0000003Cu;
|
|
/* 02391D5C */ rbrew_write8(cpu->mem, _t59, (uint8_t)cpu->r[31]);
|
|
/* 02391D60 */ _t60 = cpu->r[27] + 0x00000008u;
|
|
/* 02391D60 */ cpu->r[0] = rbrew_read32(cpu->mem, _t60);
|
|
/* 02391D64 */ cpu->r[28] = cpu->r[28] + 0x00006448u;
|
|
/* 02391D68 */ _t61 = cpu->r[1] + 0x00000014u;
|
|
/* 02391D68 */ rbrew_write32(cpu->mem, _t61, cpu->r[28]);
|
|
/* 02391D6C */ _t62 = cpu->r[1] + 0x00000010u;
|
|
/* 02391D6C */ rbrew_write32(cpu->mem, _t62, cpu->r[0]);
|
|
/* 02391D70 */ _t63 = cpu->r[30] + 0x00000004u;
|
|
/* 02391D70 */ cpu->r[3] = rbrew_read32(cpu->mem, _t63);
|
|
/* 02391D74 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 02391D78 */ Gambit_fn_029807A8(cpu);
|
|
/* 02391D7C */ _t64 = cpu->r[1] + 0x00000018u;
|
|
/* 02391D7C */ rbrew_write32(cpu->mem, _t64, cpu->r[3]);
|
|
/* 02391D80 */ _t65 = cpu->r[30] + 0x00000000u;
|
|
/* 02391D80 */ rbrew_write32(cpu->mem, _t65, cpu->r[3]);
|
|
/* 02391D84 */ _t66 = cpu->r[27] + 0x00000000u;
|
|
/* 02391D84 */ cpu->r[12] = rbrew_read32(cpu->mem, _t66);
|
|
/* 02391D88 */ _t67 = cpu->r[12] + 0x000000A4u;
|
|
/* 02391D88 */ cpu->r[24] = rbrew_read32(cpu->mem, _t67);
|
|
/* 02391D8C */ cpu->r[23] = 0x00000000u;
|
|
/* 02391D90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 02391D94 */ cpu->r[29] = cpu->r[23];
|
|
/* 02391D98 */ _t68 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02391D98 */ _t69 = _t68 & 0x00000001u;
|
|
/* 02391D98 */ if (_t69) goto L_02391D9C; else goto L_02391F08;
|
|
L_02391D9C: ; // 0x2391d9c
|
|
/* 02391D9C */ cpu->r[31] = 0x10110000u;
|
|
/* 02391DA0 */ cpu->r[22] = 0x00080000u;
|
|
/* 02391DA4 */ cpu->r[26] = 0x10080000u;
|
|
/* 02391DA8 */ _t70 = cpu->r[31] + 0x00007399u;
|
|
/* 02391DA8 */ cpu->r[31] = rbrew_read8(cpu->mem, _t70);
|
|
/* 02391DAC */ cpu->r[22] = cpu->r[22] + 0x00000001u;
|
|
/* 02391DB0 */ cpu->r[26] = cpu->r[26] + 0x00006520u;
|
|
L_02391DB4: ; // 0x2391db4
|
|
/* 02391DB4 */ _t71 = cpu->r[12] + 0x000000B4u;
|
|
/* 02391DB4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t71);
|
|
/* 02391DB8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[10]);
|
|
/* 02391DBC */ _t72 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02391DBC */ _t73 = _t72 & 0x00000001u;
|
|
/* 02391DBC */ if (_t73) goto L_02391DC0; else goto L_02391E3C;
|
|
L_02391DC0: ; // 0x2391dc0
|
|
/* 02391DC0 */ _t74 = cpu->r[12] + 0x000000B0u;
|
|
/* 02391DC0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t74);
|
|
/* 02391DC4 */ _t75 = cpu->r[12] + 0x000000ACu;
|
|
/* 02391DC4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t75);
|
|
/* 02391DC8 */ cpu->r[0] = cpu->r[11] + cpu->r[29];
|
|
/* 02391DCC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], cpu->r[8]);
|
|
/* 02391DD0 */ _t76 = cpu->r[12] + 0x000000A8u;
|
|
/* 02391DD0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t76);
|
|
/* 02391DD4 */ _t77 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02391DD4 */ _t78 = _t77 & 0x00000001u;
|
|
/* 02391DD4 */ if (_t78) goto L_02391DDC; else goto L_02391DD8;
|
|
L_02391DD8: ; // 0x2391dd8
|
|
/* 02391DD8 */ cpu->r[0] = cpu->r[0] - cpu->r[8];
|
|
L_02391DDC: ; // 0x2391ddc
|
|
/* 02391DDC */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x00000118u);
|
|
/* 02391DE0 */ _t79 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02391DE0 */ rbrew_write32(cpu->mem, _t79, cpu->r[28]);
|
|
/* 02391DE4 */ cpu->r[25] = cpu->r[4] + cpu->r[0];
|
|
/* 02391DE8 */ _t80 = cpu->r[1] + 0x00000008u;
|
|
/* 02391DE8 */ rbrew_write32(cpu->mem, _t80, cpu->r[26]);
|
|
/* 02391DEC */ _t81 = cpu->r[25] + 0x00000004u;
|
|
/* 02391DEC */ cpu->r[5] = rbrew_read32(cpu->mem, _t81);
|
|
/* 02391DF0 */ _t82 = cpu->r[5] + 0x00000014u;
|
|
/* 02391DF0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t82);
|
|
/* 02391DF4 */ cpu->ctr = cpu->r[6];
|
|
/* 02391DF8 */ cpu->r[3] = cpu->r[25];
|
|
/* 02391DFC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02391E00 */ _t83 = cpu->r[25] + 0x00000004u;
|
|
/* 02391E00 */ cpu->r[11] = rbrew_read32(cpu->mem, _t83);
|
|
/* 02391E04 */ _t84 = cpu->r[11] + 0x00000014u;
|
|
/* 02391E04 */ cpu->r[4] = rbrew_read32(cpu->mem, _t84);
|
|
/* 02391E08 */ cpu->ctr = cpu->r[4];
|
|
/* 02391E0C */ cpu->r[3] = cpu->r[25];
|
|
/* 02391E10 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02391E14 */ _t85 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02391E14 */ cpu->r[6] = rbrew_read32(cpu->mem, _t85);
|
|
/* 02391E18 */ _t86 = cpu->r[6] + 0x00000014u;
|
|
/* 02391E18 */ cpu->r[0] = rbrew_read32(cpu->mem, _t86);
|
|
/* 02391E1C */ cpu->ctr = cpu->r[0];
|
|
/* 02391E20 */ _t87 = cpu->r[25] + 0x00000000u;
|
|
/* 02391E20 */ cpu->r[21] = rbrew_read32(cpu->mem, _t87);
|
|
/* 02391E24 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02391E28 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02391E2C */ _t88 = cpu->r[1] + 0x00000008u;
|
|
/* 02391E2C */ cpu->r[0] = rbrew_read32(cpu->mem, _t88);
|
|
/* 02391E30 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[21], cpu->r[0]);
|
|
/* 02391E34 */ _t89 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02391E34 */ _t90 = _t89 & 0x00000001u;
|
|
/* 02391E34 */ if (_t90) goto L_02391ED4; else goto L_02391E38;
|
|
L_02391E38: ; // 0x2391e38
|
|
/* 02391E38 */ goto L_02391E94;
|
|
L_02391E3C: ; // 0x2391e3c
|
|
/* 02391E3C */ _t91 = cpu->r[12] + 0x000000A8u;
|
|
/* 02391E3C */ cpu->r[25] = rbrew_read32(cpu->mem, _t91);
|
|
/* 02391E40 */ _t92 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02391E40 */ rbrew_write32(cpu->mem, _t92, cpu->r[28]);
|
|
/* 02391E44 */ _t93 = cpu->r[1] + 0x00000008u;
|
|
/* 02391E44 */ rbrew_write32(cpu->mem, _t93, cpu->r[26]);
|
|
/* 02391E48 */ _t94 = cpu->r[25] + 0x00000004u;
|
|
/* 02391E48 */ cpu->r[5] = rbrew_read32(cpu->mem, _t94);
|
|
/* 02391E4C */ _t95 = cpu->r[5] + 0x00000014u;
|
|
/* 02391E4C */ cpu->r[6] = rbrew_read32(cpu->mem, _t95);
|
|
/* 02391E50 */ cpu->ctr = cpu->r[6];
|
|
/* 02391E54 */ cpu->r[3] = cpu->r[25];
|
|
/* 02391E58 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02391E5C */ _t96 = cpu->r[25] + 0x00000004u;
|
|
/* 02391E5C */ cpu->r[11] = rbrew_read32(cpu->mem, _t96);
|
|
/* 02391E60 */ _t97 = cpu->r[11] + 0x00000014u;
|
|
/* 02391E60 */ cpu->r[4] = rbrew_read32(cpu->mem, _t97);
|
|
/* 02391E64 */ cpu->ctr = cpu->r[4];
|
|
/* 02391E68 */ cpu->r[3] = cpu->r[25];
|
|
/* 02391E6C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02391E70 */ _t98 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02391E70 */ cpu->r[6] = rbrew_read32(cpu->mem, _t98);
|
|
/* 02391E74 */ _t99 = cpu->r[6] + 0x00000014u;
|
|
/* 02391E74 */ cpu->r[0] = rbrew_read32(cpu->mem, _t99);
|
|
/* 02391E78 */ cpu->ctr = cpu->r[0];
|
|
/* 02391E7C */ _t100 = cpu->r[25] + 0x00000000u;
|
|
/* 02391E7C */ cpu->r[21] = rbrew_read32(cpu->mem, _t100);
|
|
/* 02391E80 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02391E84 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02391E88 */ _t101 = cpu->r[1] + 0x00000008u;
|
|
/* 02391E88 */ cpu->r[0] = rbrew_read32(cpu->mem, _t101);
|
|
/* 02391E8C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[21], cpu->r[0]);
|
|
/* 02391E90 */ _t102 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02391E90 */ _t103 = _t102 & 0x00000001u;
|
|
/* 02391E90 */ if (_t103) goto L_02391ED4; else goto L_02391E94;
|
|
L_02391E94: ; // 0x2391e94
|
|
/* 02391E94 */ _t104 = cpu->r[25] + 0x00000000u;
|
|
/* 02391E94 */ cpu->r[9] = rbrew_read32(cpu->mem, _t104);
|
|
/* 02391E98 */ _t105 = cpu->r[1] + 0x00000008u;
|
|
/* 02391E98 */ cpu->r[8] = rbrew_read32(cpu->mem, _t105);
|
|
/* 02391E9C */ cpu->r[9] = cpu->r[9] + 0xFFFFFFFFu;
|
|
/* 02391EA0 */ cpu->ctr = cpu->r[22];
|
|
/* 02391EA4 */ cpu->r[8] = cpu->r[8] + 0xFFFFFFFFu;
|
|
L_02391EA8: ; // 0x2391ea8
|
|
/* 02391EA8 */ _t106 = cpu->r[9] + 0x00000001u;
|
|
/* 02391EA8 */ cpu->r[10] = rbrew_read8(cpu->mem, _t106);
|
|
/* 02391EA8 */ cpu->r[9] = _t106;
|
|
/* 02391EAC */ _t107 = cpu->r[8] + 0x00000001u;
|
|
/* 02391EAC */ cpu->r[0] = rbrew_read8(cpu->mem, _t107);
|
|
/* 02391EAC */ cpu->r[8] = _t107;
|
|
/* 02391EB0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[0]);
|
|
/* 02391EB4 */ _t108 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02391EB4 */ _t109 = _t108 & 0x00000001u;
|
|
/* 02391EB4 */ if (_t109) goto L_02391EB8; else goto L_02391ED8;
|
|
L_02391EB8: ; // 0x2391eb8
|
|
/* 02391EB8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[31]);
|
|
/* 02391EBC */ _t110 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02391EBC */ _t111 = _t110 & 0x00000001u;
|
|
/* 02391EBC */ if (_t111) goto L_02391ED4; else goto L_02391EC0;
|
|
L_02391EC0: ; // 0x2391ec0
|
|
/* 02391EC0 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02391EC0 */ _t112 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02391EC0 */ _t113 = _t112 >> (0x00000002u & 31u);
|
|
/* 02391EC0 */ _t114 = _t113 & 0x00000001u;
|
|
/* 02391EC0 */ if (_t114) goto L_02391EA8; else goto L_02391EC4;
|
|
L_02391EC4: ; // 0x2391ec4
|
|
/* 02391EC4 */ cpu->r[24] = cpu->r[24] + 0xFFFFFFFFu;
|
|
/* 02391EC4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 02391EC8 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 02391ECC */ _t115 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02391ECC */ _t116 = _t115 & 0x00000001u;
|
|
/* 02391ECC */ if (_t116) goto L_02391ED0; else goto L_02391EE4;
|
|
L_02391ED0: ; // 0x2391ed0
|
|
/* 02391ED0 */ goto L_02391EEC;
|
|
L_02391ED4: ; // 0x2391ed4
|
|
/* 02391ED4 */ cpu->r[23] = cpu->r[23] + 0x00000001u;
|
|
L_02391ED8: ; // 0x2391ed8
|
|
/* 02391ED8 */ cpu->r[24] = cpu->r[24] + 0xFFFFFFFFu;
|
|
/* 02391ED8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 02391EDC */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 02391EE0 */ _t117 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02391EE0 */ _t118 = _t117 & 0x00000001u;
|
|
/* 02391EE0 */ if (_t118) goto L_02391EEC; else goto L_02391EE4;
|
|
L_02391EE4: ; // 0x2391ee4
|
|
/* 02391EE4 */ _t119 = cpu->r[27] + 0x00000000u;
|
|
/* 02391EE4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t119);
|
|
/* 02391EE8 */ goto L_02391DB4;
|
|
L_02391EEC: ; // 0x2391eec
|
|
/* 02391EEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], 0x00000000u);
|
|
/* 02391EF0 */ _t120 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02391EF0 */ _t121 = _t120 & 0x00000001u;
|
|
/* 02391EF0 */ if (_t121) goto L_02391F08; else goto L_02391EF4;
|
|
L_02391EF4: ; // 0x2391ef4
|
|
/* 02391EF4 */ cpu->r[6] = 0x00000004u;
|
|
/* 02391EF8 */ cpu->r[5] = 0x00000000u;
|
|
/* 02391EFC */ cpu->r[4] = cpu->r[23];
|
|
/* 02391F00 */ cpu->r[3] = cpu->r[30] + 0x0000000Cu;
|
|
/* 02391F04 */ Gambit_fn_028023CC(cpu);
|
|
L_02391F08: ; // 0x2391f08
|
|
/* 02391F08 */ cpu->r[3] = cpu->r[30];
|
|
/* 02391F0C */ /* nop */
|
|
/* 02391F10 */ _t122 = cpu->r[1] + 0x00000050u;
|
|
/* 02391F10 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t122);
|
|
/* 02391F14 */ _t123 = cpu->r[1] + 0x00000048u;
|
|
/* 02391F14 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t123);
|
|
/* 02391F18 */ _t124 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02391F18 */ _t125 = _t124 & 0x00000001u;
|
|
/* 02391F18 */ if (_t125) goto L_02391F1C; // else: addr-0 trap, fall-through
|
|
L_02391F1C: ; // 0x2391f1c
|
|
/* 02391F1C */ _t126 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02391F1C */ cpu->r[0] = rbrew_read32(cpu->mem, _t126);
|
|
/* 02391F20 */ cpu->lr = cpu->r[0];
|
|
/* 02391F24 */ cpu->r[1] = cpu->r[1] + 0x00000058u;
|
|
/* 02391F28 */ return;
|
|
}
|
|
|
|
// fn_02391F2C @ 0x2391f2c
|
|
void Gambit_fn_02391F2C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_02391F2C: ; // 0x2391f2c
|
|
/* 02391F2C */ cpu->r[0] = cpu->lr;
|
|
/* 02391F30 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02391F30 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02391F30 */ cpu->r[1] = _t0;
|
|
/* 02391F34 */ cpu->r[12] = 0x10080000u;
|
|
/* 02391F38 */ cpu->r[12] = cpu->r[12] + 0x00006448u;
|
|
/* 02391F3C */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 02391F3C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02391F40 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02391F40 */ rbrew_write32(cpu->mem, _t2, cpu->r[12]);
|
|
/* 02391F44 */ cpu->r[31] = cpu->r[3];
|
|
/* 02391F48 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02391F48 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02391F4C */ cpu->r[0] = 0x10080000u;
|
|
/* 02391F50 */ _t4 = cpu->r[31] + 0x00000000u;
|
|
/* 02391F50 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02391F54 */ cpu->r[0] = cpu->r[0] + 0x00006530u;
|
|
/* 02391F58 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02391F5C */ _t5 = cpu->r[1] + 0x00000008u;
|
|
/* 02391F5C */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02391F60 */ Gambit_fn_020F08E8(cpu);
|
|
/* 02391F64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02391F68 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02391F68 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02391F68 */ if (_t7) goto L_02391F6C; else goto L_02391F84;
|
|
L_02391F6C: ; // 0x2391f6c
|
|
/* 02391F6C */ _t8 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02391F6C */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02391F70 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 02391F70 */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02391F74 */ cpu->lr = cpu->r[0];
|
|
/* 02391F78 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02391F7C */ cpu->r[3] = 0x00000000u;
|
|
/* 02391F80 */ return;
|
|
L_02391F84: ; // 0x2391f84
|
|
/* 02391F84 */ cpu->r[3] = 0x00000000u;
|
|
/* 02391F88 */ cpu->r[4] = cpu->r[31];
|
|
/* 02391F8C */ Gambit_fn_02391C08(cpu);
|
|
/* 02391F90 */ _t10 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02391F90 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02391F94 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 02391F94 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02391F98 */ cpu->lr = cpu->r[0];
|
|
/* 02391F9C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02391FA0 */ return;
|
|
}
|
|
|
|
// fn_02391F30 @ 0x2391f30
|
|
void Gambit_fn_02391F30(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_02391F30: ; // 0x2391f30
|
|
/* 02391F30 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02391F30 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02391F30 */ cpu->r[1] = _t0;
|
|
/* 02391F34 */ cpu->r[12] = 0x10080000u;
|
|
/* 02391F38 */ cpu->r[12] = cpu->r[12] + 0x00006448u;
|
|
/* 02391F3C */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 02391F3C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02391F40 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02391F40 */ rbrew_write32(cpu->mem, _t2, cpu->r[12]);
|
|
/* 02391F44 */ cpu->r[31] = cpu->r[3];
|
|
/* 02391F48 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02391F48 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02391F4C */ cpu->r[0] = 0x10080000u;
|
|
/* 02391F50 */ _t4 = cpu->r[31] + 0x00000000u;
|
|
/* 02391F50 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02391F54 */ cpu->r[0] = cpu->r[0] + 0x00006530u;
|
|
/* 02391F58 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02391F5C */ _t5 = cpu->r[1] + 0x00000008u;
|
|
/* 02391F5C */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02391F60 */ Gambit_fn_020F08E8(cpu);
|
|
/* 02391F64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02391F68 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02391F68 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02391F68 */ if (_t7) goto L_02391F6C; else goto L_02391F84;
|
|
L_02391F6C: ; // 0x2391f6c
|
|
/* 02391F6C */ _t8 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02391F6C */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02391F70 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 02391F70 */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02391F74 */ cpu->lr = cpu->r[0];
|
|
/* 02391F78 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02391F7C */ cpu->r[3] = 0x00000000u;
|
|
/* 02391F80 */ return;
|
|
L_02391F84: ; // 0x2391f84
|
|
/* 02391F84 */ cpu->r[3] = 0x00000000u;
|
|
/* 02391F88 */ cpu->r[4] = cpu->r[31];
|
|
/* 02391F8C */ Gambit_fn_02391C08(cpu);
|
|
/* 02391F90 */ _t10 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02391F90 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02391F94 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 02391F94 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02391F98 */ cpu->lr = cpu->r[0];
|
|
/* 02391F9C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02391FA0 */ return;
|
|
}
|
|
|
|
// fn_02391FA4 @ 0x2391fa4
|
|
void Gambit_fn_02391FA4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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;
|
|
|
|
L_02391FA4: ; // 0x2391fa4
|
|
/* 02391FA4 */ _t0 = cpu->r[1] + 0xFFFFFE68u;
|
|
/* 02391FA4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02391FA4 */ cpu->r[1] = _t0;
|
|
/* 02391FA8 */ /* nop */
|
|
/* 02391FAC */ cpu->r[0] = cpu->lr;
|
|
/* 02391FB0 */ _t1 = cpu->r[1] + 0x0000019Cu;
|
|
/* 02391FB0 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02391FB4 */ cpu->r[29] = cpu->r[3];
|
|
/* 02391FB8 */ _t2 = cpu->r[4] + 0x00000018u;
|
|
/* 02391FB8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 02391FBC */ _t3 = cpu->r[4] + 0x0000000Cu;
|
|
/* 02391FBC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 02391FC0 */ _t4 = cpu->r[1] + 0x00000018u;
|
|
/* 02391FC0 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[12]);
|
|
/* 02391FC4 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 02391FC4 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[0]);
|
|
/* 02391FC8 */ _t6 = cpu->r[4] + 0x0000001Cu;
|
|
/* 02391FC8 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 02391FCC */ _t7 = cpu->r[4] + 0x00000028u;
|
|
/* 02391FCC */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 02391FD0 */ _t8 = cpu->r[4] + 0x00000004u;
|
|
/* 02391FD0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 02391FD4 */ _t9 = cpu->r[1] + 0x00000028u;
|
|
/* 02391FD4 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[7]);
|
|
/* 02391FD8 */ _t10 = cpu->r[1] + 0x00000020u;
|
|
/* 02391FD8 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[0]);
|
|
/* 02391FDC */ _t11 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02391FDC */ rbrew_write_f32(cpu->mem, _t11, cpu->f[8]);
|
|
/* 02391FE0 */ _t12 = cpu->r[4] + 0x00000010u;
|
|
/* 02391FE0 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 02391FE4 */ _t13 = cpu->r[4] + 0x0000002Cu;
|
|
/* 02391FE4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 02391FE8 */ _t14 = cpu->r[4] + 0x00000008u;
|
|
/* 02391FE8 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 02391FEC */ _t15 = cpu->r[4] + 0x00000000u;
|
|
/* 02391FEC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 02391FF0 */ _t16 = cpu->r[1] + 0x00000030u;
|
|
/* 02391FF0 */ rbrew_write_f32(cpu->mem, _t16, cpu->f[9]);
|
|
/* 02391FF4 */ _t17 = cpu->r[1] + 0x00000010u;
|
|
/* 02391FF4 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[13]);
|
|
/* 02391FF8 */ _t18 = cpu->r[29] + 0x00000004u;
|
|
/* 02391FF8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02391FFC */ _t19 = cpu->r[4] + 0x00000024u;
|
|
/* 02391FFC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 02392000 */ _t20 = cpu->r[4] + 0x00000020u;
|
|
/* 02392000 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 02392004 */ _t21 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02392004 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[13]);
|
|
/* 02392008 */ _t22 = cpu->r[1] + 0x00000038u;
|
|
/* 02392008 */ rbrew_write_f32(cpu->mem, _t22, cpu->f[11]);
|
|
/* 0239200C */ _t23 = cpu->r[4] + 0x00000014u;
|
|
/* 0239200C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 02392010 */ _t24 = cpu->r[1] + 0x00000024u;
|
|
/* 02392010 */ rbrew_write_f32(cpu->mem, _t24, cpu->f[6]);
|
|
/* 02392014 */ _t25 = cpu->r[1] + 0x00000034u;
|
|
/* 02392014 */ rbrew_write_f32(cpu->mem, _t25, cpu->f[10]);
|
|
/* 02392018 */ _t26 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02392018 */ rbrew_write_f32(cpu->mem, _t26, cpu->f[12]);
|
|
/* 0239201C */ _t27 = cpu->r[31] + 0x0000007Cu;
|
|
/* 0239201C */ cpu->r[10] = rbrew_read8(cpu->mem, _t27);
|
|
/* 02392020 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 02392024 */ cpu->r[10] = cpu->r[10] | 0x00000001u;
|
|
/* 02392028 */ cpu->r[4] = cpu->r[31] + 0x00000034u;
|
|
/* 0239202C */ _t28 = cpu->r[31] + 0x0000007Cu;
|
|
/* 0239202C */ rbrew_write8(cpu->mem, _t28, (uint8_t)cpu->r[10]);
|
|
/* 02392030 */ Gambit_fn_02C69510(cpu);
|
|
/* 02392034 */ cpu->r[3] = cpu->r[31];
|
|
/* 02392038 */ Gambit_fn_02980378(cpu);
|
|
/* 0239203C */ _t29 = cpu->r[29] + 0x00000008u;
|
|
/* 0239203C */ cpu->r[12] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02392040 */ cpu->r[19] = 0x00000000u;
|
|
/* 02392044 */ _t30 = cpu->r[29] + 0x0000003Cu;
|
|
/* 02392044 */ rbrew_write8(cpu->mem, _t30, (uint8_t)cpu->r[19]);
|
|
/* 02392048 */ _t31 = cpu->r[29] + 0x0000000Cu;
|
|
/* 02392048 */ rbrew_write32(cpu->mem, _t31, cpu->r[19]);
|
|
/* 0239204C */ _t32 = cpu->r[12] + 0x000000A4u;
|
|
/* 0239204C */ cpu->r[20] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02392050 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[20], 0x00000000u);
|
|
/* 02392054 */ _t33 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02392054 */ _t34 = _t33 & 0x00000001u;
|
|
/* 02392054 */ if (_t34) goto L_02392058; else goto L_02392374;
|
|
L_02392058: ; // 0x2392058
|
|
/* 02392058 */ cpu->r[31] = 0x10110000u;
|
|
/* 0239205C */ cpu->r[18] = 0x101C0000u;
|
|
/* 02392060 */ cpu->r[30] = cpu->r[1] + 0x0000004Cu;
|
|
/* 02392064 */ _t35 = cpu->r[31] + 0x00007399u;
|
|
/* 02392064 */ cpu->r[31] = rbrew_read8(cpu->mem, _t35);
|
|
/* 02392068 */ cpu->r[24] = 0x10080000u;
|
|
/* 0239206C */ cpu->r[22] = 0x00080000u;
|
|
/* 02392070 */ cpu->r[28] = 0x10080000u;
|
|
/* 02392074 */ cpu->r[25] = 0x10080000u;
|
|
/* 02392078 */ cpu->r[27] = 0x10080000u;
|
|
/* 0239207C */ cpu->r[26] = cpu->r[1] + 0x000000D8u;
|
|
/* 02392080 */ cpu->r[25] = cpu->r[25] + 0x00006478u;
|
|
/* 02392084 */ cpu->r[23] = cpu->r[1] + 0x00000157u;
|
|
/* 02392088 */ cpu->r[27] = cpu->r[27] + 0x00006490u;
|
|
/* 0239208C */ cpu->r[28] = cpu->r[28] + 0x00006540u;
|
|
/* 02392090 */ cpu->r[22] = cpu->r[22] + 0x00000001u;
|
|
/* 02392094 */ cpu->r[24] = cpu->r[24] + 0x00006448u;
|
|
/* 02392098 */ cpu->r[21] = 0x00000080u;
|
|
L_0239209C: ; // 0x239209c
|
|
/* 0239209C */ _t36 = cpu->r[12] + 0x000000B4u;
|
|
/* 0239209C */ cpu->r[0] = rbrew_read32(cpu->mem, _t36);
|
|
/* 023920A0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[19], cpu->r[0]);
|
|
/* 023920A4 */ _t37 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 023920A4 */ _t38 = _t37 & 0x00000001u;
|
|
/* 023920A4 */ if (_t38) goto L_023920A8; else goto L_0239210C;
|
|
L_023920A8: ; // 0x23920a8
|
|
/* 023920A8 */ _t39 = cpu->r[12] + 0x000000B0u;
|
|
/* 023920A8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t39);
|
|
/* 023920AC */ _t40 = cpu->r[12] + 0x000000ACu;
|
|
/* 023920AC */ cpu->r[11] = rbrew_read32(cpu->mem, _t40);
|
|
/* 023920B0 */ cpu->r[0] = cpu->r[4] + cpu->r[19];
|
|
/* 023920B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], cpu->r[11]);
|
|
/* 023920B8 */ _t41 = cpu->r[12] + 0x000000A8u;
|
|
/* 023920B8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t41);
|
|
/* 023920BC */ _t42 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 023920BC */ _t43 = _t42 & 0x00000001u;
|
|
/* 023920BC */ if (_t43) goto L_023920C4; else goto L_023920C0;
|
|
L_023920C0: ; // 0x23920c0
|
|
/* 023920C0 */ cpu->r[0] = cpu->r[0] - cpu->r[11];
|
|
L_023920C4: ; // 0x23920c4
|
|
/* 023920C4 */ _t44 = cpu->r[1] + 0x00000048u;
|
|
/* 023920C4 */ rbrew_write32(cpu->mem, _t44, cpu->r[21]);
|
|
/* 023920C8 */ cpu->r[5] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x00000118u);
|
|
/* 023920CC */ _t45 = cpu->r[1] + 0x00000040u;
|
|
/* 023920CC */ rbrew_write32(cpu->mem, _t45, cpu->r[30]);
|
|
/* 023920D0 */ _t46 = cpu->r[30] + 0x0000007Fu;
|
|
/* 023920D0 */ rbrew_write8(cpu->mem, _t46, (uint8_t)cpu->r[31]);
|
|
/* 023920D4 */ cpu->r[16] = cpu->r[6] + cpu->r[5];
|
|
/* 023920D8 */ _t47 = cpu->r[1] + 0x00000044u;
|
|
/* 023920D8 */ rbrew_write32(cpu->mem, _t47, cpu->r[25]);
|
|
/* 023920DC */ _t48 = cpu->r[16] + 0x00000004u;
|
|
/* 023920DC */ cpu->r[7] = rbrew_read32(cpu->mem, _t48);
|
|
/* 023920E0 */ _t49 = cpu->r[7] + 0x00000014u;
|
|
/* 023920E0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t49);
|
|
/* 023920E4 */ cpu->ctr = cpu->r[8];
|
|
/* 023920E8 */ cpu->r[3] = cpu->r[16];
|
|
/* 023920EC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 023920F0 */ _t50 = cpu->r[16] + 0x00000000u;
|
|
/* 023920F0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t50);
|
|
/* 023920F4 */ _t51 = cpu->r[4] + 0x00000000u;
|
|
/* 023920F4 */ cpu->r[9] = rbrew_read8(cpu->mem, _t51);
|
|
/* 023920F8 */ cpu->r[17] = 0x00000000u;
|
|
/* 023920FC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[31]);
|
|
/* 02392100 */ cpu->r[6] = 0x00080000u;
|
|
/* 02392104 */ _t52 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02392104 */ _t53 = _t52 & 0x00000001u;
|
|
/* 02392104 */ if (_t53) goto L_02392108; else goto L_0239214C;
|
|
L_02392108: ; // 0x2392108
|
|
/* 02392108 */ goto L_02392170;
|
|
L_0239210C: ; // 0x239210c
|
|
/* 0239210C */ _t54 = cpu->r[12] + 0x000000A8u;
|
|
/* 0239210C */ cpu->r[16] = rbrew_read32(cpu->mem, _t54);
|
|
/* 02392110 */ _t55 = cpu->r[1] + 0x00000048u;
|
|
/* 02392110 */ rbrew_write32(cpu->mem, _t55, cpu->r[21]);
|
|
/* 02392114 */ _t56 = cpu->r[30] + 0x0000007Fu;
|
|
/* 02392114 */ rbrew_write8(cpu->mem, _t56, (uint8_t)cpu->r[31]);
|
|
/* 02392118 */ _t57 = cpu->r[1] + 0x00000040u;
|
|
/* 02392118 */ rbrew_write32(cpu->mem, _t57, cpu->r[30]);
|
|
/* 0239211C */ _t58 = cpu->r[1] + 0x00000044u;
|
|
/* 0239211C */ rbrew_write32(cpu->mem, _t58, cpu->r[25]);
|
|
/* 02392120 */ _t59 = cpu->r[16] + 0x00000004u;
|
|
/* 02392120 */ cpu->r[7] = rbrew_read32(cpu->mem, _t59);
|
|
/* 02392124 */ _t60 = cpu->r[7] + 0x00000014u;
|
|
/* 02392124 */ cpu->r[8] = rbrew_read32(cpu->mem, _t60);
|
|
/* 02392128 */ cpu->ctr = cpu->r[8];
|
|
/* 0239212C */ cpu->r[3] = cpu->r[16];
|
|
/* 02392130 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02392134 */ _t61 = cpu->r[16] + 0x00000000u;
|
|
/* 02392134 */ cpu->r[4] = rbrew_read32(cpu->mem, _t61);
|
|
/* 02392138 */ _t62 = cpu->r[4] + 0x00000000u;
|
|
/* 02392138 */ cpu->r[9] = rbrew_read8(cpu->mem, _t62);
|
|
/* 0239213C */ cpu->r[17] = 0x00000000u;
|
|
/* 02392140 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[31]);
|
|
/* 02392144 */ cpu->r[6] = 0x00080000u;
|
|
/* 02392148 */ _t63 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02392148 */ _t64 = _t63 & 0x00000001u;
|
|
/* 02392148 */ if (_t64) goto L_02392108; else goto L_0239214C;
|
|
L_0239214C: ; // 0x239214c
|
|
/* 0239214C */ cpu->r[17] = cpu->r[17] + 0x00000001u;
|
|
/* 02392150 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[17], cpu->r[6]);
|
|
/* 02392154 */ cpu->r[4] = cpu->r[4] + 0x00000001u;
|
|
/* 02392158 */ _t65 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02392158 */ _t66 = _t65 & 0x00000001u;
|
|
/* 02392158 */ if (_t66) goto L_0239216C; else goto L_0239215C;
|
|
L_0239215C: ; // 0x239215c
|
|
/* 0239215C */ _t67 = cpu->r[4] + 0x00000000u;
|
|
/* 0239215C */ cpu->r[0] = rbrew_read8(cpu->mem, _t67);
|
|
/* 02392160 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 02392164 */ _t68 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02392164 */ _t69 = _t68 & 0x00000001u;
|
|
/* 02392164 */ if (_t69) goto L_02392168; else goto L_0239214C;
|
|
L_02392168: ; // 0x2392168
|
|
/* 02392168 */ goto L_02392170;
|
|
L_0239216C: ; // 0x239216c
|
|
/* 0239216C */ cpu->r[17] = 0x00000000u;
|
|
L_02392170: ; // 0x2392170
|
|
/* 02392170 */ _t70 = cpu->r[1] + 0x00000048u;
|
|
/* 02392170 */ cpu->r[6] = rbrew_read32(cpu->mem, _t70);
|
|
/* 02392174 */ _t71 = cpu->r[16] + 0x00000004u;
|
|
/* 02392174 */ cpu->r[5] = rbrew_read32(cpu->mem, _t71);
|
|
/* 02392178 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[17], cpu->r[6]);
|
|
/* 0239217C */ _t72 = cpu->r[5] + 0x00000014u;
|
|
/* 0239217C */ cpu->r[7] = rbrew_read32(cpu->mem, _t72);
|
|
/* 02392180 */ _t73 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02392180 */ _t74 = _t73 & 0x00000001u;
|
|
/* 02392180 */ if (_t74) goto L_02392188; else goto L_02392184;
|
|
L_02392184: ; // 0x2392184
|
|
/* 02392184 */ cpu->r[17] = cpu->r[6] + 0xFFFFFFFFu;
|
|
L_02392188: ; // 0x2392188
|
|
/* 02392188 */ cpu->ctr = cpu->r[7];
|
|
/* 0239218C */ cpu->r[3] = cpu->r[16];
|
|
/* 02392190 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02392194 */ _t75 = cpu->r[16] + 0x00000000u;
|
|
/* 02392194 */ cpu->r[4] = rbrew_read32(cpu->mem, _t75);
|
|
/* 02392198 */ cpu->r[6] = 0x00000000u;
|
|
/* 0239219C */ cpu->r[5] = cpu->r[17];
|
|
/* 023921A0 */ cpu->r[3] = cpu->r[30];
|
|
/* 023921A4 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 023921A8 */ _t76 = cpu->r[1] + 0x000000D4u;
|
|
/* 023921A8 */ rbrew_write32(cpu->mem, _t76, cpu->r[21]);
|
|
/* 023921AC */ _t77 = cpu->r[23] + 0x00000000u;
|
|
/* 023921AC */ rbrew_write8(cpu->mem, _t77, (uint8_t)cpu->r[31]);
|
|
/* 023921B0 */ _t78 = cpu->r[1] + 0x00000044u;
|
|
/* 023921B0 */ rbrew_write32(cpu->mem, _t78, cpu->r[27]);
|
|
/* 023921B4 */ _t79 = cpu->r[1] + 0x000000CCu;
|
|
/* 023921B4 */ rbrew_write32(cpu->mem, _t79, cpu->r[26]);
|
|
/* 023921B8 */ _t80 = cpu->r[1] + 0x000000D0u;
|
|
/* 023921B8 */ rbrew_write32(cpu->mem, _t80, cpu->r[25]);
|
|
/* 023921BC */ _t81 = cpu->r[30] + cpu->r[17];
|
|
/* 023921BC */ rbrew_write8(cpu->mem, _t81, (uint8_t)cpu->r[31]);
|
|
/* 023921C0 */ _t82 = cpu->r[16] + 0x00000090u;
|
|
/* 023921C0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t82);
|
|
/* 023921C4 */ _t83 = cpu->r[11] + 0x00000014u;
|
|
/* 023921C4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t83);
|
|
/* 023921C8 */ cpu->ctr = cpu->r[12];
|
|
/* 023921CC */ cpu->r[3] = cpu->r[16] + 0x0000008Cu;
|
|
/* 023921D0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 023921D4 */ _t84 = cpu->r[16] + 0x0000008Cu;
|
|
/* 023921D4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t84);
|
|
/* 023921D8 */ _t85 = cpu->r[9] + 0x00000000u;
|
|
/* 023921D8 */ cpu->r[5] = rbrew_read8(cpu->mem, _t85);
|
|
/* 023921DC */ cpu->r[17] = 0x00000000u;
|
|
/* 023921E0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[31]);
|
|
/* 023921E4 */ cpu->r[10] = 0x00080000u;
|
|
/* 023921E8 */ _t86 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023921E8 */ _t87 = _t86 & 0x00000001u;
|
|
/* 023921E8 */ if (_t87) goto L_02392210; else goto L_023921EC;
|
|
L_023921EC: ; // 0x23921ec
|
|
/* 023921EC */ cpu->r[17] = cpu->r[17] + 0x00000001u;
|
|
/* 023921F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[17], cpu->r[10]);
|
|
/* 023921F4 */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
/* 023921F8 */ _t88 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 023921F8 */ _t89 = _t88 & 0x00000001u;
|
|
/* 023921F8 */ if (_t89) goto L_0239220C; else goto L_023921FC;
|
|
L_023921FC: ; // 0x23921fc
|
|
/* 023921FC */ _t90 = cpu->r[9] + 0x00000000u;
|
|
/* 023921FC */ cpu->r[7] = rbrew_read8(cpu->mem, _t90);
|
|
/* 02392200 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[31]);
|
|
/* 02392204 */ _t91 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02392204 */ _t92 = _t91 & 0x00000001u;
|
|
/* 02392204 */ if (_t92) goto L_02392208; else goto L_023921EC;
|
|
L_02392208: ; // 0x2392208
|
|
/* 02392208 */ goto L_02392210;
|
|
L_0239220C: ; // 0x239220c
|
|
/* 0239220C */ cpu->r[17] = 0x00000000u;
|
|
L_02392210: ; // 0x2392210
|
|
/* 02392210 */ _t93 = cpu->r[1] + 0x000000D4u;
|
|
/* 02392210 */ cpu->r[8] = rbrew_read32(cpu->mem, _t93);
|
|
/* 02392214 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[17], cpu->r[8]);
|
|
/* 02392218 */ _t94 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02392218 */ _t95 = _t94 & 0x00000001u;
|
|
/* 02392218 */ if (_t95) goto L_02392220; else goto L_0239221C;
|
|
L_0239221C: ; // 0x239221c
|
|
/* 0239221C */ cpu->r[17] = cpu->r[8] + 0xFFFFFFFFu;
|
|
L_02392220: ; // 0x2392220
|
|
/* 02392220 */ _t96 = cpu->r[16] + 0x00000090u;
|
|
/* 02392220 */ cpu->r[8] = rbrew_read32(cpu->mem, _t96);
|
|
/* 02392224 */ _t97 = cpu->r[8] + 0x00000014u;
|
|
/* 02392224 */ cpu->r[9] = rbrew_read32(cpu->mem, _t97);
|
|
/* 02392228 */ cpu->ctr = cpu->r[9];
|
|
/* 0239222C */ cpu->r[3] = cpu->r[16] + 0x0000008Cu;
|
|
/* 02392230 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02392234 */ _t98 = cpu->r[16] + 0x0000008Cu;
|
|
/* 02392234 */ cpu->r[4] = rbrew_read32(cpu->mem, _t98);
|
|
/* 02392238 */ cpu->r[6] = 0x00000000u;
|
|
/* 0239223C */ cpu->r[5] = cpu->r[17];
|
|
/* 02392240 */ cpu->r[3] = cpu->r[30] + 0x0000008Cu;
|
|
/* 02392244 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 02392248 */ _t99 = cpu->r[29] + 0x00000008u;
|
|
/* 02392248 */ cpu->r[11] = rbrew_read32(cpu->mem, _t99);
|
|
/* 0239224C */ cpu->r[10] = cpu->r[30] + cpu->r[17];
|
|
/* 02392250 */ _t100 = cpu->r[10] + 0x0000008Cu;
|
|
/* 02392250 */ rbrew_write8(cpu->mem, _t100, (uint8_t)cpu->r[31]);
|
|
/* 02392254 */ _t101 = cpu->r[1] + 0x000000D0u;
|
|
/* 02392254 */ rbrew_write32(cpu->mem, _t101, cpu->r[27]);
|
|
/* 02392258 */ _t102 = cpu->r[11] + 0x000000B4u;
|
|
/* 02392258 */ cpu->r[0] = rbrew_read32(cpu->mem, _t102);
|
|
/* 0239225C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[19], cpu->r[0]);
|
|
/* 02392260 */ _t103 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02392260 */ _t104 = _t103 & 0x00000001u;
|
|
/* 02392260 */ if (_t104) goto L_02392264; else goto L_023922E0;
|
|
L_02392264: ; // 0x2392264
|
|
/* 02392264 */ _t105 = cpu->r[11] + 0x000000B0u;
|
|
/* 02392264 */ cpu->r[12] = rbrew_read32(cpu->mem, _t105);
|
|
/* 02392268 */ _t106 = cpu->r[11] + 0x000000ACu;
|
|
/* 02392268 */ cpu->r[9] = rbrew_read32(cpu->mem, _t106);
|
|
/* 0239226C */ cpu->r[0] = cpu->r[12] + cpu->r[19];
|
|
/* 02392270 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], cpu->r[9]);
|
|
/* 02392274 */ _t107 = cpu->r[11] + 0x000000A8u;
|
|
/* 02392274 */ cpu->r[5] = rbrew_read32(cpu->mem, _t107);
|
|
/* 02392278 */ _t108 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02392278 */ _t109 = _t108 & 0x00000001u;
|
|
/* 02392278 */ if (_t109) goto L_02392280; else goto L_0239227C;
|
|
L_0239227C: ; // 0x239227c
|
|
/* 0239227C */ cpu->r[0] = cpu->r[0] - cpu->r[9];
|
|
L_02392280: ; // 0x2392280
|
|
/* 02392280 */ cpu->r[4] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x00000118u);
|
|
/* 02392284 */ _t110 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02392284 */ rbrew_write32(cpu->mem, _t110, cpu->r[24]);
|
|
/* 02392288 */ cpu->r[16] = cpu->r[5] + cpu->r[4];
|
|
/* 0239228C */ _t111 = cpu->r[1] + 0x00000008u;
|
|
/* 0239228C */ rbrew_write32(cpu->mem, _t111, cpu->r[28]);
|
|
/* 02392290 */ _t112 = cpu->r[16] + 0x00000004u;
|
|
/* 02392290 */ cpu->r[7] = rbrew_read32(cpu->mem, _t112);
|
|
/* 02392294 */ _t113 = cpu->r[7] + 0x00000014u;
|
|
/* 02392294 */ cpu->r[9] = rbrew_read32(cpu->mem, _t113);
|
|
/* 02392298 */ cpu->ctr = cpu->r[9];
|
|
/* 0239229C */ cpu->r[3] = cpu->r[16];
|
|
/* 023922A0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 023922A4 */ _t114 = cpu->r[16] + 0x00000004u;
|
|
/* 023922A4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t114);
|
|
/* 023922A8 */ _t115 = cpu->r[10] + 0x00000014u;
|
|
/* 023922A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t115);
|
|
/* 023922AC */ cpu->ctr = cpu->r[0];
|
|
/* 023922B0 */ cpu->r[3] = cpu->r[16];
|
|
/* 023922B4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 023922B8 */ _t116 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023922B8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t116);
|
|
/* 023922BC */ _t117 = cpu->r[4] + 0x00000014u;
|
|
/* 023922BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t117);
|
|
/* 023922C0 */ cpu->ctr = cpu->r[0];
|
|
/* 023922C4 */ _t118 = cpu->r[16] + 0x00000000u;
|
|
/* 023922C4 */ cpu->r[17] = rbrew_read32(cpu->mem, _t118);
|
|
/* 023922C8 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 023922CC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 023922D0 */ _t119 = cpu->r[1] + 0x00000008u;
|
|
/* 023922D0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t119);
|
|
/* 023922D4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[17], cpu->r[6]);
|
|
/* 023922D8 */ _t120 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023922D8 */ _t121 = _t120 & 0x00000001u;
|
|
/* 023922D8 */ if (_t121) goto L_02392388; else goto L_023922DC;
|
|
L_023922DC: ; // 0x23922dc
|
|
/* 023922DC */ goto L_02392338;
|
|
L_023922E0: ; // 0x23922e0
|
|
/* 023922E0 */ _t122 = cpu->r[11] + 0x000000A8u;
|
|
/* 023922E0 */ cpu->r[16] = rbrew_read32(cpu->mem, _t122);
|
|
/* 023922E4 */ _t123 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023922E4 */ rbrew_write32(cpu->mem, _t123, cpu->r[24]);
|
|
/* 023922E8 */ _t124 = cpu->r[1] + 0x00000008u;
|
|
/* 023922E8 */ rbrew_write32(cpu->mem, _t124, cpu->r[28]);
|
|
/* 023922EC */ _t125 = cpu->r[16] + 0x00000004u;
|
|
/* 023922EC */ cpu->r[7] = rbrew_read32(cpu->mem, _t125);
|
|
/* 023922F0 */ _t126 = cpu->r[7] + 0x00000014u;
|
|
/* 023922F0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t126);
|
|
/* 023922F4 */ cpu->ctr = cpu->r[9];
|
|
/* 023922F8 */ cpu->r[3] = cpu->r[16];
|
|
/* 023922FC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02392300 */ _t127 = cpu->r[16] + 0x00000004u;
|
|
/* 02392300 */ cpu->r[10] = rbrew_read32(cpu->mem, _t127);
|
|
/* 02392304 */ _t128 = cpu->r[10] + 0x00000014u;
|
|
/* 02392304 */ cpu->r[0] = rbrew_read32(cpu->mem, _t128);
|
|
/* 02392308 */ cpu->ctr = cpu->r[0];
|
|
/* 0239230C */ cpu->r[3] = cpu->r[16];
|
|
/* 02392310 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02392314 */ _t129 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02392314 */ cpu->r[4] = rbrew_read32(cpu->mem, _t129);
|
|
/* 02392318 */ _t130 = cpu->r[4] + 0x00000014u;
|
|
/* 02392318 */ cpu->r[0] = rbrew_read32(cpu->mem, _t130);
|
|
/* 0239231C */ cpu->ctr = cpu->r[0];
|
|
/* 02392320 */ _t131 = cpu->r[16] + 0x00000000u;
|
|
/* 02392320 */ cpu->r[17] = rbrew_read32(cpu->mem, _t131);
|
|
/* 02392324 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02392328 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0239232C */ _t132 = cpu->r[1] + 0x00000008u;
|
|
/* 0239232C */ cpu->r[6] = rbrew_read32(cpu->mem, _t132);
|
|
/* 02392330 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[17], cpu->r[6]);
|
|
/* 02392334 */ _t133 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02392334 */ _t134 = _t133 & 0x00000001u;
|
|
/* 02392334 */ if (_t134) goto L_02392388; else goto L_02392338;
|
|
L_02392338: ; // 0x2392338
|
|
/* 02392338 */ _t135 = cpu->r[16] + 0x00000000u;
|
|
/* 02392338 */ cpu->r[8] = rbrew_read32(cpu->mem, _t135);
|
|
/* 0239233C */ _t136 = cpu->r[1] + 0x00000008u;
|
|
/* 0239233C */ cpu->r[6] = rbrew_read32(cpu->mem, _t136);
|
|
/* 02392340 */ cpu->r[8] = cpu->r[8] + 0xFFFFFFFFu;
|
|
/* 02392344 */ cpu->ctr = cpu->r[22];
|
|
/* 02392348 */ cpu->r[6] = cpu->r[6] + 0xFFFFFFFFu;
|
|
L_0239234C: ; // 0x239234c
|
|
/* 0239234C */ _t137 = cpu->r[8] + 0x00000001u;
|
|
/* 0239234C */ cpu->r[0] = rbrew_read8(cpu->mem, _t137);
|
|
/* 0239234C */ cpu->r[8] = _t137;
|
|
/* 02392350 */ _t138 = cpu->r[6] + 0x00000001u;
|
|
/* 02392350 */ cpu->r[7] = rbrew_read8(cpu->mem, _t138);
|
|
/* 02392350 */ cpu->r[6] = _t138;
|
|
/* 02392354 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]);
|
|
/* 02392358 */ _t139 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02392358 */ _t140 = _t139 & 0x00000001u;
|
|
/* 02392358 */ if (_t140) goto L_0239235C; else goto L_023923F4;
|
|
L_0239235C: ; // 0x239235c
|
|
/* 0239235C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 02392360 */ _t141 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02392360 */ _t142 = _t141 & 0x00000001u;
|
|
/* 02392360 */ if (_t142) goto L_02392388; else goto L_02392364;
|
|
L_02392364: ; // 0x2392364
|
|
/* 02392364 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02392364 */ _t143 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02392364 */ _t144 = _t143 >> (0x00000002u & 31u);
|
|
/* 02392364 */ _t145 = _t144 & 0x00000001u;
|
|
/* 02392364 */ if (_t145) goto L_0239234C; else goto L_02392368;
|
|
L_02392368: ; // 0x2392368
|
|
/* 02392368 */ cpu->r[20] = cpu->r[20] + 0xFFFFFFFFu;
|
|
/* 02392368 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[20], 0x00000000u);
|
|
/* 0239236C */ cpu->r[19] = cpu->r[19] + 0x00000001u;
|
|
/* 02392370 */ _t146 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02392370 */ _t147 = _t146 & 0x00000001u;
|
|
/* 02392370 */ if (_t147) goto L_02392374; else goto L_02392400;
|
|
L_02392374: ; // 0x2392374
|
|
/* 02392374 */ /* nop */
|
|
/* 02392378 */ _t148 = cpu->r[1] + 0x0000019Cu;
|
|
/* 02392378 */ cpu->r[0] = rbrew_read32(cpu->mem, _t148);
|
|
/* 0239237C */ cpu->lr = cpu->r[0];
|
|
/* 02392380 */ cpu->r[1] = cpu->r[1] + 0x00000198u;
|
|
/* 02392384 */ return;
|
|
L_02392388: ; // 0x2392388
|
|
/* 02392388 */ _t149 = cpu->r[18] + 0x00006000u;
|
|
/* 02392388 */ cpu->r[8] = rbrew_read32(cpu->mem, _t149);
|
|
/* 0239238C */ _t150 = cpu->r[8] + 0x0000026Cu;
|
|
/* 0239238C */ cpu->r[3] = rbrew_read32(cpu->mem, _t150);
|
|
/* 02392390 */ cpu->r[4] = cpu->r[1] + 0x000000CCu;
|
|
/* 02392394 */ Gambit_fn_022DA9EC(cpu);
|
|
/* 02392398 */ cpu->r[0] = cpu->r[3];
|
|
/* 02392398 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0239239C */ _t151 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239239C */ _t152 = _t151 & 0x00000001u;
|
|
/* 0239239C */ if (_t152) goto L_023923A0; else goto L_023923CC;
|
|
L_023923A0: ; // 0x23923a0
|
|
/* 023923A0 */ _t153 = cpu->r[18] + 0x00006000u;
|
|
/* 023923A0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t153);
|
|
/* 023923A4 */ _t154 = cpu->r[12] + 0x00000264u;
|
|
/* 023923A4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t154);
|
|
/* 023923A8 */ cpu->r[4] = cpu->r[1] + 0x000000CCu;
|
|
/* 023923AC */ Gambit_fn_024FDE50(cpu);
|
|
/* 023923B0 */ cpu->r[0] = cpu->r[3];
|
|
/* 023923B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 023923B4 */ _t155 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023923B4 */ _t156 = _t155 & 0x00000001u;
|
|
/* 023923B4 */ if (_t156) goto L_023923B8; else goto L_023923CC;
|
|
L_023923B8: ; // 0x23923b8
|
|
/* 023923B8 */ _t157 = cpu->r[18] + 0x00006000u;
|
|
/* 023923B8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t157);
|
|
/* 023923BC */ _t158 = cpu->r[4] + 0x00000270u;
|
|
/* 023923BC */ cpu->r[3] = rbrew_read32(cpu->mem, _t158);
|
|
/* 023923C0 */ cpu->r[4] = cpu->r[1] + 0x000000CCu;
|
|
/* 023923C4 */ Gambit_fn_0240D998(cpu);
|
|
/* 023923C8 */ cpu->r[0] = cpu->r[3];
|
|
L_023923CC: ; // 0x23923cc
|
|
/* 023923CC */ _t159 = cpu->r[29] + 0x0000000Cu;
|
|
/* 023923CC */ cpu->r[11] = rbrew_read32(cpu->mem, _t159);
|
|
/* 023923D0 */ _t160 = cpu->r[29] + 0x00000010u;
|
|
/* 023923D0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t160);
|
|
/* 023923D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], cpu->r[5]);
|
|
/* 023923D8 */ _t161 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 023923D8 */ _t162 = _t161 & 0x00000001u;
|
|
/* 023923D8 */ if (_t162) goto L_023923DC; else goto L_023923F4;
|
|
L_023923DC: ; // 0x23923dc
|
|
/* 023923DC */ _t163 = cpu->r[29] + 0x00000014u;
|
|
/* 023923DC */ cpu->r[7] = rbrew_read32(cpu->mem, _t163);
|
|
/* 023923E0 */ cpu->r[6] = rbrew_rlwinm(cpu->r[11], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 023923E4 */ _t164 = cpu->r[6] + cpu->r[7];
|
|
/* 023923E4 */ rbrew_write32(cpu->mem, _t164, cpu->r[0]);
|
|
/* 023923E8 */ _t165 = cpu->r[29] + 0x0000000Cu;
|
|
/* 023923E8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t165);
|
|
/* 023923EC */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
/* 023923F0 */ _t166 = cpu->r[29] + 0x0000000Cu;
|
|
/* 023923F0 */ rbrew_write32(cpu->mem, _t166, cpu->r[9]);
|
|
L_023923F4: ; // 0x23923f4
|
|
/* 023923F4 */ cpu->r[20] = cpu->r[20] + 0xFFFFFFFFu;
|
|
/* 023923F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[20], 0x00000000u);
|
|
/* 023923F8 */ cpu->r[19] = cpu->r[19] + 0x00000001u;
|
|
/* 023923FC */ _t167 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023923FC */ _t168 = _t167 & 0x00000001u;
|
|
/* 023923FC */ if (_t168) goto L_02392374; else goto L_02392400;
|
|
L_02392400: ; // 0x2392400
|
|
/* 02392400 */ _t169 = cpu->r[29] + 0x00000008u;
|
|
/* 02392400 */ cpu->r[12] = rbrew_read32(cpu->mem, _t169);
|
|
/* 02392404 */ goto L_0239209C;
|
|
}
|
|
|
|
// fn_02392408 @ 0x2392408
|
|
void Gambit_fn_02392408(CPUState* cpu) {
|
|
uint32_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_02392408: ; // 0x2392408
|
|
/* 02392408 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 02392408 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02392408 */ cpu->r[1] = _t0;
|
|
/* 0239240C */ /* nop */
|
|
/* 02392410 */ cpu->r[0] = cpu->lr;
|
|
/* 02392414 */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 02392414 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02392418 */ _t2 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02392418 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0239241C */ _t3 = cpu->r[3] + 0x00000014u;
|
|
/* 0239241C */ cpu->r[26] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02392420 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02392424 */ cpu->r[27] = cpu->r[26] + cpu->r[0];
|
|
/* 02392428 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], cpu->r[27]);
|
|
/* 0239242C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239242C */ _t5 = _t4 & 0x00000001u;
|
|
/* 0239242C */ if (_t5) goto L_023924A0; else goto L_02392430;
|
|
L_02392430: ; // 0x2392430
|
|
/* 02392430 */ cpu->r[30] = 0x00000001u;
|
|
/* 02392434 */ cpu->r[29] = 0x101D0000u;
|
|
/* 02392438 */ cpu->r[28] = 0x101D0000u;
|
|
L_0239243C: ; // 0x239243c
|
|
/* 0239243C */ _t6 = cpu->r[29] + 0xFFFFDA10u;
|
|
/* 0239243C */ cpu->r[10] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02392440 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02392444 */ _t7 = cpu->r[26] + 0x00000000u;
|
|
/* 02392444 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02392448 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02392448 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02392448 */ if (_t9) goto L_0239244C; else goto L_0239245C;
|
|
L_0239244C: ; // 0x239244c
|
|
/* 0239244C */ cpu->r[0] = 0x10080000u;
|
|
/* 02392450 */ _t10 = cpu->r[29] + 0xFFFFDA10u;
|
|
/* 02392450 */ rbrew_write32(cpu->mem, _t10, cpu->r[30]);
|
|
/* 02392454 */ cpu->r[0] = cpu->r[0] + 0x000064B8u;
|
|
/* 02392458 */ _t11 = cpu->r[28] + 0xFFFFFBBCu;
|
|
/* 02392458 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
L_0239245C: ; // 0x239245c
|
|
/* 0239245C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02392460 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02392460 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02392460 */ if (_t13) goto L_02392494; else goto L_02392464;
|
|
L_02392464: ; // 0x2392464
|
|
/* 02392464 */ _t14 = cpu->r[31] + 0x00000004u;
|
|
/* 02392464 */ cpu->r[12] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02392468 */ _t15 = cpu->r[12] + 0x00000014u;
|
|
/* 02392468 */ cpu->r[7] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0239246C */ cpu->ctr = cpu->r[7];
|
|
/* 02392470 */ cpu->r[3] = cpu->r[31];
|
|
/* 02392474 */ cpu->r[4] = cpu->r[28] + 0xFFFFFBBCu;
|
|
/* 02392478 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0239247C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02392480 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02392480 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02392480 */ if (_t17) goto L_02392494; else goto L_02392484;
|
|
L_02392484: ; // 0x2392484
|
|
/* 02392484 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02392488 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02392488 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02392488 */ if (_t19) goto L_02392494; else goto L_0239248C;
|
|
L_0239248C: ; // 0x239248c
|
|
/* 0239248C */ cpu->r[3] = cpu->r[31];
|
|
/* 02392490 */ Gambit_fn_024F4F68(cpu);
|
|
L_02392494: ; // 0x2392494
|
|
/* 02392494 */ cpu->r[26] = cpu->r[26] + 0x00000004u;
|
|
/* 02392498 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], cpu->r[27]);
|
|
/* 0239249C */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239249C */ _t21 = _t20 & 0x00000001u;
|
|
/* 0239249C */ if (_t21) goto L_023924A0; else goto L_0239243C;
|
|
L_023924A0: ; // 0x23924a0
|
|
/* 023924A0 */ /* nop */
|
|
/* 023924A4 */ _t22 = cpu->r[1] + 0x00000024u;
|
|
/* 023924A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 023924A8 */ cpu->lr = cpu->r[0];
|
|
/* 023924AC */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 023924B0 */ return;
|
|
}
|
|
|
|
// fn_023924B4 @ 0x23924b4
|
|
void Gambit_fn_023924B4(CPUState* cpu) {
|
|
uint32_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_023924B4: ; // 0x23924b4
|
|
/* 023924B4 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 023924B4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 023924B4 */ cpu->r[1] = _t0;
|
|
/* 023924B8 */ /* nop */
|
|
/* 023924BC */ cpu->r[0] = cpu->lr;
|
|
/* 023924C0 */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 023924C0 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 023924C4 */ _t2 = cpu->r[3] + 0x0000000Cu;
|
|
/* 023924C4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 023924C8 */ _t3 = cpu->r[3] + 0x00000014u;
|
|
/* 023924C8 */ cpu->r[26] = rbrew_read32(cpu->mem, _t3);
|
|
/* 023924CC */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 023924D0 */ cpu->r[27] = cpu->r[26] + cpu->r[0];
|
|
/* 023924D4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], cpu->r[27]);
|
|
/* 023924D8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023924D8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 023924D8 */ if (_t5) goto L_0239254C; else goto L_023924DC;
|
|
L_023924DC: ; // 0x23924dc
|
|
/* 023924DC */ cpu->r[30] = 0x00000001u;
|
|
/* 023924E0 */ cpu->r[29] = 0x101D0000u;
|
|
/* 023924E4 */ cpu->r[28] = 0x101D0000u;
|
|
L_023924E8: ; // 0x23924e8
|
|
/* 023924E8 */ _t6 = cpu->r[29] + 0xFFFFDA10u;
|
|
/* 023924E8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t6);
|
|
/* 023924EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 023924F0 */ _t7 = cpu->r[26] + 0x00000000u;
|
|
/* 023924F0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 023924F4 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023924F4 */ _t9 = _t8 & 0x00000001u;
|
|
/* 023924F4 */ if (_t9) goto L_023924F8; else goto L_02392508;
|
|
L_023924F8: ; // 0x23924f8
|
|
/* 023924F8 */ cpu->r[0] = 0x10080000u;
|
|
/* 023924FC */ _t10 = cpu->r[29] + 0xFFFFDA10u;
|
|
/* 023924FC */ rbrew_write32(cpu->mem, _t10, cpu->r[30]);
|
|
/* 02392500 */ cpu->r[0] = cpu->r[0] + 0x000064B8u;
|
|
/* 02392504 */ _t11 = cpu->r[28] + 0xFFFFFBBCu;
|
|
/* 02392504 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
L_02392508: ; // 0x2392508
|
|
/* 02392508 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0239250C */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239250C */ _t13 = _t12 & 0x00000001u;
|
|
/* 0239250C */ if (_t13) goto L_02392540; else goto L_02392510;
|
|
L_02392510: ; // 0x2392510
|
|
/* 02392510 */ _t14 = cpu->r[31] + 0x00000004u;
|
|
/* 02392510 */ cpu->r[12] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02392514 */ _t15 = cpu->r[12] + 0x00000014u;
|
|
/* 02392514 */ cpu->r[7] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02392518 */ cpu->ctr = cpu->r[7];
|
|
/* 0239251C */ cpu->r[3] = cpu->r[31];
|
|
/* 02392520 */ cpu->r[4] = cpu->r[28] + 0xFFFFFBBCu;
|
|
/* 02392524 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02392528 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239252C */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239252C */ _t17 = _t16 & 0x00000001u;
|
|
/* 0239252C */ if (_t17) goto L_02392540; else goto L_02392530;
|
|
L_02392530: ; // 0x2392530
|
|
/* 02392530 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02392534 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02392534 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02392534 */ if (_t19) goto L_02392540; else goto L_02392538;
|
|
L_02392538: ; // 0x2392538
|
|
/* 02392538 */ cpu->r[3] = cpu->r[31];
|
|
/* 0239253C */ Gambit_fn_024F4F50(cpu);
|
|
L_02392540: ; // 0x2392540
|
|
/* 02392540 */ cpu->r[26] = cpu->r[26] + 0x00000004u;
|
|
/* 02392544 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], cpu->r[27]);
|
|
/* 02392548 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02392548 */ _t21 = _t20 & 0x00000001u;
|
|
/* 02392548 */ if (_t21) goto L_0239254C; else goto L_023924E8;
|
|
L_0239254C: ; // 0x239254c
|
|
/* 0239254C */ /* nop */
|
|
/* 02392550 */ _t22 = cpu->r[1] + 0x00000024u;
|
|
/* 02392550 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02392554 */ cpu->lr = cpu->r[0];
|
|
/* 02392558 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 0239255C */ return;
|
|
}
|
|
|
|
// fn_02392560 @ 0x2392560
|
|
void Gambit_fn_02392560(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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;
|
|
|
|
L_02392560: ; // 0x2392560
|
|
/* 02392560 */ _t0 = cpu->r[1] + 0xFFFFFF20u;
|
|
/* 02392560 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02392560 */ cpu->r[1] = _t0;
|
|
/* 02392564 */ /* nop */
|
|
/* 02392568 */ cpu->r[0] = cpu->lr;
|
|
/* 0239256C */ _t1 = cpu->r[1] + 0x000000E4u;
|
|
/* 0239256C */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02392570 */ cpu->r[9] = 0x10080000u;
|
|
/* 02392574 */ _t2 = cpu->r[9] + 0x000064D8u;
|
|
/* 02392574 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 02392578 */ _t3 = cpu->r[1] + 0x00000030u;
|
|
/* 02392578 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[0]);
|
|
/* 0239257C */ cpu->r[23] = cpu->r[3];
|
|
/* 02392580 */ _t4 = cpu->r[23] + 0x00000000u;
|
|
/* 02392580 */ cpu->r[31] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t4);
|
|
/* 02392584 */ _t5 = cpu->r[23] + 0x00000004u;
|
|
/* 02392584 */ cpu->r[30] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02392588 */ cpu->r[4] = cpu->r[31];
|
|
/* 0239258C */ _t6 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0239258C */ rbrew_write_f32(cpu->mem, _t6, cpu->f[0]);
|
|
/* 02392590 */ cpu->r[3] = cpu->r[30];
|
|
/* 02392594 */ _t7 = cpu->r[1] + 0x00000034u;
|
|
/* 02392594 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[0]);
|
|
/* 02392598 */ Gambit_fn_0297FC7C(cpu);
|
|
/* 0239259C */ _t8 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0239259C */ cpu->r[4] = rbrew_read32(cpu->mem, _t8);
|
|
/* 023925A0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[4]);
|
|
/* 023925A4 */ cpu->r[7] = 0x00000000u;
|
|
/* 023925A8 */ _t9 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 023925A8 */ _t10 = _t9 & 0x00000001u;
|
|
/* 023925A8 */ if (_t10) goto L_023925AC; else goto L_023925B8;
|
|
L_023925AC: ; // 0x23925ac
|
|
/* 023925AC */ _t11 = cpu->r[30] + 0x00000024u;
|
|
/* 023925AC */ cpu->r[7] = rbrew_read32(cpu->mem, _t11);
|
|
/* 023925B0 */ cpu->r[5] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 023925B4 */ _t12 = cpu->r[5] + cpu->r[7];
|
|
/* 023925B4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t12);
|
|
L_023925B8: ; // 0x23925b8
|
|
/* 023925B8 */ _t13 = cpu->r[7] + 0x00000000u;
|
|
/* 023925B8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 023925BC */ _t14 = cpu->r[3] + 0x00000088u;
|
|
/* 023925BC */ cpu->r[8] = rbrew_read32(cpu->mem, _t14);
|
|
/* 023925C0 */ _t15 = cpu->r[8] + 0x0000007Cu;
|
|
/* 023925C0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t15);
|
|
/* 023925C4 */ cpu->ctr = cpu->r[11];
|
|
/* 023925C8 */ _t16 = cpu->r[23] + 0x00000002u;
|
|
/* 023925C8 */ cpu->r[4] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t16);
|
|
/* 023925CC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 023925D0 */ cpu->r[4] = cpu->r[3];
|
|
/* 023925D4 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 023925D8 */ Gambit_fn_0200D450(cpu);
|
|
/* 023925DC */ _t17 = cpu->r[23] + 0x0000003Cu;
|
|
/* 023925DC */ cpu->r[0] = rbrew_read8(cpu->mem, _t17);
|
|
/* 023925E0 */ _t18 = cpu->r[23] + 0x0000000Cu;
|
|
/* 023925E0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t18);
|
|
/* 023925E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 023925E8 */ _t19 = cpu->r[23] + 0x00000014u;
|
|
/* 023925E8 */ cpu->r[22] = rbrew_read32(cpu->mem, _t19);
|
|
/* 023925EC */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023925EC */ _t21 = _t20 & 0x00000001u;
|
|
/* 023925EC */ if (_t21) goto L_02392640; else goto L_023925F0;
|
|
L_023925F0: ; // 0x23925f0
|
|
/* 023925F0 */ /* nop */
|
|
/* 023925F4 */ /* nop */
|
|
/* 023925F8 */ _t22 = cpu->r[1] + 0x00000010u;
|
|
/* 023925F8 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 023925FC */ /* nop */
|
|
/* 02392600 */ /* nop */
|
|
/* 02392604 */ _t23 = cpu->r[1] + 0x00000054u;
|
|
/* 02392604 */ cpu->r[7] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02392608 */ _t24 = cpu->r[23] + 0x00000038u;
|
|
/* 02392608 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 0239260C */ _t25 = cpu->r[1] + 0x00000050u;
|
|
/* 0239260C */ cpu->r[6] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02392610 */ cpu->f[7] = cpu->f[9] - cpu->f[10];
|
|
/* 02392614 */ _t26 = cpu->r[1] + 0x00000060u;
|
|
/* 02392614 */ rbrew_write32(cpu->mem, _t26, cpu->r[7]);
|
|
/* 02392618 */ _t27 = cpu->r[1] + 0x00000060u;
|
|
/* 02392618 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 0239261C */ _t28 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0239261C */ rbrew_write32(cpu->mem, _t28, cpu->r[6]);
|
|
/* 02392620 */ _t29 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02392620 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 02392624 */ _t30 = cpu->r[1] + 0x00000058u;
|
|
/* 02392624 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[7]);
|
|
/* 02392628 */ _t31 = cpu->r[1] + 0x00000058u;
|
|
/* 02392628 */ cpu->r[9] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0239262C */ _t32 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0239262C */ rbrew_write_f32(cpu->mem, _t32, cpu->f[13]);
|
|
/* 02392630 */ _t33 = cpu->r[1] + 0x00000064u;
|
|
/* 02392630 */ rbrew_write32(cpu->mem, _t33, cpu->r[9]);
|
|
/* 02392634 */ _t34 = cpu->r[1] + 0x00000064u;
|
|
/* 02392634 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 02392638 */ _t35 = cpu->r[1] + 0x00000030u;
|
|
/* 02392638 */ rbrew_write_f32(cpu->mem, _t35, cpu->f[6]);
|
|
/* 0239263C */ _t36 = cpu->r[1] + 0x00000034u;
|
|
/* 0239263C */ rbrew_write_f32(cpu->mem, _t36, cpu->f[8]);
|
|
L_02392640: ; // 0x2392640
|
|
/* 02392640 */ cpu->r[10] = rbrew_rlwinm(cpu->r[11], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02392644 */ cpu->r[14] = cpu->r[22] + cpu->r[10];
|
|
/* 02392648 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[22], cpu->r[14]);
|
|
/* 0239264C */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239264C */ _t38 = _t37 & 0x00000001u;
|
|
/* 0239264C */ if (_t38) goto L_02392A40; else goto L_02392650;
|
|
L_02392650: ; // 0x2392650
|
|
/* 02392650 */ cpu->r[31] = 0x10080000u;
|
|
/* 02392654 */ cpu->r[30] = 0x101F0000u;
|
|
/* 02392658 */ cpu->r[31] = cpu->r[31] + 0x000064B8u;
|
|
/* 0239265C */ cpu->r[29] = cpu->r[1] + 0x00000038u;
|
|
/* 02392660 */ cpu->r[28] = cpu->r[1] + 0x00000044u;
|
|
/* 02392664 */ cpu->r[27] = 0x101D0000u;
|
|
/* 02392668 */ cpu->r[26] = 0x101D0000u;
|
|
/* 0239266C */ cpu->r[25] = 0x101D0000u;
|
|
/* 02392670 */ cpu->r[24] = 0x101D0000u;
|
|
/* 02392674 */ cpu->r[21] = 0x101D0000u;
|
|
/* 02392678 */ cpu->r[20] = 0x101D0000u;
|
|
/* 0239267C */ cpu->r[19] = 0x101D0000u;
|
|
/* 02392680 */ cpu->r[18] = 0x101D0000u;
|
|
L_02392684: ; // 0x2392684
|
|
/* 02392684 */ _t39 = cpu->r[22] + 0x00000000u;
|
|
/* 02392684 */ cpu->r[17] = rbrew_read32(cpu->mem, _t39);
|
|
/* 02392688 */ _t40 = cpu->r[17] + 0x0000001Cu;
|
|
/* 02392688 */ cpu->r[0] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0239268C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000002u);
|
|
/* 02392690 */ _t41 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02392690 */ _t42 = _t41 & 0x00000001u;
|
|
/* 02392690 */ if (_t42) goto L_0239269C; else goto L_02392694;
|
|
L_02392694: ; // 0x2392694
|
|
/* 02392694 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000003u);
|
|
/* 02392698 */ _t43 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02392698 */ _t44 = _t43 & 0x00000001u;
|
|
/* 02392698 */ if (_t44) goto L_0239269C; else goto L_02392A34;
|
|
L_0239269C: ; // 0x239269c
|
|
/* 0239269C */ _t45 = cpu->r[24] + 0xFFFFDA10u;
|
|
/* 0239269C */ cpu->r[12] = rbrew_read32(cpu->mem, _t45);
|
|
/* 023926A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 023926A4 */ _t46 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023926A4 */ _t47 = _t46 & 0x00000001u;
|
|
/* 023926A4 */ if (_t47) goto L_023926A8; else goto L_023926B4;
|
|
L_023926A8: ; // 0x23926a8
|
|
/* 023926A8 */ cpu->r[0] = 0x00000001u;
|
|
/* 023926AC */ _t48 = cpu->r[21] + 0xFFFFFBBCu;
|
|
/* 023926AC */ rbrew_write32(cpu->mem, _t48, cpu->r[31]);
|
|
/* 023926B0 */ _t49 = cpu->r[24] + 0xFFFFDA10u;
|
|
/* 023926B0 */ rbrew_write32(cpu->mem, _t49, cpu->r[0]);
|
|
L_023926B4: ; // 0x23926b4
|
|
/* 023926B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[17], 0x00000000u);
|
|
/* 023926B8 */ _t50 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023926B8 */ _t51 = _t50 & 0x00000001u;
|
|
/* 023926B8 */ if (_t51) goto L_02392808; else goto L_023926BC;
|
|
L_023926BC: ; // 0x23926bc
|
|
/* 023926BC */ _t52 = cpu->r[17] + 0x00000004u;
|
|
/* 023926BC */ cpu->r[4] = rbrew_read32(cpu->mem, _t52);
|
|
/* 023926C0 */ _t53 = cpu->r[4] + 0x00000014u;
|
|
/* 023926C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t53);
|
|
/* 023926C4 */ cpu->ctr = cpu->r[0];
|
|
/* 023926C8 */ cpu->r[4] = cpu->r[21] + 0xFFFFFBBCu;
|
|
/* 023926CC */ cpu->r[3] = cpu->r[17];
|
|
/* 023926D0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 023926D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023926D8 */ _t54 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023926D8 */ _t55 = _t54 & 0x00000001u;
|
|
/* 023926D8 */ if (_t55) goto L_02392808; else goto L_023926DC;
|
|
L_023926DC: ; // 0x23926dc
|
|
/* 023926DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[17], 0x00000000u);
|
|
/* 023926E0 */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023926E0 */ _t57 = _t56 & 0x00000001u;
|
|
/* 023926E0 */ if (_t57) goto L_02392808; else goto L_023926E4;
|
|
L_023926E4: ; // 0x23926e4
|
|
/* 023926E4 */ _t58 = cpu->r[23] + 0x0000003Cu;
|
|
/* 023926E4 */ cpu->r[6] = rbrew_read8(cpu->mem, _t58);
|
|
/* 023926E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 023926EC */ _t59 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023926EC */ _t60 = _t59 & 0x00000001u;
|
|
/* 023926EC */ if (_t60) goto L_023926FC; else goto L_023926F0;
|
|
L_023926F0: ; // 0x23926f0
|
|
/* 023926F0 */ cpu->r[3] = cpu->r[17];
|
|
/* 023926F4 */ cpu->r[4] = cpu->r[1] + 0x0000002Cu;
|
|
/* 023926F8 */ Gambit_fn_024F5688(cpu);
|
|
L_023926FC: ; // 0x23926fc
|
|
/* 023926FC */ _t61 = cpu->r[23] + 0x0000002Cu;
|
|
/* 023926FC */ cpu->r[10] = rbrew_read32(cpu->mem, _t61);
|
|
/* 02392700 */ _t62 = cpu->r[23] + 0x00000004u;
|
|
/* 02392700 */ cpu->r[15] = rbrew_read32(cpu->mem, _t62);
|
|
/* 02392704 */ _t63 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02392704 */ rbrew_write32(cpu->mem, _t63, cpu->r[10]);
|
|
/* 02392708 */ _t64 = cpu->r[23] + 0x00000028u;
|
|
/* 02392708 */ cpu->r[9] = rbrew_read32(cpu->mem, _t64);
|
|
/* 0239270C */ _t65 = cpu->r[23] + 0x00000000u;
|
|
/* 0239270C */ cpu->r[16] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t65);
|
|
/* 02392710 */ _t66 = cpu->r[23] + 0x00000024u;
|
|
/* 02392710 */ cpu->r[8] = rbrew_read32(cpu->mem, _t66);
|
|
/* 02392714 */ cpu->r[3] = cpu->r[15];
|
|
/* 02392718 */ _t67 = cpu->r[1] + 0x00000048u;
|
|
/* 02392718 */ rbrew_write32(cpu->mem, _t67, cpu->r[9]);
|
|
/* 0239271C */ cpu->r[4] = cpu->r[16];
|
|
/* 02392720 */ _t68 = cpu->r[1] + 0x00000044u;
|
|
/* 02392720 */ rbrew_write32(cpu->mem, _t68, cpu->r[8]);
|
|
/* 02392724 */ Gambit_fn_0297FC7C(cpu);
|
|
/* 02392728 */ _t69 = cpu->r[15] + 0x0000001Cu;
|
|
/* 02392728 */ cpu->r[11] = rbrew_read32(cpu->mem, _t69);
|
|
/* 0239272C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[16], cpu->r[11]);
|
|
/* 02392730 */ cpu->r[6] = 0x00000000u;
|
|
/* 02392734 */ _t70 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02392734 */ _t71 = _t70 & 0x00000001u;
|
|
/* 02392734 */ if (_t71) goto L_02392738; else goto L_02392744;
|
|
L_02392738: ; // 0x2392738
|
|
/* 02392738 */ _t72 = cpu->r[15] + 0x00000024u;
|
|
/* 02392738 */ cpu->r[0] = rbrew_read32(cpu->mem, _t72);
|
|
/* 0239273C */ cpu->r[12] = rbrew_rlwinm(cpu->r[16], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02392740 */ _t73 = cpu->r[12] + cpu->r[0];
|
|
/* 02392740 */ cpu->r[6] = rbrew_read32(cpu->mem, _t73);
|
|
L_02392744: ; // 0x2392744
|
|
/* 02392744 */ _t74 = cpu->r[6] + 0x00000000u;
|
|
/* 02392744 */ cpu->r[3] = rbrew_read32(cpu->mem, _t74);
|
|
/* 02392748 */ _t75 = cpu->r[3] + 0x00000088u;
|
|
/* 02392748 */ cpu->r[4] = rbrew_read32(cpu->mem, _t75);
|
|
/* 0239274C */ _t76 = cpu->r[4] + 0x0000007Cu;
|
|
/* 0239274C */ cpu->r[5] = rbrew_read32(cpu->mem, _t76);
|
|
/* 02392750 */ _t77 = cpu->r[23] + 0x00000002u;
|
|
/* 02392750 */ cpu->r[4] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t77);
|
|
/* 02392754 */ cpu->ctr = cpu->r[5];
|
|
/* 02392758 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0239275C */ cpu->r[8] = 0x00000003u;
|
|
/* 02392760 */ cpu->r[6] = cpu->r[3] + 0xFFFFFFFCu;
|
|
/* 02392764 */ cpu->ctr = cpu->r[8];
|
|
/* 02392768 */ cpu->r[7] = cpu->r[1] + 0x00000064u;
|
|
L_0239276C: ; // 0x239276c
|
|
/* 0239276C */ _t78 = cpu->r[6] + 0x00000004u;
|
|
/* 0239276C */ cpu->r[9] = rbrew_read32(cpu->mem, _t78);
|
|
/* 02392770 */ _t79 = cpu->r[7] + 0x00000004u;
|
|
/* 02392770 */ rbrew_write32(cpu->mem, _t79, cpu->r[9]);
|
|
/* 02392774 */ _t80 = cpu->r[6] + 0x00000008u;
|
|
/* 02392774 */ cpu->r[10] = rbrew_read32(cpu->mem, _t80);
|
|
/* 02392778 */ _t81 = cpu->r[7] + 0x00000008u;
|
|
/* 02392778 */ rbrew_write32(cpu->mem, _t81, cpu->r[10]);
|
|
/* 0239277C */ _t82 = cpu->r[6] + 0x0000000Cu;
|
|
/* 0239277C */ cpu->r[11] = rbrew_read32(cpu->mem, _t82);
|
|
/* 02392780 */ _t83 = cpu->r[7] + 0x0000000Cu;
|
|
/* 02392780 */ rbrew_write32(cpu->mem, _t83, cpu->r[11]);
|
|
/* 02392784 */ _t84 = cpu->r[6] + 0x00000010u;
|
|
/* 02392784 */ cpu->r[12] = rbrew_read32(cpu->mem, _t84);
|
|
/* 02392784 */ cpu->r[6] = _t84;
|
|
/* 02392788 */ _t85 = cpu->r[7] + 0x00000010u;
|
|
/* 02392788 */ rbrew_write32(cpu->mem, _t85, cpu->r[12]);
|
|
/* 02392788 */ cpu->r[7] = _t85;
|
|
/* 0239278C */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0239278C */ _t86 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0239278C */ _t87 = _t86 >> (0x00000002u & 31u);
|
|
/* 0239278C */ _t88 = _t87 & 0x00000001u;
|
|
/* 0239278C */ if (_t88) goto L_0239276C; else goto L_02392790;
|
|
L_02392790: ; // 0x2392790
|
|
/* 02392790 */ cpu->r[4] = cpu->r[30] + 0x00006338u;
|
|
/* 02392794 */ cpu->r[3] = cpu->r[1] + 0x00000068u;
|
|
/* 02392798 */ Gambit_fn_021620C4(cpu);
|
|
/* 0239279C */ cpu->r[3] = cpu->r[1] + 0x00000068u;
|
|
/* 023927A0 */ cpu->r[4] = cpu->r[28];
|
|
/* 023927A4 */ cpu->r[5] = cpu->r[28];
|
|
/* 023927A8 */ Gambit_fn_02C69468(cpu);
|
|
/* 023927AC */ _t89 = cpu->r[1] + 0x00000010u;
|
|
/* 023927AC */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t89);
|
|
/* 023927B0 */ _t90 = cpu->r[1] + 0x0000004Cu;
|
|
/* 023927B0 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t90);
|
|
/* 023927B4 */ /* nop */
|
|
/* 023927B8 */ cpu->f[0] = cpu->f[6] + cpu->f[8];
|
|
/* 023927BC */ /* nop */
|
|
/* 023927C0 */ /* nop */
|
|
/* 023927C4 */ _t91 = cpu->r[1] + 0x0000001Cu;
|
|
/* 023927C4 */ rbrew_write_f32(cpu->mem, _t91, cpu->f[0]);
|
|
/* 023927C8 */ /* nop */
|
|
/* 023927CC */ _t92 = cpu->r[1] + 0x00000014u;
|
|
/* 023927CC */ cpu->r[6] = rbrew_read32(cpu->mem, _t92);
|
|
/* 023927D0 */ _t93 = cpu->r[1] + 0x0000001Cu;
|
|
/* 023927D0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t93);
|
|
/* 023927D4 */ _t94 = cpu->r[1] + 0x00000038u;
|
|
/* 023927D4 */ rbrew_write32(cpu->mem, _t94, cpu->r[6]);
|
|
/* 023927D8 */ _t95 = cpu->r[1] + 0x00000038u;
|
|
/* 023927D8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t95);
|
|
/* 023927DC */ _t96 = cpu->r[1] + 0x00000018u;
|
|
/* 023927DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t96);
|
|
/* 023927E0 */ _t97 = cpu->r[1] + 0x00000040u;
|
|
/* 023927E0 */ rbrew_write32(cpu->mem, _t97, cpu->r[8]);
|
|
/* 023927E4 */ _t98 = cpu->r[1] + 0x0000003Cu;
|
|
/* 023927E4 */ rbrew_write32(cpu->mem, _t98, cpu->r[0]);
|
|
/* 023927E8 */ _t99 = cpu->r[17] + 0x00000078u;
|
|
/* 023927E8 */ rbrew_write_f32(cpu->mem, _t99, cpu->f[13]);
|
|
/* 023927EC */ _t100 = cpu->r[1] + 0x0000003Cu;
|
|
/* 023927EC */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t100);
|
|
/* 023927F0 */ _t101 = cpu->r[17] + 0x0000007Cu;
|
|
/* 023927F0 */ rbrew_write_f32(cpu->mem, _t101, cpu->f[6]);
|
|
/* 023927F4 */ _t102 = cpu->r[1] + 0x00000040u;
|
|
/* 023927F4 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t102);
|
|
/* 023927F8 */ cpu->r[3] = cpu->r[17];
|
|
/* 023927FC */ _t103 = cpu->r[17] + 0x00000080u;
|
|
/* 023927FC */ rbrew_write_f32(cpu->mem, _t103, cpu->f[8]);
|
|
/* 02392800 */ Gambit_fn_024F670C(cpu);
|
|
/* 02392804 */ goto L_02392A34;
|
|
L_02392808: ; // 0x2392808
|
|
/* 02392808 */ _t104 = cpu->r[25] + 0x00000018u;
|
|
/* 02392808 */ cpu->r[9] = rbrew_read32(cpu->mem, _t104);
|
|
/* 0239280C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02392810 */ _t105 = cpu->r[22] + 0x00000000u;
|
|
/* 02392810 */ cpu->r[17] = rbrew_read32(cpu->mem, _t105);
|
|
/* 02392814 */ _t106 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02392814 */ _t107 = _t106 & 0x00000001u;
|
|
/* 02392814 */ if (_t107) goto L_02392818; else goto L_0239282C;
|
|
L_02392818: ; // 0x2392818
|
|
/* 02392818 */ cpu->r[10] = 0x10080000u;
|
|
/* 0239281C */ cpu->r[12] = 0x00000001u;
|
|
/* 02392820 */ cpu->r[10] = cpu->r[10] + 0x000064C8u;
|
|
/* 02392824 */ _t108 = cpu->r[25] + 0x00000018u;
|
|
/* 02392824 */ rbrew_write32(cpu->mem, _t108, cpu->r[12]);
|
|
/* 02392828 */ _t109 = cpu->r[20] + 0x00000014u;
|
|
/* 02392828 */ rbrew_write32(cpu->mem, _t109, cpu->r[10]);
|
|
L_0239282C: ; // 0x239282c
|
|
/* 0239282C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[17], 0x00000000u);
|
|
/* 02392830 */ _t110 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02392830 */ _t111 = _t110 & 0x00000001u;
|
|
/* 02392830 */ if (_t111) goto L_02392870; else goto L_02392834;
|
|
L_02392834: ; // 0x2392834
|
|
/* 02392834 */ _t112 = cpu->r[17] + 0x00000004u;
|
|
/* 02392834 */ cpu->r[11] = rbrew_read32(cpu->mem, _t112);
|
|
/* 02392838 */ _t113 = cpu->r[11] + 0x00000014u;
|
|
/* 02392838 */ cpu->r[12] = rbrew_read32(cpu->mem, _t113);
|
|
/* 0239283C */ cpu->ctr = cpu->r[12];
|
|
/* 02392840 */ cpu->r[3] = cpu->r[17];
|
|
/* 02392844 */ cpu->r[4] = cpu->r[20] + 0x00000014u;
|
|
/* 02392848 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0239284C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02392850 */ _t114 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02392850 */ _t115 = _t114 & 0x00000001u;
|
|
/* 02392850 */ if (_t115) goto L_02392870; else goto L_02392854;
|
|
L_02392854: ; // 0x2392854
|
|
/* 02392854 */ cpu->r[3] = cpu->r[17];
|
|
/* 02392854 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02392858 */ _t116 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02392858 */ _t117 = _t116 & 0x00000001u;
|
|
/* 02392858 */ if (_t117) goto L_02392870; else goto L_0239285C;
|
|
L_0239285C: ; // 0x239285c
|
|
/* 0239285C */ _t118 = cpu->r[23] + 0x0000003Cu;
|
|
/* 0239285C */ cpu->r[5] = rbrew_read8(cpu->mem, _t118);
|
|
/* 02392860 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 02392864 */ _t119 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02392864 */ _t120 = _t119 & 0x00000001u;
|
|
/* 02392864 */ if (_t120) goto L_02392870; else goto L_02392868;
|
|
L_02392868: ; // 0x2392868
|
|
/* 02392868 */ cpu->r[4] = cpu->r[1] + 0x0000002Cu;
|
|
/* 0239286C */ Gambit_fn_02274598(cpu);
|
|
L_02392870: ; // 0x2392870
|
|
/* 02392870 */ _t121 = cpu->r[26] + 0xFFFFDAC0u;
|
|
/* 02392870 */ cpu->r[6] = rbrew_read32(cpu->mem, _t121);
|
|
/* 02392874 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 02392878 */ _t122 = cpu->r[22] + 0x00000000u;
|
|
/* 02392878 */ cpu->r[17] = rbrew_read32(cpu->mem, _t122);
|
|
/* 0239287C */ _t123 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239287C */ _t124 = _t123 & 0x00000001u;
|
|
/* 0239287C */ if (_t124) goto L_02392880; else goto L_0239288C;
|
|
L_02392880: ; // 0x2392880
|
|
/* 02392880 */ cpu->r[11] = 0x00000001u;
|
|
/* 02392884 */ _t125 = cpu->r[19] + 0xFFFFFBC4u;
|
|
/* 02392884 */ rbrew_write32(cpu->mem, _t125, cpu->r[31]);
|
|
/* 02392888 */ _t126 = cpu->r[26] + 0xFFFFDAC0u;
|
|
/* 02392888 */ rbrew_write32(cpu->mem, _t126, cpu->r[11]);
|
|
L_0239288C: ; // 0x239288c
|
|
/* 0239288C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[17], 0x00000000u);
|
|
/* 02392890 */ _t127 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02392890 */ _t128 = _t127 & 0x00000001u;
|
|
/* 02392890 */ if (_t128) goto L_023928D8; else goto L_02392894;
|
|
L_02392894: ; // 0x2392894
|
|
/* 02392894 */ _t129 = cpu->r[17] + 0x00000004u;
|
|
/* 02392894 */ cpu->r[7] = rbrew_read32(cpu->mem, _t129);
|
|
/* 02392898 */ _t130 = cpu->r[7] + 0x00000014u;
|
|
/* 02392898 */ cpu->r[0] = rbrew_read32(cpu->mem, _t130);
|
|
/* 0239289C */ cpu->ctr = cpu->r[0];
|
|
/* 023928A0 */ cpu->r[3] = cpu->r[17];
|
|
/* 023928A4 */ cpu->r[4] = cpu->r[19] + 0xFFFFFBC4u;
|
|
/* 023928A8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 023928AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023928B0 */ _t131 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023928B0 */ _t132 = _t131 & 0x00000001u;
|
|
/* 023928B0 */ if (_t132) goto L_023928D8; else goto L_023928B4;
|
|
L_023928B4: ; // 0x23928b4
|
|
/* 023928B4 */ cpu->r[3] = cpu->r[17];
|
|
/* 023928B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023928B8 */ _t133 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023928B8 */ _t134 = _t133 & 0x00000001u;
|
|
/* 023928B8 */ if (_t134) goto L_023928D8; else goto L_023928BC;
|
|
L_023928BC: ; // 0x23928bc
|
|
/* 023928BC */ _t135 = cpu->r[1] + 0x00000008u;
|
|
/* 023928BC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t135);
|
|
/* 023928C0 */ _t136 = cpu->r[3] + 0x00000140u;
|
|
/* 023928C0 */ rbrew_write_f32(cpu->mem, _t136, cpu->f[11]);
|
|
/* 023928C4 */ _t137 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023928C4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t137);
|
|
/* 023928C8 */ _t138 = cpu->r[3] + 0x00000144u;
|
|
/* 023928C8 */ rbrew_write_f32(cpu->mem, _t138, cpu->f[13]);
|
|
/* 023928CC */ _t139 = cpu->r[1] + 0x00000010u;
|
|
/* 023928CC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t139);
|
|
/* 023928D0 */ _t140 = cpu->r[3] + 0x00000148u;
|
|
/* 023928D0 */ rbrew_write_f32(cpu->mem, _t140, cpu->f[10]);
|
|
/* 023928D4 */ Gambit_fn_0227267C(cpu);
|
|
L_023928D8: ; // 0x23928d8
|
|
/* 023928D8 */ _t141 = cpu->r[27] + 0xFFFFDD80u;
|
|
/* 023928D8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t141);
|
|
/* 023928DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 023928E0 */ _t142 = cpu->r[22] + 0x00000000u;
|
|
/* 023928E0 */ cpu->r[17] = rbrew_read32(cpu->mem, _t142);
|
|
/* 023928E4 */ _t143 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023928E4 */ _t144 = _t143 & 0x00000001u;
|
|
/* 023928E4 */ if (_t144) goto L_023928E8; else goto L_023928F4;
|
|
L_023928E8: ; // 0x23928e8
|
|
/* 023928E8 */ cpu->r[10] = 0x00000001u;
|
|
/* 023928EC */ _t145 = cpu->r[18] + 0x00000444u;
|
|
/* 023928EC */ rbrew_write32(cpu->mem, _t145, cpu->r[31]);
|
|
/* 023928F0 */ _t146 = cpu->r[27] + 0xFFFFDD80u;
|
|
/* 023928F0 */ rbrew_write32(cpu->mem, _t146, cpu->r[10]);
|
|
L_023928F4: ; // 0x23928f4
|
|
/* 023928F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[17], 0x00000000u);
|
|
/* 023928F8 */ _t147 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023928F8 */ _t148 = _t147 & 0x00000001u;
|
|
/* 023928F8 */ if (_t148) goto L_02392A34; else goto L_023928FC;
|
|
L_023928FC: ; // 0x23928fc
|
|
/* 023928FC */ _t149 = cpu->r[17] + 0x00000004u;
|
|
/* 023928FC */ cpu->r[10] = rbrew_read32(cpu->mem, _t149);
|
|
/* 02392900 */ _t150 = cpu->r[10] + 0x00000014u;
|
|
/* 02392900 */ cpu->r[11] = rbrew_read32(cpu->mem, _t150);
|
|
/* 02392904 */ cpu->ctr = cpu->r[11];
|
|
/* 02392908 */ cpu->r[3] = cpu->r[17];
|
|
/* 0239290C */ cpu->r[4] = cpu->r[18] + 0x00000444u;
|
|
/* 02392910 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02392914 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02392918 */ _t151 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02392918 */ _t152 = _t151 & 0x00000001u;
|
|
/* 02392918 */ if (_t152) goto L_02392A34; else goto L_0239291C;
|
|
L_0239291C: ; // 0x239291c
|
|
/* 0239291C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[17], 0x00000000u);
|
|
/* 02392920 */ _t153 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02392920 */ _t154 = _t153 & 0x00000001u;
|
|
/* 02392920 */ if (_t154) goto L_02392A34; else goto L_02392924;
|
|
L_02392924: ; // 0x2392924
|
|
/* 02392924 */ _t155 = cpu->r[17] + 0x000000C4u;
|
|
/* 02392924 */ cpu->r[4] = rbrew_read32(cpu->mem, _t155);
|
|
/* 02392928 */ cpu->r[4] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x00000000u, 0x00000000u);
|
|
/* 02392928 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 0239292C */ _t156 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239292C */ _t157 = _t156 & 0x00000001u;
|
|
/* 0239292C */ if (_t157) goto L_02392A34; else goto L_02392930;
|
|
L_02392930: ; // 0x2392930
|
|
/* 02392930 */ _t158 = cpu->r[23] + 0x00000020u;
|
|
/* 02392930 */ cpu->r[0] = rbrew_read32(cpu->mem, _t158);
|
|
/* 02392934 */ _t159 = cpu->r[23] + 0x00000004u;
|
|
/* 02392934 */ cpu->r[15] = rbrew_read32(cpu->mem, _t159);
|
|
/* 02392938 */ _t160 = cpu->r[1] + 0x00000040u;
|
|
/* 02392938 */ rbrew_write32(cpu->mem, _t160, cpu->r[0]);
|
|
/* 0239293C */ _t161 = cpu->r[23] + 0x0000001Cu;
|
|
/* 0239293C */ cpu->r[7] = rbrew_read32(cpu->mem, _t161);
|
|
/* 02392940 */ _t162 = cpu->r[23] + 0x00000000u;
|
|
/* 02392940 */ cpu->r[16] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t162);
|
|
/* 02392944 */ _t163 = cpu->r[23] + 0x00000018u;
|
|
/* 02392944 */ cpu->r[6] = rbrew_read32(cpu->mem, _t163);
|
|
/* 02392948 */ cpu->r[3] = cpu->r[15];
|
|
/* 0239294C */ _t164 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0239294C */ rbrew_write32(cpu->mem, _t164, cpu->r[7]);
|
|
/* 02392950 */ cpu->r[4] = cpu->r[16];
|
|
/* 02392954 */ _t165 = cpu->r[1] + 0x00000038u;
|
|
/* 02392954 */ rbrew_write32(cpu->mem, _t165, cpu->r[6]);
|
|
/* 02392958 */ Gambit_fn_0297FC7C(cpu);
|
|
/* 0239295C */ _t166 = cpu->r[15] + 0x0000001Cu;
|
|
/* 0239295C */ cpu->r[8] = rbrew_read32(cpu->mem, _t166);
|
|
/* 02392960 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[16], cpu->r[8]);
|
|
/* 02392964 */ cpu->r[8] = 0x00000000u;
|
|
/* 02392968 */ _t167 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02392968 */ _t168 = _t167 & 0x00000001u;
|
|
/* 02392968 */ if (_t168) goto L_0239296C; else goto L_02392978;
|
|
L_0239296C: ; // 0x239296c
|
|
/* 0239296C */ _t169 = cpu->r[15] + 0x00000024u;
|
|
/* 0239296C */ cpu->r[10] = rbrew_read32(cpu->mem, _t169);
|
|
/* 02392970 */ cpu->r[9] = rbrew_rlwinm(cpu->r[16], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02392974 */ _t170 = cpu->r[9] + cpu->r[10];
|
|
/* 02392974 */ cpu->r[8] = rbrew_read32(cpu->mem, _t170);
|
|
L_02392978: ; // 0x2392978
|
|
/* 02392978 */ _t171 = cpu->r[8] + 0x00000000u;
|
|
/* 02392978 */ cpu->r[3] = rbrew_read32(cpu->mem, _t171);
|
|
/* 0239297C */ _t172 = cpu->r[3] + 0x00000088u;
|
|
/* 0239297C */ cpu->r[11] = rbrew_read32(cpu->mem, _t172);
|
|
/* 02392980 */ _t173 = cpu->r[11] + 0x0000007Cu;
|
|
/* 02392980 */ cpu->r[12] = rbrew_read32(cpu->mem, _t173);
|
|
/* 02392984 */ _t174 = cpu->r[23] + 0x00000002u;
|
|
/* 02392984 */ cpu->r[4] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t174);
|
|
/* 02392988 */ cpu->ctr = cpu->r[12];
|
|
/* 0239298C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02392990 */ cpu->r[0] = 0x00000003u;
|
|
/* 02392994 */ cpu->r[4] = cpu->r[3] + 0xFFFFFFFCu;
|
|
/* 02392998 */ cpu->ctr = cpu->r[0];
|
|
/* 0239299C */ cpu->r[5] = cpu->r[1] + 0x00000064u;
|
|
L_023929A0: ; // 0x23929a0
|
|
/* 023929A0 */ _t175 = cpu->r[4] + 0x00000004u;
|
|
/* 023929A0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t175);
|
|
/* 023929A4 */ _t176 = cpu->r[5] + 0x00000004u;
|
|
/* 023929A4 */ rbrew_write32(cpu->mem, _t176, cpu->r[7]);
|
|
/* 023929A8 */ _t177 = cpu->r[4] + 0x00000008u;
|
|
/* 023929A8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t177);
|
|
/* 023929AC */ _t178 = cpu->r[5] + 0x00000008u;
|
|
/* 023929AC */ rbrew_write32(cpu->mem, _t178, cpu->r[8]);
|
|
/* 023929B0 */ _t179 = cpu->r[4] + 0x0000000Cu;
|
|
/* 023929B0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t179);
|
|
/* 023929B4 */ _t180 = cpu->r[5] + 0x0000000Cu;
|
|
/* 023929B4 */ rbrew_write32(cpu->mem, _t180, cpu->r[9]);
|
|
/* 023929B8 */ _t181 = cpu->r[4] + 0x00000010u;
|
|
/* 023929B8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t181);
|
|
/* 023929B8 */ cpu->r[4] = _t181;
|
|
/* 023929BC */ _t182 = cpu->r[5] + 0x00000010u;
|
|
/* 023929BC */ rbrew_write32(cpu->mem, _t182, cpu->r[10]);
|
|
/* 023929BC */ cpu->r[5] = _t182;
|
|
/* 023929C0 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 023929C0 */ _t183 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 023929C0 */ _t184 = _t183 >> (0x00000002u & 31u);
|
|
/* 023929C0 */ _t185 = _t184 & 0x00000001u;
|
|
/* 023929C0 */ if (_t185) goto L_023929A0; else goto L_023929C4;
|
|
L_023929C4: ; // 0x23929c4
|
|
/* 023929C4 */ cpu->r[3] = cpu->r[1] + 0x00000068u;
|
|
/* 023929C8 */ cpu->r[4] = cpu->r[30] + 0x00006338u;
|
|
/* 023929CC */ Gambit_fn_021620C4(cpu);
|
|
/* 023929D0 */ cpu->r[5] = cpu->r[29];
|
|
/* 023929D4 */ cpu->r[4] = cpu->r[29];
|
|
/* 023929D8 */ cpu->r[3] = cpu->r[1] + 0x00000068u;
|
|
/* 023929DC */ Gambit_fn_02C69468(cpu);
|
|
/* 023929E0 */ /* nop */
|
|
/* 023929E4 */ /* nop */
|
|
/* 023929E8 */ _t186 = cpu->r[1] + 0x00000040u;
|
|
/* 023929E8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t186);
|
|
/* 023929EC */ /* nop */
|
|
/* 023929F0 */ _t187 = cpu->r[1] + 0x00000010u;
|
|
/* 023929F0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t187);
|
|
/* 023929F4 */ cpu->f[9] = cpu->f[10] + cpu->f[12];
|
|
/* 023929F8 */ /* nop */
|
|
/* 023929FC */ _t188 = cpu->r[1] + 0x00000020u;
|
|
/* 023929FC */ cpu->r[12] = rbrew_read32(cpu->mem, _t188);
|
|
/* 02392A00 */ _t189 = cpu->r[1] + 0x00000028u;
|
|
/* 02392A00 */ rbrew_write_f32(cpu->mem, _t189, cpu->f[9]);
|
|
/* 02392A04 */ _t190 = cpu->r[17] + 0x00000078u;
|
|
/* 02392A04 */ rbrew_write32(cpu->mem, _t190, cpu->r[12]);
|
|
/* 02392A08 */ _t191 = cpu->r[1] + 0x00000024u;
|
|
/* 02392A08 */ cpu->r[0] = rbrew_read32(cpu->mem, _t191);
|
|
/* 02392A0C */ _t192 = cpu->r[17] + 0x0000007Cu;
|
|
/* 02392A0C */ rbrew_write32(cpu->mem, _t192, cpu->r[0]);
|
|
/* 02392A10 */ _t193 = cpu->r[1] + 0x00000028u;
|
|
/* 02392A10 */ cpu->r[6] = rbrew_read32(cpu->mem, _t193);
|
|
/* 02392A14 */ cpu->r[3] = cpu->r[17];
|
|
/* 02392A18 */ _t194 = cpu->r[17] + 0x00000080u;
|
|
/* 02392A18 */ rbrew_write32(cpu->mem, _t194, cpu->r[6]);
|
|
/* 02392A1C */ Gambit_fn_024078DC(cpu);
|
|
/* 02392A20 */ _t195 = cpu->r[17] + 0x00000004u;
|
|
/* 02392A20 */ cpu->r[9] = rbrew_read32(cpu->mem, _t195);
|
|
/* 02392A24 */ _t196 = cpu->r[9] + 0x00000064u;
|
|
/* 02392A24 */ cpu->r[10] = rbrew_read32(cpu->mem, _t196);
|
|
/* 02392A28 */ cpu->ctr = cpu->r[10];
|
|
/* 02392A2C */ cpu->r[3] = cpu->r[17];
|
|
/* 02392A30 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02392A34: ; // 0x2392a34
|
|
/* 02392A34 */ cpu->r[22] = cpu->r[22] + 0x00000004u;
|
|
/* 02392A38 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[22], cpu->r[14]);
|
|
/* 02392A3C */ _t197 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02392A3C */ _t198 = _t197 & 0x00000001u;
|
|
/* 02392A3C */ if (_t198) goto L_02392A40; else goto L_02392684;
|
|
L_02392A40: ; // 0x2392a40
|
|
/* 02392A40 */ _t199 = cpu->r[1] + 0x00000010u;
|
|
/* 02392A40 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t199);
|
|
/* 02392A44 */ _t200 = cpu->r[1] + 0x00000008u;
|
|
/* 02392A44 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t200);
|
|
/* 02392A48 */ _t201 = cpu->r[23] + 0x00000038u;
|
|
/* 02392A48 */ rbrew_write_f32(cpu->mem, _t201, cpu->f[10]);
|
|
/* 02392A4C */ _t202 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02392A4C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t202);
|
|
/* 02392A50 */ _t203 = cpu->r[23] + 0x00000030u;
|
|
/* 02392A50 */ rbrew_write_f32(cpu->mem, _t203, cpu->f[7]);
|
|
/* 02392A54 */ cpu->r[12] = 0x00000001u;
|
|
/* 02392A58 */ _t204 = cpu->r[23] + 0x00000034u;
|
|
/* 02392A58 */ rbrew_write_f32(cpu->mem, _t204, cpu->f[9]);
|
|
/* 02392A5C */ _t205 = cpu->r[23] + 0x0000003Cu;
|
|
/* 02392A5C */ rbrew_write8(cpu->mem, _t205, (uint8_t)cpu->r[12]);
|
|
/* 02392A60 */ /* nop */
|
|
/* 02392A64 */ _t206 = cpu->r[1] + 0x000000E4u;
|
|
/* 02392A64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t206);
|
|
/* 02392A68 */ cpu->lr = cpu->r[0];
|
|
/* 02392A6C */ cpu->r[1] = cpu->r[1] + 0x000000E0u;
|
|
/* 02392A70 */ return;
|
|
}
|
|
|
|
// fn_02392A74 @ 0x2392a74
|
|
void Gambit_fn_02392A74(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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;
|
|
|
|
L_02392A74: ; // 0x2392a74
|
|
/* 02392A74 */ _t0 = cpu->r[1] + 0xFFFFFEE8u;
|
|
/* 02392A74 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02392A74 */ cpu->r[1] = _t0;
|
|
/* 02392A78 */ /* nop */
|
|
/* 02392A7C */ cpu->r[0] = cpu->lr;
|
|
/* 02392A80 */ _t1 = cpu->r[1] + 0x0000011Cu;
|
|
/* 02392A80 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02392A84 */ cpu->r[12] = 0x10080000u;
|
|
/* 02392A88 */ _t2 = cpu->r[12] + 0x000064D8u;
|
|
/* 02392A88 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 02392A8C */ cpu->r[31] = cpu->r[3];
|
|
/* 02392A90 */ _t3 = cpu->r[31] + 0x00000000u;
|
|
/* 02392A90 */ cpu->r[30] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t3);
|
|
/* 02392A94 */ _t4 = cpu->r[31] + 0x00000004u;
|
|
/* 02392A94 */ cpu->r[29] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02392A98 */ cpu->r[4] = cpu->r[30];
|
|
/* 02392A9C */ _t5 = cpu->r[1] + 0x00000060u;
|
|
/* 02392A9C */ rbrew_write_f32(cpu->mem, _t5, cpu->f[0]);
|
|
/* 02392AA0 */ cpu->r[3] = cpu->r[29];
|
|
/* 02392AA4 */ _t6 = cpu->r[1] + 0x00000068u;
|
|
/* 02392AA4 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[0]);
|
|
/* 02392AA8 */ _t7 = cpu->r[1] + 0x00000064u;
|
|
/* 02392AA8 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[0]);
|
|
/* 02392AAC */ Gambit_fn_0297FC7C(cpu);
|
|
/* 02392AB0 */ _t8 = cpu->r[29] + 0x0000001Cu;
|
|
/* 02392AB0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02392AB4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[6]);
|
|
/* 02392AB8 */ cpu->r[4] = 0x00000000u;
|
|
/* 02392ABC */ _t9 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02392ABC */ _t10 = _t9 & 0x00000001u;
|
|
/* 02392ABC */ if (_t10) goto L_02392AC0; else goto L_02392ACC;
|
|
L_02392AC0: ; // 0x2392ac0
|
|
/* 02392AC0 */ _t11 = cpu->r[29] + 0x00000024u;
|
|
/* 02392AC0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02392AC4 */ cpu->r[7] = rbrew_rlwinm(cpu->r[30], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02392AC8 */ _t12 = cpu->r[7] + cpu->r[8];
|
|
/* 02392AC8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t12);
|
|
L_02392ACC: ; // 0x2392acc
|
|
/* 02392ACC */ _t13 = cpu->r[4] + 0x00000000u;
|
|
/* 02392ACC */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02392AD0 */ _t14 = cpu->r[3] + 0x00000088u;
|
|
/* 02392AD0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02392AD4 */ _t15 = cpu->r[10] + 0x0000007Cu;
|
|
/* 02392AD4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02392AD8 */ cpu->ctr = cpu->r[11];
|
|
/* 02392ADC */ _t16 = cpu->r[31] + 0x00000002u;
|
|
/* 02392ADC */ cpu->r[4] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t16);
|
|
/* 02392AE0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02392AE4 */ cpu->r[24] = cpu->r[3];
|
|
/* 02392AE8 */ cpu->r[3] = cpu->r[1] + 0x0000003Cu;
|
|
/* 02392AEC */ cpu->r[4] = cpu->r[24];
|
|
/* 02392AF0 */ Gambit_fn_0200D450(cpu);
|
|
/* 02392AF4 */ _t17 = cpu->r[31] + 0x0000003Cu;
|
|
/* 02392AF4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t17);
|
|
/* 02392AF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02392AFC */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02392AFC */ _t19 = _t18 & 0x00000001u;
|
|
/* 02392AFC */ if (_t19) goto L_02392B50; else goto L_02392B00;
|
|
L_02392B00: ; // 0x2392b00
|
|
/* 02392B00 */ /* nop */
|
|
/* 02392B04 */ /* nop */
|
|
/* 02392B08 */ _t20 = cpu->r[1] + 0x00000044u;
|
|
/* 02392B08 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 02392B0C */ /* nop */
|
|
/* 02392B10 */ /* nop */
|
|
/* 02392B14 */ _t21 = cpu->r[1] + 0x00000088u;
|
|
/* 02392B14 */ cpu->r[7] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02392B18 */ _t22 = cpu->r[31] + 0x00000038u;
|
|
/* 02392B18 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 02392B1C */ _t23 = cpu->r[1] + 0x00000084u;
|
|
/* 02392B1C */ cpu->r[6] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02392B20 */ cpu->f[6] = cpu->f[7] - cpu->f[8];
|
|
/* 02392B24 */ _t24 = cpu->r[1] + 0x00000094u;
|
|
/* 02392B24 */ rbrew_write32(cpu->mem, _t24, cpu->r[7]);
|
|
/* 02392B28 */ _t25 = cpu->r[1] + 0x00000094u;
|
|
/* 02392B28 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 02392B2C */ _t26 = cpu->r[1] + 0x00000090u;
|
|
/* 02392B2C */ rbrew_write32(cpu->mem, _t26, cpu->r[6]);
|
|
/* 02392B30 */ _t27 = cpu->r[1] + 0x00000090u;
|
|
/* 02392B30 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 02392B34 */ _t28 = cpu->r[1] + 0x0000008Cu;
|
|
/* 02392B34 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[6]);
|
|
/* 02392B38 */ _t29 = cpu->r[1] + 0x0000008Cu;
|
|
/* 02392B38 */ cpu->r[9] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02392B3C */ _t30 = cpu->r[1] + 0x00000060u;
|
|
/* 02392B3C */ rbrew_write_f32(cpu->mem, _t30, cpu->f[9]);
|
|
/* 02392B40 */ _t31 = cpu->r[1] + 0x00000098u;
|
|
/* 02392B40 */ rbrew_write32(cpu->mem, _t31, cpu->r[9]);
|
|
/* 02392B44 */ _t32 = cpu->r[1] + 0x00000098u;
|
|
/* 02392B44 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 02392B48 */ _t33 = cpu->r[1] + 0x00000064u;
|
|
/* 02392B48 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[10]);
|
|
/* 02392B4C */ _t34 = cpu->r[1] + 0x00000068u;
|
|
/* 02392B4C */ rbrew_write_f32(cpu->mem, _t34, cpu->f[11]);
|
|
L_02392B50: ; // 0x2392b50
|
|
/* 02392B50 */ _t35 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02392B50 */ cpu->r[7] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02392B54 */ _t36 = cpu->r[31] + 0x00000014u;
|
|
/* 02392B54 */ cpu->r[23] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02392B58 */ cpu->r[5] = rbrew_rlwinm(cpu->r[7], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02392B5C */ cpu->r[0] = cpu->r[23] + cpu->r[5];
|
|
/* 02392B60 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[23], cpu->r[0]);
|
|
/* 02392B64 */ _t37 = cpu->r[1] + 0x00000008u;
|
|
/* 02392B64 */ rbrew_write32(cpu->mem, _t37, cpu->r[0]);
|
|
/* 02392B68 */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02392B68 */ _t39 = _t38 & 0x00000001u;
|
|
/* 02392B68 */ if (_t39) goto L_023930A8; else goto L_02392B6C;
|
|
L_02392B6C: ; // 0x2392b6c
|
|
/* 02392B6C */ cpu->r[30] = 0x10080000u;
|
|
/* 02392B70 */ cpu->r[29] = 0x101F0000u;
|
|
/* 02392B74 */ cpu->r[30] = cpu->r[30] + 0x000064B8u;
|
|
/* 02392B78 */ cpu->r[28] = cpu->r[1] + 0x00000078u;
|
|
/* 02392B7C */ cpu->r[27] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02392B80 */ cpu->r[26] = 0x101D0000u;
|
|
/* 02392B84 */ cpu->r[25] = 0x101D0000u;
|
|
/* 02392B88 */ cpu->r[22] = 0x101D0000u;
|
|
/* 02392B8C */ cpu->r[21] = 0x101D0000u;
|
|
/* 02392B90 */ cpu->r[20] = 0x101D0000u;
|
|
/* 02392B94 */ cpu->r[19] = 0x101D0000u;
|
|
/* 02392B98 */ cpu->r[17] = 0x101D0000u;
|
|
/* 02392B9C */ cpu->r[14] = 0x101D0000u;
|
|
L_02392BA0: ; // 0x2392ba0
|
|
/* 02392BA0 */ _t40 = cpu->r[23] + 0x00000000u;
|
|
/* 02392BA0 */ cpu->r[18] = rbrew_read32(cpu->mem, _t40);
|
|
/* 02392BA4 */ _t41 = cpu->r[18] + 0x0000001Cu;
|
|
/* 02392BA4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t41);
|
|
/* 02392BA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000002u);
|
|
/* 02392BAC */ _t42 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02392BAC */ _t43 = _t42 & 0x00000001u;
|
|
/* 02392BAC */ if (_t43) goto L_02392BB8; else goto L_02392BB0;
|
|
L_02392BB0: ; // 0x2392bb0
|
|
/* 02392BB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000003u);
|
|
/* 02392BB4 */ _t44 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02392BB4 */ _t45 = _t44 & 0x00000001u;
|
|
/* 02392BB4 */ if (_t45) goto L_02392BB8; else goto L_02393098;
|
|
L_02392BB8: ; // 0x2392bb8
|
|
/* 02392BB8 */ _t46 = cpu->r[21] + 0xFFFFDA10u;
|
|
/* 02392BB8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t46);
|
|
/* 02392BBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02392BC0 */ _t47 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02392BC0 */ _t48 = _t47 & 0x00000001u;
|
|
/* 02392BC0 */ if (_t48) goto L_02392BC4; else goto L_02392BD0;
|
|
L_02392BC4: ; // 0x2392bc4
|
|
/* 02392BC4 */ cpu->r[11] = 0x00000001u;
|
|
/* 02392BC8 */ _t49 = cpu->r[20] + 0xFFFFFBBCu;
|
|
/* 02392BC8 */ rbrew_write32(cpu->mem, _t49, cpu->r[30]);
|
|
/* 02392BCC */ _t50 = cpu->r[21] + 0xFFFFDA10u;
|
|
/* 02392BCC */ rbrew_write32(cpu->mem, _t50, cpu->r[11]);
|
|
L_02392BD0: ; // 0x2392bd0
|
|
/* 02392BD0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[18], 0x00000000u);
|
|
/* 02392BD4 */ _t51 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02392BD4 */ _t52 = _t51 & 0x00000001u;
|
|
/* 02392BD4 */ if (_t52) goto L_02392DC8; else goto L_02392BD8;
|
|
L_02392BD8: ; // 0x2392bd8
|
|
/* 02392BD8 */ _t53 = cpu->r[18] + 0x00000004u;
|
|
/* 02392BD8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t53);
|
|
/* 02392BDC */ _t54 = cpu->r[10] + 0x00000014u;
|
|
/* 02392BDC */ cpu->r[5] = rbrew_read32(cpu->mem, _t54);
|
|
/* 02392BE0 */ cpu->ctr = cpu->r[5];
|
|
/* 02392BE4 */ cpu->r[3] = cpu->r[18];
|
|
/* 02392BE8 */ cpu->r[4] = cpu->r[20] + 0xFFFFFBBCu;
|
|
/* 02392BEC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02392BF0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02392BF4 */ _t55 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02392BF4 */ _t56 = _t55 & 0x00000001u;
|
|
/* 02392BF4 */ if (_t56) goto L_02392DC8; else goto L_02392BF8;
|
|
L_02392BF8: ; // 0x2392bf8
|
|
/* 02392BF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[18], 0x00000000u);
|
|
/* 02392BFC */ _t57 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02392BFC */ _t58 = _t57 & 0x00000001u;
|
|
/* 02392BFC */ if (_t58) goto L_02392DC8; else goto L_02392C00;
|
|
L_02392C00: ; // 0x2392c00
|
|
/* 02392C00 */ _t59 = cpu->r[31] + 0x0000003Cu;
|
|
/* 02392C00 */ cpu->r[9] = rbrew_read8(cpu->mem, _t59);
|
|
/* 02392C04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02392C08 */ _t60 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02392C08 */ _t61 = _t60 & 0x00000001u;
|
|
/* 02392C08 */ if (_t61) goto L_02392C18; else goto L_02392C0C;
|
|
L_02392C0C: ; // 0x2392c0c
|
|
/* 02392C0C */ cpu->r[3] = cpu->r[18];
|
|
/* 02392C10 */ cpu->r[4] = cpu->r[1] + 0x00000060u;
|
|
/* 02392C14 */ Gambit_fn_024F5688(cpu);
|
|
L_02392C18: ; // 0x2392c18
|
|
/* 02392C18 */ _t62 = cpu->r[31] + 0x0000002Cu;
|
|
/* 02392C18 */ cpu->r[5] = rbrew_read32(cpu->mem, _t62);
|
|
/* 02392C1C */ _t63 = cpu->r[31] + 0x00000004u;
|
|
/* 02392C1C */ cpu->r[15] = rbrew_read32(cpu->mem, _t63);
|
|
/* 02392C20 */ _t64 = cpu->r[1] + 0x00000080u;
|
|
/* 02392C20 */ rbrew_write32(cpu->mem, _t64, cpu->r[5]);
|
|
/* 02392C24 */ _t65 = cpu->r[31] + 0x00000028u;
|
|
/* 02392C24 */ cpu->r[12] = rbrew_read32(cpu->mem, _t65);
|
|
/* 02392C28 */ _t66 = cpu->r[31] + 0x00000000u;
|
|
/* 02392C28 */ cpu->r[16] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t66);
|
|
/* 02392C2C */ _t67 = cpu->r[31] + 0x00000024u;
|
|
/* 02392C2C */ cpu->r[11] = rbrew_read32(cpu->mem, _t67);
|
|
/* 02392C30 */ cpu->r[3] = cpu->r[15];
|
|
/* 02392C34 */ _t68 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02392C34 */ rbrew_write32(cpu->mem, _t68, cpu->r[12]);
|
|
/* 02392C38 */ cpu->r[4] = cpu->r[16];
|
|
/* 02392C3C */ _t69 = cpu->r[1] + 0x00000078u;
|
|
/* 02392C3C */ rbrew_write32(cpu->mem, _t69, cpu->r[11]);
|
|
/* 02392C40 */ Gambit_fn_0297FC7C(cpu);
|
|
/* 02392C44 */ _t70 = cpu->r[15] + 0x0000001Cu;
|
|
/* 02392C44 */ cpu->r[6] = rbrew_read32(cpu->mem, _t70);
|
|
/* 02392C48 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[16], cpu->r[6]);
|
|
/* 02392C4C */ cpu->r[4] = 0x00000000u;
|
|
/* 02392C50 */ _t71 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02392C50 */ _t72 = _t71 & 0x00000001u;
|
|
/* 02392C50 */ if (_t72) goto L_02392C54; else goto L_02392C60;
|
|
L_02392C54: ; // 0x2392c54
|
|
/* 02392C54 */ _t73 = cpu->r[15] + 0x00000024u;
|
|
/* 02392C54 */ cpu->r[0] = rbrew_read32(cpu->mem, _t73);
|
|
/* 02392C58 */ cpu->r[8] = rbrew_rlwinm(cpu->r[16], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02392C5C */ _t74 = cpu->r[8] + cpu->r[0];
|
|
/* 02392C5C */ cpu->r[4] = rbrew_read32(cpu->mem, _t74);
|
|
L_02392C60: ; // 0x2392c60
|
|
/* 02392C60 */ _t75 = cpu->r[4] + 0x00000000u;
|
|
/* 02392C60 */ cpu->r[3] = rbrew_read32(cpu->mem, _t75);
|
|
/* 02392C64 */ _t76 = cpu->r[3] + 0x00000088u;
|
|
/* 02392C64 */ cpu->r[11] = rbrew_read32(cpu->mem, _t76);
|
|
/* 02392C68 */ _t77 = cpu->r[11] + 0x0000007Cu;
|
|
/* 02392C68 */ cpu->r[12] = rbrew_read32(cpu->mem, _t77);
|
|
/* 02392C6C */ _t78 = cpu->r[31] + 0x00000002u;
|
|
/* 02392C6C */ cpu->r[4] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t78);
|
|
/* 02392C70 */ cpu->ctr = cpu->r[12];
|
|
/* 02392C74 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02392C78 */ cpu->r[8] = 0x00000003u;
|
|
/* 02392C7C */ cpu->r[6] = cpu->r[3] + 0xFFFFFFFCu;
|
|
/* 02392C80 */ cpu->ctr = cpu->r[8];
|
|
/* 02392C84 */ cpu->r[7] = cpu->r[1] + 0x00000098u;
|
|
L_02392C88: ; // 0x2392c88
|
|
/* 02392C88 */ _t79 = cpu->r[6] + 0x00000004u;
|
|
/* 02392C88 */ cpu->r[9] = rbrew_read32(cpu->mem, _t79);
|
|
/* 02392C8C */ _t80 = cpu->r[7] + 0x00000004u;
|
|
/* 02392C8C */ rbrew_write32(cpu->mem, _t80, cpu->r[9]);
|
|
/* 02392C90 */ _t81 = cpu->r[6] + 0x00000008u;
|
|
/* 02392C90 */ cpu->r[10] = rbrew_read32(cpu->mem, _t81);
|
|
/* 02392C94 */ _t82 = cpu->r[7] + 0x00000008u;
|
|
/* 02392C94 */ rbrew_write32(cpu->mem, _t82, cpu->r[10]);
|
|
/* 02392C98 */ _t83 = cpu->r[6] + 0x0000000Cu;
|
|
/* 02392C98 */ cpu->r[11] = rbrew_read32(cpu->mem, _t83);
|
|
/* 02392C9C */ _t84 = cpu->r[7] + 0x0000000Cu;
|
|
/* 02392C9C */ rbrew_write32(cpu->mem, _t84, cpu->r[11]);
|
|
/* 02392CA0 */ _t85 = cpu->r[6] + 0x00000010u;
|
|
/* 02392CA0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t85);
|
|
/* 02392CA0 */ cpu->r[6] = _t85;
|
|
/* 02392CA4 */ _t86 = cpu->r[7] + 0x00000010u;
|
|
/* 02392CA4 */ rbrew_write32(cpu->mem, _t86, cpu->r[12]);
|
|
/* 02392CA4 */ cpu->r[7] = _t86;
|
|
/* 02392CA8 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02392CA8 */ _t87 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02392CA8 */ _t88 = _t87 >> (0x00000002u & 31u);
|
|
/* 02392CA8 */ _t89 = _t88 & 0x00000001u;
|
|
/* 02392CA8 */ if (_t89) goto L_02392C88; else goto L_02392CAC;
|
|
L_02392CAC: ; // 0x2392cac
|
|
/* 02392CAC */ cpu->r[3] = cpu->r[1] + 0x0000009Cu;
|
|
/* 02392CB0 */ cpu->r[4] = cpu->r[29] + 0x00006338u;
|
|
/* 02392CB4 */ Gambit_fn_021620C4(cpu);
|
|
/* 02392CB8 */ cpu->r[3] = cpu->r[1] + 0x0000009Cu;
|
|
/* 02392CBC */ cpu->r[4] = cpu->r[28];
|
|
/* 02392CC0 */ cpu->r[5] = cpu->r[28];
|
|
/* 02392CC4 */ Gambit_fn_02C69468(cpu);
|
|
/* 02392CC8 */ _t90 = cpu->r[24] + 0x00000010u;
|
|
/* 02392CC8 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t90);
|
|
/* 02392CCC */ _t91 = cpu->r[24] + 0x00000000u;
|
|
/* 02392CCC */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t91);
|
|
/* 02392CD0 */ _t92 = cpu->r[24] + 0x00000020u;
|
|
/* 02392CD0 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t92);
|
|
/* 02392CD4 */ _t93 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02392CD4 */ rbrew_write_f32(cpu->mem, _t93, cpu->f[5]);
|
|
/* 02392CD8 */ _t94 = cpu->r[1] + 0x00000010u;
|
|
/* 02392CD8 */ rbrew_write_f32(cpu->mem, _t94, cpu->f[7]);
|
|
/* 02392CDC */ _t95 = cpu->r[1] + 0x00000014u;
|
|
/* 02392CDC */ rbrew_write_f32(cpu->mem, _t95, cpu->f[9]);
|
|
/* 02392CE0 */ _t96 = cpu->r[24] + 0x00000024u;
|
|
/* 02392CE0 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t96);
|
|
/* 02392CE4 */ _t97 = cpu->r[24] + 0x00000014u;
|
|
/* 02392CE4 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t97);
|
|
/* 02392CE8 */ _t98 = cpu->r[24] + 0x00000004u;
|
|
/* 02392CE8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t98);
|
|
/* 02392CEC */ _t99 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02392CEC */ rbrew_write_f32(cpu->mem, _t99, cpu->f[7]);
|
|
/* 02392CF0 */ _t100 = cpu->r[1] + 0x00000020u;
|
|
/* 02392CF0 */ rbrew_write_f32(cpu->mem, _t100, cpu->f[8]);
|
|
/* 02392CF4 */ _t101 = cpu->r[1] + 0x00000018u;
|
|
/* 02392CF4 */ rbrew_write_f32(cpu->mem, _t101, cpu->f[0]);
|
|
/* 02392CF8 */ _t102 = cpu->r[24] + 0x00000018u;
|
|
/* 02392CF8 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t102);
|
|
/* 02392CFC */ _t103 = cpu->r[1] + 0x00000080u;
|
|
/* 02392CFC */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t103);
|
|
/* 02392D00 */ _t104 = cpu->r[24] + 0x00000028u;
|
|
/* 02392D00 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t104);
|
|
/* 02392D04 */ _t105 = cpu->r[24] + 0x00000008u;
|
|
/* 02392D04 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t105);
|
|
/* 02392D08 */ _t106 = cpu->r[1] + 0x00000044u;
|
|
/* 02392D08 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t106);
|
|
/* 02392D0C */ _t107 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02392D0C */ rbrew_write_f32(cpu->mem, _t107, cpu->f[11]);
|
|
/* 02392D10 */ cpu->f[11] = cpu->f[13] + cpu->f[6];
|
|
/* 02392D14 */ _t108 = cpu->r[1] + 0x00000028u;
|
|
/* 02392D14 */ rbrew_write_f32(cpu->mem, _t108, cpu->f[10]);
|
|
/* 02392D18 */ /* nop */
|
|
/* 02392D1C */ /* nop */
|
|
/* 02392D20 */ _t109 = cpu->r[1] + 0x00000050u;
|
|
/* 02392D20 */ rbrew_write_f32(cpu->mem, _t109, cpu->f[11]);
|
|
/* 02392D24 */ _t110 = cpu->r[1] + 0x00000050u;
|
|
/* 02392D24 */ cpu->r[12] = rbrew_read32(cpu->mem, _t110);
|
|
/* 02392D28 */ /* nop */
|
|
/* 02392D2C */ /* nop */
|
|
/* 02392D30 */ _t111 = cpu->r[1] + 0x00000048u;
|
|
/* 02392D30 */ cpu->r[10] = rbrew_read32(cpu->mem, _t111);
|
|
/* 02392D34 */ _t112 = cpu->r[1] + 0x00000074u;
|
|
/* 02392D34 */ rbrew_write32(cpu->mem, _t112, cpu->r[12]);
|
|
/* 02392D38 */ _t113 = cpu->r[1] + 0x00000074u;
|
|
/* 02392D38 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t113);
|
|
/* 02392D3C */ _t114 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02392D3C */ cpu->r[11] = rbrew_read32(cpu->mem, _t114);
|
|
/* 02392D40 */ _t115 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02392D40 */ rbrew_write32(cpu->mem, _t115, cpu->r[10]);
|
|
/* 02392D44 */ _t116 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02392D44 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t116);
|
|
/* 02392D48 */ _t117 = cpu->r[1] + 0x00000070u;
|
|
/* 02392D48 */ rbrew_write32(cpu->mem, _t117, cpu->r[11]);
|
|
/* 02392D4C */ _t118 = cpu->r[1] + 0x00000070u;
|
|
/* 02392D4C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t118);
|
|
/* 02392D50 */ _t119 = cpu->r[1] + 0x00000030u;
|
|
/* 02392D50 */ rbrew_write_f32(cpu->mem, _t119, cpu->f[12]);
|
|
/* 02392D54 */ _t120 = cpu->r[1] + 0x00000034u;
|
|
/* 02392D54 */ rbrew_write_f32(cpu->mem, _t120, cpu->f[13]);
|
|
/* 02392D58 */ _t121 = cpu->r[1] + 0x00000038u;
|
|
/* 02392D58 */ rbrew_write_f32(cpu->mem, _t121, cpu->f[6]);
|
|
/* 02392D5C */ _t122 = cpu->r[1] + 0x00000024u;
|
|
/* 02392D5C */ rbrew_write_f32(cpu->mem, _t122, cpu->f[9]);
|
|
/* 02392D60 */ _t123 = cpu->r[18] + 0x00000054u;
|
|
/* 02392D60 */ rbrew_write_f32(cpu->mem, _t123, cpu->f[5]);
|
|
/* 02392D64 */ _t124 = cpu->r[1] + 0x00000010u;
|
|
/* 02392D64 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t124);
|
|
/* 02392D68 */ _t125 = cpu->r[18] + 0x00000058u;
|
|
/* 02392D68 */ rbrew_write_f32(cpu->mem, _t125, cpu->f[7]);
|
|
/* 02392D6C */ _t126 = cpu->r[1] + 0x00000014u;
|
|
/* 02392D6C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t126);
|
|
/* 02392D70 */ _t127 = cpu->r[18] + 0x0000005Cu;
|
|
/* 02392D70 */ rbrew_write_f32(cpu->mem, _t127, cpu->f[8]);
|
|
/* 02392D74 */ _t128 = cpu->r[1] + 0x00000018u;
|
|
/* 02392D74 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t128);
|
|
/* 02392D78 */ _t129 = cpu->r[18] + 0x00000060u;
|
|
/* 02392D78 */ rbrew_write_f32(cpu->mem, _t129, cpu->f[9]);
|
|
/* 02392D7C */ _t130 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02392D7C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t130);
|
|
/* 02392D80 */ _t131 = cpu->r[18] + 0x00000064u;
|
|
/* 02392D80 */ rbrew_write_f32(cpu->mem, _t131, cpu->f[10]);
|
|
/* 02392D84 */ _t132 = cpu->r[1] + 0x00000020u;
|
|
/* 02392D84 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t132);
|
|
/* 02392D88 */ _t133 = cpu->r[18] + 0x00000068u;
|
|
/* 02392D88 */ rbrew_write_f32(cpu->mem, _t133, cpu->f[11]);
|
|
/* 02392D8C */ _t134 = cpu->r[1] + 0x00000024u;
|
|
/* 02392D8C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t134);
|
|
/* 02392D90 */ _t135 = cpu->r[18] + 0x0000006Cu;
|
|
/* 02392D90 */ rbrew_write_f32(cpu->mem, _t135, cpu->f[12]);
|
|
/* 02392D94 */ _t136 = cpu->r[1] + 0x00000028u;
|
|
/* 02392D94 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t136);
|
|
/* 02392D98 */ _t137 = cpu->r[18] + 0x00000070u;
|
|
/* 02392D98 */ rbrew_write_f32(cpu->mem, _t137, cpu->f[13]);
|
|
/* 02392D9C */ _t138 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02392D9C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t138);
|
|
/* 02392DA0 */ _t139 = cpu->r[18] + 0x00000074u;
|
|
/* 02392DA0 */ rbrew_write_f32(cpu->mem, _t139, cpu->f[0]);
|
|
/* 02392DA4 */ _t140 = cpu->r[1] + 0x00000030u;
|
|
/* 02392DA4 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t140);
|
|
/* 02392DA8 */ _t141 = cpu->r[18] + 0x00000078u;
|
|
/* 02392DA8 */ rbrew_write_f32(cpu->mem, _t141, cpu->f[6]);
|
|
/* 02392DAC */ _t142 = cpu->r[1] + 0x00000034u;
|
|
/* 02392DAC */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t142);
|
|
/* 02392DB0 */ _t143 = cpu->r[18] + 0x0000007Cu;
|
|
/* 02392DB0 */ rbrew_write_f32(cpu->mem, _t143, cpu->f[7]);
|
|
/* 02392DB4 */ _t144 = cpu->r[1] + 0x00000038u;
|
|
/* 02392DB4 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t144);
|
|
/* 02392DB8 */ cpu->r[3] = cpu->r[18];
|
|
/* 02392DBC */ _t145 = cpu->r[18] + 0x00000080u;
|
|
/* 02392DBC */ rbrew_write_f32(cpu->mem, _t145, cpu->f[8]);
|
|
/* 02392DC0 */ Gambit_fn_024F670C(cpu);
|
|
/* 02392DC4 */ goto L_02393098;
|
|
L_02392DC8: ; // 0x2392dc8
|
|
/* 02392DC8 */ _t146 = cpu->r[22] + 0x00000018u;
|
|
/* 02392DC8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t146);
|
|
/* 02392DCC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02392DD0 */ _t147 = cpu->r[23] + 0x00000000u;
|
|
/* 02392DD0 */ cpu->r[18] = rbrew_read32(cpu->mem, _t147);
|
|
/* 02392DD4 */ _t148 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02392DD4 */ _t149 = _t148 & 0x00000001u;
|
|
/* 02392DD4 */ if (_t149) goto L_02392DD8; else goto L_02392DEC;
|
|
L_02392DD8: ; // 0x2392dd8
|
|
/* 02392DD8 */ cpu->r[0] = 0x10080000u;
|
|
/* 02392DDC */ cpu->r[10] = 0x00000001u;
|
|
/* 02392DE0 */ cpu->r[0] = cpu->r[0] + 0x000064C8u;
|
|
/* 02392DE4 */ _t150 = cpu->r[22] + 0x00000018u;
|
|
/* 02392DE4 */ rbrew_write32(cpu->mem, _t150, cpu->r[10]);
|
|
/* 02392DE8 */ _t151 = cpu->r[19] + 0x00000014u;
|
|
/* 02392DE8 */ rbrew_write32(cpu->mem, _t151, cpu->r[0]);
|
|
L_02392DEC: ; // 0x2392dec
|
|
/* 02392DEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[18], 0x00000000u);
|
|
/* 02392DF0 */ _t152 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02392DF0 */ _t153 = _t152 & 0x00000001u;
|
|
/* 02392DF0 */ if (_t153) goto L_02392E30; else goto L_02392DF4;
|
|
L_02392DF4: ; // 0x2392df4
|
|
/* 02392DF4 */ _t154 = cpu->r[18] + 0x00000004u;
|
|
/* 02392DF4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t154);
|
|
/* 02392DF8 */ _t155 = cpu->r[9] + 0x00000014u;
|
|
/* 02392DF8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t155);
|
|
/* 02392DFC */ cpu->ctr = cpu->r[10];
|
|
/* 02392E00 */ cpu->r[3] = cpu->r[18];
|
|
/* 02392E04 */ cpu->r[4] = cpu->r[19] + 0x00000014u;
|
|
/* 02392E08 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02392E0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02392E10 */ _t156 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02392E10 */ _t157 = _t156 & 0x00000001u;
|
|
/* 02392E10 */ if (_t157) goto L_02392E30; else goto L_02392E14;
|
|
L_02392E14: ; // 0x2392e14
|
|
/* 02392E14 */ cpu->r[3] = cpu->r[18];
|
|
/* 02392E14 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02392E18 */ _t158 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02392E18 */ _t159 = _t158 & 0x00000001u;
|
|
/* 02392E18 */ if (_t159) goto L_02392E30; else goto L_02392E1C;
|
|
L_02392E1C: ; // 0x2392e1c
|
|
/* 02392E1C */ _t160 = cpu->r[31] + 0x0000003Cu;
|
|
/* 02392E1C */ cpu->r[11] = rbrew_read8(cpu->mem, _t160);
|
|
/* 02392E20 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02392E24 */ _t161 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02392E24 */ _t162 = _t161 & 0x00000001u;
|
|
/* 02392E24 */ if (_t162) goto L_02392E30; else goto L_02392E28;
|
|
L_02392E28: ; // 0x2392e28
|
|
/* 02392E28 */ cpu->r[4] = cpu->r[1] + 0x00000060u;
|
|
/* 02392E2C */ Gambit_fn_02274598(cpu);
|
|
L_02392E30: ; // 0x2392e30
|
|
/* 02392E30 */ _t163 = cpu->r[25] + 0xFFFFDAC0u;
|
|
/* 02392E30 */ cpu->r[4] = rbrew_read32(cpu->mem, _t163);
|
|
/* 02392E34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 02392E38 */ _t164 = cpu->r[23] + 0x00000000u;
|
|
/* 02392E38 */ cpu->r[18] = rbrew_read32(cpu->mem, _t164);
|
|
/* 02392E3C */ _t165 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02392E3C */ _t166 = _t165 & 0x00000001u;
|
|
/* 02392E3C */ if (_t166) goto L_02392E40; else goto L_02392E4C;
|
|
L_02392E40: ; // 0x2392e40
|
|
/* 02392E40 */ cpu->r[8] = 0x00000001u;
|
|
/* 02392E44 */ _t167 = cpu->r[17] + 0xFFFFFBC4u;
|
|
/* 02392E44 */ rbrew_write32(cpu->mem, _t167, cpu->r[30]);
|
|
/* 02392E48 */ _t168 = cpu->r[25] + 0xFFFFDAC0u;
|
|
/* 02392E48 */ rbrew_write32(cpu->mem, _t168, cpu->r[8]);
|
|
L_02392E4C: ; // 0x2392e4c
|
|
/* 02392E4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[18], 0x00000000u);
|
|
/* 02392E50 */ _t169 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02392E50 */ _t170 = _t169 & 0x00000001u;
|
|
/* 02392E50 */ if (_t170) goto L_02392F3C; else goto L_02392E54;
|
|
L_02392E54: ; // 0x2392e54
|
|
/* 02392E54 */ _t171 = cpu->r[18] + 0x00000004u;
|
|
/* 02392E54 */ cpu->r[5] = rbrew_read32(cpu->mem, _t171);
|
|
/* 02392E58 */ _t172 = cpu->r[5] + 0x00000014u;
|
|
/* 02392E58 */ cpu->r[0] = rbrew_read32(cpu->mem, _t172);
|
|
/* 02392E5C */ cpu->ctr = cpu->r[0];
|
|
/* 02392E60 */ cpu->r[3] = cpu->r[18];
|
|
/* 02392E64 */ cpu->r[4] = cpu->r[17] + 0xFFFFFBC4u;
|
|
/* 02392E68 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02392E6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02392E70 */ _t173 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02392E70 */ _t174 = _t173 & 0x00000001u;
|
|
/* 02392E70 */ if (_t174) goto L_02392F3C; else goto L_02392E74;
|
|
L_02392E74: ; // 0x2392e74
|
|
/* 02392E74 */ cpu->r[3] = cpu->r[18];
|
|
/* 02392E74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02392E78 */ _t175 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02392E78 */ _t176 = _t175 & 0x00000001u;
|
|
/* 02392E78 */ if (_t176) goto L_02392F3C; else goto L_02392E7C;
|
|
L_02392E7C: ; // 0x2392e7c
|
|
/* 02392E7C */ _t177 = cpu->r[24] + 0x00000010u;
|
|
/* 02392E7C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t177);
|
|
/* 02392E80 */ _t178 = cpu->r[24] + 0x00000000u;
|
|
/* 02392E80 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t178);
|
|
/* 02392E84 */ _t179 = cpu->r[24] + 0x00000020u;
|
|
/* 02392E84 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t179);
|
|
/* 02392E88 */ _t180 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02392E88 */ rbrew_write_f32(cpu->mem, _t180, cpu->f[9]);
|
|
/* 02392E8C */ _t181 = cpu->r[1] + 0x00000010u;
|
|
/* 02392E8C */ rbrew_write_f32(cpu->mem, _t181, cpu->f[11]);
|
|
/* 02392E90 */ _t182 = cpu->r[1] + 0x00000014u;
|
|
/* 02392E90 */ rbrew_write_f32(cpu->mem, _t182, cpu->f[12]);
|
|
/* 02392E94 */ _t183 = cpu->r[24] + 0x00000024u;
|
|
/* 02392E94 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t183);
|
|
/* 02392E98 */ _t184 = cpu->r[24] + 0x00000004u;
|
|
/* 02392E98 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t184);
|
|
/* 02392E9C */ _t185 = cpu->r[24] + 0x00000014u;
|
|
/* 02392E9C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t185);
|
|
/* 02392EA0 */ _t186 = cpu->r[1] + 0x00000018u;
|
|
/* 02392EA0 */ rbrew_write_f32(cpu->mem, _t186, cpu->f[13]);
|
|
/* 02392EA4 */ _t187 = cpu->r[1] + 0x00000020u;
|
|
/* 02392EA4 */ rbrew_write_f32(cpu->mem, _t187, cpu->f[6]);
|
|
/* 02392EA8 */ _t188 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02392EA8 */ rbrew_write_f32(cpu->mem, _t188, cpu->f[0]);
|
|
/* 02392EAC */ _t189 = cpu->r[24] + 0x00000028u;
|
|
/* 02392EAC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t189);
|
|
/* 02392EB0 */ _t190 = cpu->r[24] + 0x00000008u;
|
|
/* 02392EB0 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t190);
|
|
/* 02392EB4 */ _t191 = cpu->r[24] + 0x00000018u;
|
|
/* 02392EB4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t191);
|
|
/* 02392EB8 */ _t192 = cpu->r[1] + 0x00000024u;
|
|
/* 02392EB8 */ rbrew_write_f32(cpu->mem, _t192, cpu->f[8]);
|
|
/* 02392EBC */ _t193 = cpu->r[1] + 0x00000028u;
|
|
/* 02392EBC */ rbrew_write_f32(cpu->mem, _t193, cpu->f[10]);
|
|
/* 02392EC0 */ _t194 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02392EC0 */ rbrew_write_f32(cpu->mem, _t194, cpu->f[11]);
|
|
/* 02392EC4 */ _t195 = cpu->r[24] + 0x0000002Cu;
|
|
/* 02392EC4 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t195);
|
|
/* 02392EC8 */ _t196 = cpu->r[24] + 0x0000000Cu;
|
|
/* 02392EC8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t196);
|
|
/* 02392ECC */ _t197 = cpu->r[24] + 0x0000001Cu;
|
|
/* 02392ECC */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t197);
|
|
/* 02392ED0 */ _t198 = cpu->r[1] + 0x00000030u;
|
|
/* 02392ED0 */ rbrew_write_f32(cpu->mem, _t198, cpu->f[0]);
|
|
/* 02392ED4 */ _t199 = cpu->r[1] + 0x00000038u;
|
|
/* 02392ED4 */ rbrew_write_f32(cpu->mem, _t199, cpu->f[8]);
|
|
/* 02392ED8 */ _t200 = cpu->r[1] + 0x00000034u;
|
|
/* 02392ED8 */ rbrew_write_f32(cpu->mem, _t200, cpu->f[7]);
|
|
/* 02392EDC */ _t201 = cpu->r[3] + 0x0000011Cu;
|
|
/* 02392EDC */ rbrew_write_f32(cpu->mem, _t201, cpu->f[9]);
|
|
/* 02392EE0 */ _t202 = cpu->r[1] + 0x00000010u;
|
|
/* 02392EE0 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t202);
|
|
/* 02392EE4 */ _t203 = cpu->r[3] + 0x00000120u;
|
|
/* 02392EE4 */ rbrew_write_f32(cpu->mem, _t203, cpu->f[7]);
|
|
/* 02392EE8 */ _t204 = cpu->r[1] + 0x00000014u;
|
|
/* 02392EE8 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t204);
|
|
/* 02392EEC */ _t205 = cpu->r[3] + 0x00000124u;
|
|
/* 02392EEC */ rbrew_write_f32(cpu->mem, _t205, cpu->f[9]);
|
|
/* 02392EF0 */ _t206 = cpu->r[1] + 0x00000018u;
|
|
/* 02392EF0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t206);
|
|
/* 02392EF4 */ _t207 = cpu->r[3] + 0x00000128u;
|
|
/* 02392EF4 */ rbrew_write_f32(cpu->mem, _t207, cpu->f[12]);
|
|
/* 02392EF8 */ _t208 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02392EF8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t208);
|
|
/* 02392EFC */ _t209 = cpu->r[3] + 0x0000012Cu;
|
|
/* 02392EFC */ rbrew_write_f32(cpu->mem, _t209, cpu->f[13]);
|
|
/* 02392F00 */ _t210 = cpu->r[1] + 0x00000020u;
|
|
/* 02392F00 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t210);
|
|
/* 02392F04 */ _t211 = cpu->r[3] + 0x00000130u;
|
|
/* 02392F04 */ rbrew_write_f32(cpu->mem, _t211, cpu->f[6]);
|
|
/* 02392F08 */ _t212 = cpu->r[1] + 0x00000024u;
|
|
/* 02392F08 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t212);
|
|
/* 02392F0C */ _t213 = cpu->r[3] + 0x00000134u;
|
|
/* 02392F0C */ rbrew_write_f32(cpu->mem, _t213, cpu->f[9]);
|
|
/* 02392F10 */ _t214 = cpu->r[1] + 0x00000028u;
|
|
/* 02392F10 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t214);
|
|
/* 02392F14 */ _t215 = cpu->r[3] + 0x00000138u;
|
|
/* 02392F14 */ rbrew_write_f32(cpu->mem, _t215, cpu->f[10]);
|
|
/* 02392F18 */ _t216 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02392F18 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t216);
|
|
/* 02392F1C */ _t217 = cpu->r[3] + 0x0000013Cu;
|
|
/* 02392F1C */ rbrew_write_f32(cpu->mem, _t217, cpu->f[11]);
|
|
/* 02392F20 */ _t218 = cpu->r[1] + 0x00000030u;
|
|
/* 02392F20 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t218);
|
|
/* 02392F24 */ _t219 = cpu->r[3] + 0x00000140u;
|
|
/* 02392F24 */ rbrew_write_f32(cpu->mem, _t219, cpu->f[12]);
|
|
/* 02392F28 */ _t220 = cpu->r[1] + 0x00000034u;
|
|
/* 02392F28 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t220);
|
|
/* 02392F2C */ _t221 = cpu->r[3] + 0x00000144u;
|
|
/* 02392F2C */ rbrew_write_f32(cpu->mem, _t221, cpu->f[13]);
|
|
/* 02392F30 */ _t222 = cpu->r[1] + 0x00000038u;
|
|
/* 02392F30 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t222);
|
|
/* 02392F34 */ _t223 = cpu->r[3] + 0x00000148u;
|
|
/* 02392F34 */ rbrew_write_f32(cpu->mem, _t223, cpu->f[11]);
|
|
/* 02392F38 */ Gambit_fn_0227267C(cpu);
|
|
L_02392F3C: ; // 0x2392f3c
|
|
/* 02392F3C */ _t224 = cpu->r[26] + 0xFFFFDD80u;
|
|
/* 02392F3C */ cpu->r[9] = rbrew_read32(cpu->mem, _t224);
|
|
/* 02392F40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02392F44 */ _t225 = cpu->r[23] + 0x00000000u;
|
|
/* 02392F44 */ cpu->r[18] = rbrew_read32(cpu->mem, _t225);
|
|
/* 02392F48 */ _t226 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02392F48 */ _t227 = _t226 & 0x00000001u;
|
|
/* 02392F48 */ if (_t227) goto L_02392F4C; else goto L_02392F58;
|
|
L_02392F4C: ; // 0x2392f4c
|
|
/* 02392F4C */ cpu->r[7] = 0x00000001u;
|
|
/* 02392F50 */ _t228 = cpu->r[14] + 0x00000444u;
|
|
/* 02392F50 */ rbrew_write32(cpu->mem, _t228, cpu->r[30]);
|
|
/* 02392F54 */ _t229 = cpu->r[26] + 0xFFFFDD80u;
|
|
/* 02392F54 */ rbrew_write32(cpu->mem, _t229, cpu->r[7]);
|
|
L_02392F58: ; // 0x2392f58
|
|
/* 02392F58 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[18], 0x00000000u);
|
|
/* 02392F5C */ _t230 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02392F5C */ _t231 = _t230 & 0x00000001u;
|
|
/* 02392F5C */ if (_t231) goto L_02393098; else goto L_02392F60;
|
|
L_02392F60: ; // 0x2392f60
|
|
/* 02392F60 */ _t232 = cpu->r[18] + 0x00000004u;
|
|
/* 02392F60 */ cpu->r[10] = rbrew_read32(cpu->mem, _t232);
|
|
/* 02392F64 */ _t233 = cpu->r[10] + 0x00000014u;
|
|
/* 02392F64 */ cpu->r[11] = rbrew_read32(cpu->mem, _t233);
|
|
/* 02392F68 */ cpu->ctr = cpu->r[11];
|
|
/* 02392F6C */ cpu->r[3] = cpu->r[18];
|
|
/* 02392F70 */ cpu->r[4] = cpu->r[14] + 0x00000444u;
|
|
/* 02392F74 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02392F78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02392F7C */ _t234 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02392F7C */ _t235 = _t234 & 0x00000001u;
|
|
/* 02392F7C */ if (_t235) goto L_02393098; else goto L_02392F80;
|
|
L_02392F80: ; // 0x2392f80
|
|
/* 02392F80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[18], 0x00000000u);
|
|
/* 02392F84 */ _t236 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02392F84 */ _t237 = _t236 & 0x00000001u;
|
|
/* 02392F84 */ if (_t237) goto L_02393098; else goto L_02392F88;
|
|
L_02392F88: ; // 0x2392f88
|
|
/* 02392F88 */ _t238 = cpu->r[18] + 0x000000C4u;
|
|
/* 02392F88 */ cpu->r[0] = rbrew_read32(cpu->mem, _t238);
|
|
/* 02392F8C */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000000u, 0x00000000u);
|
|
/* 02392F8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02392F90 */ _t239 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02392F90 */ _t240 = _t239 & 0x00000001u;
|
|
/* 02392F90 */ if (_t240) goto L_02393098; else goto L_02392F94;
|
|
L_02392F94: ; // 0x2392f94
|
|
/* 02392F94 */ _t241 = cpu->r[31] + 0x00000020u;
|
|
/* 02392F94 */ cpu->r[11] = rbrew_read32(cpu->mem, _t241);
|
|
/* 02392F98 */ _t242 = cpu->r[31] + 0x00000004u;
|
|
/* 02392F98 */ cpu->r[15] = rbrew_read32(cpu->mem, _t242);
|
|
/* 02392F9C */ _t243 = cpu->r[1] + 0x00000014u;
|
|
/* 02392F9C */ rbrew_write32(cpu->mem, _t243, cpu->r[11]);
|
|
/* 02392FA0 */ _t244 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02392FA0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t244);
|
|
/* 02392FA4 */ _t245 = cpu->r[31] + 0x00000000u;
|
|
/* 02392FA4 */ cpu->r[16] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t245);
|
|
/* 02392FA8 */ _t246 = cpu->r[31] + 0x00000018u;
|
|
/* 02392FA8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t246);
|
|
/* 02392FAC */ cpu->r[3] = cpu->r[15];
|
|
/* 02392FB0 */ _t247 = cpu->r[1] + 0x00000010u;
|
|
/* 02392FB0 */ rbrew_write32(cpu->mem, _t247, cpu->r[10]);
|
|
/* 02392FB4 */ cpu->r[4] = cpu->r[16];
|
|
/* 02392FB8 */ _t248 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02392FB8 */ rbrew_write32(cpu->mem, _t248, cpu->r[0]);
|
|
/* 02392FBC */ Gambit_fn_0297FC7C(cpu);
|
|
/* 02392FC0 */ _t249 = cpu->r[15] + 0x0000001Cu;
|
|
/* 02392FC0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t249);
|
|
/* 02392FC4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[16], cpu->r[0]);
|
|
/* 02392FC8 */ cpu->r[8] = 0x00000000u;
|
|
/* 02392FCC */ _t250 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02392FCC */ _t251 = _t250 & 0x00000001u;
|
|
/* 02392FCC */ if (_t251) goto L_02392FD0; else goto L_02392FDC;
|
|
L_02392FD0: ; // 0x2392fd0
|
|
/* 02392FD0 */ _t252 = cpu->r[15] + 0x00000024u;
|
|
/* 02392FD0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t252);
|
|
/* 02392FD4 */ cpu->r[12] = rbrew_rlwinm(cpu->r[16], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02392FD8 */ _t253 = cpu->r[12] + cpu->r[6];
|
|
/* 02392FD8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t253);
|
|
L_02392FDC: ; // 0x2392fdc
|
|
/* 02392FDC */ _t254 = cpu->r[8] + 0x00000000u;
|
|
/* 02392FDC */ cpu->r[3] = rbrew_read32(cpu->mem, _t254);
|
|
/* 02392FE0 */ _t255 = cpu->r[3] + 0x00000088u;
|
|
/* 02392FE0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t255);
|
|
/* 02392FE4 */ _t256 = cpu->r[8] + 0x0000007Cu;
|
|
/* 02392FE4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t256);
|
|
/* 02392FE8 */ _t257 = cpu->r[31] + 0x00000002u;
|
|
/* 02392FE8 */ cpu->r[4] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t257);
|
|
/* 02392FEC */ cpu->ctr = cpu->r[9];
|
|
/* 02392FF0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02392FF4 */ cpu->r[4] = 0x00000003u;
|
|
/* 02392FF8 */ cpu->r[11] = cpu->r[3] + 0xFFFFFFFCu;
|
|
/* 02392FFC */ cpu->ctr = cpu->r[4];
|
|
/* 02393000 */ cpu->r[12] = cpu->r[1] + 0x00000098u;
|
|
L_02393004: ; // 0x2393004
|
|
/* 02393004 */ _t258 = cpu->r[11] + 0x00000004u;
|
|
/* 02393004 */ cpu->r[6] = rbrew_read32(cpu->mem, _t258);
|
|
/* 02393008 */ _t259 = cpu->r[12] + 0x00000004u;
|
|
/* 02393008 */ rbrew_write32(cpu->mem, _t259, cpu->r[6]);
|
|
/* 0239300C */ _t260 = cpu->r[11] + 0x00000008u;
|
|
/* 0239300C */ cpu->r[7] = rbrew_read32(cpu->mem, _t260);
|
|
/* 02393010 */ _t261 = cpu->r[12] + 0x00000008u;
|
|
/* 02393010 */ rbrew_write32(cpu->mem, _t261, cpu->r[7]);
|
|
/* 02393014 */ _t262 = cpu->r[11] + 0x0000000Cu;
|
|
/* 02393014 */ cpu->r[8] = rbrew_read32(cpu->mem, _t262);
|
|
/* 02393018 */ _t263 = cpu->r[12] + 0x0000000Cu;
|
|
/* 02393018 */ rbrew_write32(cpu->mem, _t263, cpu->r[8]);
|
|
/* 0239301C */ _t264 = cpu->r[11] + 0x00000010u;
|
|
/* 0239301C */ cpu->r[0] = rbrew_read32(cpu->mem, _t264);
|
|
/* 0239301C */ cpu->r[11] = _t264;
|
|
/* 02393020 */ _t265 = cpu->r[12] + 0x00000010u;
|
|
/* 02393020 */ rbrew_write32(cpu->mem, _t265, cpu->r[0]);
|
|
/* 02393020 */ cpu->r[12] = _t265;
|
|
/* 02393024 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02393024 */ _t266 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02393024 */ _t267 = _t266 >> (0x00000002u & 31u);
|
|
/* 02393024 */ _t268 = _t267 & 0x00000001u;
|
|
/* 02393024 */ if (_t268) goto L_02393004; else goto L_02393028;
|
|
L_02393028: ; // 0x2393028
|
|
/* 02393028 */ cpu->r[3] = cpu->r[1] + 0x0000009Cu;
|
|
/* 0239302C */ cpu->r[4] = cpu->r[29] + 0x00006338u;
|
|
/* 02393030 */ Gambit_fn_021620C4(cpu);
|
|
/* 02393034 */ cpu->r[5] = cpu->r[27];
|
|
/* 02393038 */ cpu->r[4] = cpu->r[27];
|
|
/* 0239303C */ cpu->r[3] = cpu->r[1] + 0x0000009Cu;
|
|
/* 02393040 */ Gambit_fn_02C69468(cpu);
|
|
/* 02393044 */ /* nop */
|
|
/* 02393048 */ /* nop */
|
|
/* 0239304C */ _t269 = cpu->r[1] + 0x00000014u;
|
|
/* 0239304C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t269);
|
|
/* 02393050 */ /* nop */
|
|
/* 02393054 */ _t270 = cpu->r[1] + 0x00000044u;
|
|
/* 02393054 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t270);
|
|
/* 02393058 */ cpu->f[6] = cpu->f[7] + cpu->f[8];
|
|
/* 0239305C */ /* nop */
|
|
/* 02393060 */ _t271 = cpu->r[1] + 0x00000054u;
|
|
/* 02393060 */ cpu->r[7] = rbrew_read32(cpu->mem, _t271);
|
|
/* 02393064 */ _t272 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02393064 */ rbrew_write_f32(cpu->mem, _t272, cpu->f[6]);
|
|
/* 02393068 */ _t273 = cpu->r[18] + 0x00000078u;
|
|
/* 02393068 */ rbrew_write32(cpu->mem, _t273, cpu->r[7]);
|
|
/* 0239306C */ _t274 = cpu->r[1] + 0x00000058u;
|
|
/* 0239306C */ cpu->r[9] = rbrew_read32(cpu->mem, _t274);
|
|
/* 02393070 */ _t275 = cpu->r[18] + 0x0000007Cu;
|
|
/* 02393070 */ rbrew_write32(cpu->mem, _t275, cpu->r[9]);
|
|
/* 02393074 */ _t276 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02393074 */ cpu->r[10] = rbrew_read32(cpu->mem, _t276);
|
|
/* 02393078 */ cpu->r[3] = cpu->r[18];
|
|
/* 0239307C */ _t277 = cpu->r[18] + 0x00000080u;
|
|
/* 0239307C */ rbrew_write32(cpu->mem, _t277, cpu->r[10]);
|
|
/* 02393080 */ Gambit_fn_024078DC(cpu);
|
|
/* 02393084 */ _t278 = cpu->r[18] + 0x00000004u;
|
|
/* 02393084 */ cpu->r[4] = rbrew_read32(cpu->mem, _t278);
|
|
/* 02393088 */ _t279 = cpu->r[4] + 0x00000064u;
|
|
/* 02393088 */ cpu->r[5] = rbrew_read32(cpu->mem, _t279);
|
|
/* 0239308C */ cpu->ctr = cpu->r[5];
|
|
/* 02393090 */ cpu->r[3] = cpu->r[18];
|
|
/* 02393094 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02393098: ; // 0x2393098
|
|
/* 02393098 */ _t280 = cpu->r[1] + 0x00000008u;
|
|
/* 02393098 */ cpu->r[6] = rbrew_read32(cpu->mem, _t280);
|
|
/* 0239309C */ cpu->r[23] = cpu->r[23] + 0x00000004u;
|
|
/* 023930A0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[23], cpu->r[6]);
|
|
/* 023930A4 */ _t281 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023930A4 */ _t282 = _t281 & 0x00000001u;
|
|
/* 023930A4 */ if (_t282) goto L_023930A8; else goto L_02392BA0;
|
|
L_023930A8: ; // 0x23930a8
|
|
/* 023930A8 */ _t283 = cpu->r[1] + 0x00000044u;
|
|
/* 023930A8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t283);
|
|
/* 023930AC */ _t284 = cpu->r[1] + 0x0000003Cu;
|
|
/* 023930AC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t284);
|
|
/* 023930B0 */ _t285 = cpu->r[31] + 0x00000038u;
|
|
/* 023930B0 */ rbrew_write_f32(cpu->mem, _t285, cpu->f[11]);
|
|
/* 023930B4 */ _t286 = cpu->r[1] + 0x00000040u;
|
|
/* 023930B4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t286);
|
|
/* 023930B8 */ _t287 = cpu->r[31] + 0x00000030u;
|
|
/* 023930B8 */ rbrew_write_f32(cpu->mem, _t287, cpu->f[9]);
|
|
/* 023930BC */ cpu->r[0] = 0x00000001u;
|
|
/* 023930C0 */ _t288 = cpu->r[31] + 0x00000034u;
|
|
/* 023930C0 */ rbrew_write_f32(cpu->mem, _t288, cpu->f[10]);
|
|
/* 023930C4 */ _t289 = cpu->r[31] + 0x0000003Cu;
|
|
/* 023930C4 */ rbrew_write8(cpu->mem, _t289, (uint8_t)cpu->r[0]);
|
|
/* 023930C8 */ /* nop */
|
|
/* 023930CC */ _t290 = cpu->r[1] + 0x0000011Cu;
|
|
/* 023930CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t290);
|
|
/* 023930D0 */ cpu->lr = cpu->r[0];
|
|
/* 023930D4 */ cpu->r[1] = cpu->r[1] + 0x00000118u;
|
|
/* 023930D8 */ return;
|
|
}
|
|
|
|
// fn_023930DC @ 0x23930dc
|
|
void Gambit_fn_023930DC(CPUState* cpu) {
|
|
uint32_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_023930DC: ; // 0x23930dc
|
|
/* 023930DC */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 023930DC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 023930DC */ cpu->r[1] = _t0;
|
|
/* 023930E0 */ /* nop */
|
|
/* 023930E4 */ cpu->r[0] = cpu->lr;
|
|
/* 023930E8 */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 023930E8 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 023930EC */ _t2 = cpu->r[3] + 0x0000000Cu;
|
|
/* 023930EC */ cpu->r[9] = rbrew_read32(cpu->mem, _t2);
|
|
/* 023930F0 */ _t3 = cpu->r[3] + 0x00000014u;
|
|
/* 023930F0 */ cpu->r[26] = rbrew_read32(cpu->mem, _t3);
|
|
/* 023930F4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[9], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 023930F8 */ cpu->r[27] = cpu->r[26] + cpu->r[0];
|
|
/* 023930FC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], cpu->r[27]);
|
|
/* 02393100 */ cpu->r[25] = cpu->r[4];
|
|
/* 02393104 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02393104 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02393104 */ if (_t5) goto L_0239317C; else goto L_02393108;
|
|
L_02393108: ; // 0x2393108
|
|
/* 02393108 */ cpu->r[30] = 0x00000001u;
|
|
/* 0239310C */ cpu->r[29] = 0x101D0000u;
|
|
/* 02393110 */ cpu->r[28] = 0x101D0000u;
|
|
L_02393114: ; // 0x2393114
|
|
/* 02393114 */ _t6 = cpu->r[29] + 0xFFFFDAC0u;
|
|
/* 02393114 */ cpu->r[10] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02393118 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0239311C */ _t7 = cpu->r[26] + 0x00000000u;
|
|
/* 0239311C */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02393120 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02393120 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02393120 */ if (_t9) goto L_02393124; else goto L_02393134;
|
|
L_02393124: ; // 0x2393124
|
|
/* 02393124 */ cpu->r[0] = 0x10080000u;
|
|
/* 02393128 */ _t10 = cpu->r[29] + 0xFFFFDAC0u;
|
|
/* 02393128 */ rbrew_write32(cpu->mem, _t10, cpu->r[30]);
|
|
/* 0239312C */ cpu->r[0] = cpu->r[0] + 0x000064B8u;
|
|
/* 02393130 */ _t11 = cpu->r[28] + 0xFFFFFBC4u;
|
|
/* 02393130 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
L_02393134: ; // 0x2393134
|
|
/* 02393134 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02393138 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02393138 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02393138 */ if (_t13) goto L_02393170; else goto L_0239313C;
|
|
L_0239313C: ; // 0x239313c
|
|
/* 0239313C */ _t14 = cpu->r[31] + 0x00000004u;
|
|
/* 0239313C */ cpu->r[12] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02393140 */ _t15 = cpu->r[12] + 0x00000014u;
|
|
/* 02393140 */ cpu->r[7] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02393144 */ cpu->ctr = cpu->r[7];
|
|
/* 02393148 */ cpu->r[3] = cpu->r[31];
|
|
/* 0239314C */ cpu->r[4] = cpu->r[28] + 0xFFFFFBC4u;
|
|
/* 02393150 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02393154 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02393158 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02393158 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02393158 */ if (_t17) goto L_02393170; else goto L_0239315C;
|
|
L_0239315C: ; // 0x239315c
|
|
/* 0239315C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02393160 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02393160 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02393160 */ if (_t19) goto L_02393170; else goto L_02393164;
|
|
L_02393164: ; // 0x2393164
|
|
/* 02393164 */ cpu->r[3] = cpu->r[31];
|
|
/* 02393168 */ cpu->r[4] = cpu->r[25];
|
|
/* 0239316C */ Gambit_fn_02272680(cpu);
|
|
L_02393170: ; // 0x2393170
|
|
/* 02393170 */ cpu->r[26] = cpu->r[26] + 0x00000004u;
|
|
/* 02393174 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], cpu->r[27]);
|
|
/* 02393178 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02393178 */ _t21 = _t20 & 0x00000001u;
|
|
/* 02393178 */ if (_t21) goto L_0239317C; else goto L_02393114;
|
|
L_0239317C: ; // 0x239317c
|
|
/* 0239317C */ /* nop */
|
|
/* 02393180 */ _t22 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02393180 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02393184 */ cpu->lr = cpu->r[0];
|
|
/* 02393188 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 0239318C */ return;
|
|
}
|
|
|
|
// fn_02393194 @ 0x2393194
|
|
void Gambit_fn_02393194(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53;
|
|
|
|
L_02393194: ; // 0x2393194
|
|
/* 02393194 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 02393194 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02393194 */ cpu->r[1] = _t0;
|
|
/* 02393198 */ _t1 = cpu->r[1] + 0x00000018u;
|
|
/* 02393198 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0239319C */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239319C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 023931A0 */ cpu->r[31] = cpu->r[3];
|
|
/* 023931A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 023931A4 */ cpu->r[30] = cpu->r[4];
|
|
/* 023931A8 */ _t3 = cpu->r[1] + 0x00000024u;
|
|
/* 023931A8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 023931AC */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023931AC */ _t5 = _t4 & 0x00000001u;
|
|
/* 023931AC */ if (_t5) goto L_023931B0; else goto L_023931C0;
|
|
L_023931B0: ; // 0x23931b0
|
|
/* 023931B0 */ cpu->r[3] = 0x0000004Cu;
|
|
/* 023931B4 */ Gambit_fn_02801A78(cpu);
|
|
/* 023931B8 */ cpu->r[31] = cpu->r[3];
|
|
/* 023931B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 023931BC */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023931BC */ _t7 = _t6 & 0x00000001u;
|
|
/* 023931BC */ if (_t7) goto L_02393298; else goto L_023931C0;
|
|
L_023931C0: ; // 0x23931c0
|
|
/* 023931C0 */ cpu->r[11] = 0x10080000u;
|
|
/* 023931C4 */ cpu->r[8] = 0xFFFFFFFFu;
|
|
/* 023931C8 */ _t8 = cpu->r[11] + 0x000064D8u;
|
|
/* 023931C8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 023931CC */ cpu->r[0] = 0x00000000u;
|
|
/* 023931D0 */ _t9 = cpu->r[31] + 0x0000000Eu;
|
|
/* 023931D0 */ rbrew_write16(cpu->mem, _t9, (uint16_t)cpu->r[8]);
|
|
/* 023931D4 */ cpu->r[10] = 0x101E0000u;
|
|
/* 023931D8 */ _t10 = cpu->r[31] + 0x00000010u;
|
|
/* 023931D8 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[0]);
|
|
/* 023931DC */ cpu->r[10] = cpu->r[10] + 0xFFFF96D4u;
|
|
/* 023931E0 */ _t11 = cpu->r[31] + 0x00000020u;
|
|
/* 023931E0 */ rbrew_write_f32(cpu->mem, _t11, cpu->f[0]);
|
|
/* 023931E4 */ cpu->r[11] = cpu->r[31] + 0x00000020u;
|
|
/* 023931E8 */ _t12 = cpu->r[31] + 0x00000000u;
|
|
/* 023931E8 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 023931EC */ cpu->r[12] = 0x00000003u;
|
|
/* 023931F0 */ _t13 = cpu->r[31] + 0x00000018u;
|
|
/* 023931F0 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[0]);
|
|
/* 023931F4 */ _t14 = cpu->r[31] + 0x00000014u;
|
|
/* 023931F4 */ rbrew_write_f32(cpu->mem, _t14, cpu->f[0]);
|
|
/* 023931F8 */ _t15 = cpu->r[31] + 0x0000001Cu;
|
|
/* 023931F8 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[0]);
|
|
/* 023931FC */ _t16 = cpu->r[31] + 0x00000004u;
|
|
/* 023931FC */ rbrew_write32(cpu->mem, _t16, cpu->r[0]);
|
|
/* 02393200 */ _t17 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02393200 */ rbrew_write16(cpu->mem, _t17, (uint16_t)cpu->r[8]);
|
|
/* 02393204 */ cpu->ctr = cpu->r[12];
|
|
/* 02393208 */ _t18 = cpu->r[31] + 0x00000008u;
|
|
/* 02393208 */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
L_0239320C: ; // 0x239320c
|
|
/* 0239320C */ _t19 = cpu->r[10] + 0x00000004u;
|
|
/* 0239320C */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02393210 */ _t20 = cpu->r[11] + 0x00000004u;
|
|
/* 02393210 */ rbrew_write32(cpu->mem, _t20, cpu->r[0]);
|
|
/* 02393214 */ _t21 = cpu->r[10] + 0x00000008u;
|
|
/* 02393214 */ cpu->r[12] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02393218 */ _t22 = cpu->r[11] + 0x00000008u;
|
|
/* 02393218 */ rbrew_write32(cpu->mem, _t22, cpu->r[12]);
|
|
/* 0239321C */ _t23 = cpu->r[10] + 0x0000000Cu;
|
|
/* 0239321C */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0239321C */ cpu->r[10] = _t23;
|
|
/* 02393220 */ _t24 = cpu->r[11] + 0x0000000Cu;
|
|
/* 02393220 */ rbrew_write32(cpu->mem, _t24, cpu->r[0]);
|
|
/* 02393220 */ cpu->r[11] = _t24;
|
|
/* 02393224 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02393224 */ _t25 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02393224 */ _t26 = _t25 >> (0x00000002u & 31u);
|
|
/* 02393224 */ _t27 = _t26 & 0x00000001u;
|
|
/* 02393224 */ if (_t27) goto L_0239320C; else goto L_02393228;
|
|
L_02393228: ; // 0x2393228
|
|
/* 02393228 */ cpu->r[6] = 0x00000000u;
|
|
/* 0239322C */ _t28 = cpu->r[31] + 0x00000048u;
|
|
/* 0239322C */ rbrew_write8(cpu->mem, _t28, (uint8_t)cpu->r[6]);
|
|
/* 02393230 */ _t29 = cpu->r[30] + 0x00000000u;
|
|
/* 02393230 */ cpu->r[7] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02393234 */ _t30 = cpu->r[31] + 0x00000000u;
|
|
/* 02393234 */ rbrew_write32(cpu->mem, _t30, cpu->r[7]);
|
|
/* 02393238 */ _t31 = cpu->r[30] + 0x00000004u;
|
|
/* 02393238 */ cpu->r[8] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0239323C */ cpu->r[0] = 0x10080000u;
|
|
/* 02393240 */ _t32 = cpu->r[31] + 0x00000004u;
|
|
/* 02393240 */ rbrew_write32(cpu->mem, _t32, cpu->r[8]);
|
|
/* 02393244 */ _t33 = cpu->r[30] + 0x00000008u;
|
|
/* 02393244 */ cpu->r[10] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02393248 */ cpu->r[0] = cpu->r[0] + 0x00006448u;
|
|
/* 0239324C */ _t34 = cpu->r[31] + 0x00000008u;
|
|
/* 0239324C */ rbrew_write32(cpu->mem, _t34, cpu->r[10]);
|
|
/* 02393250 */ _t35 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02393250 */ cpu->r[9] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02393254 */ _t36 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02393254 */ rbrew_write32(cpu->mem, _t36, cpu->r[0]);
|
|
/* 02393258 */ _t37 = cpu->r[1] + 0x00000008u;
|
|
/* 02393258 */ rbrew_write32(cpu->mem, _t37, cpu->r[9]);
|
|
/* 0239325C */ _t38 = cpu->r[31] + 0x00000008u;
|
|
/* 0239325C */ cpu->r[3] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02393260 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02393264 */ Gambit_fn_029807A8(cpu);
|
|
/* 02393268 */ _t39 = cpu->r[1] + 0x00000010u;
|
|
/* 02393268 */ rbrew_write32(cpu->mem, _t39, cpu->r[3]);
|
|
/* 0239326C */ _t40 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0239326C */ rbrew_write32(cpu->mem, _t40, cpu->r[3]);
|
|
/* 02393270 */ _t41 = cpu->r[30] + 0x00000010u;
|
|
/* 02393270 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 02393274 */ _t42 = cpu->r[31] + 0x00000010u;
|
|
/* 02393274 */ rbrew_write_f32(cpu->mem, _t42, cpu->f[0]);
|
|
/* 02393278 */ _t43 = cpu->r[30] + 0x00000014u;
|
|
/* 02393278 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t43);
|
|
/* 0239327C */ _t44 = cpu->r[31] + 0x00000014u;
|
|
/* 0239327C */ rbrew_write_f32(cpu->mem, _t44, cpu->f[0]);
|
|
/* 02393280 */ _t45 = cpu->r[30] + 0x00000018u;
|
|
/* 02393280 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t45);
|
|
/* 02393284 */ _t46 = cpu->r[31] + 0x00000018u;
|
|
/* 02393284 */ rbrew_write_f32(cpu->mem, _t46, cpu->f[0]);
|
|
/* 02393288 */ _t47 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02393288 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 0239328C */ _t48 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0239328C */ rbrew_write_f32(cpu->mem, _t48, cpu->f[0]);
|
|
/* 02393290 */ _t49 = cpu->r[30] + 0x00000020u;
|
|
/* 02393290 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t49);
|
|
/* 02393294 */ _t50 = cpu->r[31] + 0x00000020u;
|
|
/* 02393294 */ rbrew_write_f32(cpu->mem, _t50, cpu->f[0]);
|
|
L_02393298: ; // 0x2393298
|
|
/* 02393298 */ _t51 = cpu->r[1] + 0x00000024u;
|
|
/* 02393298 */ cpu->r[0] = rbrew_read32(cpu->mem, _t51);
|
|
/* 0239329C */ cpu->r[3] = cpu->r[31];
|
|
/* 023932A0 */ _t52 = cpu->r[1] + 0x0000001Cu;
|
|
/* 023932A0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t52);
|
|
/* 023932A4 */ cpu->lr = cpu->r[0];
|
|
/* 023932A8 */ _t53 = cpu->r[1] + 0x00000018u;
|
|
/* 023932A8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t53);
|
|
/* 023932AC */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 023932B0 */ return;
|
|
}
|
|
|
|
// fn_023932B4 @ 0x23932b4
|
|
void Gambit_fn_023932B4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53;
|
|
|
|
L_02393190: ; // 0x2393190
|
|
/* 02393190 */ cpu->r[0] = cpu->lr;
|
|
/* 02393194 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 02393194 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02393194 */ cpu->r[1] = _t0;
|
|
/* 02393198 */ _t1 = cpu->r[1] + 0x00000018u;
|
|
/* 02393198 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0239319C */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239319C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 023931A0 */ cpu->r[31] = cpu->r[3];
|
|
/* 023931A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 023931A4 */ cpu->r[30] = cpu->r[4];
|
|
/* 023931A8 */ _t3 = cpu->r[1] + 0x00000024u;
|
|
/* 023931A8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 023931AC */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023931AC */ _t5 = _t4 & 0x00000001u;
|
|
/* 023931AC */ if (_t5) goto L_023931B0; else goto L_023931C0;
|
|
L_023931B0: ; // 0x23931b0
|
|
/* 023931B0 */ cpu->r[3] = 0x0000004Cu;
|
|
/* 023931B4 */ Gambit_fn_02801A78(cpu);
|
|
/* 023931B8 */ cpu->r[31] = cpu->r[3];
|
|
/* 023931B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 023931BC */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023931BC */ _t7 = _t6 & 0x00000001u;
|
|
/* 023931BC */ if (_t7) goto L_02393298; else goto L_023931C0;
|
|
L_023931C0: ; // 0x23931c0
|
|
/* 023931C0 */ cpu->r[11] = 0x10080000u;
|
|
/* 023931C4 */ cpu->r[8] = 0xFFFFFFFFu;
|
|
/* 023931C8 */ _t8 = cpu->r[11] + 0x000064D8u;
|
|
/* 023931C8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 023931CC */ cpu->r[0] = 0x00000000u;
|
|
/* 023931D0 */ _t9 = cpu->r[31] + 0x0000000Eu;
|
|
/* 023931D0 */ rbrew_write16(cpu->mem, _t9, (uint16_t)cpu->r[8]);
|
|
/* 023931D4 */ cpu->r[10] = 0x101E0000u;
|
|
/* 023931D8 */ _t10 = cpu->r[31] + 0x00000010u;
|
|
/* 023931D8 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[0]);
|
|
/* 023931DC */ cpu->r[10] = cpu->r[10] + 0xFFFF96D4u;
|
|
/* 023931E0 */ _t11 = cpu->r[31] + 0x00000020u;
|
|
/* 023931E0 */ rbrew_write_f32(cpu->mem, _t11, cpu->f[0]);
|
|
/* 023931E4 */ cpu->r[11] = cpu->r[31] + 0x00000020u;
|
|
/* 023931E8 */ _t12 = cpu->r[31] + 0x00000000u;
|
|
/* 023931E8 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 023931EC */ cpu->r[12] = 0x00000003u;
|
|
/* 023931F0 */ _t13 = cpu->r[31] + 0x00000018u;
|
|
/* 023931F0 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[0]);
|
|
/* 023931F4 */ _t14 = cpu->r[31] + 0x00000014u;
|
|
/* 023931F4 */ rbrew_write_f32(cpu->mem, _t14, cpu->f[0]);
|
|
/* 023931F8 */ _t15 = cpu->r[31] + 0x0000001Cu;
|
|
/* 023931F8 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[0]);
|
|
/* 023931FC */ _t16 = cpu->r[31] + 0x00000004u;
|
|
/* 023931FC */ rbrew_write32(cpu->mem, _t16, cpu->r[0]);
|
|
/* 02393200 */ _t17 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02393200 */ rbrew_write16(cpu->mem, _t17, (uint16_t)cpu->r[8]);
|
|
/* 02393204 */ cpu->ctr = cpu->r[12];
|
|
/* 02393208 */ _t18 = cpu->r[31] + 0x00000008u;
|
|
/* 02393208 */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
L_0239320C: ; // 0x239320c
|
|
/* 0239320C */ _t19 = cpu->r[10] + 0x00000004u;
|
|
/* 0239320C */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02393210 */ _t20 = cpu->r[11] + 0x00000004u;
|
|
/* 02393210 */ rbrew_write32(cpu->mem, _t20, cpu->r[0]);
|
|
/* 02393214 */ _t21 = cpu->r[10] + 0x00000008u;
|
|
/* 02393214 */ cpu->r[12] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02393218 */ _t22 = cpu->r[11] + 0x00000008u;
|
|
/* 02393218 */ rbrew_write32(cpu->mem, _t22, cpu->r[12]);
|
|
/* 0239321C */ _t23 = cpu->r[10] + 0x0000000Cu;
|
|
/* 0239321C */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0239321C */ cpu->r[10] = _t23;
|
|
/* 02393220 */ _t24 = cpu->r[11] + 0x0000000Cu;
|
|
/* 02393220 */ rbrew_write32(cpu->mem, _t24, cpu->r[0]);
|
|
/* 02393220 */ cpu->r[11] = _t24;
|
|
/* 02393224 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02393224 */ _t25 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02393224 */ _t26 = _t25 >> (0x00000002u & 31u);
|
|
/* 02393224 */ _t27 = _t26 & 0x00000001u;
|
|
/* 02393224 */ if (_t27) goto L_0239320C; else goto L_02393228;
|
|
L_02393228: ; // 0x2393228
|
|
/* 02393228 */ cpu->r[6] = 0x00000000u;
|
|
/* 0239322C */ _t28 = cpu->r[31] + 0x00000048u;
|
|
/* 0239322C */ rbrew_write8(cpu->mem, _t28, (uint8_t)cpu->r[6]);
|
|
/* 02393230 */ _t29 = cpu->r[30] + 0x00000000u;
|
|
/* 02393230 */ cpu->r[7] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02393234 */ _t30 = cpu->r[31] + 0x00000000u;
|
|
/* 02393234 */ rbrew_write32(cpu->mem, _t30, cpu->r[7]);
|
|
/* 02393238 */ _t31 = cpu->r[30] + 0x00000004u;
|
|
/* 02393238 */ cpu->r[8] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0239323C */ cpu->r[0] = 0x10080000u;
|
|
/* 02393240 */ _t32 = cpu->r[31] + 0x00000004u;
|
|
/* 02393240 */ rbrew_write32(cpu->mem, _t32, cpu->r[8]);
|
|
/* 02393244 */ _t33 = cpu->r[30] + 0x00000008u;
|
|
/* 02393244 */ cpu->r[10] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02393248 */ cpu->r[0] = cpu->r[0] + 0x00006448u;
|
|
/* 0239324C */ _t34 = cpu->r[31] + 0x00000008u;
|
|
/* 0239324C */ rbrew_write32(cpu->mem, _t34, cpu->r[10]);
|
|
/* 02393250 */ _t35 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02393250 */ cpu->r[9] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02393254 */ _t36 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02393254 */ rbrew_write32(cpu->mem, _t36, cpu->r[0]);
|
|
/* 02393258 */ _t37 = cpu->r[1] + 0x00000008u;
|
|
/* 02393258 */ rbrew_write32(cpu->mem, _t37, cpu->r[9]);
|
|
/* 0239325C */ _t38 = cpu->r[31] + 0x00000008u;
|
|
/* 0239325C */ cpu->r[3] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02393260 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02393264 */ Gambit_fn_029807A8(cpu);
|
|
/* 02393268 */ _t39 = cpu->r[1] + 0x00000010u;
|
|
/* 02393268 */ rbrew_write32(cpu->mem, _t39, cpu->r[3]);
|
|
/* 0239326C */ _t40 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0239326C */ rbrew_write32(cpu->mem, _t40, cpu->r[3]);
|
|
/* 02393270 */ _t41 = cpu->r[30] + 0x00000010u;
|
|
/* 02393270 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 02393274 */ _t42 = cpu->r[31] + 0x00000010u;
|
|
/* 02393274 */ rbrew_write_f32(cpu->mem, _t42, cpu->f[0]);
|
|
/* 02393278 */ _t43 = cpu->r[30] + 0x00000014u;
|
|
/* 02393278 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t43);
|
|
/* 0239327C */ _t44 = cpu->r[31] + 0x00000014u;
|
|
/* 0239327C */ rbrew_write_f32(cpu->mem, _t44, cpu->f[0]);
|
|
/* 02393280 */ _t45 = cpu->r[30] + 0x00000018u;
|
|
/* 02393280 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t45);
|
|
/* 02393284 */ _t46 = cpu->r[31] + 0x00000018u;
|
|
/* 02393284 */ rbrew_write_f32(cpu->mem, _t46, cpu->f[0]);
|
|
/* 02393288 */ _t47 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02393288 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 0239328C */ _t48 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0239328C */ rbrew_write_f32(cpu->mem, _t48, cpu->f[0]);
|
|
/* 02393290 */ _t49 = cpu->r[30] + 0x00000020u;
|
|
/* 02393290 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t49);
|
|
/* 02393294 */ _t50 = cpu->r[31] + 0x00000020u;
|
|
/* 02393294 */ rbrew_write_f32(cpu->mem, _t50, cpu->f[0]);
|
|
L_02393298: ; // 0x2393298
|
|
/* 02393298 */ _t51 = cpu->r[1] + 0x00000024u;
|
|
/* 02393298 */ cpu->r[0] = rbrew_read32(cpu->mem, _t51);
|
|
/* 0239329C */ cpu->r[3] = cpu->r[31];
|
|
/* 023932A0 */ _t52 = cpu->r[1] + 0x0000001Cu;
|
|
/* 023932A0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t52);
|
|
/* 023932A4 */ cpu->lr = cpu->r[0];
|
|
/* 023932A8 */ _t53 = cpu->r[1] + 0x00000018u;
|
|
/* 023932A8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t53);
|
|
/* 023932AC */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 023932B0 */ return;
|
|
L_023932B4: ; // 0x23932b4
|
|
/* 023932B4 */ cpu->r[4] = cpu->r[3];
|
|
/* 023932B8 */ cpu->r[3] = 0x00000000u;
|
|
/* 023932BC */ goto L_02393190;
|
|
}
|
|
|
|
// fn_023932C0 @ 0x23932c0
|
|
void Gambit_fn_023932C0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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, _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;
|
|
double _ft50, _ft51;
|
|
|
|
L_023932C0: ; // 0x23932c0
|
|
/* 023932C0 */ _t0 = cpu->r[1] + 0xFFFFFE00u;
|
|
/* 023932C0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 023932C0 */ cpu->r[1] = _t0;
|
|
/* 023932C4 */ _t1 = cpu->r[1] + 0x0000018Cu;
|
|
/* 023932C4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 023932C8 */ cpu->r[0] = cpu->lr;
|
|
/* 023932CC */ _t2 = cpu->r[1] + 0x000001A0u;
|
|
/* 023932CC */ rbrew_write_f64(cpu->mem, _t2, cpu->f[26]);
|
|
/* 023932D0 */ /* nop */
|
|
/* 023932D4 */ _t3 = cpu->r[1] + 0x000001F0u;
|
|
/* 023932D4 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[31]);
|
|
/* 023932D8 */ /* nop */
|
|
/* 023932DC */ _t4 = cpu->r[1] + 0x000001A8u;
|
|
/* 023932DC */ rbrew_write_f32(cpu->mem, _t4, cpu->f[26]);
|
|
/* 023932E0 */ _t5 = cpu->r[1] + 0x000001F8u;
|
|
/* 023932E0 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[31]);
|
|
/* 023932E4 */ _t6 = cpu->r[1] + 0x000001C0u;
|
|
/* 023932E4 */ rbrew_write_f64(cpu->mem, _t6, cpu->f[28]);
|
|
/* 023932E8 */ _t7 = cpu->r[1] + 0x00000190u;
|
|
/* 023932E8 */ rbrew_write_f64(cpu->mem, _t7, cpu->f[25]);
|
|
/* 023932EC */ /* nop */
|
|
/* 023932F0 */ _t8 = cpu->r[1] + 0x00000204u;
|
|
/* 023932F0 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 023932F4 */ _t9 = cpu->r[1] + 0x000001C8u;
|
|
/* 023932F4 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[28]);
|
|
/* 023932F8 */ _t10 = cpu->r[1] + 0x00000180u;
|
|
/* 023932F8 */ rbrew_write32(cpu->mem, _t10, cpu->r[28]);
|
|
/* 023932FC */ /* nop */
|
|
/* 02393300 */ _t11 = cpu->r[1] + 0x000001D0u;
|
|
/* 02393300 */ rbrew_write_f64(cpu->mem, _t11, cpu->f[29]);
|
|
/* 02393304 */ _t12 = cpu->r[1] + 0x00000198u;
|
|
/* 02393304 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[25]);
|
|
/* 02393308 */ _t13 = cpu->r[1] + 0x000001E0u;
|
|
/* 02393308 */ rbrew_write_f64(cpu->mem, _t13, cpu->f[30]);
|
|
/* 0239330C */ /* nop */
|
|
/* 02393310 */ _t14 = cpu->r[1] + 0x000001B0u;
|
|
/* 02393310 */ rbrew_write_f64(cpu->mem, _t14, cpu->f[27]);
|
|
/* 02393314 */ /* nop */
|
|
/* 02393318 */ _t15 = cpu->r[1] + 0x00000188u;
|
|
/* 02393318 */ rbrew_write32(cpu->mem, _t15, cpu->r[30]);
|
|
/* 0239331C */ _t16 = cpu->r[1] + 0x000001E8u;
|
|
/* 0239331C */ rbrew_write_f32(cpu->mem, _t16, cpu->f[30]);
|
|
/* 02393320 */ cpu->r[30] = cpu->r[3];
|
|
/* 02393324 */ _t17 = cpu->r[1] + 0x000001B8u;
|
|
/* 02393324 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[27]);
|
|
/* 02393328 */ /* nop */
|
|
/* 0239332C */ _t18 = cpu->r[1] + 0x00000184u;
|
|
/* 0239332C */ rbrew_write32(cpu->mem, _t18, cpu->r[29]);
|
|
/* 02393330 */ _t19 = cpu->r[1] + 0x000001D8u;
|
|
/* 02393330 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[29]);
|
|
/* 02393334 */ _t20 = cpu->r[30] + 0x00000008u;
|
|
/* 02393334 */ cpu->r[28] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02393338 */ _t21 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02393338 */ cpu->r[29] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t21);
|
|
/* 0239333C */ cpu->r[3] = cpu->r[28];
|
|
/* 02393340 */ cpu->r[31] = cpu->r[4];
|
|
/* 02393344 */ cpu->r[4] = cpu->r[29];
|
|
/* 02393348 */ Gambit_fn_0297FC7C(cpu);
|
|
/* 0239334C */ _t22 = cpu->r[28] + 0x0000001Cu;
|
|
/* 0239334C */ cpu->r[8] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02393350 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[8]);
|
|
/* 02393354 */ cpu->r[12] = 0x00000000u;
|
|
/* 02393358 */ _t23 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02393358 */ _t24 = _t23 & 0x00000001u;
|
|
/* 02393358 */ if (_t24) goto L_0239335C; else goto L_02393368;
|
|
L_0239335C: ; // 0x239335c
|
|
/* 0239335C */ _t25 = cpu->r[28] + 0x00000024u;
|
|
/* 0239335C */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02393360 */ cpu->r[9] = rbrew_rlwinm(cpu->r[29], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02393364 */ _t26 = cpu->r[9] + cpu->r[0];
|
|
/* 02393364 */ cpu->r[12] = rbrew_read32(cpu->mem, _t26);
|
|
L_02393368: ; // 0x2393368
|
|
/* 02393368 */ _t27 = cpu->r[12] + 0x00000000u;
|
|
/* 02393368 */ cpu->r[3] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0239336C */ _t28 = cpu->r[3] + 0x00000088u;
|
|
/* 0239336C */ cpu->r[7] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02393370 */ _t29 = cpu->r[7] + 0x00000064u;
|
|
/* 02393370 */ cpu->r[9] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02393374 */ cpu->ctr = cpu->r[9];
|
|
/* 02393378 */ _t30 = cpu->r[30] + 0x0000000Eu;
|
|
/* 02393378 */ cpu->r[6] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t30);
|
|
/* 0239337C */ cpu->r[4] = cpu->r[1] + 0x0000014Cu;
|
|
/* 02393380 */ cpu->r[5] = cpu->r[1] + 0x0000011Cu;
|
|
/* 02393384 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02393388 */ _t31 = cpu->r[30] + 0x00000004u;
|
|
/* 02393388 */ cpu->r[7] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0239338C */ _t32 = cpu->r[30] + 0x00000000u;
|
|
/* 0239338C */ cpu->r[9] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02393390 */ /* nop */
|
|
/* 02393394 */ /* nop */
|
|
/* 02393398 */ /* nop */
|
|
/* 0239339C */ /* nop */
|
|
/* 023933A0 */ _t33 = cpu->r[9] + 0x0000002Cu;
|
|
/* 023933A0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 023933A4 */ _t34 = cpu->r[1] + 0x0000009Cu;
|
|
/* 023933A4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t34);
|
|
/* 023933A8 */ _t35 = cpu->r[7] + 0x00000008u;
|
|
/* 023933A8 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 023933AC */ _t36 = cpu->r[1] + 0x00000024u;
|
|
/* 023933AC */ rbrew_write32(cpu->mem, _t36, cpu->r[9]);
|
|
/* 023933B0 */ _t37 = cpu->r[1] + 0x00000024u;
|
|
/* 023933B0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 023933B4 */ cpu->f[7] = cpu->f[9] - cpu->f[10];
|
|
/* 023933B8 */ _t38 = cpu->r[1] + 0x00000098u;
|
|
/* 023933B8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t38);
|
|
/* 023933BC */ cpu->f[0] = cpu->f[12] * cpu->f[12];
|
|
/* 023933C0 */ _t39 = cpu->r[1] + 0x00000020u;
|
|
/* 023933C0 */ rbrew_write32(cpu->mem, _t39, cpu->r[8]);
|
|
/* 023933C4 */ _t40 = cpu->r[1] + 0x00000020u;
|
|
/* 023933C4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 023933C8 */ _t41 = cpu->r[1] + 0x000000A0u;
|
|
/* 023933C8 */ rbrew_write_f32(cpu->mem, _t41, cpu->f[7]);
|
|
/* 023933CC */ _t42 = cpu->r[1] + 0x000000A0u;
|
|
/* 023933CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t42);
|
|
/* 023933D0 */ cpu->f[7] = fma(cpu->f[13], cpu->f[13], cpu->f[0]);
|
|
/* 023933D4 */ _t43 = cpu->r[1] + 0x00000028u;
|
|
/* 023933D4 */ rbrew_write32(cpu->mem, _t43, cpu->r[0]);
|
|
/* 023933D8 */ _t44 = cpu->r[1] + 0x00000028u;
|
|
/* 023933D8 */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 023933DC */ cpu->r[7] = 0x10080000u;
|
|
/* 023933E0 */ cpu->f[0] = fma(cpu->f[5], cpu->f[5], cpu->f[7]);
|
|
/* 023933E4 */ _t45 = cpu->r[7] + 0x000064D8u;
|
|
/* 023933E4 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t45);
|
|
/* 023933E8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[30]);
|
|
/* 023933EC */ _t46 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 023933EC */ _t47 = _t46 & 0x00000001u;
|
|
/* 023933EC */ if (_t47) goto L_023933F0; else goto L_02393430;
|
|
L_023933F0: ; // 0x23933f0
|
|
/* 023933F0 */ cpu->r[12] = 0x10080000u;
|
|
/* 023933F4 */ cpu->r[11] = 0x10080000u;
|
|
/* 023933F8 */ _t48 = cpu->r[12] + 0x000064F8u;
|
|
/* 023933F8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 023933FC */ _t49 = cpu->r[11] + 0x000064F4u;
|
|
/* 023933FC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t49);
|
|
/* 02393400 */ _ft50 = sqrt(cpu->f[0]);
|
|
/* 02393400 */ _ft51 = (double)(int32_t)0x00000001u;
|
|
/* 02393400 */ cpu->f[7] = _ft51 / _ft50;
|
|
/* 02393404 */ cpu->f[11] = cpu->f[7] * cpu->f[7];
|
|
/* 02393408 */ cpu->f[8] = cpu->f[7] * cpu->f[12];
|
|
/* 0239340C */ cpu->f[11] = -fma(cpu->f[11], cpu->f[0], -(cpu->f[13]));
|
|
/* 02393410 */ cpu->f[7] = cpu->f[11] * cpu->f[8];
|
|
/* 02393414 */ /* nop */
|
|
/* 02393418 */ _t52 = cpu->r[1] + 0x00000028u;
|
|
/* 02393418 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 0239341C */ /* nop */
|
|
/* 02393420 */ cpu->f[11] = cpu->f[11] * cpu->f[7];
|
|
/* 02393424 */ /* nop */
|
|
/* 02393428 */ cpu->f[0] = cpu->f[0] * cpu->f[7];
|
|
/* 0239342C */ _t53 = cpu->r[1] + 0x00000028u;
|
|
/* 0239342C */ rbrew_write_f32(cpu->mem, _t53, cpu->f[11]);
|
|
L_02393430: ; // 0x2393430
|
|
/* 02393430 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02393434 */ _t54 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02393434 */ _t55 = _t54 & 0x00000001u;
|
|
/* 02393434 */ if (_t55) goto L_0239346C; else goto L_02393438;
|
|
L_02393438: ; // 0x2393438
|
|
/* 02393438 */ _t56 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02393438 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 0239343C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[12]);
|
|
/* 02393440 */ _t57 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02393440 */ _t58 = _t57 & 0x00000001u;
|
|
/* 02393440 */ if (_t58) goto L_0239346C; else goto L_02393444;
|
|
L_02393444: ; // 0x2393444
|
|
/* 02393444 */ _t59 = cpu->r[30] + 0x00000000u;
|
|
/* 02393444 */ cpu->r[7] = rbrew_read32(cpu->mem, _t59);
|
|
/* 02393448 */ cpu->r[8] = 0x10080000u;
|
|
/* 0239344C */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 02393450 */ _t60 = cpu->r[8] + 0x00006550u;
|
|
/* 02393450 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t60);
|
|
/* 02393454 */ cpu->r[4] = cpu->r[7] + 0x00000018u;
|
|
/* 02393458 */ Gambit_fn_0204E7A8(cpu);
|
|
/* 0239345C */ _t61 = cpu->r[30] + 0x00000010u;
|
|
/* 0239345C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t61);
|
|
/* 02393460 */ cpu->f[8] = cpu->f[9] * cpu->f[31];
|
|
/* 02393464 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[8]);
|
|
/* 02393468 */ _t62 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02393468 */ _t63 = _t62 & 0x00000001u;
|
|
/* 02393468 */ if (_t63) goto L_0239346C; else goto L_023934D8;
|
|
L_0239346C: ; // 0x239346c
|
|
/* 0239346C */ cpu->r[11] = 0x101E0000u;
|
|
/* 02393470 */ cpu->r[0] = 0x00000000u;
|
|
/* 02393474 */ cpu->r[11] = cpu->r[11] + 0xFFFF96D8u;
|
|
/* 02393478 */ _t64 = cpu->r[30] + 0x00000048u;
|
|
/* 02393478 */ rbrew_write8(cpu->mem, _t64, (uint8_t)cpu->r[0]);
|
|
/* 0239347C */ _t65 = cpu->r[11] + 0x00000008u;
|
|
/* 0239347C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t65);
|
|
/* 02393480 */ _t66 = cpu->r[11] + 0x00000004u;
|
|
/* 02393480 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t66);
|
|
/* 02393484 */ _t67 = cpu->r[11] + 0x00000000u;
|
|
/* 02393484 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t67);
|
|
/* 02393488 */ _t68 = cpu->r[1] + 0x00000030u;
|
|
/* 02393488 */ rbrew_write_f32(cpu->mem, _t68, cpu->f[12]);
|
|
/* 0239348C */ _t69 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0239348C */ rbrew_write_f32(cpu->mem, _t69, cpu->f[10]);
|
|
/* 02393490 */ _t70 = cpu->r[11] + 0x00000010u;
|
|
/* 02393490 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t70);
|
|
/* 02393494 */ _t71 = cpu->r[11] + 0x0000000Cu;
|
|
/* 02393494 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t71);
|
|
/* 02393498 */ _t72 = cpu->r[11] + 0x00000020u;
|
|
/* 02393498 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t72);
|
|
/* 0239349C */ _t73 = cpu->r[1] + 0x00000038u;
|
|
/* 0239349C */ rbrew_write_f32(cpu->mem, _t73, cpu->f[0]);
|
|
/* 023934A0 */ _t74 = cpu->r[1] + 0x0000004Cu;
|
|
/* 023934A0 */ rbrew_write_f32(cpu->mem, _t74, cpu->f[11]);
|
|
/* 023934A4 */ _t75 = cpu->r[11] + 0x00000014u;
|
|
/* 023934A4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t75);
|
|
/* 023934A8 */ _t76 = cpu->r[1] + 0x0000003Cu;
|
|
/* 023934A8 */ rbrew_write_f32(cpu->mem, _t76, cpu->f[8]);
|
|
/* 023934AC */ _t77 = cpu->r[11] + 0x0000001Cu;
|
|
/* 023934AC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t77);
|
|
/* 023934B0 */ _t78 = cpu->r[11] + 0x00000018u;
|
|
/* 023934B0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t78);
|
|
/* 023934B4 */ cpu->r[11] = cpu->r[1] + 0x000000C4u;
|
|
/* 023934B8 */ _t79 = cpu->r[1] + 0x00000040u;
|
|
/* 023934B8 */ rbrew_write_f32(cpu->mem, _t79, cpu->f[10]);
|
|
/* 023934BC */ cpu->r[12] = 0x00000003u;
|
|
/* 023934C0 */ _t80 = cpu->r[1] + 0x00000034u;
|
|
/* 023934C0 */ rbrew_write_f32(cpu->mem, _t80, cpu->f[13]);
|
|
/* 023934C4 */ cpu->r[10] = cpu->r[30] + 0x00000020u;
|
|
/* 023934C8 */ _t81 = cpu->r[1] + 0x00000048u;
|
|
/* 023934C8 */ rbrew_write_f32(cpu->mem, _t81, cpu->f[0]);
|
|
/* 023934CC */ cpu->ctr = cpu->r[12];
|
|
/* 023934D0 */ _t82 = cpu->r[1] + 0x00000044u;
|
|
/* 023934D0 */ rbrew_write_f32(cpu->mem, _t82, cpu->f[12]);
|
|
/* 023934D4 */ goto L_02393828;
|
|
L_023934D8: ; // 0x23934d8
|
|
/* 023934D8 */ _t83 = cpu->r[30] + 0x00000000u;
|
|
/* 023934D8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t83);
|
|
/* 023934DC */ cpu->r[0] = 0x00000001u;
|
|
/* 023934E0 */ /* nop */
|
|
/* 023934E4 */ cpu->r[31] = 0x101F0000u;
|
|
/* 023934E8 */ _t84 = cpu->r[30] + 0x00000048u;
|
|
/* 023934E8 */ rbrew_write8(cpu->mem, _t84, (uint8_t)cpu->r[0]);
|
|
/* 023934EC */ /* nop */
|
|
/* 023934F0 */ cpu->r[31] = cpu->r[31] + 0x0000635Cu;
|
|
/* 023934F4 */ _t85 = cpu->r[1] + 0x00000028u;
|
|
/* 023934F4 */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t85);
|
|
/* 023934F8 */ /* nop */
|
|
/* 023934FC */ /* nop */
|
|
/* 02393500 */ /* nop */
|
|
/* 02393504 */ _t86 = cpu->r[10] + 0x00000020u;
|
|
/* 02393504 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t86);
|
|
/* 02393508 */ /* nop */
|
|
/* 0239350C */ _t87 = cpu->r[10] + 0x00000008u;
|
|
/* 0239350C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t87);
|
|
/* 02393510 */ /* nop */
|
|
/* 02393514 */ _t88 = cpu->r[10] + 0x00000014u;
|
|
/* 02393514 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t88);
|
|
/* 02393518 */ cpu->f[11] = fma(cpu->f[5], cpu->f[8], cpu->f[11]);
|
|
/* 0239351C */ _t89 = cpu->r[31] + 0x00000008u;
|
|
/* 0239351C */ cpu->f[26] = rbrew_read_f32(cpu->mem, _t89);
|
|
/* 02393520 */ cpu->f[7] = fma(cpu->f[5], cpu->f[10], cpu->f[9]);
|
|
/* 02393524 */ /* nop */
|
|
/* 02393528 */ _t90 = cpu->r[1] + 0x00000050u;
|
|
/* 02393528 */ rbrew_write_f32(cpu->mem, _t90, cpu->f[11]);
|
|
/* 0239352C */ /* nop */
|
|
/* 02393530 */ _t91 = cpu->r[1] + 0x00000050u;
|
|
/* 02393530 */ cpu->r[7] = rbrew_read32(cpu->mem, _t91);
|
|
/* 02393534 */ /* nop */
|
|
/* 02393538 */ _t92 = cpu->r[1] + 0x00000054u;
|
|
/* 02393538 */ rbrew_write_f32(cpu->mem, _t92, cpu->f[7]);
|
|
/* 0239353C */ cpu->f[10] = fma(cpu->f[5], cpu->f[0], cpu->f[11]);
|
|
/* 02393540 */ _t93 = cpu->r[1] + 0x00000008u;
|
|
/* 02393540 */ rbrew_write32(cpu->mem, _t93, cpu->r[7]);
|
|
/* 02393544 */ _t94 = cpu->r[1] + 0x00000008u;
|
|
/* 02393544 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t94);
|
|
/* 02393548 */ _t95 = cpu->r[1] + 0x00000058u;
|
|
/* 02393548 */ rbrew_write_f32(cpu->mem, _t95, cpu->f[10]);
|
|
/* 0239354C */ _t96 = cpu->r[1] + 0x00000058u;
|
|
/* 0239354C */ cpu->r[9] = rbrew_read32(cpu->mem, _t96);
|
|
/* 02393550 */ cpu->f[8] = cpu->f[7] * cpu->f[26];
|
|
/* 02393554 */ _t97 = cpu->r[1] + 0x00000010u;
|
|
/* 02393554 */ rbrew_write32(cpu->mem, _t97, cpu->r[9]);
|
|
/* 02393558 */ _t98 = cpu->r[1] + 0x00000010u;
|
|
/* 02393558 */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t98);
|
|
/* 0239355C */ _t99 = cpu->r[31] + 0x00000000u;
|
|
/* 0239355C */ cpu->f[25] = rbrew_read_f32(cpu->mem, _t99);
|
|
/* 02393560 */ cpu->f[9] = cpu->f[5] * cpu->f[26];
|
|
/* 02393564 */ cpu->f[1] = fma(cpu->f[5], cpu->f[25], -(cpu->f[8]));
|
|
/* 02393568 */ _t100 = cpu->r[1] + 0x00000054u;
|
|
/* 02393568 */ cpu->r[8] = rbrew_read32(cpu->mem, _t100);
|
|
/* 0239356C */ cpu->f[2] = fma(cpu->f[7], cpu->f[25], cpu->f[9]);
|
|
/* 02393570 */ _t101 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02393570 */ rbrew_write32(cpu->mem, _t101, cpu->r[8]);
|
|
/* 02393574 */ Gambit_fn_02C89074(cpu);
|
|
/* 02393578 */ _t102 = cpu->r[30] + 0x00000014u;
|
|
/* 02393578 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t102);
|
|
/* 0239357C */ cpu->f[11] = fabs(cpu->f[1]);
|
|
/* 02393580 */ cpu->f[7] = cpu->f[10] * cpu->f[31];
|
|
/* 02393584 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[7]);
|
|
/* 02393588 */ _t103 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02393588 */ _t104 = _t103 & 0x00000001u;
|
|
/* 02393588 */ if (_t104) goto L_0239358C; else goto L_023935C4;
|
|
L_0239358C: ; // 0x239358c
|
|
/* 0239358C */ cpu->f[1] = cpu->f[7] / cpu->f[11];
|
|
/* 02393590 */ _t105 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02393590 */ cpu->r[7] = rbrew_read32(cpu->mem, _t105);
|
|
/* 02393594 */ _t106 = cpu->r[1] + 0x00000010u;
|
|
/* 02393594 */ cpu->r[8] = rbrew_read32(cpu->mem, _t106);
|
|
/* 02393598 */ _t107 = cpu->r[1] + 0x00000010u;
|
|
/* 02393598 */ rbrew_write_f32(cpu->mem, _t107, cpu->f[26]);
|
|
/* 0239359C */ _t108 = cpu->r[31] + 0x00000004u;
|
|
/* 0239359C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t108);
|
|
/* 023935A0 */ _t109 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023935A0 */ rbrew_write_f32(cpu->mem, _t109, cpu->f[13]);
|
|
/* 023935A4 */ _t110 = cpu->r[1] + 0x0000012Cu;
|
|
/* 023935A4 */ rbrew_write32(cpu->mem, _t110, cpu->r[7]);
|
|
/* 023935A8 */ _t111 = cpu->r[1] + 0x00000008u;
|
|
/* 023935A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t111);
|
|
/* 023935AC */ _t112 = cpu->r[1] + 0x00000128u;
|
|
/* 023935AC */ rbrew_write32(cpu->mem, _t112, cpu->r[0]);
|
|
/* 023935B0 */ _t113 = cpu->r[1] + 0x00000008u;
|
|
/* 023935B0 */ rbrew_write_f32(cpu->mem, _t113, cpu->f[25]);
|
|
/* 023935B4 */ _t114 = cpu->r[1] + 0x00000130u;
|
|
/* 023935B4 */ rbrew_write32(cpu->mem, _t114, cpu->r[8]);
|
|
/* 023935B8 */ cpu->r[4] = cpu->r[1] + 0x00000128u;
|
|
/* 023935BC */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 023935C0 */ Gambit_fn_0204E80C(cpu);
|
|
L_023935C4: ; // 0x23935c4
|
|
/* 023935C4 */ _t115 = cpu->r[1] + 0x00000008u;
|
|
/* 023935C4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t115);
|
|
/* 023935C8 */ cpu->r[3] = 0x101F0000u;
|
|
/* 023935CC */ _t116 = cpu->r[3] + 0x00006350u;
|
|
/* 023935CC */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t116);
|
|
/* 023935CC */ cpu->r[3] = _t116;
|
|
/* 023935D0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[29]);
|
|
/* 023935D4 */ _t117 = cpu->r[3] + 0x00000004u;
|
|
/* 023935D4 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t117);
|
|
/* 023935D8 */ _t118 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023935D8 */ _t119 = _t118 & 0x00000001u;
|
|
/* 023935D8 */ if (_t119) goto L_023935E4; else goto L_023935DC;
|
|
L_023935DC: ; // 0x23935dc
|
|
/* 023935DC */ _t120 = cpu->r[3] + 0x00000008u;
|
|
/* 023935DC */ cpu->f[27] = rbrew_read_f32(cpu->mem, _t120);
|
|
/* 023935E0 */ goto L_02393608;
|
|
L_023935E4: ; // 0x23935e4
|
|
/* 023935E4 */ _t121 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023935E4 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t121);
|
|
/* 023935E8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[28]);
|
|
/* 023935EC */ _t122 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023935EC */ _t123 = _t122 & 0x00000001u;
|
|
/* 023935EC */ if (_t123) goto L_023935F0; else goto L_02393604;
|
|
L_023935F0: ; // 0x23935f0
|
|
/* 023935F0 */ _t124 = cpu->r[3] + 0x00000008u;
|
|
/* 023935F0 */ cpu->f[27] = rbrew_read_f32(cpu->mem, _t124);
|
|
/* 023935F4 */ _t125 = cpu->r[1] + 0x00000010u;
|
|
/* 023935F4 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t125);
|
|
/* 023935F8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[27]);
|
|
/* 023935FC */ _t126 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023935FC */ _t127 = _t126 & 0x00000001u;
|
|
/* 023935FC */ if (_t127) goto L_02393600; else goto L_02393608;
|
|
L_02393600: ; // 0x2393600
|
|
/* 02393600 */ goto L_02393778;
|
|
L_02393604: ; // 0x2393604
|
|
/* 02393604 */ _t128 = cpu->r[3] + 0x00000008u;
|
|
/* 02393604 */ cpu->f[27] = rbrew_read_f32(cpu->mem, _t128);
|
|
L_02393608: ; // 0x2393608
|
|
/* 02393608 */ cpu->f[12] = -cpu->f[28];
|
|
/* 0239360C */ _t129 = cpu->r[1] + 0x00000008u;
|
|
/* 0239360C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t129);
|
|
/* 02393610 */ cpu->f[11] = -cpu->f[29];
|
|
/* 02393614 */ _t130 = cpu->r[1] + 0x00000060u;
|
|
/* 02393614 */ rbrew_write_f32(cpu->mem, _t130, cpu->f[12]);
|
|
/* 02393618 */ cpu->f[13] = -cpu->f[27];
|
|
/* 0239361C */ _t131 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0239361C */ rbrew_write_f32(cpu->mem, _t131, cpu->f[11]);
|
|
/* 02393620 */ _t132 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02393620 */ cpu->r[11] = rbrew_read32(cpu->mem, _t132);
|
|
/* 02393624 */ _t133 = cpu->r[1] + 0x00000064u;
|
|
/* 02393624 */ rbrew_write_f32(cpu->mem, _t133, cpu->f[13]);
|
|
/* 02393628 */ _t134 = cpu->r[1] + 0x000000ECu;
|
|
/* 02393628 */ rbrew_write32(cpu->mem, _t134, cpu->r[11]);
|
|
/* 0239362C */ _t135 = cpu->r[1] + 0x000000ECu;
|
|
/* 0239362C */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t135);
|
|
/* 02393630 */ _t136 = cpu->r[1] + 0x00000060u;
|
|
/* 02393630 */ cpu->r[12] = rbrew_read32(cpu->mem, _t136);
|
|
/* 02393634 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[7]);
|
|
/* 02393638 */ _t137 = cpu->r[1] + 0x00000064u;
|
|
/* 02393638 */ cpu->r[0] = rbrew_read32(cpu->mem, _t137);
|
|
/* 0239363C */ _t138 = cpu->r[1] + 0x000000F0u;
|
|
/* 0239363C */ rbrew_write32(cpu->mem, _t138, cpu->r[12]);
|
|
/* 02393640 */ _t139 = cpu->r[1] + 0x000000F4u;
|
|
/* 02393640 */ rbrew_write32(cpu->mem, _t139, cpu->r[0]);
|
|
/* 02393644 */ _t140 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02393644 */ _t141 = _t140 & 0x00000001u;
|
|
/* 02393644 */ if (_t141) goto L_02393648; else goto L_02393658;
|
|
L_02393648: ; // 0x2393648
|
|
/* 02393648 */ _t142 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02393648 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t142);
|
|
/* 0239364C */ _t143 = cpu->r[1] + 0x000000F0u;
|
|
/* 0239364C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t143);
|
|
/* 02393650 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[9]);
|
|
/* 02393654 */ _t144 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02393654 */ _t145 = _t144 & 0x00000001u;
|
|
/* 02393654 */ if (_t145) goto L_02393768; else goto L_02393658;
|
|
L_02393658: ; // 0x2393658
|
|
/* 02393658 */ _t146 = cpu->r[1] + 0x00000010u;
|
|
/* 02393658 */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t146);
|
|
L_0239365C: ; // 0x239365c
|
|
/* 0239365C */ cpu->r[12] = 0x101F0000u;
|
|
/* 02393660 */ /* nop */
|
|
/* 02393664 */ cpu->r[12] = cpu->r[12] + 0x00006344u;
|
|
/* 02393668 */ /* nop */
|
|
/* 0239366C */ /* nop */
|
|
/* 02393670 */ /* nop */
|
|
/* 02393674 */ /* nop */
|
|
/* 02393678 */ cpu->f[0] = cpu->f[13];
|
|
/* 0239367C */ /* nop */
|
|
/* 02393680 */ /* nop */
|
|
/* 02393684 */ _t147 = cpu->r[12] + 0x00000008u;
|
|
/* 02393684 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t147);
|
|
/* 02393688 */ _t148 = cpu->r[1] + 0x00000010u;
|
|
/* 02393688 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t148);
|
|
/* 0239368C */ cpu->f[0] = fma(cpu->f[5], cpu->f[13], cpu->f[0]);
|
|
/* 02393690 */ cpu->f[10] = fma(cpu->f[9], cpu->f[26], cpu->f[7]);
|
|
/* 02393694 */ /* nop */
|
|
/* 02393698 */ /* nop */
|
|
/* 0239369C */ _t149 = cpu->r[1] + 0x000000A4u;
|
|
/* 0239369C */ cpu->r[10] = rbrew_read32(cpu->mem, _t149);
|
|
/* 023936A0 */ _t150 = cpu->r[1] + 0x000000A8u;
|
|
/* 023936A0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t150);
|
|
/* 023936A4 */ /* nop */
|
|
/* 023936A8 */ _t151 = cpu->r[1] + 0x00000104u;
|
|
/* 023936A8 */ rbrew_write32(cpu->mem, _t151, cpu->r[10]);
|
|
/* 023936AC */ cpu->f[12] = cpu->f[26] * cpu->f[10];
|
|
/* 023936B0 */ /* nop */
|
|
/* 023936B4 */ _t152 = cpu->r[1] + 0x000000B0u;
|
|
/* 023936B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t152);
|
|
/* 023936B8 */ cpu->f[11] = cpu->f[13] * cpu->f[0];
|
|
/* 023936BC */ _t153 = cpu->r[1] + 0x00000110u;
|
|
/* 023936BC */ rbrew_write32(cpu->mem, _t153, cpu->r[0]);
|
|
/* 023936C0 */ _t154 = cpu->r[1] + 0x000000B8u;
|
|
/* 023936C0 */ rbrew_write_f32(cpu->mem, _t154, cpu->f[12]);
|
|
/* 023936C4 */ _t155 = cpu->r[1] + 0x000000B8u;
|
|
/* 023936C4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t155);
|
|
/* 023936C8 */ _t156 = cpu->r[1] + 0x000000ACu;
|
|
/* 023936C8 */ rbrew_write_f32(cpu->mem, _t156, cpu->f[11]);
|
|
/* 023936CC */ _t157 = cpu->r[1] + 0x000000ACu;
|
|
/* 023936CC */ cpu->r[7] = rbrew_read32(cpu->mem, _t157);
|
|
/* 023936D0 */ _t158 = cpu->r[1] + 0x000000B4u;
|
|
/* 023936D0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t158);
|
|
/* 023936D4 */ _t159 = cpu->r[1] + 0x00000118u;
|
|
/* 023936D4 */ rbrew_write32(cpu->mem, _t159, cpu->r[0]);
|
|
/* 023936D8 */ _t160 = cpu->r[1] + 0x00000118u;
|
|
/* 023936D8 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t160);
|
|
/* 023936DC */ _t161 = cpu->r[1] + 0x00000114u;
|
|
/* 023936DC */ rbrew_write32(cpu->mem, _t161, cpu->r[12]);
|
|
/* 023936E0 */ /* nop */
|
|
/* 023936E4 */ _t162 = cpu->r[1] + 0x00000108u;
|
|
/* 023936E4 */ rbrew_write32(cpu->mem, _t162, cpu->r[11]);
|
|
/* 023936E8 */ /* nop */
|
|
/* 023936EC */ _t163 = cpu->r[1] + 0x0000010Cu;
|
|
/* 023936EC */ rbrew_write32(cpu->mem, _t163, cpu->r[7]);
|
|
/* 023936F0 */ _t164 = cpu->r[1] + 0x0000010Cu;
|
|
/* 023936F0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t164);
|
|
/* 023936F4 */ /* nop */
|
|
/* 023936F8 */ /* nop */
|
|
/* 023936FC */ _t165 = cpu->r[1] + 0x000000C0u;
|
|
/* 023936FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t165);
|
|
/* 02393700 */ _t166 = cpu->r[1] + 0x000000BCu;
|
|
/* 02393700 */ cpu->r[11] = rbrew_read32(cpu->mem, _t166);
|
|
/* 02393704 */ cpu->f[12] = cpu->f[0] + cpu->f[8];
|
|
/* 02393708 */ _t167 = cpu->r[1] + 0x000000FCu;
|
|
/* 02393708 */ rbrew_write32(cpu->mem, _t167, cpu->r[0]);
|
|
/* 0239370C */ _t168 = cpu->r[1] + 0x000000F8u;
|
|
/* 0239370C */ rbrew_write32(cpu->mem, _t168, cpu->r[11]);
|
|
/* 02393710 */ _t169 = cpu->r[1] + 0x000000F8u;
|
|
/* 02393710 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t169);
|
|
/* 02393714 */ _t170 = cpu->r[1] + 0x000000C4u;
|
|
/* 02393714 */ rbrew_write_f32(cpu->mem, _t170, cpu->f[12]);
|
|
/* 02393718 */ _t171 = cpu->r[1] + 0x000000C4u;
|
|
/* 02393718 */ cpu->r[7] = rbrew_read32(cpu->mem, _t171);
|
|
/* 0239371C */ _t172 = cpu->r[1] + 0x000000FCu;
|
|
/* 0239371C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t172);
|
|
/* 02393720 */ _t173 = cpu->r[1] + 0x00000100u;
|
|
/* 02393720 */ rbrew_write32(cpu->mem, _t173, cpu->r[7]);
|
|
/* 02393724 */ _t174 = cpu->r[1] + 0x00000100u;
|
|
/* 02393724 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t174);
|
|
/* 02393728 */ _t175 = cpu->r[1] + 0x00000014u;
|
|
/* 02393728 */ rbrew_write_f32(cpu->mem, _t175, cpu->f[11]);
|
|
/* 0239372C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02393730 */ _t176 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02393730 */ rbrew_write_f32(cpu->mem, _t176, cpu->f[13]);
|
|
/* 02393734 */ cpu->r[5] = cpu->r[1] + 0x00000134u;
|
|
/* 02393738 */ _t177 = cpu->r[1] + 0x00000018u;
|
|
/* 02393738 */ rbrew_write_f32(cpu->mem, _t177, cpu->f[12]);
|
|
/* 0239373C */ Gambit_fn_02C692EC(cpu);
|
|
/* 02393740 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02393744 */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 02393748 */ cpu->r[5] = cpu->r[1] + 0x00000134u;
|
|
/* 0239374C */ Gambit_fn_0204F0A0(cpu);
|
|
/* 02393750 */ _t178 = cpu->r[30] + 0x00000018u;
|
|
/* 02393750 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t178);
|
|
/* 02393754 */ cpu->f[11] = fabs(cpu->f[1]);
|
|
/* 02393758 */ cpu->f[9] = cpu->f[8] * cpu->f[31];
|
|
/* 0239375C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[9]);
|
|
/* 02393760 */ _t179 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02393760 */ _t180 = _t179 & 0x00000001u;
|
|
/* 02393760 */ if (_t180) goto L_02393764; else goto L_023937E0;
|
|
L_02393764: ; // 0x2393764
|
|
/* 02393764 */ goto L_023937A0;
|
|
L_02393768: ; // 0x2393768
|
|
/* 02393768 */ _t181 = cpu->r[1] + 0x00000010u;
|
|
/* 02393768 */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t181);
|
|
/* 0239376C */ _t182 = cpu->r[1] + 0x000000F4u;
|
|
/* 0239376C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t182);
|
|
/* 02393770 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[5], cpu->f[10]);
|
|
/* 02393774 */ _t183 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02393774 */ _t184 = _t183 & 0x00000001u;
|
|
/* 02393774 */ if (_t184) goto L_02393778; else goto L_0239365C;
|
|
L_02393778: ; // 0x2393778
|
|
/* 02393778 */ _t185 = cpu->r[31] + 0x00000004u;
|
|
/* 02393778 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t185);
|
|
/* 0239377C */ _t186 = cpu->r[30] + 0x00000018u;
|
|
/* 0239377C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t186);
|
|
/* 02393780 */ cpu->r[11] = 0x10080000u;
|
|
/* 02393784 */ _t187 = cpu->r[1] + 0x00000018u;
|
|
/* 02393784 */ rbrew_write_f32(cpu->mem, _t187, cpu->f[11]);
|
|
/* 02393788 */ cpu->f[9] = cpu->f[8] * cpu->f[31];
|
|
/* 0239378C */ _t188 = cpu->r[11] + 0x00006554u;
|
|
/* 0239378C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t188);
|
|
/* 02393790 */ _t189 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02393790 */ rbrew_write_f32(cpu->mem, _t189, cpu->f[26]);
|
|
/* 02393794 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[9]);
|
|
/* 02393798 */ _t190 = cpu->r[1] + 0x00000014u;
|
|
/* 02393798 */ rbrew_write_f32(cpu->mem, _t190, cpu->f[25]);
|
|
/* 0239379C */ _t191 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0239379C */ _t192 = _t191 & 0x00000001u;
|
|
/* 0239379C */ if (_t192) goto L_023937A0; else goto L_023937E0;
|
|
L_023937A0: ; // 0x23937a0
|
|
/* 023937A0 */ cpu->f[1] = cpu->f[9] / cpu->f[11];
|
|
/* 023937A4 */ _t193 = cpu->r[1] + 0x0000001Cu;
|
|
/* 023937A4 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t193);
|
|
/* 023937A8 */ _t194 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023937A8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t194);
|
|
/* 023937AC */ _t195 = cpu->r[1] + 0x00000144u;
|
|
/* 023937AC */ rbrew_write32(cpu->mem, _t195, cpu->r[8]);
|
|
/* 023937B0 */ _t196 = cpu->r[1] + 0x00000008u;
|
|
/* 023937B0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t196);
|
|
/* 023937B4 */ _t197 = cpu->r[1] + 0x00000140u;
|
|
/* 023937B4 */ rbrew_write32(cpu->mem, _t197, cpu->r[7]);
|
|
/* 023937B8 */ _t198 = cpu->r[1] + 0x00000018u;
|
|
/* 023937B8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t198);
|
|
/* 023937BC */ _t199 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023937BC */ rbrew_write_f32(cpu->mem, _t199, cpu->f[0]);
|
|
/* 023937C0 */ _t200 = cpu->r[1] + 0x00000010u;
|
|
/* 023937C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t200);
|
|
/* 023937C4 */ _t201 = cpu->r[1] + 0x00000010u;
|
|
/* 023937C4 */ rbrew_write_f32(cpu->mem, _t201, cpu->f[7]);
|
|
/* 023937C8 */ _t202 = cpu->r[1] + 0x00000014u;
|
|
/* 023937C8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t202);
|
|
/* 023937CC */ _t203 = cpu->r[1] + 0x00000008u;
|
|
/* 023937CC */ rbrew_write_f32(cpu->mem, _t203, cpu->f[13]);
|
|
/* 023937D0 */ _t204 = cpu->r[1] + 0x00000148u;
|
|
/* 023937D0 */ rbrew_write32(cpu->mem, _t204, cpu->r[0]);
|
|
/* 023937D4 */ cpu->r[4] = cpu->r[1] + 0x00000140u;
|
|
/* 023937D8 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 023937DC */ Gambit_fn_0204E80C(cpu);
|
|
L_023937E0: ; // 0x23937e0
|
|
/* 023937E0 */ _t205 = cpu->r[1] + 0x00000010u;
|
|
/* 023937E0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t205);
|
|
/* 023937E4 */ cpu->r[4] = 0x10080000u;
|
|
/* 023937E8 */ _t206 = cpu->r[1] + 0x00000040u;
|
|
/* 023937E8 */ rbrew_write_f32(cpu->mem, _t206, cpu->f[27]);
|
|
/* 023937EC */ cpu->r[4] = cpu->r[4] + 0x00006558u;
|
|
/* 023937F0 */ _t207 = cpu->r[1] + 0x0000004Cu;
|
|
/* 023937F0 */ rbrew_write_f32(cpu->mem, _t207, cpu->f[11]);
|
|
/* 023937F4 */ _t208 = cpu->r[1] + 0x00000038u;
|
|
/* 023937F4 */ rbrew_write_f32(cpu->mem, _t208, cpu->f[29]);
|
|
/* 023937F8 */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 023937FC */ _t209 = cpu->r[1] + 0x00000008u;
|
|
/* 023937FC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t209);
|
|
/* 02393800 */ _t210 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02393800 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t210);
|
|
/* 02393804 */ _t211 = cpu->r[1] + 0x00000044u;
|
|
/* 02393804 */ rbrew_write_f32(cpu->mem, _t211, cpu->f[10]);
|
|
/* 02393808 */ _t212 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02393808 */ rbrew_write_f32(cpu->mem, _t212, cpu->f[28]);
|
|
/* 0239380C */ cpu->r[5] = 0x00000380u;
|
|
/* 02393810 */ _t213 = cpu->r[1] + 0x00000048u;
|
|
/* 02393810 */ rbrew_write_f32(cpu->mem, _t213, cpu->f[9]);
|
|
/* 02393814 */ Gambit_fn_0204D64C(cpu);
|
|
/* 02393818 */ cpu->r[12] = 0x00000003u;
|
|
/* 0239381C */ cpu->r[10] = cpu->r[30] + 0x00000020u;
|
|
/* 02393820 */ cpu->ctr = cpu->r[12];
|
|
/* 02393824 */ cpu->r[11] = cpu->r[1] + 0x000000C4u;
|
|
L_02393828: ; // 0x2393828
|
|
/* 02393828 */ _t214 = cpu->r[10] + 0x00000004u;
|
|
/* 02393828 */ cpu->r[0] = rbrew_read32(cpu->mem, _t214);
|
|
/* 0239382C */ _t215 = cpu->r[11] + 0x00000004u;
|
|
/* 0239382C */ rbrew_write32(cpu->mem, _t215, cpu->r[0]);
|
|
/* 02393830 */ _t216 = cpu->r[10] + 0x00000008u;
|
|
/* 02393830 */ cpu->r[8] = rbrew_read32(cpu->mem, _t216);
|
|
/* 02393834 */ _t217 = cpu->r[11] + 0x00000008u;
|
|
/* 02393834 */ rbrew_write32(cpu->mem, _t217, cpu->r[8]);
|
|
/* 02393838 */ _t218 = cpu->r[10] + 0x0000000Cu;
|
|
/* 02393838 */ cpu->r[0] = rbrew_read32(cpu->mem, _t218);
|
|
/* 02393838 */ cpu->r[10] = _t218;
|
|
/* 0239383C */ _t219 = cpu->r[11] + 0x0000000Cu;
|
|
/* 0239383C */ rbrew_write32(cpu->mem, _t219, cpu->r[0]);
|
|
/* 0239383C */ cpu->r[11] = _t219;
|
|
/* 02393840 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02393840 */ _t220 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02393840 */ _t221 = _t220 >> (0x00000002u & 31u);
|
|
/* 02393840 */ _t222 = _t221 & 0x00000001u;
|
|
/* 02393840 */ if (_t222) goto L_02393828; else goto L_02393844;
|
|
L_02393844: ; // 0x2393844
|
|
/* 02393844 */ _t223 = cpu->r[30] + 0x00000020u;
|
|
/* 02393844 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t223);
|
|
/* 02393848 */ cpu->r[3] = cpu->r[1] + 0x000000C8u;
|
|
/* 0239384C */ cpu->r[4] = cpu->r[1] + 0x0000002Cu;
|
|
/* 02393850 */ Gambit_fn_0204B794(cpu);
|
|
/* 02393854 */ _t224 = cpu->r[1] + 0x000000E0u;
|
|
/* 02393854 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t224);
|
|
/* 02393858 */ _t225 = cpu->r[1] + 0x000000D0u;
|
|
/* 02393858 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t225);
|
|
/* 0239385C */ _t226 = cpu->r[1] + 0x00000070u;
|
|
/* 0239385C */ rbrew_write_f32(cpu->mem, _t226, cpu->f[11]);
|
|
/* 02393860 */ _t227 = cpu->r[30] + 0x0000002Cu;
|
|
/* 02393860 */ rbrew_write_f32(cpu->mem, _t227, cpu->f[8]);
|
|
/* 02393864 */ _t228 = cpu->r[1] + 0x00000088u;
|
|
/* 02393864 */ rbrew_write_f32(cpu->mem, _t228, cpu->f[8]);
|
|
/* 02393868 */ _t229 = cpu->r[1] + 0x000000DCu;
|
|
/* 02393868 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t229);
|
|
/* 0239386C */ _t230 = cpu->r[1] + 0x000000D4u;
|
|
/* 0239386C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t230);
|
|
/* 02393870 */ _t231 = cpu->r[1] + 0x0000008Cu;
|
|
/* 02393870 */ rbrew_write_f32(cpu->mem, _t231, cpu->f[9]);
|
|
/* 02393874 */ _t232 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02393874 */ rbrew_write_f32(cpu->mem, _t232, cpu->f[10]);
|
|
/* 02393878 */ _t233 = cpu->r[1] + 0x000000C8u;
|
|
/* 02393878 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t233);
|
|
/* 0239387C */ _t234 = cpu->r[30] + 0x0000003Cu;
|
|
/* 0239387C */ rbrew_write_f32(cpu->mem, _t234, cpu->f[11]);
|
|
/* 02393880 */ _t235 = cpu->r[1] + 0x00000068u;
|
|
/* 02393880 */ rbrew_write_f32(cpu->mem, _t235, cpu->f[12]);
|
|
/* 02393884 */ _t236 = cpu->r[1] + 0x000000E8u;
|
|
/* 02393884 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t236);
|
|
/* 02393888 */ _t237 = cpu->r[30] + 0x00000024u;
|
|
/* 02393888 */ rbrew_write_f32(cpu->mem, _t237, cpu->f[12]);
|
|
/* 0239388C */ _t238 = cpu->r[30] + 0x00000044u;
|
|
/* 0239388C */ rbrew_write_f32(cpu->mem, _t238, cpu->f[0]);
|
|
/* 02393890 */ _t239 = cpu->r[1] + 0x000000E4u;
|
|
/* 02393890 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t239);
|
|
/* 02393894 */ _t240 = cpu->r[1] + 0x000000CCu;
|
|
/* 02393894 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t240);
|
|
/* 02393898 */ _t241 = cpu->r[30] + 0x00000040u;
|
|
/* 02393898 */ rbrew_write_f32(cpu->mem, _t241, cpu->f[12]);
|
|
/* 0239389C */ _t242 = cpu->r[1] + 0x00000078u;
|
|
/* 0239389C */ rbrew_write_f32(cpu->mem, _t242, cpu->f[6]);
|
|
/* 023938A0 */ _t243 = cpu->r[1] + 0x00000074u;
|
|
/* 023938A0 */ rbrew_write_f32(cpu->mem, _t243, cpu->f[30]);
|
|
/* 023938A4 */ _t244 = cpu->r[1] + 0x00000094u;
|
|
/* 023938A4 */ rbrew_write_f32(cpu->mem, _t244, cpu->f[30]);
|
|
/* 023938A8 */ _t245 = cpu->r[1] + 0x000000D8u;
|
|
/* 023938A8 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t245);
|
|
/* 023938AC */ _t246 = cpu->r[1] + 0x00000090u;
|
|
/* 023938AC */ rbrew_write_f32(cpu->mem, _t246, cpu->f[0]);
|
|
/* 023938B0 */ _t247 = cpu->r[1] + 0x0000007Cu;
|
|
/* 023938B0 */ rbrew_write_f32(cpu->mem, _t247, cpu->f[7]);
|
|
/* 023938B4 */ _t248 = cpu->r[30] + 0x00000030u;
|
|
/* 023938B4 */ rbrew_write_f32(cpu->mem, _t248, cpu->f[10]);
|
|
/* 023938B8 */ cpu->r[5] = cpu->r[1] + 0x0000014Cu;
|
|
/* 023938BC */ _t249 = cpu->r[30] + 0x00000034u;
|
|
/* 023938BC */ rbrew_write_f32(cpu->mem, _t249, cpu->f[7]);
|
|
/* 023938C0 */ cpu->r[3] = cpu->r[1] + 0x00000068u;
|
|
/* 023938C4 */ _t250 = cpu->r[30] + 0x00000038u;
|
|
/* 023938C4 */ rbrew_write_f32(cpu->mem, _t250, cpu->f[9]);
|
|
/* 023938C8 */ cpu->r[4] = cpu->r[5];
|
|
/* 023938CC */ _t251 = cpu->r[30] + 0x00000028u;
|
|
/* 023938CC */ rbrew_write_f32(cpu->mem, _t251, cpu->f[6]);
|
|
/* 023938D0 */ _t252 = cpu->r[1] + 0x00000084u;
|
|
/* 023938D0 */ rbrew_write_f32(cpu->mem, _t252, cpu->f[30]);
|
|
/* 023938D4 */ _t253 = cpu->r[1] + 0x00000080u;
|
|
/* 023938D4 */ rbrew_write_f32(cpu->mem, _t253, cpu->f[12]);
|
|
/* 023938D8 */ Gambit_fn_02C69544(cpu);
|
|
/* 023938DC */ cpu->r[4] = cpu->r[30] + 0x0000000Cu;
|
|
/* 023938E0 */ _t254 = cpu->r[30] + 0x00000008u;
|
|
/* 023938E0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t254);
|
|
/* 023938E4 */ cpu->r[5] = cpu->r[1] + 0x0000014Cu;
|
|
/* 023938E8 */ cpu->r[6] = cpu->r[1] + 0x0000011Cu;
|
|
/* 023938EC */ Gambit_fn_02980840(cpu);
|
|
/* 023938F0 */ _t255 = cpu->r[1] + 0x00000180u;
|
|
/* 023938F0 */ cpu->r[28] = rbrew_read32(cpu->mem, _t255);
|
|
/* 023938F4 */ _t256 = cpu->r[1] + 0x00000184u;
|
|
/* 023938F4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t256);
|
|
/* 023938F8 */ _t257 = cpu->r[1] + 0x00000188u;
|
|
/* 023938F8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t257);
|
|
/* 023938FC */ _t258 = cpu->r[1] + 0x0000018Cu;
|
|
/* 023938FC */ cpu->r[31] = rbrew_read32(cpu->mem, _t258);
|
|
/* 02393900 */ _t259 = cpu->r[1] + 0x00000198u;
|
|
/* 02393900 */ cpu->f[25] = rbrew_read_f32(cpu->mem, _t259);
|
|
/* 02393904 */ _t260 = cpu->r[1] + 0x00000190u;
|
|
/* 02393904 */ cpu->f[25] = rbrew_read_f64(cpu->mem, _t260);
|
|
/* 02393908 */ _t261 = cpu->r[1] + 0x000001A8u;
|
|
/* 02393908 */ cpu->f[26] = rbrew_read_f32(cpu->mem, _t261);
|
|
/* 0239390C */ _t262 = cpu->r[1] + 0x000001A0u;
|
|
/* 0239390C */ cpu->f[26] = rbrew_read_f64(cpu->mem, _t262);
|
|
/* 02393910 */ _t263 = cpu->r[1] + 0x000001F8u;
|
|
/* 02393910 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t263);
|
|
/* 02393914 */ _t264 = cpu->r[1] + 0x000001D8u;
|
|
/* 02393914 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t264);
|
|
/* 02393918 */ _t265 = cpu->r[1] + 0x000001F0u;
|
|
/* 02393918 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t265);
|
|
/* 0239391C */ _t266 = cpu->r[1] + 0x000001E8u;
|
|
/* 0239391C */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t266);
|
|
/* 02393920 */ _t267 = cpu->r[1] + 0x000001D0u;
|
|
/* 02393920 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t267);
|
|
/* 02393924 */ _t268 = cpu->r[1] + 0x000001E0u;
|
|
/* 02393924 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t268);
|
|
/* 02393928 */ _t269 = cpu->r[1] + 0x000001C8u;
|
|
/* 02393928 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t269);
|
|
/* 0239392C */ _t270 = cpu->r[1] + 0x000001B8u;
|
|
/* 0239392C */ cpu->f[27] = rbrew_read_f32(cpu->mem, _t270);
|
|
/* 02393930 */ _t271 = cpu->r[1] + 0x000001C0u;
|
|
/* 02393930 */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t271);
|
|
/* 02393934 */ _t272 = cpu->r[1] + 0x000001B0u;
|
|
/* 02393934 */ cpu->f[27] = rbrew_read_f64(cpu->mem, _t272);
|
|
/* 02393938 */ _t273 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02393938 */ _t274 = _t273 & 0x00000001u;
|
|
/* 02393938 */ if (_t274) goto L_0239393C; // else: addr-0 trap, fall-through
|
|
L_0239393C: ; // 0x239393c
|
|
/* 0239393C */ _t275 = cpu->r[1] + 0x00000204u;
|
|
/* 0239393C */ cpu->r[0] = rbrew_read32(cpu->mem, _t275);
|
|
/* 02393940 */ cpu->lr = cpu->r[0];
|
|
/* 02393944 */ cpu->r[1] = cpu->r[1] + 0x00000200u;
|
|
/* 02393948 */ return;
|
|
}
|
|
|
|
// fn_0239394C @ 0x239394c
|
|
void Gambit_fn_0239394C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_0239394C: ; // 0x239394c
|
|
/* 0239394C */ cpu->r[0] = cpu->lr;
|
|
/* 02393950 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 02393950 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 02393954 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02393958 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 02393958 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 02393958 */ cpu->r[1] = _t1;
|
|
/* 0239395C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239395C */ _t3 = _t2 & 0x00000001u;
|
|
/* 0239395C */ if (_t3) goto L_02393960; else goto L_02393970;
|
|
L_02393960: ; // 0x2393960
|
|
/* 02393960 */ cpu->r[3] = 0x00000024u;
|
|
/* 02393964 */ Gambit_fn_02801A78(cpu);
|
|
/* 02393968 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239396C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239396C */ _t5 = _t4 & 0x00000001u;
|
|
/* 0239396C */ if (_t5) goto L_023939A0; else goto L_02393970;
|
|
L_02393970: ; // 0x2393970
|
|
/* 02393970 */ cpu->r[12] = 0x10080000u;
|
|
/* 02393974 */ _t6 = cpu->r[12] + 0x000064D8u;
|
|
/* 02393974 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 02393978 */ cpu->r[12] = 0x00000000u;
|
|
/* 0239397C */ _t7 = cpu->r[3] + 0x00000008u;
|
|
/* 0239397C */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 02393980 */ _t8 = cpu->r[3] + 0x00000018u;
|
|
/* 02393980 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[0]);
|
|
/* 02393984 */ _t9 = cpu->r[3] + 0x0000001Cu;
|
|
/* 02393984 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[0]);
|
|
/* 02393988 */ _t10 = cpu->r[3] + 0x00000004u;
|
|
/* 02393988 */ rbrew_write32(cpu->mem, _t10, cpu->r[12]);
|
|
/* 0239398C */ _t11 = cpu->r[3] + 0x00000020u;
|
|
/* 0239398C */ rbrew_write_f32(cpu->mem, _t11, cpu->f[0]);
|
|
/* 02393990 */ _t12 = cpu->r[3] + 0x00000000u;
|
|
/* 02393990 */ rbrew_write32(cpu->mem, _t12, cpu->r[12]);
|
|
/* 02393994 */ _t13 = cpu->r[3] + 0x00000010u;
|
|
/* 02393994 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[0]);
|
|
/* 02393998 */ _t14 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02393998 */ rbrew_write32(cpu->mem, _t14, cpu->r[12]);
|
|
/* 0239399C */ _t15 = cpu->r[3] + 0x00000014u;
|
|
/* 0239399C */ rbrew_write_f32(cpu->mem, _t15, cpu->f[0]);
|
|
L_023939A0: ; // 0x23939a0
|
|
/* 023939A0 */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023939A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 023939A4 */ cpu->lr = cpu->r[0];
|
|
/* 023939A8 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 023939AC */ return;
|
|
}
|
|
|
|
// fn_02393958 @ 0x2393958
|
|
void Gambit_fn_02393958(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_02393958: ; // 0x2393958
|
|
/* 02393958 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 02393958 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02393958 */ cpu->r[1] = _t0;
|
|
/* 0239395C */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239395C */ _t2 = _t1 & 0x00000001u;
|
|
/* 0239395C */ if (_t2) goto L_02393960; else goto L_02393970;
|
|
L_02393960: ; // 0x2393960
|
|
/* 02393960 */ cpu->r[3] = 0x00000024u;
|
|
/* 02393964 */ Gambit_fn_02801A78(cpu);
|
|
/* 02393968 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239396C */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239396C */ _t4 = _t3 & 0x00000001u;
|
|
/* 0239396C */ if (_t4) goto L_023939A0; else goto L_02393970;
|
|
L_02393970: ; // 0x2393970
|
|
/* 02393970 */ cpu->r[12] = 0x10080000u;
|
|
/* 02393974 */ _t5 = cpu->r[12] + 0x000064D8u;
|
|
/* 02393974 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 02393978 */ cpu->r[12] = 0x00000000u;
|
|
/* 0239397C */ _t6 = cpu->r[3] + 0x00000008u;
|
|
/* 0239397C */ rbrew_write32(cpu->mem, _t6, cpu->r[12]);
|
|
/* 02393980 */ _t7 = cpu->r[3] + 0x00000018u;
|
|
/* 02393980 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[0]);
|
|
/* 02393984 */ _t8 = cpu->r[3] + 0x0000001Cu;
|
|
/* 02393984 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[0]);
|
|
/* 02393988 */ _t9 = cpu->r[3] + 0x00000004u;
|
|
/* 02393988 */ rbrew_write32(cpu->mem, _t9, cpu->r[12]);
|
|
/* 0239398C */ _t10 = cpu->r[3] + 0x00000020u;
|
|
/* 0239398C */ rbrew_write_f32(cpu->mem, _t10, cpu->f[0]);
|
|
/* 02393990 */ _t11 = cpu->r[3] + 0x00000000u;
|
|
/* 02393990 */ rbrew_write32(cpu->mem, _t11, cpu->r[12]);
|
|
/* 02393994 */ _t12 = cpu->r[3] + 0x00000010u;
|
|
/* 02393994 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[0]);
|
|
/* 02393998 */ _t13 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02393998 */ rbrew_write32(cpu->mem, _t13, cpu->r[12]);
|
|
/* 0239399C */ _t14 = cpu->r[3] + 0x00000014u;
|
|
/* 0239399C */ rbrew_write_f32(cpu->mem, _t14, cpu->f[0]);
|
|
L_023939A0: ; // 0x23939a0
|
|
/* 023939A0 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023939A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 023939A4 */ cpu->lr = cpu->r[0];
|
|
/* 023939A8 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 023939AC */ return;
|
|
}
|
|
|
|
// fn_023939B0 @ 0x23939b0
|
|
void Gambit_fn_023939B0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_023939B0: ; // 0x23939b0
|
|
/* 023939B0 */ cpu->r[0] = cpu->lr;
|
|
/* 023939B4 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 023939B4 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 023939B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023939BC */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 023939BC */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 023939BC */ cpu->r[1] = _t1;
|
|
/* 023939C0 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023939C0 */ _t3 = _t2 & 0x00000001u;
|
|
/* 023939C0 */ if (_t3) goto L_023939C4; else goto L_023939D4;
|
|
L_023939C4: ; // 0x23939c4
|
|
/* 023939C4 */ cpu->r[3] = 0x00000008u;
|
|
/* 023939C8 */ Gambit_fn_02801A78(cpu);
|
|
/* 023939CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023939D0 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023939D0 */ _t5 = _t4 & 0x00000001u;
|
|
/* 023939D0 */ if (_t5) goto L_023939E8; else goto L_023939D4;
|
|
L_023939D4: ; // 0x23939d4
|
|
/* 023939D4 */ cpu->r[12] = 0x10080000u;
|
|
/* 023939D8 */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 023939DC */ _t6 = cpu->r[12] + 0x000064D8u;
|
|
/* 023939DC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 023939E0 */ _t7 = cpu->r[3] + 0x00000004u;
|
|
/* 023939E0 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 023939E4 */ _t8 = cpu->r[3] + 0x00000000u;
|
|
/* 023939E4 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[0]);
|
|
L_023939E8: ; // 0x23939e8
|
|
/* 023939E8 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023939E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 023939EC */ cpu->lr = cpu->r[0];
|
|
/* 023939F0 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 023939F4 */ return;
|
|
}
|
|
|
|
// fn_023939BC @ 0x23939bc
|
|
void Gambit_fn_023939BC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_023939BC: ; // 0x23939bc
|
|
/* 023939BC */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 023939BC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 023939BC */ cpu->r[1] = _t0;
|
|
/* 023939C0 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023939C0 */ _t2 = _t1 & 0x00000001u;
|
|
/* 023939C0 */ if (_t2) goto L_023939C4; else goto L_023939D4;
|
|
L_023939C4: ; // 0x23939c4
|
|
/* 023939C4 */ cpu->r[3] = 0x00000008u;
|
|
/* 023939C8 */ Gambit_fn_02801A78(cpu);
|
|
/* 023939CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023939D0 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023939D0 */ _t4 = _t3 & 0x00000001u;
|
|
/* 023939D0 */ if (_t4) goto L_023939E8; else goto L_023939D4;
|
|
L_023939D4: ; // 0x23939d4
|
|
/* 023939D4 */ cpu->r[12] = 0x10080000u;
|
|
/* 023939D8 */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 023939DC */ _t5 = cpu->r[12] + 0x000064D8u;
|
|
/* 023939DC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 023939E0 */ _t6 = cpu->r[3] + 0x00000004u;
|
|
/* 023939E0 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 023939E4 */ _t7 = cpu->r[3] + 0x00000000u;
|
|
/* 023939E4 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[0]);
|
|
L_023939E8: ; // 0x23939e8
|
|
/* 023939E8 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023939E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 023939EC */ cpu->lr = cpu->r[0];
|
|
/* 023939F0 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 023939F4 */ return;
|
|
}
|
|
|
|
// fn_023939F8 @ 0x23939f8
|
|
void Gambit_fn_023939F8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_023939F8: ; // 0x23939f8
|
|
/* 023939F8 */ cpu->r[12] = 0x10080000u;
|
|
/* 023939FC */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 02393A00 */ _t0 = cpu->r[12] + 0x000064D8u;
|
|
/* 02393A00 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 02393A04 */ _t1 = cpu->r[3] + 0x00000004u;
|
|
/* 02393A04 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02393A08 */ _t2 = cpu->r[3] + 0x00000000u;
|
|
/* 02393A08 */ rbrew_write_f32(cpu->mem, _t2, cpu->f[0]);
|
|
/* 02393A0C */ return;
|
|
}
|
|
|
|
// fn_02393A10 @ 0x2393a10
|
|
void Gambit_fn_02393A10(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_02393A10: ; // 0x2393a10
|
|
/* 02393A10 */ cpu->r[0] = cpu->lr;
|
|
/* 02393A14 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02393A14 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02393A14 */ cpu->r[1] = _t0;
|
|
/* 02393A18 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02393A18 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02393A1C */ cpu->r[10] = 0x10080000u;
|
|
/* 02393A20 */ _t2 = cpu->r[10] + 0x000064E8u;
|
|
/* 02393A20 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 02393A24 */ cpu->r[31] = cpu->r[3];
|
|
/* 02393A28 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02393A28 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02393A2C */ _t4 = cpu->r[31] + 0x00000000u;
|
|
/* 02393A2C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 02393A30 */ cpu->f[0] = cpu->f[0] + cpu->f[13];
|
|
/* 02393A34 */ cpu->r[12] = 0x101C0000u;
|
|
/* 02393A38 */ _t5 = cpu->r[31] + 0x00000000u;
|
|
/* 02393A38 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[0]);
|
|
/* 02393A3C */ _t6 = cpu->r[12] + 0x00006000u;
|
|
/* 02393A3C */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02393A40 */ _t7 = cpu->r[12] + 0x00000250u;
|
|
/* 02393A40 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02393A44 */ _t8 = cpu->r[12] + 0x00000254u;
|
|
/* 02393A44 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02393A48 */ _t9 = cpu->r[3] + 0x000000E0u;
|
|
/* 02393A48 */ cpu->r[10] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02393A4C */ _t10 = cpu->r[10] + 0x00000184u;
|
|
/* 02393A4C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02393A50 */ cpu->ctr = cpu->r[0];
|
|
/* 02393A54 */ cpu->r[4] = 0x00000000u;
|
|
/* 02393A58 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02393A5C */ _t11 = cpu->r[31] + 0x00000004u;
|
|
/* 02393A5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02393A60 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], cpu->r[0]);
|
|
/* 02393A64 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02393A64 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02393A64 */ if (_t13) goto L_02393A74; else goto L_02393A68;
|
|
L_02393A68: ; // 0x2393a68
|
|
/* 02393A68 */ cpu->r[11] = 0x10080000u;
|
|
/* 02393A6C */ _t14 = cpu->r[11] + 0x000064D8u;
|
|
/* 02393A6C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 02393A70 */ _t15 = cpu->r[31] + 0x00000000u;
|
|
/* 02393A70 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[0]);
|
|
L_02393A74: ; // 0x2393a74
|
|
/* 02393A74 */ _t16 = cpu->r[31] + 0x00000004u;
|
|
/* 02393A74 */ rbrew_write32(cpu->mem, _t16, cpu->r[3]);
|
|
/* 02393A78 */ _t17 = cpu->r[1] + 0x00000014u;
|
|
/* 02393A78 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02393A7C */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02393A7C */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02393A80 */ cpu->lr = cpu->r[0];
|
|
/* 02393A84 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02393A88 */ return;
|
|
}
|
|
|
|
// fn_02393A14 @ 0x2393a14
|
|
void Gambit_fn_02393A14(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_02393A14: ; // 0x2393a14
|
|
/* 02393A14 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02393A14 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02393A14 */ cpu->r[1] = _t0;
|
|
/* 02393A18 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02393A18 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02393A1C */ cpu->r[10] = 0x10080000u;
|
|
/* 02393A20 */ _t2 = cpu->r[10] + 0x000064E8u;
|
|
/* 02393A20 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 02393A24 */ cpu->r[31] = cpu->r[3];
|
|
/* 02393A28 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02393A28 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02393A2C */ _t4 = cpu->r[31] + 0x00000000u;
|
|
/* 02393A2C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 02393A30 */ cpu->f[0] = cpu->f[0] + cpu->f[13];
|
|
/* 02393A34 */ cpu->r[12] = 0x101C0000u;
|
|
/* 02393A38 */ _t5 = cpu->r[31] + 0x00000000u;
|
|
/* 02393A38 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[0]);
|
|
/* 02393A3C */ _t6 = cpu->r[12] + 0x00006000u;
|
|
/* 02393A3C */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02393A40 */ _t7 = cpu->r[12] + 0x00000250u;
|
|
/* 02393A40 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02393A44 */ _t8 = cpu->r[12] + 0x00000254u;
|
|
/* 02393A44 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02393A48 */ _t9 = cpu->r[3] + 0x000000E0u;
|
|
/* 02393A48 */ cpu->r[10] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02393A4C */ _t10 = cpu->r[10] + 0x00000184u;
|
|
/* 02393A4C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02393A50 */ cpu->ctr = cpu->r[0];
|
|
/* 02393A54 */ cpu->r[4] = 0x00000000u;
|
|
/* 02393A58 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02393A5C */ _t11 = cpu->r[31] + 0x00000004u;
|
|
/* 02393A5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02393A60 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], cpu->r[0]);
|
|
/* 02393A64 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02393A64 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02393A64 */ if (_t13) goto L_02393A74; else goto L_02393A68;
|
|
L_02393A68: ; // 0x2393a68
|
|
/* 02393A68 */ cpu->r[11] = 0x10080000u;
|
|
/* 02393A6C */ _t14 = cpu->r[11] + 0x000064D8u;
|
|
/* 02393A6C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 02393A70 */ _t15 = cpu->r[31] + 0x00000000u;
|
|
/* 02393A70 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[0]);
|
|
L_02393A74: ; // 0x2393a74
|
|
/* 02393A74 */ _t16 = cpu->r[31] + 0x00000004u;
|
|
/* 02393A74 */ rbrew_write32(cpu->mem, _t16, cpu->r[3]);
|
|
/* 02393A78 */ _t17 = cpu->r[1] + 0x00000014u;
|
|
/* 02393A78 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02393A7C */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02393A7C */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02393A80 */ cpu->lr = cpu->r[0];
|
|
/* 02393A84 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02393A88 */ return;
|
|
}
|
|
|
|
// fn_02393A8C @ 0x2393a8c
|
|
void Gambit_fn_02393A8C(CPUState* cpu) {
|
|
L_02393A8C: ; // 0x2393a8c
|
|
/* 02393A8C */ return;
|
|
}
|
|
|
|
// fn_02393A90 @ 0x2393a90
|
|
void Gambit_fn_02393A90(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_02393A90: ; // 0x2393a90
|
|
/* 02393A90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02393A94 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02393A94 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02393A94 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02393A94 */ goto L_02393A98;
|
|
L_02393A98: ; // 0x2393a98
|
|
/* 02393A98 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02393A98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02393A9C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02393A9C */ _t3 = _t2 & 0x00000001u;
|
|
/* 02393A9C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02393A9C */ goto L_02393AA0;
|
|
L_02393AA0: ; // 0x2393aa0
|
|
/* 02393AA0 */ 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_02393AA4 @ 0x2393aa4
|
|
void Gambit_fn_02393AA4(CPUState* cpu) {
|
|
L_02393AA4: ; // 0x2393aa4
|
|
/* 02393AA4 */ return;
|
|
}
|
|
|
|
// fn_02393AA8 @ 0x2393aa8
|
|
void Gambit_fn_02393AA8(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_02393AA8: ; // 0x2393aa8
|
|
/* 02393AA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02393AAC */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02393AAC */ _t1 = _t0 & 0x00000001u;
|
|
/* 02393AAC */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02393AAC */ goto L_02393AB0;
|
|
L_02393AB0: ; // 0x2393ab0
|
|
/* 02393AB0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02393AB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02393AB4 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02393AB4 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02393AB4 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02393AB4 */ goto L_02393AB8;
|
|
L_02393AB8: ; // 0x2393ab8
|
|
/* 02393AB8 */ 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_02393ABC @ 0x2393abc
|
|
void Gambit_fn_02393ABC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_02393ABC: ; // 0x2393abc
|
|
/* 02393ABC */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 02393ABC */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02393AC0 */ _t1 = cpu->r[3] + 0x00000008u;
|
|
/* 02393AC0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02393AC4 */ cpu->r[12] = cpu->r[11] + cpu->r[12];
|
|
/* 02393AC8 */ cpu->r[11] = 0x10110000u;
|
|
/* 02393ACC */ _t2 = cpu->r[11] + 0x00007399u;
|
|
/* 02393ACC */ cpu->r[0] = rbrew_read8(cpu->mem, _t2);
|
|
/* 02393AD0 */ _t3 = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 02393AD0 */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[0]);
|
|
/* 02393AD4 */ return;
|
|
}
|
|
|
|
// fn_02393AD8 @ 0x2393ad8
|
|
void Gambit_fn_02393AD8(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_02393AD8: ; // 0x2393ad8
|
|
/* 02393AD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02393ADC */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02393ADC */ _t1 = _t0 & 0x00000001u;
|
|
/* 02393ADC */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02393ADC */ goto L_02393AE0;
|
|
L_02393AE0: ; // 0x2393ae0
|
|
/* 02393AE0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02393AE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02393AE4 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02393AE4 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02393AE4 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02393AE4 */ goto L_02393AE8;
|
|
L_02393AE8: ; // 0x2393ae8
|
|
/* 02393AE8 */ 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_02393AEC @ 0x2393aec
|
|
void Gambit_fn_02393AEC(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_02393AEC: ; // 0x2393aec
|
|
/* 02393AEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02393AF0 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02393AF0 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02393AF0 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02393AF0 */ goto L_02393AF4;
|
|
L_02393AF4: ; // 0x2393af4
|
|
/* 02393AF4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02393AF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02393AF8 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02393AF8 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02393AF8 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02393AF8 */ goto L_02393AFC;
|
|
L_02393AFC: ; // 0x2393afc
|
|
/* 02393AFC */ 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_02393B00 @ 0x2393b00
|
|
void Gambit_fn_02393B00(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02393B00: ; // 0x2393b00
|
|
/* 02393B00 */ _t0 = cpu->r[3] + 0x00000010u;
|
|
/* 02393B00 */ cpu->r[3] = rbrew_read8(cpu->mem, _t0);
|
|
/* 02393B04 */ return;
|
|
}
|
|
|
|
// fn_02393B08 @ 0x2393b08
|
|
void Gambit_fn_02393B08(CPUState* cpu) {
|
|
L_02393B08: ; // 0x2393b08
|
|
/* 02393B08 */ cpu->r[3] = 0xFFFFFFFFu;
|
|
/* 02393B0C */ return;
|
|
}
|
|
|
|
// fn_02393B10 @ 0x2393b10
|
|
void Gambit_fn_02393B10(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_02393B10: ; // 0x2393b10
|
|
/* 02393B10 */ cpu->r[0] = cpu->lr;
|
|
/* 02393B14 */ cpu->r[10] = 0x10080000u;
|
|
/* 02393B18 */ cpu->r[10] = cpu->r[10] + 0x00006598u;
|
|
/* 02393B1C */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 02393B1C */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 02393B20 */ cpu->r[0] = 0x10080000u;
|
|
/* 02393B24 */ _t1 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02393B24 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 02393B24 */ cpu->r[1] = _t1;
|
|
/* 02393B28 */ cpu->r[0] = cpu->r[0] + 0x000065C0u;
|
|
/* 02393B2C */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02393B2C */ rbrew_write32(cpu->mem, _t2, cpu->r[10]);
|
|
/* 02393B30 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02393B34 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 02393B34 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02393B38 */ Gambit_fn_020F0AA8(cpu);
|
|
/* 02393B3C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02393B40 */ cpu->r[11] = cpu->r[3];
|
|
/* 02393B44 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02393B44 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02393B44 */ if (_t5) goto L_02393B5C; else goto L_02393B48;
|
|
L_02393B48: ; // 0x2393b48
|
|
/* 02393B48 */ cpu->r[12] = 0x101C0000u;
|
|
/* 02393B4C */ _t6 = cpu->r[12] + 0x00006000u;
|
|
/* 02393B4C */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02393B50 */ _t7 = cpu->r[12] + 0x00000254u;
|
|
/* 02393B50 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02393B54 */ cpu->r[4] = cpu->r[11] + 0x0000008Cu;
|
|
/* 02393B58 */ Gambit_fn_020EF0E4(cpu);
|
|
L_02393B5C: ; // 0x2393b5c
|
|
/* 02393B5C */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 02393B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02393B60 */ cpu->lr = cpu->r[0];
|
|
/* 02393B64 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02393B68 */ return;
|
|
}
|
|
|
|
// fn_02393B24 @ 0x2393b24
|
|
void Gambit_fn_02393B24(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_02393B24: ; // 0x2393b24
|
|
/* 02393B24 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02393B24 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02393B24 */ cpu->r[1] = _t0;
|
|
/* 02393B28 */ cpu->r[0] = cpu->r[0] + 0x000065C0u;
|
|
/* 02393B2C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02393B2C */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 02393B30 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02393B34 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02393B34 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02393B38 */ Gambit_fn_020F0AA8(cpu);
|
|
/* 02393B3C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02393B40 */ cpu->r[11] = cpu->r[3];
|
|
/* 02393B44 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02393B44 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02393B44 */ if (_t4) goto L_02393B5C; else goto L_02393B48;
|
|
L_02393B48: ; // 0x2393b48
|
|
/* 02393B48 */ cpu->r[12] = 0x101C0000u;
|
|
/* 02393B4C */ _t5 = cpu->r[12] + 0x00006000u;
|
|
/* 02393B4C */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02393B50 */ _t6 = cpu->r[12] + 0x00000254u;
|
|
/* 02393B50 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02393B54 */ cpu->r[4] = cpu->r[11] + 0x0000008Cu;
|
|
/* 02393B58 */ Gambit_fn_020EF0E4(cpu);
|
|
L_02393B5C: ; // 0x2393b5c
|
|
/* 02393B5C */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 02393B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02393B60 */ cpu->lr = cpu->r[0];
|
|
/* 02393B64 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02393B68 */ return;
|
|
}
|
|
|
|
// fn_02393B6C @ 0x2393b6c
|
|
void Gambit_fn_02393B6C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_02393B6C: ; // 0x2393b6c
|
|
/* 02393B6C */ cpu->r[0] = cpu->lr;
|
|
/* 02393B70 */ cpu->r[10] = 0x10080000u;
|
|
/* 02393B74 */ cpu->r[10] = cpu->r[10] + 0x00006598u;
|
|
/* 02393B78 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 02393B78 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 02393B7C */ cpu->r[0] = 0x10080000u;
|
|
/* 02393B80 */ _t1 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02393B80 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 02393B80 */ cpu->r[1] = _t1;
|
|
/* 02393B84 */ cpu->r[0] = cpu->r[0] + 0x000065D0u;
|
|
/* 02393B88 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02393B88 */ rbrew_write32(cpu->mem, _t2, cpu->r[10]);
|
|
/* 02393B8C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02393B90 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 02393B90 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02393B94 */ Gambit_fn_020F0AA8(cpu);
|
|
/* 02393B98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02393B9C */ cpu->r[11] = cpu->r[3];
|
|
/* 02393BA0 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02393BA0 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02393BA0 */ if (_t5) goto L_02393BB8; else goto L_02393BA4;
|
|
L_02393BA4: ; // 0x2393ba4
|
|
/* 02393BA4 */ cpu->r[12] = 0x101C0000u;
|
|
/* 02393BA8 */ _t6 = cpu->r[12] + 0x00006000u;
|
|
/* 02393BA8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02393BAC */ _t7 = cpu->r[12] + 0x00000254u;
|
|
/* 02393BAC */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02393BB0 */ cpu->r[4] = cpu->r[11] + 0x0000008Cu;
|
|
/* 02393BB4 */ Gambit_fn_020EF0E4(cpu);
|
|
L_02393BB8: ; // 0x2393bb8
|
|
/* 02393BB8 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 02393BB8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02393BBC */ cpu->lr = cpu->r[0];
|
|
/* 02393BC0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02393BC4 */ return;
|
|
}
|
|
|
|
// fn_02393B80 @ 0x2393b80
|
|
void Gambit_fn_02393B80(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_02393B80: ; // 0x2393b80
|
|
/* 02393B80 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02393B80 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02393B80 */ cpu->r[1] = _t0;
|
|
/* 02393B84 */ cpu->r[0] = cpu->r[0] + 0x000065D0u;
|
|
/* 02393B88 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02393B88 */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 02393B8C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02393B90 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02393B90 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02393B94 */ Gambit_fn_020F0AA8(cpu);
|
|
/* 02393B98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02393B9C */ cpu->r[11] = cpu->r[3];
|
|
/* 02393BA0 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02393BA0 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02393BA0 */ if (_t4) goto L_02393BB8; else goto L_02393BA4;
|
|
L_02393BA4: ; // 0x2393ba4
|
|
/* 02393BA4 */ cpu->r[12] = 0x101C0000u;
|
|
/* 02393BA8 */ _t5 = cpu->r[12] + 0x00006000u;
|
|
/* 02393BA8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02393BAC */ _t6 = cpu->r[12] + 0x00000254u;
|
|
/* 02393BAC */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02393BB0 */ cpu->r[4] = cpu->r[11] + 0x0000008Cu;
|
|
/* 02393BB4 */ Gambit_fn_020EF0E4(cpu);
|
|
L_02393BB8: ; // 0x2393bb8
|
|
/* 02393BB8 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 02393BB8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02393BBC */ cpu->lr = cpu->r[0];
|
|
/* 02393BC0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02393BC4 */ return;
|
|
}
|
|
|
|
// fn_02393BC8 @ 0x2393bc8
|
|
void Gambit_fn_02393BC8(CPUState* cpu) {
|
|
uint32_t _t0, _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_02393BC8: ; // 0x2393bc8
|
|
/* 02393BC8 */ cpu->r[0] = cpu->lr;
|
|
/* 02393BCC */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02393BCC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02393BCC */ cpu->r[1] = _t0;
|
|
/* 02393BD0 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 02393BD0 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02393BD4 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02393BD4 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 02393BD8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02393BD8 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 02393BDC */ _t4 = cpu->r[1] + 0x00000008u;
|
|
/* 02393BDC */ rbrew_write32(cpu->mem, _t4, cpu->r[28]);
|
|
/* 02393BE0 */ cpu->r[12] = 0x101C0000u;
|
|
/* 02393BE4 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02393BE4 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02393BE8 */ cpu->r[0] = 0x00000000u;
|
|
/* 02393BEC */ cpu->r[29] = cpu->r[3];
|
|
/* 02393BF0 */ cpu->r[31] = cpu->r[0];
|
|
/* 02393BF4 */ _t6 = cpu->r[29] + 0x000023B8u;
|
|
/* 02393BF4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02393BF8 */ _t7 = cpu->r[12] + 0x00006000u;
|
|
/* 02393BF8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02393BFC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[8]);
|
|
/* 02393C00 */ _t8 = cpu->r[12] + 0x00000254u;
|
|
/* 02393C00 */ cpu->r[30] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02393C04 */ _t9 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02393C04 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02393C04 */ if (_t10) goto L_02393C08; else goto L_02393C60;
|
|
L_02393C08: ; // 0x2393c08
|
|
/* 02393C08 */ cpu->r[28] = cpu->r[29] + 0x000023BCu;
|
|
L_02393C0C: ; // 0x2393c0c
|
|
/* 02393C0C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], 0x00000020u);
|
|
/* 02393C10 */ _t11 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02393C10 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02393C10 */ if (_t12) goto L_02393C14; else goto L_02393C38;
|
|
L_02393C14: ; // 0x2393c14
|
|
/* 02393C14 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[31] * (int32_t)0x00000118u);
|
|
/* 02393C18 */ cpu->r[3] = cpu->r[30];
|
|
/* 02393C1C */ cpu->r[10] = cpu->r[28] + cpu->r[0];
|
|
/* 02393C20 */ cpu->r[5] = 0x00000000u;
|
|
/* 02393C24 */ cpu->r[4] = cpu->r[10] + 0x0000008Cu;
|
|
/* 02393C28 */ Gambit_fn_020EEE78(cpu);
|
|
/* 02393C2C */ cpu->r[0] = cpu->r[3];
|
|
/* 02393C2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02393C30 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02393C30 */ _t14 = _t13 & 0x00000001u;
|
|
/* 02393C30 */ if (_t14) goto L_02393C50; else goto L_02393C34;
|
|
L_02393C34: ; // 0x2393c34
|
|
/* 02393C34 */ goto L_02393C60;
|
|
L_02393C38: ; // 0x2393c38
|
|
/* 02393C38 */ cpu->r[5] = 0x00000000u;
|
|
/* 02393C3C */ cpu->r[4] = cpu->r[28] + 0x0000008Cu;
|
|
/* 02393C40 */ cpu->r[3] = cpu->r[30];
|
|
/* 02393C44 */ Gambit_fn_020EEE78(cpu);
|
|
/* 02393C48 */ cpu->r[0] = cpu->r[3];
|
|
/* 02393C48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02393C4C */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02393C4C */ _t16 = _t15 & 0x00000001u;
|
|
/* 02393C4C */ if (_t16) goto L_02393C50; else goto L_02393C60;
|
|
L_02393C50: ; // 0x2393c50
|
|
/* 02393C50 */ _t17 = cpu->r[29] + 0x000023B8u;
|
|
/* 02393C50 */ cpu->r[9] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02393C54 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 02393C58 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[9]);
|
|
/* 02393C5C */ _t18 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02393C5C */ _t19 = _t18 & 0x00000001u;
|
|
/* 02393C5C */ if (_t19) goto L_02393C0C; else goto L_02393C60;
|
|
L_02393C60: ; // 0x2393c60
|
|
/* 02393C60 */ _t20 = cpu->r[1] + 0x00000008u;
|
|
/* 02393C60 */ cpu->r[28] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02393C64 */ _t21 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02393C64 */ cpu->r[29] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02393C68 */ cpu->r[3] = cpu->r[0];
|
|
/* 02393C6C */ _t22 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02393C6C */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02393C70 */ _t23 = cpu->r[1] + 0x00000010u;
|
|
/* 02393C70 */ cpu->r[30] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02393C74 */ cpu->lr = cpu->r[0];
|
|
/* 02393C78 */ _t24 = cpu->r[1] + 0x00000014u;
|
|
/* 02393C78 */ cpu->r[31] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02393C7C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02393C80 */ return;
|
|
}
|
|
|
|
// fn_02393BCC @ 0x2393bcc
|
|
void Gambit_fn_02393BCC(CPUState* cpu) {
|
|
uint32_t _t0, _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_02393BCC: ; // 0x2393bcc
|
|
/* 02393BCC */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02393BCC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02393BCC */ cpu->r[1] = _t0;
|
|
/* 02393BD0 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 02393BD0 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02393BD4 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02393BD4 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 02393BD8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02393BD8 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 02393BDC */ _t4 = cpu->r[1] + 0x00000008u;
|
|
/* 02393BDC */ rbrew_write32(cpu->mem, _t4, cpu->r[28]);
|
|
/* 02393BE0 */ cpu->r[12] = 0x101C0000u;
|
|
/* 02393BE4 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02393BE4 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02393BE8 */ cpu->r[0] = 0x00000000u;
|
|
/* 02393BEC */ cpu->r[29] = cpu->r[3];
|
|
/* 02393BF0 */ cpu->r[31] = cpu->r[0];
|
|
/* 02393BF4 */ _t6 = cpu->r[29] + 0x000023B8u;
|
|
/* 02393BF4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02393BF8 */ _t7 = cpu->r[12] + 0x00006000u;
|
|
/* 02393BF8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02393BFC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[8]);
|
|
/* 02393C00 */ _t8 = cpu->r[12] + 0x00000254u;
|
|
/* 02393C00 */ cpu->r[30] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02393C04 */ _t9 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02393C04 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02393C04 */ if (_t10) goto L_02393C08; else goto L_02393C60;
|
|
L_02393C08: ; // 0x2393c08
|
|
/* 02393C08 */ cpu->r[28] = cpu->r[29] + 0x000023BCu;
|
|
L_02393C0C: ; // 0x2393c0c
|
|
/* 02393C0C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], 0x00000020u);
|
|
/* 02393C10 */ _t11 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02393C10 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02393C10 */ if (_t12) goto L_02393C14; else goto L_02393C38;
|
|
L_02393C14: ; // 0x2393c14
|
|
/* 02393C14 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[31] * (int32_t)0x00000118u);
|
|
/* 02393C18 */ cpu->r[3] = cpu->r[30];
|
|
/* 02393C1C */ cpu->r[10] = cpu->r[28] + cpu->r[0];
|
|
/* 02393C20 */ cpu->r[5] = 0x00000000u;
|
|
/* 02393C24 */ cpu->r[4] = cpu->r[10] + 0x0000008Cu;
|
|
/* 02393C28 */ Gambit_fn_020EEE78(cpu);
|
|
/* 02393C2C */ cpu->r[0] = cpu->r[3];
|
|
/* 02393C2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02393C30 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02393C30 */ _t14 = _t13 & 0x00000001u;
|
|
/* 02393C30 */ if (_t14) goto L_02393C50; else goto L_02393C34;
|
|
L_02393C34: ; // 0x2393c34
|
|
/* 02393C34 */ goto L_02393C60;
|
|
L_02393C38: ; // 0x2393c38
|
|
/* 02393C38 */ cpu->r[5] = 0x00000000u;
|
|
/* 02393C3C */ cpu->r[4] = cpu->r[28] + 0x0000008Cu;
|
|
/* 02393C40 */ cpu->r[3] = cpu->r[30];
|
|
/* 02393C44 */ Gambit_fn_020EEE78(cpu);
|
|
/* 02393C48 */ cpu->r[0] = cpu->r[3];
|
|
/* 02393C48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02393C4C */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02393C4C */ _t16 = _t15 & 0x00000001u;
|
|
/* 02393C4C */ if (_t16) goto L_02393C50; else goto L_02393C60;
|
|
L_02393C50: ; // 0x2393c50
|
|
/* 02393C50 */ _t17 = cpu->r[29] + 0x000023B8u;
|
|
/* 02393C50 */ cpu->r[9] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02393C54 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 02393C58 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[9]);
|
|
/* 02393C5C */ _t18 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02393C5C */ _t19 = _t18 & 0x00000001u;
|
|
/* 02393C5C */ if (_t19) goto L_02393C0C; else goto L_02393C60;
|
|
L_02393C60: ; // 0x2393c60
|
|
/* 02393C60 */ _t20 = cpu->r[1] + 0x00000008u;
|
|
/* 02393C60 */ cpu->r[28] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02393C64 */ _t21 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02393C64 */ cpu->r[29] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02393C68 */ cpu->r[3] = cpu->r[0];
|
|
/* 02393C6C */ _t22 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02393C6C */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02393C70 */ _t23 = cpu->r[1] + 0x00000010u;
|
|
/* 02393C70 */ cpu->r[30] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02393C74 */ cpu->lr = cpu->r[0];
|
|
/* 02393C78 */ _t24 = cpu->r[1] + 0x00000014u;
|
|
/* 02393C78 */ cpu->r[31] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02393C7C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02393C80 */ return;
|
|
}
|
|
|
|
// fn_02393C84 @ 0x2393c84
|
|
void Gambit_fn_02393C84(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_02393C84: ; // 0x2393c84
|
|
/* 02393C84 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 02393C84 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02393C84 */ cpu->r[1] = _t0;
|
|
/* 02393C88 */ cpu->r[0] = cpu->lr;
|
|
/* 02393C8C */ /* nop */
|
|
/* 02393C90 */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 02393C90 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02393C94 */ cpu->r[29] = cpu->r[3];
|
|
/* 02393C94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 02393C98 */ cpu->r[31] = 0x00000000u;
|
|
/* 02393C9C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02393C9C */ _t3 = _t2 & 0x00000001u;
|
|
/* 02393C9C */ if (_t3) goto L_02393D1C; else goto L_02393CA0;
|
|
L_02393CA0: ; // 0x2393ca0
|
|
/* 02393CA0 */ _t4 = cpu->r[29] + 0x000023B8u;
|
|
/* 02393CA0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02393CA4 */ cpu->r[12] = 0x101C0000u;
|
|
/* 02393CA8 */ _t5 = cpu->r[12] + 0x00006000u;
|
|
/* 02393CA8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02393CAC */ cpu->r[30] = 0x00000000u;
|
|
/* 02393CB0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[0]);
|
|
/* 02393CB4 */ _t6 = cpu->r[12] + 0x00000254u;
|
|
/* 02393CB4 */ cpu->r[28] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02393CB8 */ _t7 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02393CB8 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02393CB8 */ if (_t8) goto L_02393CBC; else goto L_02393D1C;
|
|
L_02393CBC: ; // 0x2393cbc
|
|
/* 02393CBC */ cpu->r[27] = cpu->r[29] + 0x000023BCu;
|
|
L_02393CC0: ; // 0x2393cc0
|
|
/* 02393CC0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], 0x00000020u);
|
|
/* 02393CC4 */ _t9 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02393CC4 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02393CC4 */ if (_t10) goto L_02393CC8; else goto L_02393CF0;
|
|
L_02393CC8: ; // 0x2393cc8
|
|
/* 02393CC8 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[30] * (int32_t)0x00000118u);
|
|
/* 02393CCC */ cpu->r[3] = cpu->r[28];
|
|
/* 02393CD0 */ cpu->r[9] = cpu->r[27] + cpu->r[0];
|
|
/* 02393CD4 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02393CD8 */ cpu->r[4] = cpu->r[9] + 0x0000008Cu;
|
|
/* 02393CDC */ Gambit_fn_020EEE78(cpu);
|
|
/* 02393CE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02393CE4 */ _t11 = cpu->r[29] + 0x000023B8u;
|
|
/* 02393CE4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02393CE8 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02393CE8 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02393CE8 */ if (_t13) goto L_02393D10; else goto L_02393CEC;
|
|
L_02393CEC: ; // 0x2393cec
|
|
/* 02393CEC */ goto L_02393D0C;
|
|
L_02393CF0: ; // 0x2393cf0
|
|
/* 02393CF0 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02393CF4 */ cpu->r[4] = cpu->r[27] + 0x0000008Cu;
|
|
/* 02393CF8 */ cpu->r[3] = cpu->r[28];
|
|
/* 02393CFC */ Gambit_fn_020EEE78(cpu);
|
|
/* 02393D00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02393D04 */ _t14 = cpu->r[29] + 0x000023B8u;
|
|
/* 02393D04 */ cpu->r[10] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02393D08 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02393D08 */ _t16 = _t15 & 0x00000001u;
|
|
/* 02393D08 */ if (_t16) goto L_02393D10; else goto L_02393D0C;
|
|
L_02393D0C: ; // 0x2393d0c
|
|
/* 02393D0C */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
L_02393D10: ; // 0x2393d10
|
|
/* 02393D10 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 02393D14 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[10]);
|
|
/* 02393D18 */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02393D18 */ _t18 = _t17 & 0x00000001u;
|
|
/* 02393D18 */ if (_t18) goto L_02393CC0; else goto L_02393D1C;
|
|
L_02393D1C: ; // 0x2393d1c
|
|
/* 02393D1C */ cpu->r[3] = cpu->r[31];
|
|
/* 02393D20 */ /* nop */
|
|
/* 02393D24 */ _t19 = cpu->r[1] + 0x00000024u;
|
|
/* 02393D24 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02393D28 */ cpu->lr = cpu->r[0];
|
|
/* 02393D2C */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 02393D30 */ return;
|
|
}
|
|
|
|
// fn_02393D34 @ 0x2393d34
|
|
void Gambit_fn_02393D34(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _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_02393D34: ; // 0x2393d34
|
|
/* 02393D34 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 02393D34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02393D34 */ cpu->r[1] = _t0;
|
|
/* 02393D38 */ /* nop */
|
|
/* 02393D3C */ cpu->r[0] = cpu->lr;
|
|
/* 02393D40 */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02393D40 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02393D44 */ cpu->r[29] = cpu->r[4];
|
|
/* 02393D48 */ cpu->r[30] = cpu->r[5];
|
|
/* 02393D4C */ cpu->r[12] = 0x101C0000u;
|
|
/* 02393D50 */ _t2 = cpu->r[30] + 0x000023B8u;
|
|
/* 02393D50 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02393D54 */ cpu->r[31] = 0x00000000u;
|
|
/* 02393D58 */ _t3 = cpu->r[12] + 0x00006000u;
|
|
/* 02393D58 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02393D5C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]);
|
|
/* 02393D60 */ cpu->r[28] = cpu->r[3];
|
|
/* 02393D64 */ _t4 = cpu->r[12] + 0x00000254u;
|
|
/* 02393D64 */ cpu->r[26] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02393D68 */ _t5 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02393D68 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02393D68 */ if (_t6) goto L_02393D6C; else goto L_02393E34;
|
|
L_02393D6C: ; // 0x2393d6c
|
|
/* 02393D6C */ cpu->r[27] = cpu->r[30] + 0x000023BCu;
|
|
L_02393D70: ; // 0x2393d70
|
|
/* 02393D70 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], 0x00000020u);
|
|
/* 02393D74 */ _t7 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02393D74 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02393D74 */ if (_t8) goto L_02393D78; else goto L_02393D9C;
|
|
L_02393D78: ; // 0x2393d78
|
|
/* 02393D78 */ cpu->r[10] = (uint32_t)((int32_t)cpu->r[31] * (int32_t)0x00000118u);
|
|
/* 02393D7C */ cpu->r[3] = cpu->r[26];
|
|
/* 02393D80 */ cpu->r[11] = cpu->r[27] + cpu->r[10];
|
|
/* 02393D84 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02393D88 */ cpu->r[4] = cpu->r[11] + 0x0000008Cu;
|
|
/* 02393D8C */ Gambit_fn_020EEE78(cpu);
|
|
/* 02393D90 */ cpu->r[12] = cpu->r[3];
|
|
/* 02393D90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02393D94 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02393D94 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02393D94 */ if (_t10) goto L_02393E24; else goto L_02393D98;
|
|
L_02393D98: ; // 0x2393d98
|
|
/* 02393D98 */ goto L_02393DB4;
|
|
L_02393D9C: ; // 0x2393d9c
|
|
/* 02393D9C */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02393DA0 */ cpu->r[4] = cpu->r[27] + 0x0000008Cu;
|
|
/* 02393DA4 */ cpu->r[3] = cpu->r[26];
|
|
/* 02393DA8 */ Gambit_fn_020EEE78(cpu);
|
|
/* 02393DAC */ cpu->r[12] = cpu->r[3];
|
|
/* 02393DAC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02393DB0 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02393DB0 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02393DB0 */ if (_t12) goto L_02393E24; else goto L_02393DB4;
|
|
L_02393DB4: ; // 0x2393db4
|
|
/* 02393DB4 */ _t13 = cpu->r[28] + 0x00000000u;
|
|
/* 02393DB4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02393DB8 */ _t14 = cpu->r[28] + 0x00000004u;
|
|
/* 02393DB8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02393DBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], cpu->r[0]);
|
|
/* 02393DC0 */ _t15 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02393DC0 */ _t16 = _t15 & 0x00000001u;
|
|
/* 02393DC0 */ if (_t16) goto L_02393DC4; else goto L_02393DDC;
|
|
L_02393DC4: ; // 0x2393dc4
|
|
/* 02393DC4 */ _t17 = cpu->r[28] + 0x00000008u;
|
|
/* 02393DC4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02393DC8 */ cpu->r[5] = rbrew_rlwinm(cpu->r[9], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02393DCC */ _t18 = cpu->r[5] + cpu->r[0];
|
|
/* 02393DCC */ rbrew_write32(cpu->mem, _t18, cpu->r[12]);
|
|
/* 02393DD0 */ _t19 = cpu->r[28] + 0x00000000u;
|
|
/* 02393DD0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02393DD4 */ cpu->r[7] = cpu->r[7] + 0x00000001u;
|
|
/* 02393DD8 */ _t20 = cpu->r[28] + 0x00000000u;
|
|
/* 02393DD8 */ rbrew_write32(cpu->mem, _t20, cpu->r[7]);
|
|
L_02393DDC: ; // 0x2393ddc
|
|
/* 02393DDC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 02393DE0 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02393DE0 */ _t22 = _t21 & 0x00000001u;
|
|
/* 02393DE0 */ if (_t22) goto L_02393E24; else goto L_02393DE4;
|
|
L_02393DE4: ; // 0x2393de4
|
|
/* 02393DE4 */ _t23 = cpu->r[29] + 0x0000000Cu;
|
|
/* 02393DE4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02393DE8 */ _t24 = cpu->r[29] + 0x00000004u;
|
|
/* 02393DE8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02393DEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], cpu->r[0]);
|
|
/* 02393DF0 */ _t25 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02393DF0 */ _t26 = _t25 & 0x00000001u;
|
|
/* 02393DF0 */ if (_t26) goto L_02393DF4; else goto L_02393E24;
|
|
L_02393DF4: ; // 0x2393df4
|
|
/* 02393DF4 */ _t27 = cpu->r[29] + 0x00000008u;
|
|
/* 02393DF4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02393DF8 */ cpu->r[10] = cpu->r[8] + 0x00000001u;
|
|
/* 02393DFC */ _t28 = cpu->r[29] + 0x00000004u;
|
|
/* 02393DFC */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02393E00 */ cpu->r[9] = cpu->r[11] + cpu->r[8];
|
|
/* 02393E04 */ _t29 = cpu->r[29] + 0x0000000Cu;
|
|
/* 02393E04 */ rbrew_write32(cpu->mem, _t29, cpu->r[10]);
|
|
/* 02393E08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], cpu->r[0]);
|
|
/* 02393E0C */ _t30 = cpu->r[29] + 0x00000000u;
|
|
/* 02393E0C */ cpu->r[5] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02393E10 */ _t31 = cpu->r[1] + 0x00000008u;
|
|
/* 02393E10 */ cpu->r[6] = rbrew_read32(cpu->mem, _t31);
|
|
/* 02393E14 */ _t32 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02393E14 */ _t33 = _t32 & 0x00000001u;
|
|
/* 02393E14 */ if (_t33) goto L_02393E1C; else goto L_02393E18;
|
|
L_02393E18: ; // 0x2393e18
|
|
/* 02393E18 */ cpu->r[9] = cpu->r[9] - cpu->r[0];
|
|
L_02393E1C: ; // 0x2393e1c
|
|
/* 02393E1C */ cpu->r[12] = rbrew_rlwinm(cpu->r[9], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02393E20 */ _t34 = cpu->r[12] + cpu->r[5];
|
|
/* 02393E20 */ rbrew_write32(cpu->mem, _t34, cpu->r[6]);
|
|
L_02393E24: ; // 0x2393e24
|
|
/* 02393E24 */ _t35 = cpu->r[30] + 0x000023B8u;
|
|
/* 02393E24 */ cpu->r[0] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02393E28 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 02393E2C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]);
|
|
/* 02393E30 */ _t36 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02393E30 */ _t37 = _t36 & 0x00000001u;
|
|
/* 02393E30 */ if (_t37) goto L_02393D70; else goto L_02393E34;
|
|
L_02393E34: ; // 0x2393e34
|
|
/* 02393E34 */ /* nop */
|
|
/* 02393E38 */ _t38 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02393E38 */ cpu->r[0] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02393E3C */ cpu->lr = cpu->r[0];
|
|
/* 02393E40 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 02393E44 */ return;
|
|
}
|
|
|
|
// fn_02393E48 @ 0x2393e48
|
|
void Gambit_fn_02393E48(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_02393E48: ; // 0x2393e48
|
|
/* 02393E48 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 02393E48 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02393E48 */ cpu->r[1] = _t0;
|
|
/* 02393E4C */ /* nop */
|
|
/* 02393E50 */ cpu->r[0] = cpu->lr;
|
|
/* 02393E54 */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 02393E54 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02393E58 */ cpu->r[29] = cpu->r[4];
|
|
/* 02393E5C */ cpu->r[0] = 0x00000000u;
|
|
/* 02393E60 */ cpu->r[12] = 0x101C0000u;
|
|
/* 02393E64 */ _t2 = cpu->r[29] + 0x000023B8u;
|
|
/* 02393E64 */ cpu->r[7] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02393E68 */ cpu->r[31] = cpu->r[0];
|
|
/* 02393E6C */ _t3 = cpu->r[12] + 0x00006000u;
|
|
/* 02393E6C */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02393E70 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[7]);
|
|
/* 02393E74 */ cpu->r[28] = cpu->r[3];
|
|
/* 02393E78 */ _t4 = cpu->r[12] + 0x00000254u;
|
|
/* 02393E78 */ cpu->r[30] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02393E7C */ _t5 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02393E7C */ _t6 = _t5 & 0x00000001u;
|
|
/* 02393E7C */ if (_t6) goto L_02393E80; else goto L_02393ED8;
|
|
L_02393E80: ; // 0x2393e80
|
|
/* 02393E80 */ cpu->r[27] = cpu->r[29] + 0x000023BCu;
|
|
L_02393E84: ; // 0x2393e84
|
|
/* 02393E84 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], 0x00000020u);
|
|
/* 02393E88 */ _t7 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02393E88 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02393E88 */ if (_t8) goto L_02393E8C; else goto L_02393EB0;
|
|
L_02393E8C: ; // 0x2393e8c
|
|
/* 02393E8C */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[31] * (int32_t)0x00000118u);
|
|
/* 02393E90 */ cpu->r[3] = cpu->r[30];
|
|
/* 02393E94 */ cpu->r[8] = cpu->r[27] + cpu->r[0];
|
|
/* 02393E98 */ cpu->r[5] = cpu->r[28];
|
|
/* 02393E9C */ cpu->r[4] = cpu->r[8] + 0x0000008Cu;
|
|
/* 02393EA0 */ Gambit_fn_020EEE78(cpu);
|
|
/* 02393EA4 */ cpu->r[0] = cpu->r[3];
|
|
/* 02393EA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02393EA8 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02393EA8 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02393EA8 */ if (_t10) goto L_02393EC8; else goto L_02393EAC;
|
|
L_02393EAC: ; // 0x2393eac
|
|
/* 02393EAC */ goto L_02393ED8;
|
|
L_02393EB0: ; // 0x2393eb0
|
|
/* 02393EB0 */ cpu->r[5] = cpu->r[28];
|
|
/* 02393EB4 */ cpu->r[4] = cpu->r[27] + 0x0000008Cu;
|
|
/* 02393EB8 */ cpu->r[3] = cpu->r[30];
|
|
/* 02393EBC */ Gambit_fn_020EEE78(cpu);
|
|
/* 02393EC0 */ cpu->r[0] = cpu->r[3];
|
|
/* 02393EC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02393EC4 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02393EC4 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02393EC4 */ if (_t12) goto L_02393EC8; else goto L_02393ED8;
|
|
L_02393EC8: ; // 0x2393ec8
|
|
/* 02393EC8 */ _t13 = cpu->r[29] + 0x000023B8u;
|
|
/* 02393EC8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02393ECC */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 02393ED0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[9]);
|
|
/* 02393ED4 */ _t14 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02393ED4 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02393ED4 */ if (_t15) goto L_02393E84; else goto L_02393ED8;
|
|
L_02393ED8: ; // 0x2393ed8
|
|
/* 02393ED8 */ /* nop */
|
|
/* 02393EDC */ cpu->r[3] = cpu->r[0];
|
|
/* 02393EE0 */ _t16 = cpu->r[1] + 0x00000024u;
|
|
/* 02393EE0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02393EE4 */ cpu->lr = cpu->r[0];
|
|
/* 02393EE8 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 02393EEC */ return;
|
|
}
|
|
|
|
// fn_02393EF0 @ 0x2393ef0
|
|
void Gambit_fn_02393EF0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36;
|
|
|
|
L_02393EF0: ; // 0x2393ef0
|
|
/* 02393EF0 */ cpu->r[0] = cpu->lr;
|
|
/* 02393EF4 */ _t0 = cpu->r[1] + 0xFFFFFF88u;
|
|
/* 02393EF4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02393EF4 */ cpu->r[1] = _t0;
|
|
/* 02393EF8 */ _t1 = cpu->r[1] + 0x00000068u;
|
|
/* 02393EF8 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 02393EFC */ /* nop */
|
|
/* 02393F00 */ _t2 = cpu->r[1] + 0x00000058u;
|
|
/* 02393F00 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[30]);
|
|
/* 02393F04 */ _t3 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02393F04 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 02393F08 */ _t4 = cpu->r[1] + 0x00000054u;
|
|
/* 02393F08 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 02393F0C */ _t5 = cpu->r[1] + 0x00000050u;
|
|
/* 02393F0C */ rbrew_write32(cpu->mem, _t5, cpu->r[30]);
|
|
/* 02393F10 */ cpu->r[31] = cpu->r[4];
|
|
/* 02393F14 */ _t6 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02393F14 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02393F18 */ /* nop */
|
|
/* 02393F1C */ _t7 = cpu->r[1] + 0x00000070u;
|
|
/* 02393F1C */ rbrew_write_f32(cpu->mem, _t7, cpu->f[31]);
|
|
/* 02393F20 */ cpu->r[30] = cpu->r[3];
|
|
/* 02393F24 */ _t8 = cpu->r[1] + 0x00000060u;
|
|
/* 02393F24 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[30]);
|
|
/* 02393F28 */ cpu->r[29] = cpu->r[5];
|
|
/* 02393F2C */ cpu->r[5] = cpu->r[1] + 0x00000034u;
|
|
/* 02393F30 */ cpu->r[3] = cpu->r[31];
|
|
/* 02393F34 */ cpu->r[4] = cpu->r[29];
|
|
/* 02393F38 */ cpu->f[31] = cpu->f[1];
|
|
/* 02393F3C */ Gambit_fn_02C692EC(cpu);
|
|
/* 02393F40 */ /* nop */
|
|
/* 02393F44 */ _t9 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02393F44 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02393F48 */ /* nop */
|
|
/* 02393F4C */ _t10 = cpu->r[1] + 0x00000030u;
|
|
/* 02393F4C */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 02393F50 */ /* nop */
|
|
/* 02393F54 */ _t11 = cpu->r[29] + 0x00000008u;
|
|
/* 02393F54 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 02393F58 */ _t12 = cpu->r[1] + 0x00000034u;
|
|
/* 02393F58 */ cpu->r[11] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02393F5C */ cpu->r[3] = cpu->r[31];
|
|
/* 02393F60 */ _t13 = cpu->r[31] + 0x00000008u;
|
|
/* 02393F60 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 02393F64 */ /* nop */
|
|
/* 02393F68 */ _t14 = cpu->r[1] + 0x00000038u;
|
|
/* 02393F68 */ cpu->r[12] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02393F6C */ cpu->r[4] = cpu->r[29];
|
|
/* 02393F70 */ cpu->f[30] = fma(cpu->f[13], cpu->f[0], cpu->f[11]);
|
|
/* 02393F74 */ _t15 = cpu->r[1] + 0x00000028u;
|
|
/* 02393F74 */ rbrew_write32(cpu->mem, _t15, cpu->r[11]);
|
|
/* 02393F78 */ cpu->r[5] = cpu->r[1] + 0x00000040u;
|
|
/* 02393F7C */ _t16 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02393F7C */ rbrew_write32(cpu->mem, _t16, cpu->r[12]);
|
|
/* 02393F80 */ Gambit_fn_02C692EC(cpu);
|
|
/* 02393F84 */ cpu->r[3] = cpu->r[1] + 0x00000040u;
|
|
/* 02393F88 */ Gambit_fn_02C69350(cpu);
|
|
/* 02393F8C */ cpu->f[2] = cpu->f[30];
|
|
/* 02393F90 */ Gambit_fn_02C89074(cpu);
|
|
/* 02393F94 */ cpu->f[1] = cpu->f[1] * cpu->f[31];
|
|
/* 02393F98 */ cpu->r[3] = cpu->r[1] + 0x00000018u;
|
|
/* 02393F9C */ cpu->r[4] = cpu->r[1] + 0x00000028u;
|
|
/* 02393FA0 */ Gambit_fn_0204DFF4(cpu);
|
|
/* 02393FA4 */ _t17 = cpu->r[31] + 0x00000008u;
|
|
/* 02393FA4 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 02393FA8 */ _t18 = cpu->r[1] + 0x00000018u;
|
|
/* 02393FA8 */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 02393FAC */ _t19 = cpu->r[31] + 0x00000004u;
|
|
/* 02393FAC */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 02393FB0 */ _t20 = cpu->r[31] + 0x00000000u;
|
|
/* 02393FB0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 02393FB4 */ cpu->f[0] = cpu->f[5] * cpu->f[9];
|
|
/* 02393FB8 */ _t21 = cpu->r[1] + 0x00000020u;
|
|
/* 02393FB8 */ cpu->f[4] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 02393FBC */ cpu->f[8] = cpu->f[5] * cpu->f[11];
|
|
/* 02393FC0 */ cpu->f[13] = cpu->f[4] * cpu->f[7];
|
|
/* 02393FC4 */ cpu->f[10] = -cpu->f[8];
|
|
/* 02393FC8 */ _t22 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02393FC8 */ cpu->f[2] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 02393FCC */ cpu->f[8] = fma(cpu->f[4], cpu->f[11], -(cpu->f[0]));
|
|
/* 02393FD0 */ cpu->f[6] = fma(cpu->f[2], cpu->f[9], -(cpu->f[13]));
|
|
/* 02393FD4 */ _t23 = cpu->r[1] + 0x00000024u;
|
|
/* 02393FD4 */ cpu->f[3] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 02393FD8 */ cpu->f[12] = cpu->f[2] * cpu->f[11];
|
|
/* 02393FDC */ cpu->f[0] = fma(cpu->f[3], cpu->f[11], cpu->f[6]);
|
|
/* 02393FE0 */ cpu->f[13] = fma(cpu->f[5], cpu->f[7], -(cpu->f[12]));
|
|
/* 02393FE4 */ cpu->f[11] = fma(cpu->f[3], cpu->f[7], cpu->f[8]);
|
|
/* 02393FE8 */ cpu->f[6] = fma(cpu->f[3], cpu->f[9], cpu->f[13]);
|
|
/* 02393FEC */ cpu->f[13] = cpu->f[11] * cpu->f[4];
|
|
/* 02393FF0 */ cpu->f[12] = -fma(cpu->f[2], cpu->f[7], -(cpu->f[10]));
|
|
/* 02393FF4 */ cpu->f[10] = cpu->f[11] * cpu->f[3];
|
|
/* 02393FF8 */ cpu->f[7] = fma(cpu->f[0], cpu->f[3], -(cpu->f[13]));
|
|
/* 02393FFC */ cpu->f[13] = fma(cpu->f[0], cpu->f[4], cpu->f[10]);
|
|
/* 02394000 */ cpu->f[10] = fma(cpu->f[6], cpu->f[2], cpu->f[7]);
|
|
/* 02394004 */ cpu->f[9] = -fma(cpu->f[4], cpu->f[9], -(cpu->f[12]));
|
|
/* 02394008 */ cpu->f[12] = cpu->f[0] * cpu->f[2];
|
|
/* 0239400C */ cpu->f[8] = -fma(cpu->f[6], cpu->f[5], -(cpu->f[13]));
|
|
/* 02394010 */ cpu->f[13] = fma(cpu->f[11], cpu->f[5], -(cpu->f[12]));
|
|
/* 02394014 */ cpu->f[12] = -fma(cpu->f[9], cpu->f[5], -(cpu->f[10]));
|
|
/* 02394018 */ cpu->f[0] = fma(cpu->f[6], cpu->f[3], cpu->f[13]);
|
|
/* 0239401C */ cpu->f[10] = -fma(cpu->f[9], cpu->f[2], -(cpu->f[8]));
|
|
/* 02394020 */ cpu->f[7] = -fma(cpu->f[9], cpu->f[4], -(cpu->f[0]));
|
|
/* 02394024 */ _t24 = cpu->r[30] + 0x00000000u;
|
|
/* 02394024 */ rbrew_write_f32(cpu->mem, _t24, cpu->f[12]);
|
|
/* 02394028 */ _t25 = cpu->r[30] + 0x00000004u;
|
|
/* 02394028 */ rbrew_write_f32(cpu->mem, _t25, cpu->f[10]);
|
|
/* 0239402C */ _t26 = cpu->r[30] + 0x00000008u;
|
|
/* 0239402C */ rbrew_write_f32(cpu->mem, _t26, cpu->f[7]);
|
|
/* 02394030 */ _t27 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02394030 */ cpu->r[29] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02394034 */ _t28 = cpu->r[1] + 0x00000070u;
|
|
/* 02394034 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 02394038 */ _t29 = cpu->r[1] + 0x00000060u;
|
|
/* 02394038 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 0239403C */ _t30 = cpu->r[1] + 0x00000068u;
|
|
/* 0239403C */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t30);
|
|
/* 02394040 */ _t31 = cpu->r[1] + 0x00000058u;
|
|
/* 02394040 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t31);
|
|
/* 02394044 */ _t32 = cpu->r[1] + 0x00000054u;
|
|
/* 02394044 */ cpu->r[31] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02394048 */ _t33 = cpu->r[1] + 0x00000050u;
|
|
/* 02394048 */ cpu->r[30] = rbrew_read32(cpu->mem, _t33);
|
|
/* 0239404C */ _t34 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0239404C */ _t35 = _t34 & 0x00000001u;
|
|
/* 0239404C */ if (_t35) goto L_02394050; // else: addr-0 trap, fall-through
|
|
L_02394050: ; // 0x2394050
|
|
/* 02394050 */ _t36 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02394050 */ cpu->r[0] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02394054 */ cpu->lr = cpu->r[0];
|
|
/* 02394058 */ cpu->r[1] = cpu->r[1] + 0x00000078u;
|
|
/* 0239405C */ return;
|
|
}
|
|
|
|
// fn_02393EF4 @ 0x2393ef4
|
|
void Gambit_fn_02393EF4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36;
|
|
|
|
L_02393EF4: ; // 0x2393ef4
|
|
/* 02393EF4 */ _t0 = cpu->r[1] + 0xFFFFFF88u;
|
|
/* 02393EF4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02393EF4 */ cpu->r[1] = _t0;
|
|
/* 02393EF8 */ _t1 = cpu->r[1] + 0x00000068u;
|
|
/* 02393EF8 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 02393EFC */ /* nop */
|
|
/* 02393F00 */ _t2 = cpu->r[1] + 0x00000058u;
|
|
/* 02393F00 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[30]);
|
|
/* 02393F04 */ _t3 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02393F04 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 02393F08 */ _t4 = cpu->r[1] + 0x00000054u;
|
|
/* 02393F08 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 02393F0C */ _t5 = cpu->r[1] + 0x00000050u;
|
|
/* 02393F0C */ rbrew_write32(cpu->mem, _t5, cpu->r[30]);
|
|
/* 02393F10 */ cpu->r[31] = cpu->r[4];
|
|
/* 02393F14 */ _t6 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02393F14 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02393F18 */ /* nop */
|
|
/* 02393F1C */ _t7 = cpu->r[1] + 0x00000070u;
|
|
/* 02393F1C */ rbrew_write_f32(cpu->mem, _t7, cpu->f[31]);
|
|
/* 02393F20 */ cpu->r[30] = cpu->r[3];
|
|
/* 02393F24 */ _t8 = cpu->r[1] + 0x00000060u;
|
|
/* 02393F24 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[30]);
|
|
/* 02393F28 */ cpu->r[29] = cpu->r[5];
|
|
/* 02393F2C */ cpu->r[5] = cpu->r[1] + 0x00000034u;
|
|
/* 02393F30 */ cpu->r[3] = cpu->r[31];
|
|
/* 02393F34 */ cpu->r[4] = cpu->r[29];
|
|
/* 02393F38 */ cpu->f[31] = cpu->f[1];
|
|
/* 02393F3C */ Gambit_fn_02C692EC(cpu);
|
|
/* 02393F40 */ /* nop */
|
|
/* 02393F44 */ _t9 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02393F44 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02393F48 */ /* nop */
|
|
/* 02393F4C */ _t10 = cpu->r[1] + 0x00000030u;
|
|
/* 02393F4C */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 02393F50 */ /* nop */
|
|
/* 02393F54 */ _t11 = cpu->r[29] + 0x00000008u;
|
|
/* 02393F54 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 02393F58 */ _t12 = cpu->r[1] + 0x00000034u;
|
|
/* 02393F58 */ cpu->r[11] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02393F5C */ cpu->r[3] = cpu->r[31];
|
|
/* 02393F60 */ _t13 = cpu->r[31] + 0x00000008u;
|
|
/* 02393F60 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 02393F64 */ /* nop */
|
|
/* 02393F68 */ _t14 = cpu->r[1] + 0x00000038u;
|
|
/* 02393F68 */ cpu->r[12] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02393F6C */ cpu->r[4] = cpu->r[29];
|
|
/* 02393F70 */ cpu->f[30] = fma(cpu->f[13], cpu->f[0], cpu->f[11]);
|
|
/* 02393F74 */ _t15 = cpu->r[1] + 0x00000028u;
|
|
/* 02393F74 */ rbrew_write32(cpu->mem, _t15, cpu->r[11]);
|
|
/* 02393F78 */ cpu->r[5] = cpu->r[1] + 0x00000040u;
|
|
/* 02393F7C */ _t16 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02393F7C */ rbrew_write32(cpu->mem, _t16, cpu->r[12]);
|
|
/* 02393F80 */ Gambit_fn_02C692EC(cpu);
|
|
/* 02393F84 */ cpu->r[3] = cpu->r[1] + 0x00000040u;
|
|
/* 02393F88 */ Gambit_fn_02C69350(cpu);
|
|
/* 02393F8C */ cpu->f[2] = cpu->f[30];
|
|
/* 02393F90 */ Gambit_fn_02C89074(cpu);
|
|
/* 02393F94 */ cpu->f[1] = cpu->f[1] * cpu->f[31];
|
|
/* 02393F98 */ cpu->r[3] = cpu->r[1] + 0x00000018u;
|
|
/* 02393F9C */ cpu->r[4] = cpu->r[1] + 0x00000028u;
|
|
/* 02393FA0 */ Gambit_fn_0204DFF4(cpu);
|
|
/* 02393FA4 */ _t17 = cpu->r[31] + 0x00000008u;
|
|
/* 02393FA4 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 02393FA8 */ _t18 = cpu->r[1] + 0x00000018u;
|
|
/* 02393FA8 */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 02393FAC */ _t19 = cpu->r[31] + 0x00000004u;
|
|
/* 02393FAC */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 02393FB0 */ _t20 = cpu->r[31] + 0x00000000u;
|
|
/* 02393FB0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 02393FB4 */ cpu->f[0] = cpu->f[5] * cpu->f[9];
|
|
/* 02393FB8 */ _t21 = cpu->r[1] + 0x00000020u;
|
|
/* 02393FB8 */ cpu->f[4] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 02393FBC */ cpu->f[8] = cpu->f[5] * cpu->f[11];
|
|
/* 02393FC0 */ cpu->f[13] = cpu->f[4] * cpu->f[7];
|
|
/* 02393FC4 */ cpu->f[10] = -cpu->f[8];
|
|
/* 02393FC8 */ _t22 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02393FC8 */ cpu->f[2] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 02393FCC */ cpu->f[8] = fma(cpu->f[4], cpu->f[11], -(cpu->f[0]));
|
|
/* 02393FD0 */ cpu->f[6] = fma(cpu->f[2], cpu->f[9], -(cpu->f[13]));
|
|
/* 02393FD4 */ _t23 = cpu->r[1] + 0x00000024u;
|
|
/* 02393FD4 */ cpu->f[3] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 02393FD8 */ cpu->f[12] = cpu->f[2] * cpu->f[11];
|
|
/* 02393FDC */ cpu->f[0] = fma(cpu->f[3], cpu->f[11], cpu->f[6]);
|
|
/* 02393FE0 */ cpu->f[13] = fma(cpu->f[5], cpu->f[7], -(cpu->f[12]));
|
|
/* 02393FE4 */ cpu->f[11] = fma(cpu->f[3], cpu->f[7], cpu->f[8]);
|
|
/* 02393FE8 */ cpu->f[6] = fma(cpu->f[3], cpu->f[9], cpu->f[13]);
|
|
/* 02393FEC */ cpu->f[13] = cpu->f[11] * cpu->f[4];
|
|
/* 02393FF0 */ cpu->f[12] = -fma(cpu->f[2], cpu->f[7], -(cpu->f[10]));
|
|
/* 02393FF4 */ cpu->f[10] = cpu->f[11] * cpu->f[3];
|
|
/* 02393FF8 */ cpu->f[7] = fma(cpu->f[0], cpu->f[3], -(cpu->f[13]));
|
|
/* 02393FFC */ cpu->f[13] = fma(cpu->f[0], cpu->f[4], cpu->f[10]);
|
|
/* 02394000 */ cpu->f[10] = fma(cpu->f[6], cpu->f[2], cpu->f[7]);
|
|
/* 02394004 */ cpu->f[9] = -fma(cpu->f[4], cpu->f[9], -(cpu->f[12]));
|
|
/* 02394008 */ cpu->f[12] = cpu->f[0] * cpu->f[2];
|
|
/* 0239400C */ cpu->f[8] = -fma(cpu->f[6], cpu->f[5], -(cpu->f[13]));
|
|
/* 02394010 */ cpu->f[13] = fma(cpu->f[11], cpu->f[5], -(cpu->f[12]));
|
|
/* 02394014 */ cpu->f[12] = -fma(cpu->f[9], cpu->f[5], -(cpu->f[10]));
|
|
/* 02394018 */ cpu->f[0] = fma(cpu->f[6], cpu->f[3], cpu->f[13]);
|
|
/* 0239401C */ cpu->f[10] = -fma(cpu->f[9], cpu->f[2], -(cpu->f[8]));
|
|
/* 02394020 */ cpu->f[7] = -fma(cpu->f[9], cpu->f[4], -(cpu->f[0]));
|
|
/* 02394024 */ _t24 = cpu->r[30] + 0x00000000u;
|
|
/* 02394024 */ rbrew_write_f32(cpu->mem, _t24, cpu->f[12]);
|
|
/* 02394028 */ _t25 = cpu->r[30] + 0x00000004u;
|
|
/* 02394028 */ rbrew_write_f32(cpu->mem, _t25, cpu->f[10]);
|
|
/* 0239402C */ _t26 = cpu->r[30] + 0x00000008u;
|
|
/* 0239402C */ rbrew_write_f32(cpu->mem, _t26, cpu->f[7]);
|
|
/* 02394030 */ _t27 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02394030 */ cpu->r[29] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02394034 */ _t28 = cpu->r[1] + 0x00000070u;
|
|
/* 02394034 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 02394038 */ _t29 = cpu->r[1] + 0x00000060u;
|
|
/* 02394038 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 0239403C */ _t30 = cpu->r[1] + 0x00000068u;
|
|
/* 0239403C */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t30);
|
|
/* 02394040 */ _t31 = cpu->r[1] + 0x00000058u;
|
|
/* 02394040 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t31);
|
|
/* 02394044 */ _t32 = cpu->r[1] + 0x00000054u;
|
|
/* 02394044 */ cpu->r[31] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02394048 */ _t33 = cpu->r[1] + 0x00000050u;
|
|
/* 02394048 */ cpu->r[30] = rbrew_read32(cpu->mem, _t33);
|
|
/* 0239404C */ _t34 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0239404C */ _t35 = _t34 & 0x00000001u;
|
|
/* 0239404C */ if (_t35) goto L_02394050; // else: addr-0 trap, fall-through
|
|
L_02394050: ; // 0x2394050
|
|
/* 02394050 */ _t36 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02394050 */ cpu->r[0] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02394054 */ cpu->lr = cpu->r[0];
|
|
/* 02394058 */ cpu->r[1] = cpu->r[1] + 0x00000078u;
|
|
/* 0239405C */ return;
|
|
}
|
|
|
|
// fn_02394060 @ 0x2394060
|
|
void Gambit_fn_02394060(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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;
|
|
|
|
L_02394060: ; // 0x2394060
|
|
/* 02394060 */ cpu->r[0] = cpu->lr;
|
|
/* 02394064 */ _t0 = cpu->r[1] + 0xFFFFFD20u;
|
|
/* 02394064 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02394064 */ cpu->r[1] = _t0;
|
|
/* 02394068 */ _t1 = cpu->r[1] + 0x000002C0u;
|
|
/* 02394068 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[30]);
|
|
/* 0239406C */ _t2 = cpu->r[1] + 0x000002D0u;
|
|
/* 0239406C */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 02394070 */ /* nop */
|
|
/* 02394074 */ _t3 = cpu->r[1] + 0x000002C8u;
|
|
/* 02394074 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[30]);
|
|
/* 02394078 */ /* nop */
|
|
/* 0239407C */ _t4 = cpu->r[1] + 0x000002D8u;
|
|
/* 0239407C */ rbrew_write_f32(cpu->mem, _t4, cpu->f[31]);
|
|
/* 02394080 */ _t5 = cpu->r[1] + 0x000002E4u;
|
|
/* 02394080 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02394084 */ _t6 = cpu->r[1] + 0x000002B0u;
|
|
/* 02394084 */ rbrew_write32(cpu->mem, _t6, cpu->r[28]);
|
|
/* 02394088 */ _t7 = cpu->r[1] + 0x000002B4u;
|
|
/* 02394088 */ rbrew_write32(cpu->mem, _t7, cpu->r[29]);
|
|
/* 0239408C */ _t8 = cpu->r[1] + 0x000002B8u;
|
|
/* 0239408C */ rbrew_write32(cpu->mem, _t8, cpu->r[30]);
|
|
/* 02394090 */ cpu->r[12] = 0x101C0000u;
|
|
/* 02394094 */ _t9 = cpu->r[1] + 0x000002BCu;
|
|
/* 02394094 */ rbrew_write32(cpu->mem, _t9, cpu->r[31]);
|
|
/* 02394098 */ _t10 = cpu->r[12] + 0x00006000u;
|
|
/* 02394098 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0239409C */ cpu->r[31] = cpu->r[3];
|
|
/* 023940A0 */ _t11 = cpu->r[12] + 0x00000268u;
|
|
/* 023940A0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t11);
|
|
/* 023940A4 */ Gambit_fn_0261F73C(cpu);
|
|
/* 023940A8 */ _t12 = cpu->r[3] + 0x000007F0u;
|
|
/* 023940A8 */ cpu->r[28] = rbrew_read32(cpu->mem, _t12);
|
|
/* 023940AC */ cpu->r[3] = 0x00000005u;
|
|
/* 023940B0 */ cpu->r[29] = 0x00000000u;
|
|
/* 023940B4 */ Gambit_fn_027E6EEC(cpu);
|
|
/* 023940B8 */ _t13 = cpu->r[31] + 0x0000000Cu;
|
|
/* 023940B8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t13);
|
|
/* 023940BC */ cpu->r[30] = cpu->r[3];
|
|
/* 023940C0 */ _t14 = cpu->r[31] + 0x00000010u;
|
|
/* 023940C0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t14);
|
|
/* 023940C4 */ _t15 = cpu->r[1] + 0x00000030u;
|
|
/* 023940C4 */ rbrew_write32(cpu->mem, _t15, cpu->r[7]);
|
|
/* 023940C8 */ _t16 = cpu->r[31] + 0x00000014u;
|
|
/* 023940C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 023940CC */ _t17 = cpu->r[1] + 0x00000034u;
|
|
/* 023940CC */ rbrew_write32(cpu->mem, _t17, cpu->r[9]);
|
|
/* 023940D0 */ cpu->r[5] = cpu->r[1] + 0x00000030u;
|
|
/* 023940D4 */ _t18 = cpu->r[1] + 0x00000038u;
|
|
/* 023940D4 */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
/* 023940D8 */ _t19 = cpu->r[30] + 0x00000048u;
|
|
/* 023940D8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t19);
|
|
/* 023940DC */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 023940E0 */ Gambit_fn_0281A9D0(cpu);
|
|
/* 023940E4 */ _t20 = cpu->r[30] + 0x0000004Cu;
|
|
/* 023940E4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t20);
|
|
/* 023940E8 */ cpu->r[4] = cpu->r[1] + 0x0000003Cu;
|
|
/* 023940EC */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 023940F0 */ Gambit_fn_0281BCA8(cpu);
|
|
/* 023940F4 */ cpu->r[5] = cpu->r[1] + 0x0000003Cu;
|
|
/* 023940F8 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 023940FC */ cpu->r[3] = cpu->r[30] + 0x00000018u;
|
|
/* 02394100 */ Gambit_fn_0281DE48(cpu);
|
|
/* 02394104 */ _t21 = cpu->r[28] + 0x00000128u;
|
|
/* 02394104 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 02394108 */ cpu->r[7] = 0x10080000u;
|
|
/* 0239410C */ _t22 = cpu->r[7] + 0x000065F4u;
|
|
/* 0239410C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 02394110 */ _t23 = cpu->r[1] + 0x00000020u;
|
|
/* 02394110 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 02394114 */ cpu->f[12] = cpu->f[13] * cpu->f[10];
|
|
/* 02394118 */ cpu->f[6] = -cpu->f[11];
|
|
/* 0239411C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[6], cpu->f[12]);
|
|
/* 02394120 */ _t24 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02394120 */ _t25 = _t24 & 0x00000001u;
|
|
/* 02394120 */ if (_t25) goto L_02394124; else goto L_02394128;
|
|
L_02394124: ; // 0x2394124
|
|
/* 02394124 */ cpu->r[29] = 0x00000001u;
|
|
L_02394128: ; // 0x2394128
|
|
/* 02394128 */ _t26 = cpu->r[31] + 0x0000002Cu;
|
|
/* 02394128 */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 0239412C */ cpu->r[12] = 0x10080000u;
|
|
/* 02394130 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[6], cpu->f[5]);
|
|
/* 02394134 */ _t27 = cpu->r[12] + 0x000065ECu;
|
|
/* 02394134 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 02394138 */ _t28 = cpu->r[31] + 0x00000020u;
|
|
/* 02394138 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 0239413C */ _t29 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0239413C */ _t30 = _t29 & 0x00000001u;
|
|
/* 0239413C */ if (_t30) goto L_02394140; else goto L_0239423C;
|
|
L_02394140: ; // 0x2394140
|
|
/* 02394140 */ cpu->f[7] = cpu->f[5];
|
|
/* 02394144 */ _t31 = cpu->r[31] + 0x00000030u;
|
|
/* 02394144 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 02394148 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[7]);
|
|
/* 0239414C */ _t32 = cpu->r[31] + 0x00000024u;
|
|
/* 0239414C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 02394150 */ _t33 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02394150 */ _t34 = _t33 & 0x00000001u;
|
|
/* 02394150 */ if (_t34) goto L_023941A8; else goto L_02394154;
|
|
L_02394154: ; // 0x2394154
|
|
/* 02394154 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[6], cpu->f[12]);
|
|
/* 02394158 */ _t35 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02394158 */ _t36 = _t35 & 0x00000001u;
|
|
/* 02394158 */ if (_t36) goto L_0239415C; else goto L_023941D8;
|
|
L_0239415C: ; // 0x239415c
|
|
/* 0239415C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[6], cpu->f[7]);
|
|
/* 02394160 */ _t37 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02394160 */ _t38 = _t37 & 0x00000001u;
|
|
/* 02394160 */ if (_t38) goto L_02394164; else goto L_023941B0;
|
|
L_02394164: ; // 0x2394164
|
|
/* 02394164 */ cpu->f[0] = cpu->f[7] - cpu->f[12];
|
|
/* 02394168 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[9]);
|
|
/* 0239416C */ _t39 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239416C */ _t40 = _t39 & 0x00000001u;
|
|
/* 0239416C */ if (_t40) goto L_02394184; else goto L_02394170;
|
|
L_02394170: ; // 0x2394170
|
|
/* 02394170 */ cpu->f[7] = cpu->f[30] - cpu->f[13];
|
|
/* 02394174 */ cpu->f[10] = cpu->f[6] - cpu->f[12];
|
|
/* 02394178 */ cpu->f[11] = cpu->f[7] * cpu->f[10];
|
|
/* 0239417C */ cpu->f[0] = cpu->f[11] / cpu->f[0];
|
|
/* 02394180 */ cpu->f[13] = cpu->f[0] + cpu->f[13];
|
|
L_02394184: ; // 0x2394184
|
|
/* 02394184 */ cpu->f[10] = cpu->f[5];
|
|
/* 02394188 */ _t41 = cpu->r[31] + 0x00000028u;
|
|
/* 02394188 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 0239418C */ cpu->r[8] = 0x10080000u;
|
|
/* 02394190 */ _t42 = cpu->r[8] + 0x000065F0u;
|
|
/* 02394190 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 02394194 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[11]);
|
|
/* 02394198 */ _t43 = cpu->r[31] + 0x00000018u;
|
|
/* 02394198 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t43);
|
|
/* 0239419C */ cpu->f[30] = cpu->f[13];
|
|
/* 023941A0 */ _t44 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 023941A0 */ _t45 = _t44 & 0x00000001u;
|
|
/* 023941A0 */ if (_t45) goto L_023943C0; else goto L_023941A4;
|
|
L_023941A4: ; // 0x23941a4
|
|
/* 023941A4 */ goto L_023942E4;
|
|
L_023941A8: ; // 0x23941a8
|
|
/* 023941A8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[6], cpu->f[7]);
|
|
/* 023941AC */ _t46 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 023941AC */ _t47 = _t46 & 0x00000001u;
|
|
/* 023941AC */ if (_t47) goto L_023941D0; else goto L_023941B0;
|
|
L_023941B0: ; // 0x23941b0
|
|
/* 023941B0 */ cpu->f[10] = cpu->f[5];
|
|
/* 023941B4 */ _t48 = cpu->r[31] + 0x00000028u;
|
|
/* 023941B4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 023941B8 */ cpu->r[8] = 0x10080000u;
|
|
/* 023941BC */ _t49 = cpu->r[8] + 0x000065F0u;
|
|
/* 023941BC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t49);
|
|
/* 023941C0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[11]);
|
|
/* 023941C4 */ _t50 = cpu->r[31] + 0x00000018u;
|
|
/* 023941C4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t50);
|
|
/* 023941C8 */ _t51 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 023941C8 */ _t52 = _t51 & 0x00000001u;
|
|
/* 023941C8 */ if (_t52) goto L_023943C0; else goto L_023941CC;
|
|
L_023941CC: ; // 0x23941cc
|
|
/* 023941CC */ goto L_023942E4;
|
|
L_023941D0: ; // 0x23941d0
|
|
/* 023941D0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[6], cpu->f[12]);
|
|
/* 023941D4 */ _t53 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 023941D4 */ _t54 = _t53 & 0x00000001u;
|
|
/* 023941D4 */ if (_t54) goto L_023941FC; else goto L_023941D8;
|
|
L_023941D8: ; // 0x23941d8
|
|
/* 023941D8 */ cpu->f[10] = cpu->f[5];
|
|
/* 023941DC */ _t55 = cpu->r[31] + 0x00000028u;
|
|
/* 023941DC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t55);
|
|
/* 023941E0 */ cpu->r[8] = 0x10080000u;
|
|
/* 023941E4 */ _t56 = cpu->r[8] + 0x000065F0u;
|
|
/* 023941E4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 023941E8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[11]);
|
|
/* 023941EC */ _t57 = cpu->r[31] + 0x00000018u;
|
|
/* 023941EC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t57);
|
|
/* 023941F0 */ cpu->f[30] = cpu->f[13];
|
|
/* 023941F4 */ _t58 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 023941F4 */ _t59 = _t58 & 0x00000001u;
|
|
/* 023941F4 */ if (_t59) goto L_023943C0; else goto L_023941F8;
|
|
L_023941F8: ; // 0x23941f8
|
|
/* 023941F8 */ goto L_023942E4;
|
|
L_023941FC: ; // 0x23941fc
|
|
/* 023941FC */ cpu->f[8] = cpu->f[12] - cpu->f[7];
|
|
/* 02394200 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[9]);
|
|
/* 02394204 */ _t60 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02394204 */ _t61 = _t60 & 0x00000001u;
|
|
/* 02394204 */ if (_t61) goto L_0239421C; else goto L_02394208;
|
|
L_02394208: ; // 0x2394208
|
|
/* 02394208 */ cpu->f[12] = cpu->f[6] - cpu->f[7];
|
|
/* 0239420C */ cpu->f[7] = cpu->f[13] - cpu->f[30];
|
|
/* 02394210 */ cpu->f[0] = cpu->f[7] * cpu->f[12];
|
|
/* 02394214 */ cpu->f[7] = cpu->f[0] / cpu->f[8];
|
|
/* 02394218 */ cpu->f[30] = cpu->f[7] + cpu->f[30];
|
|
L_0239421C: ; // 0x239421c
|
|
/* 0239421C */ cpu->f[10] = cpu->f[5];
|
|
/* 02394220 */ _t62 = cpu->r[31] + 0x00000028u;
|
|
/* 02394220 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t62);
|
|
/* 02394224 */ cpu->r[8] = 0x10080000u;
|
|
/* 02394228 */ _t63 = cpu->r[8] + 0x000065F0u;
|
|
/* 02394228 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t63);
|
|
/* 0239422C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[11]);
|
|
/* 02394230 */ _t64 = cpu->r[31] + 0x00000018u;
|
|
/* 02394230 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t64);
|
|
/* 02394234 */ _t65 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02394234 */ _t66 = _t65 & 0x00000001u;
|
|
/* 02394234 */ if (_t66) goto L_023943C0; else goto L_02394238;
|
|
L_02394238: ; // 0x2394238
|
|
/* 02394238 */ goto L_023942E4;
|
|
L_0239423C: ; // 0x239423c
|
|
/* 0239423C */ _t67 = cpu->r[31] + 0x00000028u;
|
|
/* 0239423C */ cpu->f[4] = rbrew_read_f32(cpu->mem, _t67);
|
|
/* 02394240 */ cpu->f[10] = cpu->f[5];
|
|
/* 02394244 */ cpu->f[12] = cpu->f[4];
|
|
/* 02394248 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[12]);
|
|
/* 0239424C */ _t68 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0239424C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t68);
|
|
/* 02394250 */ _t69 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02394250 */ _t70 = _t69 & 0x00000001u;
|
|
/* 02394250 */ if (_t70) goto L_02394288; else goto L_02394254;
|
|
L_02394254: ; // 0x2394254
|
|
/* 02394254 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[6], cpu->f[10]);
|
|
/* 02394258 */ _t71 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02394258 */ _t72 = _t71 & 0x00000001u;
|
|
/* 02394258 */ if (_t72) goto L_0239425C; else goto L_023942C8;
|
|
L_0239425C: ; // 0x239425c
|
|
/* 0239425C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[6], cpu->f[12]);
|
|
/* 02394260 */ _t73 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02394260 */ _t74 = _t73 & 0x00000001u;
|
|
/* 02394260 */ if (_t74) goto L_02394264; else goto L_02394290;
|
|
L_02394264: ; // 0x2394264
|
|
/* 02394264 */ cpu->f[12] = cpu->f[12] - cpu->f[10];
|
|
/* 02394268 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[9]);
|
|
/* 0239426C */ _t75 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239426C */ _t76 = _t75 & 0x00000001u;
|
|
/* 0239426C */ if (_t76) goto L_023942C8; else goto L_02394270;
|
|
L_02394270: ; // 0x2394270
|
|
/* 02394270 */ cpu->f[8] = cpu->f[11] - cpu->f[30];
|
|
/* 02394274 */ cpu->f[10] = cpu->f[6] - cpu->f[10];
|
|
/* 02394278 */ cpu->f[13] = cpu->f[8] * cpu->f[10];
|
|
/* 0239427C */ cpu->f[0] = cpu->f[13] / cpu->f[12];
|
|
/* 02394280 */ cpu->f[30] = cpu->f[0] + cpu->f[30];
|
|
/* 02394284 */ goto L_023942C8;
|
|
L_02394288: ; // 0x2394288
|
|
/* 02394288 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[6], cpu->f[12]);
|
|
/* 0239428C */ _t77 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0239428C */ _t78 = _t77 & 0x00000001u;
|
|
/* 0239428C */ if (_t78) goto L_02394298; else goto L_02394290;
|
|
L_02394290: ; // 0x2394290
|
|
/* 02394290 */ cpu->f[30] = cpu->f[11];
|
|
/* 02394294 */ goto L_023942C8;
|
|
L_02394298: ; // 0x2394298
|
|
/* 02394298 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[6], cpu->f[10]);
|
|
/* 0239429C */ _t79 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0239429C */ _t80 = _t79 & 0x00000001u;
|
|
/* 0239429C */ if (_t80) goto L_023942A0; else goto L_023942C8;
|
|
L_023942A0: ; // 0x23942a0
|
|
/* 023942A0 */ cpu->f[8] = cpu->f[10] - cpu->f[12];
|
|
/* 023942A4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[9]);
|
|
/* 023942A8 */ _t81 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023942A8 */ _t82 = _t81 & 0x00000001u;
|
|
/* 023942A8 */ if (_t82) goto L_023942AC; else goto L_023942B4;
|
|
L_023942AC: ; // 0x23942ac
|
|
/* 023942AC */ cpu->f[30] = cpu->f[11];
|
|
/* 023942B0 */ goto L_023942C8;
|
|
L_023942B4: ; // 0x23942b4
|
|
/* 023942B4 */ cpu->f[7] = cpu->f[30] - cpu->f[11];
|
|
/* 023942B8 */ cpu->f[10] = cpu->f[6] - cpu->f[12];
|
|
/* 023942BC */ cpu->f[12] = cpu->f[7] * cpu->f[10];
|
|
/* 023942C0 */ cpu->f[13] = cpu->f[12] / cpu->f[8];
|
|
/* 023942C4 */ cpu->f[30] = cpu->f[13] + cpu->f[11];
|
|
L_023942C8: ; // 0x23942c8
|
|
/* 023942C8 */ cpu->f[10] = cpu->f[5];
|
|
/* 023942CC */ cpu->f[11] = cpu->f[4];
|
|
/* 023942D0 */ _t83 = cpu->r[31] + 0x00000018u;
|
|
/* 023942D0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t83);
|
|
/* 023942D4 */ cpu->r[8] = 0x10080000u;
|
|
/* 023942D8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[11]);
|
|
/* 023942DC */ _t84 = cpu->r[8] + 0x000065F0u;
|
|
/* 023942DC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t84);
|
|
/* 023942E0 */ _t85 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 023942E0 */ _t86 = _t85 & 0x00000001u;
|
|
/* 023942E0 */ if (_t86) goto L_023943C0; else goto L_023942E4;
|
|
L_023942E4: ; // 0x23942e4
|
|
/* 023942E4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[6], cpu->f[10]);
|
|
/* 023942E8 */ _t87 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 023942E8 */ _t88 = _t87 & 0x00000001u;
|
|
/* 023942E8 */ if (_t88) goto L_023942EC; else goto L_02394424;
|
|
L_023942EC: ; // 0x23942ec
|
|
/* 023942EC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[6], cpu->f[11]);
|
|
/* 023942F0 */ _t89 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 023942F0 */ _t90 = _t89 & 0x00000001u;
|
|
/* 023942F0 */ if (_t90) goto L_023942F4; else goto L_023943C8;
|
|
L_023942F4: ; // 0x23942f4
|
|
/* 023942F4 */ cpu->f[11] = cpu->f[11] - cpu->f[10];
|
|
/* 023942F8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[9]);
|
|
/* 023942FC */ _t91 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023942FC */ _t92 = _t91 & 0x00000001u;
|
|
/* 023942FC */ if (_t92) goto L_02394300; else goto L_02394358;
|
|
L_02394300: ; // 0x2394300
|
|
/* 02394300 */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 02394304 */ cpu->f[31] = cpu->f[12];
|
|
/* 02394308 */ Gambit_fn_027FF40C(cpu);
|
|
/* 0239430C */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 02394310 */ cpu->r[4] = 0x00000111u;
|
|
/* 02394314 */ Gambit_fn_027FF658(cpu);
|
|
/* 02394318 */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 0239431C */ cpu->r[4] = cpu->r[31] + 0x00000034u;
|
|
/* 02394320 */ Gambit_fn_027FF610(cpu);
|
|
/* 02394324 */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 02394328 */ cpu->r[4] = cpu->r[31] + 0x00000038u;
|
|
/* 0239432C */ Gambit_fn_027FF634(cpu);
|
|
/* 02394330 */ cpu->r[11] = 0x10080000u;
|
|
/* 02394334 */ _t93 = cpu->r[11] + 0x000065F8u;
|
|
/* 02394334 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t93);
|
|
/* 02394338 */ cpu->f[7] = cpu->f[0] * cpu->f[31];
|
|
/* 0239433C */ cpu->f[8] = (uint32_t)(int32_t)cpu->f[7];
|
|
/* 02394340 */ cpu->r[0] = cpu->r[1] + 0x00000028u;
|
|
/* 02394344 */ /* nop */
|
|
/* 02394348 */ _t94 = cpu->r[1] + 0x00000028u;
|
|
/* 02394348 */ cpu->r[4] = rbrew_read32(cpu->mem, _t94);
|
|
/* 0239434C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 02394350 */ _t95 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02394350 */ _t96 = _t95 & 0x00000001u;
|
|
/* 02394350 */ if (_t96) goto L_023944EC; else goto L_02394354;
|
|
L_02394354: ; // 0x2394354
|
|
/* 02394354 */ goto L_0239455C;
|
|
L_02394358: ; // 0x2394358
|
|
/* 02394358 */ cpu->f[0] = cpu->f[31] - cpu->f[12];
|
|
/* 0239435C */ cpu->f[7] = cpu->f[6] - cpu->f[10];
|
|
/* 02394360 */ cpu->f[8] = cpu->f[0] * cpu->f[7];
|
|
/* 02394364 */ cpu->f[9] = cpu->f[8] / cpu->f[11];
|
|
/* 02394368 */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 0239436C */ cpu->f[31] = cpu->f[9] + cpu->f[12];
|
|
/* 02394370 */ Gambit_fn_027FF40C(cpu);
|
|
/* 02394374 */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 02394378 */ cpu->r[4] = 0x00000111u;
|
|
/* 0239437C */ Gambit_fn_027FF658(cpu);
|
|
/* 02394380 */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 02394384 */ cpu->r[4] = cpu->r[31] + 0x00000034u;
|
|
/* 02394388 */ Gambit_fn_027FF610(cpu);
|
|
/* 0239438C */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 02394390 */ cpu->r[4] = cpu->r[31] + 0x00000038u;
|
|
/* 02394394 */ Gambit_fn_027FF634(cpu);
|
|
/* 02394398 */ cpu->r[11] = 0x10080000u;
|
|
/* 0239439C */ _t97 = cpu->r[11] + 0x000065F8u;
|
|
/* 0239439C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t97);
|
|
/* 023943A0 */ cpu->f[7] = cpu->f[0] * cpu->f[31];
|
|
/* 023943A4 */ cpu->f[8] = (uint32_t)(int32_t)cpu->f[7];
|
|
/* 023943A8 */ cpu->r[0] = cpu->r[1] + 0x00000028u;
|
|
/* 023943AC */ /* nop */
|
|
/* 023943B0 */ _t98 = cpu->r[1] + 0x00000028u;
|
|
/* 023943B0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t98);
|
|
/* 023943B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 023943B8 */ _t99 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 023943B8 */ _t100 = _t99 & 0x00000001u;
|
|
/* 023943B8 */ if (_t100) goto L_023944EC; else goto L_023943BC;
|
|
L_023943BC: ; // 0x23943bc
|
|
/* 023943BC */ goto L_0239455C;
|
|
L_023943C0: ; // 0x23943c0
|
|
/* 023943C0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[6], cpu->f[11]);
|
|
/* 023943C4 */ _t101 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 023943C4 */ _t102 = _t101 & 0x00000001u;
|
|
/* 023943C4 */ if (_t102) goto L_0239441C; else goto L_023943C8;
|
|
L_023943C8: ; // 0x23943c8
|
|
/* 023943C8 */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 023943CC */ Gambit_fn_027FF40C(cpu);
|
|
/* 023943D0 */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 023943D4 */ cpu->r[4] = 0x00000111u;
|
|
/* 023943D8 */ Gambit_fn_027FF658(cpu);
|
|
/* 023943DC */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 023943E0 */ cpu->r[4] = cpu->r[31] + 0x00000034u;
|
|
/* 023943E4 */ Gambit_fn_027FF610(cpu);
|
|
/* 023943E8 */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 023943EC */ cpu->r[4] = cpu->r[31] + 0x00000038u;
|
|
/* 023943F0 */ Gambit_fn_027FF634(cpu);
|
|
/* 023943F4 */ cpu->r[11] = 0x10080000u;
|
|
/* 023943F8 */ _t103 = cpu->r[11] + 0x000065F8u;
|
|
/* 023943F8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t103);
|
|
/* 023943FC */ cpu->f[7] = cpu->f[0] * cpu->f[31];
|
|
/* 02394400 */ cpu->f[8] = (uint32_t)(int32_t)cpu->f[7];
|
|
/* 02394404 */ cpu->r[0] = cpu->r[1] + 0x00000028u;
|
|
/* 02394408 */ /* nop */
|
|
/* 0239440C */ _t104 = cpu->r[1] + 0x00000028u;
|
|
/* 0239440C */ cpu->r[4] = rbrew_read32(cpu->mem, _t104);
|
|
/* 02394410 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 02394414 */ _t105 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02394414 */ _t106 = _t105 & 0x00000001u;
|
|
/* 02394414 */ if (_t106) goto L_023944EC; else goto L_02394418;
|
|
L_02394418: ; // 0x2394418
|
|
/* 02394418 */ goto L_0239455C;
|
|
L_0239441C: ; // 0x239441c
|
|
/* 0239441C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[6], cpu->f[10]);
|
|
/* 02394420 */ _t107 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02394420 */ _t108 = _t107 & 0x00000001u;
|
|
/* 02394420 */ if (_t108) goto L_0239447C; else goto L_02394424;
|
|
L_02394424: ; // 0x2394424
|
|
/* 02394424 */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 02394428 */ cpu->f[31] = cpu->f[12];
|
|
/* 0239442C */ Gambit_fn_027FF40C(cpu);
|
|
/* 02394430 */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 02394434 */ cpu->r[4] = 0x00000111u;
|
|
/* 02394438 */ Gambit_fn_027FF658(cpu);
|
|
/* 0239443C */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 02394440 */ cpu->r[4] = cpu->r[31] + 0x00000034u;
|
|
/* 02394444 */ Gambit_fn_027FF610(cpu);
|
|
/* 02394448 */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 0239444C */ cpu->r[4] = cpu->r[31] + 0x00000038u;
|
|
/* 02394450 */ Gambit_fn_027FF634(cpu);
|
|
/* 02394454 */ cpu->r[11] = 0x10080000u;
|
|
/* 02394458 */ _t109 = cpu->r[11] + 0x000065F8u;
|
|
/* 02394458 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t109);
|
|
/* 0239445C */ cpu->f[7] = cpu->f[0] * cpu->f[31];
|
|
/* 02394460 */ cpu->f[8] = (uint32_t)(int32_t)cpu->f[7];
|
|
/* 02394464 */ cpu->r[0] = cpu->r[1] + 0x00000028u;
|
|
/* 02394468 */ /* nop */
|
|
/* 0239446C */ _t110 = cpu->r[1] + 0x00000028u;
|
|
/* 0239446C */ cpu->r[4] = rbrew_read32(cpu->mem, _t110);
|
|
/* 02394470 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 02394474 */ _t111 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02394474 */ _t112 = _t111 & 0x00000001u;
|
|
/* 02394474 */ if (_t112) goto L_023944EC; else goto L_02394478;
|
|
L_02394478: ; // 0x2394478
|
|
/* 02394478 */ goto L_0239455C;
|
|
L_0239447C: ; // 0x239447c
|
|
/* 0239447C */ cpu->f[8] = cpu->f[10] - cpu->f[11];
|
|
/* 02394480 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[9]);
|
|
/* 02394484 */ _t113 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02394484 */ _t114 = _t113 & 0x00000001u;
|
|
/* 02394484 */ if (_t114) goto L_0239449C; else goto L_02394488;
|
|
L_02394488: ; // 0x2394488
|
|
/* 02394488 */ cpu->f[10] = cpu->f[12] - cpu->f[31];
|
|
/* 0239448C */ cpu->f[11] = cpu->f[6] - cpu->f[11];
|
|
/* 02394490 */ cpu->f[13] = cpu->f[10] * cpu->f[11];
|
|
/* 02394494 */ cpu->f[0] = cpu->f[13] / cpu->f[8];
|
|
/* 02394498 */ cpu->f[31] = cpu->f[0] + cpu->f[31];
|
|
L_0239449C: ; // 0x239449c
|
|
/* 0239449C */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 023944A0 */ Gambit_fn_027FF40C(cpu);
|
|
/* 023944A4 */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 023944A8 */ cpu->r[4] = 0x00000111u;
|
|
/* 023944AC */ Gambit_fn_027FF658(cpu);
|
|
/* 023944B0 */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 023944B4 */ cpu->r[4] = cpu->r[31] + 0x00000034u;
|
|
/* 023944B8 */ Gambit_fn_027FF610(cpu);
|
|
/* 023944BC */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 023944C0 */ cpu->r[4] = cpu->r[31] + 0x00000038u;
|
|
/* 023944C4 */ Gambit_fn_027FF634(cpu);
|
|
/* 023944C8 */ cpu->r[11] = 0x10080000u;
|
|
/* 023944CC */ _t115 = cpu->r[11] + 0x000065F8u;
|
|
/* 023944CC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t115);
|
|
/* 023944D0 */ cpu->f[7] = cpu->f[0] * cpu->f[31];
|
|
/* 023944D4 */ cpu->f[8] = (uint32_t)(int32_t)cpu->f[7];
|
|
/* 023944D8 */ cpu->r[0] = cpu->r[1] + 0x00000028u;
|
|
/* 023944DC */ /* nop */
|
|
/* 023944E0 */ _t116 = cpu->r[1] + 0x00000028u;
|
|
/* 023944E0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t116);
|
|
/* 023944E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 023944E8 */ _t117 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 023944E8 */ _t118 = _t117 & 0x00000001u;
|
|
/* 023944E8 */ if (_t118) goto L_023944EC; else goto L_0239455C;
|
|
L_023944EC: ; // 0x23944ec
|
|
/* 023944EC */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 023944F0 */ cpu->r[4] = 0x00000000u;
|
|
/* 023944F4 */ Gambit_fn_027FF660(cpu);
|
|
/* 023944F8 */ cpu->f[1] = cpu->f[30];
|
|
/* 023944FC */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 02394500 */ Gambit_fn_027FF5D4(cpu);
|
|
/* 02394504 */ cpu->r[4] = 0x00000000u;
|
|
/* 02394508 */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 0239450C */ Gambit_fn_027FF668(cpu);
|
|
/* 02394510 */ cpu->r[10] = 0x00000040u;
|
|
/* 02394514 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 02394518 */ _t119 = cpu->r[1] + 0x00000008u;
|
|
/* 02394518 */ rbrew_write32(cpu->mem, _t119, cpu->r[10]);
|
|
/* 0239451C */ _t120 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239451C */ _t121 = _t120 & 0x00000001u;
|
|
/* 0239451C */ if (_t121) goto L_02394520; else goto L_0239459C;
|
|
L_02394520: ; // 0x2394520
|
|
/* 02394520 */ _t122 = cpu->r[31] + 0x00000008u;
|
|
/* 02394520 */ cpu->r[5] = rbrew_read32(cpu->mem, _t122);
|
|
/* 02394524 */ _t123 = cpu->r[5] + 0x00000014u;
|
|
/* 02394524 */ cpu->r[0] = rbrew_read32(cpu->mem, _t123);
|
|
/* 02394528 */ cpu->ctr = cpu->r[0];
|
|
/* 0239452C */ cpu->r[3] = cpu->r[31] + 0x00000004u;
|
|
/* 02394530 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02394534 */ _t124 = cpu->r[1] + 0x00000008u;
|
|
/* 02394534 */ cpu->r[8] = rbrew_read32(cpu->mem, _t124);
|
|
/* 02394538 */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 0239453C */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 02394540 */ _t125 = cpu->r[31] + 0x00000004u;
|
|
/* 02394540 */ cpu->r[7] = rbrew_read32(cpu->mem, _t125);
|
|
/* 02394544 */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02394548 */ cpu->r[6] = 0x00000001u;
|
|
/* 0239454C */ _t126 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239454C */ rbrew_write32(cpu->mem, _t126, cpu->r[8]);
|
|
/* 02394550 */ cpu->r[8] = 0xFFFFFFFFu;
|
|
/* 02394554 */ Gambit_fn_027FF75C(cpu);
|
|
/* 02394558 */ goto L_023945C4;
|
|
L_0239455C: ; // 0x239455c
|
|
/* 0239455C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x000000FFu);
|
|
/* 02394560 */ _t127 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02394560 */ _t128 = _t127 & 0x00000001u;
|
|
/* 02394560 */ if (_t128) goto L_02394564; else goto L_02394568;
|
|
L_02394564: ; // 0x2394564
|
|
/* 02394564 */ cpu->r[4] = 0x000000FFu;
|
|
L_02394568: ; // 0x2394568
|
|
/* 02394568 */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 0239456C */ cpu->r[4] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 02394570 */ Gambit_fn_027FF660(cpu);
|
|
/* 02394574 */ cpu->f[1] = cpu->f[30];
|
|
/* 02394578 */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 0239457C */ Gambit_fn_027FF5D4(cpu);
|
|
/* 02394580 */ cpu->r[4] = 0x00000000u;
|
|
/* 02394584 */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 02394588 */ Gambit_fn_027FF668(cpu);
|
|
/* 0239458C */ cpu->r[10] = 0x00000040u;
|
|
/* 02394590 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 02394594 */ _t129 = cpu->r[1] + 0x00000008u;
|
|
/* 02394594 */ rbrew_write32(cpu->mem, _t129, cpu->r[10]);
|
|
/* 02394598 */ _t130 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02394598 */ _t131 = _t130 & 0x00000001u;
|
|
/* 02394598 */ if (_t131) goto L_02394520; else goto L_0239459C;
|
|
L_0239459C: ; // 0x239459c
|
|
/* 0239459C */ cpu->r[7] = 0x10080000u;
|
|
/* 023945A0 */ _t132 = cpu->r[1] + 0x00000008u;
|
|
/* 023945A0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t132);
|
|
/* 023945A4 */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 023945A8 */ cpu->r[7] = cpu->r[7] + 0x000065FCu;
|
|
/* 023945AC */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 023945B0 */ _t133 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023945B0 */ rbrew_write32(cpu->mem, _t133, cpu->r[8]);
|
|
/* 023945B4 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 023945B8 */ cpu->r[6] = 0x00000001u;
|
|
/* 023945BC */ cpu->r[8] = 0xFFFFFFFFu;
|
|
/* 023945C0 */ Gambit_fn_027FF75C(cpu);
|
|
L_023945C4: ; // 0x23945c4
|
|
/* 023945C4 */ _t134 = cpu->r[1] + 0x000002B0u;
|
|
/* 023945C4 */ cpu->r[28] = rbrew_read32(cpu->mem, _t134);
|
|
/* 023945C8 */ _t135 = cpu->r[1] + 0x000002B4u;
|
|
/* 023945C8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t135);
|
|
/* 023945CC */ _t136 = cpu->r[1] + 0x000002D8u;
|
|
/* 023945CC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t136);
|
|
/* 023945D0 */ _t137 = cpu->r[1] + 0x000002C8u;
|
|
/* 023945D0 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t137);
|
|
/* 023945D4 */ _t138 = cpu->r[1] + 0x000002D0u;
|
|
/* 023945D4 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t138);
|
|
/* 023945D8 */ _t139 = cpu->r[1] + 0x000002C0u;
|
|
/* 023945D8 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t139);
|
|
/* 023945DC */ _t140 = cpu->r[1] + 0x000002BCu;
|
|
/* 023945DC */ cpu->r[31] = rbrew_read32(cpu->mem, _t140);
|
|
/* 023945E0 */ _t141 = cpu->r[1] + 0x000002B8u;
|
|
/* 023945E0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t141);
|
|
/* 023945E4 */ _t142 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 023945E4 */ _t143 = _t142 & 0x00000001u;
|
|
/* 023945E4 */ if (_t143) goto L_023945E8; // else: addr-0 trap, fall-through
|
|
L_023945E8: ; // 0x23945e8
|
|
/* 023945E8 */ _t144 = cpu->r[1] + 0x000002E4u;
|
|
/* 023945E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t144);
|
|
/* 023945EC */ cpu->lr = cpu->r[0];
|
|
/* 023945F0 */ cpu->r[1] = cpu->r[1] + 0x000002E0u;
|
|
/* 023945F4 */ return;
|
|
}
|
|
|
|
// fn_02394064 @ 0x2394064
|
|
void Gambit_fn_02394064(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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;
|
|
|
|
L_02394064: ; // 0x2394064
|
|
/* 02394064 */ _t0 = cpu->r[1] + 0xFFFFFD20u;
|
|
/* 02394064 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02394064 */ cpu->r[1] = _t0;
|
|
/* 02394068 */ _t1 = cpu->r[1] + 0x000002C0u;
|
|
/* 02394068 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[30]);
|
|
/* 0239406C */ _t2 = cpu->r[1] + 0x000002D0u;
|
|
/* 0239406C */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 02394070 */ /* nop */
|
|
/* 02394074 */ _t3 = cpu->r[1] + 0x000002C8u;
|
|
/* 02394074 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[30]);
|
|
/* 02394078 */ /* nop */
|
|
/* 0239407C */ _t4 = cpu->r[1] + 0x000002D8u;
|
|
/* 0239407C */ rbrew_write_f32(cpu->mem, _t4, cpu->f[31]);
|
|
/* 02394080 */ _t5 = cpu->r[1] + 0x000002E4u;
|
|
/* 02394080 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02394084 */ _t6 = cpu->r[1] + 0x000002B0u;
|
|
/* 02394084 */ rbrew_write32(cpu->mem, _t6, cpu->r[28]);
|
|
/* 02394088 */ _t7 = cpu->r[1] + 0x000002B4u;
|
|
/* 02394088 */ rbrew_write32(cpu->mem, _t7, cpu->r[29]);
|
|
/* 0239408C */ _t8 = cpu->r[1] + 0x000002B8u;
|
|
/* 0239408C */ rbrew_write32(cpu->mem, _t8, cpu->r[30]);
|
|
/* 02394090 */ cpu->r[12] = 0x101C0000u;
|
|
/* 02394094 */ _t9 = cpu->r[1] + 0x000002BCu;
|
|
/* 02394094 */ rbrew_write32(cpu->mem, _t9, cpu->r[31]);
|
|
/* 02394098 */ _t10 = cpu->r[12] + 0x00006000u;
|
|
/* 02394098 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0239409C */ cpu->r[31] = cpu->r[3];
|
|
/* 023940A0 */ _t11 = cpu->r[12] + 0x00000268u;
|
|
/* 023940A0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t11);
|
|
/* 023940A4 */ Gambit_fn_0261F73C(cpu);
|
|
/* 023940A8 */ _t12 = cpu->r[3] + 0x000007F0u;
|
|
/* 023940A8 */ cpu->r[28] = rbrew_read32(cpu->mem, _t12);
|
|
/* 023940AC */ cpu->r[3] = 0x00000005u;
|
|
/* 023940B0 */ cpu->r[29] = 0x00000000u;
|
|
/* 023940B4 */ Gambit_fn_027E6EEC(cpu);
|
|
/* 023940B8 */ _t13 = cpu->r[31] + 0x0000000Cu;
|
|
/* 023940B8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t13);
|
|
/* 023940BC */ cpu->r[30] = cpu->r[3];
|
|
/* 023940C0 */ _t14 = cpu->r[31] + 0x00000010u;
|
|
/* 023940C0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t14);
|
|
/* 023940C4 */ _t15 = cpu->r[1] + 0x00000030u;
|
|
/* 023940C4 */ rbrew_write32(cpu->mem, _t15, cpu->r[7]);
|
|
/* 023940C8 */ _t16 = cpu->r[31] + 0x00000014u;
|
|
/* 023940C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 023940CC */ _t17 = cpu->r[1] + 0x00000034u;
|
|
/* 023940CC */ rbrew_write32(cpu->mem, _t17, cpu->r[9]);
|
|
/* 023940D0 */ cpu->r[5] = cpu->r[1] + 0x00000030u;
|
|
/* 023940D4 */ _t18 = cpu->r[1] + 0x00000038u;
|
|
/* 023940D4 */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
/* 023940D8 */ _t19 = cpu->r[30] + 0x00000048u;
|
|
/* 023940D8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t19);
|
|
/* 023940DC */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 023940E0 */ Gambit_fn_0281A9D0(cpu);
|
|
/* 023940E4 */ _t20 = cpu->r[30] + 0x0000004Cu;
|
|
/* 023940E4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t20);
|
|
/* 023940E8 */ cpu->r[4] = cpu->r[1] + 0x0000003Cu;
|
|
/* 023940EC */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 023940F0 */ Gambit_fn_0281BCA8(cpu);
|
|
/* 023940F4 */ cpu->r[5] = cpu->r[1] + 0x0000003Cu;
|
|
/* 023940F8 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 023940FC */ cpu->r[3] = cpu->r[30] + 0x00000018u;
|
|
/* 02394100 */ Gambit_fn_0281DE48(cpu);
|
|
/* 02394104 */ _t21 = cpu->r[28] + 0x00000128u;
|
|
/* 02394104 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 02394108 */ cpu->r[7] = 0x10080000u;
|
|
/* 0239410C */ _t22 = cpu->r[7] + 0x000065F4u;
|
|
/* 0239410C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 02394110 */ _t23 = cpu->r[1] + 0x00000020u;
|
|
/* 02394110 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 02394114 */ cpu->f[12] = cpu->f[13] * cpu->f[10];
|
|
/* 02394118 */ cpu->f[6] = -cpu->f[11];
|
|
/* 0239411C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[6], cpu->f[12]);
|
|
/* 02394120 */ _t24 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02394120 */ _t25 = _t24 & 0x00000001u;
|
|
/* 02394120 */ if (_t25) goto L_02394124; else goto L_02394128;
|
|
L_02394124: ; // 0x2394124
|
|
/* 02394124 */ cpu->r[29] = 0x00000001u;
|
|
L_02394128: ; // 0x2394128
|
|
/* 02394128 */ _t26 = cpu->r[31] + 0x0000002Cu;
|
|
/* 02394128 */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 0239412C */ cpu->r[12] = 0x10080000u;
|
|
/* 02394130 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[6], cpu->f[5]);
|
|
/* 02394134 */ _t27 = cpu->r[12] + 0x000065ECu;
|
|
/* 02394134 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 02394138 */ _t28 = cpu->r[31] + 0x00000020u;
|
|
/* 02394138 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 0239413C */ _t29 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0239413C */ _t30 = _t29 & 0x00000001u;
|
|
/* 0239413C */ if (_t30) goto L_02394140; else goto L_0239423C;
|
|
L_02394140: ; // 0x2394140
|
|
/* 02394140 */ cpu->f[7] = cpu->f[5];
|
|
/* 02394144 */ _t31 = cpu->r[31] + 0x00000030u;
|
|
/* 02394144 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 02394148 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[7]);
|
|
/* 0239414C */ _t32 = cpu->r[31] + 0x00000024u;
|
|
/* 0239414C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 02394150 */ _t33 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02394150 */ _t34 = _t33 & 0x00000001u;
|
|
/* 02394150 */ if (_t34) goto L_023941A8; else goto L_02394154;
|
|
L_02394154: ; // 0x2394154
|
|
/* 02394154 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[6], cpu->f[12]);
|
|
/* 02394158 */ _t35 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02394158 */ _t36 = _t35 & 0x00000001u;
|
|
/* 02394158 */ if (_t36) goto L_0239415C; else goto L_023941D8;
|
|
L_0239415C: ; // 0x239415c
|
|
/* 0239415C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[6], cpu->f[7]);
|
|
/* 02394160 */ _t37 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02394160 */ _t38 = _t37 & 0x00000001u;
|
|
/* 02394160 */ if (_t38) goto L_02394164; else goto L_023941B0;
|
|
L_02394164: ; // 0x2394164
|
|
/* 02394164 */ cpu->f[0] = cpu->f[7] - cpu->f[12];
|
|
/* 02394168 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[9]);
|
|
/* 0239416C */ _t39 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239416C */ _t40 = _t39 & 0x00000001u;
|
|
/* 0239416C */ if (_t40) goto L_02394184; else goto L_02394170;
|
|
L_02394170: ; // 0x2394170
|
|
/* 02394170 */ cpu->f[7] = cpu->f[30] - cpu->f[13];
|
|
/* 02394174 */ cpu->f[10] = cpu->f[6] - cpu->f[12];
|
|
/* 02394178 */ cpu->f[11] = cpu->f[7] * cpu->f[10];
|
|
/* 0239417C */ cpu->f[0] = cpu->f[11] / cpu->f[0];
|
|
/* 02394180 */ cpu->f[13] = cpu->f[0] + cpu->f[13];
|
|
L_02394184: ; // 0x2394184
|
|
/* 02394184 */ cpu->f[10] = cpu->f[5];
|
|
/* 02394188 */ _t41 = cpu->r[31] + 0x00000028u;
|
|
/* 02394188 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 0239418C */ cpu->r[8] = 0x10080000u;
|
|
/* 02394190 */ _t42 = cpu->r[8] + 0x000065F0u;
|
|
/* 02394190 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 02394194 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[11]);
|
|
/* 02394198 */ _t43 = cpu->r[31] + 0x00000018u;
|
|
/* 02394198 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t43);
|
|
/* 0239419C */ cpu->f[30] = cpu->f[13];
|
|
/* 023941A0 */ _t44 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 023941A0 */ _t45 = _t44 & 0x00000001u;
|
|
/* 023941A0 */ if (_t45) goto L_023943C0; else goto L_023941A4;
|
|
L_023941A4: ; // 0x23941a4
|
|
/* 023941A4 */ goto L_023942E4;
|
|
L_023941A8: ; // 0x23941a8
|
|
/* 023941A8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[6], cpu->f[7]);
|
|
/* 023941AC */ _t46 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 023941AC */ _t47 = _t46 & 0x00000001u;
|
|
/* 023941AC */ if (_t47) goto L_023941D0; else goto L_023941B0;
|
|
L_023941B0: ; // 0x23941b0
|
|
/* 023941B0 */ cpu->f[10] = cpu->f[5];
|
|
/* 023941B4 */ _t48 = cpu->r[31] + 0x00000028u;
|
|
/* 023941B4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 023941B8 */ cpu->r[8] = 0x10080000u;
|
|
/* 023941BC */ _t49 = cpu->r[8] + 0x000065F0u;
|
|
/* 023941BC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t49);
|
|
/* 023941C0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[11]);
|
|
/* 023941C4 */ _t50 = cpu->r[31] + 0x00000018u;
|
|
/* 023941C4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t50);
|
|
/* 023941C8 */ _t51 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 023941C8 */ _t52 = _t51 & 0x00000001u;
|
|
/* 023941C8 */ if (_t52) goto L_023943C0; else goto L_023941CC;
|
|
L_023941CC: ; // 0x23941cc
|
|
/* 023941CC */ goto L_023942E4;
|
|
L_023941D0: ; // 0x23941d0
|
|
/* 023941D0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[6], cpu->f[12]);
|
|
/* 023941D4 */ _t53 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 023941D4 */ _t54 = _t53 & 0x00000001u;
|
|
/* 023941D4 */ if (_t54) goto L_023941FC; else goto L_023941D8;
|
|
L_023941D8: ; // 0x23941d8
|
|
/* 023941D8 */ cpu->f[10] = cpu->f[5];
|
|
/* 023941DC */ _t55 = cpu->r[31] + 0x00000028u;
|
|
/* 023941DC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t55);
|
|
/* 023941E0 */ cpu->r[8] = 0x10080000u;
|
|
/* 023941E4 */ _t56 = cpu->r[8] + 0x000065F0u;
|
|
/* 023941E4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 023941E8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[11]);
|
|
/* 023941EC */ _t57 = cpu->r[31] + 0x00000018u;
|
|
/* 023941EC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t57);
|
|
/* 023941F0 */ cpu->f[30] = cpu->f[13];
|
|
/* 023941F4 */ _t58 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 023941F4 */ _t59 = _t58 & 0x00000001u;
|
|
/* 023941F4 */ if (_t59) goto L_023943C0; else goto L_023941F8;
|
|
L_023941F8: ; // 0x23941f8
|
|
/* 023941F8 */ goto L_023942E4;
|
|
L_023941FC: ; // 0x23941fc
|
|
/* 023941FC */ cpu->f[8] = cpu->f[12] - cpu->f[7];
|
|
/* 02394200 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[9]);
|
|
/* 02394204 */ _t60 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02394204 */ _t61 = _t60 & 0x00000001u;
|
|
/* 02394204 */ if (_t61) goto L_0239421C; else goto L_02394208;
|
|
L_02394208: ; // 0x2394208
|
|
/* 02394208 */ cpu->f[12] = cpu->f[6] - cpu->f[7];
|
|
/* 0239420C */ cpu->f[7] = cpu->f[13] - cpu->f[30];
|
|
/* 02394210 */ cpu->f[0] = cpu->f[7] * cpu->f[12];
|
|
/* 02394214 */ cpu->f[7] = cpu->f[0] / cpu->f[8];
|
|
/* 02394218 */ cpu->f[30] = cpu->f[7] + cpu->f[30];
|
|
L_0239421C: ; // 0x239421c
|
|
/* 0239421C */ cpu->f[10] = cpu->f[5];
|
|
/* 02394220 */ _t62 = cpu->r[31] + 0x00000028u;
|
|
/* 02394220 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t62);
|
|
/* 02394224 */ cpu->r[8] = 0x10080000u;
|
|
/* 02394228 */ _t63 = cpu->r[8] + 0x000065F0u;
|
|
/* 02394228 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t63);
|
|
/* 0239422C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[11]);
|
|
/* 02394230 */ _t64 = cpu->r[31] + 0x00000018u;
|
|
/* 02394230 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t64);
|
|
/* 02394234 */ _t65 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02394234 */ _t66 = _t65 & 0x00000001u;
|
|
/* 02394234 */ if (_t66) goto L_023943C0; else goto L_02394238;
|
|
L_02394238: ; // 0x2394238
|
|
/* 02394238 */ goto L_023942E4;
|
|
L_0239423C: ; // 0x239423c
|
|
/* 0239423C */ _t67 = cpu->r[31] + 0x00000028u;
|
|
/* 0239423C */ cpu->f[4] = rbrew_read_f32(cpu->mem, _t67);
|
|
/* 02394240 */ cpu->f[10] = cpu->f[5];
|
|
/* 02394244 */ cpu->f[12] = cpu->f[4];
|
|
/* 02394248 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[12]);
|
|
/* 0239424C */ _t68 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0239424C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t68);
|
|
/* 02394250 */ _t69 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02394250 */ _t70 = _t69 & 0x00000001u;
|
|
/* 02394250 */ if (_t70) goto L_02394288; else goto L_02394254;
|
|
L_02394254: ; // 0x2394254
|
|
/* 02394254 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[6], cpu->f[10]);
|
|
/* 02394258 */ _t71 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02394258 */ _t72 = _t71 & 0x00000001u;
|
|
/* 02394258 */ if (_t72) goto L_0239425C; else goto L_023942C8;
|
|
L_0239425C: ; // 0x239425c
|
|
/* 0239425C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[6], cpu->f[12]);
|
|
/* 02394260 */ _t73 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02394260 */ _t74 = _t73 & 0x00000001u;
|
|
/* 02394260 */ if (_t74) goto L_02394264; else goto L_02394290;
|
|
L_02394264: ; // 0x2394264
|
|
/* 02394264 */ cpu->f[12] = cpu->f[12] - cpu->f[10];
|
|
/* 02394268 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[9]);
|
|
/* 0239426C */ _t75 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239426C */ _t76 = _t75 & 0x00000001u;
|
|
/* 0239426C */ if (_t76) goto L_023942C8; else goto L_02394270;
|
|
L_02394270: ; // 0x2394270
|
|
/* 02394270 */ cpu->f[8] = cpu->f[11] - cpu->f[30];
|
|
/* 02394274 */ cpu->f[10] = cpu->f[6] - cpu->f[10];
|
|
/* 02394278 */ cpu->f[13] = cpu->f[8] * cpu->f[10];
|
|
/* 0239427C */ cpu->f[0] = cpu->f[13] / cpu->f[12];
|
|
/* 02394280 */ cpu->f[30] = cpu->f[0] + cpu->f[30];
|
|
/* 02394284 */ goto L_023942C8;
|
|
L_02394288: ; // 0x2394288
|
|
/* 02394288 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[6], cpu->f[12]);
|
|
/* 0239428C */ _t77 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0239428C */ _t78 = _t77 & 0x00000001u;
|
|
/* 0239428C */ if (_t78) goto L_02394298; else goto L_02394290;
|
|
L_02394290: ; // 0x2394290
|
|
/* 02394290 */ cpu->f[30] = cpu->f[11];
|
|
/* 02394294 */ goto L_023942C8;
|
|
L_02394298: ; // 0x2394298
|
|
/* 02394298 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[6], cpu->f[10]);
|
|
/* 0239429C */ _t79 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0239429C */ _t80 = _t79 & 0x00000001u;
|
|
/* 0239429C */ if (_t80) goto L_023942A0; else goto L_023942C8;
|
|
L_023942A0: ; // 0x23942a0
|
|
/* 023942A0 */ cpu->f[8] = cpu->f[10] - cpu->f[12];
|
|
/* 023942A4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[9]);
|
|
/* 023942A8 */ _t81 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023942A8 */ _t82 = _t81 & 0x00000001u;
|
|
/* 023942A8 */ if (_t82) goto L_023942AC; else goto L_023942B4;
|
|
L_023942AC: ; // 0x23942ac
|
|
/* 023942AC */ cpu->f[30] = cpu->f[11];
|
|
/* 023942B0 */ goto L_023942C8;
|
|
L_023942B4: ; // 0x23942b4
|
|
/* 023942B4 */ cpu->f[7] = cpu->f[30] - cpu->f[11];
|
|
/* 023942B8 */ cpu->f[10] = cpu->f[6] - cpu->f[12];
|
|
/* 023942BC */ cpu->f[12] = cpu->f[7] * cpu->f[10];
|
|
/* 023942C0 */ cpu->f[13] = cpu->f[12] / cpu->f[8];
|
|
/* 023942C4 */ cpu->f[30] = cpu->f[13] + cpu->f[11];
|
|
L_023942C8: ; // 0x23942c8
|
|
/* 023942C8 */ cpu->f[10] = cpu->f[5];
|
|
/* 023942CC */ cpu->f[11] = cpu->f[4];
|
|
/* 023942D0 */ _t83 = cpu->r[31] + 0x00000018u;
|
|
/* 023942D0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t83);
|
|
/* 023942D4 */ cpu->r[8] = 0x10080000u;
|
|
/* 023942D8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[11]);
|
|
/* 023942DC */ _t84 = cpu->r[8] + 0x000065F0u;
|
|
/* 023942DC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t84);
|
|
/* 023942E0 */ _t85 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 023942E0 */ _t86 = _t85 & 0x00000001u;
|
|
/* 023942E0 */ if (_t86) goto L_023943C0; else goto L_023942E4;
|
|
L_023942E4: ; // 0x23942e4
|
|
/* 023942E4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[6], cpu->f[10]);
|
|
/* 023942E8 */ _t87 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 023942E8 */ _t88 = _t87 & 0x00000001u;
|
|
/* 023942E8 */ if (_t88) goto L_023942EC; else goto L_02394424;
|
|
L_023942EC: ; // 0x23942ec
|
|
/* 023942EC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[6], cpu->f[11]);
|
|
/* 023942F0 */ _t89 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 023942F0 */ _t90 = _t89 & 0x00000001u;
|
|
/* 023942F0 */ if (_t90) goto L_023942F4; else goto L_023943C8;
|
|
L_023942F4: ; // 0x23942f4
|
|
/* 023942F4 */ cpu->f[11] = cpu->f[11] - cpu->f[10];
|
|
/* 023942F8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[9]);
|
|
/* 023942FC */ _t91 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023942FC */ _t92 = _t91 & 0x00000001u;
|
|
/* 023942FC */ if (_t92) goto L_02394300; else goto L_02394358;
|
|
L_02394300: ; // 0x2394300
|
|
/* 02394300 */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 02394304 */ cpu->f[31] = cpu->f[12];
|
|
/* 02394308 */ Gambit_fn_027FF40C(cpu);
|
|
/* 0239430C */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 02394310 */ cpu->r[4] = 0x00000111u;
|
|
/* 02394314 */ Gambit_fn_027FF658(cpu);
|
|
/* 02394318 */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 0239431C */ cpu->r[4] = cpu->r[31] + 0x00000034u;
|
|
/* 02394320 */ Gambit_fn_027FF610(cpu);
|
|
/* 02394324 */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 02394328 */ cpu->r[4] = cpu->r[31] + 0x00000038u;
|
|
/* 0239432C */ Gambit_fn_027FF634(cpu);
|
|
/* 02394330 */ cpu->r[11] = 0x10080000u;
|
|
/* 02394334 */ _t93 = cpu->r[11] + 0x000065F8u;
|
|
/* 02394334 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t93);
|
|
/* 02394338 */ cpu->f[7] = cpu->f[0] * cpu->f[31];
|
|
/* 0239433C */ cpu->f[8] = (uint32_t)(int32_t)cpu->f[7];
|
|
/* 02394340 */ cpu->r[0] = cpu->r[1] + 0x00000028u;
|
|
/* 02394344 */ /* nop */
|
|
/* 02394348 */ _t94 = cpu->r[1] + 0x00000028u;
|
|
/* 02394348 */ cpu->r[4] = rbrew_read32(cpu->mem, _t94);
|
|
/* 0239434C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 02394350 */ _t95 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02394350 */ _t96 = _t95 & 0x00000001u;
|
|
/* 02394350 */ if (_t96) goto L_023944EC; else goto L_02394354;
|
|
L_02394354: ; // 0x2394354
|
|
/* 02394354 */ goto L_0239455C;
|
|
L_02394358: ; // 0x2394358
|
|
/* 02394358 */ cpu->f[0] = cpu->f[31] - cpu->f[12];
|
|
/* 0239435C */ cpu->f[7] = cpu->f[6] - cpu->f[10];
|
|
/* 02394360 */ cpu->f[8] = cpu->f[0] * cpu->f[7];
|
|
/* 02394364 */ cpu->f[9] = cpu->f[8] / cpu->f[11];
|
|
/* 02394368 */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 0239436C */ cpu->f[31] = cpu->f[9] + cpu->f[12];
|
|
/* 02394370 */ Gambit_fn_027FF40C(cpu);
|
|
/* 02394374 */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 02394378 */ cpu->r[4] = 0x00000111u;
|
|
/* 0239437C */ Gambit_fn_027FF658(cpu);
|
|
/* 02394380 */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 02394384 */ cpu->r[4] = cpu->r[31] + 0x00000034u;
|
|
/* 02394388 */ Gambit_fn_027FF610(cpu);
|
|
/* 0239438C */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 02394390 */ cpu->r[4] = cpu->r[31] + 0x00000038u;
|
|
/* 02394394 */ Gambit_fn_027FF634(cpu);
|
|
/* 02394398 */ cpu->r[11] = 0x10080000u;
|
|
/* 0239439C */ _t97 = cpu->r[11] + 0x000065F8u;
|
|
/* 0239439C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t97);
|
|
/* 023943A0 */ cpu->f[7] = cpu->f[0] * cpu->f[31];
|
|
/* 023943A4 */ cpu->f[8] = (uint32_t)(int32_t)cpu->f[7];
|
|
/* 023943A8 */ cpu->r[0] = cpu->r[1] + 0x00000028u;
|
|
/* 023943AC */ /* nop */
|
|
/* 023943B0 */ _t98 = cpu->r[1] + 0x00000028u;
|
|
/* 023943B0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t98);
|
|
/* 023943B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 023943B8 */ _t99 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 023943B8 */ _t100 = _t99 & 0x00000001u;
|
|
/* 023943B8 */ if (_t100) goto L_023944EC; else goto L_023943BC;
|
|
L_023943BC: ; // 0x23943bc
|
|
/* 023943BC */ goto L_0239455C;
|
|
L_023943C0: ; // 0x23943c0
|
|
/* 023943C0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[6], cpu->f[11]);
|
|
/* 023943C4 */ _t101 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 023943C4 */ _t102 = _t101 & 0x00000001u;
|
|
/* 023943C4 */ if (_t102) goto L_0239441C; else goto L_023943C8;
|
|
L_023943C8: ; // 0x23943c8
|
|
/* 023943C8 */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 023943CC */ Gambit_fn_027FF40C(cpu);
|
|
/* 023943D0 */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 023943D4 */ cpu->r[4] = 0x00000111u;
|
|
/* 023943D8 */ Gambit_fn_027FF658(cpu);
|
|
/* 023943DC */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 023943E0 */ cpu->r[4] = cpu->r[31] + 0x00000034u;
|
|
/* 023943E4 */ Gambit_fn_027FF610(cpu);
|
|
/* 023943E8 */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 023943EC */ cpu->r[4] = cpu->r[31] + 0x00000038u;
|
|
/* 023943F0 */ Gambit_fn_027FF634(cpu);
|
|
/* 023943F4 */ cpu->r[11] = 0x10080000u;
|
|
/* 023943F8 */ _t103 = cpu->r[11] + 0x000065F8u;
|
|
/* 023943F8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t103);
|
|
/* 023943FC */ cpu->f[7] = cpu->f[0] * cpu->f[31];
|
|
/* 02394400 */ cpu->f[8] = (uint32_t)(int32_t)cpu->f[7];
|
|
/* 02394404 */ cpu->r[0] = cpu->r[1] + 0x00000028u;
|
|
/* 02394408 */ /* nop */
|
|
/* 0239440C */ _t104 = cpu->r[1] + 0x00000028u;
|
|
/* 0239440C */ cpu->r[4] = rbrew_read32(cpu->mem, _t104);
|
|
/* 02394410 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 02394414 */ _t105 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02394414 */ _t106 = _t105 & 0x00000001u;
|
|
/* 02394414 */ if (_t106) goto L_023944EC; else goto L_02394418;
|
|
L_02394418: ; // 0x2394418
|
|
/* 02394418 */ goto L_0239455C;
|
|
L_0239441C: ; // 0x239441c
|
|
/* 0239441C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[6], cpu->f[10]);
|
|
/* 02394420 */ _t107 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02394420 */ _t108 = _t107 & 0x00000001u;
|
|
/* 02394420 */ if (_t108) goto L_0239447C; else goto L_02394424;
|
|
L_02394424: ; // 0x2394424
|
|
/* 02394424 */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 02394428 */ cpu->f[31] = cpu->f[12];
|
|
/* 0239442C */ Gambit_fn_027FF40C(cpu);
|
|
/* 02394430 */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 02394434 */ cpu->r[4] = 0x00000111u;
|
|
/* 02394438 */ Gambit_fn_027FF658(cpu);
|
|
/* 0239443C */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 02394440 */ cpu->r[4] = cpu->r[31] + 0x00000034u;
|
|
/* 02394444 */ Gambit_fn_027FF610(cpu);
|
|
/* 02394448 */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 0239444C */ cpu->r[4] = cpu->r[31] + 0x00000038u;
|
|
/* 02394450 */ Gambit_fn_027FF634(cpu);
|
|
/* 02394454 */ cpu->r[11] = 0x10080000u;
|
|
/* 02394458 */ _t109 = cpu->r[11] + 0x000065F8u;
|
|
/* 02394458 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t109);
|
|
/* 0239445C */ cpu->f[7] = cpu->f[0] * cpu->f[31];
|
|
/* 02394460 */ cpu->f[8] = (uint32_t)(int32_t)cpu->f[7];
|
|
/* 02394464 */ cpu->r[0] = cpu->r[1] + 0x00000028u;
|
|
/* 02394468 */ /* nop */
|
|
/* 0239446C */ _t110 = cpu->r[1] + 0x00000028u;
|
|
/* 0239446C */ cpu->r[4] = rbrew_read32(cpu->mem, _t110);
|
|
/* 02394470 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 02394474 */ _t111 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02394474 */ _t112 = _t111 & 0x00000001u;
|
|
/* 02394474 */ if (_t112) goto L_023944EC; else goto L_02394478;
|
|
L_02394478: ; // 0x2394478
|
|
/* 02394478 */ goto L_0239455C;
|
|
L_0239447C: ; // 0x239447c
|
|
/* 0239447C */ cpu->f[8] = cpu->f[10] - cpu->f[11];
|
|
/* 02394480 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[9]);
|
|
/* 02394484 */ _t113 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02394484 */ _t114 = _t113 & 0x00000001u;
|
|
/* 02394484 */ if (_t114) goto L_0239449C; else goto L_02394488;
|
|
L_02394488: ; // 0x2394488
|
|
/* 02394488 */ cpu->f[10] = cpu->f[12] - cpu->f[31];
|
|
/* 0239448C */ cpu->f[11] = cpu->f[6] - cpu->f[11];
|
|
/* 02394490 */ cpu->f[13] = cpu->f[10] * cpu->f[11];
|
|
/* 02394494 */ cpu->f[0] = cpu->f[13] / cpu->f[8];
|
|
/* 02394498 */ cpu->f[31] = cpu->f[0] + cpu->f[31];
|
|
L_0239449C: ; // 0x239449c
|
|
/* 0239449C */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 023944A0 */ Gambit_fn_027FF40C(cpu);
|
|
/* 023944A4 */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 023944A8 */ cpu->r[4] = 0x00000111u;
|
|
/* 023944AC */ Gambit_fn_027FF658(cpu);
|
|
/* 023944B0 */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 023944B4 */ cpu->r[4] = cpu->r[31] + 0x00000034u;
|
|
/* 023944B8 */ Gambit_fn_027FF610(cpu);
|
|
/* 023944BC */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 023944C0 */ cpu->r[4] = cpu->r[31] + 0x00000038u;
|
|
/* 023944C4 */ Gambit_fn_027FF634(cpu);
|
|
/* 023944C8 */ cpu->r[11] = 0x10080000u;
|
|
/* 023944CC */ _t115 = cpu->r[11] + 0x000065F8u;
|
|
/* 023944CC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t115);
|
|
/* 023944D0 */ cpu->f[7] = cpu->f[0] * cpu->f[31];
|
|
/* 023944D4 */ cpu->f[8] = (uint32_t)(int32_t)cpu->f[7];
|
|
/* 023944D8 */ cpu->r[0] = cpu->r[1] + 0x00000028u;
|
|
/* 023944DC */ /* nop */
|
|
/* 023944E0 */ _t116 = cpu->r[1] + 0x00000028u;
|
|
/* 023944E0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t116);
|
|
/* 023944E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 023944E8 */ _t117 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 023944E8 */ _t118 = _t117 & 0x00000001u;
|
|
/* 023944E8 */ if (_t118) goto L_023944EC; else goto L_0239455C;
|
|
L_023944EC: ; // 0x23944ec
|
|
/* 023944EC */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 023944F0 */ cpu->r[4] = 0x00000000u;
|
|
/* 023944F4 */ Gambit_fn_027FF660(cpu);
|
|
/* 023944F8 */ cpu->f[1] = cpu->f[30];
|
|
/* 023944FC */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 02394500 */ Gambit_fn_027FF5D4(cpu);
|
|
/* 02394504 */ cpu->r[4] = 0x00000000u;
|
|
/* 02394508 */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 0239450C */ Gambit_fn_027FF668(cpu);
|
|
/* 02394510 */ cpu->r[10] = 0x00000040u;
|
|
/* 02394514 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 02394518 */ _t119 = cpu->r[1] + 0x00000008u;
|
|
/* 02394518 */ rbrew_write32(cpu->mem, _t119, cpu->r[10]);
|
|
/* 0239451C */ _t120 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239451C */ _t121 = _t120 & 0x00000001u;
|
|
/* 0239451C */ if (_t121) goto L_02394520; else goto L_0239459C;
|
|
L_02394520: ; // 0x2394520
|
|
/* 02394520 */ _t122 = cpu->r[31] + 0x00000008u;
|
|
/* 02394520 */ cpu->r[5] = rbrew_read32(cpu->mem, _t122);
|
|
/* 02394524 */ _t123 = cpu->r[5] + 0x00000014u;
|
|
/* 02394524 */ cpu->r[0] = rbrew_read32(cpu->mem, _t123);
|
|
/* 02394528 */ cpu->ctr = cpu->r[0];
|
|
/* 0239452C */ cpu->r[3] = cpu->r[31] + 0x00000004u;
|
|
/* 02394530 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02394534 */ _t124 = cpu->r[1] + 0x00000008u;
|
|
/* 02394534 */ cpu->r[8] = rbrew_read32(cpu->mem, _t124);
|
|
/* 02394538 */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 0239453C */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 02394540 */ _t125 = cpu->r[31] + 0x00000004u;
|
|
/* 02394540 */ cpu->r[7] = rbrew_read32(cpu->mem, _t125);
|
|
/* 02394544 */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02394548 */ cpu->r[6] = 0x00000001u;
|
|
/* 0239454C */ _t126 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239454C */ rbrew_write32(cpu->mem, _t126, cpu->r[8]);
|
|
/* 02394550 */ cpu->r[8] = 0xFFFFFFFFu;
|
|
/* 02394554 */ Gambit_fn_027FF75C(cpu);
|
|
/* 02394558 */ goto L_023945C4;
|
|
L_0239455C: ; // 0x239455c
|
|
/* 0239455C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x000000FFu);
|
|
/* 02394560 */ _t127 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02394560 */ _t128 = _t127 & 0x00000001u;
|
|
/* 02394560 */ if (_t128) goto L_02394564; else goto L_02394568;
|
|
L_02394564: ; // 0x2394564
|
|
/* 02394564 */ cpu->r[4] = 0x000000FFu;
|
|
L_02394568: ; // 0x2394568
|
|
/* 02394568 */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 0239456C */ cpu->r[4] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 02394570 */ Gambit_fn_027FF660(cpu);
|
|
/* 02394574 */ cpu->f[1] = cpu->f[30];
|
|
/* 02394578 */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 0239457C */ Gambit_fn_027FF5D4(cpu);
|
|
/* 02394580 */ cpu->r[4] = 0x00000000u;
|
|
/* 02394584 */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 02394588 */ Gambit_fn_027FF668(cpu);
|
|
/* 0239458C */ cpu->r[10] = 0x00000040u;
|
|
/* 02394590 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 02394594 */ _t129 = cpu->r[1] + 0x00000008u;
|
|
/* 02394594 */ rbrew_write32(cpu->mem, _t129, cpu->r[10]);
|
|
/* 02394598 */ _t130 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02394598 */ _t131 = _t130 & 0x00000001u;
|
|
/* 02394598 */ if (_t131) goto L_02394520; else goto L_0239459C;
|
|
L_0239459C: ; // 0x239459c
|
|
/* 0239459C */ cpu->r[7] = 0x10080000u;
|
|
/* 023945A0 */ _t132 = cpu->r[1] + 0x00000008u;
|
|
/* 023945A0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t132);
|
|
/* 023945A4 */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 023945A8 */ cpu->r[7] = cpu->r[7] + 0x000065FCu;
|
|
/* 023945AC */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 023945B0 */ _t133 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023945B0 */ rbrew_write32(cpu->mem, _t133, cpu->r[8]);
|
|
/* 023945B4 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 023945B8 */ cpu->r[6] = 0x00000001u;
|
|
/* 023945BC */ cpu->r[8] = 0xFFFFFFFFu;
|
|
/* 023945C0 */ Gambit_fn_027FF75C(cpu);
|
|
L_023945C4: ; // 0x23945c4
|
|
/* 023945C4 */ _t134 = cpu->r[1] + 0x000002B0u;
|
|
/* 023945C4 */ cpu->r[28] = rbrew_read32(cpu->mem, _t134);
|
|
/* 023945C8 */ _t135 = cpu->r[1] + 0x000002B4u;
|
|
/* 023945C8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t135);
|
|
/* 023945CC */ _t136 = cpu->r[1] + 0x000002D8u;
|
|
/* 023945CC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t136);
|
|
/* 023945D0 */ _t137 = cpu->r[1] + 0x000002C8u;
|
|
/* 023945D0 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t137);
|
|
/* 023945D4 */ _t138 = cpu->r[1] + 0x000002D0u;
|
|
/* 023945D4 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t138);
|
|
/* 023945D8 */ _t139 = cpu->r[1] + 0x000002C0u;
|
|
/* 023945D8 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t139);
|
|
/* 023945DC */ _t140 = cpu->r[1] + 0x000002BCu;
|
|
/* 023945DC */ cpu->r[31] = rbrew_read32(cpu->mem, _t140);
|
|
/* 023945E0 */ _t141 = cpu->r[1] + 0x000002B8u;
|
|
/* 023945E0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t141);
|
|
/* 023945E4 */ _t142 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 023945E4 */ _t143 = _t142 & 0x00000001u;
|
|
/* 023945E4 */ if (_t143) goto L_023945E8; // else: addr-0 trap, fall-through
|
|
L_023945E8: ; // 0x23945e8
|
|
/* 023945E8 */ _t144 = cpu->r[1] + 0x000002E4u;
|
|
/* 023945E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t144);
|
|
/* 023945EC */ cpu->lr = cpu->r[0];
|
|
/* 023945F0 */ cpu->r[1] = cpu->r[1] + 0x000002E0u;
|
|
/* 023945F4 */ return;
|
|
}
|
|
|
|
// fn_023945F8 @ 0x23945f8
|
|
void Gambit_fn_023945F8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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;
|
|
|
|
L_023945F8: ; // 0x23945f8
|
|
/* 023945F8 */ _t0 = cpu->r[1] + 0xFFFFFE90u;
|
|
/* 023945F8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 023945F8 */ cpu->r[1] = _t0;
|
|
/* 023945FC */ /* nop */
|
|
/* 02394600 */ cpu->r[0] = cpu->lr;
|
|
/* 02394604 */ _t1 = cpu->r[1] + 0x00000174u;
|
|
/* 02394604 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02394608 */ cpu->r[29] = cpu->r[3];
|
|
/* 0239460C */ cpu->r[12] = 0x10080000u;
|
|
/* 02394610 */ _t2 = cpu->r[12] + 0x000065E8u;
|
|
/* 02394610 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 02394614 */ _t3 = cpu->r[29] + 0x0000001Cu;
|
|
/* 02394614 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 02394618 */ cpu->r[7] = 0x00040000u;
|
|
/* 0239461C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[0]);
|
|
/* 02394620 */ _t4 = cpu->r[29] + 0x00000000u;
|
|
/* 02394620 */ cpu->r[21] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02394624 */ cpu->r[7] = cpu->r[7] + 0x00000008u;
|
|
/* 02394628 */ _t5 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02394628 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02394628 */ if (_t6) goto L_02394634; else goto L_0239462C;
|
|
L_0239462C: ; // 0x239462c
|
|
/* 0239462C */ cpu->r[7] = 0x00040000u;
|
|
/* 02394630 */ cpu->r[7] = cpu->r[7] + 0x00000408u;
|
|
L_02394634: ; // 0x2394634
|
|
/* 02394634 */ /* nop */
|
|
/* 02394638 */ cpu->r[10] = 0x10080000u;
|
|
/* 0239463C */ _t7 = cpu->r[29] + 0x00000034u;
|
|
/* 0239463C */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 02394640 */ _t8 = cpu->r[10] + 0x000065F0u;
|
|
/* 02394640 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 02394644 */ _t9 = cpu->r[29] + 0x00000010u;
|
|
/* 02394644 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 02394648 */ /* nop */
|
|
/* 0239464C */ /* nop */
|
|
/* 02394650 */ /* nop */
|
|
/* 02394654 */ _t10 = cpu->r[1] + 0x000000E8u;
|
|
/* 02394654 */ cpu->r[9] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02394658 */ _t11 = cpu->r[1] + 0x000000ECu;
|
|
/* 02394658 */ cpu->r[11] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0239465C */ _t12 = cpu->r[1] + 0x00000118u;
|
|
/* 0239465C */ rbrew_write32(cpu->mem, _t12, cpu->r[9]);
|
|
/* 02394660 */ cpu->r[8] = 0x101E0000u;
|
|
/* 02394664 */ _t13 = cpu->r[1] + 0x0000011Cu;
|
|
/* 02394664 */ rbrew_write32(cpu->mem, _t13, cpu->r[11]);
|
|
/* 02394668 */ /* nop */
|
|
/* 0239466C */ _t14 = cpu->r[8] + 0xFFFF958Cu;
|
|
/* 0239466C */ cpu->f[2] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 02394670 */ /* nop */
|
|
/* 02394674 */ _t15 = cpu->r[1] + 0x000000F0u;
|
|
/* 02394674 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[6]);
|
|
/* 02394678 */ _t16 = cpu->r[1] + 0x000000F0u;
|
|
/* 02394678 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0239467C */ /* nop */
|
|
/* 02394680 */ _t17 = cpu->r[1] + 0x000000F8u;
|
|
/* 02394680 */ cpu->r[6] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02394684 */ _t18 = cpu->r[1] + 0x00000120u;
|
|
/* 02394684 */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
/* 02394688 */ _t19 = cpu->r[1] + 0x00000120u;
|
|
/* 02394688 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 0239468C */ cpu->r[3] = 0x101C0000u;
|
|
/* 02394690 */ _t20 = cpu->r[1] + 0x00000128u;
|
|
/* 02394690 */ rbrew_write32(cpu->mem, _t20, cpu->r[6]);
|
|
/* 02394694 */ cpu->f[13] = cpu->f[0] + cpu->f[7];
|
|
/* 02394698 */ _t21 = cpu->r[1] + 0x000000F4u;
|
|
/* 02394698 */ cpu->r[4] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0239469C */ cpu->r[11] = cpu->r[1] + 0x00000124u;
|
|
/* 023946A0 */ _t22 = cpu->r[3] + 0x00001EF8u;
|
|
/* 023946A0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t22);
|
|
/* 023946A4 */ cpu->r[5] = 0x00000000u;
|
|
/* 023946A8 */ _t23 = cpu->r[1] + 0x000000FCu;
|
|
/* 023946A8 */ rbrew_write_f32(cpu->mem, _t23, cpu->f[13]);
|
|
/* 023946AC */ _t24 = cpu->r[1] + 0x000000FCu;
|
|
/* 023946AC */ cpu->r[9] = rbrew_read32(cpu->mem, _t24);
|
|
/* 023946B0 */ cpu->r[10] = cpu->r[5];
|
|
/* 023946B4 */ _t25 = cpu->r[1] + 0x00000124u;
|
|
/* 023946B4 */ rbrew_write32(cpu->mem, _t25, cpu->r[4]);
|
|
/* 023946B8 */ cpu->r[6] = cpu->r[5];
|
|
/* 023946BC */ _t26 = cpu->r[1] + 0x0000012Cu;
|
|
/* 023946BC */ rbrew_write32(cpu->mem, _t26, cpu->r[9]);
|
|
/* 023946C0 */ _t27 = cpu->r[21] + 0x00000004u;
|
|
/* 023946C0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t27);
|
|
/* 023946C4 */ cpu->r[4] = cpu->r[11];
|
|
/* 023946C8 */ cpu->r[8] = 0x000000FFu;
|
|
/* 023946CC */ _t28 = cpu->r[1] + 0x00000008u;
|
|
/* 023946CC */ rbrew_write32(cpu->mem, _t28, cpu->r[21]);
|
|
/* 023946D0 */ Gambit_fn_0204A4DC(cpu);
|
|
/* 023946D4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[3], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 023946D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 023946D8 */ _t29 = cpu->r[21] + 0x00000000u;
|
|
/* 023946D8 */ rbrew_write32(cpu->mem, _t29, cpu->r[3]);
|
|
/* 023946DC */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023946DC */ _t31 = _t30 & 0x00000001u;
|
|
/* 023946DC */ if (_t31) goto L_023949C0; else goto L_023946E0;
|
|
L_023946E0: ; // 0x23946e0
|
|
/* 023946E0 */ _t32 = cpu->r[21] + 0x00000004u;
|
|
/* 023946E0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t32);
|
|
/* 023946E4 */ cpu->r[0] = 0x101E0000u;
|
|
/* 023946E8 */ _t33 = cpu->r[9] + 0x00000164u;
|
|
/* 023946E8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t33);
|
|
/* 023946EC */ cpu->r[0] = cpu->r[0] + 0xFFFF9484u;
|
|
/* 023946F0 */ cpu->r[11] = rbrew_rlwinm(cpu->r[12], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 023946F4 */ _t34 = cpu->r[11] + cpu->r[0];
|
|
/* 023946F4 */ cpu->r[19] = rbrew_read32(cpu->mem, _t34);
|
|
/* 023946F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[19], 0x00000000u);
|
|
/* 023946FC */ cpu->r[20] = 0x00000000u;
|
|
/* 02394700 */ _t35 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02394700 */ _t36 = _t35 & 0x00000001u;
|
|
/* 02394700 */ if (_t36) goto L_02394704; else goto L_023949C0;
|
|
L_02394704: ; // 0x2394704
|
|
/* 02394704 */ cpu->r[27] = 0x000000FEu;
|
|
/* 02394708 */ cpu->r[26] = 0x00000003u;
|
|
/* 0239470C */ cpu->r[25] = 0x00000000u;
|
|
/* 02394710 */ cpu->r[24] = cpu->r[1] + 0x0000006Cu;
|
|
/* 02394714 */ cpu->r[31] = 0x101C0000u;
|
|
/* 02394718 */ cpu->r[30] = 0x101C0000u;
|
|
L_0239471C: ; // 0x239471c
|
|
/* 0239471C */ _t37 = cpu->r[1] + 0x00000014u;
|
|
/* 0239471C */ rbrew_write8(cpu->mem, _t37, (uint8_t)cpu->r[27]);
|
|
/* 02394720 */ cpu->r[7] = cpu->r[1] + 0x0000010Cu;
|
|
/* 02394724 */ cpu->r[8] = cpu->r[1] + 0x00000050u;
|
|
/* 02394728 */ _t38 = cpu->r[1] + 0x00000050u;
|
|
/* 02394728 */ rbrew_write32(cpu->mem, _t38, cpu->r[25]);
|
|
/* 0239472C */ cpu->r[10] = 0x00000000u;
|
|
/* 02394730 */ _t39 = cpu->r[21] + 0x00000004u;
|
|
/* 02394730 */ cpu->r[3] = rbrew_read32(cpu->mem, _t39);
|
|
/* 02394734 */ cpu->r[9] = cpu->r[1] + 0x0000004Cu;
|
|
/* 02394738 */ cpu->r[6] = cpu->r[1] + 0x00000100u;
|
|
/* 0239473C */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 02394740 */ cpu->r[4] = cpu->r[20];
|
|
/* 02394744 */ Gambit_fn_02040F70(cpu);
|
|
/* 02394748 */ cpu->r[11] = 0x00000003u;
|
|
/* 0239474C */ _t40 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0239474C */ cpu->r[12] = rbrew_read32(cpu->mem, _t40);
|
|
/* 02394750 */ cpu->ctr = cpu->r[11];
|
|
/* 02394754 */ cpu->r[9] = cpu->r[1] + 0x000000A8u;
|
|
L_02394758: ; // 0x2394758
|
|
/* 02394758 */ _t41 = cpu->r[12] + 0x00000004u;
|
|
/* 02394758 */ cpu->r[0] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0239475C */ _t42 = cpu->r[9] + 0x00000004u;
|
|
/* 0239475C */ rbrew_write32(cpu->mem, _t42, cpu->r[0]);
|
|
/* 02394760 */ _t43 = cpu->r[12] + 0x00000008u;
|
|
/* 02394760 */ cpu->r[4] = rbrew_read32(cpu->mem, _t43);
|
|
/* 02394764 */ _t44 = cpu->r[9] + 0x00000008u;
|
|
/* 02394764 */ rbrew_write32(cpu->mem, _t44, cpu->r[4]);
|
|
/* 02394768 */ _t45 = cpu->r[12] + 0x0000000Cu;
|
|
/* 02394768 */ cpu->r[5] = rbrew_read32(cpu->mem, _t45);
|
|
/* 0239476C */ _t46 = cpu->r[9] + 0x0000000Cu;
|
|
/* 0239476C */ rbrew_write32(cpu->mem, _t46, cpu->r[5]);
|
|
/* 02394770 */ _t47 = cpu->r[12] + 0x00000010u;
|
|
/* 02394770 */ cpu->r[6] = rbrew_read32(cpu->mem, _t47);
|
|
/* 02394770 */ cpu->r[12] = _t47;
|
|
/* 02394774 */ _t48 = cpu->r[9] + 0x00000010u;
|
|
/* 02394774 */ rbrew_write32(cpu->mem, _t48, cpu->r[6]);
|
|
/* 02394774 */ cpu->r[9] = _t48;
|
|
/* 02394778 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02394778 */ _t49 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02394778 */ _t50 = _t49 >> (0x00000002u & 31u);
|
|
/* 02394778 */ _t51 = _t50 & 0x00000001u;
|
|
/* 02394778 */ if (_t51) goto L_02394758; else goto L_0239477C;
|
|
L_0239477C: ; // 0x239477c
|
|
/* 0239477C */ /* nop */
|
|
/* 02394780 */ /* nop */
|
|
/* 02394784 */ /* nop */
|
|
/* 02394788 */ /* nop */
|
|
/* 0239478C */ _t52 = cpu->r[1] + 0x000000D8u;
|
|
/* 0239478C */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 02394790 */ /* nop */
|
|
/* 02394794 */ /* nop */
|
|
/* 02394798 */ /* nop */
|
|
/* 0239479C */ _t53 = cpu->r[29] + 0x00000010u;
|
|
/* 0239479C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t53);
|
|
/* 023947A0 */ /* nop */
|
|
/* 023947A4 */ cpu->f[4] = cpu->f[0] - cpu->f[7];
|
|
/* 023947A8 */ /* nop */
|
|
/* 023947AC */ /* nop */
|
|
/* 023947B0 */ /* nop */
|
|
/* 023947B4 */ _t54 = cpu->r[1] + 0x000000E4u;
|
|
/* 023947B4 */ rbrew_write_f32(cpu->mem, _t54, cpu->f[4]);
|
|
/* 023947B8 */ cpu->f[11] = cpu->f[10];
|
|
/* 023947BC */ cpu->f[9] = cpu->f[12];
|
|
/* 023947C0 */ _t55 = cpu->r[1] + 0x000000B4u;
|
|
/* 023947C0 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t55);
|
|
/* 023947C4 */ /* nop */
|
|
/* 023947C8 */ _t56 = cpu->r[1] + 0x000000C0u;
|
|
/* 023947C8 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 023947CC */ cpu->f[12] = cpu->f[8];
|
|
/* 023947D0 */ /* nop */
|
|
/* 023947D4 */ cpu->f[8] = fma(cpu->f[4], cpu->f[6], cpu->f[11]);
|
|
/* 023947D8 */ _t57 = cpu->r[1] + 0x00000014u;
|
|
/* 023947D8 */ cpu->r[28] = rbrew_read8(cpu->mem, _t57);
|
|
/* 023947DC */ cpu->f[11] = fma(cpu->f[4], cpu->f[10], cpu->f[9]);
|
|
/* 023947E0 */ _t58 = cpu->r[29] + 0x00000034u;
|
|
/* 023947E0 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 023947E4 */ /* nop */
|
|
/* 023947E8 */ _t59 = cpu->r[30] + 0x000060F4u;
|
|
/* 023947E8 */ cpu->r[23] = rbrew_read32(cpu->mem, _t59);
|
|
/* 023947EC */ /* nop */
|
|
/* 023947F0 */ _t60 = cpu->r[1] + 0x00000030u;
|
|
/* 023947F0 */ rbrew_write_f32(cpu->mem, _t60, cpu->f[8]);
|
|
/* 023947F4 */ /* nop */
|
|
/* 023947F8 */ _t61 = cpu->r[1] + 0x00000034u;
|
|
/* 023947F8 */ rbrew_write_f32(cpu->mem, _t61, cpu->f[11]);
|
|
/* 023947FC */ /* nop */
|
|
/* 02394800 */ _t62 = cpu->r[1] + 0x00000030u;
|
|
/* 02394800 */ cpu->r[6] = rbrew_read32(cpu->mem, _t62);
|
|
/* 02394804 */ cpu->f[13] = fma(cpu->f[9], cpu->f[6], cpu->f[0]);
|
|
/* 02394808 */ _t63 = cpu->r[1] + 0x000000CCu;
|
|
/* 02394808 */ cpu->f[3] = rbrew_read_f32(cpu->mem, _t63);
|
|
/* 0239480C */ _t64 = cpu->r[1] + 0x00000034u;
|
|
/* 0239480C */ cpu->r[7] = rbrew_read32(cpu->mem, _t64);
|
|
/* 02394810 */ cpu->f[4] = fma(cpu->f[4], cpu->f[3], cpu->f[12]);
|
|
/* 02394814 */ _t65 = cpu->r[1] + 0x00000054u;
|
|
/* 02394814 */ rbrew_write32(cpu->mem, _t65, cpu->r[6]);
|
|
/* 02394818 */ _t66 = cpu->r[1] + 0x00000024u;
|
|
/* 02394818 */ rbrew_write_f32(cpu->mem, _t66, cpu->f[13]);
|
|
/* 0239481C */ _t67 = cpu->r[1] + 0x00000038u;
|
|
/* 0239481C */ rbrew_write_f32(cpu->mem, _t67, cpu->f[4]);
|
|
/* 02394820 */ _t68 = cpu->r[1] + 0x00000038u;
|
|
/* 02394820 */ cpu->r[8] = rbrew_read32(cpu->mem, _t68);
|
|
/* 02394824 */ /* nop */
|
|
/* 02394828 */ _t69 = cpu->r[1] + 0x00000058u;
|
|
/* 02394828 */ rbrew_write32(cpu->mem, _t69, cpu->r[7]);
|
|
/* 0239482C */ /* nop */
|
|
/* 02394830 */ _t70 = cpu->r[1] + 0x00000024u;
|
|
/* 02394830 */ cpu->r[7] = rbrew_read32(cpu->mem, _t70);
|
|
/* 02394834 */ cpu->f[6] = fma(cpu->f[9], cpu->f[10], cpu->f[7]);
|
|
/* 02394838 */ _t71 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02394838 */ rbrew_write32(cpu->mem, _t71, cpu->r[8]);
|
|
/* 0239483C */ _t72 = cpu->r[1] + 0x00000060u;
|
|
/* 0239483C */ rbrew_write32(cpu->mem, _t72, cpu->r[7]);
|
|
/* 02394840 */ cpu->f[8] = fma(cpu->f[9], cpu->f[3], cpu->f[11]);
|
|
/* 02394844 */ _t73 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02394844 */ rbrew_write32(cpu->mem, _t73, cpu->r[26]);
|
|
/* 02394848 */ _t74 = cpu->r[1] + 0x00000028u;
|
|
/* 02394848 */ rbrew_write_f32(cpu->mem, _t74, cpu->f[6]);
|
|
/* 0239484C */ _t75 = cpu->r[1] + 0x00000028u;
|
|
/* 0239484C */ cpu->r[8] = rbrew_read32(cpu->mem, _t75);
|
|
/* 02394850 */ _t76 = cpu->r[24] + 0x00000000u;
|
|
/* 02394850 */ cpu->r[12] = rbrew_read32(cpu->mem, _t76);
|
|
/* 02394854 */ _t77 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02394854 */ rbrew_write_f32(cpu->mem, _t77, cpu->f[8]);
|
|
/* 02394858 */ _t78 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02394858 */ cpu->r[10] = rbrew_read32(cpu->mem, _t78);
|
|
/* 0239485C */ _t79 = cpu->r[1] + 0x00000048u;
|
|
/* 0239485C */ rbrew_write32(cpu->mem, _t79, cpu->r[12]);
|
|
/* 02394860 */ cpu->r[3] = cpu->r[23];
|
|
/* 02394864 */ _t80 = cpu->r[1] + 0x00000064u;
|
|
/* 02394864 */ rbrew_write32(cpu->mem, _t80, cpu->r[8]);
|
|
/* 02394868 */ cpu->r[4] = cpu->r[28];
|
|
/* 0239486C */ _t81 = cpu->r[1] + 0x00000068u;
|
|
/* 0239486C */ rbrew_write32(cpu->mem, _t81, cpu->r[10]);
|
|
/* 02394870 */ Gambit_fn_023F600C(cpu);
|
|
/* 02394874 */ cpu->r[3] = cpu->r[23];
|
|
/* 02394878 */ cpu->r[4] = cpu->r[28];
|
|
/* 0239487C */ cpu->r[5] = cpu->r[1] + 0x00000054u;
|
|
/* 02394880 */ cpu->r[6] = cpu->r[1] + 0x00000060u;
|
|
/* 02394884 */ cpu->r[7] = cpu->r[1] + 0x00000048u;
|
|
/* 02394888 */ Gambit_fn_023F4B7C(cpu);
|
|
/* 0239488C */ cpu->r[28] = cpu->r[3];
|
|
/* 02394890 */ cpu->r[17] = 0x00000000u;
|
|
/* 02394894 */ cpu->r[18] = 0x00000006u;
|
|
/* 02394898 */ cpu->r[22] = 0xFFFFFFFFu;
|
|
/* 0239489C */ cpu->r[23] = 0x00000001u;
|
|
L_023948A0: ; // 0x23948a0
|
|
/* 023948A0 */ /* nop */
|
|
/* 023948A4 */ cpu->r[8] = cpu->r[28] & cpu->r[7];
|
|
/* 023948A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 023948A8 */ _t82 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023948A8 */ _t83 = _t82 & 0x00000001u;
|
|
/* 023948A8 */ if (_t83) goto L_023949A8; else goto L_023948AC;
|
|
L_023948AC: ; // 0x23948ac
|
|
/* 023948AC */ _t84 = cpu->r[29] + 0x00000004u;
|
|
/* 023948AC */ cpu->r[4] = rbrew_read32(cpu->mem, _t84);
|
|
/* 023948B0 */ cpu->r[3] = cpu->r[1] + 0x00000018u;
|
|
/* 023948B4 */ Gambit_fn_027E3E54(cpu);
|
|
/* 023948B8 */ _t85 = cpu->r[1] + 0x00000058u;
|
|
/* 023948B8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t85);
|
|
/* 023948BC */ _t86 = cpu->r[29] + 0x00000014u;
|
|
/* 023948BC */ cpu->r[5] = rbrew_read32(cpu->mem, _t86);
|
|
/* 023948C0 */ _t87 = cpu->r[1] + 0x00000040u;
|
|
/* 023948C0 */ rbrew_write32(cpu->mem, _t87, cpu->r[6]);
|
|
/* 023948C4 */ _t88 = cpu->r[1] + 0x0000001Cu;
|
|
/* 023948C4 */ rbrew_write32(cpu->mem, _t88, cpu->r[5]);
|
|
/* 023948C8 */ _t89 = cpu->r[29] + 0x00000004u;
|
|
/* 023948C8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t89);
|
|
/* 023948CC */ _t90 = cpu->r[29] + 0x00000028u;
|
|
/* 023948CC */ cpu->r[5] = rbrew_read32(cpu->mem, _t90);
|
|
/* 023948D0 */ _t91 = cpu->r[1] + 0x00000054u;
|
|
/* 023948D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t91);
|
|
/* 023948D4 */ _t92 = cpu->r[29] + 0x00000018u;
|
|
/* 023948D4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t92);
|
|
/* 023948D8 */ _t93 = cpu->r[1] + 0x0000003Cu;
|
|
/* 023948D8 */ rbrew_write32(cpu->mem, _t93, cpu->r[0]);
|
|
/* 023948DC */ _t94 = cpu->r[1] + 0x00000014u;
|
|
/* 023948DC */ cpu->r[0] = rbrew_read8(cpu->mem, _t94);
|
|
/* 023948E0 */ _t95 = cpu->r[29] + 0x0000001Cu;
|
|
/* 023948E0 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t95);
|
|
/* 023948E4 */ cpu->r[9] = cpu->r[17];
|
|
/* 023948E8 */ _t96 = cpu->r[1] + 0x00000008u;
|
|
/* 023948E8 */ rbrew_write32(cpu->mem, _t96, cpu->r[0]);
|
|
/* 023948EC */ _t97 = cpu->r[1] + 0x0000005Cu;
|
|
/* 023948EC */ cpu->r[8] = rbrew_read32(cpu->mem, _t97);
|
|
/* 023948F0 */ cpu->r[3] = cpu->r[1] + 0x00000070u;
|
|
/* 023948F4 */ _t98 = cpu->r[29] + 0x00000020u;
|
|
/* 023948F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t98);
|
|
/* 023948F8 */ cpu->r[11] = cpu->r[1] + 0x0000003Cu;
|
|
/* 023948FC */ _t99 = cpu->r[1] + 0x00000020u;
|
|
/* 023948FC */ rbrew_write32(cpu->mem, _t99, cpu->r[6]);
|
|
/* 02394900 */ cpu->r[7] = cpu->r[1] + 0x0000001Cu;
|
|
/* 02394904 */ _t100 = cpu->r[1] + 0x00000044u;
|
|
/* 02394904 */ rbrew_write32(cpu->mem, _t100, cpu->r[8]);
|
|
/* 02394908 */ cpu->r[6] = cpu->r[11];
|
|
/* 0239490C */ cpu->r[10] = cpu->r[1] + 0x00000060u;
|
|
/* 02394910 */ _t101 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02394910 */ rbrew_write32(cpu->mem, _t101, cpu->r[0]);
|
|
/* 02394914 */ cpu->r[8] = cpu->r[1] + 0x00000018u;
|
|
/* 02394918 */ _t102 = cpu->r[1] + 0x00000010u;
|
|
/* 02394918 */ rbrew_write32(cpu->mem, _t102, cpu->r[22]);
|
|
/* 0239491C */ Gambit_fn_023F6488(cpu);
|
|
/* 02394920 */ _t103 = cpu->r[29] + 0x00000024u;
|
|
/* 02394920 */ cpu->r[5] = rbrew_read32(cpu->mem, _t103);
|
|
/* 02394924 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], 0x00000001u);
|
|
/* 02394928 */ _t104 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02394928 */ _t105 = _t104 & 0x00000001u;
|
|
/* 02394928 */ if (_t105) goto L_0239493C; else goto L_0239492C;
|
|
L_0239492C: ; // 0x239492c
|
|
/* 0239492C */ _t106 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239492C */ _t107 = _t106 & 0x00000001u;
|
|
/* 0239492C */ if (_t107) goto L_0239498C; else goto L_02394930;
|
|
L_02394930: ; // 0x2394930
|
|
/* 02394930 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], 0x00000002u);
|
|
/* 02394934 */ _t108 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02394934 */ _t109 = _t108 & 0x00000001u;
|
|
/* 02394934 */ if (_t109) goto L_0239499C; else goto L_02394938;
|
|
L_02394938: ; // 0x2394938
|
|
/* 02394938 */ goto L_023949A8;
|
|
L_0239493C: ; // 0x239493c
|
|
/* 0239493C */ _t110 = cpu->r[31] + 0x00005BA0u;
|
|
/* 0239493C */ cpu->r[10] = rbrew_read32(cpu->mem, _t110);
|
|
/* 02394940 */ _t111 = cpu->r[29] + 0x00000004u;
|
|
/* 02394940 */ cpu->r[4] = rbrew_read32(cpu->mem, _t111);
|
|
/* 02394944 */ _t112 = cpu->r[10] + 0x00000078u;
|
|
/* 02394944 */ cpu->r[8] = rbrew_read32(cpu->mem, _t112);
|
|
/* 02394948 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[8]);
|
|
/* 0239494C */ cpu->r[3] = 0x00000000u;
|
|
/* 02394950 */ _t113 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02394950 */ _t114 = _t113 & 0x00000001u;
|
|
/* 02394950 */ if (_t114) goto L_02394954; else goto L_02394960;
|
|
L_02394954: ; // 0x2394954
|
|
/* 02394954 */ _t115 = cpu->r[10] + 0x00000080u;
|
|
/* 02394954 */ cpu->r[0] = rbrew_read32(cpu->mem, _t115);
|
|
/* 02394958 */ cpu->r[10] = rbrew_rlwinm(cpu->r[4], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239495C */ _t116 = cpu->r[10] + cpu->r[0];
|
|
/* 0239495C */ cpu->r[3] = rbrew_read32(cpu->mem, _t116);
|
|
L_02394960: ; // 0x2394960
|
|
/* 02394960 */ cpu->r[5] = 0x00000000u;
|
|
/* 02394964 */ cpu->r[4] = cpu->r[1] + 0x00000070u;
|
|
/* 02394968 */ Gambit_fn_025E0DF0(cpu);
|
|
/* 0239496C */ _t117 = cpu->r[31] + 0x00005BA0u;
|
|
/* 0239496C */ cpu->r[11] = rbrew_read32(cpu->mem, _t117);
|
|
/* 02394970 */ _t118 = cpu->r[11] + 0x00000044u;
|
|
/* 02394970 */ cpu->r[5] = rbrew_read8(cpu->mem, _t118);
|
|
/* 02394974 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 02394978 */ _t119 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02394978 */ _t120 = _t119 & 0x00000001u;
|
|
/* 02394978 */ if (_t120) goto L_023949A8; else goto L_0239497C;
|
|
L_0239497C: ; // 0x239497c
|
|
/* 0239497C */ _t121 = cpu->r[30] + 0x000060F4u;
|
|
/* 0239497C */ cpu->r[3] = rbrew_read32(cpu->mem, _t121);
|
|
/* 02394980 */ cpu->r[4] = cpu->r[1] + 0x00000070u;
|
|
/* 02394984 */ Gambit_fn_023EED38(cpu);
|
|
/* 02394988 */ goto L_023949A8;
|
|
L_0239498C: ; // 0x239498c
|
|
/* 0239498C */ _t122 = cpu->r[30] + 0x000060F4u;
|
|
/* 0239498C */ cpu->r[3] = rbrew_read32(cpu->mem, _t122);
|
|
/* 02394990 */ cpu->r[4] = cpu->r[1] + 0x00000070u;
|
|
/* 02394994 */ Gambit_fn_023EF3B4(cpu);
|
|
/* 02394998 */ goto L_023949A8;
|
|
L_0239499C: ; // 0x239499c
|
|
/* 0239499C */ _t123 = cpu->r[30] + 0x000060F4u;
|
|
/* 0239499C */ cpu->r[3] = rbrew_read32(cpu->mem, _t123);
|
|
/* 023949A0 */ cpu->r[4] = cpu->r[1] + 0x00000070u;
|
|
/* 023949A4 */ Gambit_fn_023EEED0(cpu);
|
|
L_023949A8: ; // 0x23949a8
|
|
/* 023949A8 */ cpu->r[18] = cpu->r[18] + 0xFFFFFFFFu;
|
|
/* 023949A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[18], 0x00000000u);
|
|
/* 023949AC */ cpu->r[17] = cpu->r[17] + 0x00000001u;
|
|
/* 023949B0 */ _t124 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023949B0 */ _t125 = _t124 & 0x00000001u;
|
|
/* 023949B0 */ if (_t125) goto L_023949B4; else goto L_023948A0;
|
|
L_023949B4: ; // 0x23949b4
|
|
/* 023949B4 */ cpu->r[19] = cpu->r[19] + 0xFFFFFFFFu;
|
|
/* 023949B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[19], 0x00000000u);
|
|
/* 023949B8 */ cpu->r[20] = cpu->r[20] + 0x00000001u;
|
|
/* 023949BC */ _t126 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023949BC */ _t127 = _t126 & 0x00000001u;
|
|
/* 023949BC */ if (_t127) goto L_023949C0; else goto L_0239471C;
|
|
L_023949C0: ; // 0x23949c0
|
|
/* 023949C0 */ /* nop */
|
|
/* 023949C4 */ _t128 = cpu->r[1] + 0x00000174u;
|
|
/* 023949C4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t128);
|
|
/* 023949C8 */ cpu->lr = cpu->r[0];
|
|
/* 023949CC */ cpu->r[1] = cpu->r[1] + 0x00000170u;
|
|
/* 023949D0 */ return;
|
|
}
|
|
|
|
// fn_023949D4 @ 0x23949d4
|
|
void Gambit_fn_023949D4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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;
|
|
|
|
L_023949D4: ; // 0x23949d4
|
|
/* 023949D4 */ _t0 = cpu->r[1] + 0xFFFFFF40u;
|
|
/* 023949D4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 023949D4 */ cpu->r[1] = _t0;
|
|
/* 023949D8 */ /* nop */
|
|
/* 023949DC */ cpu->r[11] = 0x10080000u;
|
|
/* 023949E0 */ cpu->r[0] = cpu->lr;
|
|
/* 023949E4 */ _t1 = cpu->r[1] + 0x000000C4u;
|
|
/* 023949E4 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 023949E8 */ cpu->r[11] = cpu->r[11] + 0x0000665Cu;
|
|
/* 023949EC */ cpu->r[25] = 0x10080000u;
|
|
/* 023949F0 */ _t2 = cpu->r[1] + 0x00000018u;
|
|
/* 023949F0 */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 023949F4 */ cpu->r[28] = cpu->r[3];
|
|
/* 023949F8 */ cpu->r[25] = cpu->r[25] + 0x00006598u;
|
|
/* 023949FC */ _t3 = cpu->r[28] + 0x00000034u;
|
|
/* 023949FC */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02394A00 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02394A00 */ rbrew_write32(cpu->mem, _t4, cpu->r[25]);
|
|
/* 02394A04 */ _t5 = cpu->r[12] + 0x00000014u;
|
|
/* 02394A04 */ cpu->r[4] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02394A08 */ cpu->ctr = cpu->r[4];
|
|
/* 02394A0C */ cpu->r[0] = 0x00000000u;
|
|
/* 02394A10 */ cpu->r[3] = cpu->r[28] + 0x00000030u;
|
|
/* 02394A14 */ cpu->r[26] = 0x00000001u;
|
|
/* 02394A18 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02394A1C */ _t6 = cpu->r[28] + 0x00000034u;
|
|
/* 02394A1C */ cpu->r[5] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02394A20 */ _t7 = cpu->r[5] + 0x00000014u;
|
|
/* 02394A20 */ cpu->r[6] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02394A24 */ cpu->ctr = cpu->r[6];
|
|
/* 02394A28 */ cpu->r[3] = cpu->r[28] + 0x00000030u;
|
|
/* 02394A2C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02394A30 */ _t8 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02394A30 */ cpu->r[7] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02394A34 */ _t9 = cpu->r[7] + 0x00000014u;
|
|
/* 02394A34 */ cpu->r[8] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02394A38 */ cpu->ctr = cpu->r[8];
|
|
/* 02394A3C */ _t10 = cpu->r[28] + 0x00000030u;
|
|
/* 02394A3C */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02394A40 */ cpu->r[3] = cpu->r[1] + 0x00000018u;
|
|
/* 02394A44 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02394A48 */ _t11 = cpu->r[1] + 0x00000018u;
|
|
/* 02394A48 */ cpu->r[9] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02394A4C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[9]);
|
|
/* 02394A50 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02394A50 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02394A50 */ if (_t13) goto L_02395428; else goto L_02394A54;
|
|
L_02394A54: ; // 0x2394a54
|
|
/* 02394A54 */ cpu->r[27] = 0x00080000u;
|
|
/* 02394A58 */ _t14 = cpu->r[1] + 0x00000018u;
|
|
/* 02394A58 */ cpu->r[4] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02394A5C */ cpu->r[31] = 0x10110000u;
|
|
/* 02394A60 */ cpu->r[27] = cpu->r[27] + 0x00000001u;
|
|
/* 02394A64 */ _t15 = cpu->r[28] + 0x00000030u;
|
|
/* 02394A64 */ cpu->r[5] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02394A68 */ cpu->r[4] = cpu->r[4] + 0xFFFFFFFFu;
|
|
/* 02394A6C */ cpu->ctr = cpu->r[27];
|
|
/* 02394A70 */ _t16 = cpu->r[31] + 0x00007399u;
|
|
/* 02394A70 */ cpu->r[31] = rbrew_read8(cpu->mem, _t16);
|
|
/* 02394A74 */ cpu->r[5] = cpu->r[5] + 0xFFFFFFFFu;
|
|
L_02394A78: ; // 0x2394a78
|
|
/* 02394A78 */ _t17 = cpu->r[5] + 0x00000001u;
|
|
/* 02394A78 */ cpu->r[6] = rbrew_read8(cpu->mem, _t17);
|
|
/* 02394A78 */ cpu->r[5] = _t17;
|
|
/* 02394A7C */ _t18 = cpu->r[4] + 0x00000001u;
|
|
/* 02394A7C */ cpu->r[0] = rbrew_read8(cpu->mem, _t18);
|
|
/* 02394A7C */ cpu->r[4] = _t18;
|
|
/* 02394A80 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[0]);
|
|
/* 02394A84 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02394A84 */ _t20 = _t19 & 0x00000001u;
|
|
/* 02394A84 */ if (_t20) goto L_02394A88; else goto L_02394A94;
|
|
L_02394A88: ; // 0x2394a88
|
|
/* 02394A88 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[31]);
|
|
/* 02394A8C */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02394A8C */ _t22 = _t21 & 0x00000001u;
|
|
/* 02394A8C */ if (_t22) goto L_02395428; else goto L_02394A90;
|
|
L_02394A90: ; // 0x2394a90
|
|
/* 02394A90 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02394A90 */ _t23 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02394A90 */ _t24 = _t23 >> (0x00000002u & 31u);
|
|
/* 02394A90 */ _t25 = _t24 & 0x00000001u;
|
|
/* 02394A90 */ if (_t25) goto L_02394A78; else goto L_02394A94;
|
|
L_02394A94: ; // 0x2394a94
|
|
/* 02394A94 */ cpu->r[0] = 0x10080000u;
|
|
/* 02394A98 */ _t26 = cpu->r[1] + 0x00000024u;
|
|
/* 02394A98 */ rbrew_write32(cpu->mem, _t26, cpu->r[25]);
|
|
/* 02394A9C */ cpu->r[0] = cpu->r[0] + 0x00006644u;
|
|
/* 02394AA0 */ _t27 = cpu->r[28] + 0x00000034u;
|
|
/* 02394AA0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02394AA4 */ _t28 = cpu->r[1] + 0x00000020u;
|
|
/* 02394AA4 */ rbrew_write32(cpu->mem, _t28, cpu->r[0]);
|
|
/* 02394AA8 */ _t29 = cpu->r[12] + 0x00000014u;
|
|
/* 02394AA8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02394AAC */ cpu->ctr = cpu->r[4];
|
|
/* 02394AB0 */ cpu->r[0] = 0x00000001u;
|
|
/* 02394AB4 */ cpu->r[3] = cpu->r[28] + 0x00000030u;
|
|
/* 02394AB8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02394ABC */ _t30 = cpu->r[28] + 0x00000034u;
|
|
/* 02394ABC */ cpu->r[5] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02394AC0 */ _t31 = cpu->r[5] + 0x00000014u;
|
|
/* 02394AC0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t31);
|
|
/* 02394AC4 */ cpu->ctr = cpu->r[6];
|
|
/* 02394AC8 */ cpu->r[3] = cpu->r[28] + 0x00000030u;
|
|
/* 02394ACC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02394AD0 */ _t32 = cpu->r[1] + 0x00000024u;
|
|
/* 02394AD0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02394AD4 */ _t33 = cpu->r[7] + 0x00000014u;
|
|
/* 02394AD4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02394AD8 */ cpu->ctr = cpu->r[8];
|
|
/* 02394ADC */ _t34 = cpu->r[28] + 0x00000030u;
|
|
/* 02394ADC */ cpu->r[30] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02394AE0 */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 02394AE4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02394AE8 */ _t35 = cpu->r[1] + 0x00000020u;
|
|
/* 02394AE8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02394AEC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[10]);
|
|
/* 02394AF0 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02394AF0 */ _t37 = _t36 & 0x00000001u;
|
|
/* 02394AF0 */ if (_t37) goto L_02395428; else goto L_02394AF4;
|
|
L_02394AF4: ; // 0x2394af4
|
|
/* 02394AF4 */ _t38 = cpu->r[28] + 0x00000030u;
|
|
/* 02394AF4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02394AF8 */ cpu->r[11] = cpu->r[10] + 0xFFFFFFFFu;
|
|
/* 02394AFC */ cpu->ctr = cpu->r[27];
|
|
/* 02394B00 */ cpu->r[12] = cpu->r[12] + 0xFFFFFFFFu;
|
|
L_02394B04: ; // 0x2394b04
|
|
/* 02394B04 */ _t39 = cpu->r[12] + 0x00000001u;
|
|
/* 02394B04 */ cpu->r[7] = rbrew_read8(cpu->mem, _t39);
|
|
/* 02394B04 */ cpu->r[12] = _t39;
|
|
/* 02394B08 */ _t40 = cpu->r[11] + 0x00000001u;
|
|
/* 02394B08 */ cpu->r[0] = rbrew_read8(cpu->mem, _t40);
|
|
/* 02394B08 */ cpu->r[11] = _t40;
|
|
/* 02394B0C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[0]);
|
|
/* 02394B10 */ _t41 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02394B10 */ _t42 = _t41 & 0x00000001u;
|
|
/* 02394B10 */ if (_t42) goto L_02394B14; else goto L_02394B20;
|
|
L_02394B14: ; // 0x2394b14
|
|
/* 02394B14 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[31]);
|
|
/* 02394B18 */ _t43 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02394B18 */ _t44 = _t43 & 0x00000001u;
|
|
/* 02394B18 */ if (_t44) goto L_02395428; else goto L_02394B1C;
|
|
L_02394B1C: ; // 0x2394b1c
|
|
/* 02394B1C */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02394B1C */ _t45 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02394B1C */ _t46 = _t45 >> (0x00000002u & 31u);
|
|
/* 02394B1C */ _t47 = _t46 & 0x00000001u;
|
|
/* 02394B1C */ if (_t47) goto L_02394B04; else goto L_02394B20;
|
|
L_02394B20: ; // 0x2394b20
|
|
/* 02394B20 */ cpu->r[0] = 0x10080000u;
|
|
/* 02394B24 */ _t48 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02394B24 */ rbrew_write32(cpu->mem, _t48, cpu->r[25]);
|
|
/* 02394B28 */ cpu->r[0] = cpu->r[0] + 0x0000668Cu;
|
|
/* 02394B2C */ _t49 = cpu->r[28] + 0x00000034u;
|
|
/* 02394B2C */ cpu->r[11] = rbrew_read32(cpu->mem, _t49);
|
|
/* 02394B30 */ _t50 = cpu->r[1] + 0x00000028u;
|
|
/* 02394B30 */ rbrew_write32(cpu->mem, _t50, cpu->r[0]);
|
|
/* 02394B34 */ _t51 = cpu->r[11] + 0x00000014u;
|
|
/* 02394B34 */ cpu->r[12] = rbrew_read32(cpu->mem, _t51);
|
|
/* 02394B38 */ cpu->ctr = cpu->r[12];
|
|
/* 02394B3C */ cpu->r[0] = 0x00000001u;
|
|
/* 02394B40 */ cpu->r[3] = cpu->r[28] + 0x00000030u;
|
|
/* 02394B44 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02394B48 */ _t52 = cpu->r[28] + 0x00000034u;
|
|
/* 02394B48 */ cpu->r[4] = rbrew_read32(cpu->mem, _t52);
|
|
/* 02394B4C */ _t53 = cpu->r[4] + 0x00000014u;
|
|
/* 02394B4C */ cpu->r[5] = rbrew_read32(cpu->mem, _t53);
|
|
/* 02394B50 */ cpu->ctr = cpu->r[5];
|
|
/* 02394B54 */ cpu->r[3] = cpu->r[28] + 0x00000030u;
|
|
/* 02394B58 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02394B5C */ _t54 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02394B5C */ cpu->r[6] = rbrew_read32(cpu->mem, _t54);
|
|
/* 02394B60 */ _t55 = cpu->r[6] + 0x00000014u;
|
|
/* 02394B60 */ cpu->r[7] = rbrew_read32(cpu->mem, _t55);
|
|
/* 02394B64 */ cpu->ctr = cpu->r[7];
|
|
/* 02394B68 */ _t56 = cpu->r[28] + 0x00000030u;
|
|
/* 02394B68 */ cpu->r[30] = rbrew_read32(cpu->mem, _t56);
|
|
/* 02394B6C */ cpu->r[3] = cpu->r[1] + 0x00000028u;
|
|
/* 02394B70 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02394B74 */ _t57 = cpu->r[1] + 0x00000028u;
|
|
/* 02394B74 */ cpu->r[11] = rbrew_read32(cpu->mem, _t57);
|
|
/* 02394B78 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[11]);
|
|
/* 02394B7C */ _t58 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02394B7C */ _t59 = _t58 & 0x00000001u;
|
|
/* 02394B7C */ if (_t59) goto L_02395428; else goto L_02394B80;
|
|
L_02394B80: ; // 0x2394b80
|
|
/* 02394B80 */ _t60 = cpu->r[28] + 0x00000030u;
|
|
/* 02394B80 */ cpu->r[10] = rbrew_read32(cpu->mem, _t60);
|
|
/* 02394B84 */ cpu->r[9] = cpu->r[11] + 0xFFFFFFFFu;
|
|
/* 02394B88 */ cpu->ctr = cpu->r[27];
|
|
/* 02394B8C */ cpu->r[10] = cpu->r[10] + 0xFFFFFFFFu;
|
|
L_02394B90: ; // 0x2394b90
|
|
/* 02394B90 */ _t61 = cpu->r[10] + 0x00000001u;
|
|
/* 02394B90 */ cpu->r[8] = rbrew_read8(cpu->mem, _t61);
|
|
/* 02394B90 */ cpu->r[10] = _t61;
|
|
/* 02394B94 */ _t62 = cpu->r[9] + 0x00000001u;
|
|
/* 02394B94 */ cpu->r[0] = rbrew_read8(cpu->mem, _t62);
|
|
/* 02394B94 */ cpu->r[9] = _t62;
|
|
/* 02394B98 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[0]);
|
|
/* 02394B9C */ _t63 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02394B9C */ _t64 = _t63 & 0x00000001u;
|
|
/* 02394B9C */ if (_t64) goto L_02394BA0; else goto L_02394BAC;
|
|
L_02394BA0: ; // 0x2394ba0
|
|
/* 02394BA0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[31]);
|
|
/* 02394BA4 */ _t65 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02394BA4 */ _t66 = _t65 & 0x00000001u;
|
|
/* 02394BA4 */ if (_t66) goto L_02395428; else goto L_02394BA8;
|
|
L_02394BA8: ; // 0x2394ba8
|
|
/* 02394BA8 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02394BA8 */ _t67 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02394BA8 */ _t68 = _t67 >> (0x00000002u & 31u);
|
|
/* 02394BA8 */ _t69 = _t68 & 0x00000001u;
|
|
/* 02394BA8 */ if (_t69) goto L_02394B90; else goto L_02394BAC;
|
|
L_02394BAC: ; // 0x2394bac
|
|
/* 02394BAC */ cpu->r[9] = 0x10080000u;
|
|
/* 02394BB0 */ _t70 = cpu->r[1] + 0x00000034u;
|
|
/* 02394BB0 */ rbrew_write32(cpu->mem, _t70, cpu->r[25]);
|
|
/* 02394BB4 */ cpu->r[9] = cpu->r[9] + 0x0000660Cu;
|
|
/* 02394BB8 */ _t71 = cpu->r[28] + 0x00000034u;
|
|
/* 02394BB8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t71);
|
|
/* 02394BBC */ _t72 = cpu->r[1] + 0x00000030u;
|
|
/* 02394BBC */ rbrew_write32(cpu->mem, _t72, cpu->r[9]);
|
|
/* 02394BC0 */ _t73 = cpu->r[10] + 0x00000014u;
|
|
/* 02394BC0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t73);
|
|
/* 02394BC4 */ cpu->ctr = cpu->r[11];
|
|
/* 02394BC8 */ cpu->r[0] = 0x00000001u;
|
|
/* 02394BCC */ cpu->r[3] = cpu->r[28] + 0x00000030u;
|
|
/* 02394BD0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02394BD4 */ _t74 = cpu->r[28] + 0x00000034u;
|
|
/* 02394BD4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t74);
|
|
/* 02394BD8 */ _t75 = cpu->r[12] + 0x00000014u;
|
|
/* 02394BD8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t75);
|
|
/* 02394BDC */ cpu->ctr = cpu->r[0];
|
|
/* 02394BE0 */ cpu->r[3] = cpu->r[28] + 0x00000030u;
|
|
/* 02394BE4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02394BE8 */ _t76 = cpu->r[1] + 0x00000034u;
|
|
/* 02394BE8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t76);
|
|
/* 02394BEC */ _t77 = cpu->r[4] + 0x00000014u;
|
|
/* 02394BEC */ cpu->r[5] = rbrew_read32(cpu->mem, _t77);
|
|
/* 02394BF0 */ cpu->ctr = cpu->r[5];
|
|
/* 02394BF4 */ _t78 = cpu->r[28] + 0x00000030u;
|
|
/* 02394BF4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t78);
|
|
/* 02394BF8 */ cpu->r[3] = cpu->r[1] + 0x00000030u;
|
|
/* 02394BFC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02394C00 */ _t79 = cpu->r[1] + 0x00000030u;
|
|
/* 02394C00 */ cpu->r[12] = rbrew_read32(cpu->mem, _t79);
|
|
/* 02394C04 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[12]);
|
|
/* 02394C08 */ _t80 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02394C08 */ _t81 = _t80 & 0x00000001u;
|
|
/* 02394C08 */ if (_t81) goto L_02395428; else goto L_02394C0C;
|
|
L_02394C0C: ; // 0x2394c0c
|
|
/* 02394C0C */ _t82 = cpu->r[28] + 0x00000030u;
|
|
/* 02394C0C */ cpu->r[8] = rbrew_read32(cpu->mem, _t82);
|
|
/* 02394C10 */ cpu->r[7] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 02394C14 */ cpu->ctr = cpu->r[27];
|
|
/* 02394C18 */ cpu->r[8] = cpu->r[8] + 0xFFFFFFFFu;
|
|
L_02394C1C: ; // 0x2394c1c
|
|
/* 02394C1C */ _t83 = cpu->r[8] + 0x00000001u;
|
|
/* 02394C1C */ cpu->r[9] = rbrew_read8(cpu->mem, _t83);
|
|
/* 02394C1C */ cpu->r[8] = _t83;
|
|
/* 02394C20 */ _t84 = cpu->r[7] + 0x00000001u;
|
|
/* 02394C20 */ cpu->r[0] = rbrew_read8(cpu->mem, _t84);
|
|
/* 02394C20 */ cpu->r[7] = _t84;
|
|
/* 02394C24 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[0]);
|
|
/* 02394C28 */ _t85 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02394C28 */ _t86 = _t85 & 0x00000001u;
|
|
/* 02394C28 */ if (_t86) goto L_02394C2C; else goto L_02394C38;
|
|
L_02394C2C: ; // 0x2394c2c
|
|
/* 02394C2C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[31]);
|
|
/* 02394C30 */ _t87 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02394C30 */ _t88 = _t87 & 0x00000001u;
|
|
/* 02394C30 */ if (_t88) goto L_02395428; else goto L_02394C34;
|
|
L_02394C34: ; // 0x2394c34
|
|
/* 02394C34 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02394C34 */ _t89 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02394C34 */ _t90 = _t89 >> (0x00000002u & 31u);
|
|
/* 02394C34 */ _t91 = _t90 & 0x00000001u;
|
|
/* 02394C34 */ if (_t91) goto L_02394C1C; else goto L_02394C38;
|
|
L_02394C38: ; // 0x2394c38
|
|
/* 02394C38 */ cpu->r[7] = 0x10080000u;
|
|
/* 02394C3C */ _t92 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02394C3C */ rbrew_write32(cpu->mem, _t92, cpu->r[25]);
|
|
/* 02394C40 */ cpu->r[7] = cpu->r[7] + 0x00006668u;
|
|
/* 02394C44 */ _t93 = cpu->r[28] + 0x00000034u;
|
|
/* 02394C44 */ cpu->r[8] = rbrew_read32(cpu->mem, _t93);
|
|
/* 02394C48 */ _t94 = cpu->r[1] + 0x00000038u;
|
|
/* 02394C48 */ rbrew_write32(cpu->mem, _t94, cpu->r[7]);
|
|
/* 02394C4C */ _t95 = cpu->r[8] + 0x00000014u;
|
|
/* 02394C4C */ cpu->r[9] = rbrew_read32(cpu->mem, _t95);
|
|
/* 02394C50 */ cpu->ctr = cpu->r[9];
|
|
/* 02394C54 */ cpu->r[0] = 0x00000001u;
|
|
/* 02394C58 */ cpu->r[3] = cpu->r[28] + 0x00000030u;
|
|
/* 02394C5C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02394C60 */ _t96 = cpu->r[28] + 0x00000034u;
|
|
/* 02394C60 */ cpu->r[10] = rbrew_read32(cpu->mem, _t96);
|
|
/* 02394C64 */ _t97 = cpu->r[10] + 0x00000014u;
|
|
/* 02394C64 */ cpu->r[11] = rbrew_read32(cpu->mem, _t97);
|
|
/* 02394C68 */ cpu->ctr = cpu->r[11];
|
|
/* 02394C6C */ cpu->r[3] = cpu->r[28] + 0x00000030u;
|
|
/* 02394C70 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02394C74 */ _t98 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02394C74 */ cpu->r[12] = rbrew_read32(cpu->mem, _t98);
|
|
/* 02394C78 */ _t99 = cpu->r[12] + 0x00000014u;
|
|
/* 02394C78 */ cpu->r[0] = rbrew_read32(cpu->mem, _t99);
|
|
/* 02394C7C */ cpu->ctr = cpu->r[0];
|
|
/* 02394C80 */ _t100 = cpu->r[28] + 0x00000030u;
|
|
/* 02394C80 */ cpu->r[30] = rbrew_read32(cpu->mem, _t100);
|
|
/* 02394C84 */ cpu->r[3] = cpu->r[1] + 0x00000038u;
|
|
/* 02394C88 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02394C8C */ _t101 = cpu->r[1] + 0x00000038u;
|
|
/* 02394C8C */ cpu->r[4] = rbrew_read32(cpu->mem, _t101);
|
|
/* 02394C90 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[4]);
|
|
/* 02394C94 */ _t102 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02394C94 */ _t103 = _t102 & 0x00000001u;
|
|
/* 02394C94 */ if (_t103) goto L_02395428; else goto L_02394C98;
|
|
L_02394C98: ; // 0x2394c98
|
|
/* 02394C98 */ _t104 = cpu->r[28] + 0x00000030u;
|
|
/* 02394C98 */ cpu->r[6] = rbrew_read32(cpu->mem, _t104);
|
|
/* 02394C9C */ cpu->r[5] = cpu->r[4] + 0xFFFFFFFFu;
|
|
/* 02394CA0 */ cpu->ctr = cpu->r[27];
|
|
/* 02394CA4 */ cpu->r[6] = cpu->r[6] + 0xFFFFFFFFu;
|
|
L_02394CA8: ; // 0x2394ca8
|
|
/* 02394CA8 */ _t105 = cpu->r[6] + 0x00000001u;
|
|
/* 02394CA8 */ cpu->r[10] = rbrew_read8(cpu->mem, _t105);
|
|
/* 02394CA8 */ cpu->r[6] = _t105;
|
|
/* 02394CAC */ _t106 = cpu->r[5] + 0x00000001u;
|
|
/* 02394CAC */ cpu->r[0] = rbrew_read8(cpu->mem, _t106);
|
|
/* 02394CAC */ cpu->r[5] = _t106;
|
|
/* 02394CB0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[0]);
|
|
/* 02394CB4 */ _t107 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02394CB4 */ _t108 = _t107 & 0x00000001u;
|
|
/* 02394CB4 */ if (_t108) goto L_02394CB8; else goto L_02394CC4;
|
|
L_02394CB8: ; // 0x2394cb8
|
|
/* 02394CB8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[31]);
|
|
/* 02394CBC */ _t109 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02394CBC */ _t110 = _t109 & 0x00000001u;
|
|
/* 02394CBC */ if (_t110) goto L_02395428; else goto L_02394CC0;
|
|
L_02394CC0: ; // 0x2394cc0
|
|
/* 02394CC0 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02394CC0 */ _t111 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02394CC0 */ _t112 = _t111 >> (0x00000002u & 31u);
|
|
/* 02394CC0 */ _t113 = _t112 & 0x00000001u;
|
|
/* 02394CC0 */ if (_t113) goto L_02394CA8; else goto L_02394CC4;
|
|
L_02394CC4: ; // 0x2394cc4
|
|
/* 02394CC4 */ cpu->r[5] = 0x10080000u;
|
|
/* 02394CC8 */ _t114 = cpu->r[1] + 0x00000014u;
|
|
/* 02394CC8 */ rbrew_write32(cpu->mem, _t114, cpu->r[25]);
|
|
/* 02394CCC */ cpu->r[5] = cpu->r[5] + 0x00006604u;
|
|
/* 02394CD0 */ _t115 = cpu->r[28] + 0x00000034u;
|
|
/* 02394CD0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t115);
|
|
/* 02394CD4 */ _t116 = cpu->r[1] + 0x00000010u;
|
|
/* 02394CD4 */ rbrew_write32(cpu->mem, _t116, cpu->r[5]);
|
|
/* 02394CD8 */ _t117 = cpu->r[6] + 0x00000014u;
|
|
/* 02394CD8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t117);
|
|
/* 02394CDC */ cpu->ctr = cpu->r[7];
|
|
/* 02394CE0 */ cpu->r[0] = 0x00000001u;
|
|
/* 02394CE4 */ cpu->r[3] = cpu->r[28] + 0x00000030u;
|
|
/* 02394CE8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02394CEC */ _t118 = cpu->r[28] + 0x00000030u;
|
|
/* 02394CEC */ cpu->r[11] = rbrew_read32(cpu->mem, _t118);
|
|
/* 02394CF0 */ _t119 = cpu->r[11] + 0x00000000u;
|
|
/* 02394CF0 */ cpu->r[8] = rbrew_read8(cpu->mem, _t119);
|
|
/* 02394CF4 */ cpu->r[0] = 0x00080000u;
|
|
/* 02394CF8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[31]);
|
|
/* 02394CFC */ cpu->r[29] = 0x00000000u;
|
|
/* 02394D00 */ _t120 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02394D00 */ _t121 = _t120 & 0x00000001u;
|
|
/* 02394D00 */ if (_t121) goto L_02394D28; else goto L_02394D04;
|
|
L_02394D04: ; // 0x2394d04
|
|
/* 02394D04 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 02394D08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[0]);
|
|
/* 02394D0C */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 02394D10 */ _t122 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02394D10 */ _t123 = _t122 & 0x00000001u;
|
|
/* 02394D10 */ if (_t123) goto L_02394D24; else goto L_02394D14;
|
|
L_02394D14: ; // 0x2394d14
|
|
/* 02394D14 */ _t124 = cpu->r[11] + 0x00000000u;
|
|
/* 02394D14 */ cpu->r[9] = rbrew_read8(cpu->mem, _t124);
|
|
/* 02394D18 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[31]);
|
|
/* 02394D1C */ _t125 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02394D1C */ _t126 = _t125 & 0x00000001u;
|
|
/* 02394D1C */ if (_t126) goto L_02394D20; else goto L_02394D04;
|
|
L_02394D20: ; // 0x2394d20
|
|
/* 02394D20 */ goto L_02394D28;
|
|
L_02394D24: ; // 0x2394d24
|
|
/* 02394D24 */ cpu->r[29] = 0x00000000u;
|
|
L_02394D28: ; // 0x2394d28
|
|
/* 02394D28 */ _t127 = cpu->r[1] + 0x00000014u;
|
|
/* 02394D28 */ cpu->r[10] = rbrew_read32(cpu->mem, _t127);
|
|
/* 02394D2C */ _t128 = cpu->r[10] + 0x00000014u;
|
|
/* 02394D2C */ cpu->r[11] = rbrew_read32(cpu->mem, _t128);
|
|
/* 02394D30 */ cpu->ctr = cpu->r[11];
|
|
/* 02394D34 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 02394D38 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02394D3C */ _t129 = cpu->r[1] + 0x00000010u;
|
|
/* 02394D3C */ cpu->r[6] = rbrew_read32(cpu->mem, _t129);
|
|
/* 02394D40 */ _t130 = cpu->r[6] + 0x00000000u;
|
|
/* 02394D40 */ cpu->r[0] = rbrew_read8(cpu->mem, _t130);
|
|
/* 02394D44 */ cpu->r[30] = 0x00000000u;
|
|
/* 02394D48 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 02394D4C */ cpu->r[8] = 0x00080000u;
|
|
/* 02394D50 */ _t131 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02394D50 */ _t132 = _t131 & 0x00000001u;
|
|
/* 02394D50 */ if (_t132) goto L_02394D78; else goto L_02394D54;
|
|
L_02394D54: ; // 0x2394d54
|
|
/* 02394D54 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 02394D58 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[8]);
|
|
/* 02394D5C */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 02394D60 */ _t133 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02394D60 */ _t134 = _t133 & 0x00000001u;
|
|
/* 02394D60 */ if (_t134) goto L_02394D74; else goto L_02394D64;
|
|
L_02394D64: ; // 0x2394d64
|
|
/* 02394D64 */ _t135 = cpu->r[6] + 0x00000000u;
|
|
/* 02394D64 */ cpu->r[0] = rbrew_read8(cpu->mem, _t135);
|
|
/* 02394D68 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 02394D6C */ _t136 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02394D6C */ _t137 = _t136 & 0x00000001u;
|
|
/* 02394D6C */ if (_t137) goto L_02394D70; else goto L_02394D54;
|
|
L_02394D70: ; // 0x2394d70
|
|
/* 02394D70 */ goto L_02394D78;
|
|
L_02394D74: ; // 0x2394d74
|
|
/* 02394D74 */ cpu->r[30] = 0x00000000u;
|
|
L_02394D78: ; // 0x2394d78
|
|
/* 02394D78 */ cpu->r[29] = cpu->r[29] - cpu->r[30];
|
|
/* 02394D78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 02394D7C */ cpu->r[22] = 0x00000000u;
|
|
/* 02394D80 */ _t138 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02394D80 */ _t139 = _t138 & 0x00000001u;
|
|
/* 02394D80 */ if (_t139) goto L_02394EAC; else goto L_02394D84;
|
|
L_02394D84: ; // 0x2394d84
|
|
/* 02394D84 */ cpu->r[23] = cpu->r[31];
|
|
L_02394D88: ; // 0x2394d88
|
|
/* 02394D88 */ _t140 = cpu->r[28] + 0x00000030u;
|
|
/* 02394D88 */ cpu->r[5] = rbrew_read32(cpu->mem, _t140);
|
|
/* 02394D8C */ cpu->r[24] = cpu->r[30];
|
|
/* 02394D90 */ _t141 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02394D90 */ rbrew_write32(cpu->mem, _t141, cpu->r[25]);
|
|
/* 02394D94 */ cpu->r[4] = cpu->r[5] + cpu->r[22];
|
|
/* 02394D98 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02394D9C */ _t142 = cpu->r[1] + 0x00000008u;
|
|
/* 02394D9C */ rbrew_write32(cpu->mem, _t142, cpu->r[4]);
|
|
/* 02394DA0 */ Gambit_fn_02395BB8(cpu);
|
|
/* 02394DA4 */ _t143 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02394DA4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t143);
|
|
/* 02394DA8 */ _t144 = cpu->r[6] + 0x00000014u;
|
|
/* 02394DA8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t144);
|
|
/* 02394DAC */ cpu->ctr = cpu->r[0];
|
|
/* 02394DB0 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02394DB4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02394DB8 */ _t145 = cpu->r[1] + 0x00000014u;
|
|
/* 02394DB8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t145);
|
|
/* 02394DBC */ _t146 = cpu->r[8] + 0x00000014u;
|
|
/* 02394DBC */ cpu->r[9] = rbrew_read32(cpu->mem, _t146);
|
|
/* 02394DC0 */ cpu->ctr = cpu->r[9];
|
|
/* 02394DC4 */ _t147 = cpu->r[1] + 0x00000008u;
|
|
/* 02394DC4 */ cpu->r[21] = rbrew_read32(cpu->mem, _t147);
|
|
/* 02394DC8 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 02394DCC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02394DD0 */ _t148 = cpu->r[1] + 0x00000010u;
|
|
/* 02394DD0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t148);
|
|
/* 02394DD4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[21], cpu->r[11]);
|
|
/* 02394DD8 */ _t149 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02394DD8 */ _t150 = _t149 & 0x00000001u;
|
|
/* 02394DD8 */ if (_t150) goto L_02394EA4; else goto L_02394DDC;
|
|
L_02394DDC: ; // 0x2394ddc
|
|
/* 02394DDC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 02394DE0 */ _t151 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02394DE0 */ _t152 = _t151 & 0x00000001u;
|
|
/* 02394DE0 */ if (_t152) goto L_02394DE4; else goto L_02394EA4;
|
|
L_02394DE4: ; // 0x2394de4
|
|
/* 02394DE4 */ cpu->ctr = cpu->r[24];
|
|
/* 02394DE8 */ _t153 = cpu->r[1] + 0x00000008u;
|
|
/* 02394DE8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t153);
|
|
L_02394DEC: ; // 0x2394dec
|
|
/* 02394DEC */ _t154 = cpu->r[7] + 0x00000000u;
|
|
/* 02394DEC */ cpu->r[0] = rbrew_read8(cpu->mem, _t154);
|
|
/* 02394DF0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[23]);
|
|
/* 02394DF4 */ _t155 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02394DF4 */ _t156 = _t155 & 0x00000001u;
|
|
/* 02394DF4 */ if (_t156) goto L_02394DF8; else goto L_02394E08;
|
|
L_02394DF8: ; // 0x2394df8
|
|
/* 02394DF8 */ _t157 = cpu->r[11] + 0x00000000u;
|
|
/* 02394DF8 */ cpu->r[10] = rbrew_read8(cpu->mem, _t157);
|
|
/* 02394DFC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[23]);
|
|
/* 02394E00 */ _t158 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02394E00 */ _t159 = _t158 & 0x00000001u;
|
|
/* 02394E00 */ if (_t159) goto L_02394EA4; else goto L_02394E04;
|
|
L_02394E04: ; // 0x2394e04
|
|
/* 02394E04 */ goto L_02394E34;
|
|
L_02394E08: ; // 0x2394e08
|
|
/* 02394E08 */ _t160 = cpu->r[11] + 0x00000000u;
|
|
/* 02394E08 */ cpu->r[8] = rbrew_read8(cpu->mem, _t160);
|
|
/* 02394E0C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[23]);
|
|
/* 02394E10 */ _t161 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02394E10 */ _t162 = _t161 & 0x00000001u;
|
|
/* 02394E10 */ if (_t162) goto L_02394E34; else goto L_02394E14;
|
|
L_02394E14: ; // 0x2394e14
|
|
/* 02394E14 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[0]);
|
|
/* 02394E18 */ _t163 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02394E18 */ _t164 = _t163 & 0x00000001u;
|
|
/* 02394E18 */ if (_t164) goto L_02394E1C; else goto L_02394E34;
|
|
L_02394E1C: ; // 0x2394e1c
|
|
/* 02394E1C */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 02394E20 */ cpu->r[7] = cpu->r[7] + 0x00000001u;
|
|
/* 02394E24 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02394E24 */ _t165 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02394E24 */ _t166 = _t165 >> (0x00000002u & 31u);
|
|
/* 02394E24 */ _t167 = _t166 & 0x00000001u;
|
|
/* 02394E24 */ if (_t167) goto L_02394DEC; else goto L_02394E28;
|
|
L_02394E28: ; // 0x2394e28
|
|
/* 02394E28 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[22], 0xFFFFFFFFu);
|
|
/* 02394E2C */ _t168 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02394E2C */ _t169 = _t168 & 0x00000001u;
|
|
/* 02394E2C */ if (_t169) goto L_02394EAC; else goto L_02394E30;
|
|
L_02394E30: ; // 0x2394e30
|
|
/* 02394E30 */ goto L_02395428;
|
|
L_02394E34: ; // 0x2394e34
|
|
/* 02394E34 */ cpu->r[22] = cpu->r[22] + 0x00000001u;
|
|
/* 02394E38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[22], cpu->r[29]);
|
|
/* 02394E3C */ _t170 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02394E3C */ _t171 = _t170 & 0x00000001u;
|
|
/* 02394E3C */ if (_t171) goto L_02394E40; else goto L_02394D88;
|
|
L_02394E40: ; // 0x2394e40
|
|
/* 02394E40 */ cpu->r[0] = 0x10080000u;
|
|
/* 02394E44 */ _t172 = cpu->r[1] + 0x00000044u;
|
|
/* 02394E44 */ rbrew_write32(cpu->mem, _t172, cpu->r[25]);
|
|
/* 02394E48 */ cpu->r[0] = cpu->r[0] + 0x0000667Cu;
|
|
/* 02394E4C */ _t173 = cpu->r[28] + 0x00000034u;
|
|
/* 02394E4C */ cpu->r[12] = rbrew_read32(cpu->mem, _t173);
|
|
/* 02394E50 */ _t174 = cpu->r[1] + 0x00000040u;
|
|
/* 02394E50 */ rbrew_write32(cpu->mem, _t174, cpu->r[0]);
|
|
/* 02394E54 */ _t175 = cpu->r[12] + 0x00000014u;
|
|
/* 02394E54 */ cpu->r[4] = rbrew_read32(cpu->mem, _t175);
|
|
/* 02394E58 */ cpu->ctr = cpu->r[4];
|
|
/* 02394E5C */ cpu->r[0] = 0x00000001u;
|
|
/* 02394E60 */ cpu->r[3] = cpu->r[28] + 0x00000030u;
|
|
/* 02394E64 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02394E68 */ _t176 = cpu->r[28] + 0x00000034u;
|
|
/* 02394E68 */ cpu->r[5] = rbrew_read32(cpu->mem, _t176);
|
|
/* 02394E6C */ _t177 = cpu->r[5] + 0x00000014u;
|
|
/* 02394E6C */ cpu->r[6] = rbrew_read32(cpu->mem, _t177);
|
|
/* 02394E70 */ cpu->ctr = cpu->r[6];
|
|
/* 02394E74 */ cpu->r[3] = cpu->r[28] + 0x00000030u;
|
|
/* 02394E78 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02394E7C */ _t178 = cpu->r[1] + 0x00000044u;
|
|
/* 02394E7C */ cpu->r[7] = rbrew_read32(cpu->mem, _t178);
|
|
/* 02394E80 */ _t179 = cpu->r[7] + 0x00000014u;
|
|
/* 02394E80 */ cpu->r[8] = rbrew_read32(cpu->mem, _t179);
|
|
/* 02394E84 */ cpu->ctr = cpu->r[8];
|
|
/* 02394E88 */ _t180 = cpu->r[28] + 0x00000030u;
|
|
/* 02394E88 */ cpu->r[30] = rbrew_read32(cpu->mem, _t180);
|
|
/* 02394E8C */ cpu->r[3] = cpu->r[1] + 0x00000040u;
|
|
/* 02394E90 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02394E94 */ _t181 = cpu->r[1] + 0x00000040u;
|
|
/* 02394E94 */ cpu->r[5] = rbrew_read32(cpu->mem, _t181);
|
|
/* 02394E98 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[5]);
|
|
/* 02394E9C */ _t182 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02394E9C */ _t183 = _t182 & 0x00000001u;
|
|
/* 02394E9C */ if (_t183) goto L_02395428; else goto L_02394EA0;
|
|
L_02394EA0: ; // 0x2394ea0
|
|
/* 02394EA0 */ goto L_02394F0C;
|
|
L_02394EA4: ; // 0x2394ea4
|
|
/* 02394EA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[22], 0xFFFFFFFFu);
|
|
/* 02394EA8 */ _t184 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02394EA8 */ _t185 = _t184 & 0x00000001u;
|
|
/* 02394EA8 */ if (_t185) goto L_02394EAC; else goto L_02395428;
|
|
L_02394EAC: ; // 0x2394eac
|
|
/* 02394EAC */ cpu->r[0] = 0x10080000u;
|
|
/* 02394EB0 */ _t186 = cpu->r[1] + 0x00000044u;
|
|
/* 02394EB0 */ rbrew_write32(cpu->mem, _t186, cpu->r[25]);
|
|
/* 02394EB4 */ cpu->r[0] = cpu->r[0] + 0x0000667Cu;
|
|
/* 02394EB8 */ _t187 = cpu->r[28] + 0x00000034u;
|
|
/* 02394EB8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t187);
|
|
/* 02394EBC */ _t188 = cpu->r[1] + 0x00000040u;
|
|
/* 02394EBC */ rbrew_write32(cpu->mem, _t188, cpu->r[0]);
|
|
/* 02394EC0 */ _t189 = cpu->r[12] + 0x00000014u;
|
|
/* 02394EC0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t189);
|
|
/* 02394EC4 */ cpu->ctr = cpu->r[4];
|
|
/* 02394EC8 */ cpu->r[0] = 0x00000001u;
|
|
/* 02394ECC */ cpu->r[3] = cpu->r[28] + 0x00000030u;
|
|
/* 02394ED0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02394ED4 */ _t190 = cpu->r[28] + 0x00000034u;
|
|
/* 02394ED4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t190);
|
|
/* 02394ED8 */ _t191 = cpu->r[5] + 0x00000014u;
|
|
/* 02394ED8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t191);
|
|
/* 02394EDC */ cpu->ctr = cpu->r[6];
|
|
/* 02394EE0 */ cpu->r[3] = cpu->r[28] + 0x00000030u;
|
|
/* 02394EE4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02394EE8 */ _t192 = cpu->r[1] + 0x00000044u;
|
|
/* 02394EE8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t192);
|
|
/* 02394EEC */ _t193 = cpu->r[7] + 0x00000014u;
|
|
/* 02394EEC */ cpu->r[8] = rbrew_read32(cpu->mem, _t193);
|
|
/* 02394EF0 */ cpu->ctr = cpu->r[8];
|
|
/* 02394EF4 */ _t194 = cpu->r[28] + 0x00000030u;
|
|
/* 02394EF4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t194);
|
|
/* 02394EF8 */ cpu->r[3] = cpu->r[1] + 0x00000040u;
|
|
/* 02394EFC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02394F00 */ _t195 = cpu->r[1] + 0x00000040u;
|
|
/* 02394F00 */ cpu->r[5] = rbrew_read32(cpu->mem, _t195);
|
|
/* 02394F04 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[5]);
|
|
/* 02394F08 */ _t196 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02394F08 */ _t197 = _t196 & 0x00000001u;
|
|
/* 02394F08 */ if (_t197) goto L_02395428; else goto L_02394F0C;
|
|
L_02394F0C: ; // 0x2394f0c
|
|
/* 02394F0C */ _t198 = cpu->r[28] + 0x00000030u;
|
|
/* 02394F0C */ cpu->r[12] = rbrew_read32(cpu->mem, _t198);
|
|
/* 02394F10 */ cpu->r[10] = cpu->r[5] + 0xFFFFFFFFu;
|
|
/* 02394F14 */ cpu->ctr = cpu->r[27];
|
|
/* 02394F18 */ cpu->r[12] = cpu->r[12] + 0xFFFFFFFFu;
|
|
L_02394F1C: ; // 0x2394f1c
|
|
/* 02394F1C */ _t199 = cpu->r[12] + 0x00000001u;
|
|
/* 02394F1C */ cpu->r[11] = rbrew_read8(cpu->mem, _t199);
|
|
/* 02394F1C */ cpu->r[12] = _t199;
|
|
/* 02394F20 */ _t200 = cpu->r[10] + 0x00000001u;
|
|
/* 02394F20 */ cpu->r[9] = rbrew_read8(cpu->mem, _t200);
|
|
/* 02394F20 */ cpu->r[10] = _t200;
|
|
/* 02394F24 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[9]);
|
|
/* 02394F28 */ _t201 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02394F28 */ _t202 = _t201 & 0x00000001u;
|
|
/* 02394F28 */ if (_t202) goto L_02394F2C; else goto L_02394F38;
|
|
L_02394F2C: ; // 0x2394f2c
|
|
/* 02394F2C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[31]);
|
|
/* 02394F30 */ _t203 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02394F30 */ _t204 = _t203 & 0x00000001u;
|
|
/* 02394F30 */ if (_t204) goto L_02395428; else goto L_02394F34;
|
|
L_02394F34: ; // 0x2394f34
|
|
/* 02394F34 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02394F34 */ _t205 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02394F34 */ _t206 = _t205 >> (0x00000002u & 31u);
|
|
/* 02394F34 */ _t207 = _t206 & 0x00000001u;
|
|
/* 02394F34 */ if (_t207) goto L_02394F1C; else goto L_02394F38;
|
|
L_02394F38: ; // 0x2394f38
|
|
/* 02394F38 */ cpu->r[0] = 0x10080000u;
|
|
/* 02394F3C */ _t208 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02394F3C */ rbrew_write32(cpu->mem, _t208, cpu->r[25]);
|
|
/* 02394F40 */ cpu->r[0] = cpu->r[0] + 0x00006614u;
|
|
/* 02394F44 */ _t209 = cpu->r[28] + 0x00000034u;
|
|
/* 02394F44 */ cpu->r[11] = rbrew_read32(cpu->mem, _t209);
|
|
/* 02394F48 */ _t210 = cpu->r[1] + 0x00000048u;
|
|
/* 02394F48 */ rbrew_write32(cpu->mem, _t210, cpu->r[0]);
|
|
/* 02394F4C */ _t211 = cpu->r[11] + 0x00000014u;
|
|
/* 02394F4C */ cpu->r[12] = rbrew_read32(cpu->mem, _t211);
|
|
/* 02394F50 */ cpu->ctr = cpu->r[12];
|
|
/* 02394F54 */ cpu->r[0] = 0x00000001u;
|
|
/* 02394F58 */ cpu->r[3] = cpu->r[28] + 0x00000030u;
|
|
/* 02394F5C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02394F60 */ _t212 = cpu->r[28] + 0x00000034u;
|
|
/* 02394F60 */ cpu->r[4] = rbrew_read32(cpu->mem, _t212);
|
|
/* 02394F64 */ _t213 = cpu->r[4] + 0x00000014u;
|
|
/* 02394F64 */ cpu->r[5] = rbrew_read32(cpu->mem, _t213);
|
|
/* 02394F68 */ cpu->ctr = cpu->r[5];
|
|
/* 02394F6C */ cpu->r[3] = cpu->r[28] + 0x00000030u;
|
|
/* 02394F70 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02394F74 */ _t214 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02394F74 */ cpu->r[6] = rbrew_read32(cpu->mem, _t214);
|
|
/* 02394F78 */ _t215 = cpu->r[6] + 0x00000014u;
|
|
/* 02394F78 */ cpu->r[7] = rbrew_read32(cpu->mem, _t215);
|
|
/* 02394F7C */ cpu->ctr = cpu->r[7];
|
|
/* 02394F80 */ _t216 = cpu->r[28] + 0x00000030u;
|
|
/* 02394F80 */ cpu->r[30] = rbrew_read32(cpu->mem, _t216);
|
|
/* 02394F84 */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 02394F88 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02394F8C */ _t217 = cpu->r[1] + 0x00000048u;
|
|
/* 02394F8C */ cpu->r[6] = rbrew_read32(cpu->mem, _t217);
|
|
/* 02394F90 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[6]);
|
|
/* 02394F94 */ _t218 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02394F94 */ _t219 = _t218 & 0x00000001u;
|
|
/* 02394F94 */ if (_t219) goto L_02395428; else goto L_02394F98;
|
|
L_02394F98: ; // 0x2394f98
|
|
/* 02394F98 */ _t220 = cpu->r[28] + 0x00000030u;
|
|
/* 02394F98 */ cpu->r[7] = rbrew_read32(cpu->mem, _t220);
|
|
/* 02394F9C */ cpu->r[5] = cpu->r[6] + 0xFFFFFFFFu;
|
|
/* 02394FA0 */ cpu->ctr = cpu->r[27];
|
|
/* 02394FA4 */ cpu->r[7] = cpu->r[7] + 0xFFFFFFFFu;
|
|
L_02394FA8: ; // 0x2394fa8
|
|
/* 02394FA8 */ _t221 = cpu->r[7] + 0x00000001u;
|
|
/* 02394FA8 */ cpu->r[12] = rbrew_read8(cpu->mem, _t221);
|
|
/* 02394FA8 */ cpu->r[7] = _t221;
|
|
/* 02394FAC */ _t222 = cpu->r[5] + 0x00000001u;
|
|
/* 02394FAC */ cpu->r[8] = rbrew_read8(cpu->mem, _t222);
|
|
/* 02394FAC */ cpu->r[5] = _t222;
|
|
/* 02394FB0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[8]);
|
|
/* 02394FB4 */ _t223 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02394FB4 */ _t224 = _t223 & 0x00000001u;
|
|
/* 02394FB4 */ if (_t224) goto L_02394FB8; else goto L_02394FC4;
|
|
L_02394FB8: ; // 0x2394fb8
|
|
/* 02394FB8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[31]);
|
|
/* 02394FBC */ _t225 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02394FBC */ _t226 = _t225 & 0x00000001u;
|
|
/* 02394FBC */ if (_t226) goto L_02395428; else goto L_02394FC0;
|
|
L_02394FC0: ; // 0x2394fc0
|
|
/* 02394FC0 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02394FC0 */ _t227 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02394FC0 */ _t228 = _t227 >> (0x00000002u & 31u);
|
|
/* 02394FC0 */ _t229 = _t228 & 0x00000001u;
|
|
/* 02394FC0 */ if (_t229) goto L_02394FA8; else goto L_02394FC4;
|
|
L_02394FC4: ; // 0x2394fc4
|
|
/* 02394FC4 */ cpu->r[9] = 0x10080000u;
|
|
/* 02394FC8 */ _t230 = cpu->r[1] + 0x00000054u;
|
|
/* 02394FC8 */ rbrew_write32(cpu->mem, _t230, cpu->r[25]);
|
|
/* 02394FCC */ cpu->r[9] = cpu->r[9] + 0x000066A4u;
|
|
/* 02394FD0 */ _t231 = cpu->r[28] + 0x00000034u;
|
|
/* 02394FD0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t231);
|
|
/* 02394FD4 */ _t232 = cpu->r[1] + 0x00000050u;
|
|
/* 02394FD4 */ rbrew_write32(cpu->mem, _t232, cpu->r[9]);
|
|
/* 02394FD8 */ _t233 = cpu->r[10] + 0x00000014u;
|
|
/* 02394FD8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t233);
|
|
/* 02394FDC */ cpu->ctr = cpu->r[11];
|
|
/* 02394FE0 */ cpu->r[0] = 0x00000001u;
|
|
/* 02394FE4 */ cpu->r[3] = cpu->r[28] + 0x00000030u;
|
|
/* 02394FE8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02394FEC */ _t234 = cpu->r[28] + 0x00000034u;
|
|
/* 02394FEC */ cpu->r[12] = rbrew_read32(cpu->mem, _t234);
|
|
/* 02394FF0 */ _t235 = cpu->r[12] + 0x00000014u;
|
|
/* 02394FF0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t235);
|
|
/* 02394FF4 */ cpu->ctr = cpu->r[0];
|
|
/* 02394FF8 */ cpu->r[3] = cpu->r[28] + 0x00000030u;
|
|
/* 02394FFC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02395000 */ _t236 = cpu->r[1] + 0x00000054u;
|
|
/* 02395000 */ cpu->r[4] = rbrew_read32(cpu->mem, _t236);
|
|
/* 02395004 */ _t237 = cpu->r[4] + 0x00000014u;
|
|
/* 02395004 */ cpu->r[5] = rbrew_read32(cpu->mem, _t237);
|
|
/* 02395008 */ cpu->ctr = cpu->r[5];
|
|
/* 0239500C */ _t238 = cpu->r[28] + 0x00000030u;
|
|
/* 0239500C */ cpu->r[30] = rbrew_read32(cpu->mem, _t238);
|
|
/* 02395010 */ cpu->r[3] = cpu->r[1] + 0x00000050u;
|
|
/* 02395014 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02395018 */ _t239 = cpu->r[1] + 0x00000050u;
|
|
/* 02395018 */ cpu->r[7] = rbrew_read32(cpu->mem, _t239);
|
|
/* 0239501C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[7]);
|
|
/* 02395020 */ _t240 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02395020 */ _t241 = _t240 & 0x00000001u;
|
|
/* 02395020 */ if (_t241) goto L_02395428; else goto L_02395024;
|
|
L_02395024: ; // 0x2395024
|
|
/* 02395024 */ _t242 = cpu->r[28] + 0x00000030u;
|
|
/* 02395024 */ cpu->r[12] = rbrew_read32(cpu->mem, _t242);
|
|
/* 02395028 */ cpu->r[10] = cpu->r[7] + 0xFFFFFFFFu;
|
|
/* 0239502C */ cpu->ctr = cpu->r[27];
|
|
/* 02395030 */ cpu->r[12] = cpu->r[12] + 0xFFFFFFFFu;
|
|
L_02395034: ; // 0x2395034
|
|
/* 02395034 */ _t243 = cpu->r[12] + 0x00000001u;
|
|
/* 02395034 */ cpu->r[0] = rbrew_read8(cpu->mem, _t243);
|
|
/* 02395034 */ cpu->r[12] = _t243;
|
|
/* 02395038 */ _t244 = cpu->r[10] + 0x00000001u;
|
|
/* 02395038 */ cpu->r[6] = rbrew_read8(cpu->mem, _t244);
|
|
/* 02395038 */ cpu->r[10] = _t244;
|
|
/* 0239503C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[6]);
|
|
/* 02395040 */ _t245 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02395040 */ _t246 = _t245 & 0x00000001u;
|
|
/* 02395040 */ if (_t246) goto L_02395044; else goto L_02395050;
|
|
L_02395044: ; // 0x2395044
|
|
/* 02395044 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 02395048 */ _t247 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02395048 */ _t248 = _t247 & 0x00000001u;
|
|
/* 02395048 */ if (_t248) goto L_02395428; else goto L_0239504C;
|
|
L_0239504C: ; // 0x239504c
|
|
/* 0239504C */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0239504C */ _t249 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0239504C */ _t250 = _t249 >> (0x00000002u & 31u);
|
|
/* 0239504C */ _t251 = _t250 & 0x00000001u;
|
|
/* 0239504C */ if (_t251) goto L_02395034; else goto L_02395050;
|
|
L_02395050: ; // 0x2395050
|
|
/* 02395050 */ cpu->r[7] = 0x10080000u;
|
|
/* 02395054 */ _t252 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02395054 */ rbrew_write32(cpu->mem, _t252, cpu->r[25]);
|
|
/* 02395058 */ cpu->r[7] = cpu->r[7] + 0x000066B8u;
|
|
/* 0239505C */ _t253 = cpu->r[28] + 0x00000034u;
|
|
/* 0239505C */ cpu->r[8] = rbrew_read32(cpu->mem, _t253);
|
|
/* 02395060 */ _t254 = cpu->r[1] + 0x00000058u;
|
|
/* 02395060 */ rbrew_write32(cpu->mem, _t254, cpu->r[7]);
|
|
/* 02395064 */ _t255 = cpu->r[8] + 0x00000014u;
|
|
/* 02395064 */ cpu->r[9] = rbrew_read32(cpu->mem, _t255);
|
|
/* 02395068 */ cpu->ctr = cpu->r[9];
|
|
/* 0239506C */ cpu->r[0] = 0x00000001u;
|
|
/* 02395070 */ cpu->r[3] = cpu->r[28] + 0x00000030u;
|
|
/* 02395074 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02395078 */ _t256 = cpu->r[28] + 0x00000034u;
|
|
/* 02395078 */ cpu->r[10] = rbrew_read32(cpu->mem, _t256);
|
|
/* 0239507C */ _t257 = cpu->r[10] + 0x00000014u;
|
|
/* 0239507C */ cpu->r[0] = rbrew_read32(cpu->mem, _t257);
|
|
/* 02395080 */ cpu->ctr = cpu->r[0];
|
|
/* 02395084 */ cpu->r[3] = cpu->r[28] + 0x00000030u;
|
|
/* 02395088 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0239508C */ _t258 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0239508C */ cpu->r[12] = rbrew_read32(cpu->mem, _t258);
|
|
/* 02395090 */ _t259 = cpu->r[12] + 0x00000014u;
|
|
/* 02395090 */ cpu->r[4] = rbrew_read32(cpu->mem, _t259);
|
|
/* 02395094 */ cpu->ctr = cpu->r[4];
|
|
/* 02395098 */ _t260 = cpu->r[28] + 0x00000030u;
|
|
/* 02395098 */ cpu->r[30] = rbrew_read32(cpu->mem, _t260);
|
|
/* 0239509C */ cpu->r[3] = cpu->r[1] + 0x00000058u;
|
|
/* 023950A0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 023950A4 */ _t261 = cpu->r[1] + 0x00000058u;
|
|
/* 023950A4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t261);
|
|
/* 023950A8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[8]);
|
|
/* 023950AC */ _t262 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023950AC */ _t263 = _t262 & 0x00000001u;
|
|
/* 023950AC */ if (_t263) goto L_02395428; else goto L_023950B0;
|
|
L_023950B0: ; // 0x23950b0
|
|
/* 023950B0 */ _t264 = cpu->r[28] + 0x00000030u;
|
|
/* 023950B0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t264);
|
|
/* 023950B4 */ cpu->r[7] = cpu->r[8] + 0xFFFFFFFFu;
|
|
/* 023950B8 */ cpu->ctr = cpu->r[27];
|
|
/* 023950BC */ cpu->r[9] = cpu->r[9] + 0xFFFFFFFFu;
|
|
L_023950C0: ; // 0x23950c0
|
|
/* 023950C0 */ _t265 = cpu->r[9] + 0x00000001u;
|
|
/* 023950C0 */ cpu->r[4] = rbrew_read8(cpu->mem, _t265);
|
|
/* 023950C0 */ cpu->r[9] = _t265;
|
|
/* 023950C4 */ _t266 = cpu->r[7] + 0x00000001u;
|
|
/* 023950C4 */ cpu->r[5] = rbrew_read8(cpu->mem, _t266);
|
|
/* 023950C4 */ cpu->r[7] = _t266;
|
|
/* 023950C8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[5]);
|
|
/* 023950CC */ _t267 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023950CC */ _t268 = _t267 & 0x00000001u;
|
|
/* 023950CC */ if (_t268) goto L_023950D0; else goto L_023950DC;
|
|
L_023950D0: ; // 0x23950d0
|
|
/* 023950D0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[31]);
|
|
/* 023950D4 */ _t269 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023950D4 */ _t270 = _t269 & 0x00000001u;
|
|
/* 023950D4 */ if (_t270) goto L_02395428; else goto L_023950D8;
|
|
L_023950D8: ; // 0x23950d8
|
|
/* 023950D8 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 023950D8 */ _t271 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 023950D8 */ _t272 = _t271 >> (0x00000002u & 31u);
|
|
/* 023950D8 */ _t273 = _t272 & 0x00000001u;
|
|
/* 023950D8 */ if (_t273) goto L_023950C0; else goto L_023950DC;
|
|
L_023950DC: ; // 0x23950dc
|
|
/* 023950DC */ cpu->r[6] = 0x10080000u;
|
|
/* 023950E0 */ _t274 = cpu->r[1] + 0x00000064u;
|
|
/* 023950E0 */ rbrew_write32(cpu->mem, _t274, cpu->r[25]);
|
|
/* 023950E4 */ cpu->r[6] = cpu->r[6] + 0x00006650u;
|
|
/* 023950E8 */ _t275 = cpu->r[28] + 0x00000034u;
|
|
/* 023950E8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t275);
|
|
/* 023950EC */ _t276 = cpu->r[1] + 0x00000060u;
|
|
/* 023950EC */ rbrew_write32(cpu->mem, _t276, cpu->r[6]);
|
|
/* 023950F0 */ _t277 = cpu->r[7] + 0x00000014u;
|
|
/* 023950F0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t277);
|
|
/* 023950F4 */ cpu->ctr = cpu->r[8];
|
|
/* 023950F8 */ cpu->r[0] = 0x00000001u;
|
|
/* 023950FC */ cpu->r[3] = cpu->r[28] + 0x00000030u;
|
|
/* 02395100 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02395104 */ _t278 = cpu->r[28] + 0x00000034u;
|
|
/* 02395104 */ cpu->r[9] = rbrew_read32(cpu->mem, _t278);
|
|
/* 02395108 */ _t279 = cpu->r[9] + 0x00000014u;
|
|
/* 02395108 */ cpu->r[10] = rbrew_read32(cpu->mem, _t279);
|
|
/* 0239510C */ cpu->ctr = cpu->r[10];
|
|
/* 02395110 */ cpu->r[3] = cpu->r[28] + 0x00000030u;
|
|
/* 02395114 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02395118 */ _t280 = cpu->r[1] + 0x00000064u;
|
|
/* 02395118 */ cpu->r[11] = rbrew_read32(cpu->mem, _t280);
|
|
/* 0239511C */ _t281 = cpu->r[11] + 0x00000014u;
|
|
/* 0239511C */ cpu->r[12] = rbrew_read32(cpu->mem, _t281);
|
|
/* 02395120 */ cpu->ctr = cpu->r[12];
|
|
/* 02395124 */ _t282 = cpu->r[28] + 0x00000030u;
|
|
/* 02395124 */ cpu->r[30] = rbrew_read32(cpu->mem, _t282);
|
|
/* 02395128 */ cpu->r[3] = cpu->r[1] + 0x00000060u;
|
|
/* 0239512C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02395130 */ _t283 = cpu->r[1] + 0x00000060u;
|
|
/* 02395130 */ cpu->r[9] = rbrew_read32(cpu->mem, _t283);
|
|
/* 02395134 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[9]);
|
|
/* 02395138 */ _t284 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02395138 */ _t285 = _t284 & 0x00000001u;
|
|
/* 02395138 */ if (_t285) goto L_02395428; else goto L_0239513C;
|
|
L_0239513C: ; // 0x239513c
|
|
/* 0239513C */ _t286 = cpu->r[28] + 0x00000030u;
|
|
/* 0239513C */ cpu->r[4] = rbrew_read32(cpu->mem, _t286);
|
|
/* 02395140 */ cpu->r[12] = cpu->r[9] + 0xFFFFFFFFu;
|
|
/* 02395144 */ cpu->ctr = cpu->r[27];
|
|
/* 02395148 */ cpu->r[4] = cpu->r[4] + 0xFFFFFFFFu;
|
|
L_0239514C: ; // 0x239514c
|
|
/* 0239514C */ _t287 = cpu->r[4] + 0x00000001u;
|
|
/* 0239514C */ cpu->r[5] = rbrew_read8(cpu->mem, _t287);
|
|
/* 0239514C */ cpu->r[4] = _t287;
|
|
/* 02395150 */ _t288 = cpu->r[12] + 0x00000001u;
|
|
/* 02395150 */ cpu->r[0] = rbrew_read8(cpu->mem, _t288);
|
|
/* 02395150 */ cpu->r[12] = _t288;
|
|
/* 02395154 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[0]);
|
|
/* 02395158 */ _t289 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02395158 */ _t290 = _t289 & 0x00000001u;
|
|
/* 02395158 */ if (_t290) goto L_0239515C; else goto L_02395168;
|
|
L_0239515C: ; // 0x239515c
|
|
/* 0239515C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[31]);
|
|
/* 02395160 */ _t291 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02395160 */ _t292 = _t291 & 0x00000001u;
|
|
/* 02395160 */ if (_t292) goto L_02395428; else goto L_02395164;
|
|
L_02395164: ; // 0x2395164
|
|
/* 02395164 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02395164 */ _t293 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02395164 */ _t294 = _t293 >> (0x00000002u & 31u);
|
|
/* 02395164 */ _t295 = _t294 & 0x00000001u;
|
|
/* 02395164 */ if (_t295) goto L_0239514C; else goto L_02395168;
|
|
L_02395168: ; // 0x2395168
|
|
/* 02395168 */ cpu->r[6] = 0x10080000u;
|
|
/* 0239516C */ _t296 = cpu->r[1] + 0x0000006Cu;
|
|
/* 0239516C */ rbrew_write32(cpu->mem, _t296, cpu->r[25]);
|
|
/* 02395170 */ cpu->r[6] = cpu->r[6] + 0x00006624u;
|
|
/* 02395174 */ _t297 = cpu->r[28] + 0x00000034u;
|
|
/* 02395174 */ cpu->r[8] = rbrew_read32(cpu->mem, _t297);
|
|
/* 02395178 */ _t298 = cpu->r[1] + 0x00000068u;
|
|
/* 02395178 */ rbrew_write32(cpu->mem, _t298, cpu->r[6]);
|
|
/* 0239517C */ _t299 = cpu->r[8] + 0x00000014u;
|
|
/* 0239517C */ cpu->r[9] = rbrew_read32(cpu->mem, _t299);
|
|
/* 02395180 */ cpu->ctr = cpu->r[9];
|
|
/* 02395184 */ cpu->r[0] = 0x00000001u;
|
|
/* 02395188 */ cpu->r[3] = cpu->r[28] + 0x00000030u;
|
|
/* 0239518C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02395190 */ _t300 = cpu->r[28] + 0x00000034u;
|
|
/* 02395190 */ cpu->r[11] = rbrew_read32(cpu->mem, _t300);
|
|
/* 02395194 */ _t301 = cpu->r[11] + 0x00000014u;
|
|
/* 02395194 */ cpu->r[0] = rbrew_read32(cpu->mem, _t301);
|
|
/* 02395198 */ cpu->ctr = cpu->r[0];
|
|
/* 0239519C */ cpu->r[3] = cpu->r[28] + 0x00000030u;
|
|
/* 023951A0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 023951A4 */ _t302 = cpu->r[1] + 0x0000006Cu;
|
|
/* 023951A4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t302);
|
|
/* 023951A8 */ _t303 = cpu->r[4] + 0x00000014u;
|
|
/* 023951A8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t303);
|
|
/* 023951AC */ cpu->ctr = cpu->r[6];
|
|
/* 023951B0 */ _t304 = cpu->r[28] + 0x00000030u;
|
|
/* 023951B0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t304);
|
|
/* 023951B4 */ cpu->r[3] = cpu->r[1] + 0x00000068u;
|
|
/* 023951B8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 023951BC */ _t305 = cpu->r[1] + 0x00000068u;
|
|
/* 023951BC */ cpu->r[10] = rbrew_read32(cpu->mem, _t305);
|
|
/* 023951C0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[10]);
|
|
/* 023951C4 */ _t306 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023951C4 */ _t307 = _t306 & 0x00000001u;
|
|
/* 023951C4 */ if (_t307) goto L_02395428; else goto L_023951C8;
|
|
L_023951C8: ; // 0x23951c8
|
|
/* 023951C8 */ _t308 = cpu->r[28] + 0x00000030u;
|
|
/* 023951C8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t308);
|
|
/* 023951CC */ cpu->r[7] = cpu->r[10] + 0xFFFFFFFFu;
|
|
/* 023951D0 */ cpu->ctr = cpu->r[27];
|
|
/* 023951D4 */ cpu->r[9] = cpu->r[9] + 0xFFFFFFFFu;
|
|
L_023951D8: ; // 0x23951d8
|
|
/* 023951D8 */ _t309 = cpu->r[9] + 0x00000001u;
|
|
/* 023951D8 */ cpu->r[6] = rbrew_read8(cpu->mem, _t309);
|
|
/* 023951D8 */ cpu->r[9] = _t309;
|
|
/* 023951DC */ _t310 = cpu->r[7] + 0x00000001u;
|
|
/* 023951DC */ cpu->r[8] = rbrew_read8(cpu->mem, _t310);
|
|
/* 023951DC */ cpu->r[7] = _t310;
|
|
/* 023951E0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[8]);
|
|
/* 023951E4 */ _t311 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023951E4 */ _t312 = _t311 & 0x00000001u;
|
|
/* 023951E4 */ if (_t312) goto L_023951E8; else goto L_023951F4;
|
|
L_023951E8: ; // 0x23951e8
|
|
/* 023951E8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[31]);
|
|
/* 023951EC */ _t313 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023951EC */ _t314 = _t313 & 0x00000001u;
|
|
/* 023951EC */ if (_t314) goto L_02395428; else goto L_023951F0;
|
|
L_023951F0: ; // 0x23951f0
|
|
/* 023951F0 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 023951F0 */ _t315 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 023951F0 */ _t316 = _t315 >> (0x00000002u & 31u);
|
|
/* 023951F0 */ _t317 = _t316 & 0x00000001u;
|
|
/* 023951F0 */ if (_t317) goto L_023951D8; else goto L_023951F4;
|
|
L_023951F4: ; // 0x23951f4
|
|
/* 023951F4 */ cpu->r[0] = 0x10080000u;
|
|
/* 023951F8 */ _t318 = cpu->r[1] + 0x00000074u;
|
|
/* 023951F8 */ rbrew_write32(cpu->mem, _t318, cpu->r[25]);
|
|
/* 023951FC */ cpu->r[0] = cpu->r[0] + 0x00006634u;
|
|
/* 02395200 */ _t319 = cpu->r[28] + 0x00000034u;
|
|
/* 02395200 */ cpu->r[12] = rbrew_read32(cpu->mem, _t319);
|
|
/* 02395204 */ _t320 = cpu->r[1] + 0x00000070u;
|
|
/* 02395204 */ rbrew_write32(cpu->mem, _t320, cpu->r[0]);
|
|
/* 02395208 */ _t321 = cpu->r[12] + 0x00000014u;
|
|
/* 02395208 */ cpu->r[5] = rbrew_read32(cpu->mem, _t321);
|
|
/* 0239520C */ cpu->ctr = cpu->r[5];
|
|
/* 02395210 */ cpu->r[0] = 0x00000001u;
|
|
/* 02395214 */ cpu->r[3] = cpu->r[28] + 0x00000030u;
|
|
/* 02395218 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0239521C */ _t322 = cpu->r[28] + 0x00000034u;
|
|
/* 0239521C */ cpu->r[6] = rbrew_read32(cpu->mem, _t322);
|
|
/* 02395220 */ _t323 = cpu->r[6] + 0x00000014u;
|
|
/* 02395220 */ cpu->r[8] = rbrew_read32(cpu->mem, _t323);
|
|
/* 02395224 */ cpu->ctr = cpu->r[8];
|
|
/* 02395228 */ cpu->r[3] = cpu->r[28] + 0x00000030u;
|
|
/* 0239522C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02395230 */ _t324 = cpu->r[1] + 0x00000074u;
|
|
/* 02395230 */ cpu->r[10] = rbrew_read32(cpu->mem, _t324);
|
|
/* 02395234 */ _t325 = cpu->r[10] + 0x00000014u;
|
|
/* 02395234 */ cpu->r[11] = rbrew_read32(cpu->mem, _t325);
|
|
/* 02395238 */ cpu->ctr = cpu->r[11];
|
|
/* 0239523C */ _t326 = cpu->r[28] + 0x00000030u;
|
|
/* 0239523C */ cpu->r[30] = rbrew_read32(cpu->mem, _t326);
|
|
/* 02395240 */ cpu->r[3] = cpu->r[1] + 0x00000070u;
|
|
/* 02395244 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02395248 */ _t327 = cpu->r[1] + 0x00000070u;
|
|
/* 02395248 */ cpu->r[11] = rbrew_read32(cpu->mem, _t327);
|
|
/* 0239524C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[11]);
|
|
/* 02395250 */ _t328 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02395250 */ _t329 = _t328 & 0x00000001u;
|
|
/* 02395250 */ if (_t329) goto L_02395428; else goto L_02395254;
|
|
L_02395254: ; // 0x2395254
|
|
/* 02395254 */ _t330 = cpu->r[28] + 0x00000030u;
|
|
/* 02395254 */ cpu->r[4] = rbrew_read32(cpu->mem, _t330);
|
|
/* 02395258 */ cpu->r[11] = cpu->r[11] + 0xFFFFFFFFu;
|
|
/* 0239525C */ cpu->ctr = cpu->r[27];
|
|
/* 02395260 */ cpu->r[4] = cpu->r[4] + 0xFFFFFFFFu;
|
|
L_02395264: ; // 0x2395264
|
|
/* 02395264 */ _t331 = cpu->r[4] + 0x00000001u;
|
|
/* 02395264 */ cpu->r[7] = rbrew_read8(cpu->mem, _t331);
|
|
/* 02395264 */ cpu->r[4] = _t331;
|
|
/* 02395268 */ _t332 = cpu->r[11] + 0x00000001u;
|
|
/* 02395268 */ cpu->r[0] = rbrew_read8(cpu->mem, _t332);
|
|
/* 02395268 */ cpu->r[11] = _t332;
|
|
/* 0239526C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[0]);
|
|
/* 02395270 */ _t333 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02395270 */ _t334 = _t333 & 0x00000001u;
|
|
/* 02395270 */ if (_t334) goto L_02395274; else goto L_02395280;
|
|
L_02395274: ; // 0x2395274
|
|
/* 02395274 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[31]);
|
|
/* 02395278 */ _t335 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02395278 */ _t336 = _t335 & 0x00000001u;
|
|
/* 02395278 */ if (_t336) goto L_02395428; else goto L_0239527C;
|
|
L_0239527C: ; // 0x239527c
|
|
/* 0239527C */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0239527C */ _t337 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0239527C */ _t338 = _t337 >> (0x00000002u & 31u);
|
|
/* 0239527C */ _t339 = _t338 & 0x00000001u;
|
|
/* 0239527C */ if (_t339) goto L_02395264; else goto L_02395280;
|
|
L_02395280: ; // 0x2395280
|
|
/* 02395280 */ cpu->r[0] = 0x10080000u;
|
|
/* 02395284 */ _t340 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02395284 */ rbrew_write32(cpu->mem, _t340, cpu->r[25]);
|
|
/* 02395288 */ cpu->r[0] = cpu->r[0] + 0x000066C4u;
|
|
/* 0239528C */ _t341 = cpu->r[28] + 0x00000034u;
|
|
/* 0239528C */ cpu->r[6] = rbrew_read32(cpu->mem, _t341);
|
|
/* 02395290 */ _t342 = cpu->r[1] + 0x00000078u;
|
|
/* 02395290 */ rbrew_write32(cpu->mem, _t342, cpu->r[0]);
|
|
/* 02395294 */ _t343 = cpu->r[6] + 0x00000014u;
|
|
/* 02395294 */ cpu->r[8] = rbrew_read32(cpu->mem, _t343);
|
|
/* 02395298 */ cpu->ctr = cpu->r[8];
|
|
/* 0239529C */ cpu->r[0] = 0x00000001u;
|
|
/* 023952A0 */ cpu->r[3] = cpu->r[28] + 0x00000030u;
|
|
/* 023952A4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 023952A8 */ _t344 = cpu->r[28] + 0x00000034u;
|
|
/* 023952A8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t344);
|
|
/* 023952AC */ _t345 = cpu->r[10] + 0x00000014u;
|
|
/* 023952AC */ cpu->r[9] = rbrew_read32(cpu->mem, _t345);
|
|
/* 023952B0 */ cpu->ctr = cpu->r[9];
|
|
/* 023952B4 */ cpu->r[3] = cpu->r[28] + 0x00000030u;
|
|
/* 023952B8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 023952BC */ _t346 = cpu->r[1] + 0x0000007Cu;
|
|
/* 023952BC */ cpu->r[11] = rbrew_read32(cpu->mem, _t346);
|
|
/* 023952C0 */ _t347 = cpu->r[11] + 0x00000014u;
|
|
/* 023952C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t347);
|
|
/* 023952C4 */ cpu->ctr = cpu->r[0];
|
|
/* 023952C8 */ _t348 = cpu->r[28] + 0x00000030u;
|
|
/* 023952C8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t348);
|
|
/* 023952CC */ cpu->r[3] = cpu->r[1] + 0x00000078u;
|
|
/* 023952D0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 023952D4 */ _t349 = cpu->r[1] + 0x00000078u;
|
|
/* 023952D4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t349);
|
|
/* 023952D8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[12]);
|
|
/* 023952DC */ _t350 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023952DC */ _t351 = _t350 & 0x00000001u;
|
|
/* 023952DC */ if (_t351) goto L_02395428; else goto L_023952E0;
|
|
L_023952E0: ; // 0x23952e0
|
|
/* 023952E0 */ _t352 = cpu->r[28] + 0x00000030u;
|
|
/* 023952E0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t352);
|
|
/* 023952E4 */ cpu->r[5] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 023952E8 */ cpu->ctr = cpu->r[27];
|
|
/* 023952EC */ cpu->r[7] = cpu->r[7] + 0xFFFFFFFFu;
|
|
L_023952F0: ; // 0x23952f0
|
|
/* 023952F0 */ _t353 = cpu->r[7] + 0x00000001u;
|
|
/* 023952F0 */ cpu->r[8] = rbrew_read8(cpu->mem, _t353);
|
|
/* 023952F0 */ cpu->r[7] = _t353;
|
|
/* 023952F4 */ _t354 = cpu->r[5] + 0x00000001u;
|
|
/* 023952F4 */ cpu->r[4] = rbrew_read8(cpu->mem, _t354);
|
|
/* 023952F4 */ cpu->r[5] = _t354;
|
|
/* 023952F8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[4]);
|
|
/* 023952FC */ _t355 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023952FC */ _t356 = _t355 & 0x00000001u;
|
|
/* 023952FC */ if (_t356) goto L_02395300; else goto L_0239530C;
|
|
L_02395300: ; // 0x2395300
|
|
/* 02395300 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[31]);
|
|
/* 02395304 */ _t357 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02395304 */ _t358 = _t357 & 0x00000001u;
|
|
/* 02395304 */ if (_t358) goto L_02395428; else goto L_02395308;
|
|
L_02395308: ; // 0x2395308
|
|
/* 02395308 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02395308 */ _t359 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02395308 */ _t360 = _t359 >> (0x00000002u & 31u);
|
|
/* 02395308 */ _t361 = _t360 & 0x00000001u;
|
|
/* 02395308 */ if (_t361) goto L_023952F0; else goto L_0239530C;
|
|
L_0239530C: ; // 0x239530c
|
|
/* 0239530C */ cpu->r[0] = 0x10080000u;
|
|
/* 02395310 */ _t362 = cpu->r[1] + 0x00000084u;
|
|
/* 02395310 */ rbrew_write32(cpu->mem, _t362, cpu->r[25]);
|
|
/* 02395314 */ cpu->r[0] = cpu->r[0] + 0x000066D4u;
|
|
/* 02395318 */ _t363 = cpu->r[28] + 0x00000034u;
|
|
/* 02395318 */ cpu->r[8] = rbrew_read32(cpu->mem, _t363);
|
|
/* 0239531C */ _t364 = cpu->r[1] + 0x00000080u;
|
|
/* 0239531C */ rbrew_write32(cpu->mem, _t364, cpu->r[0]);
|
|
/* 02395320 */ _t365 = cpu->r[8] + 0x00000014u;
|
|
/* 02395320 */ cpu->r[9] = rbrew_read32(cpu->mem, _t365);
|
|
/* 02395324 */ cpu->ctr = cpu->r[9];
|
|
/* 02395328 */ cpu->r[0] = 0x00000001u;
|
|
/* 0239532C */ cpu->r[3] = cpu->r[28] + 0x00000030u;
|
|
/* 02395330 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02395334 */ _t366 = cpu->r[28] + 0x00000034u;
|
|
/* 02395334 */ cpu->r[11] = rbrew_read32(cpu->mem, _t366);
|
|
/* 02395338 */ _t367 = cpu->r[11] + 0x00000014u;
|
|
/* 02395338 */ cpu->r[4] = rbrew_read32(cpu->mem, _t367);
|
|
/* 0239533C */ cpu->ctr = cpu->r[4];
|
|
/* 02395340 */ cpu->r[3] = cpu->r[28] + 0x00000030u;
|
|
/* 02395344 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02395348 */ _t368 = cpu->r[1] + 0x00000084u;
|
|
/* 02395348 */ cpu->r[5] = rbrew_read32(cpu->mem, _t368);
|
|
/* 0239534C */ _t369 = cpu->r[5] + 0x00000014u;
|
|
/* 0239534C */ cpu->r[6] = rbrew_read32(cpu->mem, _t369);
|
|
/* 02395350 */ cpu->ctr = cpu->r[6];
|
|
/* 02395354 */ _t370 = cpu->r[28] + 0x00000030u;
|
|
/* 02395354 */ cpu->r[30] = rbrew_read32(cpu->mem, _t370);
|
|
/* 02395358 */ cpu->r[3] = cpu->r[1] + 0x00000080u;
|
|
/* 0239535C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02395360 */ _t371 = cpu->r[1] + 0x00000080u;
|
|
/* 02395360 */ cpu->r[4] = rbrew_read32(cpu->mem, _t371);
|
|
/* 02395364 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[4]);
|
|
/* 02395368 */ _t372 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02395368 */ _t373 = _t372 & 0x00000001u;
|
|
/* 02395368 */ if (_t373) goto L_02395428; else goto L_0239536C;
|
|
L_0239536C: ; // 0x239536c
|
|
/* 0239536C */ _t374 = cpu->r[28] + 0x00000030u;
|
|
/* 0239536C */ cpu->r[12] = rbrew_read32(cpu->mem, _t374);
|
|
/* 02395370 */ cpu->r[10] = cpu->r[4] + 0xFFFFFFFFu;
|
|
/* 02395374 */ cpu->ctr = cpu->r[27];
|
|
/* 02395378 */ cpu->r[12] = cpu->r[12] + 0xFFFFFFFFu;
|
|
L_0239537C: ; // 0x239537c
|
|
/* 0239537C */ _t375 = cpu->r[12] + 0x00000001u;
|
|
/* 0239537C */ cpu->r[9] = rbrew_read8(cpu->mem, _t375);
|
|
/* 0239537C */ cpu->r[12] = _t375;
|
|
/* 02395380 */ _t376 = cpu->r[10] + 0x00000001u;
|
|
/* 02395380 */ cpu->r[8] = rbrew_read8(cpu->mem, _t376);
|
|
/* 02395380 */ cpu->r[10] = _t376;
|
|
/* 02395384 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[8]);
|
|
/* 02395388 */ _t377 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02395388 */ _t378 = _t377 & 0x00000001u;
|
|
/* 02395388 */ if (_t378) goto L_0239538C; else goto L_02395398;
|
|
L_0239538C: ; // 0x239538c
|
|
/* 0239538C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[31]);
|
|
/* 02395390 */ _t379 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02395390 */ _t380 = _t379 & 0x00000001u;
|
|
/* 02395390 */ if (_t380) goto L_02395428; else goto L_02395394;
|
|
L_02395394: ; // 0x2395394
|
|
/* 02395394 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02395394 */ _t381 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02395394 */ _t382 = _t381 >> (0x00000002u & 31u);
|
|
/* 02395394 */ _t383 = _t382 & 0x00000001u;
|
|
/* 02395394 */ if (_t383) goto L_0239537C; else goto L_02395398;
|
|
L_02395398: ; // 0x2395398
|
|
/* 02395398 */ cpu->r[0] = 0x10080000u;
|
|
/* 0239539C */ _t384 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0239539C */ rbrew_write32(cpu->mem, _t384, cpu->r[25]);
|
|
/* 023953A0 */ cpu->r[0] = cpu->r[0] + 0x000066E8u;
|
|
/* 023953A4 */ _t385 = cpu->r[28] + 0x00000034u;
|
|
/* 023953A4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t385);
|
|
/* 023953A8 */ _t386 = cpu->r[1] + 0x00000088u;
|
|
/* 023953A8 */ rbrew_write32(cpu->mem, _t386, cpu->r[0]);
|
|
/* 023953AC */ _t387 = cpu->r[12] + 0x00000014u;
|
|
/* 023953AC */ cpu->r[4] = rbrew_read32(cpu->mem, _t387);
|
|
/* 023953B0 */ cpu->ctr = cpu->r[4];
|
|
/* 023953B4 */ cpu->r[0] = 0x00000001u;
|
|
/* 023953B8 */ cpu->r[3] = cpu->r[28] + 0x00000030u;
|
|
/* 023953BC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 023953C0 */ _t388 = cpu->r[28] + 0x00000034u;
|
|
/* 023953C0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t388);
|
|
/* 023953C4 */ _t389 = cpu->r[5] + 0x00000014u;
|
|
/* 023953C4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t389);
|
|
/* 023953C8 */ cpu->ctr = cpu->r[7];
|
|
/* 023953CC */ cpu->r[3] = cpu->r[28] + 0x00000030u;
|
|
/* 023953D0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 023953D4 */ _t390 = cpu->r[1] + 0x0000008Cu;
|
|
/* 023953D4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t390);
|
|
/* 023953D8 */ _t391 = cpu->r[9] + 0x00000014u;
|
|
/* 023953D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t391);
|
|
/* 023953DC */ cpu->ctr = cpu->r[0];
|
|
/* 023953E0 */ _t392 = cpu->r[28] + 0x00000030u;
|
|
/* 023953E0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t392);
|
|
/* 023953E4 */ cpu->r[3] = cpu->r[1] + 0x00000088u;
|
|
/* 023953E8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 023953EC */ _t393 = cpu->r[1] + 0x00000088u;
|
|
/* 023953EC */ cpu->r[5] = rbrew_read32(cpu->mem, _t393);
|
|
/* 023953F0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[5]);
|
|
/* 023953F4 */ _t394 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023953F4 */ _t395 = _t394 & 0x00000001u;
|
|
/* 023953F4 */ if (_t395) goto L_02395428; else goto L_023953F8;
|
|
L_023953F8: ; // 0x23953f8
|
|
/* 023953F8 */ _t396 = cpu->r[28] + 0x00000030u;
|
|
/* 023953F8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t396);
|
|
/* 023953FC */ cpu->r[5] = cpu->r[5] + 0xFFFFFFFFu;
|
|
/* 02395400 */ cpu->ctr = cpu->r[27];
|
|
/* 02395404 */ cpu->r[7] = cpu->r[7] + 0xFFFFFFFFu;
|
|
L_02395408: ; // 0x2395408
|
|
/* 02395408 */ _t397 = cpu->r[7] + 0x00000001u;
|
|
/* 02395408 */ cpu->r[0] = rbrew_read8(cpu->mem, _t397);
|
|
/* 02395408 */ cpu->r[7] = _t397;
|
|
/* 0239540C */ _t398 = cpu->r[5] + 0x00000001u;
|
|
/* 0239540C */ cpu->r[12] = rbrew_read8(cpu->mem, _t398);
|
|
/* 0239540C */ cpu->r[5] = _t398;
|
|
/* 02395410 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[12]);
|
|
/* 02395414 */ _t399 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02395414 */ _t400 = _t399 & 0x00000001u;
|
|
/* 02395414 */ if (_t400) goto L_02395418; else goto L_02395424;
|
|
L_02395418: ; // 0x2395418
|
|
/* 02395418 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 0239541C */ _t401 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239541C */ _t402 = _t401 & 0x00000001u;
|
|
/* 0239541C */ if (_t402) goto L_02395428; else goto L_02395420;
|
|
L_02395420: ; // 0x2395420
|
|
/* 02395420 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02395420 */ _t403 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02395420 */ _t404 = _t403 >> (0x00000002u & 31u);
|
|
/* 02395420 */ _t405 = _t404 & 0x00000001u;
|
|
/* 02395420 */ if (_t405) goto L_02395408; else goto L_02395424;
|
|
L_02395424: ; // 0x2395424
|
|
/* 02395424 */ cpu->r[26] = 0x00000000u;
|
|
L_02395428: ; // 0x2395428
|
|
/* 02395428 */ cpu->r[7] = cpu->r[26] + 0xFFFFFFFFu;
|
|
/* 0239542C */ cpu->r[3] = cpu->r[26] - cpu->r[7];
|
|
/* 02395430 */ /* nop */
|
|
/* 02395434 */ _t406 = cpu->r[1] + 0x000000C4u;
|
|
/* 02395434 */ cpu->r[0] = rbrew_read32(cpu->mem, _t406);
|
|
/* 02395438 */ cpu->lr = cpu->r[0];
|
|
/* 0239543C */ cpu->r[1] = cpu->r[1] + 0x000000C0u;
|
|
/* 02395440 */ return;
|
|
}
|
|
|
|
// fn_02395444 @ 0x2395444
|
|
void Gambit_fn_02395444(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _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_02395444: ; // 0x2395444
|
|
/* 02395444 */ cpu->r[0] = cpu->lr;
|
|
/* 02395448 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02395448 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02395448 */ cpu->r[1] = _t0;
|
|
/* 0239544C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239544C */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 02395450 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 02395450 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02395454 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02395454 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 02395458 */ cpu->r[30] = cpu->r[3];
|
|
/* 02395458 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0239545C */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239545C */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02395460 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02395460 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02395460 */ if (_t6) goto L_02395510; else goto L_02395464;
|
|
L_02395464: ; // 0x2395464
|
|
/* 02395464 */ _t7 = cpu->r[30] + 0x000000A4u;
|
|
/* 02395464 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02395468 */ cpu->r[31] = 0x00000000u;
|
|
/* 0239546C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]);
|
|
/* 02395470 */ _t8 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02395470 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02395470 */ if (_t9) goto L_02395474; else goto L_02395510;
|
|
L_02395474: ; // 0x2395474
|
|
/* 02395474 */ cpu->r[29] = 0x101C0000u;
|
|
L_02395478: ; // 0x2395478
|
|
/* 02395478 */ _t10 = cpu->r[30] + 0x000000B4u;
|
|
/* 02395478 */ cpu->r[9] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0239547C */ _t11 = cpu->r[29] + 0x00006000u;
|
|
/* 0239547C */ cpu->r[8] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02395480 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[9]);
|
|
/* 02395484 */ _t12 = cpu->r[8] + 0x00000254u;
|
|
/* 02395484 */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02395488 */ _t13 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02395488 */ _t14 = _t13 & 0x00000001u;
|
|
/* 02395488 */ if (_t14) goto L_0239548C; else goto L_023954C8;
|
|
L_0239548C: ; // 0x239548c
|
|
/* 0239548C */ _t15 = cpu->r[30] + 0x000000B0u;
|
|
/* 0239548C */ cpu->r[10] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02395490 */ _t16 = cpu->r[30] + 0x000000ACu;
|
|
/* 02395490 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02395494 */ cpu->r[7] = cpu->r[10] + cpu->r[31];
|
|
/* 02395498 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], cpu->r[0]);
|
|
/* 0239549C */ _t17 = cpu->r[30] + 0x000000A8u;
|
|
/* 0239549C */ cpu->r[12] = rbrew_read32(cpu->mem, _t17);
|
|
/* 023954A0 */ _t18 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 023954A0 */ _t19 = _t18 & 0x00000001u;
|
|
/* 023954A0 */ if (_t19) goto L_023954A8; else goto L_023954A4;
|
|
L_023954A4: ; // 0x23954a4
|
|
/* 023954A4 */ cpu->r[7] = cpu->r[7] - cpu->r[0];
|
|
L_023954A8: ; // 0x23954a8
|
|
/* 023954A8 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[7] * (int32_t)0x00000118u);
|
|
/* 023954AC */ cpu->r[11] = cpu->r[12] + cpu->r[0];
|
|
/* 023954B0 */ cpu->r[4] = cpu->r[11] + 0x0000008Cu;
|
|
/* 023954B4 */ Gambit_fn_020EEE28(cpu);
|
|
/* 023954B8 */ Gambit_fn_023949D4(cpu);
|
|
/* 023954BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023954C0 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023954C0 */ _t21 = _t20 & 0x00000001u;
|
|
/* 023954C0 */ if (_t21) goto L_02395500; else goto L_023954C4;
|
|
L_023954C4: ; // 0x23954c4
|
|
/* 023954C4 */ goto L_023954E0;
|
|
L_023954C8: ; // 0x23954c8
|
|
/* 023954C8 */ _t22 = cpu->r[30] + 0x000000A8u;
|
|
/* 023954C8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t22);
|
|
/* 023954CC */ cpu->r[4] = cpu->r[11] + 0x0000008Cu;
|
|
/* 023954D0 */ Gambit_fn_020EEE28(cpu);
|
|
/* 023954D4 */ Gambit_fn_023949D4(cpu);
|
|
/* 023954D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023954DC */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023954DC */ _t24 = _t23 & 0x00000001u;
|
|
/* 023954DC */ if (_t24) goto L_02395500; else goto L_023954E0;
|
|
L_023954E0: ; // 0x23954e0
|
|
/* 023954E0 */ _t25 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023954E0 */ cpu->r[29] = rbrew_read32(cpu->mem, _t25);
|
|
/* 023954E4 */ _t26 = cpu->r[1] + 0x0000001Cu;
|
|
/* 023954E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t26);
|
|
/* 023954E8 */ _t27 = cpu->r[1] + 0x00000010u;
|
|
/* 023954E8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t27);
|
|
/* 023954EC */ cpu->lr = cpu->r[0];
|
|
/* 023954F0 */ _t28 = cpu->r[1] + 0x00000014u;
|
|
/* 023954F0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t28);
|
|
/* 023954F4 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 023954F8 */ cpu->r[3] = 0x00000001u;
|
|
/* 023954FC */ return;
|
|
L_02395500: ; // 0x2395500
|
|
/* 02395500 */ _t29 = cpu->r[30] + 0x000000A4u;
|
|
/* 02395500 */ cpu->r[9] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02395504 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 02395508 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[9]);
|
|
/* 0239550C */ _t30 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0239550C */ _t31 = _t30 & 0x00000001u;
|
|
/* 0239550C */ if (_t31) goto L_02395478; else goto L_02395510;
|
|
L_02395510: ; // 0x2395510
|
|
/* 02395510 */ _t32 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02395510 */ cpu->r[29] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02395514 */ _t33 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02395514 */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02395518 */ _t34 = cpu->r[1] + 0x00000010u;
|
|
/* 02395518 */ cpu->r[30] = rbrew_read32(cpu->mem, _t34);
|
|
/* 0239551C */ cpu->lr = cpu->r[0];
|
|
/* 02395520 */ _t35 = cpu->r[1] + 0x00000014u;
|
|
/* 02395520 */ cpu->r[31] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02395524 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02395528 */ cpu->r[3] = 0x00000000u;
|
|
/* 0239552C */ return;
|
|
}
|
|
|
|
// fn_02395448 @ 0x2395448
|
|
void Gambit_fn_02395448(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _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_02395448: ; // 0x2395448
|
|
/* 02395448 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02395448 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02395448 */ cpu->r[1] = _t0;
|
|
/* 0239544C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239544C */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 02395450 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 02395450 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02395454 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02395454 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 02395458 */ cpu->r[30] = cpu->r[3];
|
|
/* 02395458 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0239545C */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239545C */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02395460 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02395460 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02395460 */ if (_t6) goto L_02395510; else goto L_02395464;
|
|
L_02395464: ; // 0x2395464
|
|
/* 02395464 */ _t7 = cpu->r[30] + 0x000000A4u;
|
|
/* 02395464 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02395468 */ cpu->r[31] = 0x00000000u;
|
|
/* 0239546C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]);
|
|
/* 02395470 */ _t8 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02395470 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02395470 */ if (_t9) goto L_02395474; else goto L_02395510;
|
|
L_02395474: ; // 0x2395474
|
|
/* 02395474 */ cpu->r[29] = 0x101C0000u;
|
|
L_02395478: ; // 0x2395478
|
|
/* 02395478 */ _t10 = cpu->r[30] + 0x000000B4u;
|
|
/* 02395478 */ cpu->r[9] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0239547C */ _t11 = cpu->r[29] + 0x00006000u;
|
|
/* 0239547C */ cpu->r[8] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02395480 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[9]);
|
|
/* 02395484 */ _t12 = cpu->r[8] + 0x00000254u;
|
|
/* 02395484 */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02395488 */ _t13 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02395488 */ _t14 = _t13 & 0x00000001u;
|
|
/* 02395488 */ if (_t14) goto L_0239548C; else goto L_023954C8;
|
|
L_0239548C: ; // 0x239548c
|
|
/* 0239548C */ _t15 = cpu->r[30] + 0x000000B0u;
|
|
/* 0239548C */ cpu->r[10] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02395490 */ _t16 = cpu->r[30] + 0x000000ACu;
|
|
/* 02395490 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02395494 */ cpu->r[7] = cpu->r[10] + cpu->r[31];
|
|
/* 02395498 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], cpu->r[0]);
|
|
/* 0239549C */ _t17 = cpu->r[30] + 0x000000A8u;
|
|
/* 0239549C */ cpu->r[12] = rbrew_read32(cpu->mem, _t17);
|
|
/* 023954A0 */ _t18 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 023954A0 */ _t19 = _t18 & 0x00000001u;
|
|
/* 023954A0 */ if (_t19) goto L_023954A8; else goto L_023954A4;
|
|
L_023954A4: ; // 0x23954a4
|
|
/* 023954A4 */ cpu->r[7] = cpu->r[7] - cpu->r[0];
|
|
L_023954A8: ; // 0x23954a8
|
|
/* 023954A8 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[7] * (int32_t)0x00000118u);
|
|
/* 023954AC */ cpu->r[11] = cpu->r[12] + cpu->r[0];
|
|
/* 023954B0 */ cpu->r[4] = cpu->r[11] + 0x0000008Cu;
|
|
/* 023954B4 */ Gambit_fn_020EEE28(cpu);
|
|
/* 023954B8 */ Gambit_fn_023949D4(cpu);
|
|
/* 023954BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023954C0 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023954C0 */ _t21 = _t20 & 0x00000001u;
|
|
/* 023954C0 */ if (_t21) goto L_02395500; else goto L_023954C4;
|
|
L_023954C4: ; // 0x23954c4
|
|
/* 023954C4 */ goto L_023954E0;
|
|
L_023954C8: ; // 0x23954c8
|
|
/* 023954C8 */ _t22 = cpu->r[30] + 0x000000A8u;
|
|
/* 023954C8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t22);
|
|
/* 023954CC */ cpu->r[4] = cpu->r[11] + 0x0000008Cu;
|
|
/* 023954D0 */ Gambit_fn_020EEE28(cpu);
|
|
/* 023954D4 */ Gambit_fn_023949D4(cpu);
|
|
/* 023954D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023954DC */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023954DC */ _t24 = _t23 & 0x00000001u;
|
|
/* 023954DC */ if (_t24) goto L_02395500; else goto L_023954E0;
|
|
L_023954E0: ; // 0x23954e0
|
|
/* 023954E0 */ _t25 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023954E0 */ cpu->r[29] = rbrew_read32(cpu->mem, _t25);
|
|
/* 023954E4 */ _t26 = cpu->r[1] + 0x0000001Cu;
|
|
/* 023954E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t26);
|
|
/* 023954E8 */ _t27 = cpu->r[1] + 0x00000010u;
|
|
/* 023954E8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t27);
|
|
/* 023954EC */ cpu->lr = cpu->r[0];
|
|
/* 023954F0 */ _t28 = cpu->r[1] + 0x00000014u;
|
|
/* 023954F0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t28);
|
|
/* 023954F4 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 023954F8 */ cpu->r[3] = 0x00000001u;
|
|
/* 023954FC */ return;
|
|
L_02395500: ; // 0x2395500
|
|
/* 02395500 */ _t29 = cpu->r[30] + 0x000000A4u;
|
|
/* 02395500 */ cpu->r[9] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02395504 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 02395508 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[9]);
|
|
/* 0239550C */ _t30 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0239550C */ _t31 = _t30 & 0x00000001u;
|
|
/* 0239550C */ if (_t31) goto L_02395478; else goto L_02395510;
|
|
L_02395510: ; // 0x2395510
|
|
/* 02395510 */ _t32 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02395510 */ cpu->r[29] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02395514 */ _t33 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02395514 */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02395518 */ _t34 = cpu->r[1] + 0x00000010u;
|
|
/* 02395518 */ cpu->r[30] = rbrew_read32(cpu->mem, _t34);
|
|
/* 0239551C */ cpu->lr = cpu->r[0];
|
|
/* 02395520 */ _t35 = cpu->r[1] + 0x00000014u;
|
|
/* 02395520 */ cpu->r[31] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02395524 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02395528 */ cpu->r[3] = 0x00000000u;
|
|
/* 0239552C */ return;
|
|
}
|
|
|
|
// fn_02395530 @ 0x2395530
|
|
void Gambit_fn_02395530(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_02395530: ; // 0x2395530
|
|
/* 02395530 */ cpu->r[0] = cpu->lr;
|
|
/* 02395534 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02395534 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02395534 */ cpu->r[1] = _t0;
|
|
/* 02395538 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 02395538 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0239553C */ cpu->r[0] = cpu->r[3];
|
|
/* 02395540 */ cpu->r[3] = 0x101C0000u;
|
|
/* 02395544 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02395544 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02395548 */ _t3 = cpu->r[3] + 0x00005BA8u;
|
|
/* 02395548 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0239554C */ cpu->r[5] = cpu->r[4];
|
|
/* 02395550 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02395554 */ cpu->r[31] = 0x00000000u;
|
|
/* 02395558 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02395558 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02395558 */ if (_t5) goto L_02395570; else goto L_0239555C;
|
|
L_0239555C: ; // 0x239555c
|
|
/* 0239555C */ cpu->r[4] = cpu->r[0];
|
|
/* 02395560 */ Gambit_fn_0239B954(cpu);
|
|
/* 02395564 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02395568 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02395568 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02395568 */ if (_t7) goto L_02395570; else goto L_0239556C;
|
|
L_0239556C: ; // 0x239556c
|
|
/* 0239556C */ cpu->r[31] = 0x00000001u;
|
|
L_02395570: ; // 0x2395570
|
|
/* 02395570 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 02395570 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02395574 */ cpu->r[3] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 02395578 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02395578 */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0239557C */ cpu->lr = cpu->r[0];
|
|
/* 02395580 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02395584 */ return;
|
|
}
|
|
|
|
// fn_02395534 @ 0x2395534
|
|
void Gambit_fn_02395534(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_02395534: ; // 0x2395534
|
|
/* 02395534 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02395534 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02395534 */ cpu->r[1] = _t0;
|
|
/* 02395538 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 02395538 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0239553C */ cpu->r[0] = cpu->r[3];
|
|
/* 02395540 */ cpu->r[3] = 0x101C0000u;
|
|
/* 02395544 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02395544 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02395548 */ _t3 = cpu->r[3] + 0x00005BA8u;
|
|
/* 02395548 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0239554C */ cpu->r[5] = cpu->r[4];
|
|
/* 02395550 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02395554 */ cpu->r[31] = 0x00000000u;
|
|
/* 02395558 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02395558 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02395558 */ if (_t5) goto L_02395570; else goto L_0239555C;
|
|
L_0239555C: ; // 0x239555c
|
|
/* 0239555C */ cpu->r[4] = cpu->r[0];
|
|
/* 02395560 */ Gambit_fn_0239B954(cpu);
|
|
/* 02395564 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02395568 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02395568 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02395568 */ if (_t7) goto L_02395570; else goto L_0239556C;
|
|
L_0239556C: ; // 0x239556c
|
|
/* 0239556C */ cpu->r[31] = 0x00000001u;
|
|
L_02395570: ; // 0x2395570
|
|
/* 02395570 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 02395570 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02395574 */ cpu->r[3] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 02395578 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02395578 */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0239557C */ cpu->lr = cpu->r[0];
|
|
/* 02395580 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02395584 */ return;
|
|
}
|
|
|
|
// fn_02395588 @ 0x2395588
|
|
void Gambit_fn_02395588(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36;
|
|
|
|
L_02395588: ; // 0x2395588
|
|
/* 02395588 */ cpu->r[0] = cpu->lr;
|
|
/* 0239558C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0239558C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239558C */ cpu->r[1] = _t0;
|
|
/* 02395590 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02395590 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 02395594 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 02395594 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02395598 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02395598 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 0239559C */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239559C */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 023955A0 */ cpu->r[29] = cpu->r[3];
|
|
/* 023955A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x000000FFu);
|
|
/* 023955A8 */ cpu->r[30] = cpu->r[4];
|
|
/* 023955AC */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023955AC */ _t6 = _t5 & 0x00000001u;
|
|
/* 023955AC */ if (_t6) goto L_02395644; else goto L_023955B0;
|
|
L_023955B0: ; // 0x23955b0
|
|
/* 023955B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x000000FEu);
|
|
/* 023955B4 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023955B4 */ _t8 = _t7 & 0x00000001u;
|
|
/* 023955B4 */ if (_t8) goto L_02395644; else goto L_023955B8;
|
|
L_023955B8: ; // 0x23955b8
|
|
/* 023955B8 */ cpu->r[12] = 0x101C0000u;
|
|
/* 023955BC */ cpu->r[11] = 0x101D0000u;
|
|
/* 023955C0 */ _t9 = cpu->r[12] + 0x00006000u;
|
|
/* 023955C0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 023955C4 */ _t10 = cpu->r[11] + 0xFFFFDD64u;
|
|
/* 023955C4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 023955C4 */ cpu->r[11] = _t10;
|
|
/* 023955C8 */ _t11 = cpu->r[12] + 0x000002A4u;
|
|
/* 023955C8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 023955CC */ cpu->r[4] = 0x101D0000u;
|
|
/* 023955D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 023955D4 */ cpu->r[4] = cpu->r[4] + 0xFFFFDD68u;
|
|
/* 023955D8 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023955D8 */ _t13 = _t12 & 0x00000001u;
|
|
/* 023955D8 */ if (_t13) goto L_023955DC; else goto L_023955F0;
|
|
L_023955DC: ; // 0x23955dc
|
|
/* 023955DC */ cpu->r[0] = 0x10080000u;
|
|
/* 023955E0 */ cpu->r[5] = 0x00000001u;
|
|
/* 023955E4 */ cpu->r[0] = cpu->r[0] + 0x000065B0u;
|
|
/* 023955E8 */ _t14 = cpu->r[11] + 0x00000000u;
|
|
/* 023955E8 */ rbrew_write32(cpu->mem, _t14, cpu->r[5]);
|
|
/* 023955EC */ _t15 = cpu->r[4] + 0x00000000u;
|
|
/* 023955EC */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
L_023955F0: ; // 0x23955f0
|
|
/* 023955F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 023955F4 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023955F4 */ _t17 = _t16 & 0x00000001u;
|
|
/* 023955F4 */ if (_t17) goto L_02395644; else goto L_023955F8;
|
|
L_023955F8: ; // 0x23955f8
|
|
/* 023955F8 */ _t18 = cpu->r[31] + 0x00000004u;
|
|
/* 023955F8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t18);
|
|
/* 023955FC */ _t19 = cpu->r[8] + 0x00000014u;
|
|
/* 023955FC */ cpu->r[6] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02395600 */ cpu->ctr = cpu->r[6];
|
|
/* 02395604 */ cpu->r[3] = cpu->r[31];
|
|
/* 02395608 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0239560C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02395610 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02395610 */ _t21 = _t20 & 0x00000001u;
|
|
/* 02395610 */ if (_t21) goto L_02395644; else goto L_02395614;
|
|
L_02395614: ; // 0x2395614
|
|
/* 02395614 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02395618 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02395618 */ _t23 = _t22 & 0x00000001u;
|
|
/* 02395618 */ if (_t23) goto L_02395644; else goto L_0239561C;
|
|
L_0239561C: ; // 0x239561c
|
|
/* 0239561C */ _t24 = cpu->r[30] + 0x00000000u;
|
|
/* 0239561C */ cpu->r[3] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02395620 */ cpu->r[5] = 0x10080000u;
|
|
/* 02395624 */ cpu->r[0] = 0x00000000u;
|
|
/* 02395628 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0239562C */ cpu->r[5] = cpu->r[5] + 0x000066F8u;
|
|
/* 02395630 */ _t25 = cpu->r[1] + 0x00000008u;
|
|
/* 02395630 */ rbrew_write8(cpu->mem, _t25, (uint8_t)cpu->r[0]);
|
|
/* 02395634 */ Gambit_fn_027DBC88(cpu);
|
|
/* 02395638 */ _t26 = cpu->r[1] + 0x00000008u;
|
|
/* 02395638 */ cpu->r[10] = rbrew_read8(cpu->mem, _t26);
|
|
/* 0239563C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02395640 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02395640 */ _t28 = _t27 & 0x00000001u;
|
|
/* 02395640 */ if (_t28) goto L_02395644; else goto L_02395664;
|
|
L_02395644: ; // 0x2395644
|
|
/* 02395644 */ _t29 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02395644 */ cpu->r[29] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02395648 */ _t30 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02395648 */ cpu->r[0] = rbrew_read32(cpu->mem, _t30);
|
|
/* 0239564C */ _t31 = cpu->r[1] + 0x00000010u;
|
|
/* 0239564C */ cpu->r[30] = rbrew_read32(cpu->mem, _t31);
|
|
/* 02395650 */ cpu->lr = cpu->r[0];
|
|
/* 02395654 */ _t32 = cpu->r[1] + 0x00000014u;
|
|
/* 02395654 */ cpu->r[31] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02395658 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0239565C */ cpu->r[3] = 0x00000000u;
|
|
/* 02395660 */ return;
|
|
L_02395664: ; // 0x2395664
|
|
/* 02395664 */ cpu->r[5] = 0x00000000u;
|
|
/* 02395668 */ cpu->r[4] = cpu->r[29];
|
|
/* 0239566C */ cpu->r[3] = cpu->r[31];
|
|
/* 02395670 */ Gambit_fn_026A9C9C(cpu);
|
|
/* 02395674 */ _t33 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02395674 */ cpu->r[29] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02395678 */ _t34 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02395678 */ cpu->r[0] = rbrew_read32(cpu->mem, _t34);
|
|
/* 0239567C */ _t35 = cpu->r[1] + 0x00000010u;
|
|
/* 0239567C */ cpu->r[30] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02395680 */ cpu->lr = cpu->r[0];
|
|
/* 02395684 */ _t36 = cpu->r[1] + 0x00000014u;
|
|
/* 02395684 */ cpu->r[31] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02395688 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0239568C */ cpu->r[3] = 0x00000001u;
|
|
/* 02395690 */ return;
|
|
}
|
|
|
|
// fn_0239558C @ 0x239558c
|
|
void Gambit_fn_0239558C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36;
|
|
|
|
L_0239558C: ; // 0x239558c
|
|
/* 0239558C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0239558C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239558C */ cpu->r[1] = _t0;
|
|
/* 02395590 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02395590 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 02395594 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 02395594 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02395598 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02395598 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 0239559C */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239559C */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 023955A0 */ cpu->r[29] = cpu->r[3];
|
|
/* 023955A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x000000FFu);
|
|
/* 023955A8 */ cpu->r[30] = cpu->r[4];
|
|
/* 023955AC */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023955AC */ _t6 = _t5 & 0x00000001u;
|
|
/* 023955AC */ if (_t6) goto L_02395644; else goto L_023955B0;
|
|
L_023955B0: ; // 0x23955b0
|
|
/* 023955B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x000000FEu);
|
|
/* 023955B4 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023955B4 */ _t8 = _t7 & 0x00000001u;
|
|
/* 023955B4 */ if (_t8) goto L_02395644; else goto L_023955B8;
|
|
L_023955B8: ; // 0x23955b8
|
|
/* 023955B8 */ cpu->r[12] = 0x101C0000u;
|
|
/* 023955BC */ cpu->r[11] = 0x101D0000u;
|
|
/* 023955C0 */ _t9 = cpu->r[12] + 0x00006000u;
|
|
/* 023955C0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 023955C4 */ _t10 = cpu->r[11] + 0xFFFFDD64u;
|
|
/* 023955C4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 023955C4 */ cpu->r[11] = _t10;
|
|
/* 023955C8 */ _t11 = cpu->r[12] + 0x000002A4u;
|
|
/* 023955C8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 023955CC */ cpu->r[4] = 0x101D0000u;
|
|
/* 023955D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 023955D4 */ cpu->r[4] = cpu->r[4] + 0xFFFFDD68u;
|
|
/* 023955D8 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023955D8 */ _t13 = _t12 & 0x00000001u;
|
|
/* 023955D8 */ if (_t13) goto L_023955DC; else goto L_023955F0;
|
|
L_023955DC: ; // 0x23955dc
|
|
/* 023955DC */ cpu->r[0] = 0x10080000u;
|
|
/* 023955E0 */ cpu->r[5] = 0x00000001u;
|
|
/* 023955E4 */ cpu->r[0] = cpu->r[0] + 0x000065B0u;
|
|
/* 023955E8 */ _t14 = cpu->r[11] + 0x00000000u;
|
|
/* 023955E8 */ rbrew_write32(cpu->mem, _t14, cpu->r[5]);
|
|
/* 023955EC */ _t15 = cpu->r[4] + 0x00000000u;
|
|
/* 023955EC */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
L_023955F0: ; // 0x23955f0
|
|
/* 023955F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 023955F4 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023955F4 */ _t17 = _t16 & 0x00000001u;
|
|
/* 023955F4 */ if (_t17) goto L_02395644; else goto L_023955F8;
|
|
L_023955F8: ; // 0x23955f8
|
|
/* 023955F8 */ _t18 = cpu->r[31] + 0x00000004u;
|
|
/* 023955F8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t18);
|
|
/* 023955FC */ _t19 = cpu->r[8] + 0x00000014u;
|
|
/* 023955FC */ cpu->r[6] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02395600 */ cpu->ctr = cpu->r[6];
|
|
/* 02395604 */ cpu->r[3] = cpu->r[31];
|
|
/* 02395608 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0239560C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02395610 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02395610 */ _t21 = _t20 & 0x00000001u;
|
|
/* 02395610 */ if (_t21) goto L_02395644; else goto L_02395614;
|
|
L_02395614: ; // 0x2395614
|
|
/* 02395614 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02395618 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02395618 */ _t23 = _t22 & 0x00000001u;
|
|
/* 02395618 */ if (_t23) goto L_02395644; else goto L_0239561C;
|
|
L_0239561C: ; // 0x239561c
|
|
/* 0239561C */ _t24 = cpu->r[30] + 0x00000000u;
|
|
/* 0239561C */ cpu->r[3] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02395620 */ cpu->r[5] = 0x10080000u;
|
|
/* 02395624 */ cpu->r[0] = 0x00000000u;
|
|
/* 02395628 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0239562C */ cpu->r[5] = cpu->r[5] + 0x000066F8u;
|
|
/* 02395630 */ _t25 = cpu->r[1] + 0x00000008u;
|
|
/* 02395630 */ rbrew_write8(cpu->mem, _t25, (uint8_t)cpu->r[0]);
|
|
/* 02395634 */ Gambit_fn_027DBC88(cpu);
|
|
/* 02395638 */ _t26 = cpu->r[1] + 0x00000008u;
|
|
/* 02395638 */ cpu->r[10] = rbrew_read8(cpu->mem, _t26);
|
|
/* 0239563C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02395640 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02395640 */ _t28 = _t27 & 0x00000001u;
|
|
/* 02395640 */ if (_t28) goto L_02395644; else goto L_02395664;
|
|
L_02395644: ; // 0x2395644
|
|
/* 02395644 */ _t29 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02395644 */ cpu->r[29] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02395648 */ _t30 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02395648 */ cpu->r[0] = rbrew_read32(cpu->mem, _t30);
|
|
/* 0239564C */ _t31 = cpu->r[1] + 0x00000010u;
|
|
/* 0239564C */ cpu->r[30] = rbrew_read32(cpu->mem, _t31);
|
|
/* 02395650 */ cpu->lr = cpu->r[0];
|
|
/* 02395654 */ _t32 = cpu->r[1] + 0x00000014u;
|
|
/* 02395654 */ cpu->r[31] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02395658 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0239565C */ cpu->r[3] = 0x00000000u;
|
|
/* 02395660 */ return;
|
|
L_02395664: ; // 0x2395664
|
|
/* 02395664 */ cpu->r[5] = 0x00000000u;
|
|
/* 02395668 */ cpu->r[4] = cpu->r[29];
|
|
/* 0239566C */ cpu->r[3] = cpu->r[31];
|
|
/* 02395670 */ Gambit_fn_026A9C9C(cpu);
|
|
/* 02395674 */ _t33 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02395674 */ cpu->r[29] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02395678 */ _t34 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02395678 */ cpu->r[0] = rbrew_read32(cpu->mem, _t34);
|
|
/* 0239567C */ _t35 = cpu->r[1] + 0x00000010u;
|
|
/* 0239567C */ cpu->r[30] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02395680 */ cpu->lr = cpu->r[0];
|
|
/* 02395684 */ _t36 = cpu->r[1] + 0x00000014u;
|
|
/* 02395684 */ cpu->r[31] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02395688 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0239568C */ cpu->r[3] = 0x00000001u;
|
|
/* 02395690 */ return;
|
|
}
|
|
|
|
// fn_02395694 @ 0x2395694
|
|
void Gambit_fn_02395694(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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;
|
|
|
|
L_02395694: ; // 0x2395694
|
|
/* 02395694 */ _t0 = cpu->r[1] + 0xFFFFFF50u;
|
|
/* 02395694 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02395694 */ cpu->r[1] = _t0;
|
|
/* 02395698 */ /* nop */
|
|
/* 0239569C */ /* nop */
|
|
/* 023956A0 */ /* nop */
|
|
/* 023956A4 */ /* nop */
|
|
/* 023956A8 */ _t1 = cpu->r[4] + 0x0000000Cu;
|
|
/* 023956A8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 023956AC */ /* nop */
|
|
/* 023956B0 */ _t2 = cpu->r[5] + 0x00000008u;
|
|
/* 023956B0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 023956B4 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 023956B4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 023956B8 */ cpu->f[0] = cpu->f[13] - cpu->f[0];
|
|
/* 023956BC */ _t4 = cpu->r[1] + 0x00000018u;
|
|
/* 023956BC */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 023956C0 */ _t5 = cpu->r[1] + 0x000000A4u;
|
|
/* 023956C0 */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 023956C4 */ _t6 = cpu->r[1] + 0x000000A8u;
|
|
/* 023956C4 */ rbrew_write32(cpu->mem, _t6, cpu->r[12]);
|
|
/* 023956C8 */ /* nop */
|
|
/* 023956CC */ _t7 = cpu->r[1] + 0x0000001Cu;
|
|
/* 023956CC */ rbrew_write_f32(cpu->mem, _t7, cpu->f[0]);
|
|
/* 023956D0 */ /* nop */
|
|
/* 023956D4 */ /* nop */
|
|
/* 023956D8 */ /* nop */
|
|
/* 023956DC */ cpu->f[9] = cpu->f[12];
|
|
/* 023956E0 */ _t8 = cpu->r[1] + 0x0000001Cu;
|
|
/* 023956E0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 023956E4 */ /* nop */
|
|
/* 023956E8 */ /* nop */
|
|
/* 023956EC */ /* nop */
|
|
/* 023956F0 */ cpu->f[7] = cpu->f[11];
|
|
/* 023956F4 */ _t9 = cpu->r[1] + 0x000000ACu;
|
|
/* 023956F4 */ rbrew_write32(cpu->mem, _t9, cpu->r[12]);
|
|
/* 023956F8 */ /* nop */
|
|
/* 023956FC */ _t10 = cpu->r[4] + 0x00000018u;
|
|
/* 023956FC */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 02395700 */ /* nop */
|
|
/* 02395704 */ _t11 = cpu->r[1] + 0x000000ACu;
|
|
/* 02395704 */ cpu->f[2] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 02395708 */ cpu->f[11] = cpu->f[13];
|
|
/* 0239570C */ _t12 = cpu->r[4] + 0x00000024u;
|
|
/* 0239570C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 02395710 */ cpu->f[13] = fma(cpu->f[2], cpu->f[8], cpu->f[7]);
|
|
/* 02395714 */ _t13 = cpu->r[4] + 0x00000030u;
|
|
/* 02395714 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 02395718 */ cpu->f[10] = fma(cpu->f[2], cpu->f[10], cpu->f[9]);
|
|
/* 0239571C */ _t14 = cpu->r[4] + 0x00000034u;
|
|
/* 0239571C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 02395720 */ cpu->f[9] = fma(cpu->f[2], cpu->f[12], cpu->f[11]);
|
|
/* 02395724 */ _t15 = cpu->r[1] + 0x00000008u;
|
|
/* 02395724 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[13]);
|
|
/* 02395728 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[13]);
|
|
/* 0239572C */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239572C */ rbrew_write_f32(cpu->mem, _t16, cpu->f[10]);
|
|
/* 02395730 */ _t17 = cpu->r[1] + 0x00000010u;
|
|
/* 02395730 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[9]);
|
|
/* 02395734 */ _t18 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02395734 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02395734 */ if (_t19) goto L_02395738; else goto L_02395740;
|
|
L_02395738: ; // 0x2395738
|
|
/* 02395738 */ cpu->f[13] = cpu->f[0];
|
|
/* 0239573C */ goto L_02395750;
|
|
L_02395740: ; // 0x2395740
|
|
/* 02395740 */ cpu->f[0] = -cpu->f[0];
|
|
/* 02395744 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[13]);
|
|
/* 02395748 */ _t20 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02395748 */ _t21 = _t20 & 0x00000001u;
|
|
/* 02395748 */ if (_t21) goto L_0239574C; else goto L_02395750;
|
|
L_0239574C: ; // 0x239574c
|
|
/* 0239574C */ cpu->f[13] = cpu->f[0];
|
|
L_02395750: ; // 0x2395750
|
|
/* 02395750 */ _t22 = cpu->r[4] + 0x00000038u;
|
|
/* 02395750 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 02395754 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[10]);
|
|
/* 02395758 */ _t23 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02395758 */ _t24 = _t23 & 0x00000001u;
|
|
/* 02395758 */ if (_t24) goto L_0239575C; else goto L_02395764;
|
|
L_0239575C: ; // 0x239575c
|
|
/* 0239575C */ _t25 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239575C */ rbrew_write_f32(cpu->mem, _t25, cpu->f[0]);
|
|
/* 02395760 */ goto L_02395774;
|
|
L_02395764: ; // 0x2395764
|
|
/* 02395764 */ cpu->f[0] = -cpu->f[0];
|
|
/* 02395768 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[10]);
|
|
/* 0239576C */ _t26 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0239576C */ _t27 = _t26 & 0x00000001u;
|
|
/* 0239576C */ if (_t27) goto L_02395770; else goto L_02395774;
|
|
L_02395770: ; // 0x2395770
|
|
/* 02395770 */ _t28 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02395770 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[0]);
|
|
L_02395774: ; // 0x2395774
|
|
/* 02395774 */ _t29 = cpu->r[4] + 0x0000003Cu;
|
|
/* 02395774 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 02395778 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[9]);
|
|
/* 0239577C */ _t30 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0239577C */ _t31 = _t30 & 0x00000001u;
|
|
/* 0239577C */ if (_t31) goto L_02395780; else goto L_02395788;
|
|
L_02395780: ; // 0x2395780
|
|
/* 02395780 */ _t32 = cpu->r[1] + 0x00000010u;
|
|
/* 02395780 */ rbrew_write_f32(cpu->mem, _t32, cpu->f[0]);
|
|
/* 02395784 */ goto L_02395798;
|
|
L_02395788: ; // 0x2395788
|
|
/* 02395788 */ cpu->f[0] = -cpu->f[0];
|
|
/* 0239578C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[9]);
|
|
/* 02395790 */ _t33 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02395790 */ _t34 = _t33 & 0x00000001u;
|
|
/* 02395790 */ if (_t34) goto L_02395794; else goto L_02395798;
|
|
L_02395794: ; // 0x2395794
|
|
/* 02395794 */ _t35 = cpu->r[1] + 0x00000010u;
|
|
/* 02395794 */ rbrew_write_f32(cpu->mem, _t35, cpu->f[0]);
|
|
L_02395798: ; // 0x2395798
|
|
/* 02395798 */ _t36 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02395798 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 0239579C */ /* nop */
|
|
/* 023957A0 */ _t37 = cpu->r[4] + 0x00000024u;
|
|
/* 023957A0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 023957A4 */ /* nop */
|
|
/* 023957A8 */ /* nop */
|
|
/* 023957AC */ _t38 = cpu->r[1] + 0x00000020u;
|
|
/* 023957AC */ cpu->r[8] = rbrew_read32(cpu->mem, _t38);
|
|
/* 023957B0 */ /* nop */
|
|
/* 023957B4 */ _t39 = cpu->r[1] + 0x00000030u;
|
|
/* 023957B4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t39);
|
|
/* 023957B8 */ _t40 = cpu->r[1] + 0x0000002Cu;
|
|
/* 023957B8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t40);
|
|
/* 023957BC */ _t41 = cpu->r[1] + 0x00000090u;
|
|
/* 023957BC */ rbrew_write32(cpu->mem, _t41, cpu->r[12]);
|
|
/* 023957C0 */ _t42 = cpu->r[4] + 0x00000018u;
|
|
/* 023957C0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 023957C4 */ cpu->f[0] = cpu->f[0] * cpu->f[10];
|
|
/* 023957C8 */ _t43 = cpu->r[1] + 0x00000024u;
|
|
/* 023957C8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t43);
|
|
/* 023957CC */ _t44 = cpu->r[1] + 0x0000008Cu;
|
|
/* 023957CC */ rbrew_write32(cpu->mem, _t44, cpu->r[11]);
|
|
/* 023957D0 */ /* nop */
|
|
/* 023957D4 */ cpu->f[13] = cpu->f[11] * cpu->f[13];
|
|
/* 023957D8 */ _t45 = cpu->r[1] + 0x00000080u;
|
|
/* 023957D8 */ rbrew_write32(cpu->mem, _t45, cpu->r[8]);
|
|
/* 023957DC */ _t46 = cpu->r[1] + 0x00000084u;
|
|
/* 023957DC */ rbrew_write32(cpu->mem, _t46, cpu->r[12]);
|
|
/* 023957E0 */ /* nop */
|
|
/* 023957E4 */ _t47 = cpu->r[1] + 0x00000028u;
|
|
/* 023957E4 */ rbrew_write_f32(cpu->mem, _t47, cpu->f[13]);
|
|
/* 023957E8 */ _t48 = cpu->r[1] + 0x00000028u;
|
|
/* 023957E8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t48);
|
|
/* 023957EC */ /* nop */
|
|
/* 023957F0 */ _t49 = cpu->r[1] + 0x00000010u;
|
|
/* 023957F0 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t49);
|
|
/* 023957F4 */ _t50 = cpu->r[1] + 0x00000034u;
|
|
/* 023957F4 */ rbrew_write_f32(cpu->mem, _t50, cpu->f[0]);
|
|
/* 023957F8 */ _t51 = cpu->r[4] + 0x00000030u;
|
|
/* 023957F8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t51);
|
|
/* 023957FC */ _t52 = cpu->r[1] + 0x00000034u;
|
|
/* 023957FC */ cpu->r[12] = rbrew_read32(cpu->mem, _t52);
|
|
/* 02395800 */ cpu->f[0] = cpu->f[0] * cpu->f[9];
|
|
/* 02395804 */ _t53 = cpu->r[1] + 0x00000094u;
|
|
/* 02395804 */ rbrew_write32(cpu->mem, _t53, cpu->r[12]);
|
|
/* 02395808 */ _t54 = cpu->r[1] + 0x00000094u;
|
|
/* 02395808 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 0239580C */ /* nop */
|
|
/* 02395810 */ _t55 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02395810 */ cpu->r[8] = rbrew_read32(cpu->mem, _t55);
|
|
/* 02395814 */ /* nop */
|
|
/* 02395818 */ _t56 = cpu->r[1] + 0x00000088u;
|
|
/* 02395818 */ rbrew_write32(cpu->mem, _t56, cpu->r[11]);
|
|
/* 0239581C */ /* nop */
|
|
/* 02395820 */ _t57 = cpu->r[1] + 0x00000048u;
|
|
/* 02395820 */ cpu->r[11] = rbrew_read32(cpu->mem, _t57);
|
|
/* 02395824 */ _t58 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02395824 */ rbrew_write_f32(cpu->mem, _t58, cpu->f[0]);
|
|
/* 02395828 */ _t59 = cpu->r[1] + 0x0000009Cu;
|
|
/* 02395828 */ rbrew_write32(cpu->mem, _t59, cpu->r[11]);
|
|
/* 0239582C */ _t60 = cpu->r[1] + 0x00000038u;
|
|
/* 0239582C */ cpu->r[12] = rbrew_read32(cpu->mem, _t60);
|
|
/* 02395830 */ _t61 = cpu->r[1] + 0x00000044u;
|
|
/* 02395830 */ cpu->r[10] = rbrew_read32(cpu->mem, _t61);
|
|
/* 02395834 */ _t62 = cpu->r[1] + 0x00000088u;
|
|
/* 02395834 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t62);
|
|
/* 02395838 */ _t63 = cpu->r[1] + 0x00000098u;
|
|
/* 02395838 */ rbrew_write32(cpu->mem, _t63, cpu->r[10]);
|
|
/* 0239583C */ /* nop */
|
|
/* 02395840 */ _t64 = cpu->r[1] + 0x00000074u;
|
|
/* 02395840 */ rbrew_write32(cpu->mem, _t64, cpu->r[12]);
|
|
/* 02395844 */ cpu->f[13] = cpu->f[11] + cpu->f[12];
|
|
/* 02395848 */ _t65 = cpu->r[1] + 0x00000078u;
|
|
/* 02395848 */ rbrew_write32(cpu->mem, _t65, cpu->r[8]);
|
|
/* 0239584C */ /* nop */
|
|
/* 02395850 */ _t66 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02395850 */ cpu->r[12] = rbrew_read32(cpu->mem, _t66);
|
|
/* 02395854 */ /* nop */
|
|
/* 02395858 */ _t67 = cpu->r[1] + 0x00000040u;
|
|
/* 02395858 */ rbrew_write_f32(cpu->mem, _t67, cpu->f[13]);
|
|
/* 0239585C */ _t68 = cpu->r[1] + 0x00000040u;
|
|
/* 0239585C */ cpu->r[8] = rbrew_read32(cpu->mem, _t68);
|
|
/* 02395860 */ /* nop */
|
|
/* 02395864 */ _t69 = cpu->r[1] + 0x00000054u;
|
|
/* 02395864 */ cpu->r[11] = rbrew_read32(cpu->mem, _t69);
|
|
/* 02395868 */ _t70 = cpu->r[1] + 0x000000A0u;
|
|
/* 02395868 */ rbrew_write32(cpu->mem, _t70, cpu->r[12]);
|
|
/* 0239586C */ _t71 = cpu->r[1] + 0x000000A0u;
|
|
/* 0239586C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t71);
|
|
/* 02395870 */ _t72 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02395870 */ rbrew_write32(cpu->mem, _t72, cpu->r[8]);
|
|
/* 02395874 */ _t73 = cpu->r[1] + 0x00000050u;
|
|
/* 02395874 */ cpu->r[10] = rbrew_read32(cpu->mem, _t73);
|
|
/* 02395878 */ _t74 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02395878 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t74);
|
|
/* 0239587C */ _t75 = cpu->r[1] + 0x00000068u;
|
|
/* 0239587C */ rbrew_write32(cpu->mem, _t75, cpu->r[10]);
|
|
/* 02395880 */ cpu->f[0] = cpu->f[13] + cpu->f[0];
|
|
/* 02395884 */ _t76 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02395884 */ rbrew_write32(cpu->mem, _t76, cpu->r[11]);
|
|
/* 02395888 */ /* nop */
|
|
/* 0239588C */ _t77 = cpu->r[1] + 0x00000058u;
|
|
/* 0239588C */ rbrew_write_f32(cpu->mem, _t77, cpu->f[0]);
|
|
/* 02395890 */ _t78 = cpu->r[1] + 0x00000058u;
|
|
/* 02395890 */ cpu->r[12] = rbrew_read32(cpu->mem, _t78);
|
|
/* 02395894 */ _t79 = cpu->r[4] + 0x0000000Cu;
|
|
/* 02395894 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t79);
|
|
/* 02395898 */ _t80 = cpu->r[1] + 0x00000070u;
|
|
/* 02395898 */ rbrew_write32(cpu->mem, _t80, cpu->r[12]);
|
|
/* 0239589C */ /* nop */
|
|
/* 023958A0 */ _t81 = cpu->r[1] + 0x00000070u;
|
|
/* 023958A0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t81);
|
|
/* 023958A4 */ /* nop */
|
|
/* 023958A8 */ _t82 = cpu->r[1] + 0x0000005Cu;
|
|
/* 023958A8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t82);
|
|
/* 023958AC */ cpu->f[0] = cpu->f[13] + cpu->f[0];
|
|
/* 023958B0 */ _t83 = cpu->r[1] + 0x00000060u;
|
|
/* 023958B0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t83);
|
|
/* 023958B4 */ _t84 = cpu->r[3] + 0x00000000u;
|
|
/* 023958B4 */ rbrew_write32(cpu->mem, _t84, cpu->r[12]);
|
|
/* 023958B8 */ _t85 = cpu->r[1] + 0x00000064u;
|
|
/* 023958B8 */ rbrew_write_f32(cpu->mem, _t85, cpu->f[0]);
|
|
/* 023958BC */ _t86 = cpu->r[1] + 0x00000064u;
|
|
/* 023958BC */ cpu->r[12] = rbrew_read32(cpu->mem, _t86);
|
|
/* 023958C0 */ _t87 = cpu->r[3] + 0x00000004u;
|
|
/* 023958C0 */ rbrew_write32(cpu->mem, _t87, cpu->r[11]);
|
|
/* 023958C4 */ _t88 = cpu->r[3] + 0x00000008u;
|
|
/* 023958C4 */ rbrew_write32(cpu->mem, _t88, cpu->r[12]);
|
|
/* 023958C8 */ cpu->r[1] = cpu->r[1] + 0x000000B0u;
|
|
/* 023958CC */ return;
|
|
}
|
|
|
|
// fn_023958D0 @ 0x23958d0
|
|
void Gambit_fn_023958D0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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_023958D0: ; // 0x23958d0
|
|
/* 023958D0 */ _t0 = cpu->r[1] + 0xFFFFFF98u;
|
|
/* 023958D0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 023958D0 */ cpu->r[1] = _t0;
|
|
/* 023958D4 */ _t1 = cpu->r[1] + 0x00000028u;
|
|
/* 023958D4 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[28]);
|
|
/* 023958D8 */ /* nop */
|
|
/* 023958DC */ _t2 = cpu->r[1] + 0x00000058u;
|
|
/* 023958DC */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 023958E0 */ /* nop */
|
|
/* 023958E4 */ /* nop */
|
|
/* 023958E8 */ cpu->r[0] = cpu->lr;
|
|
/* 023958EC */ _t3 = cpu->r[1] + 0x00000048u;
|
|
/* 023958EC */ rbrew_write_f64(cpu->mem, _t3, cpu->f[30]);
|
|
/* 023958F0 */ _t4 = cpu->r[1] + 0x00000030u;
|
|
/* 023958F0 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[28]);
|
|
/* 023958F4 */ /* nop */
|
|
/* 023958F8 */ _t5 = cpu->r[1] + 0x00000038u;
|
|
/* 023958F8 */ rbrew_write_f64(cpu->mem, _t5, cpu->f[29]);
|
|
/* 023958FC */ _t6 = cpu->r[1] + 0x00000060u;
|
|
/* 023958FC */ rbrew_write_f32(cpu->mem, _t6, cpu->f[31]);
|
|
/* 02395900 */ /* nop */
|
|
/* 02395904 */ _t7 = cpu->r[1] + 0x00000050u;
|
|
/* 02395904 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[30]);
|
|
/* 02395908 */ cpu->r[8] = 0xFFFFFFFDu;
|
|
/* 0239590C */ _t8 = cpu->r[1] + 0x00000040u;
|
|
/* 0239590C */ rbrew_write_f32(cpu->mem, _t8, cpu->f[29]);
|
|
/* 02395910 */ cpu->r[4] = 0xFFFFFFFFu;
|
|
/* 02395914 */ cpu->r[7] = 0x101E0000u;
|
|
/* 02395918 */ _t9 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02395918 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 0239591C */ cpu->r[6] = 0xFFFFFFFEu;
|
|
/* 02395920 */ _t10 = cpu->r[7] + 0x00004920u;
|
|
/* 02395920 */ rbrew_write32(cpu->mem, _t10, cpu->r[8]);
|
|
/* 02395920 */ cpu->r[7] = _t10;
|
|
/* 02395924 */ cpu->r[5] = 0x101E0000u;
|
|
/* 02395928 */ cpu->r[10] = 0x101E0000u;
|
|
/* 0239592C */ _t11 = cpu->r[5] + 0x00004928u;
|
|
/* 0239592C */ rbrew_write32(cpu->mem, _t11, cpu->r[6]);
|
|
/* 0239592C */ cpu->r[5] = _t11;
|
|
/* 02395930 */ cpu->r[10] = cpu->r[10] + 0x00004938u;
|
|
/* 02395934 */ _t12 = cpu->r[7] + 0x00000004u;
|
|
/* 02395934 */ rbrew_write32(cpu->mem, _t12, cpu->r[4]);
|
|
/* 02395938 */ cpu->r[9] = 0x101F0000u;
|
|
/* 0239593C */ _t13 = cpu->r[10] + 0x00000004u;
|
|
/* 0239593C */ rbrew_write32(cpu->mem, _t13, cpu->r[4]);
|
|
/* 02395940 */ cpu->r[9] = cpu->r[9] + 0x00005BFCu;
|
|
/* 02395944 */ _t14 = cpu->r[5] + 0x00000004u;
|
|
/* 02395944 */ rbrew_write32(cpu->mem, _t14, cpu->r[4]);
|
|
/* 02395948 */ cpu->r[12] = 0x101E0000u;
|
|
/* 0239594C */ _t15 = cpu->r[9] + 0x00000008u;
|
|
/* 0239594C */ cpu->r[29] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02395950 */ cpu->r[31] = 0x101E0000u;
|
|
/* 02395954 */ _t16 = cpu->r[12] + 0x00004930u;
|
|
/* 02395954 */ rbrew_write32(cpu->mem, _t16, cpu->r[4]);
|
|
/* 02395954 */ cpu->r[12] = _t16;
|
|
/* 02395958 */ cpu->r[11] = 0x00000002u;
|
|
/* 0239595C */ _t17 = cpu->r[9] + 0x00000004u;
|
|
/* 0239595C */ cpu->r[26] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02395960 */ _t18 = cpu->r[9] + 0x00000000u;
|
|
/* 02395960 */ cpu->r[28] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02395964 */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 02395964 */ rbrew_write32(cpu->mem, _t19, cpu->r[11]);
|
|
/* 02395968 */ _t20 = cpu->r[1] + 0x00000008u;
|
|
/* 02395968 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0239596C */ _t21 = cpu->r[31] + 0x0000494Cu;
|
|
/* 0239596C */ rbrew_write32(cpu->mem, _t21, cpu->r[28]);
|
|
/* 0239596C */ cpu->r[31] = _t21;
|
|
/* 02395970 */ cpu->r[0] = 0x00000004u;
|
|
/* 02395974 */ _t22 = cpu->r[12] + 0x00000004u;
|
|
/* 02395974 */ rbrew_write32(cpu->mem, _t22, cpu->r[4]);
|
|
/* 02395978 */ cpu->r[12] = 0x101F0000u;
|
|
/* 0239597C */ _t23 = cpu->r[9] + 0x0000000Cu;
|
|
/* 0239597C */ cpu->r[27] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02395980 */ _t24 = cpu->r[12] + 0x00005C2Cu;
|
|
/* 02395980 */ cpu->r[9] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02395980 */ cpu->r[12] = _t24;
|
|
/* 02395984 */ _t25 = cpu->r[31] + 0x00000010u;
|
|
/* 02395984 */ rbrew_write32(cpu->mem, _t25, cpu->r[28]);
|
|
/* 02395988 */ _t26 = cpu->r[31] + 0x00000018u;
|
|
/* 02395988 */ rbrew_write32(cpu->mem, _t26, cpu->r[29]);
|
|
/* 0239598C */ _t27 = cpu->r[31] + 0x00000030u;
|
|
/* 0239598C */ rbrew_write32(cpu->mem, _t27, cpu->r[9]);
|
|
/* 02395990 */ _t28 = cpu->r[31] + 0x0000002Cu;
|
|
/* 02395990 */ rbrew_write32(cpu->mem, _t28, cpu->r[27]);
|
|
/* 02395994 */ _t29 = cpu->r[31] + 0x00000008u;
|
|
/* 02395994 */ rbrew_write32(cpu->mem, _t29, cpu->r[29]);
|
|
/* 02395998 */ _t30 = cpu->r[31] + 0x00000024u;
|
|
/* 02395998 */ rbrew_write32(cpu->mem, _t30, cpu->r[26]);
|
|
/* 0239599C */ cpu->r[7] = 0x101E0000u;
|
|
/* 023959A0 */ _t31 = cpu->r[31] + 0x00000028u;
|
|
/* 023959A0 */ rbrew_write32(cpu->mem, _t31, cpu->r[29]);
|
|
/* 023959A4 */ cpu->r[6] = 0x101F0000u;
|
|
/* 023959A8 */ _t32 = cpu->r[7] + 0x00004948u;
|
|
/* 023959A8 */ rbrew_write32(cpu->mem, _t32, cpu->r[0]);
|
|
/* 023959AC */ _t33 = cpu->r[6] + 0x00005C1Cu;
|
|
/* 023959AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 023959AC */ cpu->r[6] = _t33;
|
|
/* 023959B0 */ _t34 = cpu->r[31] + 0x00000004u;
|
|
/* 023959B0 */ rbrew_write32(cpu->mem, _t34, cpu->r[26]);
|
|
/* 023959B4 */ _t35 = cpu->r[31] + 0x00000020u;
|
|
/* 023959B4 */ rbrew_write32(cpu->mem, _t35, cpu->r[28]);
|
|
/* 023959B8 */ cpu->r[5] = 0x101E0000u;
|
|
/* 023959BC */ _t36 = cpu->r[12] + 0x0000000Cu;
|
|
/* 023959BC */ cpu->r[11] = rbrew_read32(cpu->mem, _t36);
|
|
/* 023959C0 */ _t37 = cpu->r[5] + 0x00004940u;
|
|
/* 023959C0 */ rbrew_write32(cpu->mem, _t37, cpu->r[8]);
|
|
/* 023959C0 */ cpu->r[5] = _t37;
|
|
/* 023959C4 */ _t38 = cpu->r[31] + 0x00000014u;
|
|
/* 023959C4 */ rbrew_write32(cpu->mem, _t38, cpu->r[26]);
|
|
/* 023959C8 */ _t39 = cpu->r[10] + 0x00000000u;
|
|
/* 023959C8 */ rbrew_write32(cpu->mem, _t39, cpu->r[8]);
|
|
/* 023959CC */ _t40 = cpu->r[31] + 0x00000040u;
|
|
/* 023959CC */ rbrew_write32(cpu->mem, _t40, cpu->r[0]);
|
|
/* 023959D0 */ _t41 = cpu->r[6] + 0x0000000Cu;
|
|
/* 023959D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t41);
|
|
/* 023959D4 */ _t42 = cpu->r[6] + 0x00000008u;
|
|
/* 023959D4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t42);
|
|
/* 023959D8 */ _t43 = cpu->r[6] + 0x00000004u;
|
|
/* 023959D8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t43);
|
|
/* 023959DC */ _t44 = cpu->r[31] + 0x0000003Cu;
|
|
/* 023959DC */ rbrew_write32(cpu->mem, _t44, cpu->r[11]);
|
|
/* 023959E0 */ _t45 = cpu->r[31] + 0x00000044u;
|
|
/* 023959E0 */ rbrew_write32(cpu->mem, _t45, cpu->r[8]);
|
|
/* 023959E4 */ _t46 = cpu->r[31] + 0x00000048u;
|
|
/* 023959E4 */ rbrew_write32(cpu->mem, _t46, cpu->r[9]);
|
|
/* 023959E8 */ _t47 = cpu->r[31] + 0x0000001Cu;
|
|
/* 023959E8 */ rbrew_write32(cpu->mem, _t47, cpu->r[27]);
|
|
/* 023959EC */ _t48 = cpu->r[5] + 0x00000004u;
|
|
/* 023959EC */ rbrew_write32(cpu->mem, _t48, cpu->r[4]);
|
|
/* 023959F0 */ _t49 = cpu->r[12] + 0x00000004u;
|
|
/* 023959F0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t49);
|
|
/* 023959F4 */ _t50 = cpu->r[31] + 0x0000004Cu;
|
|
/* 023959F4 */ rbrew_write32(cpu->mem, _t50, cpu->r[0]);
|
|
/* 023959F8 */ cpu->r[11] = 0x101F0000u;
|
|
/* 023959FC */ _t51 = cpu->r[12] + 0x00000008u;
|
|
/* 023959FC */ cpu->r[7] = rbrew_read32(cpu->mem, _t51);
|
|
/* 02395A00 */ _t52 = cpu->r[11] + 0x00005BDCu;
|
|
/* 02395A00 */ cpu->r[30] = rbrew_read32(cpu->mem, _t52);
|
|
/* 02395A00 */ cpu->r[11] = _t52;
|
|
/* 02395A04 */ _t53 = cpu->r[11] + 0x00000008u;
|
|
/* 02395A04 */ cpu->r[3] = rbrew_read32(cpu->mem, _t53);
|
|
/* 02395A08 */ _t54 = cpu->r[11] + 0x0000000Cu;
|
|
/* 02395A08 */ cpu->r[4] = rbrew_read32(cpu->mem, _t54);
|
|
/* 02395A0C */ _t55 = cpu->r[11] + 0x00000004u;
|
|
/* 02395A0C */ cpu->r[11] = rbrew_read32(cpu->mem, _t55);
|
|
/* 02395A10 */ _t56 = cpu->r[31] + 0x00000088u;
|
|
/* 02395A10 */ rbrew_write32(cpu->mem, _t56, cpu->r[3]);
|
|
/* 02395A14 */ _t57 = cpu->r[31] + 0x00000080u;
|
|
/* 02395A14 */ rbrew_write32(cpu->mem, _t57, cpu->r[30]);
|
|
/* 02395A18 */ _t58 = cpu->r[31] + 0x00000034u;
|
|
/* 02395A18 */ rbrew_write32(cpu->mem, _t58, cpu->r[5]);
|
|
/* 02395A1C */ cpu->r[12] = 0x101F0000u;
|
|
/* 02395A20 */ _t59 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02395A20 */ rbrew_write32(cpu->mem, _t59, cpu->r[27]);
|
|
/* 02395A24 */ cpu->r[5] = 0x101F0000u;
|
|
/* 02395A28 */ _t60 = cpu->r[31] + 0x00000038u;
|
|
/* 02395A28 */ rbrew_write32(cpu->mem, _t60, cpu->r[7]);
|
|
/* 02395A2C */ cpu->r[5] = cpu->r[5] + 0x00005C4Cu;
|
|
/* 02395A30 */ _t61 = cpu->r[12] + 0x00005C3Cu;
|
|
/* 02395A30 */ cpu->r[7] = rbrew_read32(cpu->mem, _t61);
|
|
/* 02395A30 */ cpu->r[12] = _t61;
|
|
/* 02395A34 */ _t62 = cpu->r[12] + 0x00000008u;
|
|
/* 02395A34 */ cpu->r[9] = rbrew_read32(cpu->mem, _t62);
|
|
/* 02395A38 */ _t63 = cpu->r[5] + 0x00000004u;
|
|
/* 02395A38 */ cpu->r[8] = rbrew_read32(cpu->mem, _t63);
|
|
/* 02395A3C */ _t64 = cpu->r[31] + 0x00000058u;
|
|
/* 02395A3C */ rbrew_write32(cpu->mem, _t64, cpu->r[3]);
|
|
/* 02395A40 */ _t65 = cpu->r[31] + 0x00000064u;
|
|
/* 02395A40 */ rbrew_write32(cpu->mem, _t65, cpu->r[8]);
|
|
/* 02395A44 */ _t66 = cpu->r[31] + 0x00000090u;
|
|
/* 02395A44 */ rbrew_write32(cpu->mem, _t66, cpu->r[30]);
|
|
/* 02395A48 */ _t67 = cpu->r[31] + 0x00000070u;
|
|
/* 02395A48 */ rbrew_write32(cpu->mem, _t67, cpu->r[7]);
|
|
/* 02395A4C */ _t68 = cpu->r[12] + 0x00000004u;
|
|
/* 02395A4C */ cpu->r[8] = rbrew_read32(cpu->mem, _t68);
|
|
/* 02395A50 */ _t69 = cpu->r[12] + 0x0000000Cu;
|
|
/* 02395A50 */ cpu->r[10] = rbrew_read32(cpu->mem, _t69);
|
|
/* 02395A54 */ _t70 = cpu->r[31] + 0x00000074u;
|
|
/* 02395A54 */ rbrew_write32(cpu->mem, _t70, cpu->r[8]);
|
|
/* 02395A58 */ _t71 = cpu->r[31] + 0x0000007Cu;
|
|
/* 02395A58 */ rbrew_write32(cpu->mem, _t71, cpu->r[10]);
|
|
/* 02395A5C */ _t72 = cpu->r[5] + 0x0000000Cu;
|
|
/* 02395A5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t72);
|
|
/* 02395A60 */ _t73 = cpu->r[31] + 0x0000005Cu;
|
|
/* 02395A60 */ rbrew_write32(cpu->mem, _t73, cpu->r[4]);
|
|
/* 02395A64 */ _t74 = cpu->r[31] + 0x0000006Cu;
|
|
/* 02395A64 */ rbrew_write32(cpu->mem, _t74, cpu->r[0]);
|
|
/* 02395A68 */ _t75 = cpu->r[31] + 0x00000094u;
|
|
/* 02395A68 */ rbrew_write32(cpu->mem, _t75, cpu->r[11]);
|
|
/* 02395A6C */ _t76 = cpu->r[31] + 0x00000054u;
|
|
/* 02395A6C */ rbrew_write32(cpu->mem, _t76, cpu->r[11]);
|
|
/* 02395A70 */ _t77 = cpu->r[31] + 0x00000084u;
|
|
/* 02395A70 */ rbrew_write32(cpu->mem, _t77, cpu->r[11]);
|
|
/* 02395A74 */ _t78 = cpu->r[31] + 0x00000050u;
|
|
/* 02395A74 */ rbrew_write32(cpu->mem, _t78, cpu->r[30]);
|
|
/* 02395A78 */ _t79 = cpu->r[5] + 0x00000000u;
|
|
/* 02395A78 */ cpu->r[6] = rbrew_read32(cpu->mem, _t79);
|
|
/* 02395A7C */ cpu->r[10] = 0x101F0000u;
|
|
/* 02395A80 */ _t80 = cpu->r[31] + 0x0000008Cu;
|
|
/* 02395A80 */ rbrew_write32(cpu->mem, _t80, cpu->r[4]);
|
|
/* 02395A84 */ _t81 = cpu->r[10] + 0x00005C0Cu;
|
|
/* 02395A84 */ cpu->r[7] = rbrew_read32(cpu->mem, _t81);
|
|
/* 02395A84 */ cpu->r[10] = _t81;
|
|
/* 02395A88 */ _t82 = cpu->r[10] + 0x00000004u;
|
|
/* 02395A88 */ cpu->r[8] = rbrew_read32(cpu->mem, _t82);
|
|
/* 02395A8C */ _t83 = cpu->r[31] + 0x000000BCu;
|
|
/* 02395A8C */ rbrew_write32(cpu->mem, _t83, cpu->r[27]);
|
|
/* 02395A90 */ _t84 = cpu->r[31] + 0x000000A0u;
|
|
/* 02395A90 */ rbrew_write32(cpu->mem, _t84, cpu->r[7]);
|
|
/* 02395A94 */ _t85 = cpu->r[31] + 0x000000A4u;
|
|
/* 02395A94 */ rbrew_write32(cpu->mem, _t85, cpu->r[8]);
|
|
/* 02395A98 */ _t86 = cpu->r[31] + 0x00000078u;
|
|
/* 02395A98 */ rbrew_write32(cpu->mem, _t86, cpu->r[9]);
|
|
/* 02395A9C */ cpu->r[12] = 0x10080000u;
|
|
/* 02395AA0 */ _t87 = cpu->r[10] + 0x00000008u;
|
|
/* 02395AA0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t87);
|
|
/* 02395AA4 */ _t88 = cpu->r[12] + 0x000065F0u;
|
|
/* 02395AA4 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t88);
|
|
/* 02395AA8 */ _t89 = cpu->r[31] + 0x000000A8u;
|
|
/* 02395AA8 */ rbrew_write32(cpu->mem, _t89, cpu->r[9]);
|
|
/* 02395AAC */ _t90 = cpu->r[31] + 0x00000060u;
|
|
/* 02395AAC */ rbrew_write32(cpu->mem, _t90, cpu->r[6]);
|
|
/* 02395AB0 */ _t91 = cpu->r[31] + 0x00000098u;
|
|
/* 02395AB0 */ rbrew_write32(cpu->mem, _t91, cpu->r[3]);
|
|
/* 02395AB4 */ _t92 = cpu->r[31] + 0x0000009Cu;
|
|
/* 02395AB4 */ rbrew_write32(cpu->mem, _t92, cpu->r[4]);
|
|
/* 02395AB8 */ _t93 = cpu->r[5] + 0x00000008u;
|
|
/* 02395AB8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t93);
|
|
/* 02395ABC */ _t94 = cpu->r[31] + 0x000000B8u;
|
|
/* 02395ABC */ rbrew_write32(cpu->mem, _t94, cpu->r[29]);
|
|
/* 02395AC0 */ cpu->r[12] = 0x10080000u;
|
|
/* 02395AC4 */ _t95 = cpu->r[31] + 0x00000068u;
|
|
/* 02395AC4 */ rbrew_write32(cpu->mem, _t95, cpu->r[9]);
|
|
/* 02395AC8 */ cpu->r[3] = cpu->r[31] + 0x000000C0u;
|
|
/* 02395ACC */ _t96 = cpu->r[12] + 0x00006710u;
|
|
/* 02395ACC */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t96);
|
|
/* 02395AD0 */ _t97 = cpu->r[31] + 0x000000B0u;
|
|
/* 02395AD0 */ rbrew_write32(cpu->mem, _t97, cpu->r[28]);
|
|
/* 02395AD4 */ cpu->r[12] = 0x10080000u;
|
|
/* 02395AD8 */ _t98 = cpu->r[31] + 0x000000B4u;
|
|
/* 02395AD8 */ rbrew_write32(cpu->mem, _t98, cpu->r[26]);
|
|
/* 02395ADC */ _t99 = cpu->r[12] + 0x0000670Cu;
|
|
/* 02395ADC */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t99);
|
|
/* 02395AE0 */ cpu->r[11] = 0x10080000u;
|
|
/* 02395AE4 */ _t100 = cpu->r[10] + 0x0000000Cu;
|
|
/* 02395AE4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t100);
|
|
/* 02395AE8 */ _t101 = cpu->r[11] + 0x000065F4u;
|
|
/* 02395AE8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t101);
|
|
/* 02395AEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0xFFFFFF40u);
|
|
/* 02395AF0 */ _t102 = cpu->r[31] + 0x000000ACu;
|
|
/* 02395AF0 */ rbrew_write32(cpu->mem, _t102, cpu->r[10]);
|
|
/* 02395AF4 */ _t103 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02395AF4 */ _t104 = _t103 & 0x00000001u;
|
|
/* 02395AF4 */ if (_t104) goto L_02395AF8; else goto L_02395B08;
|
|
L_02395AF8: ; // 0x2395af8
|
|
/* 02395AF8 */ cpu->r[3] = 0x00000010u;
|
|
/* 02395AFC */ Gambit_fn_02801A78(cpu);
|
|
/* 02395B00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02395B04 */ _t105 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02395B04 */ _t106 = _t105 & 0x00000001u;
|
|
/* 02395B04 */ if (_t106) goto L_02395B18; else goto L_02395B08;
|
|
L_02395B08: ; // 0x2395b08
|
|
/* 02395B08 */ _t107 = cpu->r[3] + 0x00000004u;
|
|
/* 02395B08 */ rbrew_write_f32(cpu->mem, _t107, cpu->f[29]);
|
|
/* 02395B0C */ _t108 = cpu->r[3] + 0x00000008u;
|
|
/* 02395B0C */ rbrew_write_f32(cpu->mem, _t108, cpu->f[28]);
|
|
/* 02395B10 */ _t109 = cpu->r[3] + 0x00000000u;
|
|
/* 02395B10 */ rbrew_write_f32(cpu->mem, _t109, cpu->f[31]);
|
|
/* 02395B14 */ _t110 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02395B14 */ rbrew_write_f32(cpu->mem, _t110, cpu->f[30]);
|
|
L_02395B18: ; // 0x2395b18
|
|
/* 02395B18 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0xFFFFFF30u);
|
|
/* 02395B1C */ cpu->r[3] = cpu->r[31] + 0x000000D0u;
|
|
/* 02395B20 */ _t111 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02395B20 */ _t112 = _t111 & 0x00000001u;
|
|
/* 02395B20 */ if (_t112) goto L_02395B24; else goto L_02395B34;
|
|
L_02395B24: ; // 0x2395b24
|
|
/* 02395B24 */ cpu->r[3] = 0x00000010u;
|
|
/* 02395B28 */ Gambit_fn_02801A78(cpu);
|
|
/* 02395B2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02395B30 */ _t113 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02395B30 */ _t114 = _t113 & 0x00000001u;
|
|
/* 02395B30 */ if (_t114) goto L_02395B44; else goto L_02395B34;
|
|
L_02395B34: ; // 0x2395b34
|
|
/* 02395B34 */ _t115 = cpu->r[3] + 0x00000004u;
|
|
/* 02395B34 */ rbrew_write_f32(cpu->mem, _t115, cpu->f[29]);
|
|
/* 02395B38 */ _t116 = cpu->r[3] + 0x00000008u;
|
|
/* 02395B38 */ rbrew_write_f32(cpu->mem, _t116, cpu->f[31]);
|
|
/* 02395B3C */ _t117 = cpu->r[3] + 0x00000000u;
|
|
/* 02395B3C */ rbrew_write_f32(cpu->mem, _t117, cpu->f[28]);
|
|
/* 02395B40 */ _t118 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02395B40 */ rbrew_write_f32(cpu->mem, _t118, cpu->f[30]);
|
|
L_02395B44: ; // 0x2395b44
|
|
/* 02395B44 */ cpu->r[8] = 0x101F0000u;
|
|
/* 02395B48 */ cpu->r[8] = cpu->r[8] + 0x00005BCCu;
|
|
/* 02395B4C */ _t119 = cpu->r[8] + 0x00000004u;
|
|
/* 02395B4C */ cpu->r[0] = rbrew_read32(cpu->mem, _t119);
|
|
/* 02395B50 */ _t120 = cpu->r[8] + 0x00000000u;
|
|
/* 02395B50 */ cpu->r[11] = rbrew_read32(cpu->mem, _t120);
|
|
/* 02395B54 */ _t121 = cpu->r[31] + 0x000000E4u;
|
|
/* 02395B54 */ rbrew_write32(cpu->mem, _t121, cpu->r[0]);
|
|
/* 02395B58 */ _t122 = cpu->r[31] + 0x000000E0u;
|
|
/* 02395B58 */ rbrew_write32(cpu->mem, _t122, cpu->r[11]);
|
|
/* 02395B5C */ _t123 = cpu->r[8] + 0x0000000Cu;
|
|
/* 02395B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t123);
|
|
/* 02395B60 */ _t124 = cpu->r[8] + 0x00000008u;
|
|
/* 02395B60 */ cpu->r[10] = rbrew_read32(cpu->mem, _t124);
|
|
/* 02395B64 */ _t125 = cpu->r[31] + 0x000000ECu;
|
|
/* 02395B64 */ rbrew_write32(cpu->mem, _t125, cpu->r[0]);
|
|
/* 02395B68 */ _t126 = cpu->r[31] + 0x000000E8u;
|
|
/* 02395B68 */ rbrew_write32(cpu->mem, _t126, cpu->r[10]);
|
|
/* 02395B6C */ /* nop */
|
|
/* 02395B70 */ _t127 = cpu->r[1] + 0x00000040u;
|
|
/* 02395B70 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t127);
|
|
/* 02395B74 */ _t128 = cpu->r[1] + 0x00000050u;
|
|
/* 02395B74 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t128);
|
|
/* 02395B78 */ _t129 = cpu->r[1] + 0x00000038u;
|
|
/* 02395B78 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t129);
|
|
/* 02395B7C */ _t130 = cpu->r[1] + 0x00000048u;
|
|
/* 02395B7C */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t130);
|
|
/* 02395B80 */ _t131 = cpu->r[1] + 0x00000030u;
|
|
/* 02395B80 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t131);
|
|
/* 02395B84 */ _t132 = cpu->r[1] + 0x00000060u;
|
|
/* 02395B84 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t132);
|
|
/* 02395B88 */ _t133 = cpu->r[1] + 0x00000028u;
|
|
/* 02395B88 */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t133);
|
|
/* 02395B8C */ _t134 = cpu->r[1] + 0x00000058u;
|
|
/* 02395B8C */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t134);
|
|
/* 02395B90 */ _t135 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02395B90 */ _t136 = _t135 & 0x00000001u;
|
|
/* 02395B90 */ if (_t136) goto L_02395B94; // else: addr-0 trap, fall-through
|
|
L_02395B94: ; // 0x2395b94
|
|
/* 02395B94 */ _t137 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02395B94 */ cpu->r[0] = rbrew_read32(cpu->mem, _t137);
|
|
/* 02395B98 */ cpu->lr = cpu->r[0];
|
|
/* 02395B9C */ cpu->r[1] = cpu->r[1] + 0x00000068u;
|
|
/* 02395BA0 */ return;
|
|
}
|
|
|
|
// fn_02395BA4 @ 0x2395ba4
|
|
void Gambit_fn_02395BA4(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_02395BA4: ; // 0x2395ba4
|
|
/* 02395BA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02395BA8 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02395BA8 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02395BA8 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02395BA8 */ goto L_02395BAC;
|
|
L_02395BAC: ; // 0x2395bac
|
|
/* 02395BAC */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02395BAC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02395BB0 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02395BB0 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02395BB0 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02395BB0 */ goto L_02395BB4;
|
|
L_02395BB4: ; // 0x2395bb4
|
|
/* 02395BB4 */ 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_02395BB8 @ 0x2395bb8
|
|
void Gambit_fn_02395BB8(CPUState* cpu) {
|
|
L_02395BB8: ; // 0x2395bb8
|
|
/* 02395BB8 */ return;
|
|
}
|
|
|
|
// fn_02395BBC @ 0x2395bbc
|
|
void Gambit_fn_02395BBC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_02395BBC: ; // 0x2395bbc
|
|
/* 02395BBC */ cpu->r[0] = cpu->lr;
|
|
/* 02395BC0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02395BC0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02395BC0 */ cpu->r[1] = _t0;
|
|
/* 02395BC4 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02395BC4 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02395BC8 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02395BC8 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02395BCC */ cpu->r[31] = cpu->r[5];
|
|
/* 02395BD0 */ cpu->r[30] = cpu->r[4];
|
|
/* 02395BD4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02395BD8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02395BD8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02395BDC */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02395BDC */ _t5 = _t4 & 0x00000001u;
|
|
/* 02395BDC */ if (_t5) goto L_02395BE0; else goto L_02395BF0;
|
|
L_02395BE0: ; // 0x2395be0
|
|
/* 02395BE0 */ cpu->r[3] = 0x00000008u;
|
|
/* 02395BE4 */ Gambit_fn_02801A78(cpu);
|
|
/* 02395BE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02395BEC */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02395BEC */ _t7 = _t6 & 0x00000001u;
|
|
/* 02395BEC */ if (_t7) goto L_02395BF8; else goto L_02395BF0;
|
|
L_02395BF0: ; // 0x2395bf0
|
|
/* 02395BF0 */ _t8 = cpu->r[3] + 0x00000004u;
|
|
/* 02395BF0 */ rbrew_write32(cpu->mem, _t8, cpu->r[31]);
|
|
/* 02395BF4 */ _t9 = cpu->r[3] + 0x00000000u;
|
|
/* 02395BF4 */ rbrew_write32(cpu->mem, _t9, cpu->r[30]);
|
|
L_02395BF8: ; // 0x2395bf8
|
|
/* 02395BF8 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02395BF8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02395BFC */ _t11 = cpu->r[1] + 0x00000008u;
|
|
/* 02395BFC */ cpu->r[30] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02395C00 */ cpu->lr = cpu->r[0];
|
|
/* 02395C04 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02395C04 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02395C08 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02395C0C */ return;
|
|
}
|
|
|
|
// fn_02395BC0 @ 0x2395bc0
|
|
void Gambit_fn_02395BC0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_02395BC0: ; // 0x2395bc0
|
|
/* 02395BC0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02395BC0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02395BC0 */ cpu->r[1] = _t0;
|
|
/* 02395BC4 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02395BC4 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02395BC8 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02395BC8 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02395BCC */ cpu->r[31] = cpu->r[5];
|
|
/* 02395BD0 */ cpu->r[30] = cpu->r[4];
|
|
/* 02395BD4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02395BD8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02395BD8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02395BDC */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02395BDC */ _t5 = _t4 & 0x00000001u;
|
|
/* 02395BDC */ if (_t5) goto L_02395BE0; else goto L_02395BF0;
|
|
L_02395BE0: ; // 0x2395be0
|
|
/* 02395BE0 */ cpu->r[3] = 0x00000008u;
|
|
/* 02395BE4 */ Gambit_fn_02801A78(cpu);
|
|
/* 02395BE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02395BEC */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02395BEC */ _t7 = _t6 & 0x00000001u;
|
|
/* 02395BEC */ if (_t7) goto L_02395BF8; else goto L_02395BF0;
|
|
L_02395BF0: ; // 0x2395bf0
|
|
/* 02395BF0 */ _t8 = cpu->r[3] + 0x00000004u;
|
|
/* 02395BF0 */ rbrew_write32(cpu->mem, _t8, cpu->r[31]);
|
|
/* 02395BF4 */ _t9 = cpu->r[3] + 0x00000000u;
|
|
/* 02395BF4 */ rbrew_write32(cpu->mem, _t9, cpu->r[30]);
|
|
L_02395BF8: ; // 0x2395bf8
|
|
/* 02395BF8 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02395BF8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02395BFC */ _t11 = cpu->r[1] + 0x00000008u;
|
|
/* 02395BFC */ cpu->r[30] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02395C00 */ cpu->lr = cpu->r[0];
|
|
/* 02395C04 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02395C04 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02395C08 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02395C0C */ return;
|
|
}
|
|
|
|
// fn_02395C10 @ 0x2395c10
|
|
void Gambit_fn_02395C10(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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_02395C10: ; // 0x2395c10
|
|
/* 02395C10 */ _t0 = cpu->r[1] + 0xFFFFFDC0u;
|
|
/* 02395C10 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02395C10 */ cpu->r[1] = _t0;
|
|
/* 02395C14 */ cpu->r[0] = cpu->lr;
|
|
/* 02395C18 */ /* nop */
|
|
/* 02395C1C */ _t1 = cpu->r[1] + 0x00000244u;
|
|
/* 02395C1C */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02395C20 */ cpu->r[29] = cpu->r[3];
|
|
/* 02395C24 */ cpu->r[27] = cpu->r[1] + 0x0000001Cu;
|
|
/* 02395C28 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 02395C28 */ rbrew_write32(cpu->mem, _t2, cpu->r[27]);
|
|
/* 02395C2C */ cpu->r[0] = 0x00000100u;
|
|
/* 02395C30 */ cpu->r[7] = 0x10080000u;
|
|
/* 02395C34 */ _t3 = cpu->r[1] + 0x00000018u;
|
|
/* 02395C34 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02395C38 */ cpu->r[7] = cpu->r[7] + 0x00006744u;
|
|
/* 02395C3C */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 02395C3C */ rbrew_write32(cpu->mem, _t4, cpu->r[7]);
|
|
/* 02395C40 */ cpu->r[28] = cpu->r[4];
|
|
/* 02395C44 */ cpu->r[30] = 0x10110000u;
|
|
/* 02395C48 */ _t5 = cpu->r[30] + 0x00007399u;
|
|
/* 02395C48 */ cpu->r[30] = rbrew_read8(cpu->mem, _t5);
|
|
/* 02395C4C */ _t6 = cpu->r[28] + 0x00000034u;
|
|
/* 02395C4C */ cpu->r[8] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02395C50 */ _t7 = cpu->r[1] + 0x0000011Bu;
|
|
/* 02395C50 */ rbrew_write8(cpu->mem, _t7, (uint8_t)cpu->r[30]);
|
|
/* 02395C54 */ _t8 = cpu->r[8] + 0x00000014u;
|
|
/* 02395C54 */ cpu->r[9] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02395C58 */ cpu->ctr = cpu->r[9];
|
|
/* 02395C5C */ cpu->r[3] = cpu->r[28] + 0x00000030u;
|
|
/* 02395C60 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02395C64 */ _t9 = cpu->r[28] + 0x00000030u;
|
|
/* 02395C64 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02395C68 */ _t10 = cpu->r[12] + 0x00000000u;
|
|
/* 02395C68 */ cpu->r[10] = rbrew_read8(cpu->mem, _t10);
|
|
/* 02395C6C */ cpu->r[31] = 0x00000000u;
|
|
/* 02395C70 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[30]);
|
|
/* 02395C74 */ cpu->r[0] = 0x00080000u;
|
|
/* 02395C78 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02395C78 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02395C78 */ if (_t12) goto L_02395CA0; else goto L_02395C7C;
|
|
L_02395C7C: ; // 0x2395c7c
|
|
/* 02395C7C */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 02395C80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[0]);
|
|
/* 02395C84 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 02395C88 */ _t13 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02395C88 */ _t14 = _t13 & 0x00000001u;
|
|
/* 02395C88 */ if (_t14) goto L_02395C9C; else goto L_02395C8C;
|
|
L_02395C8C: ; // 0x2395c8c
|
|
/* 02395C8C */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 02395C8C */ cpu->r[11] = rbrew_read8(cpu->mem, _t15);
|
|
/* 02395C90 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[30]);
|
|
/* 02395C94 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02395C94 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02395C94 */ if (_t17) goto L_02395C98; else goto L_02395C7C;
|
|
L_02395C98: ; // 0x2395c98
|
|
/* 02395C98 */ goto L_02395CA0;
|
|
L_02395C9C: ; // 0x2395c9c
|
|
/* 02395C9C */ cpu->r[31] = 0x00000000u;
|
|
L_02395CA0: ; // 0x2395ca0
|
|
/* 02395CA0 */ _t18 = cpu->r[1] + 0x00000018u;
|
|
/* 02395CA0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02395CA4 */ _t19 = cpu->r[28] + 0x00000034u;
|
|
/* 02395CA4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02395CA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[6]);
|
|
/* 02395CAC */ _t20 = cpu->r[12] + 0x00000014u;
|
|
/* 02395CAC */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02395CB0 */ _t21 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02395CB0 */ _t22 = _t21 & 0x00000001u;
|
|
/* 02395CB0 */ if (_t22) goto L_02395CB8; else goto L_02395CB4;
|
|
L_02395CB4: ; // 0x2395cb4
|
|
/* 02395CB4 */ cpu->r[31] = cpu->r[6] + 0xFFFFFFFFu;
|
|
L_02395CB8: ; // 0x2395cb8
|
|
/* 02395CB8 */ cpu->ctr = cpu->r[0];
|
|
/* 02395CBC */ cpu->r[3] = cpu->r[28] + 0x00000030u;
|
|
/* 02395CC0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02395CC4 */ _t23 = cpu->r[28] + 0x00000030u;
|
|
/* 02395CC4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02395CC8 */ cpu->r[3] = cpu->r[27];
|
|
/* 02395CCC */ cpu->r[5] = cpu->r[31];
|
|
/* 02395CD0 */ cpu->r[6] = 0x00000000u;
|
|
/* 02395CD4 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 02395CD8 */ cpu->r[0] = 0x10080000u;
|
|
/* 02395CDC */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 02395CE0 */ cpu->r[5] = 0x00000000u;
|
|
/* 02395CE4 */ cpu->r[0] = cpu->r[0] + 0x0000675Cu;
|
|
/* 02395CE8 */ _t24 = cpu->r[27] + cpu->r[31];
|
|
/* 02395CE8 */ rbrew_write8(cpu->mem, _t24, (uint8_t)cpu->r[30]);
|
|
/* 02395CEC */ cpu->r[6] = cpu->r[5];
|
|
/* 02395CF0 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02395CF4 */ _t25 = cpu->r[1] + 0x00000014u;
|
|
/* 02395CF4 */ rbrew_write32(cpu->mem, _t25, cpu->r[0]);
|
|
/* 02395CF8 */ Gambit_fn_027C6980(cpu);
|
|
/* 02395CFC */ _t26 = cpu->r[1] + 0x00000014u;
|
|
/* 02395CFC */ cpu->r[10] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02395D00 */ _t27 = cpu->r[10] + 0x00000014u;
|
|
/* 02395D00 */ cpu->r[11] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02395D04 */ cpu->ctr = cpu->r[11];
|
|
/* 02395D08 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 02395D0C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02395D10 */ cpu->r[4] = 0x10080000u;
|
|
/* 02395D14 */ _t28 = cpu->r[1] + 0x00000010u;
|
|
/* 02395D14 */ cpu->r[5] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02395D18 */ cpu->r[3] = cpu->r[1] + 0x0000011Cu;
|
|
/* 02395D1C */ cpu->r[4] = cpu->r[4] + 0x0000678Cu;
|
|
/* 02395D20 */ _t29 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 02395D20 */ _t30 = _t29 & 0x00000001u;
|
|
/* 02395D20 */ if (_t30) goto L_02395D24; // else: addr-0 trap, fall-through
|
|
L_02395D24: ; // 0x2395d24
|
|
/* 02395D24 */ Gambit_fn_023962F4(cpu);
|
|
/* 02395D28 */ cpu->r[5] = 0x00000000u;
|
|
/* 02395D2C */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02395D30 */ cpu->r[4] = cpu->r[1] + 0x0000011Cu;
|
|
/* 02395D34 */ Gambit_fn_027C6C00(cpu);
|
|
/* 02395D38 */ cpu->r[30] = cpu->r[3];
|
|
/* 02395D3C */ cpu->r[3] = 0x00000000u;
|
|
/* 02395D40 */ cpu->r[4] = cpu->r[3];
|
|
/* 02395D44 */ Gambit_fn_02040408(cpu);
|
|
/* 02395D48 */ _t31 = cpu->r[1] + 0x00000014u;
|
|
/* 02395D48 */ cpu->r[7] = rbrew_read32(cpu->mem, _t31);
|
|
/* 02395D4C */ _t32 = cpu->r[7] + 0x00000014u;
|
|
/* 02395D4C */ cpu->r[0] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02395D50 */ cpu->r[31] = cpu->r[3];
|
|
/* 02395D54 */ cpu->ctr = cpu->r[0];
|
|
/* 02395D58 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 02395D5C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02395D60 */ _t33 = cpu->r[1] + 0x00000010u;
|
|
/* 02395D60 */ cpu->r[5] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02395D64 */ cpu->r[4] = cpu->r[30];
|
|
/* 02395D68 */ cpu->r[3] = cpu->r[31];
|
|
/* 02395D6C */ Gambit_fn_0204049C(cpu);
|
|
/* 02395D70 */ cpu->r[4] = cpu->r[28];
|
|
/* 02395D74 */ cpu->r[3] = 0x00000000u;
|
|
/* 02395D78 */ cpu->r[5] = cpu->r[31];
|
|
/* 02395D7C */ Gambit_fn_02395BBC(cpu);
|
|
/* 02395D80 */ _t34 = cpu->r[29] + 0x00000010u;
|
|
/* 02395D80 */ cpu->r[9] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02395D84 */ _t35 = cpu->r[29] + 0x00000014u;
|
|
/* 02395D84 */ cpu->r[0] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02395D88 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], cpu->r[0]);
|
|
/* 02395D8C */ _t36 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02395D8C */ _t37 = _t36 & 0x00000001u;
|
|
/* 02395D8C */ if (_t37) goto L_02395D90; else goto L_02395DA8;
|
|
L_02395D90: ; // 0x2395d90
|
|
/* 02395D90 */ _t38 = cpu->r[29] + 0x00000018u;
|
|
/* 02395D90 */ cpu->r[12] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02395D94 */ cpu->r[11] = rbrew_rlwinm(cpu->r[9], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02395D98 */ _t39 = cpu->r[11] + cpu->r[12];
|
|
/* 02395D98 */ rbrew_write32(cpu->mem, _t39, cpu->r[3]);
|
|
/* 02395D9C */ _t40 = cpu->r[29] + 0x00000010u;
|
|
/* 02395D9C */ cpu->r[6] = rbrew_read32(cpu->mem, _t40);
|
|
/* 02395DA0 */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 02395DA4 */ _t41 = cpu->r[29] + 0x00000010u;
|
|
/* 02395DA4 */ rbrew_write32(cpu->mem, _t41, cpu->r[6]);
|
|
L_02395DA8: ; // 0x2395da8
|
|
/* 02395DA8 */ /* nop */
|
|
/* 02395DAC */ _t42 = cpu->r[1] + 0x00000244u;
|
|
/* 02395DAC */ cpu->r[0] = rbrew_read32(cpu->mem, _t42);
|
|
/* 02395DB0 */ cpu->lr = cpu->r[0];
|
|
/* 02395DB4 */ cpu->r[1] = cpu->r[1] + 0x00000240u;
|
|
/* 02395DB8 */ return;
|
|
}
|
|
|
|
// fn_02395DBC @ 0x2395dbc
|
|
void Gambit_fn_02395DBC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _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_02395DBC: ; // 0x2395dbc
|
|
/* 02395DBC */ cpu->r[0] = cpu->lr;
|
|
/* 02395DC0 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 02395DC0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02395DC0 */ cpu->r[1] = _t0;
|
|
/* 02395DC4 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 02395DC4 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 02395DC8 */ cpu->r[11] = 0x10080000u;
|
|
/* 02395DCC */ cpu->r[11] = cpu->r[11] + 0x00006714u;
|
|
/* 02395DD0 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02395DD0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02395DD4 */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 02395DD4 */ rbrew_write32(cpu->mem, _t3, cpu->r[28]);
|
|
/* 02395DD8 */ _t4 = cpu->r[1] + 0x00000018u;
|
|
/* 02395DD8 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 02395DDC */ cpu->r[12] = 0x101C0000u;
|
|
/* 02395DE0 */ _t5 = cpu->r[1] + 0x00000024u;
|
|
/* 02395DE0 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02395DE4 */ cpu->r[0] = 0x10080000u;
|
|
/* 02395DE8 */ _t6 = cpu->r[12] + 0x00006000u;
|
|
/* 02395DE8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02395DEC */ cpu->r[0] = cpu->r[0] + 0x00006794u;
|
|
/* 02395DF0 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02395DF0 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 02395DF4 */ cpu->r[28] = cpu->r[3];
|
|
/* 02395DF8 */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 02395DF8 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 02395DFC */ _t9 = cpu->r[12] + 0x00000254u;
|
|
/* 02395DFC */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02395E00 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02395E04 */ Gambit_fn_020ECD78(cpu);
|
|
/* 02395E08 */ _t10 = cpu->r[3] + 0x00000008u;
|
|
/* 02395E08 */ cpu->r[9] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02395E0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02395E10 */ cpu->r[31] = cpu->r[3];
|
|
/* 02395E14 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02395E14 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02395E14 */ if (_t12) goto L_02395E64; else goto L_02395E18;
|
|
L_02395E18: ; // 0x2395e18
|
|
/* 02395E18 */ _t13 = cpu->r[31] + 0x00000008u;
|
|
/* 02395E18 */ cpu->r[4] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02395E1C */ cpu->r[6] = 0x00000004u;
|
|
/* 02395E20 */ cpu->r[5] = 0x00000000u;
|
|
/* 02395E24 */ cpu->r[3] = cpu->r[28] + 0x00000010u;
|
|
/* 02395E28 */ Gambit_fn_028023CC(cpu);
|
|
/* 02395E2C */ _t14 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02395E2C */ cpu->r[30] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02395E30 */ _t15 = cpu->r[31] + 0x00000004u;
|
|
/* 02395E30 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02395E34 */ cpu->r[31] = cpu->r[31] - cpu->r[30];
|
|
/* 02395E38 */ cpu->r[29] = cpu->r[0] - cpu->r[30];
|
|
/* 02395E3C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[31]);
|
|
/* 02395E40 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02395E40 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02395E40 */ if (_t17) goto L_02395E64; else goto L_02395E44;
|
|
L_02395E44: ; // 0x2395e44
|
|
/* 02395E44 */ cpu->r[3] = cpu->r[28];
|
|
/* 02395E48 */ cpu->r[4] = cpu->r[29];
|
|
/* 02395E4C */ Gambit_fn_02395C10(cpu);
|
|
/* 02395E50 */ cpu->r[10] = cpu->r[29] + cpu->r[30];
|
|
/* 02395E54 */ _t18 = cpu->r[10] + 0x00000004u;
|
|
/* 02395E54 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02395E58 */ cpu->r[29] = cpu->r[0] - cpu->r[30];
|
|
/* 02395E5C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[31]);
|
|
/* 02395E60 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02395E60 */ _t20 = _t19 & 0x00000001u;
|
|
/* 02395E60 */ if (_t20) goto L_02395E64; else goto L_02395E44;
|
|
L_02395E64: ; // 0x2395e64
|
|
/* 02395E64 */ _t21 = cpu->r[1] + 0x00000010u;
|
|
/* 02395E64 */ cpu->r[28] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02395E68 */ _t22 = cpu->r[1] + 0x00000014u;
|
|
/* 02395E68 */ cpu->r[29] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02395E6C */ _t23 = cpu->r[1] + 0x00000024u;
|
|
/* 02395E6C */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02395E70 */ _t24 = cpu->r[1] + 0x00000018u;
|
|
/* 02395E70 */ cpu->r[30] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02395E74 */ cpu->lr = cpu->r[0];
|
|
/* 02395E78 */ _t25 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02395E78 */ cpu->r[31] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02395E7C */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 02395E80 */ return;
|
|
}
|
|
|
|
// fn_02395DC0 @ 0x2395dc0
|
|
void Gambit_fn_02395DC0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _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_02395DC0: ; // 0x2395dc0
|
|
/* 02395DC0 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 02395DC0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02395DC0 */ cpu->r[1] = _t0;
|
|
/* 02395DC4 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 02395DC4 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 02395DC8 */ cpu->r[11] = 0x10080000u;
|
|
/* 02395DCC */ cpu->r[11] = cpu->r[11] + 0x00006714u;
|
|
/* 02395DD0 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02395DD0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02395DD4 */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 02395DD4 */ rbrew_write32(cpu->mem, _t3, cpu->r[28]);
|
|
/* 02395DD8 */ _t4 = cpu->r[1] + 0x00000018u;
|
|
/* 02395DD8 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 02395DDC */ cpu->r[12] = 0x101C0000u;
|
|
/* 02395DE0 */ _t5 = cpu->r[1] + 0x00000024u;
|
|
/* 02395DE0 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02395DE4 */ cpu->r[0] = 0x10080000u;
|
|
/* 02395DE8 */ _t6 = cpu->r[12] + 0x00006000u;
|
|
/* 02395DE8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02395DEC */ cpu->r[0] = cpu->r[0] + 0x00006794u;
|
|
/* 02395DF0 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02395DF0 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 02395DF4 */ cpu->r[28] = cpu->r[3];
|
|
/* 02395DF8 */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 02395DF8 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 02395DFC */ _t9 = cpu->r[12] + 0x00000254u;
|
|
/* 02395DFC */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02395E00 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02395E04 */ Gambit_fn_020ECD78(cpu);
|
|
/* 02395E08 */ _t10 = cpu->r[3] + 0x00000008u;
|
|
/* 02395E08 */ cpu->r[9] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02395E0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02395E10 */ cpu->r[31] = cpu->r[3];
|
|
/* 02395E14 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02395E14 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02395E14 */ if (_t12) goto L_02395E64; else goto L_02395E18;
|
|
L_02395E18: ; // 0x2395e18
|
|
/* 02395E18 */ _t13 = cpu->r[31] + 0x00000008u;
|
|
/* 02395E18 */ cpu->r[4] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02395E1C */ cpu->r[6] = 0x00000004u;
|
|
/* 02395E20 */ cpu->r[5] = 0x00000000u;
|
|
/* 02395E24 */ cpu->r[3] = cpu->r[28] + 0x00000010u;
|
|
/* 02395E28 */ Gambit_fn_028023CC(cpu);
|
|
/* 02395E2C */ _t14 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02395E2C */ cpu->r[30] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02395E30 */ _t15 = cpu->r[31] + 0x00000004u;
|
|
/* 02395E30 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02395E34 */ cpu->r[31] = cpu->r[31] - cpu->r[30];
|
|
/* 02395E38 */ cpu->r[29] = cpu->r[0] - cpu->r[30];
|
|
/* 02395E3C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[31]);
|
|
/* 02395E40 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02395E40 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02395E40 */ if (_t17) goto L_02395E64; else goto L_02395E44;
|
|
L_02395E44: ; // 0x2395e44
|
|
/* 02395E44 */ cpu->r[3] = cpu->r[28];
|
|
/* 02395E48 */ cpu->r[4] = cpu->r[29];
|
|
/* 02395E4C */ Gambit_fn_02395C10(cpu);
|
|
/* 02395E50 */ cpu->r[10] = cpu->r[29] + cpu->r[30];
|
|
/* 02395E54 */ _t18 = cpu->r[10] + 0x00000004u;
|
|
/* 02395E54 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02395E58 */ cpu->r[29] = cpu->r[0] - cpu->r[30];
|
|
/* 02395E5C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[31]);
|
|
/* 02395E60 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02395E60 */ _t20 = _t19 & 0x00000001u;
|
|
/* 02395E60 */ if (_t20) goto L_02395E64; else goto L_02395E44;
|
|
L_02395E64: ; // 0x2395e64
|
|
/* 02395E64 */ _t21 = cpu->r[1] + 0x00000010u;
|
|
/* 02395E64 */ cpu->r[28] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02395E68 */ _t22 = cpu->r[1] + 0x00000014u;
|
|
/* 02395E68 */ cpu->r[29] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02395E6C */ _t23 = cpu->r[1] + 0x00000024u;
|
|
/* 02395E6C */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02395E70 */ _t24 = cpu->r[1] + 0x00000018u;
|
|
/* 02395E70 */ cpu->r[30] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02395E74 */ cpu->lr = cpu->r[0];
|
|
/* 02395E78 */ _t25 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02395E78 */ cpu->r[31] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02395E7C */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 02395E80 */ return;
|
|
}
|
|
|
|
// fn_02395E84 @ 0x2395e84
|
|
void Gambit_fn_02395E84(CPUState* 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_0203F288: ; // 0x203f288
|
|
/* 0203F288 */ cpu->r[5] = cpu->r[3];
|
|
/* 0203F28C */ _t0 = cpu->r[5] + 0x000001ACu;
|
|
/* 0203F28C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0203F290 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0203F294 */ cpu->r[0] = rbrew_clz32(cpu->r[12]);
|
|
/* 0203F298 */ _t1 = cpu->r[3] + 0x00001EF0u;
|
|
/* 0203F298 */ cpu->r[3] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0203F29C */ cpu->r[4] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 0203F2A0 */ goto L_0204AE30;
|
|
L_0204AE30: ; // 0x204ae30
|
|
/* 0204AE30 */ cpu->r[0] = cpu->lr;
|
|
/* 0204AE34 */ _t2 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0204AE34 */ rbrew_write32(cpu->mem, _t2, cpu->r[1]);
|
|
/* 0204AE34 */ cpu->r[1] = _t2;
|
|
/* 0204AE38 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0204AE38 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 0204AE3C */ cpu->r[12] = cpu->r[3];
|
|
/* 0204AE40 */ cpu->r[31] = cpu->r[5];
|
|
/* 0204AE44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 0204AE48 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 0204AE48 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0204AE4C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0204AE4C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0204AE4C */ if (_t6) goto L_0204AE74; else goto L_0204AE50;
|
|
L_0204AE50: ; // 0x204ae50
|
|
/* 0204AE50 */ cpu->r[3] = cpu->r[31];
|
|
/* 0204AE54 */ _t7 = cpu->r[12] + 0x00000000u;
|
|
/* 0204AE54 */ rbrew_write32(cpu->mem, _t7, cpu->r[31]);
|
|
/* 0204AE58 */ Gambit_fn_020425FC(cpu);
|
|
/* 0204AE5C */ _t8 = cpu->r[31] + 0x000001CCu;
|
|
/* 0204AE5C */ cpu->r[10] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0204AE60 */ _t9 = cpu->r[10] + 0x00000024u;
|
|
/* 0204AE60 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0204AE64 */ cpu->ctr = cpu->r[0];
|
|
/* 0204AE68 */ cpu->r[3] = cpu->r[31];
|
|
/* 0204AE6C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0204AE70 */ goto L_0204AEAC;
|
|
L_0204AE74: ; // 0x204ae74
|
|
/* 0204AE74 */ _t10 = cpu->r[12] + 0x00000808u;
|
|
/* 0204AE74 */ cpu->r[9] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0204AE78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000100u);
|
|
/* 0204AE7C */ _t11 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0204AE7C */ _t12 = _t11 & 0x00000001u;
|
|
/* 0204AE7C */ if (_t12) goto L_0204AE80; else goto L_0204AEAC;
|
|
L_0204AE80: ; // 0x204ae80
|
|
/* 0204AE80 */ _t13 = cpu->r[12] + 0x00000808u;
|
|
/* 0204AE80 */ cpu->r[11] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0204AE84 */ cpu->r[10] = cpu->r[11] + 0x00000001u;
|
|
/* 0204AE88 */ cpu->r[0] = rbrew_rlwinm(cpu->r[11], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0204AE8C */ _t14 = cpu->r[12] + 0x00000808u;
|
|
/* 0204AE8C */ rbrew_write32(cpu->mem, _t14, cpu->r[10]);
|
|
/* 0204AE90 */ cpu->r[9] = cpu->r[12] + cpu->r[0];
|
|
/* 0204AE94 */ _t15 = cpu->r[9] + 0x00000404u;
|
|
/* 0204AE94 */ rbrew_write32(cpu->mem, _t15, cpu->r[31]);
|
|
/* 0204AE98 */ _t16 = cpu->r[31] + 0x000001CCu;
|
|
/* 0204AE98 */ cpu->r[10] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0204AE9C */ _t17 = cpu->r[10] + 0x00000024u;
|
|
/* 0204AE9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0204AEA0 */ cpu->ctr = cpu->r[0];
|
|
/* 0204AEA4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0204AEA8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0204AEAC: ; // 0x204aeac
|
|
/* 0204AEAC */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 0204AEAC */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0204AEB0 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0204AEB0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0204AEB4 */ cpu->lr = cpu->r[0];
|
|
/* 0204AEB8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0204AEBC */ return;
|
|
L_02395E84: ; // 0x2395e84
|
|
/* 02395E84 */ _t20 = cpu->r[3] + 0x00000004u;
|
|
/* 02395E84 */ cpu->r[3] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02395E88 */ goto L_0203F288;
|
|
}
|
|
|
|
// fn_02395E8C @ 0x2395e8c
|
|
void Gambit_fn_02395E8C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_02395E8C: ; // 0x2395e8c
|
|
/* 02395E8C */ cpu->r[0] = cpu->lr;
|
|
/* 02395E90 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02395E90 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02395E90 */ cpu->r[1] = _t0;
|
|
/* 02395E94 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02395E94 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02395E98 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02395E98 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02395E9C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02395E9C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02395EA0 */ _t4 = cpu->r[3] + 0x00000010u;
|
|
/* 02395EA0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02395EA4 */ _t5 = cpu->r[3] + 0x00000018u;
|
|
/* 02395EA4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02395EA8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02395EAC */ cpu->r[31] = cpu->r[30] + cpu->r[0];
|
|
/* 02395EB0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[31]);
|
|
/* 02395EB4 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02395EB4 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02395EB4 */ if (_t7) goto L_02395ECC; else goto L_02395EB8;
|
|
L_02395EB8: ; // 0x2395eb8
|
|
/* 02395EB8 */ _t8 = cpu->r[30] + 0x00000000u;
|
|
/* 02395EB8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02395EBC */ Gambit_fn_02395E84(cpu);
|
|
/* 02395EC0 */ cpu->r[30] = cpu->r[30] + 0x00000004u;
|
|
/* 02395EC4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[31]);
|
|
/* 02395EC8 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02395EC8 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02395EC8 */ if (_t10) goto L_02395ECC; else goto L_02395EB8;
|
|
L_02395ECC: ; // 0x2395ecc
|
|
/* 02395ECC */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 02395ECC */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02395ED0 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 02395ED0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02395ED4 */ cpu->lr = cpu->r[0];
|
|
/* 02395ED8 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02395ED8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02395EDC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02395EE0 */ return;
|
|
}
|
|
|
|
// fn_02395E90 @ 0x2395e90
|
|
void Gambit_fn_02395E90(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_02395E90: ; // 0x2395e90
|
|
/* 02395E90 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02395E90 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02395E90 */ cpu->r[1] = _t0;
|
|
/* 02395E94 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02395E94 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02395E98 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02395E98 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02395E9C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02395E9C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02395EA0 */ _t4 = cpu->r[3] + 0x00000010u;
|
|
/* 02395EA0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02395EA4 */ _t5 = cpu->r[3] + 0x00000018u;
|
|
/* 02395EA4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02395EA8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02395EAC */ cpu->r[31] = cpu->r[30] + cpu->r[0];
|
|
/* 02395EB0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[31]);
|
|
/* 02395EB4 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02395EB4 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02395EB4 */ if (_t7) goto L_02395ECC; else goto L_02395EB8;
|
|
L_02395EB8: ; // 0x2395eb8
|
|
/* 02395EB8 */ _t8 = cpu->r[30] + 0x00000000u;
|
|
/* 02395EB8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02395EBC */ Gambit_fn_02395E84(cpu);
|
|
/* 02395EC0 */ cpu->r[30] = cpu->r[30] + 0x00000004u;
|
|
/* 02395EC4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[31]);
|
|
/* 02395EC8 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02395EC8 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02395EC8 */ if (_t10) goto L_02395ECC; else goto L_02395EB8;
|
|
L_02395ECC: ; // 0x2395ecc
|
|
/* 02395ECC */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 02395ECC */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02395ED0 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 02395ED0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02395ED4 */ cpu->lr = cpu->r[0];
|
|
/* 02395ED8 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02395ED8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02395EDC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02395EE0 */ return;
|
|
}
|
|
|
|
// fn_02395EE4 @ 0x2395ee4
|
|
void Gambit_fn_02395EE4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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_02395EE4: ; // 0x2395ee4
|
|
/* 02395EE4 */ cpu->r[0] = cpu->lr;
|
|
/* 02395EE8 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 02395EE8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02395EE8 */ cpu->r[1] = _t0;
|
|
/* 02395EEC */ _t1 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02395EEC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02395EF0 */ cpu->r[31] = cpu->r[3];
|
|
/* 02395EF4 */ _t2 = cpu->r[1] + 0x00000044u;
|
|
/* 02395EF4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02395EF8 */ _t3 = cpu->r[31] + 0x00000000u;
|
|
/* 02395EF8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02395EFC */ _t4 = cpu->r[3] + 0x00000068u;
|
|
/* 02395EFC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 02395F00 */ _t5 = cpu->r[3] + 0x0000005Cu;
|
|
/* 02395F00 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 02395F04 */ _t6 = cpu->r[3] + 0x00000074u;
|
|
/* 02395F04 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 02395F08 */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 02395F08 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[12]);
|
|
/* 02395F0C */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02395F0C */ rbrew_write_f32(cpu->mem, _t8, cpu->f[0]);
|
|
/* 02395F10 */ _t9 = cpu->r[1] + 0x00000010u;
|
|
/* 02395F10 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[13]);
|
|
/* 02395F14 */ _t10 = cpu->r[3] + 0x00000078u;
|
|
/* 02395F14 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 02395F18 */ _t11 = cpu->r[3] + 0x00000060u;
|
|
/* 02395F18 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 02395F1C */ _t12 = cpu->r[3] + 0x0000006Cu;
|
|
/* 02395F1C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 02395F20 */ _t13 = cpu->r[1] + 0x00000014u;
|
|
/* 02395F20 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[12]);
|
|
/* 02395F24 */ _t14 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02395F24 */ rbrew_write_f32(cpu->mem, _t14, cpu->f[0]);
|
|
/* 02395F28 */ _t15 = cpu->r[1] + 0x00000018u;
|
|
/* 02395F28 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[13]);
|
|
/* 02395F2C */ _t16 = cpu->r[3] + 0x00000064u;
|
|
/* 02395F2C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 02395F30 */ _t17 = cpu->r[3] + 0x00000070u;
|
|
/* 02395F30 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 02395F34 */ _t18 = cpu->r[3] + 0x0000007Cu;
|
|
/* 02395F34 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 02395F38 */ _t19 = cpu->r[1] + 0x00000024u;
|
|
/* 02395F38 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[0]);
|
|
/* 02395F3C */ _t20 = cpu->r[1] + 0x00000020u;
|
|
/* 02395F3C */ rbrew_write_f32(cpu->mem, _t20, cpu->f[12]);
|
|
/* 02395F40 */ _t21 = cpu->r[1] + 0x00000028u;
|
|
/* 02395F40 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[13]);
|
|
/* 02395F44 */ _t22 = cpu->r[3] + 0x000046BCu;
|
|
/* 02395F44 */ cpu->r[12] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02395F48 */ _t23 = cpu->r[12] + 0x0000002Cu;
|
|
/* 02395F48 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02395F4C */ cpu->ctr = cpu->r[0];
|
|
/* 02395F50 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02395F54 */ _t24 = cpu->r[3] + 0x00000000u;
|
|
/* 02395F54 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 02395F58 */ _t25 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02395F58 */ rbrew_write_f32(cpu->mem, _t25, cpu->f[13]);
|
|
/* 02395F5C */ _t26 = cpu->r[3] + 0x00000004u;
|
|
/* 02395F5C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 02395F60 */ _t27 = cpu->r[1] + 0x00000030u;
|
|
/* 02395F60 */ rbrew_write_f32(cpu->mem, _t27, cpu->f[0]);
|
|
/* 02395F64 */ _t28 = cpu->r[3] + 0x00000008u;
|
|
/* 02395F64 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 02395F68 */ _t29 = cpu->r[31] + 0x00000004u;
|
|
/* 02395F68 */ cpu->r[3] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02395F6C */ _t30 = cpu->r[1] + 0x00000034u;
|
|
/* 02395F6C */ rbrew_write_f32(cpu->mem, _t30, cpu->f[13]);
|
|
/* 02395F70 */ _t31 = cpu->r[3] + 0x000001CCu;
|
|
/* 02395F70 */ cpu->r[12] = rbrew_read32(cpu->mem, _t31);
|
|
/* 02395F74 */ _t32 = cpu->r[12] + 0x0000002Cu;
|
|
/* 02395F74 */ cpu->r[0] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02395F78 */ cpu->ctr = cpu->r[0];
|
|
/* 02395F7C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02395F80 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02395F84 */ _t33 = cpu->r[31] + 0x00000000u;
|
|
/* 02395F84 */ cpu->r[12] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02395F88 */ _t34 = cpu->r[31] + 0x00000004u;
|
|
/* 02395F88 */ cpu->r[3] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02395F8C */ cpu->r[11] = 0x10080000u;
|
|
/* 02395F90 */ _t35 = cpu->r[12] + 0x0000008Cu;
|
|
/* 02395F90 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 02395F94 */ _t36 = cpu->r[11] + 0x0000679Cu;
|
|
/* 02395F94 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 02395F98 */ _t37 = cpu->r[3] + 0x000001CCu;
|
|
/* 02395F98 */ cpu->r[10] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02395F9C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[1]);
|
|
/* 02395FA0 */ _t38 = cpu->r[10] + 0x00000044u;
|
|
/* 02395FA0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02395FA4 */ _t39 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02395FA4 */ _t40 = _t39 & 0x00000001u;
|
|
/* 02395FA4 */ if (_t40) goto L_02395FA8; else goto L_02395FAC;
|
|
L_02395FA8: ; // 0x2395fa8
|
|
/* 02395FA8 */ cpu->f[1] = cpu->f[0];
|
|
L_02395FAC: ; // 0x2395fac
|
|
/* 02395FAC */ cpu->ctr = cpu->r[0];
|
|
/* 02395FB0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02395FB4 */ _t41 = cpu->r[31] + 0x00000004u;
|
|
/* 02395FB4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t41);
|
|
/* 02395FB8 */ _t42 = cpu->r[3] + 0x000001CCu;
|
|
/* 02395FB8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t42);
|
|
/* 02395FBC */ _t43 = cpu->r[11] + 0x00000024u;
|
|
/* 02395FBC */ cpu->r[8] = rbrew_read32(cpu->mem, _t43);
|
|
/* 02395FC0 */ cpu->ctr = cpu->r[8];
|
|
/* 02395FC4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02395FC8 */ _t44 = cpu->r[1] + 0x00000044u;
|
|
/* 02395FC8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t44);
|
|
/* 02395FCC */ _t45 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02395FCC */ cpu->r[31] = rbrew_read32(cpu->mem, _t45);
|
|
/* 02395FD0 */ cpu->lr = cpu->r[0];
|
|
/* 02395FD4 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 02395FD8 */ return;
|
|
}
|
|
|
|
// fn_02395EE8 @ 0x2395ee8
|
|
void Gambit_fn_02395EE8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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_02395EE8: ; // 0x2395ee8
|
|
/* 02395EE8 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 02395EE8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02395EE8 */ cpu->r[1] = _t0;
|
|
/* 02395EEC */ _t1 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02395EEC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02395EF0 */ cpu->r[31] = cpu->r[3];
|
|
/* 02395EF4 */ _t2 = cpu->r[1] + 0x00000044u;
|
|
/* 02395EF4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02395EF8 */ _t3 = cpu->r[31] + 0x00000000u;
|
|
/* 02395EF8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02395EFC */ _t4 = cpu->r[3] + 0x00000068u;
|
|
/* 02395EFC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 02395F00 */ _t5 = cpu->r[3] + 0x0000005Cu;
|
|
/* 02395F00 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 02395F04 */ _t6 = cpu->r[3] + 0x00000074u;
|
|
/* 02395F04 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 02395F08 */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 02395F08 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[12]);
|
|
/* 02395F0C */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02395F0C */ rbrew_write_f32(cpu->mem, _t8, cpu->f[0]);
|
|
/* 02395F10 */ _t9 = cpu->r[1] + 0x00000010u;
|
|
/* 02395F10 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[13]);
|
|
/* 02395F14 */ _t10 = cpu->r[3] + 0x00000078u;
|
|
/* 02395F14 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 02395F18 */ _t11 = cpu->r[3] + 0x00000060u;
|
|
/* 02395F18 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 02395F1C */ _t12 = cpu->r[3] + 0x0000006Cu;
|
|
/* 02395F1C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 02395F20 */ _t13 = cpu->r[1] + 0x00000014u;
|
|
/* 02395F20 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[12]);
|
|
/* 02395F24 */ _t14 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02395F24 */ rbrew_write_f32(cpu->mem, _t14, cpu->f[0]);
|
|
/* 02395F28 */ _t15 = cpu->r[1] + 0x00000018u;
|
|
/* 02395F28 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[13]);
|
|
/* 02395F2C */ _t16 = cpu->r[3] + 0x00000064u;
|
|
/* 02395F2C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 02395F30 */ _t17 = cpu->r[3] + 0x00000070u;
|
|
/* 02395F30 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 02395F34 */ _t18 = cpu->r[3] + 0x0000007Cu;
|
|
/* 02395F34 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 02395F38 */ _t19 = cpu->r[1] + 0x00000024u;
|
|
/* 02395F38 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[0]);
|
|
/* 02395F3C */ _t20 = cpu->r[1] + 0x00000020u;
|
|
/* 02395F3C */ rbrew_write_f32(cpu->mem, _t20, cpu->f[12]);
|
|
/* 02395F40 */ _t21 = cpu->r[1] + 0x00000028u;
|
|
/* 02395F40 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[13]);
|
|
/* 02395F44 */ _t22 = cpu->r[3] + 0x000046BCu;
|
|
/* 02395F44 */ cpu->r[12] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02395F48 */ _t23 = cpu->r[12] + 0x0000002Cu;
|
|
/* 02395F48 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02395F4C */ cpu->ctr = cpu->r[0];
|
|
/* 02395F50 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02395F54 */ _t24 = cpu->r[3] + 0x00000000u;
|
|
/* 02395F54 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 02395F58 */ _t25 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02395F58 */ rbrew_write_f32(cpu->mem, _t25, cpu->f[13]);
|
|
/* 02395F5C */ _t26 = cpu->r[3] + 0x00000004u;
|
|
/* 02395F5C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 02395F60 */ _t27 = cpu->r[1] + 0x00000030u;
|
|
/* 02395F60 */ rbrew_write_f32(cpu->mem, _t27, cpu->f[0]);
|
|
/* 02395F64 */ _t28 = cpu->r[3] + 0x00000008u;
|
|
/* 02395F64 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 02395F68 */ _t29 = cpu->r[31] + 0x00000004u;
|
|
/* 02395F68 */ cpu->r[3] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02395F6C */ _t30 = cpu->r[1] + 0x00000034u;
|
|
/* 02395F6C */ rbrew_write_f32(cpu->mem, _t30, cpu->f[13]);
|
|
/* 02395F70 */ _t31 = cpu->r[3] + 0x000001CCu;
|
|
/* 02395F70 */ cpu->r[12] = rbrew_read32(cpu->mem, _t31);
|
|
/* 02395F74 */ _t32 = cpu->r[12] + 0x0000002Cu;
|
|
/* 02395F74 */ cpu->r[0] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02395F78 */ cpu->ctr = cpu->r[0];
|
|
/* 02395F7C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02395F80 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02395F84 */ _t33 = cpu->r[31] + 0x00000000u;
|
|
/* 02395F84 */ cpu->r[12] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02395F88 */ _t34 = cpu->r[31] + 0x00000004u;
|
|
/* 02395F88 */ cpu->r[3] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02395F8C */ cpu->r[11] = 0x10080000u;
|
|
/* 02395F90 */ _t35 = cpu->r[12] + 0x0000008Cu;
|
|
/* 02395F90 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 02395F94 */ _t36 = cpu->r[11] + 0x0000679Cu;
|
|
/* 02395F94 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 02395F98 */ _t37 = cpu->r[3] + 0x000001CCu;
|
|
/* 02395F98 */ cpu->r[10] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02395F9C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[1]);
|
|
/* 02395FA0 */ _t38 = cpu->r[10] + 0x00000044u;
|
|
/* 02395FA0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02395FA4 */ _t39 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02395FA4 */ _t40 = _t39 & 0x00000001u;
|
|
/* 02395FA4 */ if (_t40) goto L_02395FA8; else goto L_02395FAC;
|
|
L_02395FA8: ; // 0x2395fa8
|
|
/* 02395FA8 */ cpu->f[1] = cpu->f[0];
|
|
L_02395FAC: ; // 0x2395fac
|
|
/* 02395FAC */ cpu->ctr = cpu->r[0];
|
|
/* 02395FB0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02395FB4 */ _t41 = cpu->r[31] + 0x00000004u;
|
|
/* 02395FB4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t41);
|
|
/* 02395FB8 */ _t42 = cpu->r[3] + 0x000001CCu;
|
|
/* 02395FB8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t42);
|
|
/* 02395FBC */ _t43 = cpu->r[11] + 0x00000024u;
|
|
/* 02395FBC */ cpu->r[8] = rbrew_read32(cpu->mem, _t43);
|
|
/* 02395FC0 */ cpu->ctr = cpu->r[8];
|
|
/* 02395FC4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02395FC8 */ _t44 = cpu->r[1] + 0x00000044u;
|
|
/* 02395FC8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t44);
|
|
/* 02395FCC */ _t45 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02395FCC */ cpu->r[31] = rbrew_read32(cpu->mem, _t45);
|
|
/* 02395FD0 */ cpu->lr = cpu->r[0];
|
|
/* 02395FD4 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 02395FD8 */ return;
|
|
}
|
|
|
|
// fn_02395FDC @ 0x2395fdc
|
|
void Gambit_fn_02395FDC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_02395FDC: ; // 0x2395fdc
|
|
/* 02395FDC */ cpu->r[0] = cpu->lr;
|
|
/* 02395FE0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02395FE0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02395FE0 */ cpu->r[1] = _t0;
|
|
/* 02395FE4 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02395FE4 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02395FE8 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02395FE8 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02395FEC */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02395FEC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02395FF0 */ _t4 = cpu->r[3] + 0x00000010u;
|
|
/* 02395FF0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02395FF4 */ _t5 = cpu->r[3] + 0x00000018u;
|
|
/* 02395FF4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02395FF8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02395FFC */ cpu->r[31] = cpu->r[30] + cpu->r[0];
|
|
/* 02396000 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[31]);
|
|
/* 02396004 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02396004 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02396004 */ if (_t7) goto L_0239601C; else goto L_02396008;
|
|
L_02396008: ; // 0x2396008
|
|
/* 02396008 */ _t8 = cpu->r[30] + 0x00000000u;
|
|
/* 02396008 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0239600C */ Gambit_fn_02395EE4(cpu);
|
|
/* 02396010 */ cpu->r[30] = cpu->r[30] + 0x00000004u;
|
|
/* 02396014 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[31]);
|
|
/* 02396018 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02396018 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02396018 */ if (_t10) goto L_0239601C; else goto L_02396008;
|
|
L_0239601C: ; // 0x239601c
|
|
/* 0239601C */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 0239601C */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02396020 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 02396020 */ cpu->r[30] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02396024 */ cpu->lr = cpu->r[0];
|
|
/* 02396028 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02396028 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0239602C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02396030 */ return;
|
|
}
|
|
|
|
// fn_02395FE0 @ 0x2395fe0
|
|
void Gambit_fn_02395FE0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_02395FE0: ; // 0x2395fe0
|
|
/* 02395FE0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02395FE0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02395FE0 */ cpu->r[1] = _t0;
|
|
/* 02395FE4 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02395FE4 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02395FE8 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02395FE8 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02395FEC */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02395FEC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02395FF0 */ _t4 = cpu->r[3] + 0x00000010u;
|
|
/* 02395FF0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02395FF4 */ _t5 = cpu->r[3] + 0x00000018u;
|
|
/* 02395FF4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02395FF8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02395FFC */ cpu->r[31] = cpu->r[30] + cpu->r[0];
|
|
/* 02396000 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[31]);
|
|
/* 02396004 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02396004 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02396004 */ if (_t7) goto L_0239601C; else goto L_02396008;
|
|
L_02396008: ; // 0x2396008
|
|
/* 02396008 */ _t8 = cpu->r[30] + 0x00000000u;
|
|
/* 02396008 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0239600C */ Gambit_fn_02395EE4(cpu);
|
|
/* 02396010 */ cpu->r[30] = cpu->r[30] + 0x00000004u;
|
|
/* 02396014 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[31]);
|
|
/* 02396018 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02396018 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02396018 */ if (_t10) goto L_0239601C; else goto L_02396008;
|
|
L_0239601C: ; // 0x239601c
|
|
/* 0239601C */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 0239601C */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02396020 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 02396020 */ cpu->r[30] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02396024 */ cpu->lr = cpu->r[0];
|
|
/* 02396028 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02396028 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0239602C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02396030 */ return;
|
|
}
|
|
|
|
// fn_02396034 @ 0x2396034
|
|
void Gambit_fn_02396034(CPUState* 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_02396034: ; // 0x2396034
|
|
/* 02396034 */ cpu->r[0] = cpu->lr;
|
|
/* 02396038 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02396038 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02396038 */ cpu->r[1] = _t0;
|
|
/* 0239603C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239603C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02396040 */ cpu->r[31] = cpu->r[3];
|
|
/* 02396040 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02396044 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02396044 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02396048 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02396048 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02396048 */ if (_t4) goto L_0239604C; else goto L_0239605C;
|
|
L_0239604C: ; // 0x239604c
|
|
/* 0239604C */ cpu->r[3] = 0x00000020u;
|
|
/* 02396050 */ Gambit_fn_02801A78(cpu);
|
|
/* 02396054 */ cpu->r[31] = cpu->r[3];
|
|
/* 02396054 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02396058 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02396058 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02396058 */ if (_t6) goto L_023960C0; else goto L_0239605C;
|
|
L_0239605C: ; // 0x239605c
|
|
/* 0239605C */ cpu->r[12] = 0x10080000u;
|
|
/* 02396060 */ cpu->r[12] = cpu->r[12] + 0x000067B8u;
|
|
/* 02396064 */ cpu->r[3] = cpu->r[31] + 0x00000010u;
|
|
/* 02396064 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02396068 */ _t7 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02396068 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 0239606C */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239606C */ _t9 = _t8 & 0x00000001u;
|
|
/* 0239606C */ if (_t9) goto L_02396070; else goto L_02396080;
|
|
L_02396070: ; // 0x2396070
|
|
/* 02396070 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02396074 */ Gambit_fn_02801A78(cpu);
|
|
/* 02396078 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239607C */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239607C */ _t11 = _t10 & 0x00000001u;
|
|
/* 0239607C */ if (_t11) goto L_023960A8; else goto L_02396080;
|
|
L_02396080: ; // 0x2396080
|
|
/* 02396080 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02396084 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02396084 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02396084 */ if (_t13) goto L_02396088; else goto L_02396098;
|
|
L_02396088: ; // 0x2396088
|
|
/* 02396088 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0239608C */ Gambit_fn_02801A78(cpu);
|
|
/* 02396090 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02396094 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02396094 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02396094 */ if (_t15) goto L_023960A8; else goto L_02396098;
|
|
L_02396098: ; // 0x2396098
|
|
/* 02396098 */ cpu->r[0] = 0x00000000u;
|
|
/* 0239609C */ _t16 = cpu->r[3] + 0x00000000u;
|
|
/* 0239609C */ rbrew_write32(cpu->mem, _t16, cpu->r[0]);
|
|
/* 023960A0 */ _t17 = cpu->r[3] + 0x00000008u;
|
|
/* 023960A0 */ rbrew_write32(cpu->mem, _t17, cpu->r[0]);
|
|
/* 023960A4 */ _t18 = cpu->r[3] + 0x00000004u;
|
|
/* 023960A4 */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
L_023960A8: ; // 0x23960a8
|
|
/* 023960A8 */ cpu->r[3] = cpu->r[31];
|
|
/* 023960AC */ Gambit_fn_02395DBC(cpu);
|
|
/* 023960B0 */ cpu->r[3] = cpu->r[31];
|
|
/* 023960B4 */ Gambit_fn_02395E8C(cpu);
|
|
/* 023960B8 */ cpu->r[3] = cpu->r[31];
|
|
/* 023960BC */ Gambit_fn_02395FDC(cpu);
|
|
L_023960C0: ; // 0x23960c0
|
|
/* 023960C0 */ _t19 = cpu->r[1] + 0x00000014u;
|
|
/* 023960C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 023960C4 */ cpu->r[3] = cpu->r[31];
|
|
/* 023960C8 */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023960C8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t20);
|
|
/* 023960CC */ cpu->lr = cpu->r[0];
|
|
/* 023960D0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 023960D4 */ return;
|
|
}
|
|
|
|
// fn_02396038 @ 0x2396038
|
|
void Gambit_fn_02396038(CPUState* 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_02396038: ; // 0x2396038
|
|
/* 02396038 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02396038 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02396038 */ cpu->r[1] = _t0;
|
|
/* 0239603C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239603C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02396040 */ cpu->r[31] = cpu->r[3];
|
|
/* 02396040 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02396044 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02396044 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02396048 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02396048 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02396048 */ if (_t4) goto L_0239604C; else goto L_0239605C;
|
|
L_0239604C: ; // 0x239604c
|
|
/* 0239604C */ cpu->r[3] = 0x00000020u;
|
|
/* 02396050 */ Gambit_fn_02801A78(cpu);
|
|
/* 02396054 */ cpu->r[31] = cpu->r[3];
|
|
/* 02396054 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02396058 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02396058 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02396058 */ if (_t6) goto L_023960C0; else goto L_0239605C;
|
|
L_0239605C: ; // 0x239605c
|
|
/* 0239605C */ cpu->r[12] = 0x10080000u;
|
|
/* 02396060 */ cpu->r[12] = cpu->r[12] + 0x000067B8u;
|
|
/* 02396064 */ cpu->r[3] = cpu->r[31] + 0x00000010u;
|
|
/* 02396064 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02396068 */ _t7 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02396068 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 0239606C */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239606C */ _t9 = _t8 & 0x00000001u;
|
|
/* 0239606C */ if (_t9) goto L_02396070; else goto L_02396080;
|
|
L_02396070: ; // 0x2396070
|
|
/* 02396070 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02396074 */ Gambit_fn_02801A78(cpu);
|
|
/* 02396078 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239607C */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239607C */ _t11 = _t10 & 0x00000001u;
|
|
/* 0239607C */ if (_t11) goto L_023960A8; else goto L_02396080;
|
|
L_02396080: ; // 0x2396080
|
|
/* 02396080 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02396084 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02396084 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02396084 */ if (_t13) goto L_02396088; else goto L_02396098;
|
|
L_02396088: ; // 0x2396088
|
|
/* 02396088 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0239608C */ Gambit_fn_02801A78(cpu);
|
|
/* 02396090 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02396094 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02396094 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02396094 */ if (_t15) goto L_023960A8; else goto L_02396098;
|
|
L_02396098: ; // 0x2396098
|
|
/* 02396098 */ cpu->r[0] = 0x00000000u;
|
|
/* 0239609C */ _t16 = cpu->r[3] + 0x00000000u;
|
|
/* 0239609C */ rbrew_write32(cpu->mem, _t16, cpu->r[0]);
|
|
/* 023960A0 */ _t17 = cpu->r[3] + 0x00000008u;
|
|
/* 023960A0 */ rbrew_write32(cpu->mem, _t17, cpu->r[0]);
|
|
/* 023960A4 */ _t18 = cpu->r[3] + 0x00000004u;
|
|
/* 023960A4 */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
L_023960A8: ; // 0x23960a8
|
|
/* 023960A8 */ cpu->r[3] = cpu->r[31];
|
|
/* 023960AC */ Gambit_fn_02395DBC(cpu);
|
|
/* 023960B0 */ cpu->r[3] = cpu->r[31];
|
|
/* 023960B4 */ Gambit_fn_02395E8C(cpu);
|
|
/* 023960B8 */ cpu->r[3] = cpu->r[31];
|
|
/* 023960BC */ Gambit_fn_02395FDC(cpu);
|
|
L_023960C0: ; // 0x23960c0
|
|
/* 023960C0 */ _t19 = cpu->r[1] + 0x00000014u;
|
|
/* 023960C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 023960C4 */ cpu->r[3] = cpu->r[31];
|
|
/* 023960C8 */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023960C8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t20);
|
|
/* 023960CC */ cpu->lr = cpu->r[0];
|
|
/* 023960D0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 023960D4 */ return;
|
|
}
|
|
|
|
// fn_023960D8 @ 0x23960d8
|
|
void Gambit_fn_023960D8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_023960D8: ; // 0x23960d8
|
|
/* 023960D8 */ cpu->r[0] = cpu->lr;
|
|
/* 023960DC */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 023960DC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 023960DC */ cpu->r[1] = _t0;
|
|
/* 023960E0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023960E0 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 023960E4 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 023960E4 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 023960E8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 023960E8 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 023960EC */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 023960EC */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 023960F0 */ cpu->r[29] = 0x101C0000u;
|
|
/* 023960F4 */ cpu->r[30] = cpu->r[3];
|
|
/* 023960F8 */ _t5 = cpu->r[29] + 0x00005B74u;
|
|
/* 023960F8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 023960F8 */ cpu->r[29] = _t5;
|
|
/* 023960FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02396100 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02396100 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02396100 */ if (_t7) goto L_02396104; else goto L_02396150;
|
|
L_02396104: ; // 0x2396104
|
|
/* 02396104 */ cpu->r[4] = cpu->r[30];
|
|
/* 02396108 */ cpu->r[3] = 0x00000020u;
|
|
/* 0239610C */ cpu->r[5] = 0x00000004u;
|
|
/* 02396110 */ Gambit_fn_02801ADC(cpu);
|
|
/* 02396114 */ cpu->r[31] = cpu->r[3];
|
|
/* 02396114 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02396118 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02396118 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02396118 */ if (_t9) goto L_02396138; else goto L_0239611C;
|
|
L_0239611C: ; // 0x239611c
|
|
/* 0239611C */ cpu->r[5] = 0x00000003u;
|
|
/* 02396120 */ cpu->r[4] = cpu->r[30];
|
|
/* 02396124 */ cpu->r[3] = cpu->r[31];
|
|
/* 02396128 */ Gambit_fn_02821D88(cpu);
|
|
/* 0239612C */ cpu->r[0] = 0x10080000u;
|
|
/* 02396130 */ cpu->r[0] = cpu->r[0] + 0x000067A8u;
|
|
/* 02396134 */ _t10 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02396134 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
L_02396138: ; // 0x2396138
|
|
/* 02396138 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0239613C */ cpu->r[3] = cpu->r[31];
|
|
/* 0239613C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02396140 */ _t11 = cpu->r[12] + 0x00005B78u;
|
|
/* 02396140 */ rbrew_write32(cpu->mem, _t11, cpu->r[31]);
|
|
/* 02396144 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02396144 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02396144 */ if (_t13) goto L_0239614C; else goto L_02396148;
|
|
L_02396148: ; // 0x2396148
|
|
/* 02396148 */ Gambit_fn_02396034(cpu);
|
|
L_0239614C: ; // 0x239614c
|
|
/* 0239614C */ _t14 = cpu->r[29] + 0x00000000u;
|
|
/* 0239614C */ rbrew_write32(cpu->mem, _t14, cpu->r[3]);
|
|
L_02396150: ; // 0x2396150
|
|
/* 02396150 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02396150 */ cpu->r[29] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02396154 */ _t16 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02396154 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02396158 */ _t17 = cpu->r[1] + 0x00000010u;
|
|
/* 02396158 */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0239615C */ cpu->lr = cpu->r[0];
|
|
/* 02396160 */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02396160 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02396164 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02396168 */ return;
|
|
}
|
|
|
|
// fn_023960DC @ 0x23960dc
|
|
void Gambit_fn_023960DC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_023960DC: ; // 0x23960dc
|
|
/* 023960DC */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 023960DC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 023960DC */ cpu->r[1] = _t0;
|
|
/* 023960E0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023960E0 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 023960E4 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 023960E4 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 023960E8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 023960E8 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 023960EC */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 023960EC */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 023960F0 */ cpu->r[29] = 0x101C0000u;
|
|
/* 023960F4 */ cpu->r[30] = cpu->r[3];
|
|
/* 023960F8 */ _t5 = cpu->r[29] + 0x00005B74u;
|
|
/* 023960F8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 023960F8 */ cpu->r[29] = _t5;
|
|
/* 023960FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02396100 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02396100 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02396100 */ if (_t7) goto L_02396104; else goto L_02396150;
|
|
L_02396104: ; // 0x2396104
|
|
/* 02396104 */ cpu->r[4] = cpu->r[30];
|
|
/* 02396108 */ cpu->r[3] = 0x00000020u;
|
|
/* 0239610C */ cpu->r[5] = 0x00000004u;
|
|
/* 02396110 */ Gambit_fn_02801ADC(cpu);
|
|
/* 02396114 */ cpu->r[31] = cpu->r[3];
|
|
/* 02396114 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02396118 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02396118 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02396118 */ if (_t9) goto L_02396138; else goto L_0239611C;
|
|
L_0239611C: ; // 0x239611c
|
|
/* 0239611C */ cpu->r[5] = 0x00000003u;
|
|
/* 02396120 */ cpu->r[4] = cpu->r[30];
|
|
/* 02396124 */ cpu->r[3] = cpu->r[31];
|
|
/* 02396128 */ Gambit_fn_02821D88(cpu);
|
|
/* 0239612C */ cpu->r[0] = 0x10080000u;
|
|
/* 02396130 */ cpu->r[0] = cpu->r[0] + 0x000067A8u;
|
|
/* 02396134 */ _t10 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02396134 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
L_02396138: ; // 0x2396138
|
|
/* 02396138 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0239613C */ cpu->r[3] = cpu->r[31];
|
|
/* 0239613C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02396140 */ _t11 = cpu->r[12] + 0x00005B78u;
|
|
/* 02396140 */ rbrew_write32(cpu->mem, _t11, cpu->r[31]);
|
|
/* 02396144 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02396144 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02396144 */ if (_t13) goto L_0239614C; else goto L_02396148;
|
|
L_02396148: ; // 0x2396148
|
|
/* 02396148 */ Gambit_fn_02396034(cpu);
|
|
L_0239614C: ; // 0x239614c
|
|
/* 0239614C */ _t14 = cpu->r[29] + 0x00000000u;
|
|
/* 0239614C */ rbrew_write32(cpu->mem, _t14, cpu->r[3]);
|
|
L_02396150: ; // 0x2396150
|
|
/* 02396150 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02396150 */ cpu->r[29] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02396154 */ _t16 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02396154 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02396158 */ _t17 = cpu->r[1] + 0x00000010u;
|
|
/* 02396158 */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0239615C */ cpu->lr = cpu->r[0];
|
|
/* 02396160 */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02396160 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02396164 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02396168 */ return;
|
|
}
|
|
|
|
// fn_0239616C @ 0x239616c
|
|
void Gambit_fn_0239616C(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_0239616C: ; // 0x239616c
|
|
/* 0239616C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02396170 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02396170 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02396170 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02396170 */ goto L_02396174;
|
|
L_02396174: ; // 0x2396174
|
|
/* 02396174 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02396174 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02396178 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02396178 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02396178 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02396178 */ goto L_0239617C;
|
|
L_0239617C: ; // 0x239617c
|
|
/* 0239617C */ 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_02396180 @ 0x2396180
|
|
void Gambit_fn_02396180(CPUState* cpu) {
|
|
uint32_t _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_02396180: ; // 0x2396180
|
|
/* 02396180 */ cpu->r[0] = cpu->lr;
|
|
/* 02396184 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02396184 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02396184 */ cpu->r[1] = _t0;
|
|
/* 02396188 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02396188 */ rbrew_write32(cpu->mem, _t1, cpu->r[28]);
|
|
/* 0239618C */ cpu->r[28] = cpu->r[4];
|
|
/* 02396190 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02396190 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02396194 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02396194 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 02396198 */ cpu->r[31] = cpu->r[3];
|
|
/* 02396198 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0239619C */ _t4 = cpu->r[1] + 0x00000010u;
|
|
/* 0239619C */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 023961A0 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 023961A0 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 023961A4 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023961A4 */ _t7 = _t6 & 0x00000001u;
|
|
/* 023961A4 */ if (_t7) goto L_02396208; else goto L_023961A8;
|
|
L_023961A8: ; // 0x23961a8
|
|
/* 023961A8 */ cpu->r[6] = 0x10080000u;
|
|
/* 023961AC */ cpu->r[6] = cpu->r[6] + 0x000067A8u;
|
|
/* 023961B0 */ cpu->r[12] = 0x101C0000u;
|
|
/* 023961B4 */ _t8 = cpu->r[31] + 0x0000000Cu;
|
|
/* 023961B4 */ rbrew_write32(cpu->mem, _t8, cpu->r[6]);
|
|
/* 023961B8 */ _t9 = cpu->r[12] + 0x00005B78u;
|
|
/* 023961B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 023961B8 */ cpu->r[12] = _t9;
|
|
/* 023961BC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]);
|
|
/* 023961C0 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023961C0 */ _t11 = _t10 & 0x00000001u;
|
|
/* 023961C0 */ if (_t11) goto L_023961C4; else goto L_023961EC;
|
|
L_023961C4: ; // 0x23961c4
|
|
/* 023961C4 */ cpu->r[30] = 0x101C0000u;
|
|
/* 023961C8 */ cpu->r[29] = 0x00000000u;
|
|
/* 023961CC */ _t12 = cpu->r[30] + 0x00005B74u;
|
|
/* 023961CC */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 023961D0 */ _t13 = cpu->r[12] + 0x00000000u;
|
|
/* 023961D0 */ rbrew_write32(cpu->mem, _t13, cpu->r[29]);
|
|
/* 023961D4 */ _t14 = cpu->r[3] + 0x0000001Cu;
|
|
/* 023961D4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t14);
|
|
/* 023961D8 */ _t15 = cpu->r[8] + 0x0000000Cu;
|
|
/* 023961D8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t15);
|
|
/* 023961DC */ cpu->ctr = cpu->r[10];
|
|
/* 023961E0 */ cpu->r[4] = 0x00000002u;
|
|
/* 023961E4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 023961E8 */ _t16 = cpu->r[30] + 0x00005B74u;
|
|
/* 023961E8 */ rbrew_write32(cpu->mem, _t16, cpu->r[29]);
|
|
L_023961EC: ; // 0x23961ec
|
|
/* 023961EC */ cpu->r[3] = cpu->r[31];
|
|
/* 023961F0 */ cpu->r[4] = 0x00000000u;
|
|
/* 023961F4 */ Gambit_fn_02821E68(cpu);
|
|
/* 023961F8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[28], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 023961F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 023961FC */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023961FC */ _t18 = _t17 & 0x00000001u;
|
|
/* 023961FC */ if (_t18) goto L_02396208; else goto L_02396200;
|
|
L_02396200: ; // 0x2396200
|
|
/* 02396200 */ cpu->r[3] = cpu->r[31];
|
|
/* 02396204 */ Gambit_fn_02801BB0(cpu);
|
|
L_02396208: ; // 0x2396208
|
|
/* 02396208 */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 02396208 */ cpu->r[28] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0239620C */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239620C */ cpu->r[29] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02396210 */ _t21 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02396210 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02396214 */ _t22 = cpu->r[1] + 0x00000010u;
|
|
/* 02396214 */ cpu->r[30] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02396218 */ cpu->lr = cpu->r[0];
|
|
/* 0239621C */ _t23 = cpu->r[1] + 0x00000014u;
|
|
/* 0239621C */ cpu->r[31] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02396220 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02396224 */ return;
|
|
}
|
|
|
|
// fn_02396184 @ 0x2396184
|
|
void Gambit_fn_02396184(CPUState* cpu) {
|
|
uint32_t _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_02396184: ; // 0x2396184
|
|
/* 02396184 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02396184 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02396184 */ cpu->r[1] = _t0;
|
|
/* 02396188 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02396188 */ rbrew_write32(cpu->mem, _t1, cpu->r[28]);
|
|
/* 0239618C */ cpu->r[28] = cpu->r[4];
|
|
/* 02396190 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02396190 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02396194 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02396194 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 02396198 */ cpu->r[31] = cpu->r[3];
|
|
/* 02396198 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0239619C */ _t4 = cpu->r[1] + 0x00000010u;
|
|
/* 0239619C */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 023961A0 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 023961A0 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 023961A4 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023961A4 */ _t7 = _t6 & 0x00000001u;
|
|
/* 023961A4 */ if (_t7) goto L_02396208; else goto L_023961A8;
|
|
L_023961A8: ; // 0x23961a8
|
|
/* 023961A8 */ cpu->r[6] = 0x10080000u;
|
|
/* 023961AC */ cpu->r[6] = cpu->r[6] + 0x000067A8u;
|
|
/* 023961B0 */ cpu->r[12] = 0x101C0000u;
|
|
/* 023961B4 */ _t8 = cpu->r[31] + 0x0000000Cu;
|
|
/* 023961B4 */ rbrew_write32(cpu->mem, _t8, cpu->r[6]);
|
|
/* 023961B8 */ _t9 = cpu->r[12] + 0x00005B78u;
|
|
/* 023961B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 023961B8 */ cpu->r[12] = _t9;
|
|
/* 023961BC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]);
|
|
/* 023961C0 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023961C0 */ _t11 = _t10 & 0x00000001u;
|
|
/* 023961C0 */ if (_t11) goto L_023961C4; else goto L_023961EC;
|
|
L_023961C4: ; // 0x23961c4
|
|
/* 023961C4 */ cpu->r[30] = 0x101C0000u;
|
|
/* 023961C8 */ cpu->r[29] = 0x00000000u;
|
|
/* 023961CC */ _t12 = cpu->r[30] + 0x00005B74u;
|
|
/* 023961CC */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 023961D0 */ _t13 = cpu->r[12] + 0x00000000u;
|
|
/* 023961D0 */ rbrew_write32(cpu->mem, _t13, cpu->r[29]);
|
|
/* 023961D4 */ _t14 = cpu->r[3] + 0x0000001Cu;
|
|
/* 023961D4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t14);
|
|
/* 023961D8 */ _t15 = cpu->r[8] + 0x0000000Cu;
|
|
/* 023961D8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t15);
|
|
/* 023961DC */ cpu->ctr = cpu->r[10];
|
|
/* 023961E0 */ cpu->r[4] = 0x00000002u;
|
|
/* 023961E4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 023961E8 */ _t16 = cpu->r[30] + 0x00005B74u;
|
|
/* 023961E8 */ rbrew_write32(cpu->mem, _t16, cpu->r[29]);
|
|
L_023961EC: ; // 0x23961ec
|
|
/* 023961EC */ cpu->r[3] = cpu->r[31];
|
|
/* 023961F0 */ cpu->r[4] = 0x00000000u;
|
|
/* 023961F4 */ Gambit_fn_02821E68(cpu);
|
|
/* 023961F8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[28], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 023961F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 023961FC */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023961FC */ _t18 = _t17 & 0x00000001u;
|
|
/* 023961FC */ if (_t18) goto L_02396208; else goto L_02396200;
|
|
L_02396200: ; // 0x2396200
|
|
/* 02396200 */ cpu->r[3] = cpu->r[31];
|
|
/* 02396204 */ Gambit_fn_02801BB0(cpu);
|
|
L_02396208: ; // 0x2396208
|
|
/* 02396208 */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 02396208 */ cpu->r[28] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0239620C */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239620C */ cpu->r[29] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02396210 */ _t21 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02396210 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02396214 */ _t22 = cpu->r[1] + 0x00000010u;
|
|
/* 02396214 */ cpu->r[30] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02396218 */ cpu->lr = cpu->r[0];
|
|
/* 0239621C */ _t23 = cpu->r[1] + 0x00000014u;
|
|
/* 0239621C */ cpu->r[31] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02396220 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02396224 */ return;
|
|
}
|
|
|
|
// fn_02396228 @ 0x2396228
|
|
void Gambit_fn_02396228(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_02396228: ; // 0x2396228
|
|
/* 02396228 */ cpu->r[0] = cpu->lr;
|
|
/* 0239622C */ cpu->r[3] = 0x101E0000u;
|
|
/* 02396230 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 02396230 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 02396234 */ cpu->r[0] = 0x10080000u;
|
|
/* 02396238 */ cpu->r[3] = cpu->r[3] + 0x00004A3Cu;
|
|
/* 0239623C */ cpu->r[0] = cpu->r[0] + 0x00006714u;
|
|
/* 02396240 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 02396240 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 02396240 */ cpu->r[1] = _t1;
|
|
/* 02396244 */ _t2 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02396244 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02396248 */ _t3 = cpu->r[3] + 0x00000004u;
|
|
/* 02396248 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0239624C */ cpu->r[0] = 0x10080000u;
|
|
/* 02396250 */ cpu->r[12] = 0x00000000u;
|
|
/* 02396254 */ cpu->r[0] = cpu->r[0] + 0x000067A0u;
|
|
/* 02396258 */ _t4 = cpu->r[3] + 0x00000010u;
|
|
/* 02396258 */ rbrew_write32(cpu->mem, _t4, cpu->r[12]);
|
|
/* 0239625C */ _t5 = cpu->r[3] + 0x00000000u;
|
|
/* 0239625C */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02396260 */ _t6 = cpu->r[3] + 0x00000008u;
|
|
/* 02396260 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02396264 */ Gambit_fn_027DB2F8(cpu);
|
|
/* 02396268 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0239626C */ cpu->r[3] = cpu->r[3] + 0x00005B68u;
|
|
/* 02396270 */ Gambit_fn_02C83090(cpu);
|
|
/* 02396274 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02396274 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02396278 */ cpu->lr = cpu->r[0];
|
|
/* 0239627C */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 02396280 */ return;
|
|
}
|
|
|
|
// fn_02396240 @ 0x2396240
|
|
void Gambit_fn_02396240(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_02396240: ; // 0x2396240
|
|
/* 02396240 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 02396240 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02396240 */ cpu->r[1] = _t0;
|
|
/* 02396244 */ _t1 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02396244 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02396248 */ _t2 = cpu->r[3] + 0x00000004u;
|
|
/* 02396248 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0239624C */ cpu->r[0] = 0x10080000u;
|
|
/* 02396250 */ cpu->r[12] = 0x00000000u;
|
|
/* 02396254 */ cpu->r[0] = cpu->r[0] + 0x000067A0u;
|
|
/* 02396258 */ _t3 = cpu->r[3] + 0x00000010u;
|
|
/* 02396258 */ rbrew_write32(cpu->mem, _t3, cpu->r[12]);
|
|
/* 0239625C */ _t4 = cpu->r[3] + 0x00000000u;
|
|
/* 0239625C */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02396260 */ _t5 = cpu->r[3] + 0x00000008u;
|
|
/* 02396260 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02396264 */ Gambit_fn_027DB2F8(cpu);
|
|
/* 02396268 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0239626C */ cpu->r[3] = cpu->r[3] + 0x00005B68u;
|
|
/* 02396270 */ Gambit_fn_02C83090(cpu);
|
|
/* 02396274 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02396274 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02396278 */ cpu->lr = cpu->r[0];
|
|
/* 0239627C */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 02396280 */ return;
|
|
}
|
|
|
|
// fn_02396284 @ 0x2396284
|
|
void Gambit_fn_02396284(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_02396284: ; // 0x2396284
|
|
/* 02396284 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02396288 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02396288 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02396288 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02396288 */ goto L_0239628C;
|
|
L_0239628C: ; // 0x239628c
|
|
/* 0239628C */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0239628C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02396290 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02396290 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02396290 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02396290 */ goto L_02396294;
|
|
L_02396294: ; // 0x2396294
|
|
/* 02396294 */ 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_02396298 @ 0x2396298
|
|
void Gambit_fn_02396298(CPUState* cpu) {
|
|
L_02396298: ; // 0x2396298
|
|
/* 02396298 */ return;
|
|
}
|
|
|
|
// fn_0239629C @ 0x239629c
|
|
void Gambit_fn_0239629C(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_0239629C: ; // 0x239629c
|
|
/* 0239629C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023962A0 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023962A0 */ _t1 = _t0 & 0x00000001u;
|
|
/* 023962A0 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 023962A0 */ goto L_023962A4;
|
|
L_023962A4: ; // 0x23962a4
|
|
/* 023962A4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 023962A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 023962A8 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023962A8 */ _t3 = _t2 & 0x00000001u;
|
|
/* 023962A8 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 023962A8 */ goto L_023962AC;
|
|
L_023962AC: ; // 0x23962ac
|
|
/* 023962AC */ 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_023962B0 @ 0x23962b0
|
|
void Gambit_fn_023962B0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_023962B0: ; // 0x23962b0
|
|
/* 023962B0 */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 023962B0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 023962B4 */ _t1 = cpu->r[3] + 0x00000008u;
|
|
/* 023962B4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 023962B8 */ cpu->r[12] = cpu->r[11] + cpu->r[12];
|
|
/* 023962BC */ cpu->r[11] = 0x10110000u;
|
|
/* 023962C0 */ _t2 = cpu->r[11] + 0x00007399u;
|
|
/* 023962C0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t2);
|
|
/* 023962C4 */ _t3 = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 023962C4 */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[0]);
|
|
/* 023962C8 */ return;
|
|
}
|
|
|
|
// fn_023962CC @ 0x23962cc
|
|
void Gambit_fn_023962CC(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_023962CC: ; // 0x23962cc
|
|
/* 023962CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023962D0 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023962D0 */ _t1 = _t0 & 0x00000001u;
|
|
/* 023962D0 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 023962D0 */ goto L_023962D4;
|
|
L_023962D4: ; // 0x23962d4
|
|
/* 023962D4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 023962D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 023962D8 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023962D8 */ _t3 = _t2 & 0x00000001u;
|
|
/* 023962D8 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 023962D8 */ goto L_023962DC;
|
|
L_023962DC: ; // 0x23962dc
|
|
/* 023962DC */ 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_023962E0 @ 0x23962e0
|
|
void Gambit_fn_023962E0(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_023962E0: ; // 0x23962e0
|
|
/* 023962E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023962E4 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023962E4 */ _t1 = _t0 & 0x00000001u;
|
|
/* 023962E4 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 023962E4 */ goto L_023962E8;
|
|
L_023962E8: ; // 0x23962e8
|
|
/* 023962E8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 023962E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 023962EC */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023962EC */ _t3 = _t2 & 0x00000001u;
|
|
/* 023962EC */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 023962EC */ goto L_023962F0;
|
|
L_023962F0: ; // 0x23962f0
|
|
/* 023962F0 */ 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_023962F4 @ 0x23962f4
|
|
void Gambit_fn_023962F4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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_023962F4: ; // 0x23962f4
|
|
/* 023962F4 */ cpu->r[0] = cpu->lr;
|
|
/* 023962F8 */ _t0 = cpu->r[1] + 0xFFFFFF78u;
|
|
/* 023962F8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 023962F8 */ cpu->r[1] = _t0;
|
|
/* 023962FC */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 023962FC */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 02396300 */ _t2 = cpu->r[1] + 0x00000084u;
|
|
/* 02396300 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02396304 */ _t3 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02396304 */ rbrew_write32(cpu->mem, _t3, cpu->r[8]);
|
|
/* 02396308 */ _t4 = cpu->r[1] + 0x00000020u;
|
|
/* 02396308 */ rbrew_write32(cpu->mem, _t4, cpu->r[5]);
|
|
/* 0239630C */ _t5 = cpu->r[1] + 0x00000018u;
|
|
/* 0239630C */ rbrew_write32(cpu->mem, _t5, cpu->r[3]);
|
|
/* 02396310 */ _t6 = cpu->r[1] + 0x0000008Cu;
|
|
/* 02396310 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02396314 */ _t7 = cpu->r[1] + 0x00000078u;
|
|
/* 02396314 */ rbrew_write32(cpu->mem, _t7, cpu->r[28]);
|
|
/* 02396318 */ _t8 = cpu->r[1] + 0x00000080u;
|
|
/* 02396318 */ rbrew_write32(cpu->mem, _t8, cpu->r[30]);
|
|
/* 0239631C */ _t9 = cpu->r[1] + 0x00000024u;
|
|
/* 0239631C */ rbrew_write32(cpu->mem, _t9, cpu->r[6]);
|
|
/* 02396320 */ _t10 = cpu->r[1] + 0x00000030u;
|
|
/* 02396320 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 02396324 */ _t11 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02396324 */ rbrew_write32(cpu->mem, _t11, cpu->r[29]);
|
|
/* 02396328 */ _t12 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02396328 */ rbrew_write32(cpu->mem, _t12, cpu->r[4]);
|
|
/* 0239632C */ _t13 = cpu->r[1] + 0x00000028u;
|
|
/* 0239632C */ rbrew_write32(cpu->mem, _t13, cpu->r[7]);
|
|
/* 02396330 */ _t14 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 02396330 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02396330 */ if (_t15) goto L_02396334; else goto L_02396354;
|
|
L_02396334: ; // 0x2396334
|
|
/* 02396334 */ _t16 = cpu->r[1] + 0x00000048u;
|
|
/* 02396334 */ rbrew_write_f64(cpu->mem, _t16, cpu->f[3]);
|
|
/* 02396338 */ _t17 = cpu->r[1] + 0x00000068u;
|
|
/* 02396338 */ rbrew_write_f64(cpu->mem, _t17, cpu->f[7]);
|
|
/* 0239633C */ _t18 = cpu->r[1] + 0x00000060u;
|
|
/* 0239633C */ rbrew_write_f64(cpu->mem, _t18, cpu->f[6]);
|
|
/* 02396340 */ _t19 = cpu->r[1] + 0x00000040u;
|
|
/* 02396340 */ rbrew_write_f64(cpu->mem, _t19, cpu->f[2]);
|
|
/* 02396344 */ _t20 = cpu->r[1] + 0x00000050u;
|
|
/* 02396344 */ rbrew_write_f64(cpu->mem, _t20, cpu->f[4]);
|
|
/* 02396348 */ _t21 = cpu->r[1] + 0x00000070u;
|
|
/* 02396348 */ rbrew_write_f64(cpu->mem, _t21, cpu->f[8]);
|
|
/* 0239634C */ _t22 = cpu->r[1] + 0x00000058u;
|
|
/* 0239634C */ rbrew_write_f64(cpu->mem, _t22, cpu->f[5]);
|
|
/* 02396350 */ _t23 = cpu->r[1] + 0x00000038u;
|
|
/* 02396350 */ rbrew_write_f64(cpu->mem, _t23, cpu->f[1]);
|
|
L_02396354: ; // 0x2396354
|
|
/* 02396354 */ cpu->r[31] = cpu->r[3];
|
|
/* 02396354 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02396358 */ cpu->r[30] = cpu->r[4];
|
|
/* 0239635C */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239635C */ _t25 = _t24 & 0x00000001u;
|
|
/* 0239635C */ if (_t25) goto L_02396360; else goto L_02396370;
|
|
L_02396360: ; // 0x2396360
|
|
/* 02396360 */ cpu->r[3] = 0x0000010Cu;
|
|
/* 02396364 */ Gambit_fn_02801A78(cpu);
|
|
/* 02396368 */ cpu->r[31] = cpu->r[3];
|
|
/* 02396368 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0239636C */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239636C */ _t27 = _t26 & 0x00000001u;
|
|
/* 0239636C */ if (_t27) goto L_02396434; else goto L_02396370;
|
|
L_02396370: ; // 0x2396370
|
|
/* 02396370 */ cpu->r[29] = cpu->r[31];
|
|
/* 02396370 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 02396374 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02396374 */ _t29 = _t28 & 0x00000001u;
|
|
/* 02396374 */ if (_t29) goto L_02396378; else goto L_02396388;
|
|
L_02396378: ; // 0x2396378
|
|
/* 02396378 */ cpu->r[3] = 0x0000010Cu;
|
|
/* 0239637C */ Gambit_fn_02801A78(cpu);
|
|
/* 02396380 */ cpu->r[29] = cpu->r[3];
|
|
/* 02396380 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 02396384 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02396384 */ _t31 = _t30 & 0x00000001u;
|
|
/* 02396384 */ if (_t31) goto L_023963F8; else goto L_02396388;
|
|
L_02396388: ; // 0x2396388
|
|
/* 02396388 */ cpu->r[3] = cpu->r[29];
|
|
/* 02396388 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239638C */ cpu->r[28] = 0x10110000u;
|
|
/* 02396390 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02396390 */ _t33 = _t32 & 0x00000001u;
|
|
/* 02396390 */ if (_t33) goto L_02396394; else goto L_023963C0;
|
|
L_02396394: ; // 0x2396394
|
|
/* 02396394 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02396398 */ Gambit_fn_02801A78(cpu);
|
|
/* 0239639C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023963A0 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023963A0 */ _t35 = _t34 & 0x00000001u;
|
|
/* 023963A0 */ if (_t35) goto L_023963A4; else goto L_023963C0;
|
|
L_023963A4: ; // 0x23963a4
|
|
/* 023963A4 */ cpu->r[7] = 0x10080000u;
|
|
/* 023963A8 */ _t36 = cpu->r[28] + 0x00007399u;
|
|
/* 023963A8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t36);
|
|
/* 023963AC */ cpu->r[7] = cpu->r[7] + 0x00006744u;
|
|
/* 023963B0 */ _t37 = cpu->r[29] + 0x00000000u;
|
|
/* 023963B0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t37);
|
|
/* 023963B4 */ _t38 = cpu->r[29] + 0x00000004u;
|
|
/* 023963B4 */ rbrew_write32(cpu->mem, _t38, cpu->r[7]);
|
|
/* 023963B8 */ _t39 = cpu->r[8] + 0x00000000u;
|
|
/* 023963B8 */ rbrew_write8(cpu->mem, _t39, (uint8_t)cpu->r[0]);
|
|
/* 023963BC */ goto L_023963F8;
|
|
L_023963C0: ; // 0x23963c0
|
|
/* 023963C0 */ cpu->r[5] = 0x10080000u;
|
|
/* 023963C4 */ cpu->r[0] = cpu->r[29] + 0x0000000Cu;
|
|
/* 023963C8 */ cpu->r[5] = cpu->r[5] + 0x0000672Cu;
|
|
/* 023963CC */ _t40 = cpu->r[3] + 0x00000000u;
|
|
/* 023963CC */ rbrew_write32(cpu->mem, _t40, cpu->r[0]);
|
|
/* 023963D0 */ cpu->r[6] = 0x00000100u;
|
|
/* 023963D4 */ _t41 = cpu->r[3] + 0x00000004u;
|
|
/* 023963D4 */ rbrew_write32(cpu->mem, _t41, cpu->r[5]);
|
|
/* 023963D8 */ _t42 = cpu->r[3] + 0x00000008u;
|
|
/* 023963D8 */ rbrew_write32(cpu->mem, _t42, cpu->r[6]);
|
|
/* 023963DC */ _t43 = cpu->r[28] + 0x00007399u;
|
|
/* 023963DC */ cpu->r[0] = rbrew_read8(cpu->mem, _t43);
|
|
/* 023963E0 */ cpu->r[7] = 0x10080000u;
|
|
/* 023963E4 */ _t44 = cpu->r[29] + 0x00000000u;
|
|
/* 023963E4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t44);
|
|
/* 023963E8 */ cpu->r[7] = cpu->r[7] + 0x00006744u;
|
|
/* 023963EC */ _t45 = cpu->r[29] + 0x0000010Bu;
|
|
/* 023963EC */ rbrew_write8(cpu->mem, _t45, (uint8_t)cpu->r[0]);
|
|
/* 023963F0 */ _t46 = cpu->r[29] + 0x00000004u;
|
|
/* 023963F0 */ rbrew_write32(cpu->mem, _t46, cpu->r[7]);
|
|
/* 023963F4 */ _t47 = cpu->r[8] + 0x00000000u;
|
|
/* 023963F4 */ rbrew_write8(cpu->mem, _t47, (uint8_t)cpu->r[0]);
|
|
L_023963F8: ; // 0x23963f8
|
|
/* 023963F8 */ cpu->r[9] = 0x10080000u;
|
|
/* 023963FC */ cpu->r[12] = 0x00000002u;
|
|
/* 02396400 */ cpu->r[9] = cpu->r[9] + 0x00006774u;
|
|
/* 02396404 */ cpu->r[0] = cpu->r[1] + 0x00000090u;
|
|
/* 02396408 */ _t48 = cpu->r[31] + 0x00000004u;
|
|
/* 02396408 */ rbrew_write32(cpu->mem, _t48, cpu->r[9]);
|
|
/* 0239640C */ cpu->r[11] = cpu->r[1] + 0x00000018u;
|
|
/* 02396410 */ _t49 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02396410 */ rbrew_write32(cpu->mem, _t49, cpu->r[0]);
|
|
/* 02396414 */ cpu->r[0] = 0x00000000u;
|
|
/* 02396418 */ _t50 = cpu->r[1] + 0x00000010u;
|
|
/* 02396418 */ rbrew_write32(cpu->mem, _t50, cpu->r[11]);
|
|
/* 0239641C */ cpu->r[3] = cpu->r[31];
|
|
/* 02396420 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02396424 */ _t51 = cpu->r[1] + 0x00000009u;
|
|
/* 02396424 */ rbrew_write8(cpu->mem, _t51, (uint8_t)cpu->r[0]);
|
|
/* 02396428 */ cpu->r[4] = cpu->r[30];
|
|
/* 0239642C */ _t52 = cpu->r[1] + 0x00000008u;
|
|
/* 0239642C */ rbrew_write8(cpu->mem, _t52, (uint8_t)cpu->r[12]);
|
|
/* 02396430 */ Gambit_fn_0282A5DC(cpu);
|
|
L_02396434: ; // 0x2396434
|
|
/* 02396434 */ _t53 = cpu->r[1] + 0x00000078u;
|
|
/* 02396434 */ cpu->r[28] = rbrew_read32(cpu->mem, _t53);
|
|
/* 02396438 */ _t54 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02396438 */ cpu->r[29] = rbrew_read32(cpu->mem, _t54);
|
|
/* 0239643C */ _t55 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0239643C */ cpu->r[0] = rbrew_read32(cpu->mem, _t55);
|
|
/* 02396440 */ cpu->r[3] = cpu->r[31];
|
|
/* 02396444 */ _t56 = cpu->r[1] + 0x00000080u;
|
|
/* 02396444 */ cpu->r[30] = rbrew_read32(cpu->mem, _t56);
|
|
/* 02396448 */ cpu->lr = cpu->r[0];
|
|
/* 0239644C */ _t57 = cpu->r[1] + 0x00000084u;
|
|
/* 0239644C */ cpu->r[31] = rbrew_read32(cpu->mem, _t57);
|
|
/* 02396450 */ cpu->r[1] = cpu->r[1] + 0x00000088u;
|
|
/* 02396454 */ return;
|
|
}
|
|
|
|
// fn_023962F8 @ 0x23962f8
|
|
void Gambit_fn_023962F8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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_023962F8: ; // 0x23962f8
|
|
/* 023962F8 */ _t0 = cpu->r[1] + 0xFFFFFF78u;
|
|
/* 023962F8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 023962F8 */ cpu->r[1] = _t0;
|
|
/* 023962FC */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 023962FC */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 02396300 */ _t2 = cpu->r[1] + 0x00000084u;
|
|
/* 02396300 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02396304 */ _t3 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02396304 */ rbrew_write32(cpu->mem, _t3, cpu->r[8]);
|
|
/* 02396308 */ _t4 = cpu->r[1] + 0x00000020u;
|
|
/* 02396308 */ rbrew_write32(cpu->mem, _t4, cpu->r[5]);
|
|
/* 0239630C */ _t5 = cpu->r[1] + 0x00000018u;
|
|
/* 0239630C */ rbrew_write32(cpu->mem, _t5, cpu->r[3]);
|
|
/* 02396310 */ _t6 = cpu->r[1] + 0x0000008Cu;
|
|
/* 02396310 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02396314 */ _t7 = cpu->r[1] + 0x00000078u;
|
|
/* 02396314 */ rbrew_write32(cpu->mem, _t7, cpu->r[28]);
|
|
/* 02396318 */ _t8 = cpu->r[1] + 0x00000080u;
|
|
/* 02396318 */ rbrew_write32(cpu->mem, _t8, cpu->r[30]);
|
|
/* 0239631C */ _t9 = cpu->r[1] + 0x00000024u;
|
|
/* 0239631C */ rbrew_write32(cpu->mem, _t9, cpu->r[6]);
|
|
/* 02396320 */ _t10 = cpu->r[1] + 0x00000030u;
|
|
/* 02396320 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 02396324 */ _t11 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02396324 */ rbrew_write32(cpu->mem, _t11, cpu->r[29]);
|
|
/* 02396328 */ _t12 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02396328 */ rbrew_write32(cpu->mem, _t12, cpu->r[4]);
|
|
/* 0239632C */ _t13 = cpu->r[1] + 0x00000028u;
|
|
/* 0239632C */ rbrew_write32(cpu->mem, _t13, cpu->r[7]);
|
|
/* 02396330 */ _t14 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 02396330 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02396330 */ if (_t15) goto L_02396334; else goto L_02396354;
|
|
L_02396334: ; // 0x2396334
|
|
/* 02396334 */ _t16 = cpu->r[1] + 0x00000048u;
|
|
/* 02396334 */ rbrew_write_f64(cpu->mem, _t16, cpu->f[3]);
|
|
/* 02396338 */ _t17 = cpu->r[1] + 0x00000068u;
|
|
/* 02396338 */ rbrew_write_f64(cpu->mem, _t17, cpu->f[7]);
|
|
/* 0239633C */ _t18 = cpu->r[1] + 0x00000060u;
|
|
/* 0239633C */ rbrew_write_f64(cpu->mem, _t18, cpu->f[6]);
|
|
/* 02396340 */ _t19 = cpu->r[1] + 0x00000040u;
|
|
/* 02396340 */ rbrew_write_f64(cpu->mem, _t19, cpu->f[2]);
|
|
/* 02396344 */ _t20 = cpu->r[1] + 0x00000050u;
|
|
/* 02396344 */ rbrew_write_f64(cpu->mem, _t20, cpu->f[4]);
|
|
/* 02396348 */ _t21 = cpu->r[1] + 0x00000070u;
|
|
/* 02396348 */ rbrew_write_f64(cpu->mem, _t21, cpu->f[8]);
|
|
/* 0239634C */ _t22 = cpu->r[1] + 0x00000058u;
|
|
/* 0239634C */ rbrew_write_f64(cpu->mem, _t22, cpu->f[5]);
|
|
/* 02396350 */ _t23 = cpu->r[1] + 0x00000038u;
|
|
/* 02396350 */ rbrew_write_f64(cpu->mem, _t23, cpu->f[1]);
|
|
L_02396354: ; // 0x2396354
|
|
/* 02396354 */ cpu->r[31] = cpu->r[3];
|
|
/* 02396354 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02396358 */ cpu->r[30] = cpu->r[4];
|
|
/* 0239635C */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239635C */ _t25 = _t24 & 0x00000001u;
|
|
/* 0239635C */ if (_t25) goto L_02396360; else goto L_02396370;
|
|
L_02396360: ; // 0x2396360
|
|
/* 02396360 */ cpu->r[3] = 0x0000010Cu;
|
|
/* 02396364 */ Gambit_fn_02801A78(cpu);
|
|
/* 02396368 */ cpu->r[31] = cpu->r[3];
|
|
/* 02396368 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0239636C */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239636C */ _t27 = _t26 & 0x00000001u;
|
|
/* 0239636C */ if (_t27) goto L_02396434; else goto L_02396370;
|
|
L_02396370: ; // 0x2396370
|
|
/* 02396370 */ cpu->r[29] = cpu->r[31];
|
|
/* 02396370 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 02396374 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02396374 */ _t29 = _t28 & 0x00000001u;
|
|
/* 02396374 */ if (_t29) goto L_02396378; else goto L_02396388;
|
|
L_02396378: ; // 0x2396378
|
|
/* 02396378 */ cpu->r[3] = 0x0000010Cu;
|
|
/* 0239637C */ Gambit_fn_02801A78(cpu);
|
|
/* 02396380 */ cpu->r[29] = cpu->r[3];
|
|
/* 02396380 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 02396384 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02396384 */ _t31 = _t30 & 0x00000001u;
|
|
/* 02396384 */ if (_t31) goto L_023963F8; else goto L_02396388;
|
|
L_02396388: ; // 0x2396388
|
|
/* 02396388 */ cpu->r[3] = cpu->r[29];
|
|
/* 02396388 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239638C */ cpu->r[28] = 0x10110000u;
|
|
/* 02396390 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02396390 */ _t33 = _t32 & 0x00000001u;
|
|
/* 02396390 */ if (_t33) goto L_02396394; else goto L_023963C0;
|
|
L_02396394: ; // 0x2396394
|
|
/* 02396394 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02396398 */ Gambit_fn_02801A78(cpu);
|
|
/* 0239639C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023963A0 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023963A0 */ _t35 = _t34 & 0x00000001u;
|
|
/* 023963A0 */ if (_t35) goto L_023963A4; else goto L_023963C0;
|
|
L_023963A4: ; // 0x23963a4
|
|
/* 023963A4 */ cpu->r[7] = 0x10080000u;
|
|
/* 023963A8 */ _t36 = cpu->r[28] + 0x00007399u;
|
|
/* 023963A8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t36);
|
|
/* 023963AC */ cpu->r[7] = cpu->r[7] + 0x00006744u;
|
|
/* 023963B0 */ _t37 = cpu->r[29] + 0x00000000u;
|
|
/* 023963B0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t37);
|
|
/* 023963B4 */ _t38 = cpu->r[29] + 0x00000004u;
|
|
/* 023963B4 */ rbrew_write32(cpu->mem, _t38, cpu->r[7]);
|
|
/* 023963B8 */ _t39 = cpu->r[8] + 0x00000000u;
|
|
/* 023963B8 */ rbrew_write8(cpu->mem, _t39, (uint8_t)cpu->r[0]);
|
|
/* 023963BC */ goto L_023963F8;
|
|
L_023963C0: ; // 0x23963c0
|
|
/* 023963C0 */ cpu->r[5] = 0x10080000u;
|
|
/* 023963C4 */ cpu->r[0] = cpu->r[29] + 0x0000000Cu;
|
|
/* 023963C8 */ cpu->r[5] = cpu->r[5] + 0x0000672Cu;
|
|
/* 023963CC */ _t40 = cpu->r[3] + 0x00000000u;
|
|
/* 023963CC */ rbrew_write32(cpu->mem, _t40, cpu->r[0]);
|
|
/* 023963D0 */ cpu->r[6] = 0x00000100u;
|
|
/* 023963D4 */ _t41 = cpu->r[3] + 0x00000004u;
|
|
/* 023963D4 */ rbrew_write32(cpu->mem, _t41, cpu->r[5]);
|
|
/* 023963D8 */ _t42 = cpu->r[3] + 0x00000008u;
|
|
/* 023963D8 */ rbrew_write32(cpu->mem, _t42, cpu->r[6]);
|
|
/* 023963DC */ _t43 = cpu->r[28] + 0x00007399u;
|
|
/* 023963DC */ cpu->r[0] = rbrew_read8(cpu->mem, _t43);
|
|
/* 023963E0 */ cpu->r[7] = 0x10080000u;
|
|
/* 023963E4 */ _t44 = cpu->r[29] + 0x00000000u;
|
|
/* 023963E4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t44);
|
|
/* 023963E8 */ cpu->r[7] = cpu->r[7] + 0x00006744u;
|
|
/* 023963EC */ _t45 = cpu->r[29] + 0x0000010Bu;
|
|
/* 023963EC */ rbrew_write8(cpu->mem, _t45, (uint8_t)cpu->r[0]);
|
|
/* 023963F0 */ _t46 = cpu->r[29] + 0x00000004u;
|
|
/* 023963F0 */ rbrew_write32(cpu->mem, _t46, cpu->r[7]);
|
|
/* 023963F4 */ _t47 = cpu->r[8] + 0x00000000u;
|
|
/* 023963F4 */ rbrew_write8(cpu->mem, _t47, (uint8_t)cpu->r[0]);
|
|
L_023963F8: ; // 0x23963f8
|
|
/* 023963F8 */ cpu->r[9] = 0x10080000u;
|
|
/* 023963FC */ cpu->r[12] = 0x00000002u;
|
|
/* 02396400 */ cpu->r[9] = cpu->r[9] + 0x00006774u;
|
|
/* 02396404 */ cpu->r[0] = cpu->r[1] + 0x00000090u;
|
|
/* 02396408 */ _t48 = cpu->r[31] + 0x00000004u;
|
|
/* 02396408 */ rbrew_write32(cpu->mem, _t48, cpu->r[9]);
|
|
/* 0239640C */ cpu->r[11] = cpu->r[1] + 0x00000018u;
|
|
/* 02396410 */ _t49 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02396410 */ rbrew_write32(cpu->mem, _t49, cpu->r[0]);
|
|
/* 02396414 */ cpu->r[0] = 0x00000000u;
|
|
/* 02396418 */ _t50 = cpu->r[1] + 0x00000010u;
|
|
/* 02396418 */ rbrew_write32(cpu->mem, _t50, cpu->r[11]);
|
|
/* 0239641C */ cpu->r[3] = cpu->r[31];
|
|
/* 02396420 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02396424 */ _t51 = cpu->r[1] + 0x00000009u;
|
|
/* 02396424 */ rbrew_write8(cpu->mem, _t51, (uint8_t)cpu->r[0]);
|
|
/* 02396428 */ cpu->r[4] = cpu->r[30];
|
|
/* 0239642C */ _t52 = cpu->r[1] + 0x00000008u;
|
|
/* 0239642C */ rbrew_write8(cpu->mem, _t52, (uint8_t)cpu->r[12]);
|
|
/* 02396430 */ Gambit_fn_0282A5DC(cpu);
|
|
L_02396434: ; // 0x2396434
|
|
/* 02396434 */ _t53 = cpu->r[1] + 0x00000078u;
|
|
/* 02396434 */ cpu->r[28] = rbrew_read32(cpu->mem, _t53);
|
|
/* 02396438 */ _t54 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02396438 */ cpu->r[29] = rbrew_read32(cpu->mem, _t54);
|
|
/* 0239643C */ _t55 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0239643C */ cpu->r[0] = rbrew_read32(cpu->mem, _t55);
|
|
/* 02396440 */ cpu->r[3] = cpu->r[31];
|
|
/* 02396444 */ _t56 = cpu->r[1] + 0x00000080u;
|
|
/* 02396444 */ cpu->r[30] = rbrew_read32(cpu->mem, _t56);
|
|
/* 02396448 */ cpu->lr = cpu->r[0];
|
|
/* 0239644C */ _t57 = cpu->r[1] + 0x00000084u;
|
|
/* 0239644C */ cpu->r[31] = rbrew_read32(cpu->mem, _t57);
|
|
/* 02396450 */ cpu->r[1] = cpu->r[1] + 0x00000088u;
|
|
/* 02396454 */ return;
|
|
}
|
|
|
|
// fn_02396458 @ 0x2396458
|
|
void Gambit_fn_02396458(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_02396458: ; // 0x2396458
|
|
/* 02396458 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239645C */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239645C */ _t1 = _t0 & 0x00000001u;
|
|
/* 0239645C */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0239645C */ goto L_02396460;
|
|
L_02396460: ; // 0x2396460
|
|
/* 02396460 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02396460 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02396464 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02396464 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02396464 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02396464 */ goto L_02396468;
|
|
L_02396468: ; // 0x2396468
|
|
/* 02396468 */ 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_0239646C @ 0x239646c
|
|
void Gambit_fn_0239646C(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_0239646C: ; // 0x239646c
|
|
/* 0239646C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02396470 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02396470 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02396470 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02396470 */ goto L_02396474;
|
|
L_02396474: ; // 0x2396474
|
|
/* 02396474 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02396474 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02396478 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02396478 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02396478 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02396478 */ goto L_0239647C;
|
|
L_0239647C: ; // 0x239647c
|
|
/* 0239647C */ 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_02396480 @ 0x2396480
|
|
void Gambit_fn_02396480(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106, _t107, _t108, _t109, _t110, _t111, _t112, _t113, _t114, _t115, _t116, _t117, _t118, _t119, _t120, _t121;
|
|
|
|
L_02396480: ; // 0x2396480
|
|
/* 02396480 */ _t0 = cpu->r[1] + 0xFFFFFFB0u;
|
|
/* 02396480 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02396480 */ cpu->r[1] = _t0;
|
|
/* 02396484 */ cpu->r[0] = cpu->lr;
|
|
/* 02396488 */ /* nop */
|
|
/* 0239648C */ cpu->r[30] = cpu->r[3];
|
|
/* 0239648C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02396490 */ _t1 = cpu->r[1] + 0x00000054u;
|
|
/* 02396490 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02396494 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02396494 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02396494 */ if (_t3) goto L_02396498; else goto L_023964A8;
|
|
L_02396498: ; // 0x2396498
|
|
/* 02396498 */ cpu->r[3] = 0x0000008Cu;
|
|
/* 0239649C */ Gambit_fn_02801A78(cpu);
|
|
/* 023964A0 */ cpu->r[30] = cpu->r[3];
|
|
/* 023964A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 023964A4 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023964A4 */ _t5 = _t4 & 0x00000001u;
|
|
/* 023964A4 */ if (_t5) goto L_02396864; else goto L_023964A8;
|
|
L_023964A8: ; // 0x23964a8
|
|
/* 023964A8 */ cpu->r[3] = cpu->r[30];
|
|
/* 023964AC */ Gambit_fn_02000020(cpu);
|
|
/* 023964B0 */ cpu->r[12] = 0x10080000u;
|
|
/* 023964B4 */ cpu->r[31] = cpu->r[30] + 0x00000050u;
|
|
/* 023964B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 023964B8 */ cpu->r[12] = cpu->r[12] + 0x000068D8u;
|
|
/* 023964BC */ cpu->r[28] = 0x00000000u;
|
|
/* 023964C0 */ _t6 = cpu->r[30] + 0x00000004u;
|
|
/* 023964C0 */ rbrew_write32(cpu->mem, _t6, cpu->r[12]);
|
|
/* 023964C4 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023964C4 */ _t8 = _t7 & 0x00000001u;
|
|
/* 023964C4 */ if (_t8) goto L_023964C8; else goto L_023964D8;
|
|
L_023964C8: ; // 0x23964c8
|
|
/* 023964C8 */ cpu->r[3] = 0x00000038u;
|
|
/* 023964CC */ Gambit_fn_02801A78(cpu);
|
|
/* 023964D0 */ cpu->r[31] = cpu->r[3];
|
|
/* 023964D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 023964D4 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023964D4 */ _t10 = _t9 & 0x00000001u;
|
|
/* 023964D4 */ if (_t10) goto L_02396508; else goto L_023964D8;
|
|
L_023964D8: ; // 0x23964d8
|
|
/* 023964D8 */ cpu->r[3] = cpu->r[31];
|
|
/* 023964DC */ Gambit_fn_027FC29C(cpu);
|
|
/* 023964E0 */ cpu->r[0] = 0x10080000u;
|
|
/* 023964E4 */ _t11 = cpu->r[31] + 0x00000030u;
|
|
/* 023964E4 */ rbrew_write32(cpu->mem, _t11, cpu->r[28]);
|
|
/* 023964E8 */ cpu->r[0] = cpu->r[0] + 0x00006AB8u;
|
|
/* 023964EC */ _t12 = cpu->r[31] + 0x00000034u;
|
|
/* 023964EC */ rbrew_write32(cpu->mem, _t12, cpu->r[28]);
|
|
/* 023964F0 */ _t13 = cpu->r[31] + 0x00000004u;
|
|
/* 023964F0 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 023964F4 */ _t14 = cpu->r[31] + 0x00000024u;
|
|
/* 023964F4 */ rbrew_write32(cpu->mem, _t14, cpu->r[28]);
|
|
/* 023964F8 */ _t15 = cpu->r[31] + 0x00000028u;
|
|
/* 023964F8 */ rbrew_write32(cpu->mem, _t15, cpu->r[28]);
|
|
/* 023964FC */ _t16 = cpu->r[31] + 0x0000002Cu;
|
|
/* 023964FC */ rbrew_write32(cpu->mem, _t16, cpu->r[28]);
|
|
/* 02396500 */ _t17 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02396500 */ rbrew_write32(cpu->mem, _t17, cpu->r[28]);
|
|
/* 02396504 */ _t18 = cpu->r[31] + 0x00000020u;
|
|
/* 02396504 */ rbrew_write32(cpu->mem, _t18, cpu->r[28]);
|
|
L_02396508: ; // 0x2396508
|
|
/* 02396508 */ cpu->r[0] = 0x00000003u;
|
|
/* 0239650C */ _t19 = cpu->r[30] + 0x00000088u;
|
|
/* 0239650C */ rbrew_write32(cpu->mem, _t19, cpu->r[28]);
|
|
/* 02396510 */ cpu->r[3] = cpu->r[30] + 0x00000050u;
|
|
/* 02396514 */ cpu->r[4] = cpu->r[30];
|
|
/* 02396518 */ cpu->r[6] = 0x00000000u;
|
|
/* 0239651C */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02396520 */ _t20 = cpu->r[1] + 0x00000008u;
|
|
/* 02396520 */ rbrew_write8(cpu->mem, _t20, (uint8_t)cpu->r[0]);
|
|
/* 02396524 */ Gambit_fn_02396EB0(cpu);
|
|
/* 02396528 */ cpu->r[3] = cpu->r[30];
|
|
/* 0239652C */ cpu->r[4] = cpu->r[30] + 0x00000050u;
|
|
/* 02396530 */ Gambit_fn_02000834(cpu);
|
|
/* 02396534 */ cpu->r[25] = 0x10080000u;
|
|
/* 02396538 */ cpu->r[26] = 0x02390000u;
|
|
/* 0239653C */ cpu->r[25] = cpu->r[25] + 0x000067D8u;
|
|
/* 02396540 */ cpu->r[0] = 0x10080000u;
|
|
/* 02396544 */ cpu->r[26] = cpu->r[26] + 0x00006B68u;
|
|
/* 02396548 */ cpu->r[0] = cpu->r[0] + 0x0000688Cu;
|
|
/* 0239654C */ cpu->ctr = cpu->r[26];
|
|
/* 02396550 */ _t21 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02396550 */ rbrew_write32(cpu->mem, _t21, cpu->r[0]);
|
|
/* 02396554 */ _t22 = cpu->r[1] + 0x00000010u;
|
|
/* 02396554 */ rbrew_write32(cpu->mem, _t22, cpu->r[25]);
|
|
/* 02396558 */ _t23 = cpu->r[30] + 0x00000068u;
|
|
/* 02396558 */ cpu->r[24] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0239655C */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02396560 */ _t24 = cpu->r[24] + 0x00000000u;
|
|
/* 02396560 */ cpu->r[27] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02396564 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02396568 */ cpu->r[29] = 0x10110000u;
|
|
/* 0239656C */ _t25 = cpu->r[29] + 0x00007399u;
|
|
/* 0239656C */ cpu->r[29] = rbrew_read8(cpu->mem, _t25);
|
|
/* 02396570 */ _t26 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02396570 */ cpu->r[12] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02396574 */ _t27 = cpu->r[12] + 0x00000000u;
|
|
/* 02396574 */ cpu->r[6] = rbrew_read8(cpu->mem, _t27);
|
|
/* 02396578 */ cpu->r[31] = 0x00000000u;
|
|
/* 0239657C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[29]);
|
|
/* 02396580 */ cpu->r[0] = 0x00080000u;
|
|
/* 02396584 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02396584 */ _t29 = _t28 & 0x00000001u;
|
|
/* 02396584 */ if (_t29) goto L_023965AC; else goto L_02396588;
|
|
L_02396588: ; // 0x2396588
|
|
/* 02396588 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 0239658C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[0]);
|
|
/* 02396590 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 02396594 */ _t30 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02396594 */ _t31 = _t30 & 0x00000001u;
|
|
/* 02396594 */ if (_t31) goto L_023965A8; else goto L_02396598;
|
|
L_02396598: ; // 0x2396598
|
|
/* 02396598 */ _t32 = cpu->r[12] + 0x00000000u;
|
|
/* 02396598 */ cpu->r[7] = rbrew_read8(cpu->mem, _t32);
|
|
/* 0239659C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[29]);
|
|
/* 023965A0 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023965A0 */ _t34 = _t33 & 0x00000001u;
|
|
/* 023965A0 */ if (_t34) goto L_023965A4; else goto L_02396588;
|
|
L_023965A4: ; // 0x23965a4
|
|
/* 023965A4 */ goto L_023965AC;
|
|
L_023965A8: ; // 0x23965a8
|
|
/* 023965A8 */ cpu->r[31] = 0x00000000u;
|
|
L_023965AC: ; // 0x23965ac
|
|
/* 023965AC */ _t35 = cpu->r[24] + 0x00000008u;
|
|
/* 023965AC */ cpu->r[8] = rbrew_read32(cpu->mem, _t35);
|
|
/* 023965B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[8]);
|
|
/* 023965B4 */ _t36 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 023965B4 */ _t37 = _t36 & 0x00000001u;
|
|
/* 023965B4 */ if (_t37) goto L_023965BC; else goto L_023965B8;
|
|
L_023965B8: ; // 0x23965b8
|
|
/* 023965B8 */ cpu->r[31] = cpu->r[8] + 0xFFFFFFFFu;
|
|
L_023965BC: ; // 0x23965bc
|
|
/* 023965BC */ _t38 = cpu->r[1] + 0x00000010u;
|
|
/* 023965BC */ cpu->r[8] = rbrew_read32(cpu->mem, _t38);
|
|
/* 023965C0 */ _t39 = cpu->r[8] + 0x00000014u;
|
|
/* 023965C0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t39);
|
|
/* 023965C4 */ cpu->ctr = cpu->r[9];
|
|
/* 023965C8 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 023965CC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 023965D0 */ _t40 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023965D0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t40);
|
|
/* 023965D4 */ cpu->r[3] = cpu->r[27];
|
|
/* 023965D8 */ cpu->r[5] = cpu->r[31];
|
|
/* 023965DC */ cpu->r[6] = 0x00000000u;
|
|
/* 023965E0 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 023965E4 */ cpu->r[10] = 0x02390000u;
|
|
/* 023965E8 */ _t41 = cpu->r[27] + cpu->r[31];
|
|
/* 023965E8 */ rbrew_write8(cpu->mem, _t41, (uint8_t)cpu->r[29]);
|
|
/* 023965EC */ cpu->r[10] = cpu->r[10] + 0x0000693Cu;
|
|
/* 023965F0 */ _t42 = cpu->r[1] + 0x0000001Cu;
|
|
/* 023965F0 */ rbrew_write16(cpu->mem, _t42, (uint16_t)cpu->r[28]);
|
|
/* 023965F4 */ cpu->r[6] = 0x00000000u;
|
|
/* 023965F8 */ _t43 = cpu->r[1] + 0x00000018u;
|
|
/* 023965F8 */ rbrew_write32(cpu->mem, _t43, cpu->r[10]);
|
|
/* 023965FC */ _t44 = cpu->r[1] + 0x00000028u;
|
|
/* 023965FC */ rbrew_write32(cpu->mem, _t44, cpu->r[28]);
|
|
/* 02396600 */ cpu->r[7] = 0xFFFFFFFFu;
|
|
/* 02396604 */ _t45 = cpu->r[1] + 0x00000014u;
|
|
/* 02396604 */ rbrew_write16(cpu->mem, _t45, (uint16_t)cpu->r[28]);
|
|
/* 02396608 */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 0239660C */ _t46 = cpu->r[1] + 0x00000008u;
|
|
/* 0239660C */ rbrew_write8(cpu->mem, _t46, (uint8_t)cpu->r[6]);
|
|
/* 02396610 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 02396614 */ cpu->r[12] = 0x02390000u;
|
|
/* 02396618 */ _t47 = cpu->r[1] + 0x00000024u;
|
|
/* 02396618 */ rbrew_write16(cpu->mem, _t47, (uint16_t)cpu->r[28]);
|
|
/* 0239661C */ cpu->r[12] = cpu->r[12] + 0x00006E20u;
|
|
/* 02396620 */ _t48 = cpu->r[1] + 0x0000001Eu;
|
|
/* 02396620 */ rbrew_write16(cpu->mem, _t48, (uint16_t)cpu->r[7]);
|
|
/* 02396624 */ cpu->r[5] = cpu->r[1] + 0x0000001Cu;
|
|
/* 02396628 */ _t49 = cpu->r[1] + 0x00000020u;
|
|
/* 02396628 */ rbrew_write32(cpu->mem, _t49, cpu->r[12]);
|
|
/* 0239662C */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 02396630 */ cpu->r[3] = cpu->r[30] + 0x00000050u;
|
|
/* 02396634 */ _t50 = cpu->r[1] + 0x00000016u;
|
|
/* 02396634 */ rbrew_write16(cpu->mem, _t50, (uint16_t)cpu->r[0]);
|
|
/* 02396638 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 0239663C */ _t51 = cpu->r[1] + 0x00000026u;
|
|
/* 0239663C */ rbrew_write16(cpu->mem, _t51, (uint16_t)cpu->r[28]);
|
|
/* 02396640 */ Gambit_fn_02397160(cpu);
|
|
/* 02396644 */ cpu->r[6] = 0x10080000u;
|
|
/* 02396648 */ _t52 = cpu->r[1] + 0x00000010u;
|
|
/* 02396648 */ rbrew_write32(cpu->mem, _t52, cpu->r[25]);
|
|
/* 0239664C */ cpu->r[6] = cpu->r[6] + 0x00006878u;
|
|
/* 02396650 */ _t53 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02396650 */ rbrew_write32(cpu->mem, _t53, cpu->r[6]);
|
|
/* 02396654 */ _t54 = cpu->r[30] + 0x00000064u;
|
|
/* 02396654 */ cpu->r[7] = rbrew_read32(cpu->mem, _t54);
|
|
/* 02396658 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], 0x00000001u);
|
|
/* 0239665C */ _t55 = cpu->r[30] + 0x00000068u;
|
|
/* 0239665C */ cpu->r[31] = rbrew_read32(cpu->mem, _t55);
|
|
/* 02396660 */ _t56 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02396660 */ _t57 = _t56 & 0x00000001u;
|
|
/* 02396660 */ if (_t57) goto L_02396664; else goto L_02396668;
|
|
L_02396664: ; // 0x2396664
|
|
/* 02396664 */ cpu->r[31] = cpu->r[31] + 0x00000024u;
|
|
L_02396668: ; // 0x2396668
|
|
/* 02396668 */ cpu->ctr = cpu->r[26];
|
|
/* 0239666C */ _t58 = cpu->r[31] + 0x00000000u;
|
|
/* 0239666C */ cpu->r[24] = rbrew_read32(cpu->mem, _t58);
|
|
/* 02396670 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02396674 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02396678 */ _t59 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02396678 */ cpu->r[11] = rbrew_read32(cpu->mem, _t59);
|
|
/* 0239667C */ _t60 = cpu->r[11] + 0x00000000u;
|
|
/* 0239667C */ cpu->r[8] = rbrew_read8(cpu->mem, _t60);
|
|
/* 02396680 */ cpu->r[27] = 0x00000000u;
|
|
/* 02396684 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[29]);
|
|
/* 02396688 */ cpu->r[8] = 0x00080000u;
|
|
/* 0239668C */ _t61 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239668C */ _t62 = _t61 & 0x00000001u;
|
|
/* 0239668C */ if (_t62) goto L_023966B4; else goto L_02396690;
|
|
L_02396690: ; // 0x2396690
|
|
/* 02396690 */ cpu->r[27] = cpu->r[27] + 0x00000001u;
|
|
/* 02396694 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], cpu->r[8]);
|
|
/* 02396698 */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 0239669C */ _t63 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0239669C */ _t64 = _t63 & 0x00000001u;
|
|
/* 0239669C */ if (_t64) goto L_023966B0; else goto L_023966A0;
|
|
L_023966A0: ; // 0x23966a0
|
|
/* 023966A0 */ _t65 = cpu->r[11] + 0x00000000u;
|
|
/* 023966A0 */ cpu->r[9] = rbrew_read8(cpu->mem, _t65);
|
|
/* 023966A4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[29]);
|
|
/* 023966A8 */ _t66 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023966A8 */ _t67 = _t66 & 0x00000001u;
|
|
/* 023966A8 */ if (_t67) goto L_023966AC; else goto L_02396690;
|
|
L_023966AC: ; // 0x23966ac
|
|
/* 023966AC */ goto L_023966B4;
|
|
L_023966B0: ; // 0x23966b0
|
|
/* 023966B0 */ cpu->r[27] = 0x00000000u;
|
|
L_023966B4: ; // 0x23966b4
|
|
/* 023966B4 */ _t68 = cpu->r[31] + 0x00000008u;
|
|
/* 023966B4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t68);
|
|
/* 023966B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], cpu->r[10]);
|
|
/* 023966BC */ _t69 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 023966BC */ _t70 = _t69 & 0x00000001u;
|
|
/* 023966BC */ if (_t70) goto L_023966C4; else goto L_023966C0;
|
|
L_023966C0: ; // 0x23966c0
|
|
/* 023966C0 */ cpu->r[27] = cpu->r[10] + 0xFFFFFFFFu;
|
|
L_023966C4: ; // 0x23966c4
|
|
/* 023966C4 */ _t71 = cpu->r[1] + 0x00000010u;
|
|
/* 023966C4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t71);
|
|
/* 023966C8 */ _t72 = cpu->r[10] + 0x00000014u;
|
|
/* 023966C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t72);
|
|
/* 023966CC */ cpu->ctr = cpu->r[0];
|
|
/* 023966D0 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 023966D4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 023966D8 */ _t73 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023966D8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t73);
|
|
/* 023966DC */ cpu->r[3] = cpu->r[24];
|
|
/* 023966E0 */ cpu->r[5] = cpu->r[27];
|
|
/* 023966E4 */ cpu->r[6] = 0x00000000u;
|
|
/* 023966E8 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 023966EC */ _t74 = cpu->r[24] + cpu->r[27];
|
|
/* 023966EC */ rbrew_write8(cpu->mem, _t74, (uint8_t)cpu->r[29]);
|
|
/* 023966F0 */ cpu->r[0] = 0x00000001u;
|
|
/* 023966F4 */ _t75 = cpu->r[1] + 0x00000028u;
|
|
/* 023966F4 */ rbrew_write32(cpu->mem, _t75, cpu->r[28]);
|
|
/* 023966F8 */ cpu->r[3] = cpu->r[30] + 0x00000050u;
|
|
/* 023966FC */ _t76 = cpu->r[1] + 0x00000014u;
|
|
/* 023966FC */ rbrew_write16(cpu->mem, _t76, (uint16_t)cpu->r[28]);
|
|
/* 02396700 */ cpu->r[6] = 0x02390000u;
|
|
/* 02396704 */ _t77 = cpu->r[1] + 0x00000026u;
|
|
/* 02396704 */ rbrew_write16(cpu->mem, _t77, (uint16_t)cpu->r[28]);
|
|
/* 02396708 */ cpu->r[6] = cpu->r[6] + 0x00006E24u;
|
|
/* 0239670C */ _t78 = cpu->r[1] + 0x00000008u;
|
|
/* 0239670C */ rbrew_write8(cpu->mem, _t78, (uint8_t)cpu->r[0]);
|
|
/* 02396710 */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 02396714 */ _t79 = cpu->r[1] + 0x00000018u;
|
|
/* 02396714 */ rbrew_write32(cpu->mem, _t79, cpu->r[6]);
|
|
/* 02396718 */ cpu->r[12] = 0x02390000u;
|
|
/* 0239671C */ _t80 = cpu->r[1] + 0x00000024u;
|
|
/* 0239671C */ rbrew_write16(cpu->mem, _t80, (uint16_t)cpu->r[28]);
|
|
/* 02396720 */ cpu->r[12] = cpu->r[12] + 0x000069BCu;
|
|
/* 02396724 */ _t81 = cpu->r[1] + 0x0000001Eu;
|
|
/* 02396724 */ rbrew_write16(cpu->mem, _t81, (uint16_t)cpu->r[0]);
|
|
/* 02396728 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 0239672C */ _t82 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239672C */ rbrew_write16(cpu->mem, _t82, (uint16_t)cpu->r[28]);
|
|
/* 02396730 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 02396734 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 02396738 */ _t83 = cpu->r[1] + 0x00000020u;
|
|
/* 02396738 */ rbrew_write32(cpu->mem, _t83, cpu->r[12]);
|
|
/* 0239673C */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 02396740 */ _t84 = cpu->r[1] + 0x00000016u;
|
|
/* 02396740 */ rbrew_write16(cpu->mem, _t84, (uint16_t)cpu->r[0]);
|
|
/* 02396744 */ Gambit_fn_02397160(cpu);
|
|
/* 02396748 */ cpu->r[11] = 0x10080000u;
|
|
/* 0239674C */ _t85 = cpu->r[1] + 0x00000010u;
|
|
/* 0239674C */ rbrew_write32(cpu->mem, _t85, cpu->r[25]);
|
|
/* 02396750 */ cpu->r[11] = cpu->r[11] + 0x0000689Cu;
|
|
/* 02396754 */ _t86 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02396754 */ rbrew_write32(cpu->mem, _t86, cpu->r[11]);
|
|
/* 02396758 */ _t87 = cpu->r[30] + 0x00000064u;
|
|
/* 02396758 */ cpu->r[12] = rbrew_read32(cpu->mem, _t87);
|
|
/* 0239675C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], 0x00000002u);
|
|
/* 02396760 */ _t88 = cpu->r[30] + 0x00000068u;
|
|
/* 02396760 */ cpu->r[27] = rbrew_read32(cpu->mem, _t88);
|
|
/* 02396764 */ _t89 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02396764 */ _t90 = _t89 & 0x00000001u;
|
|
/* 02396764 */ if (_t90) goto L_02396768; else goto L_0239676C;
|
|
L_02396768: ; // 0x2396768
|
|
/* 02396768 */ cpu->r[27] = cpu->r[27] + 0x00000048u;
|
|
L_0239676C: ; // 0x239676c
|
|
/* 0239676C */ cpu->ctr = cpu->r[26];
|
|
/* 02396770 */ _t91 = cpu->r[27] + 0x00000000u;
|
|
/* 02396770 */ cpu->r[25] = rbrew_read32(cpu->mem, _t91);
|
|
/* 02396774 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02396778 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0239677C */ _t92 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239677C */ cpu->r[6] = rbrew_read32(cpu->mem, _t92);
|
|
/* 02396780 */ _t93 = cpu->r[6] + 0x00000000u;
|
|
/* 02396780 */ cpu->r[0] = rbrew_read8(cpu->mem, _t93);
|
|
/* 02396784 */ cpu->r[31] = 0x00000000u;
|
|
/* 02396788 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[29]);
|
|
/* 0239678C */ cpu->r[8] = 0x00080000u;
|
|
/* 02396790 */ _t94 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02396790 */ _t95 = _t94 & 0x00000001u;
|
|
/* 02396790 */ if (_t95) goto L_023967B8; else goto L_02396794;
|
|
L_02396794: ; // 0x2396794
|
|
/* 02396794 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 02396798 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[8]);
|
|
/* 0239679C */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 023967A0 */ _t96 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 023967A0 */ _t97 = _t96 & 0x00000001u;
|
|
/* 023967A0 */ if (_t97) goto L_023967B4; else goto L_023967A4;
|
|
L_023967A4: ; // 0x23967a4
|
|
/* 023967A4 */ _t98 = cpu->r[6] + 0x00000000u;
|
|
/* 023967A4 */ cpu->r[5] = rbrew_read8(cpu->mem, _t98);
|
|
/* 023967A8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[29]);
|
|
/* 023967AC */ _t99 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023967AC */ _t100 = _t99 & 0x00000001u;
|
|
/* 023967AC */ if (_t100) goto L_023967B0; else goto L_02396794;
|
|
L_023967B0: ; // 0x23967b0
|
|
/* 023967B0 */ goto L_023967B8;
|
|
L_023967B4: ; // 0x23967b4
|
|
/* 023967B4 */ cpu->r[31] = 0x00000000u;
|
|
L_023967B8: ; // 0x23967b8
|
|
/* 023967B8 */ _t101 = cpu->r[27] + 0x00000008u;
|
|
/* 023967B8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t101);
|
|
/* 023967BC */ _t102 = cpu->r[1] + 0x00000010u;
|
|
/* 023967BC */ cpu->r[7] = rbrew_read32(cpu->mem, _t102);
|
|
/* 023967C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[11]);
|
|
/* 023967C4 */ _t103 = cpu->r[7] + 0x00000014u;
|
|
/* 023967C4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t103);
|
|
/* 023967C8 */ _t104 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 023967C8 */ _t105 = _t104 & 0x00000001u;
|
|
/* 023967C8 */ if (_t105) goto L_023967D0; else goto L_023967CC;
|
|
L_023967CC: ; // 0x23967cc
|
|
/* 023967CC */ cpu->r[31] = cpu->r[11] + 0xFFFFFFFFu;
|
|
L_023967D0: ; // 0x23967d0
|
|
/* 023967D0 */ cpu->ctr = cpu->r[9];
|
|
/* 023967D4 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 023967D8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 023967DC */ _t106 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023967DC */ cpu->r[4] = rbrew_read32(cpu->mem, _t106);
|
|
/* 023967E0 */ cpu->r[3] = cpu->r[25];
|
|
/* 023967E4 */ cpu->r[5] = cpu->r[31];
|
|
/* 023967E8 */ cpu->r[6] = 0x00000000u;
|
|
/* 023967EC */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 023967F0 */ _t107 = cpu->r[25] + cpu->r[31];
|
|
/* 023967F0 */ rbrew_write8(cpu->mem, _t107, (uint8_t)cpu->r[29]);
|
|
/* 023967F4 */ cpu->r[0] = 0x00000002u;
|
|
/* 023967F8 */ _t108 = cpu->r[1] + 0x00000028u;
|
|
/* 023967F8 */ rbrew_write32(cpu->mem, _t108, cpu->r[28]);
|
|
/* 023967FC */ cpu->r[12] = 0x02390000u;
|
|
/* 02396800 */ _t109 = cpu->r[1] + 0x00000008u;
|
|
/* 02396800 */ rbrew_write8(cpu->mem, _t109, (uint8_t)cpu->r[0]);
|
|
/* 02396804 */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 02396808 */ _t110 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02396808 */ rbrew_write16(cpu->mem, _t110, (uint16_t)cpu->r[28]);
|
|
/* 0239680C */ cpu->r[11] = 0x02390000u;
|
|
/* 02396810 */ _t111 = cpu->r[1] + 0x00000024u;
|
|
/* 02396810 */ rbrew_write16(cpu->mem, _t111, (uint16_t)cpu->r[28]);
|
|
/* 02396814 */ _t112 = cpu->r[1] + 0x00000026u;
|
|
/* 02396814 */ rbrew_write16(cpu->mem, _t112, (uint16_t)cpu->r[28]);
|
|
/* 02396818 */ cpu->r[12] = cpu->r[12] + 0x00006A3Cu;
|
|
/* 0239681C */ _t113 = cpu->r[1] + 0x00000016u;
|
|
/* 0239681C */ rbrew_write16(cpu->mem, _t113, (uint16_t)cpu->r[0]);
|
|
/* 02396820 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 02396824 */ _t114 = cpu->r[1] + 0x00000020u;
|
|
/* 02396824 */ rbrew_write32(cpu->mem, _t114, cpu->r[12]);
|
|
/* 02396828 */ cpu->r[11] = cpu->r[11] + 0x00006E28u;
|
|
/* 0239682C */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 02396830 */ _t115 = cpu->r[1] + 0x00000014u;
|
|
/* 02396830 */ rbrew_write16(cpu->mem, _t115, (uint16_t)cpu->r[28]);
|
|
/* 02396834 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 02396838 */ cpu->r[3] = cpu->r[30] + 0x00000050u;
|
|
/* 0239683C */ _t116 = cpu->r[1] + 0x00000018u;
|
|
/* 0239683C */ rbrew_write32(cpu->mem, _t116, cpu->r[11]);
|
|
/* 02396840 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 02396844 */ _t117 = cpu->r[1] + 0x0000001Eu;
|
|
/* 02396844 */ rbrew_write16(cpu->mem, _t117, (uint16_t)cpu->r[0]);
|
|
/* 02396848 */ Gambit_fn_02397160(cpu);
|
|
/* 0239684C */ cpu->r[3] = 0x101C0000u;
|
|
/* 02396850 */ _t118 = cpu->r[3] + 0x00000E14u;
|
|
/* 02396850 */ cpu->r[3] = rbrew_read32(cpu->mem, _t118);
|
|
/* 02396854 */ cpu->r[4] = 0x00000000u;
|
|
/* 02396858 */ Gambit_fn_0200CBD8(cpu);
|
|
/* 0239685C */ _t119 = cpu->r[3] + 0x00000030u;
|
|
/* 0239685C */ cpu->r[0] = rbrew_read32(cpu->mem, _t119);
|
|
/* 02396860 */ _t120 = cpu->r[30] + 0x00000088u;
|
|
/* 02396860 */ rbrew_write32(cpu->mem, _t120, cpu->r[0]);
|
|
L_02396864: ; // 0x2396864
|
|
/* 02396864 */ cpu->r[3] = cpu->r[30];
|
|
/* 02396868 */ /* nop */
|
|
/* 0239686C */ _t121 = cpu->r[1] + 0x00000054u;
|
|
/* 0239686C */ cpu->r[0] = rbrew_read32(cpu->mem, _t121);
|
|
/* 02396870 */ cpu->lr = cpu->r[0];
|
|
/* 02396874 */ cpu->r[1] = cpu->r[1] + 0x00000050u;
|
|
/* 02396878 */ return;
|
|
}
|
|
|
|
// fn_02396880 @ 0x2396880
|
|
void Gambit_fn_02396880(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29;
|
|
|
|
L_02396880: ; // 0x2396880
|
|
/* 02396880 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 02396880 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02396880 */ cpu->r[1] = _t0;
|
|
/* 02396884 */ _t1 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02396884 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02396888 */ cpu->r[31] = cpu->r[3];
|
|
/* 0239688C */ cpu->r[3] = 0x101C0000u;
|
|
/* 02396890 */ _t2 = cpu->r[1] + 0x00000024u;
|
|
/* 02396890 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02396894 */ _t3 = cpu->r[3] + 0x00006000u;
|
|
/* 02396894 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02396898 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 02396898 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0239689C */ _t5 = cpu->r[11] + 0x00000144u;
|
|
/* 0239689C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 023968A0 */ cpu->ctr = cpu->r[0];
|
|
/* 023968A4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 023968A8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], 0x000004B0u);
|
|
/* 023968AC */ _t6 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 023968AC */ _t7 = _t6 & 0x00000001u;
|
|
/* 023968AC */ if (_t7) goto L_023968D0; else goto L_023968B0;
|
|
L_023968B0: ; // 0x23968b0
|
|
/* 023968B0 */ cpu->r[4] = 0x00000000u;
|
|
/* 023968B4 */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 023968B4 */ rbrew_write32(cpu->mem, _t8, cpu->r[4]);
|
|
/* 023968B8 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 023968B8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t9);
|
|
/* 023968BC */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023968BC */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 023968C0 */ _t11 = cpu->r[31] + 0x0000005Cu;
|
|
/* 023968C0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t11);
|
|
/* 023968C4 */ /* nop */
|
|
/* 023968C8 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023968C8 */ _t13 = _t12 & 0x00000001u;
|
|
/* 023968C8 */ if (_t13) goto L_023968CC; else goto L_0239691C;
|
|
L_023968CC: ; // 0x23968cc
|
|
/* 023968CC */ goto L_02396924;
|
|
L_023968D0: ; // 0x23968d0
|
|
/* 023968D0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], 0x00000258u);
|
|
/* 023968D4 */ _t14 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 023968D4 */ _t15 = _t14 & 0x00000001u;
|
|
/* 023968D4 */ if (_t15) goto L_023968FC; else goto L_023968D8;
|
|
L_023968D8: ; // 0x23968d8
|
|
/* 023968D8 */ cpu->r[4] = 0x00000001u;
|
|
/* 023968DC */ _t16 = cpu->r[1] + 0x00000008u;
|
|
/* 023968DC */ rbrew_write32(cpu->mem, _t16, cpu->r[4]);
|
|
/* 023968E0 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 023968E0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t17);
|
|
/* 023968E4 */ _t18 = cpu->r[1] + 0x00000010u;
|
|
/* 023968E4 */ rbrew_write32(cpu->mem, _t18, cpu->r[9]);
|
|
/* 023968E8 */ _t19 = cpu->r[31] + 0x0000005Cu;
|
|
/* 023968E8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t19);
|
|
/* 023968EC */ /* nop */
|
|
/* 023968F0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000001u);
|
|
/* 023968F4 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023968F4 */ _t21 = _t20 & 0x00000001u;
|
|
/* 023968F4 */ if (_t21) goto L_023968F8; else goto L_0239691C;
|
|
L_023968F8: ; // 0x23968f8
|
|
/* 023968F8 */ goto L_02396924;
|
|
L_023968FC: ; // 0x23968fc
|
|
/* 023968FC */ cpu->r[4] = 0x00000002u;
|
|
/* 02396900 */ _t22 = cpu->r[1] + 0x00000008u;
|
|
/* 02396900 */ rbrew_write32(cpu->mem, _t22, cpu->r[4]);
|
|
/* 02396904 */ _t23 = cpu->r[1] + 0x00000008u;
|
|
/* 02396904 */ cpu->r[9] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02396908 */ _t24 = cpu->r[1] + 0x00000014u;
|
|
/* 02396908 */ rbrew_write32(cpu->mem, _t24, cpu->r[9]);
|
|
/* 0239690C */ _t25 = cpu->r[31] + 0x0000005Cu;
|
|
/* 0239690C */ cpu->r[0] = rbrew_read8(cpu->mem, _t25);
|
|
/* 02396910 */ /* nop */
|
|
/* 02396914 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000002u);
|
|
/* 02396918 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02396918 */ _t27 = _t26 & 0x00000001u;
|
|
/* 02396918 */ if (_t27) goto L_02396924; else goto L_0239691C;
|
|
L_0239691C: ; // 0x239691c
|
|
/* 0239691C */ cpu->r[3] = cpu->r[31] + 0x00000050u;
|
|
/* 02396920 */ Gambit_fn_02397350(cpu);
|
|
L_02396924: ; // 0x2396924
|
|
/* 02396924 */ _t28 = cpu->r[1] + 0x00000024u;
|
|
/* 02396924 */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02396928 */ _t29 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02396928 */ cpu->r[31] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0239692C */ cpu->lr = cpu->r[0];
|
|
/* 02396930 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 02396934 */ return;
|
|
}
|
|
|
|
// fn_02396938 @ 0x2396938
|
|
void Gambit_fn_02396938(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29;
|
|
|
|
L_0239687C: ; // 0x239687c
|
|
/* 0239687C */ cpu->r[0] = cpu->lr;
|
|
/* 02396880 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 02396880 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02396880 */ cpu->r[1] = _t0;
|
|
/* 02396884 */ _t1 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02396884 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02396888 */ cpu->r[31] = cpu->r[3];
|
|
/* 0239688C */ cpu->r[3] = 0x101C0000u;
|
|
/* 02396890 */ _t2 = cpu->r[1] + 0x00000024u;
|
|
/* 02396890 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02396894 */ _t3 = cpu->r[3] + 0x00006000u;
|
|
/* 02396894 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02396898 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 02396898 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0239689C */ _t5 = cpu->r[11] + 0x00000144u;
|
|
/* 0239689C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 023968A0 */ cpu->ctr = cpu->r[0];
|
|
/* 023968A4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 023968A8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], 0x000004B0u);
|
|
/* 023968AC */ _t6 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 023968AC */ _t7 = _t6 & 0x00000001u;
|
|
/* 023968AC */ if (_t7) goto L_023968D0; else goto L_023968B0;
|
|
L_023968B0: ; // 0x23968b0
|
|
/* 023968B0 */ cpu->r[4] = 0x00000000u;
|
|
/* 023968B4 */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 023968B4 */ rbrew_write32(cpu->mem, _t8, cpu->r[4]);
|
|
/* 023968B8 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 023968B8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t9);
|
|
/* 023968BC */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023968BC */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 023968C0 */ _t11 = cpu->r[31] + 0x0000005Cu;
|
|
/* 023968C0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t11);
|
|
/* 023968C4 */ /* nop */
|
|
/* 023968C8 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023968C8 */ _t13 = _t12 & 0x00000001u;
|
|
/* 023968C8 */ if (_t13) goto L_023968CC; else goto L_0239691C;
|
|
L_023968CC: ; // 0x23968cc
|
|
/* 023968CC */ goto L_02396924;
|
|
L_023968D0: ; // 0x23968d0
|
|
/* 023968D0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], 0x00000258u);
|
|
/* 023968D4 */ _t14 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 023968D4 */ _t15 = _t14 & 0x00000001u;
|
|
/* 023968D4 */ if (_t15) goto L_023968FC; else goto L_023968D8;
|
|
L_023968D8: ; // 0x23968d8
|
|
/* 023968D8 */ cpu->r[4] = 0x00000001u;
|
|
/* 023968DC */ _t16 = cpu->r[1] + 0x00000008u;
|
|
/* 023968DC */ rbrew_write32(cpu->mem, _t16, cpu->r[4]);
|
|
/* 023968E0 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 023968E0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t17);
|
|
/* 023968E4 */ _t18 = cpu->r[1] + 0x00000010u;
|
|
/* 023968E4 */ rbrew_write32(cpu->mem, _t18, cpu->r[9]);
|
|
/* 023968E8 */ _t19 = cpu->r[31] + 0x0000005Cu;
|
|
/* 023968E8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t19);
|
|
/* 023968EC */ /* nop */
|
|
/* 023968F0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000001u);
|
|
/* 023968F4 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023968F4 */ _t21 = _t20 & 0x00000001u;
|
|
/* 023968F4 */ if (_t21) goto L_023968F8; else goto L_0239691C;
|
|
L_023968F8: ; // 0x23968f8
|
|
/* 023968F8 */ goto L_02396924;
|
|
L_023968FC: ; // 0x23968fc
|
|
/* 023968FC */ cpu->r[4] = 0x00000002u;
|
|
/* 02396900 */ _t22 = cpu->r[1] + 0x00000008u;
|
|
/* 02396900 */ rbrew_write32(cpu->mem, _t22, cpu->r[4]);
|
|
/* 02396904 */ _t23 = cpu->r[1] + 0x00000008u;
|
|
/* 02396904 */ cpu->r[9] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02396908 */ _t24 = cpu->r[1] + 0x00000014u;
|
|
/* 02396908 */ rbrew_write32(cpu->mem, _t24, cpu->r[9]);
|
|
/* 0239690C */ _t25 = cpu->r[31] + 0x0000005Cu;
|
|
/* 0239690C */ cpu->r[0] = rbrew_read8(cpu->mem, _t25);
|
|
/* 02396910 */ /* nop */
|
|
/* 02396914 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000002u);
|
|
/* 02396918 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02396918 */ _t27 = _t26 & 0x00000001u;
|
|
/* 02396918 */ if (_t27) goto L_02396924; else goto L_0239691C;
|
|
L_0239691C: ; // 0x239691c
|
|
/* 0239691C */ cpu->r[3] = cpu->r[31] + 0x00000050u;
|
|
/* 02396920 */ Gambit_fn_02397350(cpu);
|
|
L_02396924: ; // 0x2396924
|
|
/* 02396924 */ _t28 = cpu->r[1] + 0x00000024u;
|
|
/* 02396924 */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02396928 */ _t29 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02396928 */ cpu->r[31] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0239692C */ cpu->lr = cpu->r[0];
|
|
/* 02396930 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 02396934 */ return;
|
|
L_02396938: ; // 0x2396938
|
|
/* 02396938 */ goto L_0239687C;
|
|
}
|
|
|
|
// fn_02396940 @ 0x2396940
|
|
void Gambit_fn_02396940(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_02396940: ; // 0x2396940
|
|
/* 02396940 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02396940 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02396940 */ cpu->r[1] = _t0;
|
|
/* 02396944 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02396944 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02396948 */ cpu->r[31] = 0x101E0000u;
|
|
/* 0239694C */ cpu->r[31] = cpu->r[31] + 0x00004A50u;
|
|
/* 02396950 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02396950 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02396954 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02396954 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02396958 */ _t4 = cpu->r[31] + 0x00000004u;
|
|
/* 02396958 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0239695C */ _t5 = cpu->r[12] + 0x00000014u;
|
|
/* 0239695C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02396960 */ cpu->r[30] = cpu->r[3];
|
|
/* 02396964 */ cpu->ctr = cpu->r[0];
|
|
/* 02396968 */ cpu->r[3] = cpu->r[31];
|
|
/* 0239696C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02396970 */ _t6 = cpu->r[30] + 0x00000088u;
|
|
/* 02396970 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02396974 */ _t7 = cpu->r[31] + 0x00000000u;
|
|
/* 02396974 */ cpu->r[4] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02396978 */ Gambit_fn_027B76F0(cpu);
|
|
/* 0239697C */ cpu->r[31] = 0x101E0000u;
|
|
/* 02396980 */ cpu->r[31] = cpu->r[31] + 0x00004A58u;
|
|
/* 02396984 */ _t8 = cpu->r[31] + 0x00000004u;
|
|
/* 02396984 */ cpu->r[10] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02396988 */ _t9 = cpu->r[10] + 0x00000014u;
|
|
/* 02396988 */ cpu->r[11] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0239698C */ cpu->ctr = cpu->r[11];
|
|
/* 02396990 */ cpu->r[3] = cpu->r[31];
|
|
/* 02396994 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02396998 */ _t10 = cpu->r[30] + 0x00000088u;
|
|
/* 02396998 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0239699C */ _t11 = cpu->r[31] + 0x00000000u;
|
|
/* 0239699C */ cpu->r[4] = rbrew_read32(cpu->mem, _t11);
|
|
/* 023969A0 */ Gambit_fn_027B76F0(cpu);
|
|
/* 023969A4 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 023969A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 023969A8 */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 023969A8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t13);
|
|
/* 023969AC */ cpu->lr = cpu->r[0];
|
|
/* 023969B0 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023969B0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 023969B4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 023969B8 */ return;
|
|
}
|
|
|
|
// fn_023969C0 @ 0x23969c0
|
|
void Gambit_fn_023969C0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_023969C0: ; // 0x23969c0
|
|
/* 023969C0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 023969C0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 023969C0 */ cpu->r[1] = _t0;
|
|
/* 023969C4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023969C4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 023969C8 */ cpu->r[31] = 0x101E0000u;
|
|
/* 023969CC */ cpu->r[31] = cpu->r[31] + 0x00004A58u;
|
|
/* 023969D0 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 023969D0 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 023969D4 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 023969D4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 023969D8 */ _t4 = cpu->r[31] + 0x00000004u;
|
|
/* 023969D8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 023969DC */ _t5 = cpu->r[12] + 0x00000014u;
|
|
/* 023969DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 023969E0 */ cpu->r[30] = cpu->r[3];
|
|
/* 023969E4 */ cpu->ctr = cpu->r[0];
|
|
/* 023969E8 */ cpu->r[3] = cpu->r[31];
|
|
/* 023969EC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 023969F0 */ _t6 = cpu->r[30] + 0x00000088u;
|
|
/* 023969F0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 023969F4 */ _t7 = cpu->r[31] + 0x00000000u;
|
|
/* 023969F4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t7);
|
|
/* 023969F8 */ Gambit_fn_027B76F0(cpu);
|
|
/* 023969FC */ cpu->r[31] = 0x101E0000u;
|
|
/* 02396A00 */ cpu->r[31] = cpu->r[31] + 0x00004A50u;
|
|
/* 02396A04 */ _t8 = cpu->r[31] + 0x00000004u;
|
|
/* 02396A04 */ cpu->r[10] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02396A08 */ _t9 = cpu->r[10] + 0x00000014u;
|
|
/* 02396A08 */ cpu->r[11] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02396A0C */ cpu->ctr = cpu->r[11];
|
|
/* 02396A10 */ cpu->r[3] = cpu->r[31];
|
|
/* 02396A14 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02396A18 */ _t10 = cpu->r[30] + 0x00000088u;
|
|
/* 02396A18 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02396A1C */ _t11 = cpu->r[31] + 0x00000000u;
|
|
/* 02396A1C */ cpu->r[4] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02396A20 */ Gambit_fn_027B7210(cpu);
|
|
/* 02396A24 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 02396A24 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02396A28 */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 02396A28 */ cpu->r[30] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02396A2C */ cpu->lr = cpu->r[0];
|
|
/* 02396A30 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02396A30 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02396A34 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02396A38 */ return;
|
|
}
|
|
|
|
// fn_02396A40 @ 0x2396a40
|
|
void Gambit_fn_02396A40(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_02396A40: ; // 0x2396a40
|
|
/* 02396A40 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02396A40 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02396A40 */ cpu->r[1] = _t0;
|
|
/* 02396A44 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02396A44 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02396A48 */ cpu->r[31] = 0x101E0000u;
|
|
/* 02396A4C */ cpu->r[31] = cpu->r[31] + 0x00004A50u;
|
|
/* 02396A50 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02396A50 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02396A54 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02396A54 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02396A58 */ _t4 = cpu->r[31] + 0x00000004u;
|
|
/* 02396A58 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02396A5C */ _t5 = cpu->r[12] + 0x00000014u;
|
|
/* 02396A5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02396A60 */ cpu->r[30] = cpu->r[3];
|
|
/* 02396A64 */ cpu->ctr = cpu->r[0];
|
|
/* 02396A68 */ cpu->r[3] = cpu->r[31];
|
|
/* 02396A6C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02396A70 */ _t6 = cpu->r[30] + 0x00000088u;
|
|
/* 02396A70 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02396A74 */ _t7 = cpu->r[31] + 0x00000000u;
|
|
/* 02396A74 */ cpu->r[4] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02396A78 */ Gambit_fn_027B76F0(cpu);
|
|
/* 02396A7C */ cpu->r[31] = 0x101E0000u;
|
|
/* 02396A80 */ cpu->r[31] = cpu->r[31] + 0x00004A58u;
|
|
/* 02396A84 */ _t8 = cpu->r[31] + 0x00000004u;
|
|
/* 02396A84 */ cpu->r[10] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02396A88 */ _t9 = cpu->r[10] + 0x00000014u;
|
|
/* 02396A88 */ cpu->r[11] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02396A8C */ cpu->ctr = cpu->r[11];
|
|
/* 02396A90 */ cpu->r[3] = cpu->r[31];
|
|
/* 02396A94 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02396A98 */ _t10 = cpu->r[30] + 0x00000088u;
|
|
/* 02396A98 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02396A9C */ _t11 = cpu->r[31] + 0x00000000u;
|
|
/* 02396A9C */ cpu->r[4] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02396AA0 */ Gambit_fn_027B7210(cpu);
|
|
/* 02396AA4 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 02396AA4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02396AA8 */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 02396AA8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02396AAC */ cpu->lr = cpu->r[0];
|
|
/* 02396AB0 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02396AB0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02396AB4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02396AB8 */ return;
|
|
}
|
|
|
|
// fn_02396ABC @ 0x2396abc
|
|
void Gambit_fn_02396ABC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_02396ABC: ; // 0x2396abc
|
|
/* 02396ABC */ cpu->r[0] = cpu->lr;
|
|
/* 02396AC0 */ cpu->r[3] = 0x101E0000u;
|
|
/* 02396AC4 */ cpu->r[10] = 0x10080000u;
|
|
/* 02396AC8 */ cpu->r[8] = 0x101E0000u;
|
|
/* 02396ACC */ cpu->r[7] = 0x10080000u;
|
|
/* 02396AD0 */ cpu->r[11] = 0x10080000u;
|
|
/* 02396AD4 */ cpu->r[8] = cpu->r[8] + 0x00004A50u;
|
|
/* 02396AD8 */ cpu->r[12] = 0x101E0000u;
|
|
/* 02396ADC */ cpu->r[11] = cpu->r[11] + 0x00006858u;
|
|
/* 02396AE0 */ cpu->r[7] = cpu->r[7] + 0x000068B0u;
|
|
/* 02396AE4 */ cpu->r[12] = cpu->r[12] + 0x00004A58u;
|
|
/* 02396AE8 */ cpu->r[10] = cpu->r[10] + 0x000067D8u;
|
|
/* 02396AEC */ cpu->r[3] = cpu->r[3] + 0x00004A60u;
|
|
/* 02396AF0 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 02396AF0 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 02396AF4 */ cpu->r[9] = 0x10080000u;
|
|
/* 02396AF8 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 02396AF8 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 02396AF8 */ cpu->r[1] = _t1;
|
|
/* 02396AFC */ _t2 = cpu->r[8] + 0x00000004u;
|
|
/* 02396AFC */ rbrew_write32(cpu->mem, _t2, cpu->r[10]);
|
|
/* 02396B00 */ cpu->r[0] = 0x02390000u;
|
|
/* 02396B04 */ _t3 = cpu->r[8] + 0x00000000u;
|
|
/* 02396B04 */ rbrew_write32(cpu->mem, _t3, cpu->r[7]);
|
|
/* 02396B08 */ cpu->r[8] = 0x10080000u;
|
|
/* 02396B0C */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 02396B0C */ rbrew_write32(cpu->mem, _t4, cpu->r[10]);
|
|
/* 02396B10 */ cpu->r[0] = cpu->r[0] + 0x000074C0u;
|
|
/* 02396B14 */ _t5 = cpu->r[12] + 0x00000004u;
|
|
/* 02396B14 */ rbrew_write32(cpu->mem, _t5, cpu->r[10]);
|
|
/* 02396B18 */ cpu->r[8] = cpu->r[8] + 0x000068BCu;
|
|
/* 02396B1C */ cpu->r[9] = cpu->r[9] + 0x000068C8u;
|
|
/* 02396B20 */ _t6 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02396B20 */ rbrew_write32(cpu->mem, _t6, cpu->r[10]);
|
|
/* 02396B24 */ _t7 = cpu->r[3] + 0x00000000u;
|
|
/* 02396B24 */ rbrew_write32(cpu->mem, _t7, cpu->r[9]);
|
|
/* 02396B28 */ _t8 = cpu->r[12] + 0x00000000u;
|
|
/* 02396B28 */ rbrew_write32(cpu->mem, _t8, cpu->r[8]);
|
|
/* 02396B2C */ _t9 = cpu->r[3] + 0x00000010u;
|
|
/* 02396B2C */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 02396B30 */ _t10 = cpu->r[3] + 0x00000008u;
|
|
/* 02396B30 */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 02396B34 */ Gambit_fn_027DB2F8(cpu);
|
|
/* 02396B38 */ cpu->r[3] = 0x101C0000u;
|
|
/* 02396B3C */ cpu->r[3] = cpu->r[3] + 0x00005B7Cu;
|
|
/* 02396B40 */ Gambit_fn_02C83090(cpu);
|
|
/* 02396B44 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02396B44 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02396B48 */ cpu->lr = cpu->r[0];
|
|
/* 02396B4C */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 02396B50 */ return;
|
|
}
|
|
|
|
// fn_02396AF8 @ 0x2396af8
|
|
void Gambit_fn_02396AF8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02396AF8: ; // 0x2396af8
|
|
/* 02396AF8 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 02396AF8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02396AF8 */ cpu->r[1] = _t0;
|
|
/* 02396AFC */ _t1 = cpu->r[8] + 0x00000004u;
|
|
/* 02396AFC */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 02396B00 */ cpu->r[0] = 0x02390000u;
|
|
/* 02396B04 */ _t2 = cpu->r[8] + 0x00000000u;
|
|
/* 02396B04 */ rbrew_write32(cpu->mem, _t2, cpu->r[7]);
|
|
/* 02396B08 */ cpu->r[8] = 0x10080000u;
|
|
/* 02396B0C */ _t3 = cpu->r[3] + 0x00000004u;
|
|
/* 02396B0C */ rbrew_write32(cpu->mem, _t3, cpu->r[10]);
|
|
/* 02396B10 */ cpu->r[0] = cpu->r[0] + 0x000074C0u;
|
|
/* 02396B14 */ _t4 = cpu->r[12] + 0x00000004u;
|
|
/* 02396B14 */ rbrew_write32(cpu->mem, _t4, cpu->r[10]);
|
|
/* 02396B18 */ cpu->r[8] = cpu->r[8] + 0x000068BCu;
|
|
/* 02396B1C */ cpu->r[9] = cpu->r[9] + 0x000068C8u;
|
|
/* 02396B20 */ _t5 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02396B20 */ rbrew_write32(cpu->mem, _t5, cpu->r[10]);
|
|
/* 02396B24 */ _t6 = cpu->r[3] + 0x00000000u;
|
|
/* 02396B24 */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 02396B28 */ _t7 = cpu->r[12] + 0x00000000u;
|
|
/* 02396B28 */ rbrew_write32(cpu->mem, _t7, cpu->r[8]);
|
|
/* 02396B2C */ _t8 = cpu->r[3] + 0x00000010u;
|
|
/* 02396B2C */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 02396B30 */ _t9 = cpu->r[3] + 0x00000008u;
|
|
/* 02396B30 */ rbrew_write32(cpu->mem, _t9, cpu->r[11]);
|
|
/* 02396B34 */ Gambit_fn_027DB2F8(cpu);
|
|
/* 02396B38 */ cpu->r[3] = 0x101C0000u;
|
|
/* 02396B3C */ cpu->r[3] = cpu->r[3] + 0x00005B7Cu;
|
|
/* 02396B40 */ Gambit_fn_02C83090(cpu);
|
|
/* 02396B44 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02396B44 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02396B48 */ cpu->lr = cpu->r[0];
|
|
/* 02396B4C */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 02396B50 */ return;
|
|
}
|
|
|
|
// fn_02396B54 @ 0x2396b54
|
|
void Gambit_fn_02396B54(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_02396B54: ; // 0x2396b54
|
|
/* 02396B54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02396B58 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02396B58 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02396B58 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02396B58 */ goto L_02396B5C;
|
|
L_02396B5C: ; // 0x2396b5c
|
|
/* 02396B5C */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02396B5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02396B60 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02396B60 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02396B60 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02396B60 */ goto L_02396B64;
|
|
L_02396B64: ; // 0x2396b64
|
|
/* 02396B64 */ 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_02396B68 @ 0x2396b68
|
|
void Gambit_fn_02396B68(CPUState* cpu) {
|
|
L_02396B68: ; // 0x2396b68
|
|
/* 02396B68 */ return;
|
|
}
|
|
|
|
// fn_02396B6C @ 0x2396b6c
|
|
void Gambit_fn_02396B6C(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_02396B6C: ; // 0x2396b6c
|
|
/* 02396B6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02396B70 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02396B70 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02396B70 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02396B70 */ goto L_02396B74;
|
|
L_02396B74: ; // 0x2396b74
|
|
/* 02396B74 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02396B74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02396B78 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02396B78 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02396B78 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02396B78 */ goto L_02396B7C;
|
|
L_02396B7C: ; // 0x2396b7c
|
|
/* 02396B7C */ 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_02396B80 @ 0x2396b80
|
|
void Gambit_fn_02396B80(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_02396B80: ; // 0x2396b80
|
|
/* 02396B80 */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 02396B80 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02396B84 */ _t1 = cpu->r[3] + 0x00000008u;
|
|
/* 02396B84 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02396B88 */ cpu->r[12] = cpu->r[11] + cpu->r[12];
|
|
/* 02396B8C */ cpu->r[11] = 0x10110000u;
|
|
/* 02396B90 */ _t2 = cpu->r[11] + 0x00007399u;
|
|
/* 02396B90 */ cpu->r[0] = rbrew_read8(cpu->mem, _t2);
|
|
/* 02396B94 */ _t3 = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 02396B94 */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[0]);
|
|
/* 02396B98 */ return;
|
|
}
|
|
|
|
// fn_02396B9C @ 0x2396b9c
|
|
void Gambit_fn_02396B9C(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_02396B9C: ; // 0x2396b9c
|
|
/* 02396B9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02396BA0 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02396BA0 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02396BA0 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02396BA0 */ goto L_02396BA4;
|
|
L_02396BA4: ; // 0x2396ba4
|
|
/* 02396BA4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02396BA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02396BA8 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02396BA8 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02396BA8 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02396BA8 */ goto L_02396BAC;
|
|
L_02396BAC: ; // 0x2396bac
|
|
/* 02396BAC */ 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_02396BB0 @ 0x2396bb0
|
|
void Gambit_fn_02396BB0(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_02396BB0: ; // 0x2396bb0
|
|
/* 02396BB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02396BB4 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02396BB4 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02396BB4 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02396BB4 */ goto L_02396BB8;
|
|
L_02396BB8: ; // 0x2396bb8
|
|
/* 02396BB8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02396BB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02396BBC */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02396BBC */ _t3 = _t2 & 0x00000001u;
|
|
/* 02396BBC */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02396BBC */ goto L_02396BC0;
|
|
L_02396BC0: ; // 0x2396bc0
|
|
/* 02396BC0 */ 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_02396BC4 @ 0x2396bc4
|
|
void Gambit_fn_02396BC4(CPUState* cpu) {
|
|
L_02396BC4: ; // 0x2396bc4
|
|
/* 02396BC4 */ return;
|
|
}
|
|
|
|
// fn_02396BC8 @ 0x2396bc8
|
|
void Gambit_fn_02396BC8(CPUState* cpu) {
|
|
L_02396BC8: ; // 0x2396bc8
|
|
/* 02396BC8 */ return;
|
|
}
|
|
|
|
// fn_02396BCC @ 0x2396bcc
|
|
void Gambit_fn_02396BCC(CPUState* cpu) {
|
|
L_02396BCC: ; // 0x2396bcc
|
|
/* 02396BCC */ return;
|
|
}
|
|
|
|
// fn_02396BD0 @ 0x2396bd0
|
|
void Gambit_fn_02396BD0(CPUState* cpu) {
|
|
L_02396BD0: ; // 0x2396bd0
|
|
/* 02396BD0 */ return;
|
|
}
|
|
|
|
// fn_02396BD4 @ 0x2396bd4
|
|
void Gambit_fn_02396BD4(CPUState* cpu) {
|
|
L_02396BD4: ; // 0x2396bd4
|
|
/* 02396BD4 */ return;
|
|
}
|
|
|
|
// fn_02396BD8 @ 0x2396bd8
|
|
void Gambit_fn_02396BD8(CPUState* cpu) {
|
|
L_02396BD8: ; // 0x2396bd8
|
|
/* 02396BD8 */ return;
|
|
}
|
|
|
|
// fn_02396BDC @ 0x2396bdc
|
|
void Gambit_fn_02396BDC(CPUState* cpu) {
|
|
L_02396BDC: ; // 0x2396bdc
|
|
/* 02396BDC */ return;
|
|
}
|
|
|
|
// fn_02396BE0 @ 0x2396be0
|
|
void Gambit_fn_02396BE0(CPUState* cpu) {
|
|
L_02396BE0: ; // 0x2396be0
|
|
/* 02396BE0 */ return;
|
|
}
|
|
|
|
// fn_02396BE4 @ 0x2396be4
|
|
void Gambit_fn_02396BE4(CPUState* cpu) {
|
|
L_02396BE4: ; // 0x2396be4
|
|
/* 02396BE4 */ return;
|
|
}
|
|
|
|
// fn_02396BE8 @ 0x2396be8
|
|
void Gambit_fn_02396BE8(CPUState* cpu) {
|
|
L_02396BE8: ; // 0x2396be8
|
|
/* 02396BE8 */ return;
|
|
}
|
|
|
|
// fn_02396BEC @ 0x2396bec
|
|
void Gambit_fn_02396BEC(CPUState* cpu) {
|
|
L_02396BEC: ; // 0x2396bec
|
|
/* 02396BEC */ return;
|
|
}
|
|
|
|
// fn_02396BF0 @ 0x2396bf0
|
|
void Gambit_fn_02396BF0(CPUState* cpu) {
|
|
L_02396BF0: ; // 0x2396bf0
|
|
/* 02396BF0 */ return;
|
|
}
|
|
|
|
// fn_02396BF4 @ 0x2396bf4
|
|
void Gambit_fn_02396BF4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_02396BF4: ; // 0x2396bf4
|
|
/* 02396BF4 */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 02396BF4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02396BF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02396BFC */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02396BFC */ _t2 = _t1 & 0x00000001u;
|
|
/* 02396BFC */ if (_t2) goto L_02396C08; else goto L_02396C00;
|
|
L_02396C00: ; // 0x2396c00
|
|
/* 02396C00 */ cpu->r[3] = cpu->r[12] + 0x00000034u;
|
|
/* 02396C04 */ return;
|
|
L_02396C08: ; // 0x2396c08
|
|
/* 02396C08 */ cpu->r[3] = 0x00000000u;
|
|
/* 02396C0C */ return;
|
|
}
|
|
|
|
// fn_02396C10 @ 0x2396c10
|
|
void Gambit_fn_02396C10(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_02396C10: ; // 0x2396c10
|
|
/* 02396C10 */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 02396C10 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02396C14 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02396C18 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02396C18 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02396C18 */ if (_t2) goto L_02396C24; else goto L_02396C1C;
|
|
L_02396C1C: ; // 0x2396c1c
|
|
/* 02396C1C */ cpu->r[3] = cpu->r[12] + 0x00000064u;
|
|
/* 02396C20 */ return;
|
|
L_02396C24: ; // 0x2396c24
|
|
/* 02396C24 */ cpu->r[3] = 0x00000000u;
|
|
/* 02396C28 */ return;
|
|
}
|
|
|
|
// fn_02396C2C @ 0x2396c2c
|
|
void Gambit_fn_02396C2C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02396C2C: ; // 0x2396c2c
|
|
/* 02396C2C */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02396C2C */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02396C30 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02396C30 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02396C34 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02396C34 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02396C34 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 02396C34 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02396C34 */ goto L_02396C38;
|
|
L_02396C38: ; // 0x2396c38
|
|
/* 02396C38 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 02396C38 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02396C3C */ _t5 = cpu->r[12] + 0x0000004Cu;
|
|
/* 02396C3C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02396C40 */ cpu->ctr = cpu->r[0];
|
|
/* 02396C44 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02396C48 @ 0x2396c48
|
|
void Gambit_fn_02396C48(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02396C48: ; // 0x2396c48
|
|
/* 02396C48 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02396C48 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02396C4C */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Du, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02396C4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02396C50 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02396C50 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02396C50 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 02396C50 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02396C50 */ goto L_02396C54;
|
|
L_02396C54: ; // 0x2396c54
|
|
/* 02396C54 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 02396C54 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02396C58 */ _t5 = cpu->r[12] + 0x0000005Cu;
|
|
/* 02396C58 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02396C5C */ cpu->ctr = cpu->r[0];
|
|
/* 02396C60 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02396C64 @ 0x2396c64
|
|
void Gambit_fn_02396C64(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02396C64: ; // 0x2396c64
|
|
/* 02396C64 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02396C64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02396C68 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Au, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02396C68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02396C6C */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02396C6C */ _t2 = _t1 & 0x00000001u;
|
|
/* 02396C6C */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 02396C6C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02396C6C */ goto L_02396C70;
|
|
L_02396C70: ; // 0x2396c70
|
|
/* 02396C70 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 02396C70 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02396C74 */ _t5 = cpu->r[11] + 0x00000074u;
|
|
/* 02396C74 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02396C78 */ cpu->ctr = cpu->r[0];
|
|
/* 02396C7C */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02396C80 @ 0x2396c80
|
|
void Gambit_fn_02396C80(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02396C80: ; // 0x2396c80
|
|
/* 02396C80 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02396C80 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02396C84 */ _t1 = cpu->r[12] + 0x0000002Cu;
|
|
/* 02396C84 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02396C88 */ cpu->ctr = cpu->r[0];
|
|
/* 02396C8C */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02396C90 @ 0x2396c90
|
|
void Gambit_fn_02396C90(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02396C90: ; // 0x2396c90
|
|
/* 02396C90 */ cpu->r[0] = cpu->lr;
|
|
/* 02396C94 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02396C94 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02396C94 */ cpu->r[1] = _t0;
|
|
/* 02396C98 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02396C98 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02396C9C */ cpu->r[31] = cpu->r[3];
|
|
/* 02396CA0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02396CA0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02396CA4 */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02396CA4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02396CA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 02396CAC */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02396CAC */ _t5 = _t4 & 0x00000001u;
|
|
/* 02396CAC */ if (_t5) goto L_02396CB0; else goto L_02396CCC;
|
|
L_02396CB0: ; // 0x2396cb0
|
|
/* 02396CB0 */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 02396CB0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02396CB4 */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 02396CB4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02396CB8 */ cpu->ctr = cpu->r[0];
|
|
/* 02396CBC */ cpu->r[3] = cpu->r[31];
|
|
/* 02396CC0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02396CC4 */ cpu->r[0] = 0x00000002u;
|
|
/* 02396CC8 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02396CC8 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_02396CCC: ; // 0x2396ccc
|
|
/* 02396CCC */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 02396CCC */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02396CD0 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02396CD0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02396CD4 */ cpu->lr = cpu->r[0];
|
|
/* 02396CD8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02396CDC */ return;
|
|
}
|
|
|
|
// fn_02396C94 @ 0x2396c94
|
|
void Gambit_fn_02396C94(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02396C94: ; // 0x2396c94
|
|
/* 02396C94 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02396C94 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02396C94 */ cpu->r[1] = _t0;
|
|
/* 02396C98 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02396C98 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02396C9C */ cpu->r[31] = cpu->r[3];
|
|
/* 02396CA0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02396CA0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02396CA4 */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02396CA4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02396CA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 02396CAC */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02396CAC */ _t5 = _t4 & 0x00000001u;
|
|
/* 02396CAC */ if (_t5) goto L_02396CB0; else goto L_02396CCC;
|
|
L_02396CB0: ; // 0x2396cb0
|
|
/* 02396CB0 */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 02396CB0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02396CB4 */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 02396CB4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02396CB8 */ cpu->ctr = cpu->r[0];
|
|
/* 02396CBC */ cpu->r[3] = cpu->r[31];
|
|
/* 02396CC0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02396CC4 */ cpu->r[0] = 0x00000002u;
|
|
/* 02396CC8 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02396CC8 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_02396CCC: ; // 0x2396ccc
|
|
/* 02396CCC */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 02396CCC */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02396CD0 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02396CD0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02396CD4 */ cpu->lr = cpu->r[0];
|
|
/* 02396CD8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02396CDC */ return;
|
|
}
|
|
|
|
// fn_02396CE8 @ 0x2396ce8
|
|
void Gambit_fn_02396CE8(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_02396CE8: ; // 0x2396ce8
|
|
/* 02396CE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02396CEC */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02396CEC */ _t1 = _t0 & 0x00000001u;
|
|
/* 02396CEC */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02396CEC */ goto L_02396CF0;
|
|
L_02396CF0: ; // 0x2396cf0
|
|
/* 02396CF0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02396CF0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02396CF4 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02396CF4 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02396CF4 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02396CF4 */ goto L_02396CF8;
|
|
L_02396CF8: ; // 0x2396cf8
|
|
/* 02396CF8 */ 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_02396CFC @ 0x2396cfc
|
|
void Gambit_fn_02396CFC(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02396CFC: ; // 0x2396cfc
|
|
/* 02396CFC */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02396CFC */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02396D00 */ _t1 = cpu->r[12] + 0x0000008Cu;
|
|
/* 02396D00 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02396D04 */ cpu->ctr = cpu->r[0];
|
|
/* 02396D08 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02396D0C @ 0x2396d0c
|
|
void Gambit_fn_02396D0C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02396D0C: ; // 0x2396d0c
|
|
/* 02396D0C */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02396D0C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02396D10 */ _t1 = cpu->r[12] + 0x00000124u;
|
|
/* 02396D10 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02396D14 */ cpu->ctr = cpu->r[0];
|
|
/* 02396D18 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02396D1C @ 0x2396d1c
|
|
void Gambit_fn_02396D1C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02396D1C: ; // 0x2396d1c
|
|
/* 02396D1C */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02396D1C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02396D20 */ _t1 = cpu->r[12] + 0x00000124u;
|
|
/* 02396D20 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02396D24 */ cpu->ctr = cpu->r[0];
|
|
/* 02396D28 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02396D2C @ 0x2396d2c
|
|
void Gambit_fn_02396D2C(CPUState* cpu) {
|
|
L_02396D2C: ; // 0x2396d2c
|
|
/* 02396D2C */ cpu->r[3] = 0x00000001u;
|
|
/* 02396D30 */ return;
|
|
}
|
|
|
|
// fn_02396D34 @ 0x2396d34
|
|
void Gambit_fn_02396D34(CPUState* cpu) {
|
|
L_02396D34: ; // 0x2396d34
|
|
/* 02396D34 */ return;
|
|
}
|
|
|
|
// fn_02396D38 @ 0x2396d38
|
|
void Gambit_fn_02396D38(CPUState* cpu) {
|
|
L_02396D38: ; // 0x2396d38
|
|
/* 02396D38 */ return;
|
|
}
|
|
|
|
// fn_02396D3C @ 0x2396d3c
|
|
void Gambit_fn_02396D3C(CPUState* cpu) {
|
|
L_02396D3C: ; // 0x2396d3c
|
|
/* 02396D3C */ return;
|
|
}
|
|
|
|
// fn_02396D40 @ 0x2396d40
|
|
void Gambit_fn_02396D40(CPUState* cpu) {
|
|
L_02396D40: ; // 0x2396d40
|
|
/* 02396D40 */ return;
|
|
}
|
|
|
|
// fn_02396D44 @ 0x2396d44
|
|
void Gambit_fn_02396D44(CPUState* cpu) {
|
|
L_02396D44: ; // 0x2396d44
|
|
/* 02396D44 */ return;
|
|
}
|
|
|
|
// fn_02396D48 @ 0x2396d48
|
|
void Gambit_fn_02396D48(CPUState* cpu) {
|
|
L_02396D48: ; // 0x2396d48
|
|
/* 02396D48 */ cpu->r[3] = 0x00000001u;
|
|
/* 02396D4C */ return;
|
|
}
|
|
|
|
// fn_02396D50 @ 0x2396d50
|
|
void Gambit_fn_02396D50(CPUState* cpu) {
|
|
L_02396D50: ; // 0x2396d50
|
|
/* 02396D50 */ cpu->r[3] = 0x00000000u;
|
|
/* 02396D54 */ return;
|
|
}
|
|
|
|
// fn_02396D58 @ 0x2396d58
|
|
void Gambit_fn_02396D58(CPUState* cpu) {
|
|
L_02396D58: ; // 0x2396d58
|
|
/* 02396D58 */ cpu->r[3] = 0x10080000u;
|
|
/* 02396D5C */ cpu->r[3] = cpu->r[3] + 0x00006868u;
|
|
/* 02396D60 */ return;
|
|
}
|
|
|
|
// fn_02396D64 @ 0x2396d64
|
|
void Gambit_fn_02396D64(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_02396D64: ; // 0x2396d64
|
|
/* 02396D64 */ cpu->r[12] = 0x101D0000u;
|
|
/* 02396D68 */ _t0 = cpu->r[12] + 0x00000448u;
|
|
/* 02396D68 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02396D6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02396D70 */ cpu->r[12] = 0x101D0000u;
|
|
/* 02396D74 */ cpu->r[12] = cpu->r[12] + 0x0000044Cu;
|
|
/* 02396D78 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02396D78 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02396D78 */ if (_t2) goto L_02396D7C; else goto L_02396D94;
|
|
L_02396D7C: ; // 0x2396d7c
|
|
/* 02396D7C */ cpu->r[0] = 0x10080000u;
|
|
/* 02396D80 */ cpu->r[9] = 0x00000001u;
|
|
/* 02396D84 */ cpu->r[8] = 0x101D0000u;
|
|
/* 02396D88 */ cpu->r[0] = cpu->r[0] + 0x00006848u;
|
|
/* 02396D8C */ _t3 = cpu->r[8] + 0x00000448u;
|
|
/* 02396D8C */ rbrew_write32(cpu->mem, _t3, cpu->r[9]);
|
|
/* 02396D90 */ _t4 = cpu->r[12] + 0x00000000u;
|
|
/* 02396D90 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
L_02396D94: ; // 0x2396d94
|
|
/* 02396D94 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]);
|
|
/* 02396D98 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02396D98 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02396D98 */ if (_t6) goto L_02396D9C; else goto L_02396DA4;
|
|
L_02396D9C: ; // 0x2396d9c
|
|
/* 02396D9C */ cpu->r[3] = 0x00000001u;
|
|
/* 02396DA0 */ return;
|
|
L_02396DA4: ; // 0x2396da4
|
|
/* 02396DA4 */ cpu->r[11] = 0x101D0000u;
|
|
/* 02396DA8 */ _t7 = cpu->r[11] + 0xFFFFD4E8u;
|
|
/* 02396DA8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02396DA8 */ cpu->r[11] = _t7;
|
|
/* 02396DAC */ cpu->r[10] = 0x101D0000u;
|
|
/* 02396DB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02396DB4 */ cpu->r[10] = cpu->r[10] + 0xFFFFD4ECu;
|
|
/* 02396DB8 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02396DB8 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02396DB8 */ if (_t9) goto L_02396DBC; else goto L_02396DD0;
|
|
L_02396DBC: ; // 0x2396dbc
|
|
/* 02396DBC */ cpu->r[12] = 0x10080000u;
|
|
/* 02396DC0 */ cpu->r[9] = 0x00000001u;
|
|
/* 02396DC4 */ cpu->r[12] = cpu->r[12] + 0x00006838u;
|
|
/* 02396DC8 */ _t10 = cpu->r[11] + 0x00000000u;
|
|
/* 02396DC8 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 02396DCC */ _t11 = cpu->r[10] + 0x00000000u;
|
|
/* 02396DCC */ rbrew_write32(cpu->mem, _t11, cpu->r[12]);
|
|
L_02396DD0: ; // 0x2396dd0
|
|
/* 02396DD0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[10]);
|
|
/* 02396DD4 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02396DD4 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02396DD4 */ if (_t13) goto L_02396DD8; else goto L_02396DE0;
|
|
L_02396DD8: ; // 0x2396dd8
|
|
/* 02396DD8 */ cpu->r[0] = 0x00000001u;
|
|
/* 02396DDC */ goto L_02396E18;
|
|
L_02396DE0: ; // 0x2396de0
|
|
/* 02396DE0 */ cpu->r[8] = 0x101D0000u;
|
|
/* 02396DE4 */ _t14 = cpu->r[8] + 0xFFFFD4E0u;
|
|
/* 02396DE4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02396DE4 */ cpu->r[8] = _t14;
|
|
/* 02396DE8 */ cpu->r[11] = 0x101D0000u;
|
|
/* 02396DEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02396DF0 */ cpu->r[11] = cpu->r[11] + 0xFFFFD4E4u;
|
|
/* 02396DF4 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02396DF4 */ _t16 = _t15 & 0x00000001u;
|
|
/* 02396DF4 */ if (_t16) goto L_02396DF8; else goto L_02396E0C;
|
|
L_02396DF8: ; // 0x2396df8
|
|
/* 02396DF8 */ cpu->r[10] = 0x10080000u;
|
|
/* 02396DFC */ cpu->r[9] = 0x00000001u;
|
|
/* 02396E00 */ cpu->r[10] = cpu->r[10] + 0x000067C8u;
|
|
/* 02396E04 */ _t17 = cpu->r[8] + 0x00000000u;
|
|
/* 02396E04 */ rbrew_write32(cpu->mem, _t17, cpu->r[9]);
|
|
/* 02396E08 */ _t18 = cpu->r[11] + 0x00000000u;
|
|
/* 02396E08 */ rbrew_write32(cpu->mem, _t18, cpu->r[10]);
|
|
L_02396E0C: ; // 0x2396e0c
|
|
/* 02396E0C */ cpu->r[12] = cpu->r[4] ^ cpu->r[11];
|
|
/* 02396E10 */ cpu->r[0] = rbrew_clz32(cpu->r[12]);
|
|
/* 02396E14 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
L_02396E18: ; // 0x2396e18
|
|
/* 02396E18 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 02396E1C */ return;
|
|
}
|
|
|
|
// fn_02396E2C @ 0x2396e2c
|
|
void Gambit_fn_02396E2C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_02396E2C: ; // 0x2396e2c
|
|
/* 02396E2C */ cpu->r[3] = cpu->r[3] + 0x00000050u;
|
|
/* 02396E30 */ goto L_02397450;
|
|
L_02397450: ; // 0x2397450
|
|
/* 02397450 */ cpu->r[0] = cpu->lr;
|
|
/* 02397454 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02397454 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02397454 */ cpu->r[1] = _t0;
|
|
/* 02397458 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02397458 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0239745C */ cpu->r[31] = cpu->r[3];
|
|
/* 02397460 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02397460 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02397464 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 02397464 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02397468 */ cpu->r[12] = 0x00000000u;
|
|
/* 0239746C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02397470 */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 02397470 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 02397474 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397474 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02397474 */ if (_t6) goto L_0239749C; else goto L_02397478;
|
|
L_02397478: ; // 0x2397478
|
|
/* 02397478 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02397478 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 0239747C */ /* nop */
|
|
/* 02397480 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 02397484 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397484 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02397484 */ if (_t9) goto L_02397488; else goto L_0239749C;
|
|
L_02397488: ; // 0x2397488
|
|
/* 02397488 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 02397488 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0239748C */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 0239748C */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02397490 */ cpu->ctr = cpu->r[0];
|
|
/* 02397494 */ cpu->r[3] = cpu->r[31];
|
|
/* 02397498 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0239749C: ; // 0x239749c
|
|
/* 0239749C */ cpu->r[3] = cpu->r[31];
|
|
/* 023974A0 */ Gambit_fn_023973C8(cpu);
|
|
/* 023974A4 */ cpu->r[3] = cpu->r[31];
|
|
/* 023974A8 */ Gambit_fn_027FC37C(cpu);
|
|
/* 023974AC */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 023974AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 023974B0 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023974B0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 023974B4 */ cpu->lr = cpu->r[0];
|
|
/* 023974B8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 023974BC */ return;
|
|
}
|
|
|
|
// fn_02396E34 @ 0x2396e34
|
|
void Gambit_fn_02396E34(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02396E34: ; // 0x2396e34
|
|
/* 02396E34 */ cpu->r[0] = cpu->lr;
|
|
/* 02396E38 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02396E38 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02396E38 */ cpu->r[1] = _t0;
|
|
/* 02396E3C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02396E3C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02396E40 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02396E40 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02396E44 */ _t3 = cpu->r[3] + 0x0000000Eu;
|
|
/* 02396E44 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02396E48 */ cpu->r[31] = cpu->r[3];
|
|
/* 02396E4C */ /* nop */
|
|
/* 02396E50 */ Gambit_fn_027FC35C(cpu);
|
|
/* 02396E54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02396E58 */ Gambit_fn_023972C8(cpu);
|
|
/* 02396E5C */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 02396E5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02396E60 */ cpu->lr = cpu->r[0];
|
|
/* 02396E64 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02396E64 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02396E68 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02396E6C */ return;
|
|
}
|
|
|
|
// fn_02396E38 @ 0x2396e38
|
|
void Gambit_fn_02396E38(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02396E38: ; // 0x2396e38
|
|
/* 02396E38 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02396E38 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02396E38 */ cpu->r[1] = _t0;
|
|
/* 02396E3C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02396E3C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02396E40 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02396E40 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02396E44 */ _t3 = cpu->r[3] + 0x0000000Eu;
|
|
/* 02396E44 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02396E48 */ cpu->r[31] = cpu->r[3];
|
|
/* 02396E4C */ /* nop */
|
|
/* 02396E50 */ Gambit_fn_027FC35C(cpu);
|
|
/* 02396E54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02396E58 */ Gambit_fn_023972C8(cpu);
|
|
/* 02396E5C */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 02396E5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02396E60 */ cpu->lr = cpu->r[0];
|
|
/* 02396E64 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02396E64 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02396E68 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02396E6C */ return;
|
|
}
|
|
|
|
// fn_02396E70 @ 0x2396e70
|
|
void Gambit_fn_02396E70(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02396E70: ; // 0x2396e70
|
|
/* 02396E70 */ cpu->r[0] = cpu->lr;
|
|
/* 02396E74 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02396E74 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02396E74 */ cpu->r[1] = _t0;
|
|
/* 02396E78 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02396E78 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02396E7C */ cpu->r[31] = cpu->r[3];
|
|
/* 02396E80 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02396E80 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02396E84 */ _t3 = cpu->r[31] + 0x0000005Eu;
|
|
/* 02396E84 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02396E88 */ cpu->r[3] = cpu->r[31] + 0x00000050u;
|
|
/* 02396E8C */ /* nop */
|
|
/* 02396E90 */ Gambit_fn_027FC35C(cpu);
|
|
/* 02396E94 */ cpu->r[3] = cpu->r[31] + 0x00000050u;
|
|
/* 02396E98 */ Gambit_fn_023972C8(cpu);
|
|
/* 02396E9C */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 02396E9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02396EA0 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02396EA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02396EA4 */ cpu->lr = cpu->r[0];
|
|
/* 02396EA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02396EAC */ return;
|
|
}
|
|
|
|
// fn_02396E74 @ 0x2396e74
|
|
void Gambit_fn_02396E74(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02396E74: ; // 0x2396e74
|
|
/* 02396E74 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02396E74 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02396E74 */ cpu->r[1] = _t0;
|
|
/* 02396E78 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02396E78 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02396E7C */ cpu->r[31] = cpu->r[3];
|
|
/* 02396E80 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02396E80 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02396E84 */ _t3 = cpu->r[31] + 0x0000005Eu;
|
|
/* 02396E84 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02396E88 */ cpu->r[3] = cpu->r[31] + 0x00000050u;
|
|
/* 02396E8C */ /* nop */
|
|
/* 02396E90 */ Gambit_fn_027FC35C(cpu);
|
|
/* 02396E94 */ cpu->r[3] = cpu->r[31] + 0x00000050u;
|
|
/* 02396E98 */ Gambit_fn_023972C8(cpu);
|
|
/* 02396E9C */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 02396E9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02396EA0 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02396EA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02396EA4 */ cpu->lr = cpu->r[0];
|
|
/* 02396EA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02396EAC */ return;
|
|
}
|
|
|
|
// fn_02396EB0 @ 0x2396eb0
|
|
void Gambit_fn_02396EB0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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_02396EB0: ; // 0x2396eb0
|
|
/* 02396EB0 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 02396EB0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02396EB0 */ cpu->r[1] = _t0;
|
|
/* 02396EB4 */ /* nop */
|
|
/* 02396EB8 */ cpu->r[0] = cpu->lr;
|
|
/* 02396EBC */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 02396EBC */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02396EC0 */ cpu->r[29] = cpu->r[6];
|
|
/* 02396EC4 */ cpu->r[28] = cpu->r[3];
|
|
/* 02396EC8 */ cpu->r[30] = cpu->r[5];
|
|
/* 02396ECC */ _t2 = cpu->r[30] + 0x00000000u;
|
|
/* 02396ECC */ cpu->r[27] = rbrew_read8(cpu->mem, _t2);
|
|
/* 02396ED0 */ cpu->r[31] = 0x101D0000u;
|
|
/* 02396ED4 */ _t3 = cpu->r[28] + 0x0000001Cu;
|
|
/* 02396ED4 */ rbrew_write32(cpu->mem, _t3, cpu->r[4]);
|
|
/* 02396ED8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02396EDC */ _t4 = cpu->r[28] + 0x0000000Fu;
|
|
/* 02396EDC */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[27]);
|
|
/* 02396EE0 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02396EE0 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02396EE0 */ if (_t6) goto L_02396F24; else goto L_02396EE4;
|
|
L_02396EE4: ; // 0x2396ee4
|
|
/* 02396EE4 */ _t7 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 02396EE4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02396EE8 */ Gambit_fn_02826F20(cpu);
|
|
/* 02396EEC */ _t8 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02396EEC */ cpu->r[9] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02396EF0 */ _t9 = cpu->r[9] + 0x00000034u;
|
|
/* 02396EF0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02396EF4 */ cpu->ctr = cpu->r[0];
|
|
/* 02396EF8 */ cpu->r[5] = 0x00000004u;
|
|
/* 02396EFC */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02396F00 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02396F04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02396F08 */ cpu->r[0] = cpu->r[27];
|
|
/* 02396F0C */ _t10 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02396F0C */ _t11 = _t10 & 0x00000001u;
|
|
/* 02396F0C */ if (_t11) goto L_02396F14; else goto L_02396F10;
|
|
L_02396F10: ; // 0x2396f10
|
|
/* 02396F10 */ cpu->r[0] = 0x00000001u;
|
|
L_02396F14: ; // 0x2396f14
|
|
/* 02396F14 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02396F18 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02396F18 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02396F18 */ if (_t13) goto L_02396F24; else goto L_02396F1C;
|
|
L_02396F1C: ; // 0x2396f1c
|
|
/* 02396F1C */ _t14 = cpu->r[28] + 0x00000024u;
|
|
/* 02396F1C */ rbrew_write32(cpu->mem, _t14, cpu->r[3]);
|
|
/* 02396F20 */ _t15 = cpu->r[28] + 0x00000020u;
|
|
/* 02396F20 */ rbrew_write32(cpu->mem, _t15, cpu->r[27]);
|
|
L_02396F24: ; // 0x2396f24
|
|
/* 02396F24 */ _t16 = cpu->r[28] + 0x00000020u;
|
|
/* 02396F24 */ cpu->r[7] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02396F28 */ cpu->r[0] = 0x00000000u;
|
|
/* 02396F2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 02396F30 */ cpu->r[12] = cpu->r[0];
|
|
/* 02396F34 */ _t17 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02396F34 */ _t18 = _t17 & 0x00000001u;
|
|
/* 02396F34 */ if (_t18) goto L_02396F38; else goto L_02396F5C;
|
|
L_02396F38: ; // 0x2396f38
|
|
/* 02396F38 */ cpu->ctr = cpu->r[7];
|
|
/* 02396F3C */ cpu->r[10] = 0x00000000u;
|
|
L_02396F40: ; // 0x2396f40
|
|
/* 02396F40 */ _t19 = cpu->r[28] + 0x00000024u;
|
|
/* 02396F40 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02396F44 */ _t20 = cpu->r[11] + cpu->r[10];
|
|
/* 02396F44 */ rbrew_write16(cpu->mem, _t20, (uint16_t)cpu->r[0]);
|
|
/* 02396F48 */ cpu->r[8] = cpu->r[11] + cpu->r[10];
|
|
/* 02396F4C */ _t21 = cpu->r[8] + 0x00000004u;
|
|
/* 02396F4C */ rbrew_write32(cpu->mem, _t21, cpu->r[12]);
|
|
/* 02396F50 */ cpu->r[10] = cpu->r[10] + 0x00000008u;
|
|
/* 02396F54 */ _t22 = cpu->r[8] + 0x00000002u;
|
|
/* 02396F54 */ rbrew_write16(cpu->mem, _t22, (uint16_t)cpu->r[0]);
|
|
/* 02396F58 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02396F58 */ _t23 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02396F58 */ _t24 = _t23 >> (0x00000002u & 31u);
|
|
/* 02396F58 */ _t25 = _t24 & 0x00000001u;
|
|
/* 02396F58 */ if (_t25) goto L_02396F40; else goto L_02396F5C;
|
|
L_02396F5C: ; // 0x2396f5c
|
|
/* 02396F5C */ _t26 = cpu->r[28] + 0x0000000Fu;
|
|
/* 02396F5C */ cpu->r[27] = rbrew_read8(cpu->mem, _t26);
|
|
/* 02396F60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02396F64 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02396F64 */ _t28 = _t27 & 0x00000001u;
|
|
/* 02396F64 */ if (_t28) goto L_02396FA8; else goto L_02396F68;
|
|
L_02396F68: ; // 0x2396f68
|
|
/* 02396F68 */ _t29 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 02396F68 */ cpu->r[3] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02396F6C */ Gambit_fn_02826F20(cpu);
|
|
/* 02396F70 */ _t30 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02396F70 */ cpu->r[12] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02396F74 */ _t31 = cpu->r[12] + 0x00000034u;
|
|
/* 02396F74 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 02396F78 */ cpu->ctr = cpu->r[0];
|
|
/* 02396F7C */ cpu->r[5] = 0x00000004u;
|
|
/* 02396F80 */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02396F84 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02396F88 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02396F8C */ cpu->r[11] = cpu->r[27];
|
|
/* 02396F90 */ _t32 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02396F90 */ _t33 = _t32 & 0x00000001u;
|
|
/* 02396F90 */ if (_t33) goto L_02396F98; else goto L_02396F94;
|
|
L_02396F94: ; // 0x2396f94
|
|
/* 02396F94 */ cpu->r[11] = 0x00000001u;
|
|
L_02396F98: ; // 0x2396f98
|
|
/* 02396F98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02396F9C */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02396F9C */ _t35 = _t34 & 0x00000001u;
|
|
/* 02396F9C */ if (_t35) goto L_02396FA8; else goto L_02396FA0;
|
|
L_02396FA0: ; // 0x2396fa0
|
|
/* 02396FA0 */ _t36 = cpu->r[28] + 0x0000002Cu;
|
|
/* 02396FA0 */ rbrew_write32(cpu->mem, _t36, cpu->r[3]);
|
|
/* 02396FA4 */ _t37 = cpu->r[28] + 0x00000028u;
|
|
/* 02396FA4 */ rbrew_write32(cpu->mem, _t37, cpu->r[27]);
|
|
L_02396FA8: ; // 0x2396fa8
|
|
/* 02396FA8 */ _t38 = cpu->r[28] + 0x00000028u;
|
|
/* 02396FA8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02396FAC */ cpu->r[0] = 0x00000000u;
|
|
/* 02396FB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 02396FB4 */ cpu->r[12] = cpu->r[0];
|
|
/* 02396FB8 */ _t39 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02396FB8 */ _t40 = _t39 & 0x00000001u;
|
|
/* 02396FB8 */ if (_t40) goto L_02396FBC; else goto L_02396FE0;
|
|
L_02396FBC: ; // 0x2396fbc
|
|
/* 02396FBC */ cpu->ctr = cpu->r[6];
|
|
/* 02396FC0 */ cpu->r[9] = 0x00000000u;
|
|
L_02396FC4: ; // 0x2396fc4
|
|
/* 02396FC4 */ _t41 = cpu->r[28] + 0x0000002Cu;
|
|
/* 02396FC4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t41);
|
|
/* 02396FC8 */ _t42 = cpu->r[5] + cpu->r[9];
|
|
/* 02396FC8 */ rbrew_write16(cpu->mem, _t42, (uint16_t)cpu->r[0]);
|
|
/* 02396FCC */ cpu->r[7] = cpu->r[5] + cpu->r[9];
|
|
/* 02396FD0 */ _t43 = cpu->r[7] + 0x00000004u;
|
|
/* 02396FD0 */ rbrew_write32(cpu->mem, _t43, cpu->r[12]);
|
|
/* 02396FD4 */ cpu->r[9] = cpu->r[9] + 0x00000008u;
|
|
/* 02396FD8 */ _t44 = cpu->r[7] + 0x00000002u;
|
|
/* 02396FD8 */ rbrew_write16(cpu->mem, _t44, (uint16_t)cpu->r[0]);
|
|
/* 02396FDC */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02396FDC */ _t45 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02396FDC */ _t46 = _t45 >> (0x00000002u & 31u);
|
|
/* 02396FDC */ _t47 = _t46 & 0x00000001u;
|
|
/* 02396FDC */ if (_t47) goto L_02396FC4; else goto L_02396FE0;
|
|
L_02396FE0: ; // 0x2396fe0
|
|
/* 02396FE0 */ _t48 = cpu->r[28] + 0x0000000Fu;
|
|
/* 02396FE0 */ cpu->r[27] = rbrew_read8(cpu->mem, _t48);
|
|
/* 02396FE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02396FE8 */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02396FE8 */ _t50 = _t49 & 0x00000001u;
|
|
/* 02396FE8 */ if (_t50) goto L_0239702C; else goto L_02396FEC;
|
|
L_02396FEC: ; // 0x2396fec
|
|
/* 02396FEC */ _t51 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 02396FEC */ cpu->r[3] = rbrew_read32(cpu->mem, _t51);
|
|
/* 02396FF0 */ Gambit_fn_02826F20(cpu);
|
|
/* 02396FF4 */ _t52 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02396FF4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t52);
|
|
/* 02396FF8 */ _t53 = cpu->r[6] + 0x00000034u;
|
|
/* 02396FF8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t53);
|
|
/* 02396FFC */ cpu->ctr = cpu->r[0];
|
|
/* 02397000 */ cpu->r[5] = 0x00000004u;
|
|
/* 02397004 */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02397008 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0239700C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02397010 */ cpu->r[10] = cpu->r[27];
|
|
/* 02397014 */ _t54 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02397014 */ _t55 = _t54 & 0x00000001u;
|
|
/* 02397014 */ if (_t55) goto L_0239701C; else goto L_02397018;
|
|
L_02397018: ; // 0x2397018
|
|
/* 02397018 */ cpu->r[10] = 0x00000001u;
|
|
L_0239701C: ; // 0x239701c
|
|
/* 0239701C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02397020 */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397020 */ _t57 = _t56 & 0x00000001u;
|
|
/* 02397020 */ if (_t57) goto L_0239702C; else goto L_02397024;
|
|
L_02397024: ; // 0x2397024
|
|
/* 02397024 */ _t58 = cpu->r[28] + 0x00000034u;
|
|
/* 02397024 */ rbrew_write32(cpu->mem, _t58, cpu->r[3]);
|
|
/* 02397028 */ _t59 = cpu->r[28] + 0x00000030u;
|
|
/* 02397028 */ rbrew_write32(cpu->mem, _t59, cpu->r[27]);
|
|
L_0239702C: ; // 0x239702c
|
|
/* 0239702C */ _t60 = cpu->r[28] + 0x00000030u;
|
|
/* 0239702C */ cpu->r[12] = rbrew_read32(cpu->mem, _t60);
|
|
/* 02397030 */ cpu->r[0] = 0x00000000u;
|
|
/* 02397034 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02397038 */ cpu->r[5] = cpu->r[0];
|
|
/* 0239703C */ _t61 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0239703C */ _t62 = _t61 & 0x00000001u;
|
|
/* 0239703C */ if (_t62) goto L_02397040; else goto L_02397064;
|
|
L_02397040: ; // 0x2397040
|
|
/* 02397040 */ cpu->ctr = cpu->r[12];
|
|
/* 02397044 */ cpu->r[8] = 0x00000000u;
|
|
L_02397048: ; // 0x2397048
|
|
/* 02397048 */ _t63 = cpu->r[28] + 0x00000034u;
|
|
/* 02397048 */ cpu->r[9] = rbrew_read32(cpu->mem, _t63);
|
|
/* 0239704C */ _t64 = cpu->r[9] + cpu->r[8];
|
|
/* 0239704C */ rbrew_write16(cpu->mem, _t64, (uint16_t)cpu->r[0]);
|
|
/* 02397050 */ cpu->r[6] = cpu->r[9] + cpu->r[8];
|
|
/* 02397054 */ _t65 = cpu->r[6] + 0x00000004u;
|
|
/* 02397054 */ rbrew_write32(cpu->mem, _t65, cpu->r[5]);
|
|
/* 02397058 */ cpu->r[8] = cpu->r[8] + 0x00000008u;
|
|
/* 0239705C */ _t66 = cpu->r[6] + 0x00000002u;
|
|
/* 0239705C */ rbrew_write16(cpu->mem, _t66, (uint16_t)cpu->r[0]);
|
|
/* 02397060 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02397060 */ _t67 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02397060 */ _t68 = _t67 >> (0x00000002u & 31u);
|
|
/* 02397060 */ _t69 = _t68 & 0x00000001u;
|
|
/* 02397060 */ if (_t69) goto L_02397048; else goto L_02397064;
|
|
L_02397064: ; // 0x2397064
|
|
/* 02397064 */ _t70 = cpu->r[30] + 0x00000000u;
|
|
/* 02397064 */ cpu->r[25] = rbrew_read8(cpu->mem, _t70);
|
|
/* 02397068 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 0239706C */ _t71 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239706C */ _t72 = _t71 & 0x00000001u;
|
|
/* 0239706C */ if (_t72) goto L_02397148; else goto L_02397070;
|
|
L_02397070: ; // 0x2397070
|
|
/* 02397070 */ _t73 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 02397070 */ cpu->r[3] = rbrew_read32(cpu->mem, _t73);
|
|
/* 02397074 */ Gambit_fn_02826F20(cpu);
|
|
/* 02397078 */ _t74 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02397078 */ cpu->r[10] = rbrew_read32(cpu->mem, _t74);
|
|
/* 0239707C */ _t75 = cpu->r[10] + 0x00000034u;
|
|
/* 0239707C */ cpu->r[12] = rbrew_read32(cpu->mem, _t75);
|
|
/* 02397080 */ cpu->ctr = cpu->r[12];
|
|
/* 02397084 */ cpu->r[5] = 0x00000004u;
|
|
/* 02397088 */ cpu->r[4] = (uint32_t)((int32_t)cpu->r[25] * (int32_t)0x00000024u);
|
|
/* 0239708C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02397090 */ cpu->r[24] = cpu->r[3];
|
|
/* 02397094 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 02397098 */ cpu->r[30] = cpu->r[25];
|
|
/* 0239709C */ cpu->r[7] = 0x00000000u;
|
|
/* 023970A0 */ _t76 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 023970A0 */ _t77 = _t76 & 0x00000001u;
|
|
/* 023970A0 */ if (_t77) goto L_023970A8; else goto L_023970A4;
|
|
L_023970A4: ; // 0x23970a4
|
|
/* 023970A4 */ cpu->r[30] = 0x00000001u;
|
|
L_023970A8: ; // 0x23970a8
|
|
/* 023970A8 */ cpu->r[31] = 0x10110000u;
|
|
/* 023970AC */ cpu->r[22] = (uint32_t)((int32_t)cpu->r[7] * (int32_t)0x00000024u);
|
|
/* 023970B0 */ _t78 = cpu->r[31] + 0x00007399u;
|
|
/* 023970B0 */ cpu->r[31] = rbrew_read8(cpu->mem, _t78);
|
|
/* 023970B4 */ cpu->r[23] = 0x00000018u;
|
|
L_023970B8: ; // 0x23970b8
|
|
/* 023970B8 */ cpu->r[27] = cpu->r[24] + cpu->r[22];
|
|
/* 023970B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 023970BC */ _t79 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023970BC */ _t80 = _t79 & 0x00000001u;
|
|
/* 023970BC */ if (_t80) goto L_0239712C; else goto L_023970C0;
|
|
L_023970C0: ; // 0x23970c0
|
|
/* 023970C0 */ cpu->r[26] = cpu->r[27];
|
|
/* 023970C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 023970C4 */ _t81 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023970C4 */ _t82 = _t81 & 0x00000001u;
|
|
/* 023970C4 */ if (_t82) goto L_023970C8; else goto L_023970D8;
|
|
L_023970C8: ; // 0x23970c8
|
|
/* 023970C8 */ cpu->r[3] = 0x00000024u;
|
|
/* 023970CC */ Gambit_fn_02801A78(cpu);
|
|
/* 023970D0 */ cpu->r[26] = cpu->r[3];
|
|
/* 023970D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 023970D4 */ _t83 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023970D4 */ _t84 = _t83 & 0x00000001u;
|
|
/* 023970D4 */ if (_t84) goto L_02397120; else goto L_023970D8;
|
|
L_023970D8: ; // 0x23970d8
|
|
/* 023970D8 */ cpu->r[11] = cpu->r[26];
|
|
/* 023970D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 023970DC */ _t85 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023970DC */ _t86 = _t85 & 0x00000001u;
|
|
/* 023970DC */ if (_t86) goto L_023970E0; else goto L_023970F0;
|
|
L_023970E0: ; // 0x23970e0
|
|
/* 023970E0 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 023970E4 */ Gambit_fn_02801A78(cpu);
|
|
/* 023970E8 */ cpu->r[11] = cpu->r[3];
|
|
/* 023970E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 023970EC */ _t87 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023970EC */ _t88 = _t87 & 0x00000001u;
|
|
/* 023970EC */ if (_t88) goto L_0239710C; else goto L_023970F0;
|
|
L_023970F0: ; // 0x23970f0
|
|
/* 023970F0 */ cpu->r[5] = 0x10080000u;
|
|
/* 023970F4 */ _t89 = cpu->r[11] + 0x00000008u;
|
|
/* 023970F4 */ rbrew_write32(cpu->mem, _t89, cpu->r[23]);
|
|
/* 023970F8 */ cpu->r[0] = cpu->r[26] + 0x0000000Cu;
|
|
/* 023970FC */ cpu->r[5] = cpu->r[5] + 0x000067F0u;
|
|
/* 02397100 */ _t90 = cpu->r[11] + 0x00000000u;
|
|
/* 02397100 */ rbrew_write32(cpu->mem, _t90, cpu->r[0]);
|
|
/* 02397104 */ _t91 = cpu->r[11] + 0x00000004u;
|
|
/* 02397104 */ rbrew_write32(cpu->mem, _t91, cpu->r[5]);
|
|
/* 02397108 */ _t92 = cpu->r[26] + 0x00000023u;
|
|
/* 02397108 */ rbrew_write8(cpu->mem, _t92, (uint8_t)cpu->r[31]);
|
|
L_0239710C: ; // 0x239710c
|
|
/* 0239710C */ cpu->r[6] = 0x10080000u;
|
|
/* 02397110 */ _t93 = cpu->r[26] + 0x00000000u;
|
|
/* 02397110 */ cpu->r[7] = rbrew_read32(cpu->mem, _t93);
|
|
/* 02397114 */ cpu->r[6] = cpu->r[6] + 0x00006808u;
|
|
/* 02397118 */ _t94 = cpu->r[26] + 0x00000004u;
|
|
/* 02397118 */ rbrew_write32(cpu->mem, _t94, cpu->r[6]);
|
|
/* 0239711C */ _t95 = cpu->r[7] + 0x00000000u;
|
|
/* 0239711C */ rbrew_write8(cpu->mem, _t95, (uint8_t)cpu->r[31]);
|
|
L_02397120: ; // 0x2397120
|
|
/* 02397120 */ cpu->r[0] = 0x10080000u;
|
|
/* 02397124 */ cpu->r[0] = cpu->r[0] + 0x00006820u;
|
|
/* 02397128 */ _t96 = cpu->r[27] + 0x00000004u;
|
|
/* 02397128 */ rbrew_write32(cpu->mem, _t96, cpu->r[0]);
|
|
L_0239712C: ; // 0x239712c
|
|
/* 0239712C */ cpu->r[30] = cpu->r[30] + 0xFFFFFFFFu;
|
|
/* 0239712C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02397130 */ cpu->r[22] = cpu->r[22] + 0x00000024u;
|
|
/* 02397134 */ _t97 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397134 */ _t98 = _t97 & 0x00000001u;
|
|
/* 02397134 */ if (_t98) goto L_02397138; else goto L_023970B8;
|
|
L_02397138: ; // 0x2397138
|
|
/* 02397138 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 0239713C */ _t99 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239713C */ _t100 = _t99 & 0x00000001u;
|
|
/* 0239713C */ if (_t100) goto L_02397148; else goto L_02397140;
|
|
L_02397140: ; // 0x2397140
|
|
/* 02397140 */ _t101 = cpu->r[28] + 0x00000018u;
|
|
/* 02397140 */ rbrew_write32(cpu->mem, _t101, cpu->r[24]);
|
|
/* 02397144 */ _t102 = cpu->r[28] + 0x00000014u;
|
|
/* 02397144 */ rbrew_write32(cpu->mem, _t102, cpu->r[25]);
|
|
L_02397148: ; // 0x2397148
|
|
/* 02397148 */ _t103 = cpu->r[28] + 0x0000000Eu;
|
|
/* 02397148 */ rbrew_write8(cpu->mem, _t103, (uint8_t)cpu->r[29]);
|
|
/* 0239714C */ /* nop */
|
|
/* 02397150 */ _t104 = cpu->r[1] + 0x00000034u;
|
|
/* 02397150 */ cpu->r[0] = rbrew_read32(cpu->mem, _t104);
|
|
/* 02397154 */ cpu->lr = cpu->r[0];
|
|
/* 02397158 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 0239715C */ return;
|
|
}
|
|
|
|
// fn_02397160 @ 0x2397160
|
|
void Gambit_fn_02397160(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _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_02397160: ; // 0x2397160
|
|
/* 02397160 */ _t0 = cpu->r[7] + 0x00000000u;
|
|
/* 02397160 */ cpu->r[8] = rbrew_read8(cpu->mem, _t0);
|
|
/* 02397164 */ _t1 = cpu->r[3] + 0x00000020u;
|
|
/* 02397164 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02397168 */ _t2 = cpu->r[3] + 0x00000024u;
|
|
/* 02397168 */ cpu->r[11] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0239716C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[12]);
|
|
/* 02397170 */ _t3 = cpu->r[4] + 0x00000000u;
|
|
/* 02397170 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02397174 */ _t4 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02397174 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02397174 */ if (_t5) goto L_02397178; else goto L_02397180;
|
|
L_02397178: ; // 0x2397178
|
|
/* 02397178 */ cpu->r[10] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0239717C */ cpu->r[11] = cpu->r[11] + cpu->r[10];
|
|
L_02397180: ; // 0x2397180
|
|
/* 02397180 */ _t6 = cpu->r[11] + 0x00000000u;
|
|
/* 02397180 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02397184 */ _t7 = cpu->r[4] + 0x00000004u;
|
|
/* 02397184 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02397188 */ _t8 = cpu->r[11] + 0x00000004u;
|
|
/* 02397188 */ rbrew_write32(cpu->mem, _t8, cpu->r[8]);
|
|
/* 0239718C */ _t9 = cpu->r[7] + 0x00000000u;
|
|
/* 0239718C */ cpu->r[9] = rbrew_read8(cpu->mem, _t9);
|
|
/* 02397190 */ _t10 = cpu->r[3] + 0x00000028u;
|
|
/* 02397190 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02397194 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[12]);
|
|
/* 02397198 */ _t11 = cpu->r[3] + 0x0000002Cu;
|
|
/* 02397198 */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0239719C */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0239719C */ _t13 = _t12 & 0x00000001u;
|
|
/* 0239719C */ if (_t13) goto L_023971A0; else goto L_023971A8;
|
|
L_023971A0: ; // 0x23971a0
|
|
/* 023971A0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[9], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 023971A4 */ cpu->r[10] = cpu->r[10] + cpu->r[0];
|
|
L_023971A8: ; // 0x23971a8
|
|
/* 023971A8 */ _t14 = cpu->r[5] + 0x00000000u;
|
|
/* 023971A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 023971AC */ _t15 = cpu->r[10] + 0x00000000u;
|
|
/* 023971AC */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 023971B0 */ _t16 = cpu->r[5] + 0x00000004u;
|
|
/* 023971B0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t16);
|
|
/* 023971B4 */ _t17 = cpu->r[10] + 0x00000004u;
|
|
/* 023971B4 */ rbrew_write32(cpu->mem, _t17, cpu->r[8]);
|
|
/* 023971B8 */ _t18 = cpu->r[3] + 0x00000030u;
|
|
/* 023971B8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t18);
|
|
/* 023971BC */ _t19 = cpu->r[7] + 0x00000000u;
|
|
/* 023971BC */ cpu->r[11] = rbrew_read8(cpu->mem, _t19);
|
|
/* 023971C0 */ _t20 = cpu->r[3] + 0x00000034u;
|
|
/* 023971C0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t20);
|
|
/* 023971C4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[9]);
|
|
/* 023971C8 */ _t21 = cpu->r[6] + 0x00000000u;
|
|
/* 023971C8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t21);
|
|
/* 023971CC */ _t22 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 023971CC */ _t23 = _t22 & 0x00000001u;
|
|
/* 023971CC */ if (_t23) goto L_023971D0; else goto L_023971D8;
|
|
L_023971D0: ; // 0x23971d0
|
|
/* 023971D0 */ cpu->r[11] = rbrew_rlwinm(cpu->r[11], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 023971D4 */ cpu->r[12] = cpu->r[12] + cpu->r[11];
|
|
L_023971D8: ; // 0x23971d8
|
|
/* 023971D8 */ _t24 = cpu->r[12] + 0x00000000u;
|
|
/* 023971D8 */ rbrew_write32(cpu->mem, _t24, cpu->r[7]);
|
|
/* 023971DC */ _t25 = cpu->r[6] + 0x00000004u;
|
|
/* 023971DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 023971E0 */ _t26 = cpu->r[12] + 0x00000004u;
|
|
/* 023971E0 */ rbrew_write32(cpu->mem, _t26, cpu->r[0]);
|
|
/* 023971E4 */ return;
|
|
}
|
|
|
|
// fn_023971E8 @ 0x23971e8
|
|
void Gambit_fn_023971E8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_023971E8: ; // 0x23971e8
|
|
/* 023971E8 */ cpu->r[0] = cpu->lr;
|
|
/* 023971EC */ cpu->r[12] = 0x101D0000u;
|
|
/* 023971F0 */ cpu->r[7] = 0x02390000u;
|
|
/* 023971F4 */ cpu->r[6] = 0x02390000u;
|
|
/* 023971F8 */ cpu->r[10] = 0x101C0000u;
|
|
/* 023971FC */ cpu->r[7] = cpu->r[7] + 0x00006CE0u;
|
|
/* 02397200 */ cpu->r[6] = cpu->r[6] + 0x00006CE0u;
|
|
/* 02397204 */ cpu->r[10] = cpu->r[10] + 0x00005B8Cu;
|
|
/* 02397208 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 02397208 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 0239720C */ cpu->r[0] = 0x101C0000u;
|
|
/* 02397210 */ _t1 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02397210 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 02397210 */ cpu->r[1] = _t1;
|
|
/* 02397214 */ cpu->r[0] = cpu->r[0] + 0x00005B88u;
|
|
/* 02397218 */ _t2 = cpu->r[12] + 0xFFFF9034u;
|
|
/* 02397218 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0239721C */ cpu->r[8] = 0x00000000u;
|
|
/* 02397220 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 02397220 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02397224 */ cpu->r[9] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02397228 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02397228 */ rbrew_write32(cpu->mem, _t4, cpu->r[12]);
|
|
/* 0239722C */ Gambit_fn_02791B10(cpu);
|
|
/* 02397230 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 02397230 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02397234 */ cpu->lr = cpu->r[0];
|
|
/* 02397238 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0239723C */ return;
|
|
}
|
|
|
|
// fn_02397210 @ 0x2397210
|
|
void Gambit_fn_02397210(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_02397210: ; // 0x2397210
|
|
/* 02397210 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02397210 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02397210 */ cpu->r[1] = _t0;
|
|
/* 02397214 */ cpu->r[0] = cpu->r[0] + 0x00005B88u;
|
|
/* 02397218 */ _t1 = cpu->r[12] + 0xFFFF9034u;
|
|
/* 02397218 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0239721C */ cpu->r[8] = 0x00000000u;
|
|
/* 02397220 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02397220 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02397224 */ cpu->r[9] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02397228 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02397228 */ rbrew_write32(cpu->mem, _t3, cpu->r[12]);
|
|
/* 0239722C */ Gambit_fn_02791B10(cpu);
|
|
/* 02397230 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 02397230 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02397234 */ cpu->lr = cpu->r[0];
|
|
/* 02397238 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0239723C */ return;
|
|
}
|
|
|
|
// fn_02397240 @ 0x2397240
|
|
void Gambit_fn_02397240(CPUState* 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_02397240: ; // 0x2397240
|
|
/* 02397240 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02397240 */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 02397244 */ /* nop */
|
|
/* 02397248 */ _t1 = cpu->r[3] + 0x00000030u;
|
|
/* 02397248 */ cpu->r[8] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0239724C */ cpu->r[7] = cpu->r[0];
|
|
/* 02397250 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[8]);
|
|
/* 02397254 */ _t2 = cpu->r[3] + 0x00000034u;
|
|
/* 02397254 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02397258 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02397258 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02397258 */ if (_t4) goto L_0239725C; else goto L_02397274;
|
|
L_0239725C: ; // 0x239725c
|
|
/* 0239725C */ cpu->r[10] = rbrew_rlwinm(cpu->r[7], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02397260 */ cpu->r[9] = cpu->r[12] + cpu->r[10];
|
|
/* 02397264 */ _t5 = cpu->r[9] + 0x00000002u;
|
|
/* 02397264 */ cpu->r[11] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 02397268 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0239726C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239726C */ _t7 = _t6 & 0x00000001u;
|
|
/* 0239726C */ if (_t7) goto L_02397270; else goto L_02397280;
|
|
L_02397270: ; // 0x2397270
|
|
/* 02397270 */ return;
|
|
L_02397274: ; // 0x2397274
|
|
/* 02397274 */ _t8 = cpu->r[12] + 0x00000002u;
|
|
/* 02397274 */ cpu->r[11] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 02397278 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0239727C */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239727C */ _t10 = _t9 & 0x00000001u;
|
|
/* 0239727C */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0239727C */ goto L_02397280;
|
|
L_02397280: ; // 0x2397280
|
|
/* 02397280 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[8]);
|
|
/* 02397284 */ _t11 = cpu->r[3] + 0x0000001Cu;
|
|
/* 02397284 */ cpu->r[8] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02397288 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02397288 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02397288 */ if (_t13) goto L_0239728C; else goto L_02397294;
|
|
L_0239728C: ; // 0x239728c
|
|
/* 0239728C */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02397290 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_02397294: ; // 0x2397294
|
|
/* 02397294 */ _t14 = cpu->r[12] + 0x00000002u;
|
|
/* 02397294 */ cpu->r[7] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 02397298 */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 02397298 */ cpu->r[9] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 0239729C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 023972A0 */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 023972A0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 023972A4 */ cpu->r[3] = cpu->r[8] + cpu->r[9];
|
|
/* 023972A8 */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 023972A8 */ _t18 = _t17 & 0x00000001u;
|
|
/* 023972A8 */ if (_t18) goto L_023972C0; else goto L_023972AC;
|
|
L_023972AC: ; // 0x23972ac
|
|
/* 023972AC */ /* nop */
|
|
/* 023972B0 */ _t19 = cpu->r[3] + cpu->r[11];
|
|
/* 023972B0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 023972B4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[7], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 023972B8 */ cpu->r[12] = cpu->r[11] + cpu->r[0];
|
|
/* 023972BC */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 023972BC */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
L_023972C0: ; // 0x23972c0
|
|
/* 023972C0 */ cpu->ctr = cpu->r[11];
|
|
/* 023972C4 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_023972C8 @ 0x23972c8
|
|
void Gambit_fn_023972C8(CPUState* 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_023972C8: ; // 0x23972c8
|
|
/* 023972C8 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 023972C8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 023972CC */ /* nop */
|
|
/* 023972D0 */ _t1 = cpu->r[3] + 0x00000020u;
|
|
/* 023972D0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t1);
|
|
/* 023972D4 */ cpu->r[8] = cpu->r[0];
|
|
/* 023972D8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[7]);
|
|
/* 023972DC */ _t2 = cpu->r[3] + 0x00000024u;
|
|
/* 023972DC */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 023972E0 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 023972E0 */ _t4 = _t3 & 0x00000001u;
|
|
/* 023972E0 */ if (_t4) goto L_023972E4; else goto L_023972FC;
|
|
L_023972E4: ; // 0x23972e4
|
|
/* 023972E4 */ cpu->r[9] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 023972E8 */ cpu->r[9] = cpu->r[12] + cpu->r[9];
|
|
/* 023972EC */ _t5 = cpu->r[9] + 0x00000002u;
|
|
/* 023972EC */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 023972F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 023972F4 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023972F4 */ _t7 = _t6 & 0x00000001u;
|
|
/* 023972F4 */ if (_t7) goto L_023972F8; else goto L_02397308;
|
|
L_023972F8: ; // 0x23972f8
|
|
/* 023972F8 */ return;
|
|
L_023972FC: ; // 0x23972fc
|
|
/* 023972FC */ _t8 = cpu->r[12] + 0x00000002u;
|
|
/* 023972FC */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 02397300 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02397304 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397304 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02397304 */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02397304 */ goto L_02397308;
|
|
L_02397308: ; // 0x2397308
|
|
/* 02397308 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]);
|
|
/* 0239730C */ _t11 = cpu->r[3] + 0x0000001Cu;
|
|
/* 0239730C */ cpu->r[7] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02397310 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02397310 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02397310 */ if (_t13) goto L_02397314; else goto L_0239731C;
|
|
L_02397314: ; // 0x2397314
|
|
/* 02397314 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02397318 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_0239731C: ; // 0x239731c
|
|
/* 0239731C */ _t14 = cpu->r[12] + 0x00000002u;
|
|
/* 0239731C */ cpu->r[0] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 02397320 */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 02397320 */ cpu->r[8] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 02397324 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02397328 */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 02397328 */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0239732C */ cpu->r[3] = cpu->r[7] + cpu->r[8];
|
|
/* 02397330 */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02397330 */ _t18 = _t17 & 0x00000001u;
|
|
/* 02397330 */ if (_t18) goto L_02397348; else goto L_02397334;
|
|
L_02397334: ; // 0x2397334
|
|
/* 02397334 */ /* nop */
|
|
/* 02397338 */ _t19 = cpu->r[3] + cpu->r[11];
|
|
/* 02397338 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0239733C */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02397340 */ cpu->r[12] = cpu->r[11] + cpu->r[10];
|
|
/* 02397344 */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 02397344 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
L_02397348: ; // 0x2397348
|
|
/* 02397348 */ cpu->ctr = cpu->r[11];
|
|
/* 0239734C */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02397350 @ 0x2397350
|
|
void Gambit_fn_02397350(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_02397350: ; // 0x2397350
|
|
/* 02397350 */ cpu->r[0] = cpu->lr;
|
|
/* 02397354 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02397354 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02397354 */ cpu->r[1] = _t0;
|
|
/* 02397358 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02397358 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0239735C */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239735C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02397360 */ cpu->r[30] = cpu->r[3];
|
|
/* 02397364 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02397364 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02397368 */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02397368 */ cpu->r[12] = rbrew_read8(cpu->mem, _t4);
|
|
/* 0239736C */ /* nop */
|
|
/* 02397370 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0xFFFFFFFFu);
|
|
/* 02397374 */ cpu->r[31] = cpu->r[4];
|
|
/* 02397378 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397378 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02397378 */ if (_t6) goto L_0239737C; else goto L_02397390;
|
|
L_0239737C: ; // 0x239737c
|
|
/* 0239737C */ _t7 = cpu->r[30] + 0x00000004u;
|
|
/* 0239737C */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02397380 */ _t8 = cpu->r[11] + 0x00000014u;
|
|
/* 02397380 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02397384 */ cpu->ctr = cpu->r[0];
|
|
/* 02397388 */ cpu->r[3] = cpu->r[30];
|
|
/* 0239738C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02397390: ; // 0x2397390
|
|
/* 02397390 */ cpu->r[3] = cpu->r[30];
|
|
/* 02397394 */ cpu->r[4] = cpu->r[31];
|
|
/* 02397398 */ Gambit_fn_02397240(cpu);
|
|
/* 0239739C */ cpu->r[3] = cpu->r[30];
|
|
/* 023973A0 */ /* nop */
|
|
/* 023973A4 */ Gambit_fn_027FC35C(cpu);
|
|
/* 023973A8 */ cpu->r[3] = cpu->r[30];
|
|
/* 023973AC */ Gambit_fn_023972C8(cpu);
|
|
/* 023973B0 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 023973B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 023973B4 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 023973B4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 023973B8 */ cpu->lr = cpu->r[0];
|
|
/* 023973BC */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023973BC */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 023973C0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 023973C4 */ return;
|
|
}
|
|
|
|
// fn_02397354 @ 0x2397354
|
|
void Gambit_fn_02397354(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_02397354: ; // 0x2397354
|
|
/* 02397354 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02397354 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02397354 */ cpu->r[1] = _t0;
|
|
/* 02397358 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02397358 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0239735C */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239735C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02397360 */ cpu->r[30] = cpu->r[3];
|
|
/* 02397364 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02397364 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02397368 */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02397368 */ cpu->r[12] = rbrew_read8(cpu->mem, _t4);
|
|
/* 0239736C */ /* nop */
|
|
/* 02397370 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0xFFFFFFFFu);
|
|
/* 02397374 */ cpu->r[31] = cpu->r[4];
|
|
/* 02397378 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397378 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02397378 */ if (_t6) goto L_0239737C; else goto L_02397390;
|
|
L_0239737C: ; // 0x239737c
|
|
/* 0239737C */ _t7 = cpu->r[30] + 0x00000004u;
|
|
/* 0239737C */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02397380 */ _t8 = cpu->r[11] + 0x00000014u;
|
|
/* 02397380 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02397384 */ cpu->ctr = cpu->r[0];
|
|
/* 02397388 */ cpu->r[3] = cpu->r[30];
|
|
/* 0239738C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02397390: ; // 0x2397390
|
|
/* 02397390 */ cpu->r[3] = cpu->r[30];
|
|
/* 02397394 */ cpu->r[4] = cpu->r[31];
|
|
/* 02397398 */ Gambit_fn_02397240(cpu);
|
|
/* 0239739C */ cpu->r[3] = cpu->r[30];
|
|
/* 023973A0 */ /* nop */
|
|
/* 023973A4 */ Gambit_fn_027FC35C(cpu);
|
|
/* 023973A8 */ cpu->r[3] = cpu->r[30];
|
|
/* 023973AC */ Gambit_fn_023972C8(cpu);
|
|
/* 023973B0 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 023973B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 023973B4 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 023973B4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 023973B8 */ cpu->lr = cpu->r[0];
|
|
/* 023973BC */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023973BC */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 023973C0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 023973C4 */ return;
|
|
}
|
|
|
|
// fn_023973C8 @ 0x23973c8
|
|
void Gambit_fn_023973C8(CPUState* 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_023973C8: ; // 0x23973c8
|
|
/* 023973C8 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 023973C8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 023973CC */ /* nop */
|
|
/* 023973D0 */ _t1 = cpu->r[3] + 0x00000028u;
|
|
/* 023973D0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t1);
|
|
/* 023973D4 */ cpu->r[8] = cpu->r[0];
|
|
/* 023973D8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[7]);
|
|
/* 023973DC */ _t2 = cpu->r[3] + 0x0000002Cu;
|
|
/* 023973DC */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 023973E0 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 023973E0 */ _t4 = _t3 & 0x00000001u;
|
|
/* 023973E0 */ if (_t4) goto L_023973E4; else goto L_023973FC;
|
|
L_023973E4: ; // 0x23973e4
|
|
/* 023973E4 */ cpu->r[9] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 023973E8 */ cpu->r[9] = cpu->r[12] + cpu->r[9];
|
|
/* 023973EC */ _t5 = cpu->r[9] + 0x00000002u;
|
|
/* 023973EC */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 023973F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 023973F4 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023973F4 */ _t7 = _t6 & 0x00000001u;
|
|
/* 023973F4 */ if (_t7) goto L_023973F8; else goto L_02397408;
|
|
L_023973F8: ; // 0x23973f8
|
|
/* 023973F8 */ return;
|
|
L_023973FC: ; // 0x23973fc
|
|
/* 023973FC */ _t8 = cpu->r[12] + 0x00000002u;
|
|
/* 023973FC */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 02397400 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02397404 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397404 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02397404 */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02397404 */ goto L_02397408;
|
|
L_02397408: ; // 0x2397408
|
|
/* 02397408 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]);
|
|
/* 0239740C */ _t11 = cpu->r[3] + 0x0000001Cu;
|
|
/* 0239740C */ cpu->r[7] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02397410 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02397410 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02397410 */ if (_t13) goto L_02397414; else goto L_0239741C;
|
|
L_02397414: ; // 0x2397414
|
|
/* 02397414 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02397418 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_0239741C: ; // 0x239741c
|
|
/* 0239741C */ _t14 = cpu->r[12] + 0x00000002u;
|
|
/* 0239741C */ cpu->r[0] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 02397420 */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 02397420 */ cpu->r[8] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 02397424 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02397428 */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 02397428 */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0239742C */ cpu->r[3] = cpu->r[7] + cpu->r[8];
|
|
/* 02397430 */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02397430 */ _t18 = _t17 & 0x00000001u;
|
|
/* 02397430 */ if (_t18) goto L_02397448; else goto L_02397434;
|
|
L_02397434: ; // 0x2397434
|
|
/* 02397434 */ /* nop */
|
|
/* 02397438 */ _t19 = cpu->r[3] + cpu->r[11];
|
|
/* 02397438 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0239743C */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02397440 */ cpu->r[12] = cpu->r[11] + cpu->r[10];
|
|
/* 02397444 */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 02397444 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
L_02397448: ; // 0x2397448
|
|
/* 02397448 */ cpu->ctr = cpu->r[11];
|
|
/* 0239744C */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02397450 @ 0x2397450
|
|
void Gambit_fn_02397450(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_02397450: ; // 0x2397450
|
|
/* 02397450 */ cpu->r[0] = cpu->lr;
|
|
/* 02397454 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02397454 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02397454 */ cpu->r[1] = _t0;
|
|
/* 02397458 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02397458 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0239745C */ cpu->r[31] = cpu->r[3];
|
|
/* 02397460 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02397460 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02397464 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 02397464 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02397468 */ cpu->r[12] = 0x00000000u;
|
|
/* 0239746C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02397470 */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 02397470 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 02397474 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397474 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02397474 */ if (_t6) goto L_0239749C; else goto L_02397478;
|
|
L_02397478: ; // 0x2397478
|
|
/* 02397478 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02397478 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 0239747C */ /* nop */
|
|
/* 02397480 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 02397484 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397484 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02397484 */ if (_t9) goto L_02397488; else goto L_0239749C;
|
|
L_02397488: ; // 0x2397488
|
|
/* 02397488 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 02397488 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0239748C */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 0239748C */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02397490 */ cpu->ctr = cpu->r[0];
|
|
/* 02397494 */ cpu->r[3] = cpu->r[31];
|
|
/* 02397498 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0239749C: ; // 0x239749c
|
|
/* 0239749C */ cpu->r[3] = cpu->r[31];
|
|
/* 023974A0 */ Gambit_fn_023973C8(cpu);
|
|
/* 023974A4 */ cpu->r[3] = cpu->r[31];
|
|
/* 023974A8 */ Gambit_fn_027FC37C(cpu);
|
|
/* 023974AC */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 023974AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 023974B0 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023974B0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 023974B4 */ cpu->lr = cpu->r[0];
|
|
/* 023974B8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 023974BC */ return;
|
|
}
|
|
|
|
// fn_02397454 @ 0x2397454
|
|
void Gambit_fn_02397454(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_02397454: ; // 0x2397454
|
|
/* 02397454 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02397454 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02397454 */ cpu->r[1] = _t0;
|
|
/* 02397458 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02397458 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0239745C */ cpu->r[31] = cpu->r[3];
|
|
/* 02397460 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02397460 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02397464 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 02397464 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02397468 */ cpu->r[12] = 0x00000000u;
|
|
/* 0239746C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02397470 */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 02397470 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 02397474 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397474 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02397474 */ if (_t6) goto L_0239749C; else goto L_02397478;
|
|
L_02397478: ; // 0x2397478
|
|
/* 02397478 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02397478 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 0239747C */ /* nop */
|
|
/* 02397480 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 02397484 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397484 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02397484 */ if (_t9) goto L_02397488; else goto L_0239749C;
|
|
L_02397488: ; // 0x2397488
|
|
/* 02397488 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 02397488 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0239748C */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 0239748C */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02397490 */ cpu->ctr = cpu->r[0];
|
|
/* 02397494 */ cpu->r[3] = cpu->r[31];
|
|
/* 02397498 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0239749C: ; // 0x239749c
|
|
/* 0239749C */ cpu->r[3] = cpu->r[31];
|
|
/* 023974A0 */ Gambit_fn_023973C8(cpu);
|
|
/* 023974A4 */ cpu->r[3] = cpu->r[31];
|
|
/* 023974A8 */ Gambit_fn_027FC37C(cpu);
|
|
/* 023974AC */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 023974AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 023974B0 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023974B0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 023974B4 */ cpu->lr = cpu->r[0];
|
|
/* 023974B8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 023974BC */ return;
|
|
}
|
|
|
|
// fn_023974C0 @ 0x23974c0
|
|
void Gambit_fn_023974C0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_023974C0: ; // 0x23974c0
|
|
/* 023974C0 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 023974C0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 023974C0 */ cpu->r[1] = _t0;
|
|
/* 023974C4 */ cpu->r[0] = cpu->lr;
|
|
/* 023974C8 */ /* nop */
|
|
/* 023974CC */ cpu->r[26] = cpu->r[3];
|
|
/* 023974D0 */ cpu->r[27] = cpu->r[7];
|
|
/* 023974D4 */ cpu->r[28] = cpu->r[4];
|
|
/* 023974D8 */ cpu->r[31] = cpu->r[6];
|
|
/* 023974DC */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 023974DC */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 023974E0 */ cpu->r[29] = cpu->r[5];
|
|
/* 023974E4 */ cpu->r[4] = cpu->r[27];
|
|
/* 023974E8 */ cpu->r[3] = cpu->r[29];
|
|
/* 023974EC */ Gambit_fn_027DB318(cpu);
|
|
/* 023974F0 */ cpu->r[30] = cpu->r[3] + cpu->r[31];
|
|
/* 023974F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 023974F4 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023974F4 */ _t3 = _t2 & 0x00000001u;
|
|
/* 023974F4 */ if (_t3) goto L_02397548; else goto L_023974F8;
|
|
L_023974F8: ; // 0x23974f8
|
|
/* 023974F8 */ cpu->r[5] = cpu->r[30];
|
|
/* 023974FC */ cpu->r[4] = cpu->r[28];
|
|
/* 02397500 */ cpu->r[3] = cpu->r[26];
|
|
/* 02397504 */ Gambit_fn_023971E8(cpu);
|
|
/* 02397508 */ _t4 = cpu->r[29] + 0x0000000Cu;
|
|
/* 02397508 */ cpu->r[28] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0239750C */ _t5 = cpu->r[29] + 0x00000004u;
|
|
/* 0239750C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02397510 */ cpu->r[29] = cpu->r[29] - cpu->r[28];
|
|
/* 02397514 */ cpu->r[31] = cpu->r[0] - cpu->r[28];
|
|
/* 02397518 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[29]);
|
|
/* 0239751C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239751C */ _t7 = _t6 & 0x00000001u;
|
|
/* 0239751C */ if (_t7) goto L_02397548; else goto L_02397520;
|
|
L_02397520: ; // 0x2397520
|
|
/* 02397520 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02397524 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397524 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02397524 */ if (_t9) goto L_02397534; else goto L_02397528;
|
|
L_02397528: ; // 0x2397528
|
|
/* 02397528 */ cpu->ctr = cpu->r[27];
|
|
/* 0239752C */ cpu->r[3] = cpu->r[31];
|
|
/* 02397530 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02397534: ; // 0x2397534
|
|
/* 02397534 */ cpu->r[12] = cpu->r[31] + cpu->r[28];
|
|
/* 02397538 */ _t10 = cpu->r[12] + 0x00000004u;
|
|
/* 02397538 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0239753C */ cpu->r[31] = cpu->r[0] - cpu->r[28];
|
|
/* 02397540 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[29]);
|
|
/* 02397544 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397544 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02397544 */ if (_t12) goto L_02397548; else goto L_02397520;
|
|
L_02397548: ; // 0x2397548
|
|
/* 02397548 */ cpu->r[3] = cpu->r[30];
|
|
/* 0239754C */ /* nop */
|
|
/* 02397550 */ _t13 = cpu->r[1] + 0x00000024u;
|
|
/* 02397550 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02397554 */ cpu->lr = cpu->r[0];
|
|
/* 02397558 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 0239755C */ return;
|
|
}
|
|
|
|
// fn_02397560 @ 0x2397560
|
|
void Gambit_fn_02397560(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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;
|
|
|
|
L_02397560: ; // 0x2397560
|
|
/* 02397560 */ cpu->r[0] = cpu->lr;
|
|
/* 02397564 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 02397564 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02397564 */ cpu->r[1] = _t0;
|
|
/* 02397568 */ _t1 = cpu->r[1] + 0x00000044u;
|
|
/* 02397568 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0239756C */ /* nop */
|
|
/* 02397570 */ cpu->r[31] = cpu->r[3];
|
|
/* 02397570 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02397574 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397574 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02397574 */ if (_t3) goto L_02397578; else goto L_02397588;
|
|
L_02397578: ; // 0x2397578
|
|
/* 02397578 */ cpu->r[3] = 0x000001FCu;
|
|
/* 0239757C */ Gambit_fn_02801A78(cpu);
|
|
/* 02397580 */ cpu->r[31] = cpu->r[3];
|
|
/* 02397580 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02397584 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397584 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02397584 */ if (_t5) goto L_02397988; else goto L_02397588;
|
|
L_02397588: ; // 0x2397588
|
|
/* 02397588 */ cpu->r[28] = 0x10080000u;
|
|
/* 0239758C */ cpu->r[25] = cpu->r[31];
|
|
/* 0239758C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 02397590 */ cpu->r[27] = 0x10110000u;
|
|
/* 02397594 */ cpu->r[28] = cpu->r[28] + 0x00006B18u;
|
|
/* 02397598 */ cpu->r[26] = 0x00000000u;
|
|
/* 0239759C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239759C */ _t7 = _t6 & 0x00000001u;
|
|
/* 0239759C */ if (_t7) goto L_023975A0; else goto L_023975B0;
|
|
L_023975A0: ; // 0x23975a0
|
|
/* 023975A0 */ cpu->r[3] = 0x000000FCu;
|
|
/* 023975A4 */ Gambit_fn_02801A78(cpu);
|
|
/* 023975A8 */ cpu->r[25] = cpu->r[3];
|
|
/* 023975A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 023975AC */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023975AC */ _t9 = _t8 & 0x00000001u;
|
|
/* 023975AC */ if (_t9) goto L_0239781C; else goto L_023975B0;
|
|
L_023975B0: ; // 0x23975b0
|
|
/* 023975B0 */ cpu->r[5] = 0x10080000u;
|
|
/* 023975B4 */ cpu->r[4] = 0x00000000u;
|
|
/* 023975B8 */ cpu->r[24] = 0x10080000u;
|
|
/* 023975BC */ cpu->r[5] = cpu->r[5] + 0x00006CA0u;
|
|
/* 023975C0 */ cpu->r[3] = cpu->r[25];
|
|
/* 023975C4 */ cpu->r[24] = cpu->r[24] + 0x00006CA4u;
|
|
/* 023975C8 */ cpu->r[7] = cpu->r[5];
|
|
/* 023975CC */ cpu->r[8] = cpu->r[4];
|
|
/* 023975D0 */ cpu->r[6] = cpu->r[24];
|
|
/* 023975D4 */ Gambit_fn_027F84F0(cpu);
|
|
/* 023975D8 */ cpu->r[21] = cpu->r[25] + 0x00000054u;
|
|
/* 023975DC */ cpu->r[23] = 0x10080000u;
|
|
/* 023975E0 */ cpu->r[0] = 0x10110000u;
|
|
/* 023975E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], 0x00000000u);
|
|
/* 023975E8 */ cpu->r[30] = 0x10080000u;
|
|
/* 023975EC */ cpu->r[0] = cpu->r[0] + 0x0000085Cu;
|
|
/* 023975F0 */ cpu->r[23] = cpu->r[23] + 0x00006B90u;
|
|
/* 023975F4 */ cpu->r[30] = cpu->r[30] + 0x00006B00u;
|
|
/* 023975F8 */ _t10 = cpu->r[25] + 0x00000000u;
|
|
/* 023975F8 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 023975FC */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023975FC */ _t12 = _t11 & 0x00000001u;
|
|
/* 023975FC */ if (_t12) goto L_02397600; else goto L_02397620;
|
|
L_02397600: ; // 0x2397600
|
|
/* 02397600 */ cpu->r[3] = 0x0000004Cu;
|
|
/* 02397604 */ Gambit_fn_02801A78(cpu);
|
|
/* 02397608 */ cpu->r[21] = cpu->r[3];
|
|
/* 02397608 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], 0x00000000u);
|
|
/* 0239760C */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239760C */ _t14 = _t13 & 0x00000001u;
|
|
/* 0239760C */ if (_t14) goto L_02397610; else goto L_02397620;
|
|
L_02397610: ; // 0x2397610
|
|
/* 02397610 */ cpu->r[3] = cpu->r[25] + 0x000000A0u;
|
|
/* 02397610 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02397614 */ _t15 = cpu->r[27] + 0x00007399u;
|
|
/* 02397614 */ cpu->r[29] = rbrew_read8(cpu->mem, _t15);
|
|
/* 02397618 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397618 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02397618 */ if (_t17) goto L_023976B4; else goto L_0239761C;
|
|
L_0239761C: ; // 0x239761c
|
|
/* 0239761C */ goto L_023976C4;
|
|
L_02397620: ; // 0x2397620
|
|
/* 02397620 */ cpu->r[22] = cpu->r[21];
|
|
/* 02397620 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[22], 0x00000000u);
|
|
/* 02397624 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397624 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02397624 */ if (_t19) goto L_02397628; else goto L_0239764C;
|
|
L_02397628: ; // 0x2397628
|
|
/* 02397628 */ cpu->r[3] = 0x0000004Cu;
|
|
/* 0239762C */ Gambit_fn_02801A78(cpu);
|
|
/* 02397630 */ cpu->r[22] = cpu->r[3];
|
|
/* 02397630 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[22], 0x00000000u);
|
|
/* 02397634 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397634 */ _t21 = _t20 & 0x00000001u;
|
|
/* 02397634 */ if (_t21) goto L_02397638; else goto L_0239764C;
|
|
L_02397638: ; // 0x2397638
|
|
/* 02397638 */ cpu->r[0] = 0x10080000u;
|
|
/* 0239763C */ _t22 = cpu->r[27] + 0x00007399u;
|
|
/* 0239763C */ cpu->r[29] = rbrew_read8(cpu->mem, _t22);
|
|
/* 02397640 */ cpu->r[0] = cpu->r[0] + 0x00006BA8u;
|
|
/* 02397644 */ _t23 = cpu->r[21] + 0x00000004u;
|
|
/* 02397644 */ rbrew_write32(cpu->mem, _t23, cpu->r[0]);
|
|
/* 02397648 */ goto L_023976AC;
|
|
L_0239764C: ; // 0x239764c
|
|
/* 0239764C */ cpu->r[3] = cpu->r[22];
|
|
/* 0239764C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02397650 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397650 */ _t25 = _t24 & 0x00000001u;
|
|
/* 02397650 */ if (_t25) goto L_02397654; else goto L_02397678;
|
|
L_02397654: ; // 0x2397654
|
|
/* 02397654 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02397658 */ Gambit_fn_02801A78(cpu);
|
|
/* 0239765C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02397660 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397660 */ _t27 = _t26 & 0x00000001u;
|
|
/* 02397660 */ if (_t27) goto L_02397664; else goto L_02397678;
|
|
L_02397664: ; // 0x2397664
|
|
/* 02397664 */ _t28 = cpu->r[27] + 0x00007399u;
|
|
/* 02397664 */ cpu->r[29] = rbrew_read8(cpu->mem, _t28);
|
|
/* 02397668 */ _t29 = cpu->r[22] + 0x00000000u;
|
|
/* 02397668 */ cpu->r[7] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0239766C */ _t30 = cpu->r[22] + 0x00000004u;
|
|
/* 0239766C */ rbrew_write32(cpu->mem, _t30, cpu->r[23]);
|
|
/* 02397670 */ _t31 = cpu->r[7] + 0x00000000u;
|
|
/* 02397670 */ rbrew_write8(cpu->mem, _t31, (uint8_t)cpu->r[29]);
|
|
/* 02397674 */ goto L_023976A0;
|
|
L_02397678: ; // 0x2397678
|
|
/* 02397678 */ cpu->r[5] = cpu->r[22] + 0x0000000Cu;
|
|
/* 0239767C */ _t32 = cpu->r[3] + 0x00000004u;
|
|
/* 0239767C */ rbrew_write32(cpu->mem, _t32, cpu->r[28]);
|
|
/* 02397680 */ cpu->r[0] = 0x00000040u;
|
|
/* 02397684 */ _t33 = cpu->r[3] + 0x00000000u;
|
|
/* 02397684 */ rbrew_write32(cpu->mem, _t33, cpu->r[5]);
|
|
/* 02397688 */ _t34 = cpu->r[3] + 0x00000008u;
|
|
/* 02397688 */ rbrew_write32(cpu->mem, _t34, cpu->r[0]);
|
|
/* 0239768C */ _t35 = cpu->r[27] + 0x00007399u;
|
|
/* 0239768C */ cpu->r[29] = rbrew_read8(cpu->mem, _t35);
|
|
/* 02397690 */ _t36 = cpu->r[22] + 0x0000004Bu;
|
|
/* 02397690 */ rbrew_write8(cpu->mem, _t36, (uint8_t)cpu->r[29]);
|
|
/* 02397694 */ _t37 = cpu->r[22] + 0x00000000u;
|
|
/* 02397694 */ cpu->r[7] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02397698 */ _t38 = cpu->r[22] + 0x00000004u;
|
|
/* 02397698 */ rbrew_write32(cpu->mem, _t38, cpu->r[23]);
|
|
/* 0239769C */ _t39 = cpu->r[7] + 0x00000000u;
|
|
/* 0239769C */ rbrew_write8(cpu->mem, _t39, (uint8_t)cpu->r[29]);
|
|
L_023976A0: ; // 0x23976a0
|
|
/* 023976A0 */ cpu->r[0] = 0x10080000u;
|
|
/* 023976A4 */ cpu->r[0] = cpu->r[0] + 0x00006BA8u;
|
|
/* 023976A8 */ _t40 = cpu->r[21] + 0x00000004u;
|
|
/* 023976A8 */ rbrew_write32(cpu->mem, _t40, cpu->r[0]);
|
|
L_023976AC: ; // 0x23976ac
|
|
/* 023976AC */ cpu->r[3] = cpu->r[25] + 0x000000A0u;
|
|
/* 023976AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023976B0 */ _t41 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023976B0 */ _t42 = _t41 & 0x00000001u;
|
|
/* 023976B0 */ if (_t42) goto L_023976B4; else goto L_023976C4;
|
|
L_023976B4: ; // 0x23976b4
|
|
/* 023976B4 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 023976B8 */ Gambit_fn_02801A78(cpu);
|
|
/* 023976BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023976C0 */ _t43 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023976C0 */ _t44 = _t43 & 0x00000001u;
|
|
/* 023976C0 */ if (_t44) goto L_023976E8; else goto L_023976C4;
|
|
L_023976C4: ; // 0x23976c4
|
|
/* 023976C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023976C8 */ _t45 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023976C8 */ _t46 = _t45 & 0x00000001u;
|
|
/* 023976C8 */ if (_t46) goto L_023976CC; else goto L_023976DC;
|
|
L_023976CC: ; // 0x23976cc
|
|
/* 023976CC */ cpu->r[3] = 0x0000000Cu;
|
|
/* 023976D0 */ Gambit_fn_02801A78(cpu);
|
|
/* 023976D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023976D8 */ _t47 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023976D8 */ _t48 = _t47 & 0x00000001u;
|
|
/* 023976D8 */ if (_t48) goto L_023976E8; else goto L_023976DC;
|
|
L_023976DC: ; // 0x23976dc
|
|
/* 023976DC */ _t49 = cpu->r[3] + 0x00000004u;
|
|
/* 023976DC */ rbrew_write32(cpu->mem, _t49, cpu->r[3]);
|
|
/* 023976E0 */ _t50 = cpu->r[3] + 0x00000008u;
|
|
/* 023976E0 */ rbrew_write32(cpu->mem, _t50, cpu->r[26]);
|
|
/* 023976E4 */ _t51 = cpu->r[3] + 0x00000000u;
|
|
/* 023976E4 */ rbrew_write32(cpu->mem, _t51, cpu->r[3]);
|
|
L_023976E8: ; // 0x23976e8
|
|
/* 023976E8 */ cpu->r[9] = 0x10080000u;
|
|
/* 023976EC */ cpu->r[9] = cpu->r[9] + 0x00006AE8u;
|
|
/* 023976F0 */ cpu->r[21] = cpu->r[25] + 0x000000B0u;
|
|
/* 023976F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], 0x00000000u);
|
|
/* 023976F4 */ _t52 = cpu->r[25] + 0x000000ACu;
|
|
/* 023976F4 */ rbrew_write32(cpu->mem, _t52, cpu->r[9]);
|
|
/* 023976F8 */ _t53 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023976F8 */ _t54 = _t53 & 0x00000001u;
|
|
/* 023976F8 */ if (_t54) goto L_023976FC; else goto L_0239770C;
|
|
L_023976FC: ; // 0x23976fc
|
|
/* 023976FC */ cpu->r[3] = 0x0000004Cu;
|
|
/* 02397700 */ Gambit_fn_02801A78(cpu);
|
|
/* 02397704 */ cpu->r[21] = cpu->r[3];
|
|
/* 02397704 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], 0x00000000u);
|
|
/* 02397708 */ _t55 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397708 */ _t56 = _t55 & 0x00000001u;
|
|
/* 02397708 */ if (_t56) goto L_0239776C; else goto L_0239770C;
|
|
L_0239770C: ; // 0x239770c
|
|
/* 0239770C */ cpu->r[22] = cpu->r[21];
|
|
/* 0239770C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[22], 0x00000000u);
|
|
/* 02397710 */ _t57 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397710 */ _t58 = _t57 & 0x00000001u;
|
|
/* 02397710 */ if (_t58) goto L_02397714; else goto L_02397724;
|
|
L_02397714: ; // 0x2397714
|
|
/* 02397714 */ cpu->r[3] = 0x0000004Cu;
|
|
/* 02397718 */ Gambit_fn_02801A78(cpu);
|
|
/* 0239771C */ cpu->r[22] = cpu->r[3];
|
|
/* 0239771C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[22], 0x00000000u);
|
|
/* 02397720 */ _t59 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397720 */ _t60 = _t59 & 0x00000001u;
|
|
/* 02397720 */ if (_t60) goto L_02397760; else goto L_02397724;
|
|
L_02397724: ; // 0x2397724
|
|
/* 02397724 */ cpu->r[3] = cpu->r[22];
|
|
/* 02397724 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02397728 */ _t61 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397728 */ _t62 = _t61 & 0x00000001u;
|
|
/* 02397728 */ if (_t62) goto L_0239772C; else goto L_0239773C;
|
|
L_0239772C: ; // 0x239772c
|
|
/* 0239772C */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02397730 */ Gambit_fn_02801A78(cpu);
|
|
/* 02397734 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02397738 */ _t63 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397738 */ _t64 = _t63 & 0x00000001u;
|
|
/* 02397738 */ if (_t64) goto L_02397754; else goto L_0239773C;
|
|
L_0239773C: ; // 0x239773c
|
|
/* 0239773C */ cpu->r[10] = cpu->r[22] + 0x0000000Cu;
|
|
/* 02397740 */ _t65 = cpu->r[3] + 0x00000004u;
|
|
/* 02397740 */ rbrew_write32(cpu->mem, _t65, cpu->r[28]);
|
|
/* 02397744 */ cpu->r[11] = 0x00000040u;
|
|
/* 02397748 */ _t66 = cpu->r[3] + 0x00000000u;
|
|
/* 02397748 */ rbrew_write32(cpu->mem, _t66, cpu->r[10]);
|
|
/* 0239774C */ _t67 = cpu->r[3] + 0x00000008u;
|
|
/* 0239774C */ rbrew_write32(cpu->mem, _t67, cpu->r[11]);
|
|
/* 02397750 */ _t68 = cpu->r[22] + 0x0000004Bu;
|
|
/* 02397750 */ rbrew_write8(cpu->mem, _t68, (uint8_t)cpu->r[29]);
|
|
L_02397754: ; // 0x2397754
|
|
/* 02397754 */ _t69 = cpu->r[22] + 0x00000000u;
|
|
/* 02397754 */ cpu->r[12] = rbrew_read32(cpu->mem, _t69);
|
|
/* 02397758 */ _t70 = cpu->r[22] + 0x00000004u;
|
|
/* 02397758 */ rbrew_write32(cpu->mem, _t70, cpu->r[23]);
|
|
/* 0239775C */ _t71 = cpu->r[12] + 0x00000000u;
|
|
/* 0239775C */ rbrew_write8(cpu->mem, _t71, (uint8_t)cpu->r[29]);
|
|
L_02397760: ; // 0x2397760
|
|
/* 02397760 */ cpu->r[0] = 0x10080000u;
|
|
/* 02397764 */ cpu->r[0] = cpu->r[0] + 0x00006BA8u;
|
|
/* 02397768 */ _t72 = cpu->r[21] + 0x00000004u;
|
|
/* 02397768 */ rbrew_write32(cpu->mem, _t72, cpu->r[0]);
|
|
L_0239776C: ; // 0x239776c
|
|
/* 0239776C */ _t73 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239776C */ rbrew_write32(cpu->mem, _t73, cpu->r[30]);
|
|
/* 02397770 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02397774 */ _t74 = cpu->r[1] + 0x00000008u;
|
|
/* 02397774 */ rbrew_write32(cpu->mem, _t74, cpu->r[24]);
|
|
/* 02397778 */ _t75 = cpu->r[25] + 0x00000054u;
|
|
/* 02397778 */ cpu->r[24] = rbrew_read32(cpu->mem, _t75);
|
|
/* 0239777C */ Gambit_fn_023980A4(cpu);
|
|
/* 02397780 */ _t76 = cpu->r[1] + 0x00000008u;
|
|
/* 02397780 */ cpu->r[12] = rbrew_read32(cpu->mem, _t76);
|
|
/* 02397784 */ _t77 = cpu->r[12] + 0x00000000u;
|
|
/* 02397784 */ cpu->r[5] = rbrew_read8(cpu->mem, _t77);
|
|
/* 02397788 */ cpu->r[30] = 0x00000000u;
|
|
/* 0239778C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[29]);
|
|
/* 02397790 */ cpu->r[0] = 0x00080000u;
|
|
/* 02397794 */ _t78 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397794 */ _t79 = _t78 & 0x00000001u;
|
|
/* 02397794 */ if (_t79) goto L_023977BC; else goto L_02397798;
|
|
L_02397798: ; // 0x2397798
|
|
/* 02397798 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 0239779C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[0]);
|
|
/* 023977A0 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 023977A4 */ _t80 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 023977A4 */ _t81 = _t80 & 0x00000001u;
|
|
/* 023977A4 */ if (_t81) goto L_023977B8; else goto L_023977A8;
|
|
L_023977A8: ; // 0x23977a8
|
|
/* 023977A8 */ _t82 = cpu->r[12] + 0x00000000u;
|
|
/* 023977A8 */ cpu->r[6] = rbrew_read8(cpu->mem, _t82);
|
|
/* 023977AC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[29]);
|
|
/* 023977B0 */ _t83 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023977B0 */ _t84 = _t83 & 0x00000001u;
|
|
/* 023977B0 */ if (_t84) goto L_023977B4; else goto L_02397798;
|
|
L_023977B4: ; // 0x23977b4
|
|
/* 023977B4 */ goto L_023977BC;
|
|
L_023977B8: ; // 0x23977b8
|
|
/* 023977B8 */ cpu->r[30] = 0x00000000u;
|
|
L_023977BC: ; // 0x23977bc
|
|
/* 023977BC */ _t85 = cpu->r[25] + 0x0000005Cu;
|
|
/* 023977BC */ cpu->r[12] = rbrew_read32(cpu->mem, _t85);
|
|
/* 023977C0 */ _t86 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023977C0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t86);
|
|
/* 023977C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[12]);
|
|
/* 023977C8 */ _t87 = cpu->r[7] + 0x00000014u;
|
|
/* 023977C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t87);
|
|
/* 023977CC */ _t88 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 023977CC */ _t89 = _t88 & 0x00000001u;
|
|
/* 023977CC */ if (_t89) goto L_023977D4; else goto L_023977D0;
|
|
L_023977D0: ; // 0x23977d0
|
|
/* 023977D0 */ cpu->r[30] = cpu->r[12] + 0xFFFFFFFFu;
|
|
L_023977D4: ; // 0x23977d4
|
|
/* 023977D4 */ cpu->ctr = cpu->r[0];
|
|
/* 023977D8 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 023977DC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 023977E0 */ _t90 = cpu->r[1] + 0x00000008u;
|
|
/* 023977E0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t90);
|
|
/* 023977E4 */ cpu->r[6] = 0x00000000u;
|
|
/* 023977E8 */ cpu->r[5] = cpu->r[30];
|
|
/* 023977EC */ cpu->r[3] = cpu->r[24];
|
|
/* 023977F0 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 023977F4 */ _t91 = cpu->r[24] + cpu->r[30];
|
|
/* 023977F4 */ rbrew_write8(cpu->mem, _t91, (uint8_t)cpu->r[29]);
|
|
/* 023977F8 */ _t92 = cpu->r[25] + 0x00000058u;
|
|
/* 023977F8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t92);
|
|
/* 023977FC */ _t93 = cpu->r[9] + 0x00000014u;
|
|
/* 023977FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t93);
|
|
/* 02397800 */ cpu->ctr = cpu->r[0];
|
|
/* 02397804 */ cpu->r[3] = cpu->r[25] + 0x00000054u;
|
|
/* 02397808 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0239780C */ _t94 = cpu->r[25] + 0x00000054u;
|
|
/* 0239780C */ cpu->r[4] = rbrew_read32(cpu->mem, _t94);
|
|
/* 02397810 */ cpu->r[3] = cpu->r[25];
|
|
/* 02397814 */ _t95 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 02397814 */ _t96 = _t95 & 0x00000001u;
|
|
/* 02397814 */ if (_t96) goto L_02397818; // else: addr-0 trap, fall-through
|
|
L_02397818: ; // 0x2397818
|
|
/* 02397818 */ Gambit_fn_027F8F3C(cpu);
|
|
L_0239781C: ; // 0x239781c
|
|
/* 0239781C */ cpu->r[0] = 0x10080000u;
|
|
/* 02397820 */ cpu->r[0] = cpu->r[0] + 0x00006C00u;
|
|
/* 02397824 */ cpu->r[3] = cpu->r[31] + 0x000000FCu;
|
|
/* 02397824 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02397828 */ _t97 = cpu->r[31] + 0x00000000u;
|
|
/* 02397828 */ rbrew_write32(cpu->mem, _t97, cpu->r[0]);
|
|
/* 0239782C */ _t98 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239782C */ _t99 = _t98 & 0x00000001u;
|
|
/* 0239782C */ if (_t99) goto L_02397830; else goto L_02397840;
|
|
L_02397830: ; // 0x2397830
|
|
/* 02397830 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02397834 */ Gambit_fn_02801A78(cpu);
|
|
/* 02397838 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239783C */ _t100 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239783C */ _t101 = _t100 & 0x00000001u;
|
|
/* 0239783C */ if (_t101) goto L_02397864; else goto L_02397840;
|
|
L_02397840: ; // 0x2397840
|
|
/* 02397840 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02397844 */ _t102 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397844 */ _t103 = _t102 & 0x00000001u;
|
|
/* 02397844 */ if (_t103) goto L_02397848; else goto L_02397858;
|
|
L_02397848: ; // 0x2397848
|
|
/* 02397848 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0239784C */ Gambit_fn_02801A78(cpu);
|
|
/* 02397850 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02397854 */ _t104 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397854 */ _t105 = _t104 & 0x00000001u;
|
|
/* 02397854 */ if (_t105) goto L_02397864; else goto L_02397858;
|
|
L_02397858: ; // 0x2397858
|
|
/* 02397858 */ _t106 = cpu->r[3] + 0x00000004u;
|
|
/* 02397858 */ rbrew_write32(cpu->mem, _t106, cpu->r[26]);
|
|
/* 0239785C */ _t107 = cpu->r[3] + 0x00000000u;
|
|
/* 0239785C */ rbrew_write32(cpu->mem, _t107, cpu->r[26]);
|
|
/* 02397860 */ _t108 = cpu->r[3] + 0x00000008u;
|
|
/* 02397860 */ rbrew_write32(cpu->mem, _t108, cpu->r[26]);
|
|
L_02397864: ; // 0x2397864
|
|
/* 02397864 */ cpu->r[3] = cpu->r[31] + 0x00000108u;
|
|
/* 02397864 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02397868 */ _t109 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397868 */ _t110 = _t109 & 0x00000001u;
|
|
/* 02397868 */ if (_t110) goto L_0239786C; else goto L_0239787C;
|
|
L_0239786C: ; // 0x239786c
|
|
/* 0239786C */ cpu->r[3] = 0x00000008u;
|
|
/* 02397870 */ Gambit_fn_02801A78(cpu);
|
|
/* 02397874 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02397878 */ _t111 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397878 */ _t112 = _t111 & 0x00000001u;
|
|
/* 02397878 */ if (_t112) goto L_02397884; else goto L_0239787C;
|
|
L_0239787C: ; // 0x239787c
|
|
/* 0239787C */ _t113 = cpu->r[3] + 0x00000004u;
|
|
/* 0239787C */ rbrew_write32(cpu->mem, _t113, cpu->r[26]);
|
|
/* 02397880 */ _t114 = cpu->r[3] + 0x00000000u;
|
|
/* 02397880 */ rbrew_write32(cpu->mem, _t114, cpu->r[26]);
|
|
L_02397884: ; // 0x2397884
|
|
/* 02397884 */ cpu->r[30] = cpu->r[31] + 0x00000110u;
|
|
/* 02397884 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02397888 */ _t115 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397888 */ _t116 = _t115 & 0x00000001u;
|
|
/* 02397888 */ if (_t116) goto L_0239788C; else goto L_0239789C;
|
|
L_0239788C: ; // 0x239788c
|
|
/* 0239788C */ cpu->r[3] = 0x00000060u;
|
|
/* 02397890 */ Gambit_fn_02801A78(cpu);
|
|
/* 02397894 */ cpu->r[30] = cpu->r[3];
|
|
/* 02397894 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02397898 */ _t117 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397898 */ _t118 = _t117 & 0x00000001u;
|
|
/* 02397898 */ if (_t118) goto L_023978E8; else goto L_0239789C;
|
|
L_0239789C: ; // 0x239789c
|
|
/* 0239789C */ cpu->r[5] = 0x10080000u;
|
|
/* 023978A0 */ cpu->r[4] = cpu->r[31];
|
|
/* 023978A4 */ cpu->r[6] = 0x10080000u;
|
|
/* 023978A8 */ cpu->r[5] = cpu->r[5] + 0x00006CACu;
|
|
/* 023978AC */ cpu->r[8] = 0x00000000u;
|
|
/* 023978B0 */ cpu->r[6] = cpu->r[6] + 0x00006CC0u;
|
|
/* 023978B4 */ cpu->r[7] = cpu->r[5];
|
|
/* 023978B8 */ cpu->r[3] = cpu->r[30];
|
|
/* 023978BC */ Gambit_fn_027F84F0(cpu);
|
|
/* 023978C0 */ cpu->r[0] = 0x10110000u;
|
|
/* 023978C4 */ cpu->r[12] = 0x10080000u;
|
|
/* 023978C8 */ cpu->r[0] = cpu->r[0] + 0x00000A2Cu;
|
|
/* 023978CC */ _t119 = cpu->r[12] + 0x00006C9Cu;
|
|
/* 023978CC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t119);
|
|
/* 023978D0 */ cpu->r[6] = 0x10080000u;
|
|
/* 023978D4 */ _t120 = cpu->r[30] + 0x00000000u;
|
|
/* 023978D4 */ rbrew_write32(cpu->mem, _t120, cpu->r[0]);
|
|
/* 023978D8 */ _t121 = cpu->r[6] + 0x00006C98u;
|
|
/* 023978D8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t121);
|
|
/* 023978DC */ _t122 = cpu->r[30] + 0x0000005Cu;
|
|
/* 023978DC */ rbrew_write_f32(cpu->mem, _t122, cpu->f[13]);
|
|
/* 023978E0 */ _t123 = cpu->r[30] + 0x00000054u;
|
|
/* 023978E0 */ rbrew_write_f32(cpu->mem, _t123, cpu->f[0]);
|
|
/* 023978E4 */ _t124 = cpu->r[30] + 0x00000058u;
|
|
/* 023978E4 */ rbrew_write_f32(cpu->mem, _t124, cpu->f[0]);
|
|
L_023978E8: ; // 0x23978e8
|
|
/* 023978E8 */ cpu->r[26] = cpu->r[31] + 0x00000170u;
|
|
/* 023978E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 023978EC */ _t125 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023978EC */ _t126 = _t125 & 0x00000001u;
|
|
/* 023978EC */ if (_t126) goto L_023978F0; else goto L_02397900;
|
|
L_023978F0: ; // 0x23978f0
|
|
/* 023978F0 */ cpu->r[3] = 0x0000008Cu;
|
|
/* 023978F4 */ Gambit_fn_02801A78(cpu);
|
|
/* 023978F8 */ cpu->r[26] = cpu->r[3];
|
|
/* 023978F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 023978FC */ _t127 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023978FC */ _t128 = _t127 & 0x00000001u;
|
|
/* 023978FC */ if (_t128) goto L_02397988; else goto L_02397900;
|
|
L_02397900: ; // 0x2397900
|
|
/* 02397900 */ cpu->r[30] = cpu->r[26];
|
|
/* 02397900 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02397904 */ _t129 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397904 */ _t130 = _t129 & 0x00000001u;
|
|
/* 02397904 */ if (_t130) goto L_02397908; else goto L_02397918;
|
|
L_02397908: ; // 0x2397908
|
|
/* 02397908 */ cpu->r[3] = 0x0000008Cu;
|
|
/* 0239790C */ Gambit_fn_02801A78(cpu);
|
|
/* 02397910 */ cpu->r[30] = cpu->r[3];
|
|
/* 02397910 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02397914 */ _t131 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397914 */ _t132 = _t131 & 0x00000001u;
|
|
/* 02397914 */ if (_t132) goto L_0239797C; else goto L_02397918;
|
|
L_02397918: ; // 0x2397918
|
|
/* 02397918 */ cpu->r[3] = cpu->r[30];
|
|
/* 02397918 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239791C */ _t133 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239791C */ _t134 = _t133 & 0x00000001u;
|
|
/* 0239791C */ if (_t134) goto L_02397920; else goto L_0239794C;
|
|
L_02397920: ; // 0x2397920
|
|
/* 02397920 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02397924 */ Gambit_fn_02801A78(cpu);
|
|
/* 02397928 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239792C */ _t135 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239792C */ _t136 = _t135 & 0x00000001u;
|
|
/* 0239792C */ if (_t136) goto L_02397930; else goto L_0239794C;
|
|
L_02397930: ; // 0x2397930
|
|
/* 02397930 */ _t137 = cpu->r[27] + 0x00007399u;
|
|
/* 02397930 */ cpu->r[29] = rbrew_read8(cpu->mem, _t137);
|
|
/* 02397934 */ cpu->r[9] = 0x10080000u;
|
|
/* 02397938 */ cpu->r[9] = cpu->r[9] + 0x00006B30u;
|
|
/* 0239793C */ _t138 = cpu->r[30] + 0x00000000u;
|
|
/* 0239793C */ cpu->r[10] = rbrew_read32(cpu->mem, _t138);
|
|
/* 02397940 */ _t139 = cpu->r[30] + 0x00000004u;
|
|
/* 02397940 */ rbrew_write32(cpu->mem, _t139, cpu->r[9]);
|
|
/* 02397944 */ _t140 = cpu->r[10] + 0x00000000u;
|
|
/* 02397944 */ rbrew_write8(cpu->mem, _t140, (uint8_t)cpu->r[29]);
|
|
/* 02397948 */ goto L_0239797C;
|
|
L_0239794C: ; // 0x239794c
|
|
/* 0239794C */ cpu->r[7] = cpu->r[30] + 0x0000000Cu;
|
|
/* 02397950 */ _t141 = cpu->r[3] + 0x00000004u;
|
|
/* 02397950 */ rbrew_write32(cpu->mem, _t141, cpu->r[28]);
|
|
/* 02397954 */ cpu->r[8] = 0x00000080u;
|
|
/* 02397958 */ _t142 = cpu->r[3] + 0x00000000u;
|
|
/* 02397958 */ rbrew_write32(cpu->mem, _t142, cpu->r[7]);
|
|
/* 0239795C */ _t143 = cpu->r[3] + 0x00000008u;
|
|
/* 0239795C */ rbrew_write32(cpu->mem, _t143, cpu->r[8]);
|
|
/* 02397960 */ _t144 = cpu->r[27] + 0x00007399u;
|
|
/* 02397960 */ cpu->r[29] = rbrew_read8(cpu->mem, _t144);
|
|
/* 02397964 */ cpu->r[9] = 0x10080000u;
|
|
/* 02397968 */ _t145 = cpu->r[30] + 0x0000008Bu;
|
|
/* 02397968 */ rbrew_write8(cpu->mem, _t145, (uint8_t)cpu->r[29]);
|
|
/* 0239796C */ cpu->r[9] = cpu->r[9] + 0x00006B30u;
|
|
/* 02397970 */ _t146 = cpu->r[30] + 0x00000000u;
|
|
/* 02397970 */ cpu->r[10] = rbrew_read32(cpu->mem, _t146);
|
|
/* 02397974 */ _t147 = cpu->r[30] + 0x00000004u;
|
|
/* 02397974 */ rbrew_write32(cpu->mem, _t147, cpu->r[9]);
|
|
/* 02397978 */ _t148 = cpu->r[10] + 0x00000000u;
|
|
/* 02397978 */ rbrew_write8(cpu->mem, _t148, (uint8_t)cpu->r[29]);
|
|
L_0239797C: ; // 0x239797c
|
|
/* 0239797C */ cpu->r[0] = 0x10080000u;
|
|
/* 02397980 */ cpu->r[0] = cpu->r[0] + 0x00006B48u;
|
|
/* 02397984 */ _t149 = cpu->r[26] + 0x00000004u;
|
|
/* 02397984 */ rbrew_write32(cpu->mem, _t149, cpu->r[0]);
|
|
L_02397988: ; // 0x2397988
|
|
/* 02397988 */ cpu->r[3] = cpu->r[31];
|
|
/* 0239798C */ /* nop */
|
|
/* 02397990 */ _t150 = cpu->r[1] + 0x00000044u;
|
|
/* 02397990 */ cpu->r[0] = rbrew_read32(cpu->mem, _t150);
|
|
/* 02397994 */ cpu->lr = cpu->r[0];
|
|
/* 02397998 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 0239799C */ return;
|
|
}
|
|
|
|
// fn_02397564 @ 0x2397564
|
|
void Gambit_fn_02397564(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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;
|
|
|
|
L_02397564: ; // 0x2397564
|
|
/* 02397564 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 02397564 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02397564 */ cpu->r[1] = _t0;
|
|
/* 02397568 */ _t1 = cpu->r[1] + 0x00000044u;
|
|
/* 02397568 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0239756C */ /* nop */
|
|
/* 02397570 */ cpu->r[31] = cpu->r[3];
|
|
/* 02397570 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02397574 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397574 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02397574 */ if (_t3) goto L_02397578; else goto L_02397588;
|
|
L_02397578: ; // 0x2397578
|
|
/* 02397578 */ cpu->r[3] = 0x000001FCu;
|
|
/* 0239757C */ Gambit_fn_02801A78(cpu);
|
|
/* 02397580 */ cpu->r[31] = cpu->r[3];
|
|
/* 02397580 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02397584 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397584 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02397584 */ if (_t5) goto L_02397988; else goto L_02397588;
|
|
L_02397588: ; // 0x2397588
|
|
/* 02397588 */ cpu->r[28] = 0x10080000u;
|
|
/* 0239758C */ cpu->r[25] = cpu->r[31];
|
|
/* 0239758C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 02397590 */ cpu->r[27] = 0x10110000u;
|
|
/* 02397594 */ cpu->r[28] = cpu->r[28] + 0x00006B18u;
|
|
/* 02397598 */ cpu->r[26] = 0x00000000u;
|
|
/* 0239759C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239759C */ _t7 = _t6 & 0x00000001u;
|
|
/* 0239759C */ if (_t7) goto L_023975A0; else goto L_023975B0;
|
|
L_023975A0: ; // 0x23975a0
|
|
/* 023975A0 */ cpu->r[3] = 0x000000FCu;
|
|
/* 023975A4 */ Gambit_fn_02801A78(cpu);
|
|
/* 023975A8 */ cpu->r[25] = cpu->r[3];
|
|
/* 023975A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 023975AC */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023975AC */ _t9 = _t8 & 0x00000001u;
|
|
/* 023975AC */ if (_t9) goto L_0239781C; else goto L_023975B0;
|
|
L_023975B0: ; // 0x23975b0
|
|
/* 023975B0 */ cpu->r[5] = 0x10080000u;
|
|
/* 023975B4 */ cpu->r[4] = 0x00000000u;
|
|
/* 023975B8 */ cpu->r[24] = 0x10080000u;
|
|
/* 023975BC */ cpu->r[5] = cpu->r[5] + 0x00006CA0u;
|
|
/* 023975C0 */ cpu->r[3] = cpu->r[25];
|
|
/* 023975C4 */ cpu->r[24] = cpu->r[24] + 0x00006CA4u;
|
|
/* 023975C8 */ cpu->r[7] = cpu->r[5];
|
|
/* 023975CC */ cpu->r[8] = cpu->r[4];
|
|
/* 023975D0 */ cpu->r[6] = cpu->r[24];
|
|
/* 023975D4 */ Gambit_fn_027F84F0(cpu);
|
|
/* 023975D8 */ cpu->r[21] = cpu->r[25] + 0x00000054u;
|
|
/* 023975DC */ cpu->r[23] = 0x10080000u;
|
|
/* 023975E0 */ cpu->r[0] = 0x10110000u;
|
|
/* 023975E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], 0x00000000u);
|
|
/* 023975E8 */ cpu->r[30] = 0x10080000u;
|
|
/* 023975EC */ cpu->r[0] = cpu->r[0] + 0x0000085Cu;
|
|
/* 023975F0 */ cpu->r[23] = cpu->r[23] + 0x00006B90u;
|
|
/* 023975F4 */ cpu->r[30] = cpu->r[30] + 0x00006B00u;
|
|
/* 023975F8 */ _t10 = cpu->r[25] + 0x00000000u;
|
|
/* 023975F8 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 023975FC */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023975FC */ _t12 = _t11 & 0x00000001u;
|
|
/* 023975FC */ if (_t12) goto L_02397600; else goto L_02397620;
|
|
L_02397600: ; // 0x2397600
|
|
/* 02397600 */ cpu->r[3] = 0x0000004Cu;
|
|
/* 02397604 */ Gambit_fn_02801A78(cpu);
|
|
/* 02397608 */ cpu->r[21] = cpu->r[3];
|
|
/* 02397608 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], 0x00000000u);
|
|
/* 0239760C */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239760C */ _t14 = _t13 & 0x00000001u;
|
|
/* 0239760C */ if (_t14) goto L_02397610; else goto L_02397620;
|
|
L_02397610: ; // 0x2397610
|
|
/* 02397610 */ cpu->r[3] = cpu->r[25] + 0x000000A0u;
|
|
/* 02397610 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02397614 */ _t15 = cpu->r[27] + 0x00007399u;
|
|
/* 02397614 */ cpu->r[29] = rbrew_read8(cpu->mem, _t15);
|
|
/* 02397618 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397618 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02397618 */ if (_t17) goto L_023976B4; else goto L_0239761C;
|
|
L_0239761C: ; // 0x239761c
|
|
/* 0239761C */ goto L_023976C4;
|
|
L_02397620: ; // 0x2397620
|
|
/* 02397620 */ cpu->r[22] = cpu->r[21];
|
|
/* 02397620 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[22], 0x00000000u);
|
|
/* 02397624 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397624 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02397624 */ if (_t19) goto L_02397628; else goto L_0239764C;
|
|
L_02397628: ; // 0x2397628
|
|
/* 02397628 */ cpu->r[3] = 0x0000004Cu;
|
|
/* 0239762C */ Gambit_fn_02801A78(cpu);
|
|
/* 02397630 */ cpu->r[22] = cpu->r[3];
|
|
/* 02397630 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[22], 0x00000000u);
|
|
/* 02397634 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397634 */ _t21 = _t20 & 0x00000001u;
|
|
/* 02397634 */ if (_t21) goto L_02397638; else goto L_0239764C;
|
|
L_02397638: ; // 0x2397638
|
|
/* 02397638 */ cpu->r[0] = 0x10080000u;
|
|
/* 0239763C */ _t22 = cpu->r[27] + 0x00007399u;
|
|
/* 0239763C */ cpu->r[29] = rbrew_read8(cpu->mem, _t22);
|
|
/* 02397640 */ cpu->r[0] = cpu->r[0] + 0x00006BA8u;
|
|
/* 02397644 */ _t23 = cpu->r[21] + 0x00000004u;
|
|
/* 02397644 */ rbrew_write32(cpu->mem, _t23, cpu->r[0]);
|
|
/* 02397648 */ goto L_023976AC;
|
|
L_0239764C: ; // 0x239764c
|
|
/* 0239764C */ cpu->r[3] = cpu->r[22];
|
|
/* 0239764C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02397650 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397650 */ _t25 = _t24 & 0x00000001u;
|
|
/* 02397650 */ if (_t25) goto L_02397654; else goto L_02397678;
|
|
L_02397654: ; // 0x2397654
|
|
/* 02397654 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02397658 */ Gambit_fn_02801A78(cpu);
|
|
/* 0239765C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02397660 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397660 */ _t27 = _t26 & 0x00000001u;
|
|
/* 02397660 */ if (_t27) goto L_02397664; else goto L_02397678;
|
|
L_02397664: ; // 0x2397664
|
|
/* 02397664 */ _t28 = cpu->r[27] + 0x00007399u;
|
|
/* 02397664 */ cpu->r[29] = rbrew_read8(cpu->mem, _t28);
|
|
/* 02397668 */ _t29 = cpu->r[22] + 0x00000000u;
|
|
/* 02397668 */ cpu->r[7] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0239766C */ _t30 = cpu->r[22] + 0x00000004u;
|
|
/* 0239766C */ rbrew_write32(cpu->mem, _t30, cpu->r[23]);
|
|
/* 02397670 */ _t31 = cpu->r[7] + 0x00000000u;
|
|
/* 02397670 */ rbrew_write8(cpu->mem, _t31, (uint8_t)cpu->r[29]);
|
|
/* 02397674 */ goto L_023976A0;
|
|
L_02397678: ; // 0x2397678
|
|
/* 02397678 */ cpu->r[5] = cpu->r[22] + 0x0000000Cu;
|
|
/* 0239767C */ _t32 = cpu->r[3] + 0x00000004u;
|
|
/* 0239767C */ rbrew_write32(cpu->mem, _t32, cpu->r[28]);
|
|
/* 02397680 */ cpu->r[0] = 0x00000040u;
|
|
/* 02397684 */ _t33 = cpu->r[3] + 0x00000000u;
|
|
/* 02397684 */ rbrew_write32(cpu->mem, _t33, cpu->r[5]);
|
|
/* 02397688 */ _t34 = cpu->r[3] + 0x00000008u;
|
|
/* 02397688 */ rbrew_write32(cpu->mem, _t34, cpu->r[0]);
|
|
/* 0239768C */ _t35 = cpu->r[27] + 0x00007399u;
|
|
/* 0239768C */ cpu->r[29] = rbrew_read8(cpu->mem, _t35);
|
|
/* 02397690 */ _t36 = cpu->r[22] + 0x0000004Bu;
|
|
/* 02397690 */ rbrew_write8(cpu->mem, _t36, (uint8_t)cpu->r[29]);
|
|
/* 02397694 */ _t37 = cpu->r[22] + 0x00000000u;
|
|
/* 02397694 */ cpu->r[7] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02397698 */ _t38 = cpu->r[22] + 0x00000004u;
|
|
/* 02397698 */ rbrew_write32(cpu->mem, _t38, cpu->r[23]);
|
|
/* 0239769C */ _t39 = cpu->r[7] + 0x00000000u;
|
|
/* 0239769C */ rbrew_write8(cpu->mem, _t39, (uint8_t)cpu->r[29]);
|
|
L_023976A0: ; // 0x23976a0
|
|
/* 023976A0 */ cpu->r[0] = 0x10080000u;
|
|
/* 023976A4 */ cpu->r[0] = cpu->r[0] + 0x00006BA8u;
|
|
/* 023976A8 */ _t40 = cpu->r[21] + 0x00000004u;
|
|
/* 023976A8 */ rbrew_write32(cpu->mem, _t40, cpu->r[0]);
|
|
L_023976AC: ; // 0x23976ac
|
|
/* 023976AC */ cpu->r[3] = cpu->r[25] + 0x000000A0u;
|
|
/* 023976AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023976B0 */ _t41 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023976B0 */ _t42 = _t41 & 0x00000001u;
|
|
/* 023976B0 */ if (_t42) goto L_023976B4; else goto L_023976C4;
|
|
L_023976B4: ; // 0x23976b4
|
|
/* 023976B4 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 023976B8 */ Gambit_fn_02801A78(cpu);
|
|
/* 023976BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023976C0 */ _t43 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023976C0 */ _t44 = _t43 & 0x00000001u;
|
|
/* 023976C0 */ if (_t44) goto L_023976E8; else goto L_023976C4;
|
|
L_023976C4: ; // 0x23976c4
|
|
/* 023976C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023976C8 */ _t45 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023976C8 */ _t46 = _t45 & 0x00000001u;
|
|
/* 023976C8 */ if (_t46) goto L_023976CC; else goto L_023976DC;
|
|
L_023976CC: ; // 0x23976cc
|
|
/* 023976CC */ cpu->r[3] = 0x0000000Cu;
|
|
/* 023976D0 */ Gambit_fn_02801A78(cpu);
|
|
/* 023976D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023976D8 */ _t47 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023976D8 */ _t48 = _t47 & 0x00000001u;
|
|
/* 023976D8 */ if (_t48) goto L_023976E8; else goto L_023976DC;
|
|
L_023976DC: ; // 0x23976dc
|
|
/* 023976DC */ _t49 = cpu->r[3] + 0x00000004u;
|
|
/* 023976DC */ rbrew_write32(cpu->mem, _t49, cpu->r[3]);
|
|
/* 023976E0 */ _t50 = cpu->r[3] + 0x00000008u;
|
|
/* 023976E0 */ rbrew_write32(cpu->mem, _t50, cpu->r[26]);
|
|
/* 023976E4 */ _t51 = cpu->r[3] + 0x00000000u;
|
|
/* 023976E4 */ rbrew_write32(cpu->mem, _t51, cpu->r[3]);
|
|
L_023976E8: ; // 0x23976e8
|
|
/* 023976E8 */ cpu->r[9] = 0x10080000u;
|
|
/* 023976EC */ cpu->r[9] = cpu->r[9] + 0x00006AE8u;
|
|
/* 023976F0 */ cpu->r[21] = cpu->r[25] + 0x000000B0u;
|
|
/* 023976F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], 0x00000000u);
|
|
/* 023976F4 */ _t52 = cpu->r[25] + 0x000000ACu;
|
|
/* 023976F4 */ rbrew_write32(cpu->mem, _t52, cpu->r[9]);
|
|
/* 023976F8 */ _t53 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023976F8 */ _t54 = _t53 & 0x00000001u;
|
|
/* 023976F8 */ if (_t54) goto L_023976FC; else goto L_0239770C;
|
|
L_023976FC: ; // 0x23976fc
|
|
/* 023976FC */ cpu->r[3] = 0x0000004Cu;
|
|
/* 02397700 */ Gambit_fn_02801A78(cpu);
|
|
/* 02397704 */ cpu->r[21] = cpu->r[3];
|
|
/* 02397704 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], 0x00000000u);
|
|
/* 02397708 */ _t55 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397708 */ _t56 = _t55 & 0x00000001u;
|
|
/* 02397708 */ if (_t56) goto L_0239776C; else goto L_0239770C;
|
|
L_0239770C: ; // 0x239770c
|
|
/* 0239770C */ cpu->r[22] = cpu->r[21];
|
|
/* 0239770C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[22], 0x00000000u);
|
|
/* 02397710 */ _t57 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397710 */ _t58 = _t57 & 0x00000001u;
|
|
/* 02397710 */ if (_t58) goto L_02397714; else goto L_02397724;
|
|
L_02397714: ; // 0x2397714
|
|
/* 02397714 */ cpu->r[3] = 0x0000004Cu;
|
|
/* 02397718 */ Gambit_fn_02801A78(cpu);
|
|
/* 0239771C */ cpu->r[22] = cpu->r[3];
|
|
/* 0239771C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[22], 0x00000000u);
|
|
/* 02397720 */ _t59 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397720 */ _t60 = _t59 & 0x00000001u;
|
|
/* 02397720 */ if (_t60) goto L_02397760; else goto L_02397724;
|
|
L_02397724: ; // 0x2397724
|
|
/* 02397724 */ cpu->r[3] = cpu->r[22];
|
|
/* 02397724 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02397728 */ _t61 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397728 */ _t62 = _t61 & 0x00000001u;
|
|
/* 02397728 */ if (_t62) goto L_0239772C; else goto L_0239773C;
|
|
L_0239772C: ; // 0x239772c
|
|
/* 0239772C */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02397730 */ Gambit_fn_02801A78(cpu);
|
|
/* 02397734 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02397738 */ _t63 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397738 */ _t64 = _t63 & 0x00000001u;
|
|
/* 02397738 */ if (_t64) goto L_02397754; else goto L_0239773C;
|
|
L_0239773C: ; // 0x239773c
|
|
/* 0239773C */ cpu->r[10] = cpu->r[22] + 0x0000000Cu;
|
|
/* 02397740 */ _t65 = cpu->r[3] + 0x00000004u;
|
|
/* 02397740 */ rbrew_write32(cpu->mem, _t65, cpu->r[28]);
|
|
/* 02397744 */ cpu->r[11] = 0x00000040u;
|
|
/* 02397748 */ _t66 = cpu->r[3] + 0x00000000u;
|
|
/* 02397748 */ rbrew_write32(cpu->mem, _t66, cpu->r[10]);
|
|
/* 0239774C */ _t67 = cpu->r[3] + 0x00000008u;
|
|
/* 0239774C */ rbrew_write32(cpu->mem, _t67, cpu->r[11]);
|
|
/* 02397750 */ _t68 = cpu->r[22] + 0x0000004Bu;
|
|
/* 02397750 */ rbrew_write8(cpu->mem, _t68, (uint8_t)cpu->r[29]);
|
|
L_02397754: ; // 0x2397754
|
|
/* 02397754 */ _t69 = cpu->r[22] + 0x00000000u;
|
|
/* 02397754 */ cpu->r[12] = rbrew_read32(cpu->mem, _t69);
|
|
/* 02397758 */ _t70 = cpu->r[22] + 0x00000004u;
|
|
/* 02397758 */ rbrew_write32(cpu->mem, _t70, cpu->r[23]);
|
|
/* 0239775C */ _t71 = cpu->r[12] + 0x00000000u;
|
|
/* 0239775C */ rbrew_write8(cpu->mem, _t71, (uint8_t)cpu->r[29]);
|
|
L_02397760: ; // 0x2397760
|
|
/* 02397760 */ cpu->r[0] = 0x10080000u;
|
|
/* 02397764 */ cpu->r[0] = cpu->r[0] + 0x00006BA8u;
|
|
/* 02397768 */ _t72 = cpu->r[21] + 0x00000004u;
|
|
/* 02397768 */ rbrew_write32(cpu->mem, _t72, cpu->r[0]);
|
|
L_0239776C: ; // 0x239776c
|
|
/* 0239776C */ _t73 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239776C */ rbrew_write32(cpu->mem, _t73, cpu->r[30]);
|
|
/* 02397770 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02397774 */ _t74 = cpu->r[1] + 0x00000008u;
|
|
/* 02397774 */ rbrew_write32(cpu->mem, _t74, cpu->r[24]);
|
|
/* 02397778 */ _t75 = cpu->r[25] + 0x00000054u;
|
|
/* 02397778 */ cpu->r[24] = rbrew_read32(cpu->mem, _t75);
|
|
/* 0239777C */ Gambit_fn_023980A4(cpu);
|
|
/* 02397780 */ _t76 = cpu->r[1] + 0x00000008u;
|
|
/* 02397780 */ cpu->r[12] = rbrew_read32(cpu->mem, _t76);
|
|
/* 02397784 */ _t77 = cpu->r[12] + 0x00000000u;
|
|
/* 02397784 */ cpu->r[5] = rbrew_read8(cpu->mem, _t77);
|
|
/* 02397788 */ cpu->r[30] = 0x00000000u;
|
|
/* 0239778C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[29]);
|
|
/* 02397790 */ cpu->r[0] = 0x00080000u;
|
|
/* 02397794 */ _t78 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397794 */ _t79 = _t78 & 0x00000001u;
|
|
/* 02397794 */ if (_t79) goto L_023977BC; else goto L_02397798;
|
|
L_02397798: ; // 0x2397798
|
|
/* 02397798 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 0239779C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[0]);
|
|
/* 023977A0 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 023977A4 */ _t80 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 023977A4 */ _t81 = _t80 & 0x00000001u;
|
|
/* 023977A4 */ if (_t81) goto L_023977B8; else goto L_023977A8;
|
|
L_023977A8: ; // 0x23977a8
|
|
/* 023977A8 */ _t82 = cpu->r[12] + 0x00000000u;
|
|
/* 023977A8 */ cpu->r[6] = rbrew_read8(cpu->mem, _t82);
|
|
/* 023977AC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[29]);
|
|
/* 023977B0 */ _t83 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023977B0 */ _t84 = _t83 & 0x00000001u;
|
|
/* 023977B0 */ if (_t84) goto L_023977B4; else goto L_02397798;
|
|
L_023977B4: ; // 0x23977b4
|
|
/* 023977B4 */ goto L_023977BC;
|
|
L_023977B8: ; // 0x23977b8
|
|
/* 023977B8 */ cpu->r[30] = 0x00000000u;
|
|
L_023977BC: ; // 0x23977bc
|
|
/* 023977BC */ _t85 = cpu->r[25] + 0x0000005Cu;
|
|
/* 023977BC */ cpu->r[12] = rbrew_read32(cpu->mem, _t85);
|
|
/* 023977C0 */ _t86 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023977C0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t86);
|
|
/* 023977C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[12]);
|
|
/* 023977C8 */ _t87 = cpu->r[7] + 0x00000014u;
|
|
/* 023977C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t87);
|
|
/* 023977CC */ _t88 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 023977CC */ _t89 = _t88 & 0x00000001u;
|
|
/* 023977CC */ if (_t89) goto L_023977D4; else goto L_023977D0;
|
|
L_023977D0: ; // 0x23977d0
|
|
/* 023977D0 */ cpu->r[30] = cpu->r[12] + 0xFFFFFFFFu;
|
|
L_023977D4: ; // 0x23977d4
|
|
/* 023977D4 */ cpu->ctr = cpu->r[0];
|
|
/* 023977D8 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 023977DC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 023977E0 */ _t90 = cpu->r[1] + 0x00000008u;
|
|
/* 023977E0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t90);
|
|
/* 023977E4 */ cpu->r[6] = 0x00000000u;
|
|
/* 023977E8 */ cpu->r[5] = cpu->r[30];
|
|
/* 023977EC */ cpu->r[3] = cpu->r[24];
|
|
/* 023977F0 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 023977F4 */ _t91 = cpu->r[24] + cpu->r[30];
|
|
/* 023977F4 */ rbrew_write8(cpu->mem, _t91, (uint8_t)cpu->r[29]);
|
|
/* 023977F8 */ _t92 = cpu->r[25] + 0x00000058u;
|
|
/* 023977F8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t92);
|
|
/* 023977FC */ _t93 = cpu->r[9] + 0x00000014u;
|
|
/* 023977FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t93);
|
|
/* 02397800 */ cpu->ctr = cpu->r[0];
|
|
/* 02397804 */ cpu->r[3] = cpu->r[25] + 0x00000054u;
|
|
/* 02397808 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0239780C */ _t94 = cpu->r[25] + 0x00000054u;
|
|
/* 0239780C */ cpu->r[4] = rbrew_read32(cpu->mem, _t94);
|
|
/* 02397810 */ cpu->r[3] = cpu->r[25];
|
|
/* 02397814 */ _t95 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 02397814 */ _t96 = _t95 & 0x00000001u;
|
|
/* 02397814 */ if (_t96) goto L_02397818; // else: addr-0 trap, fall-through
|
|
L_02397818: ; // 0x2397818
|
|
/* 02397818 */ Gambit_fn_027F8F3C(cpu);
|
|
L_0239781C: ; // 0x239781c
|
|
/* 0239781C */ cpu->r[0] = 0x10080000u;
|
|
/* 02397820 */ cpu->r[0] = cpu->r[0] + 0x00006C00u;
|
|
/* 02397824 */ cpu->r[3] = cpu->r[31] + 0x000000FCu;
|
|
/* 02397824 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02397828 */ _t97 = cpu->r[31] + 0x00000000u;
|
|
/* 02397828 */ rbrew_write32(cpu->mem, _t97, cpu->r[0]);
|
|
/* 0239782C */ _t98 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239782C */ _t99 = _t98 & 0x00000001u;
|
|
/* 0239782C */ if (_t99) goto L_02397830; else goto L_02397840;
|
|
L_02397830: ; // 0x2397830
|
|
/* 02397830 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02397834 */ Gambit_fn_02801A78(cpu);
|
|
/* 02397838 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239783C */ _t100 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239783C */ _t101 = _t100 & 0x00000001u;
|
|
/* 0239783C */ if (_t101) goto L_02397864; else goto L_02397840;
|
|
L_02397840: ; // 0x2397840
|
|
/* 02397840 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02397844 */ _t102 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397844 */ _t103 = _t102 & 0x00000001u;
|
|
/* 02397844 */ if (_t103) goto L_02397848; else goto L_02397858;
|
|
L_02397848: ; // 0x2397848
|
|
/* 02397848 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0239784C */ Gambit_fn_02801A78(cpu);
|
|
/* 02397850 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02397854 */ _t104 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397854 */ _t105 = _t104 & 0x00000001u;
|
|
/* 02397854 */ if (_t105) goto L_02397864; else goto L_02397858;
|
|
L_02397858: ; // 0x2397858
|
|
/* 02397858 */ _t106 = cpu->r[3] + 0x00000004u;
|
|
/* 02397858 */ rbrew_write32(cpu->mem, _t106, cpu->r[26]);
|
|
/* 0239785C */ _t107 = cpu->r[3] + 0x00000000u;
|
|
/* 0239785C */ rbrew_write32(cpu->mem, _t107, cpu->r[26]);
|
|
/* 02397860 */ _t108 = cpu->r[3] + 0x00000008u;
|
|
/* 02397860 */ rbrew_write32(cpu->mem, _t108, cpu->r[26]);
|
|
L_02397864: ; // 0x2397864
|
|
/* 02397864 */ cpu->r[3] = cpu->r[31] + 0x00000108u;
|
|
/* 02397864 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02397868 */ _t109 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397868 */ _t110 = _t109 & 0x00000001u;
|
|
/* 02397868 */ if (_t110) goto L_0239786C; else goto L_0239787C;
|
|
L_0239786C: ; // 0x239786c
|
|
/* 0239786C */ cpu->r[3] = 0x00000008u;
|
|
/* 02397870 */ Gambit_fn_02801A78(cpu);
|
|
/* 02397874 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02397878 */ _t111 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397878 */ _t112 = _t111 & 0x00000001u;
|
|
/* 02397878 */ if (_t112) goto L_02397884; else goto L_0239787C;
|
|
L_0239787C: ; // 0x239787c
|
|
/* 0239787C */ _t113 = cpu->r[3] + 0x00000004u;
|
|
/* 0239787C */ rbrew_write32(cpu->mem, _t113, cpu->r[26]);
|
|
/* 02397880 */ _t114 = cpu->r[3] + 0x00000000u;
|
|
/* 02397880 */ rbrew_write32(cpu->mem, _t114, cpu->r[26]);
|
|
L_02397884: ; // 0x2397884
|
|
/* 02397884 */ cpu->r[30] = cpu->r[31] + 0x00000110u;
|
|
/* 02397884 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02397888 */ _t115 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397888 */ _t116 = _t115 & 0x00000001u;
|
|
/* 02397888 */ if (_t116) goto L_0239788C; else goto L_0239789C;
|
|
L_0239788C: ; // 0x239788c
|
|
/* 0239788C */ cpu->r[3] = 0x00000060u;
|
|
/* 02397890 */ Gambit_fn_02801A78(cpu);
|
|
/* 02397894 */ cpu->r[30] = cpu->r[3];
|
|
/* 02397894 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02397898 */ _t117 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397898 */ _t118 = _t117 & 0x00000001u;
|
|
/* 02397898 */ if (_t118) goto L_023978E8; else goto L_0239789C;
|
|
L_0239789C: ; // 0x239789c
|
|
/* 0239789C */ cpu->r[5] = 0x10080000u;
|
|
/* 023978A0 */ cpu->r[4] = cpu->r[31];
|
|
/* 023978A4 */ cpu->r[6] = 0x10080000u;
|
|
/* 023978A8 */ cpu->r[5] = cpu->r[5] + 0x00006CACu;
|
|
/* 023978AC */ cpu->r[8] = 0x00000000u;
|
|
/* 023978B0 */ cpu->r[6] = cpu->r[6] + 0x00006CC0u;
|
|
/* 023978B4 */ cpu->r[7] = cpu->r[5];
|
|
/* 023978B8 */ cpu->r[3] = cpu->r[30];
|
|
/* 023978BC */ Gambit_fn_027F84F0(cpu);
|
|
/* 023978C0 */ cpu->r[0] = 0x10110000u;
|
|
/* 023978C4 */ cpu->r[12] = 0x10080000u;
|
|
/* 023978C8 */ cpu->r[0] = cpu->r[0] + 0x00000A2Cu;
|
|
/* 023978CC */ _t119 = cpu->r[12] + 0x00006C9Cu;
|
|
/* 023978CC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t119);
|
|
/* 023978D0 */ cpu->r[6] = 0x10080000u;
|
|
/* 023978D4 */ _t120 = cpu->r[30] + 0x00000000u;
|
|
/* 023978D4 */ rbrew_write32(cpu->mem, _t120, cpu->r[0]);
|
|
/* 023978D8 */ _t121 = cpu->r[6] + 0x00006C98u;
|
|
/* 023978D8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t121);
|
|
/* 023978DC */ _t122 = cpu->r[30] + 0x0000005Cu;
|
|
/* 023978DC */ rbrew_write_f32(cpu->mem, _t122, cpu->f[13]);
|
|
/* 023978E0 */ _t123 = cpu->r[30] + 0x00000054u;
|
|
/* 023978E0 */ rbrew_write_f32(cpu->mem, _t123, cpu->f[0]);
|
|
/* 023978E4 */ _t124 = cpu->r[30] + 0x00000058u;
|
|
/* 023978E4 */ rbrew_write_f32(cpu->mem, _t124, cpu->f[0]);
|
|
L_023978E8: ; // 0x23978e8
|
|
/* 023978E8 */ cpu->r[26] = cpu->r[31] + 0x00000170u;
|
|
/* 023978E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 023978EC */ _t125 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023978EC */ _t126 = _t125 & 0x00000001u;
|
|
/* 023978EC */ if (_t126) goto L_023978F0; else goto L_02397900;
|
|
L_023978F0: ; // 0x23978f0
|
|
/* 023978F0 */ cpu->r[3] = 0x0000008Cu;
|
|
/* 023978F4 */ Gambit_fn_02801A78(cpu);
|
|
/* 023978F8 */ cpu->r[26] = cpu->r[3];
|
|
/* 023978F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 023978FC */ _t127 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023978FC */ _t128 = _t127 & 0x00000001u;
|
|
/* 023978FC */ if (_t128) goto L_02397988; else goto L_02397900;
|
|
L_02397900: ; // 0x2397900
|
|
/* 02397900 */ cpu->r[30] = cpu->r[26];
|
|
/* 02397900 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02397904 */ _t129 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397904 */ _t130 = _t129 & 0x00000001u;
|
|
/* 02397904 */ if (_t130) goto L_02397908; else goto L_02397918;
|
|
L_02397908: ; // 0x2397908
|
|
/* 02397908 */ cpu->r[3] = 0x0000008Cu;
|
|
/* 0239790C */ Gambit_fn_02801A78(cpu);
|
|
/* 02397910 */ cpu->r[30] = cpu->r[3];
|
|
/* 02397910 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02397914 */ _t131 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397914 */ _t132 = _t131 & 0x00000001u;
|
|
/* 02397914 */ if (_t132) goto L_0239797C; else goto L_02397918;
|
|
L_02397918: ; // 0x2397918
|
|
/* 02397918 */ cpu->r[3] = cpu->r[30];
|
|
/* 02397918 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239791C */ _t133 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239791C */ _t134 = _t133 & 0x00000001u;
|
|
/* 0239791C */ if (_t134) goto L_02397920; else goto L_0239794C;
|
|
L_02397920: ; // 0x2397920
|
|
/* 02397920 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02397924 */ Gambit_fn_02801A78(cpu);
|
|
/* 02397928 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239792C */ _t135 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239792C */ _t136 = _t135 & 0x00000001u;
|
|
/* 0239792C */ if (_t136) goto L_02397930; else goto L_0239794C;
|
|
L_02397930: ; // 0x2397930
|
|
/* 02397930 */ _t137 = cpu->r[27] + 0x00007399u;
|
|
/* 02397930 */ cpu->r[29] = rbrew_read8(cpu->mem, _t137);
|
|
/* 02397934 */ cpu->r[9] = 0x10080000u;
|
|
/* 02397938 */ cpu->r[9] = cpu->r[9] + 0x00006B30u;
|
|
/* 0239793C */ _t138 = cpu->r[30] + 0x00000000u;
|
|
/* 0239793C */ cpu->r[10] = rbrew_read32(cpu->mem, _t138);
|
|
/* 02397940 */ _t139 = cpu->r[30] + 0x00000004u;
|
|
/* 02397940 */ rbrew_write32(cpu->mem, _t139, cpu->r[9]);
|
|
/* 02397944 */ _t140 = cpu->r[10] + 0x00000000u;
|
|
/* 02397944 */ rbrew_write8(cpu->mem, _t140, (uint8_t)cpu->r[29]);
|
|
/* 02397948 */ goto L_0239797C;
|
|
L_0239794C: ; // 0x239794c
|
|
/* 0239794C */ cpu->r[7] = cpu->r[30] + 0x0000000Cu;
|
|
/* 02397950 */ _t141 = cpu->r[3] + 0x00000004u;
|
|
/* 02397950 */ rbrew_write32(cpu->mem, _t141, cpu->r[28]);
|
|
/* 02397954 */ cpu->r[8] = 0x00000080u;
|
|
/* 02397958 */ _t142 = cpu->r[3] + 0x00000000u;
|
|
/* 02397958 */ rbrew_write32(cpu->mem, _t142, cpu->r[7]);
|
|
/* 0239795C */ _t143 = cpu->r[3] + 0x00000008u;
|
|
/* 0239795C */ rbrew_write32(cpu->mem, _t143, cpu->r[8]);
|
|
/* 02397960 */ _t144 = cpu->r[27] + 0x00007399u;
|
|
/* 02397960 */ cpu->r[29] = rbrew_read8(cpu->mem, _t144);
|
|
/* 02397964 */ cpu->r[9] = 0x10080000u;
|
|
/* 02397968 */ _t145 = cpu->r[30] + 0x0000008Bu;
|
|
/* 02397968 */ rbrew_write8(cpu->mem, _t145, (uint8_t)cpu->r[29]);
|
|
/* 0239796C */ cpu->r[9] = cpu->r[9] + 0x00006B30u;
|
|
/* 02397970 */ _t146 = cpu->r[30] + 0x00000000u;
|
|
/* 02397970 */ cpu->r[10] = rbrew_read32(cpu->mem, _t146);
|
|
/* 02397974 */ _t147 = cpu->r[30] + 0x00000004u;
|
|
/* 02397974 */ rbrew_write32(cpu->mem, _t147, cpu->r[9]);
|
|
/* 02397978 */ _t148 = cpu->r[10] + 0x00000000u;
|
|
/* 02397978 */ rbrew_write8(cpu->mem, _t148, (uint8_t)cpu->r[29]);
|
|
L_0239797C: ; // 0x239797c
|
|
/* 0239797C */ cpu->r[0] = 0x10080000u;
|
|
/* 02397980 */ cpu->r[0] = cpu->r[0] + 0x00006B48u;
|
|
/* 02397984 */ _t149 = cpu->r[26] + 0x00000004u;
|
|
/* 02397984 */ rbrew_write32(cpu->mem, _t149, cpu->r[0]);
|
|
L_02397988: ; // 0x2397988
|
|
/* 02397988 */ cpu->r[3] = cpu->r[31];
|
|
/* 0239798C */ /* nop */
|
|
/* 02397990 */ _t150 = cpu->r[1] + 0x00000044u;
|
|
/* 02397990 */ cpu->r[0] = rbrew_read32(cpu->mem, _t150);
|
|
/* 02397994 */ cpu->lr = cpu->r[0];
|
|
/* 02397998 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 0239799C */ return;
|
|
}
|
|
|
|
// fn_023979A0 @ 0x23979a0
|
|
void Gambit_fn_023979A0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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;
|
|
|
|
L_023979A0: ; // 0x23979a0
|
|
/* 023979A0 */ cpu->r[0] = cpu->lr;
|
|
/* 023979A4 */ _t0 = cpu->r[1] + 0xFFFFFD80u;
|
|
/* 023979A4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 023979A4 */ cpu->r[1] = _t0;
|
|
/* 023979A8 */ _t1 = cpu->r[1] + 0x00000270u;
|
|
/* 023979A8 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 023979AC */ _t2 = cpu->r[1] + 0x00000260u;
|
|
/* 023979AC */ rbrew_write_f64(cpu->mem, _t2, cpu->f[30]);
|
|
/* 023979B0 */ /* nop */
|
|
/* 023979B4 */ _t3 = cpu->r[1] + 0x00000278u;
|
|
/* 023979B4 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 023979B8 */ /* nop */
|
|
/* 023979BC */ _t4 = cpu->r[1] + 0x00000268u;
|
|
/* 023979BC */ rbrew_write_f32(cpu->mem, _t4, cpu->f[30]);
|
|
/* 023979C0 */ _t5 = cpu->r[1] + 0x00000284u;
|
|
/* 023979C0 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 023979C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 023979C8 */ /* nop */
|
|
/* 023979CC */ cpu->r[27] = cpu->r[3];
|
|
/* 023979D0 */ cpu->r[28] = cpu->r[5];
|
|
/* 023979D4 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023979D4 */ _t7 = _t6 & 0x00000001u;
|
|
/* 023979D4 */ if (_t7) goto L_02397EE8; else goto L_023979D8;
|
|
L_023979D8: ; // 0x23979d8
|
|
/* 023979D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 023979DC */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023979DC */ _t9 = _t8 & 0x00000001u;
|
|
/* 023979DC */ if (_t9) goto L_02397EE8; else goto L_023979E0;
|
|
L_023979E0: ; // 0x23979e0
|
|
/* 023979E0 */ _t10 = cpu->r[4] + 0x000000A4u;
|
|
/* 023979E0 */ cpu->r[25] = rbrew_read32(cpu->mem, _t10);
|
|
/* 023979E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 023979E8 */ cpu->r[31] = 0x10110000u;
|
|
/* 023979EC */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023979EC */ _t12 = _t11 & 0x00000001u;
|
|
/* 023979EC */ if (_t12) goto L_023979FC; else goto L_023979F0;
|
|
L_023979F0: ; // 0x23979f0
|
|
/* 023979F0 */ _t13 = cpu->r[25] + 0x00000038u;
|
|
/* 023979F0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t13);
|
|
/* 023979F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 023979F8 */ _t14 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 023979F8 */ _t15 = _t14 & 0x00000001u;
|
|
/* 023979F8 */ if (_t15) goto L_02397AE8; else goto L_023979FC;
|
|
L_023979FC: ; // 0x23979fc
|
|
/* 023979FC */ cpu->r[5] = 0x10080000u;
|
|
/* 02397A00 */ cpu->r[3] = cpu->r[27] + 0x00000170u;
|
|
/* 02397A04 */ cpu->r[4] = 0x10080000u;
|
|
/* 02397A08 */ cpu->r[5] = cpu->r[5] + 0x00006D38u;
|
|
/* 02397A0C */ cpu->r[6] = cpu->r[28];
|
|
/* 02397A10 */ cpu->r[4] = cpu->r[4] + 0x00006D08u;
|
|
/* 02397A14 */ _t16 = cpu->r[31] + 0x00007399u;
|
|
/* 02397A14 */ cpu->r[31] = rbrew_read8(cpu->mem, _t16);
|
|
/* 02397A18 */ _t17 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 02397A18 */ _t18 = _t17 & 0x00000001u;
|
|
/* 02397A18 */ if (_t18) goto L_02397A1C; // else: addr-0 trap, fall-through
|
|
L_02397A1C: ; // 0x2397a1c
|
|
/* 02397A1C */ Gambit_fn_0282A5F4(cpu);
|
|
/* 02397A20 */ _t19 = cpu->r[27] + 0x00000174u;
|
|
/* 02397A20 */ cpu->r[8] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02397A24 */ _t20 = cpu->r[8] + 0x00000014u;
|
|
/* 02397A24 */ cpu->r[9] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02397A28 */ cpu->ctr = cpu->r[9];
|
|
/* 02397A2C */ cpu->r[3] = cpu->r[27] + 0x00000170u;
|
|
/* 02397A30 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02397A34 */ _t21 = cpu->r[27] + 0x00000170u;
|
|
/* 02397A34 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02397A38 */ cpu->r[10] = cpu->r[1] + 0x00000128u;
|
|
/* 02397A3C */ _t22 = cpu->r[1] + 0x00000227u;
|
|
/* 02397A3C */ rbrew_write8(cpu->mem, _t22, (uint8_t)cpu->r[31]);
|
|
/* 02397A40 */ cpu->r[4] = 0x10080000u;
|
|
/* 02397A44 */ _t23 = cpu->r[1] + 0x00000128u;
|
|
/* 02397A44 */ rbrew_write8(cpu->mem, _t23, (uint8_t)cpu->r[31]);
|
|
/* 02397A48 */ cpu->r[4] = cpu->r[4] + 0x00006D48u;
|
|
/* 02397A4C */ _t24 = cpu->r[1] + 0x0000011Cu;
|
|
/* 02397A4C */ rbrew_write32(cpu->mem, _t24, cpu->r[10]);
|
|
/* 02397A50 */ _t25 = cpu->r[27] + 0x000000ACu;
|
|
/* 02397A50 */ rbrew_write32(cpu->mem, _t25, cpu->r[0]);
|
|
/* 02397A54 */ cpu->r[29] = 0x10080000u;
|
|
/* 02397A58 */ cpu->r[30] = 0x00000100u;
|
|
/* 02397A5C */ cpu->r[29] = cpu->r[29] + 0x00006BD8u;
|
|
/* 02397A60 */ cpu->r[3] = cpu->r[1] + 0x0000011Cu;
|
|
/* 02397A64 */ _t26 = cpu->r[1] + 0x00000124u;
|
|
/* 02397A64 */ rbrew_write32(cpu->mem, _t26, cpu->r[30]);
|
|
/* 02397A68 */ cpu->r[5] = cpu->r[28];
|
|
/* 02397A6C */ _t27 = cpu->r[1] + 0x00000120u;
|
|
/* 02397A6C */ rbrew_write32(cpu->mem, _t27, cpu->r[29]);
|
|
/* 02397A70 */ _t28 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 02397A70 */ _t29 = _t28 & 0x00000001u;
|
|
/* 02397A70 */ if (_t29) goto L_02397A74; // else: addr-0 trap, fall-through
|
|
L_02397A74: ; // 0x2397a74
|
|
/* 02397A74 */ Gambit_fn_0282A5F4(cpu);
|
|
/* 02397A78 */ cpu->r[3] = cpu->r[27];
|
|
/* 02397A7C */ cpu->r[4] = cpu->r[1] + 0x0000011Cu;
|
|
/* 02397A80 */ cpu->r[5] = 0x00000000u;
|
|
/* 02397A84 */ Gambit_fn_027F85F4(cpu);
|
|
/* 02397A88 */ _t30 = cpu->r[1] + 0x0000011Bu;
|
|
/* 02397A88 */ rbrew_write8(cpu->mem, _t30, (uint8_t)cpu->r[31]);
|
|
/* 02397A8C */ cpu->r[11] = cpu->r[1] + 0x0000001Cu;
|
|
/* 02397A90 */ _t31 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02397A90 */ rbrew_write8(cpu->mem, _t31, (uint8_t)cpu->r[31]);
|
|
/* 02397A94 */ cpu->r[5] = cpu->r[28];
|
|
/* 02397A98 */ cpu->r[4] = 0x10080000u;
|
|
/* 02397A9C */ _t32 = cpu->r[1] + 0x00000010u;
|
|
/* 02397A9C */ rbrew_write32(cpu->mem, _t32, cpu->r[11]);
|
|
/* 02397AA0 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 02397AA4 */ _t33 = cpu->r[1] + 0x00000018u;
|
|
/* 02397AA4 */ rbrew_write32(cpu->mem, _t33, cpu->r[30]);
|
|
/* 02397AA8 */ cpu->r[4] = cpu->r[4] + 0x00006CFCu;
|
|
/* 02397AAC */ _t34 = cpu->r[1] + 0x00000014u;
|
|
/* 02397AAC */ rbrew_write32(cpu->mem, _t34, cpu->r[29]);
|
|
/* 02397AB0 */ _t35 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 02397AB0 */ _t36 = _t35 & 0x00000001u;
|
|
/* 02397AB0 */ if (_t36) goto L_02397AB4; // else: addr-0 trap, fall-through
|
|
L_02397AB4: ; // 0x2397ab4
|
|
/* 02397AB4 */ Gambit_fn_0282A5F4(cpu);
|
|
/* 02397AB8 */ _t37 = cpu->r[1] + 0x00000014u;
|
|
/* 02397AB8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02397ABC */ _t38 = cpu->r[4] + 0x00000014u;
|
|
/* 02397ABC */ cpu->r[7] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02397AC0 */ cpu->ctr = cpu->r[7];
|
|
/* 02397AC4 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 02397AC8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02397ACC */ cpu->r[4] = 0x10080000u;
|
|
/* 02397AD0 */ _t39 = cpu->r[1] + 0x00000010u;
|
|
/* 02397AD0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t39);
|
|
/* 02397AD4 */ cpu->r[3] = cpu->r[27] + 0x000000B0u;
|
|
/* 02397AD8 */ cpu->r[4] = cpu->r[4] + 0x00006CF8u;
|
|
/* 02397ADC */ _t40 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 02397ADC */ _t41 = _t40 & 0x00000001u;
|
|
/* 02397ADC */ if (_t41) goto L_02397AE0; // else: addr-0 trap, fall-through
|
|
L_02397AE0: ; // 0x2397ae0
|
|
/* 02397AE0 */ Gambit_fn_0282A5F4(cpu);
|
|
/* 02397AE4 */ goto L_02397EE8;
|
|
L_02397AE8: ; // 0x2397ae8
|
|
/* 02397AE8 */ cpu->r[6] = 0x00000004u;
|
|
/* 02397AEC */ cpu->r[5] = 0x00000000u;
|
|
/* 02397AF0 */ cpu->r[3] = cpu->r[27] + 0x000000FCu;
|
|
/* 02397AF4 */ Gambit_fn_028023CC(cpu);
|
|
/* 02397AF8 */ _t42 = cpu->r[25] + 0x00000038u;
|
|
/* 02397AF8 */ cpu->r[21] = rbrew_read32(cpu->mem, _t42);
|
|
/* 02397AFC */ cpu->r[29] = 0x10080000u;
|
|
/* 02397B00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], 0x00000000u);
|
|
/* 02397B04 */ cpu->r[29] = cpu->r[29] + 0x00006B00u;
|
|
/* 02397B08 */ _t43 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02397B08 */ _t44 = _t43 & 0x00000001u;
|
|
/* 02397B08 */ if (_t44) goto L_02397B24; else goto L_02397B0C;
|
|
L_02397B0C: ; // 0x2397b0c
|
|
/* 02397B0C */ _t45 = cpu->r[25] + 0x00000038u;
|
|
/* 02397B0C */ cpu->r[6] = rbrew_read32(cpu->mem, _t45);
|
|
/* 02397B10 */ cpu->r[21] = 0x00000000u;
|
|
/* 02397B14 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], cpu->r[6]);
|
|
/* 02397B18 */ _t46 = cpu->r[31] + 0x00007399u;
|
|
/* 02397B18 */ cpu->r[31] = rbrew_read8(cpu->mem, _t46);
|
|
/* 02397B1C */ _t47 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02397B1C */ _t48 = _t47 & 0x00000001u;
|
|
/* 02397B1C */ if (_t48) goto L_02397B20; else goto L_02397E04;
|
|
L_02397B20: ; // 0x2397b20
|
|
/* 02397B20 */ goto L_02397C0C;
|
|
L_02397B24: ; // 0x2397b24
|
|
/* 02397B24 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02397B28 */ _t49 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02397B28 */ cpu->r[3] = rbrew_read32(cpu->mem, _t49);
|
|
/* 02397B2C */ Gambit_fn_02826F20(cpu);
|
|
/* 02397B30 */ _t50 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02397B30 */ cpu->r[6] = rbrew_read32(cpu->mem, _t50);
|
|
/* 02397B34 */ _t51 = cpu->r[6] + 0x00000034u;
|
|
/* 02397B34 */ cpu->r[8] = rbrew_read32(cpu->mem, _t51);
|
|
/* 02397B38 */ cpu->ctr = cpu->r[8];
|
|
/* 02397B3C */ cpu->r[5] = 0x00000004u;
|
|
/* 02397B40 */ cpu->r[4] = (uint32_t)((int32_t)cpu->r[21] * (int32_t)0x0000002Cu);
|
|
/* 02397B44 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02397B48 */ cpu->r[20] = cpu->r[3];
|
|
/* 02397B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], 0x00000000u);
|
|
/* 02397B50 */ cpu->r[30] = cpu->r[21];
|
|
/* 02397B54 */ cpu->r[9] = 0x00000000u;
|
|
/* 02397B58 */ _t52 = cpu->r[31] + 0x00007399u;
|
|
/* 02397B58 */ cpu->r[31] = rbrew_read8(cpu->mem, _t52);
|
|
/* 02397B5C */ _t53 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02397B5C */ _t54 = _t53 & 0x00000001u;
|
|
/* 02397B5C */ if (_t54) goto L_02397B64; else goto L_02397B60;
|
|
L_02397B60: ; // 0x2397b60
|
|
/* 02397B60 */ cpu->r[30] = 0x00000001u;
|
|
L_02397B64: ; // 0x2397b64
|
|
/* 02397B64 */ cpu->r[24] = 0x10080000u;
|
|
/* 02397B68 */ cpu->r[22] = (uint32_t)((int32_t)cpu->r[9] * (int32_t)0x0000002Cu);
|
|
/* 02397B6C */ cpu->r[24] = cpu->r[24] + 0x00006B18u;
|
|
/* 02397B70 */ cpu->r[23] = 0x00000020u;
|
|
L_02397B74: ; // 0x2397b74
|
|
/* 02397B74 */ cpu->r[26] = cpu->r[20] + cpu->r[22];
|
|
/* 02397B74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 02397B78 */ _t55 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397B78 */ _t56 = _t55 & 0x00000001u;
|
|
/* 02397B78 */ if (_t56) goto L_02397BE0; else goto L_02397B7C;
|
|
L_02397B7C: ; // 0x2397b7c
|
|
/* 02397B7C */ cpu->r[19] = cpu->r[26];
|
|
/* 02397B7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[19], 0x00000000u);
|
|
/* 02397B80 */ _t57 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397B80 */ _t58 = _t57 & 0x00000001u;
|
|
/* 02397B80 */ if (_t58) goto L_02397B84; else goto L_02397B94;
|
|
L_02397B84: ; // 0x2397b84
|
|
/* 02397B84 */ cpu->r[3] = 0x0000002Cu;
|
|
/* 02397B88 */ Gambit_fn_02801A78(cpu);
|
|
/* 02397B8C */ cpu->r[19] = cpu->r[3];
|
|
/* 02397B8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[19], 0x00000000u);
|
|
/* 02397B90 */ _t59 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397B90 */ _t60 = _t59 & 0x00000001u;
|
|
/* 02397B90 */ if (_t60) goto L_02397BD4; else goto L_02397B94;
|
|
L_02397B94: ; // 0x2397b94
|
|
/* 02397B94 */ cpu->r[4] = cpu->r[19];
|
|
/* 02397B94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 02397B98 */ _t61 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397B98 */ _t62 = _t61 & 0x00000001u;
|
|
/* 02397B98 */ if (_t62) goto L_02397B9C; else goto L_02397BAC;
|
|
L_02397B9C: ; // 0x2397b9c
|
|
/* 02397B9C */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02397BA0 */ Gambit_fn_02801A78(cpu);
|
|
/* 02397BA4 */ cpu->r[4] = cpu->r[3];
|
|
/* 02397BA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 02397BA8 */ _t63 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397BA8 */ _t64 = _t63 & 0x00000001u;
|
|
/* 02397BA8 */ if (_t64) goto L_02397BC0; else goto L_02397BAC;
|
|
L_02397BAC: ; // 0x2397bac
|
|
/* 02397BAC */ _t65 = cpu->r[4] + 0x00000004u;
|
|
/* 02397BAC */ rbrew_write32(cpu->mem, _t65, cpu->r[24]);
|
|
/* 02397BB0 */ cpu->r[10] = cpu->r[19] + 0x0000000Cu;
|
|
/* 02397BB4 */ _t66 = cpu->r[4] + 0x00000008u;
|
|
/* 02397BB4 */ rbrew_write32(cpu->mem, _t66, cpu->r[23]);
|
|
/* 02397BB8 */ _t67 = cpu->r[4] + 0x00000000u;
|
|
/* 02397BB8 */ rbrew_write32(cpu->mem, _t67, cpu->r[10]);
|
|
/* 02397BBC */ _t68 = cpu->r[19] + 0x0000002Bu;
|
|
/* 02397BBC */ rbrew_write8(cpu->mem, _t68, (uint8_t)cpu->r[31]);
|
|
L_02397BC0: ; // 0x2397bc0
|
|
/* 02397BC0 */ cpu->r[0] = 0x10080000u;
|
|
/* 02397BC4 */ _t69 = cpu->r[19] + 0x00000000u;
|
|
/* 02397BC4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t69);
|
|
/* 02397BC8 */ cpu->r[0] = cpu->r[0] + 0x00006B60u;
|
|
/* 02397BCC */ _t70 = cpu->r[19] + 0x00000004u;
|
|
/* 02397BCC */ rbrew_write32(cpu->mem, _t70, cpu->r[0]);
|
|
/* 02397BD0 */ _t71 = cpu->r[12] + 0x00000000u;
|
|
/* 02397BD0 */ rbrew_write8(cpu->mem, _t71, (uint8_t)cpu->r[31]);
|
|
L_02397BD4: ; // 0x2397bd4
|
|
/* 02397BD4 */ cpu->r[5] = 0x10080000u;
|
|
/* 02397BD8 */ cpu->r[5] = cpu->r[5] + 0x00006B78u;
|
|
/* 02397BDC */ _t72 = cpu->r[26] + 0x00000004u;
|
|
/* 02397BDC */ rbrew_write32(cpu->mem, _t72, cpu->r[5]);
|
|
L_02397BE0: ; // 0x2397be0
|
|
/* 02397BE0 */ cpu->r[30] = cpu->r[30] + 0xFFFFFFFFu;
|
|
/* 02397BE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02397BE4 */ cpu->r[22] = cpu->r[22] + 0x0000002Cu;
|
|
/* 02397BE8 */ _t73 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397BE8 */ _t74 = _t73 & 0x00000001u;
|
|
/* 02397BE8 */ if (_t74) goto L_02397BEC; else goto L_02397B74;
|
|
L_02397BEC: ; // 0x2397bec
|
|
/* 02397BEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[20], 0x00000000u);
|
|
/* 02397BF0 */ _t75 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397BF0 */ _t76 = _t75 & 0x00000001u;
|
|
/* 02397BF0 */ if (_t76) goto L_02397BFC; else goto L_02397BF4;
|
|
L_02397BF4: ; // 0x2397bf4
|
|
/* 02397BF4 */ _t77 = cpu->r[27] + 0x0000010Cu;
|
|
/* 02397BF4 */ rbrew_write32(cpu->mem, _t77, cpu->r[20]);
|
|
/* 02397BF8 */ _t78 = cpu->r[27] + 0x00000108u;
|
|
/* 02397BF8 */ rbrew_write32(cpu->mem, _t78, cpu->r[21]);
|
|
L_02397BFC: ; // 0x2397bfc
|
|
/* 02397BFC */ _t79 = cpu->r[25] + 0x00000038u;
|
|
/* 02397BFC */ cpu->r[6] = rbrew_read32(cpu->mem, _t79);
|
|
/* 02397C00 */ cpu->r[21] = 0x00000000u;
|
|
/* 02397C04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], cpu->r[6]);
|
|
/* 02397C08 */ _t80 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02397C08 */ _t81 = _t80 & 0x00000001u;
|
|
/* 02397C08 */ if (_t81) goto L_02397C0C; else goto L_02397E04;
|
|
L_02397C0C: ; // 0x2397c0c
|
|
/* 02397C0C */ cpu->r[5] = 0x10080000u;
|
|
/* 02397C10 */ cpu->r[12] = 0x10080000u;
|
|
/* 02397C14 */ cpu->r[23] = cpu->r[31];
|
|
/* 02397C18 */ _t82 = cpu->r[5] + 0x00006CF4u;
|
|
/* 02397C18 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t82);
|
|
/* 02397C1C */ cpu->r[26] = 0x10110000u;
|
|
/* 02397C20 */ cpu->r[22] = 0x00000000u;
|
|
/* 02397C24 */ _t83 = cpu->r[12] + 0x00006C9Cu;
|
|
/* 02397C24 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t83);
|
|
/* 02397C28 */ cpu->r[26] = cpu->r[26] + 0x00000A2Cu;
|
|
/* 02397C2C */ cpu->r[24] = cpu->r[22];
|
|
L_02397C30: ; // 0x2397c30
|
|
/* 02397C30 */ _t84 = cpu->r[25] + 0x00000038u;
|
|
/* 02397C30 */ cpu->r[7] = rbrew_read32(cpu->mem, _t84);
|
|
/* 02397C34 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[21], cpu->r[7]);
|
|
/* 02397C38 */ _t85 = cpu->r[25] + 0x0000003Cu;
|
|
/* 02397C38 */ cpu->r[12] = rbrew_read32(cpu->mem, _t85);
|
|
/* 02397C3C */ _t86 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02397C3C */ _t87 = _t86 & 0x00000001u;
|
|
/* 02397C3C */ if (_t87) goto L_02397C40; else goto L_02397C44;
|
|
L_02397C40: ; // 0x2397c40
|
|
/* 02397C40 */ cpu->r[12] = cpu->r[12] + cpu->r[24];
|
|
L_02397C44: ; // 0x2397c44
|
|
/* 02397C44 */ _t88 = cpu->r[12] + 0x00000000u;
|
|
/* 02397C44 */ cpu->r[8] = rbrew_read32(cpu->mem, _t88);
|
|
/* 02397C48 */ _t89 = cpu->r[27] + 0x00000108u;
|
|
/* 02397C48 */ cpu->r[9] = rbrew_read32(cpu->mem, _t89);
|
|
/* 02397C4C */ _t90 = cpu->r[8] + 0x00000000u;
|
|
/* 02397C4C */ cpu->r[6] = rbrew_read32(cpu->mem, _t90);
|
|
/* 02397C50 */ _t91 = cpu->r[27] + 0x0000010Cu;
|
|
/* 02397C50 */ cpu->r[30] = rbrew_read32(cpu->mem, _t91);
|
|
/* 02397C54 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[21], cpu->r[9]);
|
|
/* 02397C58 */ _t92 = cpu->r[6] + 0x00000004u;
|
|
/* 02397C58 */ cpu->r[9] = rbrew_read32(cpu->mem, _t92);
|
|
/* 02397C5C */ _t93 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02397C5C */ _t94 = _t93 & 0x00000001u;
|
|
/* 02397C5C */ if (_t94) goto L_02397C60; else goto L_02397C64;
|
|
L_02397C60: ; // 0x2397c60
|
|
/* 02397C60 */ cpu->r[30] = cpu->r[30] + cpu->r[22];
|
|
L_02397C64: ; // 0x2397c64
|
|
/* 02397C64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02397C68 */ cpu->r[0] = 0x00000000u;
|
|
/* 02397C6C */ cpu->r[10] = cpu->r[6] + 0x00000004u;
|
|
/* 02397C70 */ _t95 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397C70 */ _t96 = _t95 & 0x00000001u;
|
|
/* 02397C70 */ if (_t96) goto L_02397C78; else goto L_02397C74;
|
|
L_02397C74: ; // 0x2397c74
|
|
/* 02397C74 */ cpu->r[0] = cpu->r[10] + cpu->r[9];
|
|
L_02397C78: ; // 0x2397c78
|
|
/* 02397C78 */ _t97 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02397C78 */ rbrew_write32(cpu->mem, _t97, cpu->r[29]);
|
|
/* 02397C7C */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02397C80 */ _t98 = cpu->r[1] + 0x00000008u;
|
|
/* 02397C80 */ rbrew_write32(cpu->mem, _t98, cpu->r[0]);
|
|
/* 02397C84 */ _t99 = cpu->r[30] + 0x00000000u;
|
|
/* 02397C84 */ cpu->r[19] = rbrew_read32(cpu->mem, _t99);
|
|
/* 02397C88 */ Gambit_fn_023980A4(cpu);
|
|
/* 02397C8C */ _t100 = cpu->r[1] + 0x00000008u;
|
|
/* 02397C8C */ cpu->r[12] = rbrew_read32(cpu->mem, _t100);
|
|
/* 02397C90 */ _t101 = cpu->r[12] + 0x00000000u;
|
|
/* 02397C90 */ cpu->r[11] = rbrew_read8(cpu->mem, _t101);
|
|
/* 02397C94 */ cpu->r[20] = 0x00000000u;
|
|
/* 02397C98 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[23]);
|
|
/* 02397C9C */ cpu->r[0] = 0x00080000u;
|
|
/* 02397CA0 */ _t102 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397CA0 */ _t103 = _t102 & 0x00000001u;
|
|
/* 02397CA0 */ if (_t103) goto L_02397CC8; else goto L_02397CA4;
|
|
L_02397CA4: ; // 0x2397ca4
|
|
/* 02397CA4 */ cpu->r[20] = cpu->r[20] + 0x00000001u;
|
|
/* 02397CA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[20], cpu->r[0]);
|
|
/* 02397CAC */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 02397CB0 */ _t104 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02397CB0 */ _t105 = _t104 & 0x00000001u;
|
|
/* 02397CB0 */ if (_t105) goto L_02397CC4; else goto L_02397CB4;
|
|
L_02397CB4: ; // 0x2397cb4
|
|
/* 02397CB4 */ _t106 = cpu->r[12] + 0x00000000u;
|
|
/* 02397CB4 */ cpu->r[4] = rbrew_read8(cpu->mem, _t106);
|
|
/* 02397CB8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[23]);
|
|
/* 02397CBC */ _t107 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397CBC */ _t108 = _t107 & 0x00000001u;
|
|
/* 02397CBC */ if (_t108) goto L_02397CC0; else goto L_02397CA4;
|
|
L_02397CC0: ; // 0x2397cc0
|
|
/* 02397CC0 */ goto L_02397CC8;
|
|
L_02397CC4: ; // 0x2397cc4
|
|
/* 02397CC4 */ cpu->r[20] = 0x00000000u;
|
|
L_02397CC8: ; // 0x2397cc8
|
|
/* 02397CC8 */ _t109 = cpu->r[30] + 0x00000008u;
|
|
/* 02397CC8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t109);
|
|
/* 02397CCC */ _t110 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02397CCC */ cpu->r[5] = rbrew_read32(cpu->mem, _t110);
|
|
/* 02397CD0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[20], cpu->r[11]);
|
|
/* 02397CD4 */ _t111 = cpu->r[5] + 0x00000014u;
|
|
/* 02397CD4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t111);
|
|
/* 02397CD8 */ _t112 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02397CD8 */ _t113 = _t112 & 0x00000001u;
|
|
/* 02397CD8 */ if (_t113) goto L_02397CE0; else goto L_02397CDC;
|
|
L_02397CDC: ; // 0x2397cdc
|
|
/* 02397CDC */ cpu->r[20] = cpu->r[11] + 0xFFFFFFFFu;
|
|
L_02397CE0: ; // 0x2397ce0
|
|
/* 02397CE0 */ cpu->ctr = cpu->r[7];
|
|
/* 02397CE4 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02397CE8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02397CEC */ _t114 = cpu->r[1] + 0x00000008u;
|
|
/* 02397CEC */ cpu->r[4] = rbrew_read32(cpu->mem, _t114);
|
|
/* 02397CF0 */ cpu->r[6] = 0x00000000u;
|
|
/* 02397CF4 */ cpu->r[5] = cpu->r[20];
|
|
/* 02397CF8 */ cpu->r[3] = cpu->r[19];
|
|
/* 02397CFC */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 02397D00 */ _t115 = cpu->r[19] + cpu->r[20];
|
|
/* 02397D00 */ rbrew_write8(cpu->mem, _t115, (uint8_t)cpu->r[23]);
|
|
/* 02397D04 */ _t116 = cpu->r[27] + 0x00000108u;
|
|
/* 02397D04 */ cpu->r[8] = rbrew_read32(cpu->mem, _t116);
|
|
/* 02397D08 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[21], cpu->r[8]);
|
|
/* 02397D0C */ _t117 = cpu->r[27] + 0x0000010Cu;
|
|
/* 02397D0C */ cpu->r[30] = rbrew_read32(cpu->mem, _t117);
|
|
/* 02397D10 */ _t118 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02397D10 */ _t119 = _t118 & 0x00000001u;
|
|
/* 02397D10 */ if (_t119) goto L_02397D14; else goto L_02397D18;
|
|
L_02397D14: ; // 0x2397d14
|
|
/* 02397D14 */ cpu->r[30] = cpu->r[30] + cpu->r[22];
|
|
L_02397D18: ; // 0x2397d18
|
|
/* 02397D18 */ _t120 = cpu->r[30] + 0x00000004u;
|
|
/* 02397D18 */ cpu->r[9] = rbrew_read32(cpu->mem, _t120);
|
|
/* 02397D1C */ _t121 = cpu->r[9] + 0x00000014u;
|
|
/* 02397D1C */ cpu->r[10] = rbrew_read32(cpu->mem, _t121);
|
|
/* 02397D20 */ cpu->ctr = cpu->r[10];
|
|
/* 02397D24 */ cpu->r[3] = cpu->r[30];
|
|
/* 02397D28 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02397D2C */ _t122 = cpu->r[27] + 0x00000108u;
|
|
/* 02397D2C */ cpu->r[11] = rbrew_read32(cpu->mem, _t122);
|
|
/* 02397D30 */ _t123 = cpu->r[30] + 0x00000000u;
|
|
/* 02397D30 */ cpu->r[18] = rbrew_read32(cpu->mem, _t123);
|
|
/* 02397D34 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[21], cpu->r[11]);
|
|
/* 02397D38 */ _t124 = cpu->r[27] + 0x0000010Cu;
|
|
/* 02397D38 */ cpu->r[30] = rbrew_read32(cpu->mem, _t124);
|
|
/* 02397D3C */ _t125 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02397D3C */ _t126 = _t125 & 0x00000001u;
|
|
/* 02397D3C */ if (_t126) goto L_02397D40; else goto L_02397D44;
|
|
L_02397D40: ; // 0x2397d40
|
|
/* 02397D40 */ cpu->r[30] = cpu->r[30] + cpu->r[22];
|
|
L_02397D44: ; // 0x2397d44
|
|
/* 02397D44 */ _t127 = cpu->r[30] + 0x00000004u;
|
|
/* 02397D44 */ cpu->r[4] = rbrew_read32(cpu->mem, _t127);
|
|
/* 02397D48 */ _t128 = cpu->r[4] + 0x00000014u;
|
|
/* 02397D48 */ cpu->r[5] = rbrew_read32(cpu->mem, _t128);
|
|
/* 02397D4C */ cpu->ctr = cpu->r[5];
|
|
/* 02397D50 */ cpu->r[3] = cpu->r[30];
|
|
/* 02397D54 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02397D58 */ _t129 = cpu->r[27] + 0x00000108u;
|
|
/* 02397D58 */ cpu->r[0] = rbrew_read32(cpu->mem, _t129);
|
|
/* 02397D5C */ _t130 = cpu->r[30] + 0x00000000u;
|
|
/* 02397D5C */ cpu->r[19] = rbrew_read32(cpu->mem, _t130);
|
|
/* 02397D60 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[21], cpu->r[0]);
|
|
/* 02397D64 */ _t131 = cpu->r[27] + 0x0000010Cu;
|
|
/* 02397D64 */ cpu->r[30] = rbrew_read32(cpu->mem, _t131);
|
|
/* 02397D68 */ _t132 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02397D68 */ _t133 = _t132 & 0x00000001u;
|
|
/* 02397D68 */ if (_t133) goto L_02397D6C; else goto L_02397D70;
|
|
L_02397D6C: ; // 0x2397d6c
|
|
/* 02397D6C */ cpu->r[30] = cpu->r[30] + cpu->r[22];
|
|
L_02397D70: ; // 0x2397d70
|
|
/* 02397D70 */ _t134 = cpu->r[30] + 0x00000004u;
|
|
/* 02397D70 */ cpu->r[7] = rbrew_read32(cpu->mem, _t134);
|
|
/* 02397D74 */ _t135 = cpu->r[7] + 0x00000014u;
|
|
/* 02397D74 */ cpu->r[0] = rbrew_read32(cpu->mem, _t135);
|
|
/* 02397D78 */ cpu->ctr = cpu->r[0];
|
|
/* 02397D7C */ cpu->r[3] = cpu->r[30];
|
|
/* 02397D80 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02397D84 */ cpu->r[3] = 0x00000060u;
|
|
/* 02397D88 */ _t136 = cpu->r[30] + 0x00000000u;
|
|
/* 02397D88 */ cpu->r[20] = rbrew_read32(cpu->mem, _t136);
|
|
/* 02397D8C */ Gambit_fn_02801A78(cpu);
|
|
/* 02397D90 */ cpu->r[30] = cpu->r[3];
|
|
/* 02397D90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02397D94 */ _t137 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397D94 */ _t138 = _t137 & 0x00000001u;
|
|
/* 02397D94 */ if (_t138) goto L_02397DC4; else goto L_02397D98;
|
|
L_02397D98: ; // 0x2397d98
|
|
/* 02397D98 */ cpu->r[8] = 0x00000000u;
|
|
/* 02397D9C */ cpu->r[7] = cpu->r[20];
|
|
/* 02397DA0 */ cpu->r[6] = cpu->r[19];
|
|
/* 02397DA4 */ cpu->r[5] = cpu->r[18];
|
|
/* 02397DA8 */ cpu->r[4] = cpu->r[27];
|
|
/* 02397DAC */ cpu->r[3] = cpu->r[30];
|
|
/* 02397DB0 */ Gambit_fn_027F84F0(cpu);
|
|
/* 02397DB4 */ _t139 = cpu->r[30] + 0x00000054u;
|
|
/* 02397DB4 */ rbrew_write_f32(cpu->mem, _t139, cpu->f[31]);
|
|
/* 02397DB8 */ _t140 = cpu->r[30] + 0x00000058u;
|
|
/* 02397DB8 */ rbrew_write_f32(cpu->mem, _t140, cpu->f[31]);
|
|
/* 02397DBC */ _t141 = cpu->r[30] + 0x00000000u;
|
|
/* 02397DBC */ rbrew_write32(cpu->mem, _t141, cpu->r[26]);
|
|
/* 02397DC0 */ _t142 = cpu->r[30] + 0x0000005Cu;
|
|
/* 02397DC0 */ rbrew_write_f32(cpu->mem, _t142, cpu->f[30]);
|
|
L_02397DC4: ; // 0x2397dc4
|
|
/* 02397DC4 */ _t143 = cpu->r[27] + 0x000000FCu;
|
|
/* 02397DC4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t143);
|
|
/* 02397DC8 */ _t144 = cpu->r[27] + 0x00000100u;
|
|
/* 02397DC8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t144);
|
|
/* 02397DCC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], cpu->r[0]);
|
|
/* 02397DD0 */ _t145 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02397DD0 */ _t146 = _t145 & 0x00000001u;
|
|
/* 02397DD0 */ if (_t146) goto L_02397DD4; else goto L_02397DEC;
|
|
L_02397DD4: ; // 0x2397dd4
|
|
/* 02397DD4 */ _t147 = cpu->r[27] + 0x00000104u;
|
|
/* 02397DD4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t147);
|
|
/* 02397DD8 */ cpu->r[12] = rbrew_rlwinm(cpu->r[4], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02397DDC */ _t148 = cpu->r[12] + cpu->r[0];
|
|
/* 02397DDC */ rbrew_write32(cpu->mem, _t148, cpu->r[30]);
|
|
/* 02397DE0 */ _t149 = cpu->r[27] + 0x000000FCu;
|
|
/* 02397DE0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t149);
|
|
/* 02397DE4 */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 02397DE8 */ _t150 = cpu->r[27] + 0x000000FCu;
|
|
/* 02397DE8 */ rbrew_write32(cpu->mem, _t150, cpu->r[6]);
|
|
L_02397DEC: ; // 0x2397dec
|
|
/* 02397DEC */ _t151 = cpu->r[25] + 0x00000038u;
|
|
/* 02397DEC */ cpu->r[0] = rbrew_read32(cpu->mem, _t151);
|
|
/* 02397DF0 */ cpu->r[21] = cpu->r[21] + 0x00000001u;
|
|
/* 02397DF4 */ cpu->r[24] = cpu->r[24] + 0x00000010u;
|
|
/* 02397DF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], cpu->r[0]);
|
|
/* 02397DFC */ cpu->r[22] = cpu->r[22] + 0x0000002Cu;
|
|
/* 02397E00 */ _t152 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02397E00 */ _t153 = _t152 & 0x00000001u;
|
|
/* 02397E00 */ if (_t153) goto L_02397C30; else goto L_02397E04;
|
|
L_02397E04: ; // 0x2397e04
|
|
/* 02397E04 */ cpu->r[4] = 0x10080000u;
|
|
/* 02397E08 */ cpu->r[5] = 0x10080000u;
|
|
/* 02397E0C */ cpu->r[6] = cpu->r[28];
|
|
/* 02397E10 */ cpu->r[4] = cpu->r[4] + 0x00006D08u;
|
|
/* 02397E14 */ cpu->r[5] = cpu->r[5] + 0x00006D38u;
|
|
/* 02397E18 */ cpu->r[3] = cpu->r[27] + 0x00000170u;
|
|
/* 02397E1C */ _t154 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 02397E1C */ _t155 = _t154 & 0x00000001u;
|
|
/* 02397E1C */ if (_t155) goto L_02397E20; // else: addr-0 trap, fall-through
|
|
L_02397E20: ; // 0x2397e20
|
|
/* 02397E20 */ Gambit_fn_0282A5F4(cpu);
|
|
/* 02397E24 */ _t156 = cpu->r[27] + 0x00000174u;
|
|
/* 02397E24 */ cpu->r[8] = rbrew_read32(cpu->mem, _t156);
|
|
/* 02397E28 */ _t157 = cpu->r[8] + 0x00000014u;
|
|
/* 02397E28 */ cpu->r[9] = rbrew_read32(cpu->mem, _t157);
|
|
/* 02397E2C */ cpu->ctr = cpu->r[9];
|
|
/* 02397E30 */ cpu->r[3] = cpu->r[27] + 0x00000170u;
|
|
/* 02397E34 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02397E38 */ _t158 = cpu->r[27] + 0x00000170u;
|
|
/* 02397E38 */ cpu->r[0] = rbrew_read32(cpu->mem, _t158);
|
|
/* 02397E3C */ cpu->r[10] = cpu->r[1] + 0x00000128u;
|
|
/* 02397E40 */ _t159 = cpu->r[1] + 0x00000227u;
|
|
/* 02397E40 */ rbrew_write8(cpu->mem, _t159, (uint8_t)cpu->r[31]);
|
|
/* 02397E44 */ cpu->r[4] = 0x10080000u;
|
|
/* 02397E48 */ _t160 = cpu->r[27] + 0x000000ACu;
|
|
/* 02397E48 */ rbrew_write32(cpu->mem, _t160, cpu->r[0]);
|
|
/* 02397E4C */ cpu->r[4] = cpu->r[4] + 0x00006D48u;
|
|
/* 02397E50 */ _t161 = cpu->r[1] + 0x0000011Cu;
|
|
/* 02397E50 */ rbrew_write32(cpu->mem, _t161, cpu->r[10]);
|
|
/* 02397E54 */ _t162 = cpu->r[1] + 0x00000128u;
|
|
/* 02397E54 */ rbrew_write8(cpu->mem, _t162, (uint8_t)cpu->r[31]);
|
|
/* 02397E58 */ cpu->r[29] = 0x10080000u;
|
|
/* 02397E5C */ cpu->r[29] = cpu->r[29] + 0x00006BD8u;
|
|
/* 02397E60 */ cpu->r[3] = cpu->r[1] + 0x0000011Cu;
|
|
/* 02397E64 */ cpu->r[30] = 0x00000100u;
|
|
/* 02397E68 */ _t163 = cpu->r[1] + 0x00000120u;
|
|
/* 02397E68 */ rbrew_write32(cpu->mem, _t163, cpu->r[29]);
|
|
/* 02397E6C */ cpu->r[5] = cpu->r[28];
|
|
/* 02397E70 */ _t164 = cpu->r[1] + 0x00000124u;
|
|
/* 02397E70 */ rbrew_write32(cpu->mem, _t164, cpu->r[30]);
|
|
/* 02397E74 */ _t165 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 02397E74 */ _t166 = _t165 & 0x00000001u;
|
|
/* 02397E74 */ if (_t166) goto L_02397E78; // else: addr-0 trap, fall-through
|
|
L_02397E78: ; // 0x2397e78
|
|
/* 02397E78 */ Gambit_fn_0282A5F4(cpu);
|
|
/* 02397E7C */ cpu->r[5] = 0x00000000u;
|
|
/* 02397E80 */ cpu->r[4] = cpu->r[1] + 0x0000011Cu;
|
|
/* 02397E84 */ cpu->r[3] = cpu->r[27];
|
|
/* 02397E88 */ Gambit_fn_027F85F4(cpu);
|
|
/* 02397E8C */ _t167 = cpu->r[1] + 0x0000011Bu;
|
|
/* 02397E8C */ rbrew_write8(cpu->mem, _t167, (uint8_t)cpu->r[31]);
|
|
/* 02397E90 */ cpu->r[11] = cpu->r[1] + 0x0000001Cu;
|
|
/* 02397E94 */ _t168 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02397E94 */ rbrew_write8(cpu->mem, _t168, (uint8_t)cpu->r[31]);
|
|
/* 02397E98 */ cpu->r[5] = cpu->r[28];
|
|
/* 02397E9C */ cpu->r[4] = 0x10080000u;
|
|
/* 02397EA0 */ _t169 = cpu->r[1] + 0x00000010u;
|
|
/* 02397EA0 */ rbrew_write32(cpu->mem, _t169, cpu->r[11]);
|
|
/* 02397EA4 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 02397EA8 */ _t170 = cpu->r[1] + 0x00000018u;
|
|
/* 02397EA8 */ rbrew_write32(cpu->mem, _t170, cpu->r[30]);
|
|
/* 02397EAC */ cpu->r[4] = cpu->r[4] + 0x00006CFCu;
|
|
/* 02397EB0 */ _t171 = cpu->r[1] + 0x00000014u;
|
|
/* 02397EB0 */ rbrew_write32(cpu->mem, _t171, cpu->r[29]);
|
|
/* 02397EB4 */ _t172 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 02397EB4 */ _t173 = _t172 & 0x00000001u;
|
|
/* 02397EB4 */ if (_t173) goto L_02397EB8; // else: addr-0 trap, fall-through
|
|
L_02397EB8: ; // 0x2397eb8
|
|
/* 02397EB8 */ Gambit_fn_0282A5F4(cpu);
|
|
/* 02397EBC */ _t174 = cpu->r[1] + 0x00000014u;
|
|
/* 02397EBC */ cpu->r[4] = rbrew_read32(cpu->mem, _t174);
|
|
/* 02397EC0 */ _t175 = cpu->r[4] + 0x00000014u;
|
|
/* 02397EC0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t175);
|
|
/* 02397EC4 */ cpu->ctr = cpu->r[7];
|
|
/* 02397EC8 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 02397ECC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02397ED0 */ cpu->r[4] = 0x10080000u;
|
|
/* 02397ED4 */ _t176 = cpu->r[1] + 0x00000010u;
|
|
/* 02397ED4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t176);
|
|
/* 02397ED8 */ cpu->r[4] = cpu->r[4] + 0x00006CF8u;
|
|
/* 02397EDC */ cpu->r[3] = cpu->r[27] + 0x000000B0u;
|
|
/* 02397EE0 */ _t177 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 02397EE0 */ _t178 = _t177 & 0x00000001u;
|
|
/* 02397EE0 */ if (_t178) goto L_02397EE4; // else: addr-0 trap, fall-through
|
|
L_02397EE4: ; // 0x2397ee4
|
|
/* 02397EE4 */ Gambit_fn_0282A5F4(cpu);
|
|
L_02397EE8: ; // 0x2397ee8
|
|
/* 02397EE8 */ /* nop */
|
|
/* 02397EEC */ _t179 = cpu->r[1] + 0x00000268u;
|
|
/* 02397EEC */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t179);
|
|
/* 02397EF0 */ _t180 = cpu->r[1] + 0x00000278u;
|
|
/* 02397EF0 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t180);
|
|
/* 02397EF4 */ _t181 = cpu->r[1] + 0x00000260u;
|
|
/* 02397EF4 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t181);
|
|
/* 02397EF8 */ _t182 = cpu->r[1] + 0x00000270u;
|
|
/* 02397EF8 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t182);
|
|
/* 02397EFC */ _t183 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02397EFC */ _t184 = _t183 & 0x00000001u;
|
|
/* 02397EFC */ if (_t184) goto L_02397F00; // else: addr-0 trap, fall-through
|
|
L_02397F00: ; // 0x2397f00
|
|
/* 02397F00 */ _t185 = cpu->r[1] + 0x00000284u;
|
|
/* 02397F00 */ cpu->r[0] = rbrew_read32(cpu->mem, _t185);
|
|
/* 02397F04 */ cpu->lr = cpu->r[0];
|
|
/* 02397F08 */ cpu->r[1] = cpu->r[1] + 0x00000280u;
|
|
/* 02397F0C */ return;
|
|
}
|
|
|
|
// fn_023979A4 @ 0x23979a4
|
|
void Gambit_fn_023979A4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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;
|
|
|
|
L_023979A4: ; // 0x23979a4
|
|
/* 023979A4 */ _t0 = cpu->r[1] + 0xFFFFFD80u;
|
|
/* 023979A4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 023979A4 */ cpu->r[1] = _t0;
|
|
/* 023979A8 */ _t1 = cpu->r[1] + 0x00000270u;
|
|
/* 023979A8 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 023979AC */ _t2 = cpu->r[1] + 0x00000260u;
|
|
/* 023979AC */ rbrew_write_f64(cpu->mem, _t2, cpu->f[30]);
|
|
/* 023979B0 */ /* nop */
|
|
/* 023979B4 */ _t3 = cpu->r[1] + 0x00000278u;
|
|
/* 023979B4 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 023979B8 */ /* nop */
|
|
/* 023979BC */ _t4 = cpu->r[1] + 0x00000268u;
|
|
/* 023979BC */ rbrew_write_f32(cpu->mem, _t4, cpu->f[30]);
|
|
/* 023979C0 */ _t5 = cpu->r[1] + 0x00000284u;
|
|
/* 023979C0 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 023979C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 023979C8 */ /* nop */
|
|
/* 023979CC */ cpu->r[27] = cpu->r[3];
|
|
/* 023979D0 */ cpu->r[28] = cpu->r[5];
|
|
/* 023979D4 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023979D4 */ _t7 = _t6 & 0x00000001u;
|
|
/* 023979D4 */ if (_t7) goto L_02397EE8; else goto L_023979D8;
|
|
L_023979D8: ; // 0x23979d8
|
|
/* 023979D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 023979DC */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023979DC */ _t9 = _t8 & 0x00000001u;
|
|
/* 023979DC */ if (_t9) goto L_02397EE8; else goto L_023979E0;
|
|
L_023979E0: ; // 0x23979e0
|
|
/* 023979E0 */ _t10 = cpu->r[4] + 0x000000A4u;
|
|
/* 023979E0 */ cpu->r[25] = rbrew_read32(cpu->mem, _t10);
|
|
/* 023979E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 023979E8 */ cpu->r[31] = 0x10110000u;
|
|
/* 023979EC */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023979EC */ _t12 = _t11 & 0x00000001u;
|
|
/* 023979EC */ if (_t12) goto L_023979FC; else goto L_023979F0;
|
|
L_023979F0: ; // 0x23979f0
|
|
/* 023979F0 */ _t13 = cpu->r[25] + 0x00000038u;
|
|
/* 023979F0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t13);
|
|
/* 023979F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 023979F8 */ _t14 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 023979F8 */ _t15 = _t14 & 0x00000001u;
|
|
/* 023979F8 */ if (_t15) goto L_02397AE8; else goto L_023979FC;
|
|
L_023979FC: ; // 0x23979fc
|
|
/* 023979FC */ cpu->r[5] = 0x10080000u;
|
|
/* 02397A00 */ cpu->r[3] = cpu->r[27] + 0x00000170u;
|
|
/* 02397A04 */ cpu->r[4] = 0x10080000u;
|
|
/* 02397A08 */ cpu->r[5] = cpu->r[5] + 0x00006D38u;
|
|
/* 02397A0C */ cpu->r[6] = cpu->r[28];
|
|
/* 02397A10 */ cpu->r[4] = cpu->r[4] + 0x00006D08u;
|
|
/* 02397A14 */ _t16 = cpu->r[31] + 0x00007399u;
|
|
/* 02397A14 */ cpu->r[31] = rbrew_read8(cpu->mem, _t16);
|
|
/* 02397A18 */ _t17 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 02397A18 */ _t18 = _t17 & 0x00000001u;
|
|
/* 02397A18 */ if (_t18) goto L_02397A1C; // else: addr-0 trap, fall-through
|
|
L_02397A1C: ; // 0x2397a1c
|
|
/* 02397A1C */ Gambit_fn_0282A5F4(cpu);
|
|
/* 02397A20 */ _t19 = cpu->r[27] + 0x00000174u;
|
|
/* 02397A20 */ cpu->r[8] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02397A24 */ _t20 = cpu->r[8] + 0x00000014u;
|
|
/* 02397A24 */ cpu->r[9] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02397A28 */ cpu->ctr = cpu->r[9];
|
|
/* 02397A2C */ cpu->r[3] = cpu->r[27] + 0x00000170u;
|
|
/* 02397A30 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02397A34 */ _t21 = cpu->r[27] + 0x00000170u;
|
|
/* 02397A34 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02397A38 */ cpu->r[10] = cpu->r[1] + 0x00000128u;
|
|
/* 02397A3C */ _t22 = cpu->r[1] + 0x00000227u;
|
|
/* 02397A3C */ rbrew_write8(cpu->mem, _t22, (uint8_t)cpu->r[31]);
|
|
/* 02397A40 */ cpu->r[4] = 0x10080000u;
|
|
/* 02397A44 */ _t23 = cpu->r[1] + 0x00000128u;
|
|
/* 02397A44 */ rbrew_write8(cpu->mem, _t23, (uint8_t)cpu->r[31]);
|
|
/* 02397A48 */ cpu->r[4] = cpu->r[4] + 0x00006D48u;
|
|
/* 02397A4C */ _t24 = cpu->r[1] + 0x0000011Cu;
|
|
/* 02397A4C */ rbrew_write32(cpu->mem, _t24, cpu->r[10]);
|
|
/* 02397A50 */ _t25 = cpu->r[27] + 0x000000ACu;
|
|
/* 02397A50 */ rbrew_write32(cpu->mem, _t25, cpu->r[0]);
|
|
/* 02397A54 */ cpu->r[29] = 0x10080000u;
|
|
/* 02397A58 */ cpu->r[30] = 0x00000100u;
|
|
/* 02397A5C */ cpu->r[29] = cpu->r[29] + 0x00006BD8u;
|
|
/* 02397A60 */ cpu->r[3] = cpu->r[1] + 0x0000011Cu;
|
|
/* 02397A64 */ _t26 = cpu->r[1] + 0x00000124u;
|
|
/* 02397A64 */ rbrew_write32(cpu->mem, _t26, cpu->r[30]);
|
|
/* 02397A68 */ cpu->r[5] = cpu->r[28];
|
|
/* 02397A6C */ _t27 = cpu->r[1] + 0x00000120u;
|
|
/* 02397A6C */ rbrew_write32(cpu->mem, _t27, cpu->r[29]);
|
|
/* 02397A70 */ _t28 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 02397A70 */ _t29 = _t28 & 0x00000001u;
|
|
/* 02397A70 */ if (_t29) goto L_02397A74; // else: addr-0 trap, fall-through
|
|
L_02397A74: ; // 0x2397a74
|
|
/* 02397A74 */ Gambit_fn_0282A5F4(cpu);
|
|
/* 02397A78 */ cpu->r[3] = cpu->r[27];
|
|
/* 02397A7C */ cpu->r[4] = cpu->r[1] + 0x0000011Cu;
|
|
/* 02397A80 */ cpu->r[5] = 0x00000000u;
|
|
/* 02397A84 */ Gambit_fn_027F85F4(cpu);
|
|
/* 02397A88 */ _t30 = cpu->r[1] + 0x0000011Bu;
|
|
/* 02397A88 */ rbrew_write8(cpu->mem, _t30, (uint8_t)cpu->r[31]);
|
|
/* 02397A8C */ cpu->r[11] = cpu->r[1] + 0x0000001Cu;
|
|
/* 02397A90 */ _t31 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02397A90 */ rbrew_write8(cpu->mem, _t31, (uint8_t)cpu->r[31]);
|
|
/* 02397A94 */ cpu->r[5] = cpu->r[28];
|
|
/* 02397A98 */ cpu->r[4] = 0x10080000u;
|
|
/* 02397A9C */ _t32 = cpu->r[1] + 0x00000010u;
|
|
/* 02397A9C */ rbrew_write32(cpu->mem, _t32, cpu->r[11]);
|
|
/* 02397AA0 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 02397AA4 */ _t33 = cpu->r[1] + 0x00000018u;
|
|
/* 02397AA4 */ rbrew_write32(cpu->mem, _t33, cpu->r[30]);
|
|
/* 02397AA8 */ cpu->r[4] = cpu->r[4] + 0x00006CFCu;
|
|
/* 02397AAC */ _t34 = cpu->r[1] + 0x00000014u;
|
|
/* 02397AAC */ rbrew_write32(cpu->mem, _t34, cpu->r[29]);
|
|
/* 02397AB0 */ _t35 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 02397AB0 */ _t36 = _t35 & 0x00000001u;
|
|
/* 02397AB0 */ if (_t36) goto L_02397AB4; // else: addr-0 trap, fall-through
|
|
L_02397AB4: ; // 0x2397ab4
|
|
/* 02397AB4 */ Gambit_fn_0282A5F4(cpu);
|
|
/* 02397AB8 */ _t37 = cpu->r[1] + 0x00000014u;
|
|
/* 02397AB8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02397ABC */ _t38 = cpu->r[4] + 0x00000014u;
|
|
/* 02397ABC */ cpu->r[7] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02397AC0 */ cpu->ctr = cpu->r[7];
|
|
/* 02397AC4 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 02397AC8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02397ACC */ cpu->r[4] = 0x10080000u;
|
|
/* 02397AD0 */ _t39 = cpu->r[1] + 0x00000010u;
|
|
/* 02397AD0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t39);
|
|
/* 02397AD4 */ cpu->r[3] = cpu->r[27] + 0x000000B0u;
|
|
/* 02397AD8 */ cpu->r[4] = cpu->r[4] + 0x00006CF8u;
|
|
/* 02397ADC */ _t40 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 02397ADC */ _t41 = _t40 & 0x00000001u;
|
|
/* 02397ADC */ if (_t41) goto L_02397AE0; // else: addr-0 trap, fall-through
|
|
L_02397AE0: ; // 0x2397ae0
|
|
/* 02397AE0 */ Gambit_fn_0282A5F4(cpu);
|
|
/* 02397AE4 */ goto L_02397EE8;
|
|
L_02397AE8: ; // 0x2397ae8
|
|
/* 02397AE8 */ cpu->r[6] = 0x00000004u;
|
|
/* 02397AEC */ cpu->r[5] = 0x00000000u;
|
|
/* 02397AF0 */ cpu->r[3] = cpu->r[27] + 0x000000FCu;
|
|
/* 02397AF4 */ Gambit_fn_028023CC(cpu);
|
|
/* 02397AF8 */ _t42 = cpu->r[25] + 0x00000038u;
|
|
/* 02397AF8 */ cpu->r[21] = rbrew_read32(cpu->mem, _t42);
|
|
/* 02397AFC */ cpu->r[29] = 0x10080000u;
|
|
/* 02397B00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], 0x00000000u);
|
|
/* 02397B04 */ cpu->r[29] = cpu->r[29] + 0x00006B00u;
|
|
/* 02397B08 */ _t43 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02397B08 */ _t44 = _t43 & 0x00000001u;
|
|
/* 02397B08 */ if (_t44) goto L_02397B24; else goto L_02397B0C;
|
|
L_02397B0C: ; // 0x2397b0c
|
|
/* 02397B0C */ _t45 = cpu->r[25] + 0x00000038u;
|
|
/* 02397B0C */ cpu->r[6] = rbrew_read32(cpu->mem, _t45);
|
|
/* 02397B10 */ cpu->r[21] = 0x00000000u;
|
|
/* 02397B14 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], cpu->r[6]);
|
|
/* 02397B18 */ _t46 = cpu->r[31] + 0x00007399u;
|
|
/* 02397B18 */ cpu->r[31] = rbrew_read8(cpu->mem, _t46);
|
|
/* 02397B1C */ _t47 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02397B1C */ _t48 = _t47 & 0x00000001u;
|
|
/* 02397B1C */ if (_t48) goto L_02397B20; else goto L_02397E04;
|
|
L_02397B20: ; // 0x2397b20
|
|
/* 02397B20 */ goto L_02397C0C;
|
|
L_02397B24: ; // 0x2397b24
|
|
/* 02397B24 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02397B28 */ _t49 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02397B28 */ cpu->r[3] = rbrew_read32(cpu->mem, _t49);
|
|
/* 02397B2C */ Gambit_fn_02826F20(cpu);
|
|
/* 02397B30 */ _t50 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02397B30 */ cpu->r[6] = rbrew_read32(cpu->mem, _t50);
|
|
/* 02397B34 */ _t51 = cpu->r[6] + 0x00000034u;
|
|
/* 02397B34 */ cpu->r[8] = rbrew_read32(cpu->mem, _t51);
|
|
/* 02397B38 */ cpu->ctr = cpu->r[8];
|
|
/* 02397B3C */ cpu->r[5] = 0x00000004u;
|
|
/* 02397B40 */ cpu->r[4] = (uint32_t)((int32_t)cpu->r[21] * (int32_t)0x0000002Cu);
|
|
/* 02397B44 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02397B48 */ cpu->r[20] = cpu->r[3];
|
|
/* 02397B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], 0x00000000u);
|
|
/* 02397B50 */ cpu->r[30] = cpu->r[21];
|
|
/* 02397B54 */ cpu->r[9] = 0x00000000u;
|
|
/* 02397B58 */ _t52 = cpu->r[31] + 0x00007399u;
|
|
/* 02397B58 */ cpu->r[31] = rbrew_read8(cpu->mem, _t52);
|
|
/* 02397B5C */ _t53 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02397B5C */ _t54 = _t53 & 0x00000001u;
|
|
/* 02397B5C */ if (_t54) goto L_02397B64; else goto L_02397B60;
|
|
L_02397B60: ; // 0x2397b60
|
|
/* 02397B60 */ cpu->r[30] = 0x00000001u;
|
|
L_02397B64: ; // 0x2397b64
|
|
/* 02397B64 */ cpu->r[24] = 0x10080000u;
|
|
/* 02397B68 */ cpu->r[22] = (uint32_t)((int32_t)cpu->r[9] * (int32_t)0x0000002Cu);
|
|
/* 02397B6C */ cpu->r[24] = cpu->r[24] + 0x00006B18u;
|
|
/* 02397B70 */ cpu->r[23] = 0x00000020u;
|
|
L_02397B74: ; // 0x2397b74
|
|
/* 02397B74 */ cpu->r[26] = cpu->r[20] + cpu->r[22];
|
|
/* 02397B74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 02397B78 */ _t55 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397B78 */ _t56 = _t55 & 0x00000001u;
|
|
/* 02397B78 */ if (_t56) goto L_02397BE0; else goto L_02397B7C;
|
|
L_02397B7C: ; // 0x2397b7c
|
|
/* 02397B7C */ cpu->r[19] = cpu->r[26];
|
|
/* 02397B7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[19], 0x00000000u);
|
|
/* 02397B80 */ _t57 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397B80 */ _t58 = _t57 & 0x00000001u;
|
|
/* 02397B80 */ if (_t58) goto L_02397B84; else goto L_02397B94;
|
|
L_02397B84: ; // 0x2397b84
|
|
/* 02397B84 */ cpu->r[3] = 0x0000002Cu;
|
|
/* 02397B88 */ Gambit_fn_02801A78(cpu);
|
|
/* 02397B8C */ cpu->r[19] = cpu->r[3];
|
|
/* 02397B8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[19], 0x00000000u);
|
|
/* 02397B90 */ _t59 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397B90 */ _t60 = _t59 & 0x00000001u;
|
|
/* 02397B90 */ if (_t60) goto L_02397BD4; else goto L_02397B94;
|
|
L_02397B94: ; // 0x2397b94
|
|
/* 02397B94 */ cpu->r[4] = cpu->r[19];
|
|
/* 02397B94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 02397B98 */ _t61 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397B98 */ _t62 = _t61 & 0x00000001u;
|
|
/* 02397B98 */ if (_t62) goto L_02397B9C; else goto L_02397BAC;
|
|
L_02397B9C: ; // 0x2397b9c
|
|
/* 02397B9C */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02397BA0 */ Gambit_fn_02801A78(cpu);
|
|
/* 02397BA4 */ cpu->r[4] = cpu->r[3];
|
|
/* 02397BA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 02397BA8 */ _t63 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397BA8 */ _t64 = _t63 & 0x00000001u;
|
|
/* 02397BA8 */ if (_t64) goto L_02397BC0; else goto L_02397BAC;
|
|
L_02397BAC: ; // 0x2397bac
|
|
/* 02397BAC */ _t65 = cpu->r[4] + 0x00000004u;
|
|
/* 02397BAC */ rbrew_write32(cpu->mem, _t65, cpu->r[24]);
|
|
/* 02397BB0 */ cpu->r[10] = cpu->r[19] + 0x0000000Cu;
|
|
/* 02397BB4 */ _t66 = cpu->r[4] + 0x00000008u;
|
|
/* 02397BB4 */ rbrew_write32(cpu->mem, _t66, cpu->r[23]);
|
|
/* 02397BB8 */ _t67 = cpu->r[4] + 0x00000000u;
|
|
/* 02397BB8 */ rbrew_write32(cpu->mem, _t67, cpu->r[10]);
|
|
/* 02397BBC */ _t68 = cpu->r[19] + 0x0000002Bu;
|
|
/* 02397BBC */ rbrew_write8(cpu->mem, _t68, (uint8_t)cpu->r[31]);
|
|
L_02397BC0: ; // 0x2397bc0
|
|
/* 02397BC0 */ cpu->r[0] = 0x10080000u;
|
|
/* 02397BC4 */ _t69 = cpu->r[19] + 0x00000000u;
|
|
/* 02397BC4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t69);
|
|
/* 02397BC8 */ cpu->r[0] = cpu->r[0] + 0x00006B60u;
|
|
/* 02397BCC */ _t70 = cpu->r[19] + 0x00000004u;
|
|
/* 02397BCC */ rbrew_write32(cpu->mem, _t70, cpu->r[0]);
|
|
/* 02397BD0 */ _t71 = cpu->r[12] + 0x00000000u;
|
|
/* 02397BD0 */ rbrew_write8(cpu->mem, _t71, (uint8_t)cpu->r[31]);
|
|
L_02397BD4: ; // 0x2397bd4
|
|
/* 02397BD4 */ cpu->r[5] = 0x10080000u;
|
|
/* 02397BD8 */ cpu->r[5] = cpu->r[5] + 0x00006B78u;
|
|
/* 02397BDC */ _t72 = cpu->r[26] + 0x00000004u;
|
|
/* 02397BDC */ rbrew_write32(cpu->mem, _t72, cpu->r[5]);
|
|
L_02397BE0: ; // 0x2397be0
|
|
/* 02397BE0 */ cpu->r[30] = cpu->r[30] + 0xFFFFFFFFu;
|
|
/* 02397BE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02397BE4 */ cpu->r[22] = cpu->r[22] + 0x0000002Cu;
|
|
/* 02397BE8 */ _t73 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397BE8 */ _t74 = _t73 & 0x00000001u;
|
|
/* 02397BE8 */ if (_t74) goto L_02397BEC; else goto L_02397B74;
|
|
L_02397BEC: ; // 0x2397bec
|
|
/* 02397BEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[20], 0x00000000u);
|
|
/* 02397BF0 */ _t75 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397BF0 */ _t76 = _t75 & 0x00000001u;
|
|
/* 02397BF0 */ if (_t76) goto L_02397BFC; else goto L_02397BF4;
|
|
L_02397BF4: ; // 0x2397bf4
|
|
/* 02397BF4 */ _t77 = cpu->r[27] + 0x0000010Cu;
|
|
/* 02397BF4 */ rbrew_write32(cpu->mem, _t77, cpu->r[20]);
|
|
/* 02397BF8 */ _t78 = cpu->r[27] + 0x00000108u;
|
|
/* 02397BF8 */ rbrew_write32(cpu->mem, _t78, cpu->r[21]);
|
|
L_02397BFC: ; // 0x2397bfc
|
|
/* 02397BFC */ _t79 = cpu->r[25] + 0x00000038u;
|
|
/* 02397BFC */ cpu->r[6] = rbrew_read32(cpu->mem, _t79);
|
|
/* 02397C00 */ cpu->r[21] = 0x00000000u;
|
|
/* 02397C04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], cpu->r[6]);
|
|
/* 02397C08 */ _t80 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02397C08 */ _t81 = _t80 & 0x00000001u;
|
|
/* 02397C08 */ if (_t81) goto L_02397C0C; else goto L_02397E04;
|
|
L_02397C0C: ; // 0x2397c0c
|
|
/* 02397C0C */ cpu->r[5] = 0x10080000u;
|
|
/* 02397C10 */ cpu->r[12] = 0x10080000u;
|
|
/* 02397C14 */ cpu->r[23] = cpu->r[31];
|
|
/* 02397C18 */ _t82 = cpu->r[5] + 0x00006CF4u;
|
|
/* 02397C18 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t82);
|
|
/* 02397C1C */ cpu->r[26] = 0x10110000u;
|
|
/* 02397C20 */ cpu->r[22] = 0x00000000u;
|
|
/* 02397C24 */ _t83 = cpu->r[12] + 0x00006C9Cu;
|
|
/* 02397C24 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t83);
|
|
/* 02397C28 */ cpu->r[26] = cpu->r[26] + 0x00000A2Cu;
|
|
/* 02397C2C */ cpu->r[24] = cpu->r[22];
|
|
L_02397C30: ; // 0x2397c30
|
|
/* 02397C30 */ _t84 = cpu->r[25] + 0x00000038u;
|
|
/* 02397C30 */ cpu->r[7] = rbrew_read32(cpu->mem, _t84);
|
|
/* 02397C34 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[21], cpu->r[7]);
|
|
/* 02397C38 */ _t85 = cpu->r[25] + 0x0000003Cu;
|
|
/* 02397C38 */ cpu->r[12] = rbrew_read32(cpu->mem, _t85);
|
|
/* 02397C3C */ _t86 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02397C3C */ _t87 = _t86 & 0x00000001u;
|
|
/* 02397C3C */ if (_t87) goto L_02397C40; else goto L_02397C44;
|
|
L_02397C40: ; // 0x2397c40
|
|
/* 02397C40 */ cpu->r[12] = cpu->r[12] + cpu->r[24];
|
|
L_02397C44: ; // 0x2397c44
|
|
/* 02397C44 */ _t88 = cpu->r[12] + 0x00000000u;
|
|
/* 02397C44 */ cpu->r[8] = rbrew_read32(cpu->mem, _t88);
|
|
/* 02397C48 */ _t89 = cpu->r[27] + 0x00000108u;
|
|
/* 02397C48 */ cpu->r[9] = rbrew_read32(cpu->mem, _t89);
|
|
/* 02397C4C */ _t90 = cpu->r[8] + 0x00000000u;
|
|
/* 02397C4C */ cpu->r[6] = rbrew_read32(cpu->mem, _t90);
|
|
/* 02397C50 */ _t91 = cpu->r[27] + 0x0000010Cu;
|
|
/* 02397C50 */ cpu->r[30] = rbrew_read32(cpu->mem, _t91);
|
|
/* 02397C54 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[21], cpu->r[9]);
|
|
/* 02397C58 */ _t92 = cpu->r[6] + 0x00000004u;
|
|
/* 02397C58 */ cpu->r[9] = rbrew_read32(cpu->mem, _t92);
|
|
/* 02397C5C */ _t93 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02397C5C */ _t94 = _t93 & 0x00000001u;
|
|
/* 02397C5C */ if (_t94) goto L_02397C60; else goto L_02397C64;
|
|
L_02397C60: ; // 0x2397c60
|
|
/* 02397C60 */ cpu->r[30] = cpu->r[30] + cpu->r[22];
|
|
L_02397C64: ; // 0x2397c64
|
|
/* 02397C64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02397C68 */ cpu->r[0] = 0x00000000u;
|
|
/* 02397C6C */ cpu->r[10] = cpu->r[6] + 0x00000004u;
|
|
/* 02397C70 */ _t95 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397C70 */ _t96 = _t95 & 0x00000001u;
|
|
/* 02397C70 */ if (_t96) goto L_02397C78; else goto L_02397C74;
|
|
L_02397C74: ; // 0x2397c74
|
|
/* 02397C74 */ cpu->r[0] = cpu->r[10] + cpu->r[9];
|
|
L_02397C78: ; // 0x2397c78
|
|
/* 02397C78 */ _t97 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02397C78 */ rbrew_write32(cpu->mem, _t97, cpu->r[29]);
|
|
/* 02397C7C */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02397C80 */ _t98 = cpu->r[1] + 0x00000008u;
|
|
/* 02397C80 */ rbrew_write32(cpu->mem, _t98, cpu->r[0]);
|
|
/* 02397C84 */ _t99 = cpu->r[30] + 0x00000000u;
|
|
/* 02397C84 */ cpu->r[19] = rbrew_read32(cpu->mem, _t99);
|
|
/* 02397C88 */ Gambit_fn_023980A4(cpu);
|
|
/* 02397C8C */ _t100 = cpu->r[1] + 0x00000008u;
|
|
/* 02397C8C */ cpu->r[12] = rbrew_read32(cpu->mem, _t100);
|
|
/* 02397C90 */ _t101 = cpu->r[12] + 0x00000000u;
|
|
/* 02397C90 */ cpu->r[11] = rbrew_read8(cpu->mem, _t101);
|
|
/* 02397C94 */ cpu->r[20] = 0x00000000u;
|
|
/* 02397C98 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[23]);
|
|
/* 02397C9C */ cpu->r[0] = 0x00080000u;
|
|
/* 02397CA0 */ _t102 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397CA0 */ _t103 = _t102 & 0x00000001u;
|
|
/* 02397CA0 */ if (_t103) goto L_02397CC8; else goto L_02397CA4;
|
|
L_02397CA4: ; // 0x2397ca4
|
|
/* 02397CA4 */ cpu->r[20] = cpu->r[20] + 0x00000001u;
|
|
/* 02397CA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[20], cpu->r[0]);
|
|
/* 02397CAC */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 02397CB0 */ _t104 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02397CB0 */ _t105 = _t104 & 0x00000001u;
|
|
/* 02397CB0 */ if (_t105) goto L_02397CC4; else goto L_02397CB4;
|
|
L_02397CB4: ; // 0x2397cb4
|
|
/* 02397CB4 */ _t106 = cpu->r[12] + 0x00000000u;
|
|
/* 02397CB4 */ cpu->r[4] = rbrew_read8(cpu->mem, _t106);
|
|
/* 02397CB8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[23]);
|
|
/* 02397CBC */ _t107 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397CBC */ _t108 = _t107 & 0x00000001u;
|
|
/* 02397CBC */ if (_t108) goto L_02397CC0; else goto L_02397CA4;
|
|
L_02397CC0: ; // 0x2397cc0
|
|
/* 02397CC0 */ goto L_02397CC8;
|
|
L_02397CC4: ; // 0x2397cc4
|
|
/* 02397CC4 */ cpu->r[20] = 0x00000000u;
|
|
L_02397CC8: ; // 0x2397cc8
|
|
/* 02397CC8 */ _t109 = cpu->r[30] + 0x00000008u;
|
|
/* 02397CC8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t109);
|
|
/* 02397CCC */ _t110 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02397CCC */ cpu->r[5] = rbrew_read32(cpu->mem, _t110);
|
|
/* 02397CD0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[20], cpu->r[11]);
|
|
/* 02397CD4 */ _t111 = cpu->r[5] + 0x00000014u;
|
|
/* 02397CD4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t111);
|
|
/* 02397CD8 */ _t112 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02397CD8 */ _t113 = _t112 & 0x00000001u;
|
|
/* 02397CD8 */ if (_t113) goto L_02397CE0; else goto L_02397CDC;
|
|
L_02397CDC: ; // 0x2397cdc
|
|
/* 02397CDC */ cpu->r[20] = cpu->r[11] + 0xFFFFFFFFu;
|
|
L_02397CE0: ; // 0x2397ce0
|
|
/* 02397CE0 */ cpu->ctr = cpu->r[7];
|
|
/* 02397CE4 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02397CE8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02397CEC */ _t114 = cpu->r[1] + 0x00000008u;
|
|
/* 02397CEC */ cpu->r[4] = rbrew_read32(cpu->mem, _t114);
|
|
/* 02397CF0 */ cpu->r[6] = 0x00000000u;
|
|
/* 02397CF4 */ cpu->r[5] = cpu->r[20];
|
|
/* 02397CF8 */ cpu->r[3] = cpu->r[19];
|
|
/* 02397CFC */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 02397D00 */ _t115 = cpu->r[19] + cpu->r[20];
|
|
/* 02397D00 */ rbrew_write8(cpu->mem, _t115, (uint8_t)cpu->r[23]);
|
|
/* 02397D04 */ _t116 = cpu->r[27] + 0x00000108u;
|
|
/* 02397D04 */ cpu->r[8] = rbrew_read32(cpu->mem, _t116);
|
|
/* 02397D08 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[21], cpu->r[8]);
|
|
/* 02397D0C */ _t117 = cpu->r[27] + 0x0000010Cu;
|
|
/* 02397D0C */ cpu->r[30] = rbrew_read32(cpu->mem, _t117);
|
|
/* 02397D10 */ _t118 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02397D10 */ _t119 = _t118 & 0x00000001u;
|
|
/* 02397D10 */ if (_t119) goto L_02397D14; else goto L_02397D18;
|
|
L_02397D14: ; // 0x2397d14
|
|
/* 02397D14 */ cpu->r[30] = cpu->r[30] + cpu->r[22];
|
|
L_02397D18: ; // 0x2397d18
|
|
/* 02397D18 */ _t120 = cpu->r[30] + 0x00000004u;
|
|
/* 02397D18 */ cpu->r[9] = rbrew_read32(cpu->mem, _t120);
|
|
/* 02397D1C */ _t121 = cpu->r[9] + 0x00000014u;
|
|
/* 02397D1C */ cpu->r[10] = rbrew_read32(cpu->mem, _t121);
|
|
/* 02397D20 */ cpu->ctr = cpu->r[10];
|
|
/* 02397D24 */ cpu->r[3] = cpu->r[30];
|
|
/* 02397D28 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02397D2C */ _t122 = cpu->r[27] + 0x00000108u;
|
|
/* 02397D2C */ cpu->r[11] = rbrew_read32(cpu->mem, _t122);
|
|
/* 02397D30 */ _t123 = cpu->r[30] + 0x00000000u;
|
|
/* 02397D30 */ cpu->r[18] = rbrew_read32(cpu->mem, _t123);
|
|
/* 02397D34 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[21], cpu->r[11]);
|
|
/* 02397D38 */ _t124 = cpu->r[27] + 0x0000010Cu;
|
|
/* 02397D38 */ cpu->r[30] = rbrew_read32(cpu->mem, _t124);
|
|
/* 02397D3C */ _t125 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02397D3C */ _t126 = _t125 & 0x00000001u;
|
|
/* 02397D3C */ if (_t126) goto L_02397D40; else goto L_02397D44;
|
|
L_02397D40: ; // 0x2397d40
|
|
/* 02397D40 */ cpu->r[30] = cpu->r[30] + cpu->r[22];
|
|
L_02397D44: ; // 0x2397d44
|
|
/* 02397D44 */ _t127 = cpu->r[30] + 0x00000004u;
|
|
/* 02397D44 */ cpu->r[4] = rbrew_read32(cpu->mem, _t127);
|
|
/* 02397D48 */ _t128 = cpu->r[4] + 0x00000014u;
|
|
/* 02397D48 */ cpu->r[5] = rbrew_read32(cpu->mem, _t128);
|
|
/* 02397D4C */ cpu->ctr = cpu->r[5];
|
|
/* 02397D50 */ cpu->r[3] = cpu->r[30];
|
|
/* 02397D54 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02397D58 */ _t129 = cpu->r[27] + 0x00000108u;
|
|
/* 02397D58 */ cpu->r[0] = rbrew_read32(cpu->mem, _t129);
|
|
/* 02397D5C */ _t130 = cpu->r[30] + 0x00000000u;
|
|
/* 02397D5C */ cpu->r[19] = rbrew_read32(cpu->mem, _t130);
|
|
/* 02397D60 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[21], cpu->r[0]);
|
|
/* 02397D64 */ _t131 = cpu->r[27] + 0x0000010Cu;
|
|
/* 02397D64 */ cpu->r[30] = rbrew_read32(cpu->mem, _t131);
|
|
/* 02397D68 */ _t132 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02397D68 */ _t133 = _t132 & 0x00000001u;
|
|
/* 02397D68 */ if (_t133) goto L_02397D6C; else goto L_02397D70;
|
|
L_02397D6C: ; // 0x2397d6c
|
|
/* 02397D6C */ cpu->r[30] = cpu->r[30] + cpu->r[22];
|
|
L_02397D70: ; // 0x2397d70
|
|
/* 02397D70 */ _t134 = cpu->r[30] + 0x00000004u;
|
|
/* 02397D70 */ cpu->r[7] = rbrew_read32(cpu->mem, _t134);
|
|
/* 02397D74 */ _t135 = cpu->r[7] + 0x00000014u;
|
|
/* 02397D74 */ cpu->r[0] = rbrew_read32(cpu->mem, _t135);
|
|
/* 02397D78 */ cpu->ctr = cpu->r[0];
|
|
/* 02397D7C */ cpu->r[3] = cpu->r[30];
|
|
/* 02397D80 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02397D84 */ cpu->r[3] = 0x00000060u;
|
|
/* 02397D88 */ _t136 = cpu->r[30] + 0x00000000u;
|
|
/* 02397D88 */ cpu->r[20] = rbrew_read32(cpu->mem, _t136);
|
|
/* 02397D8C */ Gambit_fn_02801A78(cpu);
|
|
/* 02397D90 */ cpu->r[30] = cpu->r[3];
|
|
/* 02397D90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02397D94 */ _t137 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397D94 */ _t138 = _t137 & 0x00000001u;
|
|
/* 02397D94 */ if (_t138) goto L_02397DC4; else goto L_02397D98;
|
|
L_02397D98: ; // 0x2397d98
|
|
/* 02397D98 */ cpu->r[8] = 0x00000000u;
|
|
/* 02397D9C */ cpu->r[7] = cpu->r[20];
|
|
/* 02397DA0 */ cpu->r[6] = cpu->r[19];
|
|
/* 02397DA4 */ cpu->r[5] = cpu->r[18];
|
|
/* 02397DA8 */ cpu->r[4] = cpu->r[27];
|
|
/* 02397DAC */ cpu->r[3] = cpu->r[30];
|
|
/* 02397DB0 */ Gambit_fn_027F84F0(cpu);
|
|
/* 02397DB4 */ _t139 = cpu->r[30] + 0x00000054u;
|
|
/* 02397DB4 */ rbrew_write_f32(cpu->mem, _t139, cpu->f[31]);
|
|
/* 02397DB8 */ _t140 = cpu->r[30] + 0x00000058u;
|
|
/* 02397DB8 */ rbrew_write_f32(cpu->mem, _t140, cpu->f[31]);
|
|
/* 02397DBC */ _t141 = cpu->r[30] + 0x00000000u;
|
|
/* 02397DBC */ rbrew_write32(cpu->mem, _t141, cpu->r[26]);
|
|
/* 02397DC0 */ _t142 = cpu->r[30] + 0x0000005Cu;
|
|
/* 02397DC0 */ rbrew_write_f32(cpu->mem, _t142, cpu->f[30]);
|
|
L_02397DC4: ; // 0x2397dc4
|
|
/* 02397DC4 */ _t143 = cpu->r[27] + 0x000000FCu;
|
|
/* 02397DC4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t143);
|
|
/* 02397DC8 */ _t144 = cpu->r[27] + 0x00000100u;
|
|
/* 02397DC8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t144);
|
|
/* 02397DCC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], cpu->r[0]);
|
|
/* 02397DD0 */ _t145 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02397DD0 */ _t146 = _t145 & 0x00000001u;
|
|
/* 02397DD0 */ if (_t146) goto L_02397DD4; else goto L_02397DEC;
|
|
L_02397DD4: ; // 0x2397dd4
|
|
/* 02397DD4 */ _t147 = cpu->r[27] + 0x00000104u;
|
|
/* 02397DD4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t147);
|
|
/* 02397DD8 */ cpu->r[12] = rbrew_rlwinm(cpu->r[4], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02397DDC */ _t148 = cpu->r[12] + cpu->r[0];
|
|
/* 02397DDC */ rbrew_write32(cpu->mem, _t148, cpu->r[30]);
|
|
/* 02397DE0 */ _t149 = cpu->r[27] + 0x000000FCu;
|
|
/* 02397DE0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t149);
|
|
/* 02397DE4 */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 02397DE8 */ _t150 = cpu->r[27] + 0x000000FCu;
|
|
/* 02397DE8 */ rbrew_write32(cpu->mem, _t150, cpu->r[6]);
|
|
L_02397DEC: ; // 0x2397dec
|
|
/* 02397DEC */ _t151 = cpu->r[25] + 0x00000038u;
|
|
/* 02397DEC */ cpu->r[0] = rbrew_read32(cpu->mem, _t151);
|
|
/* 02397DF0 */ cpu->r[21] = cpu->r[21] + 0x00000001u;
|
|
/* 02397DF4 */ cpu->r[24] = cpu->r[24] + 0x00000010u;
|
|
/* 02397DF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], cpu->r[0]);
|
|
/* 02397DFC */ cpu->r[22] = cpu->r[22] + 0x0000002Cu;
|
|
/* 02397E00 */ _t152 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02397E00 */ _t153 = _t152 & 0x00000001u;
|
|
/* 02397E00 */ if (_t153) goto L_02397C30; else goto L_02397E04;
|
|
L_02397E04: ; // 0x2397e04
|
|
/* 02397E04 */ cpu->r[4] = 0x10080000u;
|
|
/* 02397E08 */ cpu->r[5] = 0x10080000u;
|
|
/* 02397E0C */ cpu->r[6] = cpu->r[28];
|
|
/* 02397E10 */ cpu->r[4] = cpu->r[4] + 0x00006D08u;
|
|
/* 02397E14 */ cpu->r[5] = cpu->r[5] + 0x00006D38u;
|
|
/* 02397E18 */ cpu->r[3] = cpu->r[27] + 0x00000170u;
|
|
/* 02397E1C */ _t154 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 02397E1C */ _t155 = _t154 & 0x00000001u;
|
|
/* 02397E1C */ if (_t155) goto L_02397E20; // else: addr-0 trap, fall-through
|
|
L_02397E20: ; // 0x2397e20
|
|
/* 02397E20 */ Gambit_fn_0282A5F4(cpu);
|
|
/* 02397E24 */ _t156 = cpu->r[27] + 0x00000174u;
|
|
/* 02397E24 */ cpu->r[8] = rbrew_read32(cpu->mem, _t156);
|
|
/* 02397E28 */ _t157 = cpu->r[8] + 0x00000014u;
|
|
/* 02397E28 */ cpu->r[9] = rbrew_read32(cpu->mem, _t157);
|
|
/* 02397E2C */ cpu->ctr = cpu->r[9];
|
|
/* 02397E30 */ cpu->r[3] = cpu->r[27] + 0x00000170u;
|
|
/* 02397E34 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02397E38 */ _t158 = cpu->r[27] + 0x00000170u;
|
|
/* 02397E38 */ cpu->r[0] = rbrew_read32(cpu->mem, _t158);
|
|
/* 02397E3C */ cpu->r[10] = cpu->r[1] + 0x00000128u;
|
|
/* 02397E40 */ _t159 = cpu->r[1] + 0x00000227u;
|
|
/* 02397E40 */ rbrew_write8(cpu->mem, _t159, (uint8_t)cpu->r[31]);
|
|
/* 02397E44 */ cpu->r[4] = 0x10080000u;
|
|
/* 02397E48 */ _t160 = cpu->r[27] + 0x000000ACu;
|
|
/* 02397E48 */ rbrew_write32(cpu->mem, _t160, cpu->r[0]);
|
|
/* 02397E4C */ cpu->r[4] = cpu->r[4] + 0x00006D48u;
|
|
/* 02397E50 */ _t161 = cpu->r[1] + 0x0000011Cu;
|
|
/* 02397E50 */ rbrew_write32(cpu->mem, _t161, cpu->r[10]);
|
|
/* 02397E54 */ _t162 = cpu->r[1] + 0x00000128u;
|
|
/* 02397E54 */ rbrew_write8(cpu->mem, _t162, (uint8_t)cpu->r[31]);
|
|
/* 02397E58 */ cpu->r[29] = 0x10080000u;
|
|
/* 02397E5C */ cpu->r[29] = cpu->r[29] + 0x00006BD8u;
|
|
/* 02397E60 */ cpu->r[3] = cpu->r[1] + 0x0000011Cu;
|
|
/* 02397E64 */ cpu->r[30] = 0x00000100u;
|
|
/* 02397E68 */ _t163 = cpu->r[1] + 0x00000120u;
|
|
/* 02397E68 */ rbrew_write32(cpu->mem, _t163, cpu->r[29]);
|
|
/* 02397E6C */ cpu->r[5] = cpu->r[28];
|
|
/* 02397E70 */ _t164 = cpu->r[1] + 0x00000124u;
|
|
/* 02397E70 */ rbrew_write32(cpu->mem, _t164, cpu->r[30]);
|
|
/* 02397E74 */ _t165 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 02397E74 */ _t166 = _t165 & 0x00000001u;
|
|
/* 02397E74 */ if (_t166) goto L_02397E78; // else: addr-0 trap, fall-through
|
|
L_02397E78: ; // 0x2397e78
|
|
/* 02397E78 */ Gambit_fn_0282A5F4(cpu);
|
|
/* 02397E7C */ cpu->r[5] = 0x00000000u;
|
|
/* 02397E80 */ cpu->r[4] = cpu->r[1] + 0x0000011Cu;
|
|
/* 02397E84 */ cpu->r[3] = cpu->r[27];
|
|
/* 02397E88 */ Gambit_fn_027F85F4(cpu);
|
|
/* 02397E8C */ _t167 = cpu->r[1] + 0x0000011Bu;
|
|
/* 02397E8C */ rbrew_write8(cpu->mem, _t167, (uint8_t)cpu->r[31]);
|
|
/* 02397E90 */ cpu->r[11] = cpu->r[1] + 0x0000001Cu;
|
|
/* 02397E94 */ _t168 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02397E94 */ rbrew_write8(cpu->mem, _t168, (uint8_t)cpu->r[31]);
|
|
/* 02397E98 */ cpu->r[5] = cpu->r[28];
|
|
/* 02397E9C */ cpu->r[4] = 0x10080000u;
|
|
/* 02397EA0 */ _t169 = cpu->r[1] + 0x00000010u;
|
|
/* 02397EA0 */ rbrew_write32(cpu->mem, _t169, cpu->r[11]);
|
|
/* 02397EA4 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 02397EA8 */ _t170 = cpu->r[1] + 0x00000018u;
|
|
/* 02397EA8 */ rbrew_write32(cpu->mem, _t170, cpu->r[30]);
|
|
/* 02397EAC */ cpu->r[4] = cpu->r[4] + 0x00006CFCu;
|
|
/* 02397EB0 */ _t171 = cpu->r[1] + 0x00000014u;
|
|
/* 02397EB0 */ rbrew_write32(cpu->mem, _t171, cpu->r[29]);
|
|
/* 02397EB4 */ _t172 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 02397EB4 */ _t173 = _t172 & 0x00000001u;
|
|
/* 02397EB4 */ if (_t173) goto L_02397EB8; // else: addr-0 trap, fall-through
|
|
L_02397EB8: ; // 0x2397eb8
|
|
/* 02397EB8 */ Gambit_fn_0282A5F4(cpu);
|
|
/* 02397EBC */ _t174 = cpu->r[1] + 0x00000014u;
|
|
/* 02397EBC */ cpu->r[4] = rbrew_read32(cpu->mem, _t174);
|
|
/* 02397EC0 */ _t175 = cpu->r[4] + 0x00000014u;
|
|
/* 02397EC0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t175);
|
|
/* 02397EC4 */ cpu->ctr = cpu->r[7];
|
|
/* 02397EC8 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 02397ECC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02397ED0 */ cpu->r[4] = 0x10080000u;
|
|
/* 02397ED4 */ _t176 = cpu->r[1] + 0x00000010u;
|
|
/* 02397ED4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t176);
|
|
/* 02397ED8 */ cpu->r[4] = cpu->r[4] + 0x00006CF8u;
|
|
/* 02397EDC */ cpu->r[3] = cpu->r[27] + 0x000000B0u;
|
|
/* 02397EE0 */ _t177 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 02397EE0 */ _t178 = _t177 & 0x00000001u;
|
|
/* 02397EE0 */ if (_t178) goto L_02397EE4; // else: addr-0 trap, fall-through
|
|
L_02397EE4: ; // 0x2397ee4
|
|
/* 02397EE4 */ Gambit_fn_0282A5F4(cpu);
|
|
L_02397EE8: ; // 0x2397ee8
|
|
/* 02397EE8 */ /* nop */
|
|
/* 02397EEC */ _t179 = cpu->r[1] + 0x00000268u;
|
|
/* 02397EEC */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t179);
|
|
/* 02397EF0 */ _t180 = cpu->r[1] + 0x00000278u;
|
|
/* 02397EF0 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t180);
|
|
/* 02397EF4 */ _t181 = cpu->r[1] + 0x00000260u;
|
|
/* 02397EF4 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t181);
|
|
/* 02397EF8 */ _t182 = cpu->r[1] + 0x00000270u;
|
|
/* 02397EF8 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t182);
|
|
/* 02397EFC */ _t183 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02397EFC */ _t184 = _t183 & 0x00000001u;
|
|
/* 02397EFC */ if (_t184) goto L_02397F00; // else: addr-0 trap, fall-through
|
|
L_02397F00: ; // 0x2397f00
|
|
/* 02397F00 */ _t185 = cpu->r[1] + 0x00000284u;
|
|
/* 02397F00 */ cpu->r[0] = rbrew_read32(cpu->mem, _t185);
|
|
/* 02397F04 */ cpu->lr = cpu->r[0];
|
|
/* 02397F08 */ cpu->r[1] = cpu->r[1] + 0x00000280u;
|
|
/* 02397F0C */ return;
|
|
}
|
|
|
|
// fn_02397F10 @ 0x2397f10
|
|
void Gambit_fn_02397F10(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56;
|
|
|
|
L_02397F10: ; // 0x2397f10
|
|
/* 02397F10 */ cpu->r[0] = cpu->lr;
|
|
/* 02397F14 */ _t0 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 02397F14 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02397F14 */ cpu->r[1] = _t0;
|
|
/* 02397F18 */ _t1 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02397F18 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02397F1C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 02397F20 */ /* nop */
|
|
/* 02397F24 */ cpu->r[28] = cpu->r[3];
|
|
/* 02397F28 */ cpu->r[29] = cpu->r[5];
|
|
/* 02397F2C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397F2C */ _t3 = _t2 & 0x00000001u;
|
|
/* 02397F2C */ if (_t3) goto L_02398078; else goto L_02397F30;
|
|
L_02397F30: ; // 0x2397f30
|
|
/* 02397F30 */ _t4 = cpu->r[28] + 0x00000104u;
|
|
/* 02397F30 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02397F34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02397F38 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397F38 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02397F38 */ if (_t6) goto L_02398078; else goto L_02397F3C;
|
|
L_02397F3C: ; // 0x2397f3c
|
|
/* 02397F3C */ _t7 = cpu->r[28] + 0x00000108u;
|
|
/* 02397F3C */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02397F40 */ cpu->r[26] = 0x00000000u;
|
|
/* 02397F44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], cpu->r[0]);
|
|
/* 02397F48 */ _t8 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02397F48 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02397F48 */ if (_t9) goto L_02397F4C; else goto L_02398078;
|
|
L_02397F4C: ; // 0x2397f4c
|
|
/* 02397F4C */ cpu->r[31] = 0x10110000u;
|
|
/* 02397F50 */ cpu->r[24] = 0x00000000u;
|
|
/* 02397F54 */ cpu->r[27] = 0x10080000u;
|
|
/* 02397F58 */ cpu->r[23] = 0x00080000u;
|
|
/* 02397F5C */ cpu->r[25] = cpu->r[24];
|
|
/* 02397F60 */ _t10 = cpu->r[31] + 0x00007399u;
|
|
/* 02397F60 */ cpu->r[31] = rbrew_read8(cpu->mem, _t10);
|
|
/* 02397F64 */ cpu->r[23] = cpu->r[23] + 0x00000001u;
|
|
/* 02397F68 */ cpu->r[27] = cpu->r[27] + 0x00006B00u;
|
|
L_02397F6C: ; // 0x2397f6c
|
|
/* 02397F6C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], cpu->r[0]);
|
|
/* 02397F70 */ _t11 = cpu->r[28] + 0x0000010Cu;
|
|
/* 02397F70 */ cpu->r[30] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02397F74 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02397F74 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02397F74 */ if (_t13) goto L_02397F78; else goto L_02397F7C;
|
|
L_02397F78: ; // 0x2397f78
|
|
/* 02397F78 */ cpu->r[30] = cpu->r[30] + cpu->r[24];
|
|
L_02397F7C: ; // 0x2397f7c
|
|
/* 02397F7C */ _t14 = cpu->r[1] + 0x00000008u;
|
|
/* 02397F7C */ rbrew_write32(cpu->mem, _t14, cpu->r[29]);
|
|
/* 02397F80 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02397F80 */ rbrew_write32(cpu->mem, _t15, cpu->r[27]);
|
|
/* 02397F84 */ _t16 = cpu->r[30] + 0x00000004u;
|
|
/* 02397F84 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02397F88 */ _t17 = cpu->r[12] + 0x00000014u;
|
|
/* 02397F88 */ cpu->r[4] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02397F8C */ cpu->ctr = cpu->r[4];
|
|
/* 02397F90 */ cpu->r[3] = cpu->r[30];
|
|
/* 02397F94 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02397F98 */ _t18 = cpu->r[30] + 0x00000004u;
|
|
/* 02397F98 */ cpu->r[11] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02397F9C */ _t19 = cpu->r[11] + 0x00000014u;
|
|
/* 02397F9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02397FA0 */ cpu->ctr = cpu->r[0];
|
|
/* 02397FA4 */ cpu->r[3] = cpu->r[30];
|
|
/* 02397FA8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02397FAC */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02397FAC */ cpu->r[5] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02397FB0 */ _t21 = cpu->r[5] + 0x00000014u;
|
|
/* 02397FB0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02397FB4 */ cpu->ctr = cpu->r[6];
|
|
/* 02397FB8 */ _t22 = cpu->r[30] + 0x00000000u;
|
|
/* 02397FB8 */ cpu->r[22] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02397FBC */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02397FC0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02397FC4 */ _t23 = cpu->r[1] + 0x00000008u;
|
|
/* 02397FC4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02397FC8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[22], cpu->r[7]);
|
|
/* 02397FCC */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397FCC */ _t25 = _t24 & 0x00000001u;
|
|
/* 02397FCC */ if (_t25) goto L_02398004; else goto L_02397FD0;
|
|
L_02397FD0: ; // 0x2397fd0
|
|
/* 02397FD0 */ _t26 = cpu->r[30] + 0x00000000u;
|
|
/* 02397FD0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02397FD4 */ _t27 = cpu->r[1] + 0x00000008u;
|
|
/* 02397FD4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02397FD8 */ cpu->r[5] = cpu->r[5] + 0xFFFFFFFFu;
|
|
/* 02397FDC */ cpu->ctr = cpu->r[23];
|
|
/* 02397FE0 */ cpu->r[12] = cpu->r[12] + 0xFFFFFFFFu;
|
|
L_02397FE4: ; // 0x2397fe4
|
|
/* 02397FE4 */ _t28 = cpu->r[5] + 0x00000001u;
|
|
/* 02397FE4 */ cpu->r[6] = rbrew_read8(cpu->mem, _t28);
|
|
/* 02397FE4 */ cpu->r[5] = _t28;
|
|
/* 02397FE8 */ _t29 = cpu->r[12] + 0x00000001u;
|
|
/* 02397FE8 */ cpu->r[8] = rbrew_read8(cpu->mem, _t29);
|
|
/* 02397FE8 */ cpu->r[12] = _t29;
|
|
/* 02397FEC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[8]);
|
|
/* 02397FF0 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397FF0 */ _t31 = _t30 & 0x00000001u;
|
|
/* 02397FF0 */ if (_t31) goto L_02397FF4; else goto L_02398034;
|
|
L_02397FF4: ; // 0x2397ff4
|
|
/* 02397FF4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[31]);
|
|
/* 02397FF8 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397FF8 */ _t33 = _t32 & 0x00000001u;
|
|
/* 02397FF8 */ if (_t33) goto L_02398004; else goto L_02397FFC;
|
|
L_02397FFC: ; // 0x2397ffc
|
|
/* 02397FFC */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02397FFC */ _t34 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02397FFC */ _t35 = _t34 >> (0x00000002u & 31u);
|
|
/* 02397FFC */ _t36 = _t35 & 0x00000001u;
|
|
/* 02397FFC */ if (_t36) goto L_02397FE4; else goto L_02398000;
|
|
L_02398000: ; // 0x2398000
|
|
/* 02398000 */ goto L_02398034;
|
|
L_02398004: ; // 0x2398004
|
|
/* 02398004 */ _t37 = cpu->r[28] + 0x000000FCu;
|
|
/* 02398004 */ cpu->r[0] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02398008 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], cpu->r[0]);
|
|
/* 0239800C */ cpu->r[9] = 0x00000000u;
|
|
/* 02398010 */ _t38 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02398010 */ _t39 = _t38 & 0x00000001u;
|
|
/* 02398010 */ if (_t39) goto L_02398014; else goto L_02398064;
|
|
L_02398014: ; // 0x2398014
|
|
/* 02398014 */ _t40 = cpu->r[28] + 0x00000104u;
|
|
/* 02398014 */ cpu->r[10] = rbrew_read32(cpu->mem, _t40);
|
|
/* 02398018 */ cpu->r[11] = 0x10080000u;
|
|
/* 0239801C */ _t41 = cpu->r[10] + cpu->r[25];
|
|
/* 0239801C */ cpu->r[9] = rbrew_read32(cpu->mem, _t41);
|
|
/* 02398020 */ _t42 = cpu->r[11] + 0x00006C98u;
|
|
/* 02398020 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 02398024 */ _t43 = cpu->r[9] + 0x00000054u;
|
|
/* 02398024 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t43);
|
|
/* 02398028 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[0]);
|
|
/* 0239802C */ _t44 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0239802C */ _t45 = _t44 & 0x00000001u;
|
|
/* 0239802C */ if (_t45) goto L_02398078; else goto L_02398030;
|
|
L_02398030: ; // 0x2398030
|
|
/* 02398030 */ goto L_0239807C;
|
|
L_02398034: ; // 0x2398034
|
|
/* 02398034 */ _t46 = cpu->r[28] + 0x00000108u;
|
|
/* 02398034 */ cpu->r[0] = rbrew_read32(cpu->mem, _t46);
|
|
/* 02398038 */ cpu->r[26] = cpu->r[26] + 0x00000001u;
|
|
/* 0239803C */ cpu->r[25] = cpu->r[25] + 0x00000004u;
|
|
/* 02398040 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], cpu->r[0]);
|
|
/* 02398044 */ cpu->r[24] = cpu->r[24] + 0x0000002Cu;
|
|
/* 02398048 */ _t47 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02398048 */ _t48 = _t47 & 0x00000001u;
|
|
/* 02398048 */ if (_t48) goto L_02397F6C; else goto L_0239804C;
|
|
L_0239804C: ; // 0x239804c
|
|
/* 0239804C */ _t49 = cpu->r[28] + 0x00000164u;
|
|
/* 0239804C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t49);
|
|
/* 02398050 */ /* nop */
|
|
/* 02398054 */ _t50 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02398054 */ cpu->r[0] = rbrew_read32(cpu->mem, _t50);
|
|
/* 02398058 */ cpu->lr = cpu->r[0];
|
|
/* 0239805C */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 02398060 */ return;
|
|
L_02398064: ; // 0x2398064
|
|
/* 02398064 */ cpu->r[11] = 0x10080000u;
|
|
/* 02398068 */ _t51 = cpu->r[9] + 0x00000054u;
|
|
/* 02398068 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t51);
|
|
/* 0239806C */ _t52 = cpu->r[11] + 0x00006C98u;
|
|
/* 0239806C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 02398070 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[0]);
|
|
/* 02398074 */ _t53 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02398074 */ _t54 = _t53 & 0x00000001u;
|
|
/* 02398074 */ if (_t54) goto L_02398078; else goto L_0239807C;
|
|
L_02398078: ; // 0x2398078
|
|
/* 02398078 */ _t55 = cpu->r[28] + 0x00000164u;
|
|
/* 02398078 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t55);
|
|
L_0239807C: ; // 0x239807c
|
|
/* 0239807C */ /* nop */
|
|
/* 02398080 */ _t56 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02398080 */ cpu->r[0] = rbrew_read32(cpu->mem, _t56);
|
|
/* 02398084 */ cpu->lr = cpu->r[0];
|
|
/* 02398088 */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 0239808C */ return;
|
|
}
|
|
|
|
// fn_02397F14 @ 0x2397f14
|
|
void Gambit_fn_02397F14(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56;
|
|
|
|
L_02397F14: ; // 0x2397f14
|
|
/* 02397F14 */ _t0 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 02397F14 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02397F14 */ cpu->r[1] = _t0;
|
|
/* 02397F18 */ _t1 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02397F18 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02397F1C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 02397F20 */ /* nop */
|
|
/* 02397F24 */ cpu->r[28] = cpu->r[3];
|
|
/* 02397F28 */ cpu->r[29] = cpu->r[5];
|
|
/* 02397F2C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397F2C */ _t3 = _t2 & 0x00000001u;
|
|
/* 02397F2C */ if (_t3) goto L_02398078; else goto L_02397F30;
|
|
L_02397F30: ; // 0x2397f30
|
|
/* 02397F30 */ _t4 = cpu->r[28] + 0x00000104u;
|
|
/* 02397F30 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02397F34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02397F38 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397F38 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02397F38 */ if (_t6) goto L_02398078; else goto L_02397F3C;
|
|
L_02397F3C: ; // 0x2397f3c
|
|
/* 02397F3C */ _t7 = cpu->r[28] + 0x00000108u;
|
|
/* 02397F3C */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02397F40 */ cpu->r[26] = 0x00000000u;
|
|
/* 02397F44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], cpu->r[0]);
|
|
/* 02397F48 */ _t8 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02397F48 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02397F48 */ if (_t9) goto L_02397F4C; else goto L_02398078;
|
|
L_02397F4C: ; // 0x2397f4c
|
|
/* 02397F4C */ cpu->r[31] = 0x10110000u;
|
|
/* 02397F50 */ cpu->r[24] = 0x00000000u;
|
|
/* 02397F54 */ cpu->r[27] = 0x10080000u;
|
|
/* 02397F58 */ cpu->r[23] = 0x00080000u;
|
|
/* 02397F5C */ cpu->r[25] = cpu->r[24];
|
|
/* 02397F60 */ _t10 = cpu->r[31] + 0x00007399u;
|
|
/* 02397F60 */ cpu->r[31] = rbrew_read8(cpu->mem, _t10);
|
|
/* 02397F64 */ cpu->r[23] = cpu->r[23] + 0x00000001u;
|
|
/* 02397F68 */ cpu->r[27] = cpu->r[27] + 0x00006B00u;
|
|
L_02397F6C: ; // 0x2397f6c
|
|
/* 02397F6C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], cpu->r[0]);
|
|
/* 02397F70 */ _t11 = cpu->r[28] + 0x0000010Cu;
|
|
/* 02397F70 */ cpu->r[30] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02397F74 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02397F74 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02397F74 */ if (_t13) goto L_02397F78; else goto L_02397F7C;
|
|
L_02397F78: ; // 0x2397f78
|
|
/* 02397F78 */ cpu->r[30] = cpu->r[30] + cpu->r[24];
|
|
L_02397F7C: ; // 0x2397f7c
|
|
/* 02397F7C */ _t14 = cpu->r[1] + 0x00000008u;
|
|
/* 02397F7C */ rbrew_write32(cpu->mem, _t14, cpu->r[29]);
|
|
/* 02397F80 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02397F80 */ rbrew_write32(cpu->mem, _t15, cpu->r[27]);
|
|
/* 02397F84 */ _t16 = cpu->r[30] + 0x00000004u;
|
|
/* 02397F84 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02397F88 */ _t17 = cpu->r[12] + 0x00000014u;
|
|
/* 02397F88 */ cpu->r[4] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02397F8C */ cpu->ctr = cpu->r[4];
|
|
/* 02397F90 */ cpu->r[3] = cpu->r[30];
|
|
/* 02397F94 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02397F98 */ _t18 = cpu->r[30] + 0x00000004u;
|
|
/* 02397F98 */ cpu->r[11] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02397F9C */ _t19 = cpu->r[11] + 0x00000014u;
|
|
/* 02397F9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02397FA0 */ cpu->ctr = cpu->r[0];
|
|
/* 02397FA4 */ cpu->r[3] = cpu->r[30];
|
|
/* 02397FA8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02397FAC */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02397FAC */ cpu->r[5] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02397FB0 */ _t21 = cpu->r[5] + 0x00000014u;
|
|
/* 02397FB0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02397FB4 */ cpu->ctr = cpu->r[6];
|
|
/* 02397FB8 */ _t22 = cpu->r[30] + 0x00000000u;
|
|
/* 02397FB8 */ cpu->r[22] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02397FBC */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02397FC0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02397FC4 */ _t23 = cpu->r[1] + 0x00000008u;
|
|
/* 02397FC4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02397FC8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[22], cpu->r[7]);
|
|
/* 02397FCC */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397FCC */ _t25 = _t24 & 0x00000001u;
|
|
/* 02397FCC */ if (_t25) goto L_02398004; else goto L_02397FD0;
|
|
L_02397FD0: ; // 0x2397fd0
|
|
/* 02397FD0 */ _t26 = cpu->r[30] + 0x00000000u;
|
|
/* 02397FD0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02397FD4 */ _t27 = cpu->r[1] + 0x00000008u;
|
|
/* 02397FD4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02397FD8 */ cpu->r[5] = cpu->r[5] + 0xFFFFFFFFu;
|
|
/* 02397FDC */ cpu->ctr = cpu->r[23];
|
|
/* 02397FE0 */ cpu->r[12] = cpu->r[12] + 0xFFFFFFFFu;
|
|
L_02397FE4: ; // 0x2397fe4
|
|
/* 02397FE4 */ _t28 = cpu->r[5] + 0x00000001u;
|
|
/* 02397FE4 */ cpu->r[6] = rbrew_read8(cpu->mem, _t28);
|
|
/* 02397FE4 */ cpu->r[5] = _t28;
|
|
/* 02397FE8 */ _t29 = cpu->r[12] + 0x00000001u;
|
|
/* 02397FE8 */ cpu->r[8] = rbrew_read8(cpu->mem, _t29);
|
|
/* 02397FE8 */ cpu->r[12] = _t29;
|
|
/* 02397FEC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[8]);
|
|
/* 02397FF0 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397FF0 */ _t31 = _t30 & 0x00000001u;
|
|
/* 02397FF0 */ if (_t31) goto L_02397FF4; else goto L_02398034;
|
|
L_02397FF4: ; // 0x2397ff4
|
|
/* 02397FF4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[31]);
|
|
/* 02397FF8 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02397FF8 */ _t33 = _t32 & 0x00000001u;
|
|
/* 02397FF8 */ if (_t33) goto L_02398004; else goto L_02397FFC;
|
|
L_02397FFC: ; // 0x2397ffc
|
|
/* 02397FFC */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02397FFC */ _t34 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02397FFC */ _t35 = _t34 >> (0x00000002u & 31u);
|
|
/* 02397FFC */ _t36 = _t35 & 0x00000001u;
|
|
/* 02397FFC */ if (_t36) goto L_02397FE4; else goto L_02398000;
|
|
L_02398000: ; // 0x2398000
|
|
/* 02398000 */ goto L_02398034;
|
|
L_02398004: ; // 0x2398004
|
|
/* 02398004 */ _t37 = cpu->r[28] + 0x000000FCu;
|
|
/* 02398004 */ cpu->r[0] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02398008 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], cpu->r[0]);
|
|
/* 0239800C */ cpu->r[9] = 0x00000000u;
|
|
/* 02398010 */ _t38 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02398010 */ _t39 = _t38 & 0x00000001u;
|
|
/* 02398010 */ if (_t39) goto L_02398014; else goto L_02398064;
|
|
L_02398014: ; // 0x2398014
|
|
/* 02398014 */ _t40 = cpu->r[28] + 0x00000104u;
|
|
/* 02398014 */ cpu->r[10] = rbrew_read32(cpu->mem, _t40);
|
|
/* 02398018 */ cpu->r[11] = 0x10080000u;
|
|
/* 0239801C */ _t41 = cpu->r[10] + cpu->r[25];
|
|
/* 0239801C */ cpu->r[9] = rbrew_read32(cpu->mem, _t41);
|
|
/* 02398020 */ _t42 = cpu->r[11] + 0x00006C98u;
|
|
/* 02398020 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 02398024 */ _t43 = cpu->r[9] + 0x00000054u;
|
|
/* 02398024 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t43);
|
|
/* 02398028 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[0]);
|
|
/* 0239802C */ _t44 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0239802C */ _t45 = _t44 & 0x00000001u;
|
|
/* 0239802C */ if (_t45) goto L_02398078; else goto L_02398030;
|
|
L_02398030: ; // 0x2398030
|
|
/* 02398030 */ goto L_0239807C;
|
|
L_02398034: ; // 0x2398034
|
|
/* 02398034 */ _t46 = cpu->r[28] + 0x00000108u;
|
|
/* 02398034 */ cpu->r[0] = rbrew_read32(cpu->mem, _t46);
|
|
/* 02398038 */ cpu->r[26] = cpu->r[26] + 0x00000001u;
|
|
/* 0239803C */ cpu->r[25] = cpu->r[25] + 0x00000004u;
|
|
/* 02398040 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], cpu->r[0]);
|
|
/* 02398044 */ cpu->r[24] = cpu->r[24] + 0x0000002Cu;
|
|
/* 02398048 */ _t47 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02398048 */ _t48 = _t47 & 0x00000001u;
|
|
/* 02398048 */ if (_t48) goto L_02397F6C; else goto L_0239804C;
|
|
L_0239804C: ; // 0x239804c
|
|
/* 0239804C */ _t49 = cpu->r[28] + 0x00000164u;
|
|
/* 0239804C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t49);
|
|
/* 02398050 */ /* nop */
|
|
/* 02398054 */ _t50 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02398054 */ cpu->r[0] = rbrew_read32(cpu->mem, _t50);
|
|
/* 02398058 */ cpu->lr = cpu->r[0];
|
|
/* 0239805C */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 02398060 */ return;
|
|
L_02398064: ; // 0x2398064
|
|
/* 02398064 */ cpu->r[11] = 0x10080000u;
|
|
/* 02398068 */ _t51 = cpu->r[9] + 0x00000054u;
|
|
/* 02398068 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t51);
|
|
/* 0239806C */ _t52 = cpu->r[11] + 0x00006C98u;
|
|
/* 0239806C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 02398070 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[0]);
|
|
/* 02398074 */ _t53 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02398074 */ _t54 = _t53 & 0x00000001u;
|
|
/* 02398074 */ if (_t54) goto L_02398078; else goto L_0239807C;
|
|
L_02398078: ; // 0x2398078
|
|
/* 02398078 */ _t55 = cpu->r[28] + 0x00000164u;
|
|
/* 02398078 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t55);
|
|
L_0239807C: ; // 0x239807c
|
|
/* 0239807C */ /* nop */
|
|
/* 02398080 */ _t56 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02398080 */ cpu->r[0] = rbrew_read32(cpu->mem, _t56);
|
|
/* 02398084 */ cpu->lr = cpu->r[0];
|
|
/* 02398088 */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 0239808C */ return;
|
|
}
|
|
|
|
// fn_02398090 @ 0x2398090
|
|
void Gambit_fn_02398090(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_02398090: ; // 0x2398090
|
|
/* 02398090 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02398094 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398094 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02398094 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02398094 */ goto L_02398098;
|
|
L_02398098: ; // 0x2398098
|
|
/* 02398098 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02398098 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0239809C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239809C */ _t3 = _t2 & 0x00000001u;
|
|
/* 0239809C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0239809C */ goto L_023980A0;
|
|
L_023980A0: ; // 0x23980a0
|
|
/* 023980A0 */ 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_023980A4 @ 0x23980a4
|
|
void Gambit_fn_023980A4(CPUState* cpu) {
|
|
L_023980A4: ; // 0x23980a4
|
|
/* 023980A4 */ return;
|
|
}
|
|
|
|
// fn_023980A8 @ 0x23980a8
|
|
void Gambit_fn_023980A8(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_023980A8: ; // 0x23980a8
|
|
/* 023980A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023980AC */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023980AC */ _t1 = _t0 & 0x00000001u;
|
|
/* 023980AC */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 023980AC */ goto L_023980B0;
|
|
L_023980B0: ; // 0x23980b0
|
|
/* 023980B0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 023980B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 023980B4 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023980B4 */ _t3 = _t2 & 0x00000001u;
|
|
/* 023980B4 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 023980B4 */ goto L_023980B8;
|
|
L_023980B8: ; // 0x23980b8
|
|
/* 023980B8 */ 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_023980BC @ 0x23980bc
|
|
void Gambit_fn_023980BC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_023980BC: ; // 0x23980bc
|
|
/* 023980BC */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 023980BC */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 023980C0 */ _t1 = cpu->r[3] + 0x00000008u;
|
|
/* 023980C0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 023980C4 */ cpu->r[12] = cpu->r[11] + cpu->r[12];
|
|
/* 023980C8 */ cpu->r[11] = 0x10110000u;
|
|
/* 023980CC */ _t2 = cpu->r[11] + 0x00007399u;
|
|
/* 023980CC */ cpu->r[0] = rbrew_read8(cpu->mem, _t2);
|
|
/* 023980D0 */ _t3 = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 023980D0 */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[0]);
|
|
/* 023980D4 */ return;
|
|
}
|
|
|
|
// fn_023980D8 @ 0x23980d8
|
|
void Gambit_fn_023980D8(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_023980D8: ; // 0x23980d8
|
|
/* 023980D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023980DC */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023980DC */ _t1 = _t0 & 0x00000001u;
|
|
/* 023980DC */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 023980DC */ goto L_023980E0;
|
|
L_023980E0: ; // 0x23980e0
|
|
/* 023980E0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 023980E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 023980E4 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023980E4 */ _t3 = _t2 & 0x00000001u;
|
|
/* 023980E4 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 023980E4 */ goto L_023980E8;
|
|
L_023980E8: ; // 0x23980e8
|
|
/* 023980E8 */ 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_023980EC @ 0x23980ec
|
|
void Gambit_fn_023980EC(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_023980EC: ; // 0x23980ec
|
|
/* 023980EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023980F0 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023980F0 */ _t1 = _t0 & 0x00000001u;
|
|
/* 023980F0 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 023980F0 */ goto L_023980F4;
|
|
L_023980F4: ; // 0x23980f4
|
|
/* 023980F4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 023980F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 023980F8 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023980F8 */ _t3 = _t2 & 0x00000001u;
|
|
/* 023980F8 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 023980F8 */ goto L_023980FC;
|
|
L_023980FC: ; // 0x23980fc
|
|
/* 023980FC */ 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_02398100 @ 0x2398100
|
|
void Gambit_fn_02398100(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_02398100: ; // 0x2398100
|
|
/* 02398100 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02398104 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398104 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02398104 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02398104 */ goto L_02398108;
|
|
L_02398108: ; // 0x2398108
|
|
/* 02398108 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02398108 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0239810C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239810C */ _t3 = _t2 & 0x00000001u;
|
|
/* 0239810C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0239810C */ goto L_02398110;
|
|
L_02398110: ; // 0x2398110
|
|
/* 02398110 */ 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_02398114 @ 0x2398114
|
|
void Gambit_fn_02398114(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_02398114: ; // 0x2398114
|
|
/* 02398114 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02398118 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398118 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02398118 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02398118 */ goto L_0239811C;
|
|
L_0239811C: ; // 0x239811c
|
|
/* 0239811C */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0239811C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02398120 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398120 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02398120 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02398120 */ goto L_02398124;
|
|
L_02398124: ; // 0x2398124
|
|
/* 02398124 */ 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_02398128 @ 0x2398128
|
|
void Gambit_fn_02398128(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_02398128: ; // 0x2398128
|
|
/* 02398128 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239812C */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239812C */ _t1 = _t0 & 0x00000001u;
|
|
/* 0239812C */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0239812C */ goto L_02398130;
|
|
L_02398130: ; // 0x2398130
|
|
/* 02398130 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02398130 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02398134 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398134 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02398134 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02398134 */ goto L_02398138;
|
|
L_02398138: ; // 0x2398138
|
|
/* 02398138 */ 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_0239813C @ 0x239813c
|
|
void Gambit_fn_0239813C(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_0239813C: ; // 0x239813c
|
|
/* 0239813C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02398140 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398140 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02398140 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02398140 */ goto L_02398144;
|
|
L_02398144: ; // 0x2398144
|
|
/* 02398144 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02398144 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02398148 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398148 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02398148 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02398148 */ goto L_0239814C;
|
|
L_0239814C: ; // 0x239814c
|
|
/* 0239814C */ 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_02398150 @ 0x2398150
|
|
void Gambit_fn_02398150(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_02398150: ; // 0x2398150
|
|
/* 02398150 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02398154 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398154 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02398154 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02398154 */ goto L_02398158;
|
|
L_02398158: ; // 0x2398158
|
|
/* 02398158 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02398158 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0239815C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239815C */ _t3 = _t2 & 0x00000001u;
|
|
/* 0239815C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0239815C */ goto L_02398160;
|
|
L_02398160: ; // 0x2398160
|
|
/* 02398160 */ 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_02398164 @ 0x2398164
|
|
void Gambit_fn_02398164(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_02398164: ; // 0x2398164
|
|
/* 02398164 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02398168 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398168 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02398168 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02398168 */ goto L_0239816C;
|
|
L_0239816C: ; // 0x239816c
|
|
/* 0239816C */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0239816C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02398170 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398170 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02398170 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02398170 */ goto L_02398174;
|
|
L_02398174: ; // 0x2398174
|
|
/* 02398174 */ 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_02398178 @ 0x2398178
|
|
void Gambit_fn_02398178(CPUState* cpu) {
|
|
L_02398178: ; // 0x2398178
|
|
/* 02398178 */ return;
|
|
}
|
|
|
|
// fn_0239817C @ 0x239817c
|
|
void Gambit_fn_0239817C(CPUState* cpu) {
|
|
L_0239817C: ; // 0x239817c
|
|
/* 0239817C */ return;
|
|
}
|
|
|
|
// fn_02398180 @ 0x2398180
|
|
void Gambit_fn_02398180(CPUState* cpu) {
|
|
L_02398180: ; // 0x2398180
|
|
/* 02398180 */ cpu->r[3] = 0x00000001u;
|
|
/* 02398184 */ return;
|
|
}
|
|
|
|
// fn_02398188 @ 0x2398188
|
|
void Gambit_fn_02398188(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_02398188: ; // 0x2398188
|
|
/* 02398188 */ cpu->r[9] = 0x101D0000u;
|
|
/* 0239818C */ _t0 = cpu->r[9] + 0xFFFFDA3Cu;
|
|
/* 0239818C */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0239818C */ cpu->r[9] = _t0;
|
|
/* 02398190 */ cpu->r[12] = 0x101D0000u;
|
|
/* 02398194 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02398198 */ cpu->r[12] = cpu->r[12] + 0x00000450u;
|
|
/* 0239819C */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239819C */ _t2 = _t1 & 0x00000001u;
|
|
/* 0239819C */ if (_t2) goto L_023981A0; else goto L_023981B4;
|
|
L_023981A0: ; // 0x23981a0
|
|
/* 023981A0 */ cpu->r[7] = 0x10080000u;
|
|
/* 023981A4 */ cpu->r[0] = 0x00000001u;
|
|
/* 023981A8 */ cpu->r[7] = cpu->r[7] + 0x00006BF0u;
|
|
/* 023981AC */ _t3 = cpu->r[9] + 0x00000000u;
|
|
/* 023981AC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 023981B0 */ _t4 = cpu->r[12] + 0x00000000u;
|
|
/* 023981B0 */ rbrew_write32(cpu->mem, _t4, cpu->r[7]);
|
|
L_023981B4: ; // 0x23981b4
|
|
/* 023981B4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]);
|
|
/* 023981B8 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023981B8 */ _t6 = _t5 & 0x00000001u;
|
|
/* 023981B8 */ if (_t6) goto L_023981BC; else goto L_023981C4;
|
|
L_023981BC: ; // 0x23981bc
|
|
/* 023981BC */ cpu->r[3] = 0x00000001u;
|
|
/* 023981C0 */ return;
|
|
L_023981C4: ; // 0x23981c4
|
|
/* 023981C4 */ cpu->r[7] = 0x101D0000u;
|
|
/* 023981C8 */ _t7 = cpu->r[7] + 0xFFFFDA34u;
|
|
/* 023981C8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 023981C8 */ cpu->r[7] = _t7;
|
|
/* 023981CC */ cpu->r[11] = 0x101D0000u;
|
|
/* 023981D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 023981D4 */ cpu->r[11] = cpu->r[11] + 0xFFFFDDE4u;
|
|
/* 023981D8 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023981D8 */ _t9 = _t8 & 0x00000001u;
|
|
/* 023981D8 */ if (_t9) goto L_023981DC; else goto L_023981F0;
|
|
L_023981DC: ; // 0x23981dc
|
|
/* 023981DC */ cpu->r[0] = 0x10080000u;
|
|
/* 023981E0 */ cpu->r[9] = 0x00000001u;
|
|
/* 023981E4 */ cpu->r[0] = cpu->r[0] + 0x00006AF0u;
|
|
/* 023981E8 */ _t10 = cpu->r[7] + 0x00000000u;
|
|
/* 023981E8 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 023981EC */ _t11 = cpu->r[11] + 0x00000000u;
|
|
/* 023981EC */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
L_023981F0: ; // 0x23981f0
|
|
/* 023981F0 */ cpu->r[0] = cpu->r[4] ^ cpu->r[11];
|
|
/* 023981F4 */ cpu->r[8] = rbrew_clz32(cpu->r[0]);
|
|
/* 023981F8 */ cpu->r[3] = rbrew_rlwinm(cpu->r[8], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
/* 023981FC */ return;
|
|
}
|
|
|
|
// fn_02398200 @ 0x2398200
|
|
void Gambit_fn_02398200(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _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_02398200: ; // 0x2398200
|
|
/* 02398200 */ cpu->r[0] = cpu->lr;
|
|
/* 02398204 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02398204 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02398204 */ cpu->r[1] = _t0;
|
|
/* 02398208 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 02398208 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0239820C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0239820C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02398210 */ cpu->r[31] = cpu->r[5];
|
|
/* 02398214 */ cpu->r[30] = cpu->r[3];
|
|
/* 02398214 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02398218 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02398218 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 0239821C */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239821C */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02398220 */ cpu->r[29] = cpu->r[4];
|
|
/* 02398224 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398224 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02398224 */ if (_t6) goto L_02398228; else goto L_02398238;
|
|
L_02398228: ; // 0x2398228
|
|
/* 02398228 */ cpu->r[3] = 0x00000028u;
|
|
/* 0239822C */ Gambit_fn_02801A78(cpu);
|
|
/* 02398230 */ cpu->r[30] = cpu->r[3];
|
|
/* 02398230 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02398234 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398234 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02398234 */ if (_t8) goto L_023982D0; else goto L_02398238;
|
|
L_02398238: ; // 0x2398238
|
|
/* 02398238 */ _t9 = cpu->r[30] + 0x00000000u;
|
|
/* 02398238 */ rbrew_write32(cpu->mem, _t9, cpu->r[29]);
|
|
/* 0239823C */ cpu->r[29] = 0x00000000u;
|
|
/* 02398240 */ cpu->r[3] = cpu->r[30] + 0x00000008u;
|
|
/* 02398240 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02398244 */ _t10 = cpu->r[30] + 0x00000004u;
|
|
/* 02398244 */ rbrew_write32(cpu->mem, _t10, cpu->r[29]);
|
|
/* 02398248 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398248 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02398248 */ if (_t12) goto L_0239824C; else goto L_0239825C;
|
|
L_0239824C: ; // 0x239824c
|
|
/* 0239824C */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02398250 */ Gambit_fn_02801A78(cpu);
|
|
/* 02398254 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02398258 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398258 */ _t14 = _t13 & 0x00000001u;
|
|
/* 02398258 */ if (_t14) goto L_02398280; else goto L_0239825C;
|
|
L_0239825C: ; // 0x239825c
|
|
/* 0239825C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02398260 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398260 */ _t16 = _t15 & 0x00000001u;
|
|
/* 02398260 */ if (_t16) goto L_02398264; else goto L_02398274;
|
|
L_02398264: ; // 0x2398264
|
|
/* 02398264 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02398268 */ Gambit_fn_02801A78(cpu);
|
|
/* 0239826C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02398270 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398270 */ _t18 = _t17 & 0x00000001u;
|
|
/* 02398270 */ if (_t18) goto L_02398280; else goto L_02398274;
|
|
L_02398274: ; // 0x2398274
|
|
/* 02398274 */ _t19 = cpu->r[3] + 0x00000004u;
|
|
/* 02398274 */ rbrew_write32(cpu->mem, _t19, cpu->r[29]);
|
|
/* 02398278 */ _t20 = cpu->r[3] + 0x00000000u;
|
|
/* 02398278 */ rbrew_write32(cpu->mem, _t20, cpu->r[29]);
|
|
/* 0239827C */ _t21 = cpu->r[3] + 0x00000008u;
|
|
/* 0239827C */ rbrew_write32(cpu->mem, _t21, cpu->r[29]);
|
|
L_02398280: ; // 0x2398280
|
|
/* 02398280 */ _t22 = cpu->r[30] + 0x00000024u;
|
|
/* 02398280 */ rbrew_write32(cpu->mem, _t22, cpu->r[29]);
|
|
/* 02398284 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02398288 */ _t23 = cpu->r[30] + 0x00000019u;
|
|
/* 02398288 */ rbrew_write8(cpu->mem, _t23, (uint8_t)cpu->r[29]);
|
|
/* 0239828C */ _t24 = cpu->r[30] + 0x00000018u;
|
|
/* 0239828C */ rbrew_write8(cpu->mem, _t24, (uint8_t)cpu->r[29]);
|
|
/* 02398290 */ _t25 = cpu->r[30] + 0x00000020u;
|
|
/* 02398290 */ rbrew_write32(cpu->mem, _t25, cpu->r[29]);
|
|
/* 02398294 */ _t26 = cpu->r[30] + 0x00000014u;
|
|
/* 02398294 */ rbrew_write32(cpu->mem, _t26, cpu->r[29]);
|
|
/* 02398298 */ _t27 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02398298 */ rbrew_write32(cpu->mem, _t27, cpu->r[31]);
|
|
/* 0239829C */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239829C */ _t29 = _t28 & 0x00000001u;
|
|
/* 0239829C */ if (_t29) goto L_023982A0; else goto L_023982B4;
|
|
L_023982A0: ; // 0x23982a0
|
|
/* 023982A0 */ cpu->r[3] = 0x101D0000u;
|
|
/* 023982A4 */ _t30 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 023982A4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t30);
|
|
/* 023982A8 */ Gambit_fn_02826F20(cpu);
|
|
/* 023982AC */ cpu->r[31] = cpu->r[3];
|
|
/* 023982B0 */ _t31 = cpu->r[30] + 0x0000001Cu;
|
|
/* 023982B0 */ rbrew_write32(cpu->mem, _t31, cpu->r[31]);
|
|
L_023982B4: ; // 0x23982b4
|
|
/* 023982B4 */ _t32 = cpu->r[30] + 0x00000000u;
|
|
/* 023982B4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t32);
|
|
/* 023982B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 023982BC */ _t33 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 023982BC */ _t34 = _t33 & 0x00000001u;
|
|
/* 023982BC */ if (_t34) goto L_023982C0; else goto L_023982D0;
|
|
L_023982C0: ; // 0x23982c0
|
|
/* 023982C0 */ cpu->r[6] = 0x00000004u;
|
|
/* 023982C4 */ cpu->r[5] = cpu->r[31];
|
|
/* 023982C8 */ cpu->r[3] = cpu->r[30] + 0x00000008u;
|
|
/* 023982CC */ Gambit_fn_028023CC(cpu);
|
|
L_023982D0: ; // 0x23982d0
|
|
/* 023982D0 */ _t35 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023982D0 */ cpu->r[29] = rbrew_read32(cpu->mem, _t35);
|
|
/* 023982D4 */ _t36 = cpu->r[1] + 0x0000001Cu;
|
|
/* 023982D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t36);
|
|
/* 023982D8 */ cpu->r[3] = cpu->r[30];
|
|
/* 023982DC */ _t37 = cpu->r[1] + 0x00000010u;
|
|
/* 023982DC */ cpu->r[30] = rbrew_read32(cpu->mem, _t37);
|
|
/* 023982E0 */ cpu->lr = cpu->r[0];
|
|
/* 023982E4 */ _t38 = cpu->r[1] + 0x00000014u;
|
|
/* 023982E4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t38);
|
|
/* 023982E8 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 023982EC */ return;
|
|
}
|
|
|
|
// fn_02398204 @ 0x2398204
|
|
void Gambit_fn_02398204(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _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_02398204: ; // 0x2398204
|
|
/* 02398204 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02398204 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02398204 */ cpu->r[1] = _t0;
|
|
/* 02398208 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 02398208 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0239820C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0239820C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02398210 */ cpu->r[31] = cpu->r[5];
|
|
/* 02398214 */ cpu->r[30] = cpu->r[3];
|
|
/* 02398214 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02398218 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02398218 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 0239821C */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239821C */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02398220 */ cpu->r[29] = cpu->r[4];
|
|
/* 02398224 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398224 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02398224 */ if (_t6) goto L_02398228; else goto L_02398238;
|
|
L_02398228: ; // 0x2398228
|
|
/* 02398228 */ cpu->r[3] = 0x00000028u;
|
|
/* 0239822C */ Gambit_fn_02801A78(cpu);
|
|
/* 02398230 */ cpu->r[30] = cpu->r[3];
|
|
/* 02398230 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02398234 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398234 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02398234 */ if (_t8) goto L_023982D0; else goto L_02398238;
|
|
L_02398238: ; // 0x2398238
|
|
/* 02398238 */ _t9 = cpu->r[30] + 0x00000000u;
|
|
/* 02398238 */ rbrew_write32(cpu->mem, _t9, cpu->r[29]);
|
|
/* 0239823C */ cpu->r[29] = 0x00000000u;
|
|
/* 02398240 */ cpu->r[3] = cpu->r[30] + 0x00000008u;
|
|
/* 02398240 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02398244 */ _t10 = cpu->r[30] + 0x00000004u;
|
|
/* 02398244 */ rbrew_write32(cpu->mem, _t10, cpu->r[29]);
|
|
/* 02398248 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398248 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02398248 */ if (_t12) goto L_0239824C; else goto L_0239825C;
|
|
L_0239824C: ; // 0x239824c
|
|
/* 0239824C */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02398250 */ Gambit_fn_02801A78(cpu);
|
|
/* 02398254 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02398258 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398258 */ _t14 = _t13 & 0x00000001u;
|
|
/* 02398258 */ if (_t14) goto L_02398280; else goto L_0239825C;
|
|
L_0239825C: ; // 0x239825c
|
|
/* 0239825C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02398260 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398260 */ _t16 = _t15 & 0x00000001u;
|
|
/* 02398260 */ if (_t16) goto L_02398264; else goto L_02398274;
|
|
L_02398264: ; // 0x2398264
|
|
/* 02398264 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02398268 */ Gambit_fn_02801A78(cpu);
|
|
/* 0239826C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02398270 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398270 */ _t18 = _t17 & 0x00000001u;
|
|
/* 02398270 */ if (_t18) goto L_02398280; else goto L_02398274;
|
|
L_02398274: ; // 0x2398274
|
|
/* 02398274 */ _t19 = cpu->r[3] + 0x00000004u;
|
|
/* 02398274 */ rbrew_write32(cpu->mem, _t19, cpu->r[29]);
|
|
/* 02398278 */ _t20 = cpu->r[3] + 0x00000000u;
|
|
/* 02398278 */ rbrew_write32(cpu->mem, _t20, cpu->r[29]);
|
|
/* 0239827C */ _t21 = cpu->r[3] + 0x00000008u;
|
|
/* 0239827C */ rbrew_write32(cpu->mem, _t21, cpu->r[29]);
|
|
L_02398280: ; // 0x2398280
|
|
/* 02398280 */ _t22 = cpu->r[30] + 0x00000024u;
|
|
/* 02398280 */ rbrew_write32(cpu->mem, _t22, cpu->r[29]);
|
|
/* 02398284 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02398288 */ _t23 = cpu->r[30] + 0x00000019u;
|
|
/* 02398288 */ rbrew_write8(cpu->mem, _t23, (uint8_t)cpu->r[29]);
|
|
/* 0239828C */ _t24 = cpu->r[30] + 0x00000018u;
|
|
/* 0239828C */ rbrew_write8(cpu->mem, _t24, (uint8_t)cpu->r[29]);
|
|
/* 02398290 */ _t25 = cpu->r[30] + 0x00000020u;
|
|
/* 02398290 */ rbrew_write32(cpu->mem, _t25, cpu->r[29]);
|
|
/* 02398294 */ _t26 = cpu->r[30] + 0x00000014u;
|
|
/* 02398294 */ rbrew_write32(cpu->mem, _t26, cpu->r[29]);
|
|
/* 02398298 */ _t27 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02398298 */ rbrew_write32(cpu->mem, _t27, cpu->r[31]);
|
|
/* 0239829C */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239829C */ _t29 = _t28 & 0x00000001u;
|
|
/* 0239829C */ if (_t29) goto L_023982A0; else goto L_023982B4;
|
|
L_023982A0: ; // 0x23982a0
|
|
/* 023982A0 */ cpu->r[3] = 0x101D0000u;
|
|
/* 023982A4 */ _t30 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 023982A4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t30);
|
|
/* 023982A8 */ Gambit_fn_02826F20(cpu);
|
|
/* 023982AC */ cpu->r[31] = cpu->r[3];
|
|
/* 023982B0 */ _t31 = cpu->r[30] + 0x0000001Cu;
|
|
/* 023982B0 */ rbrew_write32(cpu->mem, _t31, cpu->r[31]);
|
|
L_023982B4: ; // 0x23982b4
|
|
/* 023982B4 */ _t32 = cpu->r[30] + 0x00000000u;
|
|
/* 023982B4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t32);
|
|
/* 023982B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 023982BC */ _t33 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 023982BC */ _t34 = _t33 & 0x00000001u;
|
|
/* 023982BC */ if (_t34) goto L_023982C0; else goto L_023982D0;
|
|
L_023982C0: ; // 0x23982c0
|
|
/* 023982C0 */ cpu->r[6] = 0x00000004u;
|
|
/* 023982C4 */ cpu->r[5] = cpu->r[31];
|
|
/* 023982C8 */ cpu->r[3] = cpu->r[30] + 0x00000008u;
|
|
/* 023982CC */ Gambit_fn_028023CC(cpu);
|
|
L_023982D0: ; // 0x23982d0
|
|
/* 023982D0 */ _t35 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023982D0 */ cpu->r[29] = rbrew_read32(cpu->mem, _t35);
|
|
/* 023982D4 */ _t36 = cpu->r[1] + 0x0000001Cu;
|
|
/* 023982D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t36);
|
|
/* 023982D8 */ cpu->r[3] = cpu->r[30];
|
|
/* 023982DC */ _t37 = cpu->r[1] + 0x00000010u;
|
|
/* 023982DC */ cpu->r[30] = rbrew_read32(cpu->mem, _t37);
|
|
/* 023982E0 */ cpu->lr = cpu->r[0];
|
|
/* 023982E4 */ _t38 = cpu->r[1] + 0x00000014u;
|
|
/* 023982E4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t38);
|
|
/* 023982E8 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 023982EC */ return;
|
|
}
|
|
|
|
// fn_023982F0 @ 0x23982f0
|
|
void Gambit_fn_023982F0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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_023982F0: ; // 0x23982f0
|
|
/* 023982F0 */ cpu->r[0] = cpu->lr;
|
|
/* 023982F4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 023982F4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 023982F4 */ cpu->r[1] = _t0;
|
|
/* 023982F8 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 023982F8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 023982FC */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023982FC */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 02398300 */ cpu->r[31] = cpu->r[3];
|
|
/* 02398304 */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 02398304 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 02398308 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02398308 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0239830C */ cpu->r[29] = cpu->r[4];
|
|
/* 02398310 */ _t5 = cpu->r[31] + 0x00000014u;
|
|
/* 02398310 */ cpu->r[10] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02398314 */ _t6 = cpu->r[10] + 0x000000A4u;
|
|
/* 02398314 */ cpu->r[30] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02398318 */ _t7 = cpu->r[30] + 0x00000038u;
|
|
/* 02398318 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0239831C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02398320 */ _t8 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02398320 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02398320 */ if (_t9) goto L_02398324; else goto L_02398354;
|
|
L_02398324: ; // 0x2398324
|
|
/* 02398324 */ _t10 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02398324 */ cpu->r[4] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02398328 */ cpu->r[3] = 0x00000028u;
|
|
/* 0239832C */ cpu->r[5] = 0x00000004u;
|
|
/* 02398330 */ Gambit_fn_02801AC8(cpu);
|
|
/* 02398334 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02398338 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398338 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02398338 */ if (_t12) goto L_02398348; else goto L_0239833C;
|
|
L_0239833C: ; // 0x239833c
|
|
/* 0239833C */ _t13 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0239833C */ cpu->r[5] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02398340 */ cpu->r[4] = cpu->r[29];
|
|
/* 02398344 */ Gambit_fn_027C7088(cpu);
|
|
L_02398348: ; // 0x2398348
|
|
/* 02398348 */ _t14 = cpu->r[31] + 0x00000014u;
|
|
/* 02398348 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0239834C */ _t15 = cpu->r[31] + 0x00000004u;
|
|
/* 0239834C */ rbrew_write32(cpu->mem, _t15, cpu->r[3]);
|
|
/* 02398350 */ _t16 = cpu->r[3] + 0x00000000u;
|
|
/* 02398350 */ rbrew_write32(cpu->mem, _t16, cpu->r[0]);
|
|
L_02398354: ; // 0x2398354
|
|
/* 02398354 */ _t17 = cpu->r[30] + 0x00000040u;
|
|
/* 02398354 */ cpu->r[5] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02398358 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 0239835C */ _t18 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0239835C */ _t19 = _t18 & 0x00000001u;
|
|
/* 0239835C */ if (_t19) goto L_0239839C; else goto L_02398360;
|
|
L_02398360: ; // 0x2398360
|
|
/* 02398360 */ _t20 = cpu->r[30] + 0x00000048u;
|
|
/* 02398360 */ cpu->r[7] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02398364 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 02398368 */ _t21 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02398368 */ _t22 = _t21 & 0x00000001u;
|
|
/* 02398368 */ if (_t22) goto L_0239839C; else goto L_0239836C;
|
|
L_0239836C: ; // 0x239836c
|
|
/* 0239836C */ _t23 = cpu->r[30] + 0x00000050u;
|
|
/* 0239836C */ cpu->r[8] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02398370 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02398374 */ _t24 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02398374 */ _t25 = _t24 & 0x00000001u;
|
|
/* 02398374 */ if (_t25) goto L_0239839C; else goto L_02398378;
|
|
L_02398378: ; // 0x2398378
|
|
/* 02398378 */ _t26 = cpu->r[30] + 0x00000058u;
|
|
/* 02398378 */ cpu->r[0] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0239837C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02398380 */ _t27 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02398380 */ _t28 = _t27 & 0x00000001u;
|
|
/* 02398380 */ if (_t28) goto L_0239839C; else goto L_02398384;
|
|
L_02398384: ; // 0x2398384
|
|
/* 02398384 */ _t29 = cpu->r[30] + 0x00000060u;
|
|
/* 02398384 */ cpu->r[10] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02398388 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0239838C */ _t30 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0239838C */ _t31 = _t30 & 0x00000001u;
|
|
/* 0239838C */ if (_t31) goto L_0239839C; else goto L_02398390;
|
|
L_02398390: ; // 0x2398390
|
|
/* 02398390 */ _t32 = cpu->r[30] + 0x00000068u;
|
|
/* 02398390 */ cpu->r[11] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02398394 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02398398 */ _t33 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02398398 */ _t34 = _t33 & 0x00000001u;
|
|
/* 02398398 */ if (_t34) goto L_0239839C; else goto L_02398448;
|
|
L_0239839C: ; // 0x239839c
|
|
/* 0239839C */ _t35 = cpu->r[31] + 0x00000000u;
|
|
/* 0239839C */ cpu->r[0] = rbrew_read32(cpu->mem, _t35);
|
|
/* 023983A0 */ cpu->r[30] = 0x00000000u;
|
|
/* 023983A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[0]);
|
|
/* 023983A8 */ _t36 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 023983A8 */ _t37 = _t36 & 0x00000001u;
|
|
/* 023983A8 */ if (_t37) goto L_023983AC; else goto L_02398448;
|
|
L_023983AC: ; // 0x23983ac
|
|
/* 023983AC */ cpu->r[29] = 0x00000000u;
|
|
L_023983B0: ; // 0x23983b0
|
|
/* 023983B0 */ _t38 = cpu->r[31] + 0x0000001Cu;
|
|
/* 023983B0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t38);
|
|
/* 023983B4 */ cpu->r[3] = 0x00000014u;
|
|
/* 023983B8 */ cpu->r[5] = 0x00000004u;
|
|
/* 023983BC */ Gambit_fn_02801AC8(cpu);
|
|
/* 023983C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023983C4 */ cpu->r[0] = cpu->r[3];
|
|
/* 023983C8 */ _t39 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023983C8 */ _t40 = _t39 & 0x00000001u;
|
|
/* 023983C8 */ if (_t40) goto L_023983D4; else goto L_023983CC;
|
|
L_023983CC: ; // 0x23983cc
|
|
/* 023983CC */ Gambit_fn_027C6158(cpu);
|
|
/* 023983D0 */ cpu->r[0] = cpu->r[3];
|
|
L_023983D4: ; // 0x23983d4
|
|
/* 023983D4 */ _t41 = cpu->r[31] + 0x00000008u;
|
|
/* 023983D4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t41);
|
|
/* 023983D8 */ _t42 = cpu->r[31] + 0x0000000Cu;
|
|
/* 023983D8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t42);
|
|
/* 023983DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], cpu->r[6]);
|
|
/* 023983E0 */ _t43 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 023983E0 */ _t44 = _t43 & 0x00000001u;
|
|
/* 023983E0 */ if (_t44) goto L_023983E4; else goto L_023983FC;
|
|
L_023983E4: ; // 0x23983e4
|
|
/* 023983E4 */ _t45 = cpu->r[31] + 0x00000010u;
|
|
/* 023983E4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t45);
|
|
/* 023983E8 */ cpu->r[7] = rbrew_rlwinm(cpu->r[12], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 023983EC */ _t46 = cpu->r[7] + cpu->r[8];
|
|
/* 023983EC */ rbrew_write32(cpu->mem, _t46, cpu->r[0]);
|
|
/* 023983F0 */ _t47 = cpu->r[31] + 0x00000008u;
|
|
/* 023983F0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t47);
|
|
/* 023983F4 */ cpu->r[12] = cpu->r[9] + 0x00000001u;
|
|
/* 023983F8 */ _t48 = cpu->r[31] + 0x00000008u;
|
|
/* 023983F8 */ rbrew_write32(cpu->mem, _t48, cpu->r[12]);
|
|
L_023983FC: ; // 0x23983fc
|
|
/* 023983FC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[12]);
|
|
/* 02398400 */ cpu->r[12] = 0x00000000u;
|
|
/* 02398404 */ _t49 = cpu->r[31] + 0x00000014u;
|
|
/* 02398404 */ cpu->r[6] = rbrew_read32(cpu->mem, _t49);
|
|
/* 02398408 */ _t50 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02398408 */ _t51 = _t50 & 0x00000001u;
|
|
/* 02398408 */ if (_t51) goto L_0239840C; else goto L_02398414;
|
|
L_0239840C: ; // 0x239840c
|
|
/* 0239840C */ _t52 = cpu->r[31] + 0x00000010u;
|
|
/* 0239840C */ cpu->r[10] = rbrew_read32(cpu->mem, _t52);
|
|
/* 02398410 */ _t53 = cpu->r[10] + cpu->r[29];
|
|
/* 02398410 */ cpu->r[12] = rbrew_read32(cpu->mem, _t53);
|
|
L_02398414: ; // 0x2398414
|
|
/* 02398414 */ _t54 = cpu->r[12] + 0x0000000Cu;
|
|
/* 02398414 */ rbrew_write32(cpu->mem, _t54, cpu->r[6]);
|
|
/* 02398418 */ _t55 = cpu->r[31] + 0x00000008u;
|
|
/* 02398418 */ cpu->r[11] = rbrew_read32(cpu->mem, _t55);
|
|
/* 0239841C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[11]);
|
|
/* 02398420 */ cpu->r[5] = 0x00000000u;
|
|
/* 02398424 */ _t56 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02398424 */ _t57 = _t56 & 0x00000001u;
|
|
/* 02398424 */ if (_t57) goto L_02398428; else goto L_02398430;
|
|
L_02398428: ; // 0x2398428
|
|
/* 02398428 */ _t58 = cpu->r[31] + 0x00000010u;
|
|
/* 02398428 */ cpu->r[12] = rbrew_read32(cpu->mem, _t58);
|
|
/* 0239842C */ _t59 = cpu->r[12] + cpu->r[29];
|
|
/* 0239842C */ cpu->r[5] = rbrew_read32(cpu->mem, _t59);
|
|
L_02398430: ; // 0x2398430
|
|
/* 02398430 */ _t60 = cpu->r[5] + 0x00000010u;
|
|
/* 02398430 */ rbrew_write32(cpu->mem, _t60, cpu->r[30]);
|
|
/* 02398434 */ _t61 = cpu->r[31] + 0x00000000u;
|
|
/* 02398434 */ cpu->r[0] = rbrew_read32(cpu->mem, _t61);
|
|
/* 02398438 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 0239843C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[0]);
|
|
/* 02398440 */ cpu->r[29] = cpu->r[29] + 0x00000004u;
|
|
/* 02398444 */ _t62 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02398444 */ _t63 = _t62 & 0x00000001u;
|
|
/* 02398444 */ if (_t63) goto L_023983B0; else goto L_02398448;
|
|
L_02398448: ; // 0x2398448
|
|
/* 02398448 */ _t64 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02398448 */ cpu->r[29] = rbrew_read32(cpu->mem, _t64);
|
|
/* 0239844C */ _t65 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239844C */ cpu->r[0] = rbrew_read32(cpu->mem, _t65);
|
|
/* 02398450 */ _t66 = cpu->r[1] + 0x00000010u;
|
|
/* 02398450 */ cpu->r[30] = rbrew_read32(cpu->mem, _t66);
|
|
/* 02398454 */ cpu->lr = cpu->r[0];
|
|
/* 02398458 */ _t67 = cpu->r[1] + 0x00000014u;
|
|
/* 02398458 */ cpu->r[31] = rbrew_read32(cpu->mem, _t67);
|
|
/* 0239845C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02398460 */ return;
|
|
}
|
|
|
|
// fn_023982F4 @ 0x23982f4
|
|
void Gambit_fn_023982F4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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_023982F4: ; // 0x23982f4
|
|
/* 023982F4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 023982F4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 023982F4 */ cpu->r[1] = _t0;
|
|
/* 023982F8 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 023982F8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 023982FC */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023982FC */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 02398300 */ cpu->r[31] = cpu->r[3];
|
|
/* 02398304 */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 02398304 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 02398308 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02398308 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0239830C */ cpu->r[29] = cpu->r[4];
|
|
/* 02398310 */ _t5 = cpu->r[31] + 0x00000014u;
|
|
/* 02398310 */ cpu->r[10] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02398314 */ _t6 = cpu->r[10] + 0x000000A4u;
|
|
/* 02398314 */ cpu->r[30] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02398318 */ _t7 = cpu->r[30] + 0x00000038u;
|
|
/* 02398318 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0239831C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02398320 */ _t8 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02398320 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02398320 */ if (_t9) goto L_02398324; else goto L_02398354;
|
|
L_02398324: ; // 0x2398324
|
|
/* 02398324 */ _t10 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02398324 */ cpu->r[4] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02398328 */ cpu->r[3] = 0x00000028u;
|
|
/* 0239832C */ cpu->r[5] = 0x00000004u;
|
|
/* 02398330 */ Gambit_fn_02801AC8(cpu);
|
|
/* 02398334 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02398338 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398338 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02398338 */ if (_t12) goto L_02398348; else goto L_0239833C;
|
|
L_0239833C: ; // 0x239833c
|
|
/* 0239833C */ _t13 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0239833C */ cpu->r[5] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02398340 */ cpu->r[4] = cpu->r[29];
|
|
/* 02398344 */ Gambit_fn_027C7088(cpu);
|
|
L_02398348: ; // 0x2398348
|
|
/* 02398348 */ _t14 = cpu->r[31] + 0x00000014u;
|
|
/* 02398348 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0239834C */ _t15 = cpu->r[31] + 0x00000004u;
|
|
/* 0239834C */ rbrew_write32(cpu->mem, _t15, cpu->r[3]);
|
|
/* 02398350 */ _t16 = cpu->r[3] + 0x00000000u;
|
|
/* 02398350 */ rbrew_write32(cpu->mem, _t16, cpu->r[0]);
|
|
L_02398354: ; // 0x2398354
|
|
/* 02398354 */ _t17 = cpu->r[30] + 0x00000040u;
|
|
/* 02398354 */ cpu->r[5] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02398358 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 0239835C */ _t18 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0239835C */ _t19 = _t18 & 0x00000001u;
|
|
/* 0239835C */ if (_t19) goto L_0239839C; else goto L_02398360;
|
|
L_02398360: ; // 0x2398360
|
|
/* 02398360 */ _t20 = cpu->r[30] + 0x00000048u;
|
|
/* 02398360 */ cpu->r[7] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02398364 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 02398368 */ _t21 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02398368 */ _t22 = _t21 & 0x00000001u;
|
|
/* 02398368 */ if (_t22) goto L_0239839C; else goto L_0239836C;
|
|
L_0239836C: ; // 0x239836c
|
|
/* 0239836C */ _t23 = cpu->r[30] + 0x00000050u;
|
|
/* 0239836C */ cpu->r[8] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02398370 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02398374 */ _t24 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02398374 */ _t25 = _t24 & 0x00000001u;
|
|
/* 02398374 */ if (_t25) goto L_0239839C; else goto L_02398378;
|
|
L_02398378: ; // 0x2398378
|
|
/* 02398378 */ _t26 = cpu->r[30] + 0x00000058u;
|
|
/* 02398378 */ cpu->r[0] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0239837C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02398380 */ _t27 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02398380 */ _t28 = _t27 & 0x00000001u;
|
|
/* 02398380 */ if (_t28) goto L_0239839C; else goto L_02398384;
|
|
L_02398384: ; // 0x2398384
|
|
/* 02398384 */ _t29 = cpu->r[30] + 0x00000060u;
|
|
/* 02398384 */ cpu->r[10] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02398388 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0239838C */ _t30 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0239838C */ _t31 = _t30 & 0x00000001u;
|
|
/* 0239838C */ if (_t31) goto L_0239839C; else goto L_02398390;
|
|
L_02398390: ; // 0x2398390
|
|
/* 02398390 */ _t32 = cpu->r[30] + 0x00000068u;
|
|
/* 02398390 */ cpu->r[11] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02398394 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02398398 */ _t33 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02398398 */ _t34 = _t33 & 0x00000001u;
|
|
/* 02398398 */ if (_t34) goto L_0239839C; else goto L_02398448;
|
|
L_0239839C: ; // 0x239839c
|
|
/* 0239839C */ _t35 = cpu->r[31] + 0x00000000u;
|
|
/* 0239839C */ cpu->r[0] = rbrew_read32(cpu->mem, _t35);
|
|
/* 023983A0 */ cpu->r[30] = 0x00000000u;
|
|
/* 023983A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[0]);
|
|
/* 023983A8 */ _t36 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 023983A8 */ _t37 = _t36 & 0x00000001u;
|
|
/* 023983A8 */ if (_t37) goto L_023983AC; else goto L_02398448;
|
|
L_023983AC: ; // 0x23983ac
|
|
/* 023983AC */ cpu->r[29] = 0x00000000u;
|
|
L_023983B0: ; // 0x23983b0
|
|
/* 023983B0 */ _t38 = cpu->r[31] + 0x0000001Cu;
|
|
/* 023983B0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t38);
|
|
/* 023983B4 */ cpu->r[3] = 0x00000014u;
|
|
/* 023983B8 */ cpu->r[5] = 0x00000004u;
|
|
/* 023983BC */ Gambit_fn_02801AC8(cpu);
|
|
/* 023983C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023983C4 */ cpu->r[0] = cpu->r[3];
|
|
/* 023983C8 */ _t39 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023983C8 */ _t40 = _t39 & 0x00000001u;
|
|
/* 023983C8 */ if (_t40) goto L_023983D4; else goto L_023983CC;
|
|
L_023983CC: ; // 0x23983cc
|
|
/* 023983CC */ Gambit_fn_027C6158(cpu);
|
|
/* 023983D0 */ cpu->r[0] = cpu->r[3];
|
|
L_023983D4: ; // 0x23983d4
|
|
/* 023983D4 */ _t41 = cpu->r[31] + 0x00000008u;
|
|
/* 023983D4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t41);
|
|
/* 023983D8 */ _t42 = cpu->r[31] + 0x0000000Cu;
|
|
/* 023983D8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t42);
|
|
/* 023983DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], cpu->r[6]);
|
|
/* 023983E0 */ _t43 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 023983E0 */ _t44 = _t43 & 0x00000001u;
|
|
/* 023983E0 */ if (_t44) goto L_023983E4; else goto L_023983FC;
|
|
L_023983E4: ; // 0x23983e4
|
|
/* 023983E4 */ _t45 = cpu->r[31] + 0x00000010u;
|
|
/* 023983E4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t45);
|
|
/* 023983E8 */ cpu->r[7] = rbrew_rlwinm(cpu->r[12], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 023983EC */ _t46 = cpu->r[7] + cpu->r[8];
|
|
/* 023983EC */ rbrew_write32(cpu->mem, _t46, cpu->r[0]);
|
|
/* 023983F0 */ _t47 = cpu->r[31] + 0x00000008u;
|
|
/* 023983F0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t47);
|
|
/* 023983F4 */ cpu->r[12] = cpu->r[9] + 0x00000001u;
|
|
/* 023983F8 */ _t48 = cpu->r[31] + 0x00000008u;
|
|
/* 023983F8 */ rbrew_write32(cpu->mem, _t48, cpu->r[12]);
|
|
L_023983FC: ; // 0x23983fc
|
|
/* 023983FC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[12]);
|
|
/* 02398400 */ cpu->r[12] = 0x00000000u;
|
|
/* 02398404 */ _t49 = cpu->r[31] + 0x00000014u;
|
|
/* 02398404 */ cpu->r[6] = rbrew_read32(cpu->mem, _t49);
|
|
/* 02398408 */ _t50 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02398408 */ _t51 = _t50 & 0x00000001u;
|
|
/* 02398408 */ if (_t51) goto L_0239840C; else goto L_02398414;
|
|
L_0239840C: ; // 0x239840c
|
|
/* 0239840C */ _t52 = cpu->r[31] + 0x00000010u;
|
|
/* 0239840C */ cpu->r[10] = rbrew_read32(cpu->mem, _t52);
|
|
/* 02398410 */ _t53 = cpu->r[10] + cpu->r[29];
|
|
/* 02398410 */ cpu->r[12] = rbrew_read32(cpu->mem, _t53);
|
|
L_02398414: ; // 0x2398414
|
|
/* 02398414 */ _t54 = cpu->r[12] + 0x0000000Cu;
|
|
/* 02398414 */ rbrew_write32(cpu->mem, _t54, cpu->r[6]);
|
|
/* 02398418 */ _t55 = cpu->r[31] + 0x00000008u;
|
|
/* 02398418 */ cpu->r[11] = rbrew_read32(cpu->mem, _t55);
|
|
/* 0239841C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[11]);
|
|
/* 02398420 */ cpu->r[5] = 0x00000000u;
|
|
/* 02398424 */ _t56 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02398424 */ _t57 = _t56 & 0x00000001u;
|
|
/* 02398424 */ if (_t57) goto L_02398428; else goto L_02398430;
|
|
L_02398428: ; // 0x2398428
|
|
/* 02398428 */ _t58 = cpu->r[31] + 0x00000010u;
|
|
/* 02398428 */ cpu->r[12] = rbrew_read32(cpu->mem, _t58);
|
|
/* 0239842C */ _t59 = cpu->r[12] + cpu->r[29];
|
|
/* 0239842C */ cpu->r[5] = rbrew_read32(cpu->mem, _t59);
|
|
L_02398430: ; // 0x2398430
|
|
/* 02398430 */ _t60 = cpu->r[5] + 0x00000010u;
|
|
/* 02398430 */ rbrew_write32(cpu->mem, _t60, cpu->r[30]);
|
|
/* 02398434 */ _t61 = cpu->r[31] + 0x00000000u;
|
|
/* 02398434 */ cpu->r[0] = rbrew_read32(cpu->mem, _t61);
|
|
/* 02398438 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 0239843C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[0]);
|
|
/* 02398440 */ cpu->r[29] = cpu->r[29] + 0x00000004u;
|
|
/* 02398444 */ _t62 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02398444 */ _t63 = _t62 & 0x00000001u;
|
|
/* 02398444 */ if (_t63) goto L_023983B0; else goto L_02398448;
|
|
L_02398448: ; // 0x2398448
|
|
/* 02398448 */ _t64 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02398448 */ cpu->r[29] = rbrew_read32(cpu->mem, _t64);
|
|
/* 0239844C */ _t65 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239844C */ cpu->r[0] = rbrew_read32(cpu->mem, _t65);
|
|
/* 02398450 */ _t66 = cpu->r[1] + 0x00000010u;
|
|
/* 02398450 */ cpu->r[30] = rbrew_read32(cpu->mem, _t66);
|
|
/* 02398454 */ cpu->lr = cpu->r[0];
|
|
/* 02398458 */ _t67 = cpu->r[1] + 0x00000014u;
|
|
/* 02398458 */ cpu->r[31] = rbrew_read32(cpu->mem, _t67);
|
|
/* 0239845C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02398460 */ return;
|
|
}
|
|
|
|
// fn_02398464 @ 0x2398464
|
|
void Gambit_fn_02398464(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_02398464: ; // 0x2398464
|
|
/* 02398464 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02398464 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02398468 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0239846C */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239846C */ _t2 = _t1 & 0x00000001u;
|
|
/* 0239846C */ if (_t2) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0239846C */ goto L_02398470;
|
|
L_02398470: ; // 0x2398470
|
|
/* 02398470 */ _t3 = cpu->r[12] + 0x00000004u;
|
|
/* 02398470 */ rbrew_write32(cpu->mem, _t3, cpu->r[4]);
|
|
/* 02398474 */ return;
|
|
}
|
|
|
|
// fn_02398478 @ 0x2398478
|
|
void Gambit_fn_02398478(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02398478: ; // 0x2398478
|
|
/* 02398478 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02398478 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0239847C */ _t1 = cpu->r[12] + 0x00000020u;
|
|
/* 0239847C */ rbrew_write32(cpu->mem, _t1, cpu->r[4]);
|
|
/* 02398480 */ return;
|
|
}
|
|
|
|
// fn_02398484 @ 0x2398484
|
|
void Gambit_fn_02398484(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_02398484: ; // 0x2398484
|
|
/* 02398484 */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 02398484 */ cpu->r[7] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02398488 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 0239848C */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239848C */ _t2 = _t1 & 0x00000001u;
|
|
/* 0239848C */ if (_t2) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0239848C */ goto L_02398490;
|
|
L_02398490: ; // 0x2398490
|
|
/* 02398490 */ _t3 = cpu->r[3] + 0x00000000u;
|
|
/* 02398490 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02398494 */ cpu->r[8] = 0x00000000u;
|
|
/* 02398498 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], cpu->r[0]);
|
|
/* 0239849C */ _t4 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0239849C */ _t5 = _t4 & 0x00000001u;
|
|
/* 0239849C */ _t6 = _t5 ^ 0x00000001u;
|
|
/* 0239849C */ if (_t6) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0239849C */ goto L_023984A0;
|
|
L_023984A0: ; // 0x23984a0
|
|
/* 023984A0 */ cpu->r[11] = 0x00000000u;
|
|
L_023984A4: ; // 0x23984a4
|
|
/* 023984A4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[7]);
|
|
/* 023984A8 */ cpu->r[9] = 0x00000000u;
|
|
/* 023984AC */ _t7 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 023984AC */ _t8 = _t7 & 0x00000001u;
|
|
/* 023984AC */ if (_t8) goto L_023984B0; else goto L_023984B8;
|
|
L_023984B0: ; // 0x23984b0
|
|
/* 023984B0 */ _t9 = cpu->r[3] + 0x00000010u;
|
|
/* 023984B0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 023984B4 */ _t10 = cpu->r[12] + cpu->r[11];
|
|
/* 023984B4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t10);
|
|
L_023984B8: ; // 0x23984b8
|
|
/* 023984B8 */ _t11 = cpu->r[9] + 0x00000010u;
|
|
/* 023984B8 */ rbrew_write32(cpu->mem, _t11, cpu->r[4]);
|
|
/* 023984BC */ _t12 = cpu->r[3] + 0x00000000u;
|
|
/* 023984BC */ cpu->r[6] = rbrew_read32(cpu->mem, _t12);
|
|
/* 023984C0 */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 023984C4 */ cpu->r[11] = cpu->r[11] + 0x00000004u;
|
|
/* 023984C8 */ cpu->r[4] = cpu->r[4] + 0x00000001u;
|
|
/* 023984CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], cpu->r[6]);
|
|
/* 023984D0 */ _t13 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 023984D0 */ _t14 = _t13 & 0x00000001u;
|
|
/* 023984D0 */ _t15 = _t14 ^ 0x00000001u;
|
|
/* 023984D0 */ if (_t15) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 023984D0 */ goto L_023984D4;
|
|
L_023984D4: ; // 0x23984d4
|
|
/* 023984D4 */ _t16 = cpu->r[3] + 0x00000008u;
|
|
/* 023984D4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t16);
|
|
/* 023984D8 */ goto L_023984A4;
|
|
}
|
|
|
|
// fn_023984DC @ 0x23984dc
|
|
void Gambit_fn_023984DC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_023984DC: ; // 0x23984dc
|
|
/* 023984DC */ cpu->r[0] = cpu->lr;
|
|
/* 023984E0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 023984E0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 023984E0 */ cpu->r[1] = _t0;
|
|
/* 023984E4 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 023984E4 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 023984E8 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023984E8 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 023984EC */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 023984EC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 023984F0 */ _t4 = cpu->r[3] + 0x00000008u;
|
|
/* 023984F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 023984F4 */ _t5 = cpu->r[3] + 0x00000010u;
|
|
/* 023984F4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t5);
|
|
/* 023984F8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 023984FC */ cpu->r[31] = cpu->r[30] + cpu->r[0];
|
|
/* 02398500 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[31]);
|
|
/* 02398504 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398504 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02398504 */ if (_t7) goto L_0239851C; else goto L_02398508;
|
|
L_02398508: ; // 0x2398508
|
|
/* 02398508 */ _t8 = cpu->r[30] + 0x00000000u;
|
|
/* 02398508 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0239850C */ Gambit_fn_027C6130(cpu);
|
|
/* 02398510 */ cpu->r[30] = cpu->r[30] + 0x00000004u;
|
|
/* 02398514 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[31]);
|
|
/* 02398518 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398518 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02398518 */ if (_t10) goto L_0239851C; else goto L_02398508;
|
|
L_0239851C: ; // 0x239851c
|
|
/* 0239851C */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 0239851C */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02398520 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 02398520 */ cpu->r[30] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02398524 */ cpu->lr = cpu->r[0];
|
|
/* 02398528 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02398528 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0239852C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02398530 */ return;
|
|
}
|
|
|
|
// fn_023984E0 @ 0x23984e0
|
|
void Gambit_fn_023984E0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_023984E0: ; // 0x23984e0
|
|
/* 023984E0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 023984E0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 023984E0 */ cpu->r[1] = _t0;
|
|
/* 023984E4 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 023984E4 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 023984E8 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023984E8 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 023984EC */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 023984EC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 023984F0 */ _t4 = cpu->r[3] + 0x00000008u;
|
|
/* 023984F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 023984F4 */ _t5 = cpu->r[3] + 0x00000010u;
|
|
/* 023984F4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t5);
|
|
/* 023984F8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 023984FC */ cpu->r[31] = cpu->r[30] + cpu->r[0];
|
|
/* 02398500 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[31]);
|
|
/* 02398504 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398504 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02398504 */ if (_t7) goto L_0239851C; else goto L_02398508;
|
|
L_02398508: ; // 0x2398508
|
|
/* 02398508 */ _t8 = cpu->r[30] + 0x00000000u;
|
|
/* 02398508 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0239850C */ Gambit_fn_027C6130(cpu);
|
|
/* 02398510 */ cpu->r[30] = cpu->r[30] + 0x00000004u;
|
|
/* 02398514 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[31]);
|
|
/* 02398518 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398518 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02398518 */ if (_t10) goto L_0239851C; else goto L_02398508;
|
|
L_0239851C: ; // 0x239851c
|
|
/* 0239851C */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 0239851C */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02398520 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 02398520 */ cpu->r[30] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02398524 */ cpu->lr = cpu->r[0];
|
|
/* 02398528 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02398528 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0239852C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02398530 */ return;
|
|
}
|
|
|
|
// fn_02398534 @ 0x2398534
|
|
void Gambit_fn_02398534(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_02398534: ; // 0x2398534
|
|
/* 02398534 */ cpu->r[0] = cpu->lr;
|
|
/* 02398538 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02398538 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02398538 */ cpu->r[1] = _t0;
|
|
/* 0239853C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239853C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02398540 */ cpu->r[31] = cpu->r[3];
|
|
/* 02398544 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02398544 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02398548 */ _t3 = cpu->r[31] + 0x00000004u;
|
|
/* 02398548 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0239854C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02398550 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398550 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02398550 */ if (_t5) goto L_02398558; else goto L_02398554;
|
|
L_02398554: ; // 0x2398554
|
|
/* 02398554 */ Gambit_fn_027C700C(cpu);
|
|
L_02398558: ; // 0x2398558
|
|
/* 02398558 */ _t6 = cpu->r[31] + 0x00000008u;
|
|
/* 02398558 */ cpu->r[11] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0239855C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02398560 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398560 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02398560 */ if (_t8) goto L_0239856C; else goto L_02398564;
|
|
L_02398564: ; // 0x2398564
|
|
/* 02398564 */ cpu->r[3] = cpu->r[31];
|
|
/* 02398568 */ Gambit_fn_023984DC(cpu);
|
|
L_0239856C: ; // 0x239856c
|
|
/* 0239856C */ _t9 = cpu->r[31] + 0x00000024u;
|
|
/* 0239856C */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02398570 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02398574 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398574 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02398574 */ if (_t11) goto L_0239857C; else goto L_02398578;
|
|
L_02398578: ; // 0x2398578
|
|
/* 02398578 */ Gambit_fn_027C7B34(cpu);
|
|
L_0239857C: ; // 0x239857c
|
|
/* 0239857C */ cpu->r[0] = 0x00000000u;
|
|
/* 02398580 */ _t12 = cpu->r[31] + 0x00000019u;
|
|
/* 02398580 */ rbrew_write8(cpu->mem, _t12, (uint8_t)cpu->r[0]);
|
|
/* 02398584 */ _t13 = cpu->r[31] + 0x00000018u;
|
|
/* 02398584 */ rbrew_write8(cpu->mem, _t13, (uint8_t)cpu->r[0]);
|
|
/* 02398588 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02398588 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0239858C */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239858C */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02398590 */ cpu->lr = cpu->r[0];
|
|
/* 02398594 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02398598 */ return;
|
|
}
|
|
|
|
// fn_02398538 @ 0x2398538
|
|
void Gambit_fn_02398538(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_02398538: ; // 0x2398538
|
|
/* 02398538 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02398538 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02398538 */ cpu->r[1] = _t0;
|
|
/* 0239853C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239853C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02398540 */ cpu->r[31] = cpu->r[3];
|
|
/* 02398544 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02398544 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02398548 */ _t3 = cpu->r[31] + 0x00000004u;
|
|
/* 02398548 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0239854C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02398550 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398550 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02398550 */ if (_t5) goto L_02398558; else goto L_02398554;
|
|
L_02398554: ; // 0x2398554
|
|
/* 02398554 */ Gambit_fn_027C700C(cpu);
|
|
L_02398558: ; // 0x2398558
|
|
/* 02398558 */ _t6 = cpu->r[31] + 0x00000008u;
|
|
/* 02398558 */ cpu->r[11] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0239855C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02398560 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398560 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02398560 */ if (_t8) goto L_0239856C; else goto L_02398564;
|
|
L_02398564: ; // 0x2398564
|
|
/* 02398564 */ cpu->r[3] = cpu->r[31];
|
|
/* 02398568 */ Gambit_fn_023984DC(cpu);
|
|
L_0239856C: ; // 0x239856c
|
|
/* 0239856C */ _t9 = cpu->r[31] + 0x00000024u;
|
|
/* 0239856C */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02398570 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02398574 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398574 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02398574 */ if (_t11) goto L_0239857C; else goto L_02398578;
|
|
L_02398578: ; // 0x2398578
|
|
/* 02398578 */ Gambit_fn_027C7B34(cpu);
|
|
L_0239857C: ; // 0x239857c
|
|
/* 0239857C */ cpu->r[0] = 0x00000000u;
|
|
/* 02398580 */ _t12 = cpu->r[31] + 0x00000019u;
|
|
/* 02398580 */ rbrew_write8(cpu->mem, _t12, (uint8_t)cpu->r[0]);
|
|
/* 02398584 */ _t13 = cpu->r[31] + 0x00000018u;
|
|
/* 02398584 */ rbrew_write8(cpu->mem, _t13, (uint8_t)cpu->r[0]);
|
|
/* 02398588 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02398588 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0239858C */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239858C */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02398590 */ cpu->lr = cpu->r[0];
|
|
/* 02398594 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02398598 */ return;
|
|
}
|
|
|
|
// fn_0239859C @ 0x239859c
|
|
void Gambit_fn_0239859C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _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_0239859C: ; // 0x239859c
|
|
/* 0239859C */ cpu->r[0] = cpu->lr;
|
|
/* 023985A0 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 023985A0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 023985A0 */ cpu->r[1] = _t0;
|
|
/* 023985A4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023985A4 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 023985A8 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 023985A8 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 023985AC */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 023985AC */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 023985B0 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 023985B0 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 023985B4 */ cpu->r[29] = cpu->r[3];
|
|
/* 023985B8 */ _t5 = cpu->r[29] + 0x00000004u;
|
|
/* 023985B8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 023985BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023985C0 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023985C0 */ _t7 = _t6 & 0x00000001u;
|
|
/* 023985C0 */ if (_t7) goto L_023985E8; else goto L_023985C4;
|
|
L_023985C4: ; // 0x23985c4
|
|
/* 023985C4 */ _t8 = cpu->r[3] + 0x00000008u;
|
|
/* 023985C4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t8);
|
|
/* 023985C8 */ _t9 = cpu->r[8] + 0x00000000u;
|
|
/* 023985C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 023985CC */ /* nop */
|
|
/* 023985D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0xFFFFFFFFu);
|
|
/* 023985D4 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023985D4 */ _t11 = _t10 & 0x00000001u;
|
|
/* 023985D4 */ if (_t11) goto L_023985E8; else goto L_023985D8;
|
|
L_023985D8: ; // 0x23985d8
|
|
/* 023985D8 */ /* nop */
|
|
/* 023985DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 023985E0 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023985E0 */ _t13 = _t12 & 0x00000001u;
|
|
/* 023985E0 */ if (_t13) goto L_023985E8; else goto L_023985E4;
|
|
L_023985E4: ; // 0x23985e4
|
|
/* 023985E4 */ Gambit_fn_027C71A0(cpu);
|
|
L_023985E8: ; // 0x23985e8
|
|
/* 023985E8 */ _t14 = cpu->r[29] + 0x00000008u;
|
|
/* 023985E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 023985EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 023985F0 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023985F0 */ _t16 = _t15 & 0x00000001u;
|
|
/* 023985F0 */ if (_t16) goto L_02398638; else goto L_023985F4;
|
|
L_023985F4: ; // 0x23985f4
|
|
/* 023985F4 */ _t17 = cpu->r[29] + 0x00000010u;
|
|
/* 023985F4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 023985F8 */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 023985FC */ cpu->r[31] = cpu->r[30] + cpu->r[10];
|
|
/* 02398600 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[31]);
|
|
/* 02398604 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398604 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02398604 */ if (_t19) goto L_02398638; else goto L_02398608;
|
|
L_02398608: ; // 0x2398608
|
|
/* 02398608 */ _t20 = cpu->r[30] + 0x00000000u;
|
|
/* 02398608 */ cpu->r[3] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0239860C */ cpu->r[12] = cpu->r[3];
|
|
/* 02398610 */ _t21 = cpu->r[12] + 0x00000000u;
|
|
/* 02398610 */ cpu->r[11] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t21);
|
|
/* 02398614 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0xFFFFFFFFu);
|
|
/* 02398618 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398618 */ _t23 = _t22 & 0x00000001u;
|
|
/* 02398618 */ if (_t23) goto L_0239862C; else goto L_0239861C;
|
|
L_0239861C: ; // 0x239861c
|
|
/* 0239861C */ _t24 = cpu->r[12] + 0x00000002u;
|
|
/* 0239861C */ cpu->r[12] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t24);
|
|
/* 02398620 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0xFFFFFFFFu);
|
|
/* 02398624 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398624 */ _t26 = _t25 & 0x00000001u;
|
|
/* 02398624 */ if (_t26) goto L_0239862C; else goto L_02398628;
|
|
L_02398628: ; // 0x2398628
|
|
/* 02398628 */ Gambit_fn_027C61D0(cpu);
|
|
L_0239862C: ; // 0x239862c
|
|
/* 0239862C */ cpu->r[30] = cpu->r[30] + 0x00000004u;
|
|
/* 02398630 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[31]);
|
|
/* 02398634 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398634 */ _t28 = _t27 & 0x00000001u;
|
|
/* 02398634 */ if (_t28) goto L_02398638; else goto L_02398608;
|
|
L_02398638: ; // 0x2398638
|
|
/* 02398638 */ _t29 = cpu->r[29] + 0x00000024u;
|
|
/* 02398638 */ cpu->r[3] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0239863C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02398640 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398640 */ _t31 = _t30 & 0x00000001u;
|
|
/* 02398640 */ if (_t31) goto L_02398648; else goto L_02398644;
|
|
L_02398644: ; // 0x2398644
|
|
/* 02398644 */ Gambit_fn_027C7B74(cpu);
|
|
L_02398648: ; // 0x2398648
|
|
/* 02398648 */ _t32 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02398648 */ cpu->r[29] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0239864C */ _t33 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239864C */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02398650 */ _t34 = cpu->r[1] + 0x00000010u;
|
|
/* 02398650 */ cpu->r[30] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02398654 */ cpu->lr = cpu->r[0];
|
|
/* 02398658 */ _t35 = cpu->r[1] + 0x00000014u;
|
|
/* 02398658 */ cpu->r[31] = rbrew_read32(cpu->mem, _t35);
|
|
/* 0239865C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02398660 */ return;
|
|
}
|
|
|
|
// fn_023985A0 @ 0x23985a0
|
|
void Gambit_fn_023985A0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _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_023985A0: ; // 0x23985a0
|
|
/* 023985A0 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 023985A0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 023985A0 */ cpu->r[1] = _t0;
|
|
/* 023985A4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023985A4 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 023985A8 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 023985A8 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 023985AC */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 023985AC */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 023985B0 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 023985B0 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 023985B4 */ cpu->r[29] = cpu->r[3];
|
|
/* 023985B8 */ _t5 = cpu->r[29] + 0x00000004u;
|
|
/* 023985B8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 023985BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023985C0 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023985C0 */ _t7 = _t6 & 0x00000001u;
|
|
/* 023985C0 */ if (_t7) goto L_023985E8; else goto L_023985C4;
|
|
L_023985C4: ; // 0x23985c4
|
|
/* 023985C4 */ _t8 = cpu->r[3] + 0x00000008u;
|
|
/* 023985C4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t8);
|
|
/* 023985C8 */ _t9 = cpu->r[8] + 0x00000000u;
|
|
/* 023985C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 023985CC */ /* nop */
|
|
/* 023985D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0xFFFFFFFFu);
|
|
/* 023985D4 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023985D4 */ _t11 = _t10 & 0x00000001u;
|
|
/* 023985D4 */ if (_t11) goto L_023985E8; else goto L_023985D8;
|
|
L_023985D8: ; // 0x23985d8
|
|
/* 023985D8 */ /* nop */
|
|
/* 023985DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 023985E0 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023985E0 */ _t13 = _t12 & 0x00000001u;
|
|
/* 023985E0 */ if (_t13) goto L_023985E8; else goto L_023985E4;
|
|
L_023985E4: ; // 0x23985e4
|
|
/* 023985E4 */ Gambit_fn_027C71A0(cpu);
|
|
L_023985E8: ; // 0x23985e8
|
|
/* 023985E8 */ _t14 = cpu->r[29] + 0x00000008u;
|
|
/* 023985E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 023985EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 023985F0 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023985F0 */ _t16 = _t15 & 0x00000001u;
|
|
/* 023985F0 */ if (_t16) goto L_02398638; else goto L_023985F4;
|
|
L_023985F4: ; // 0x23985f4
|
|
/* 023985F4 */ _t17 = cpu->r[29] + 0x00000010u;
|
|
/* 023985F4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 023985F8 */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 023985FC */ cpu->r[31] = cpu->r[30] + cpu->r[10];
|
|
/* 02398600 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[31]);
|
|
/* 02398604 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398604 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02398604 */ if (_t19) goto L_02398638; else goto L_02398608;
|
|
L_02398608: ; // 0x2398608
|
|
/* 02398608 */ _t20 = cpu->r[30] + 0x00000000u;
|
|
/* 02398608 */ cpu->r[3] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0239860C */ cpu->r[12] = cpu->r[3];
|
|
/* 02398610 */ _t21 = cpu->r[12] + 0x00000000u;
|
|
/* 02398610 */ cpu->r[11] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t21);
|
|
/* 02398614 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0xFFFFFFFFu);
|
|
/* 02398618 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398618 */ _t23 = _t22 & 0x00000001u;
|
|
/* 02398618 */ if (_t23) goto L_0239862C; else goto L_0239861C;
|
|
L_0239861C: ; // 0x239861c
|
|
/* 0239861C */ _t24 = cpu->r[12] + 0x00000002u;
|
|
/* 0239861C */ cpu->r[12] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t24);
|
|
/* 02398620 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0xFFFFFFFFu);
|
|
/* 02398624 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398624 */ _t26 = _t25 & 0x00000001u;
|
|
/* 02398624 */ if (_t26) goto L_0239862C; else goto L_02398628;
|
|
L_02398628: ; // 0x2398628
|
|
/* 02398628 */ Gambit_fn_027C61D0(cpu);
|
|
L_0239862C: ; // 0x239862c
|
|
/* 0239862C */ cpu->r[30] = cpu->r[30] + 0x00000004u;
|
|
/* 02398630 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[31]);
|
|
/* 02398634 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398634 */ _t28 = _t27 & 0x00000001u;
|
|
/* 02398634 */ if (_t28) goto L_02398638; else goto L_02398608;
|
|
L_02398638: ; // 0x2398638
|
|
/* 02398638 */ _t29 = cpu->r[29] + 0x00000024u;
|
|
/* 02398638 */ cpu->r[3] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0239863C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02398640 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398640 */ _t31 = _t30 & 0x00000001u;
|
|
/* 02398640 */ if (_t31) goto L_02398648; else goto L_02398644;
|
|
L_02398644: ; // 0x2398644
|
|
/* 02398644 */ Gambit_fn_027C7B74(cpu);
|
|
L_02398648: ; // 0x2398648
|
|
/* 02398648 */ _t32 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02398648 */ cpu->r[29] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0239864C */ _t33 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239864C */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02398650 */ _t34 = cpu->r[1] + 0x00000010u;
|
|
/* 02398650 */ cpu->r[30] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02398654 */ cpu->lr = cpu->r[0];
|
|
/* 02398658 */ _t35 = cpu->r[1] + 0x00000014u;
|
|
/* 02398658 */ cpu->r[31] = rbrew_read32(cpu->mem, _t35);
|
|
/* 0239865C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02398660 */ return;
|
|
}
|
|
|
|
// fn_02398664 @ 0x2398664
|
|
void Gambit_fn_02398664(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68;
|
|
|
|
L_02398664: ; // 0x2398664
|
|
/* 02398664 */ _t0 = cpu->r[1] + 0xFFFFFFB0u;
|
|
/* 02398664 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02398664 */ cpu->r[1] = _t0;
|
|
/* 02398668 */ /* nop */
|
|
/* 0239866C */ _t1 = cpu->r[1] + 0x00000040u;
|
|
/* 0239866C */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 02398670 */ /* nop */
|
|
/* 02398674 */ _t2 = cpu->r[1] + 0x00000048u;
|
|
/* 02398674 */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 02398678 */ cpu->r[0] = cpu->lr;
|
|
/* 0239867C */ _t3 = cpu->r[1] + 0x00000054u;
|
|
/* 0239867C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02398680 */ cpu->r[27] = cpu->r[3];
|
|
/* 02398684 */ cpu->r[28] = cpu->r[4];
|
|
/* 02398688 */ _t4 = cpu->r[27] + 0x00000014u;
|
|
/* 02398688 */ cpu->r[10] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0239868C */ cpu->r[31] = 0x10080000u;
|
|
/* 02398690 */ _t5 = cpu->r[27] + 0x00000004u;
|
|
/* 02398690 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02398694 */ cpu->r[31] = cpu->r[31] + 0x00006D68u;
|
|
/* 02398698 */ cpu->r[24] = 0x00000000u;
|
|
/* 0239869C */ _t6 = cpu->r[10] + 0x000000A4u;
|
|
/* 0239869C */ cpu->r[30] = rbrew_read32(cpu->mem, _t6);
|
|
/* 023986A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 023986A4 */ cpu->f[31] = cpu->f[1];
|
|
/* 023986A8 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023986A8 */ _t8 = _t7 & 0x00000001u;
|
|
/* 023986A8 */ if (_t8) goto L_0239877C; else goto L_023986AC;
|
|
L_023986AC: ; // 0x23986ac
|
|
/* 023986AC */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 023986AC */ rbrew_write32(cpu->mem, _t9, cpu->r[31]);
|
|
/* 023986B0 */ cpu->r[3] = cpu->r[30];
|
|
/* 023986B4 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 023986B8 */ _t10 = cpu->r[1] + 0x00000010u;
|
|
/* 023986B8 */ rbrew_write32(cpu->mem, _t10, cpu->r[28]);
|
|
/* 023986BC */ Gambit_fn_02983BC4(cpu);
|
|
/* 023986C0 */ /* nop */
|
|
/* 023986C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0xFFFFFFFFu);
|
|
/* 023986C8 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023986C8 */ _t12 = _t11 & 0x00000001u;
|
|
/* 023986C8 */ if (_t12) goto L_0239877C; else goto L_023986CC;
|
|
L_023986CC: ; // 0x23986cc
|
|
/* 023986CC */ /* nop */
|
|
/* 023986D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0xFFFFFFFFu);
|
|
/* 023986D4 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023986D4 */ _t14 = _t13 & 0x00000001u;
|
|
/* 023986D4 */ if (_t14) goto L_0239877C; else goto L_023986D8;
|
|
L_023986D8: ; // 0x23986d8
|
|
/* 023986D8 */ cpu->r[9] = 0x10080000u;
|
|
/* 023986DC */ _t15 = cpu->r[9] + 0x00006D80u;
|
|
/* 023986DC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 023986E0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[31], cpu->f[13]);
|
|
/* 023986E4 */ _t16 = cpu->r[27] + 0x00000004u;
|
|
/* 023986E4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t16);
|
|
/* 023986E8 */ _t17 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 023986E8 */ _t18 = _t17 & 0x00000001u;
|
|
/* 023986E8 */ if (_t18) goto L_0239870C; else goto L_023986EC;
|
|
L_023986EC: ; // 0x23986ec
|
|
/* 023986EC */ cpu->r[4] = cpu->r[28];
|
|
/* 023986F0 */ Gambit_fn_027C76A0(cpu);
|
|
/* 023986F4 */ _t19 = cpu->r[27] + 0x00000024u;
|
|
/* 023986F4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t19);
|
|
/* 023986F8 */ cpu->r[24] = 0x00000001u;
|
|
/* 023986FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02398700 */ _t20 = cpu->r[27] + 0x00000019u;
|
|
/* 02398700 */ rbrew_write8(cpu->mem, _t20, (uint8_t)cpu->r[24]);
|
|
/* 02398704 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398704 */ _t22 = _t21 & 0x00000001u;
|
|
/* 02398704 */ if (_t22) goto L_0239877C; else goto L_02398708;
|
|
L_02398708: ; // 0x2398708
|
|
/* 02398708 */ goto L_02398774;
|
|
L_0239870C: ; // 0x239870c
|
|
/* 0239870C */ _t23 = cpu->r[3] + 0x00000020u;
|
|
/* 0239870C */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02398710 */ _t24 = cpu->r[30] + 0x00000028u;
|
|
/* 02398710 */ cpu->r[9] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02398714 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[9]);
|
|
/* 02398718 */ _t25 = cpu->r[30] + 0x0000002Cu;
|
|
/* 02398718 */ cpu->r[12] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0239871C */ _t26 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0239871C */ _t27 = _t26 & 0x00000001u;
|
|
/* 0239871C */ if (_t27) goto L_02398720; else goto L_02398728;
|
|
L_02398720: ; // 0x2398720
|
|
/* 02398720 */ cpu->r[11] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x0000006Cu);
|
|
/* 02398724 */ cpu->r[12] = cpu->r[12] + cpu->r[11];
|
|
L_02398728: ; // 0x2398728
|
|
/* 02398728 */ cpu->r[8] = 0x10080000u;
|
|
/* 0239872C */ _t28 = cpu->r[12] + 0x00000008u;
|
|
/* 0239872C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 02398730 */ _t29 = cpu->r[8] + 0x00006D84u;
|
|
/* 02398730 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 02398734 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[0]);
|
|
/* 02398738 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398738 */ _t31 = _t30 & 0x00000001u;
|
|
/* 02398738 */ if (_t31) goto L_02398754; else goto L_0239873C;
|
|
L_0239873C: ; // 0x239873c
|
|
/* 0239873C */ _t32 = cpu->r[30] + 0x00000018u;
|
|
/* 0239873C */ cpu->r[0] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02398740 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02398740 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02398744 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398744 */ _t34 = _t33 & 0x00000001u;
|
|
/* 02398744 */ if (_t34) goto L_02398754; else goto L_02398748;
|
|
L_02398748: ; // 0x2398748
|
|
/* 02398748 */ _t35 = cpu->r[3] + 0x00000008u;
|
|
/* 02398748 */ cpu->r[12] = rbrew_read32(cpu->mem, _t35);
|
|
/* 0239874C */ _t36 = cpu->r[12] + 0x0000000Cu;
|
|
/* 0239874C */ rbrew_write_f32(cpu->mem, _t36, cpu->f[0]);
|
|
/* 02398750 */ _t37 = cpu->r[27] + 0x00000004u;
|
|
/* 02398750 */ cpu->r[3] = rbrew_read32(cpu->mem, _t37);
|
|
L_02398754: ; // 0x2398754
|
|
/* 02398754 */ cpu->f[1] = cpu->f[31];
|
|
/* 02398758 */ cpu->r[4] = cpu->r[28];
|
|
/* 0239875C */ Gambit_fn_027C76D4(cpu);
|
|
/* 02398760 */ _t38 = cpu->r[27] + 0x00000024u;
|
|
/* 02398760 */ cpu->r[3] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02398764 */ cpu->r[24] = 0x00000001u;
|
|
/* 02398768 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239876C */ _t39 = cpu->r[27] + 0x00000019u;
|
|
/* 0239876C */ rbrew_write8(cpu->mem, _t39, (uint8_t)cpu->r[24]);
|
|
/* 02398770 */ _t40 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398770 */ _t41 = _t40 & 0x00000001u;
|
|
/* 02398770 */ if (_t41) goto L_0239877C; else goto L_02398774;
|
|
L_02398774: ; // 0x2398774
|
|
/* 02398774 */ cpu->f[1] = cpu->f[31];
|
|
/* 02398778 */ Gambit_fn_027C7D04(cpu);
|
|
L_0239877C: ; // 0x239877c
|
|
/* 0239877C */ _t42 = cpu->r[27] + 0x00000008u;
|
|
/* 0239877C */ cpu->r[7] = rbrew_read32(cpu->mem, _t42);
|
|
/* 02398780 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 02398784 */ _t43 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398784 */ _t44 = _t43 & 0x00000001u;
|
|
/* 02398784 */ if (_t44) goto L_0239882C; else goto L_02398788;
|
|
L_02398788: ; // 0x2398788
|
|
/* 02398788 */ cpu->r[25] = 0x00000000u;
|
|
/* 0239878C */ cpu->r[23] = 0x00000006u;
|
|
/* 02398790 */ cpu->r[29] = cpu->r[25];
|
|
/* 02398794 */ cpu->r[26] = cpu->r[25];
|
|
/* 02398798 */ cpu->r[22] = cpu->r[29];
|
|
L_0239879C: ; // 0x239879c
|
|
/* 0239879C */ _t45 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239879C */ rbrew_write32(cpu->mem, _t45, cpu->r[31]);
|
|
/* 023987A0 */ cpu->r[3] = cpu->r[30];
|
|
/* 023987A4 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 023987A8 */ cpu->r[4] = cpu->r[29];
|
|
/* 023987AC */ _t46 = cpu->r[1] + 0x00000008u;
|
|
/* 023987AC */ rbrew_write32(cpu->mem, _t46, cpu->r[28]);
|
|
/* 023987B0 */ Gambit_fn_029843D4(cpu);
|
|
/* 023987B4 */ cpu->r[0] = cpu->r[3];
|
|
/* 023987B8 */ /* nop */
|
|
/* 023987BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0xFFFFFFFFu);
|
|
/* 023987C0 */ _t47 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023987C0 */ _t48 = _t47 & 0x00000001u;
|
|
/* 023987C0 */ if (_t48) goto L_02398820; else goto L_023987C4;
|
|
L_023987C4: ; // 0x23987c4
|
|
/* 023987C4 */ /* nop */
|
|
/* 023987C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 023987CC */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023987CC */ _t50 = _t49 & 0x00000001u;
|
|
/* 023987CC */ if (_t50) goto L_02398820; else goto L_023987D0;
|
|
L_023987D0: ; // 0x23987d0
|
|
/* 023987D0 */ _t51 = cpu->r[27] + 0x00000000u;
|
|
/* 023987D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t51);
|
|
/* 023987D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], cpu->r[0]);
|
|
/* 023987D8 */ _t52 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 023987D8 */ _t53 = _t52 & 0x00000001u;
|
|
/* 023987D8 */ if (_t53) goto L_023987DC; else goto L_0239882C;
|
|
L_023987DC: ; // 0x23987dc
|
|
/* 023987DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 023987E0 */ _t54 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023987E0 */ _t55 = _t54 & 0x00000001u;
|
|
/* 023987E0 */ if (_t55) goto L_023987E4; else goto L_023987F0;
|
|
L_023987E4: ; // 0x23987e4
|
|
/* 023987E4 */ cpu->r[3] = cpu->r[27];
|
|
/* 023987E8 */ Gambit_fn_023984DC(cpu);
|
|
/* 023987EC */ cpu->r[25] = 0x00000001u;
|
|
L_023987F0: ; // 0x23987f0
|
|
/* 023987F0 */ _t56 = cpu->r[27] + 0x00000008u;
|
|
/* 023987F0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t56);
|
|
/* 023987F4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], cpu->r[7]);
|
|
/* 023987F8 */ cpu->r[3] = 0x00000000u;
|
|
/* 023987FC */ _t57 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 023987FC */ _t58 = _t57 & 0x00000001u;
|
|
/* 023987FC */ if (_t58) goto L_02398800; else goto L_02398808;
|
|
L_02398800: ; // 0x2398800
|
|
/* 02398800 */ _t59 = cpu->r[27] + 0x00000010u;
|
|
/* 02398800 */ cpu->r[8] = rbrew_read32(cpu->mem, _t59);
|
|
/* 02398804 */ _t60 = cpu->r[8] + cpu->r[22];
|
|
/* 02398804 */ cpu->r[3] = rbrew_read32(cpu->mem, _t60);
|
|
L_02398808: ; // 0x2398808
|
|
/* 02398808 */ cpu->r[5] = cpu->r[28];
|
|
/* 0239880C */ cpu->r[4] = cpu->r[29];
|
|
/* 02398810 */ Gambit_fn_027C63C4(cpu);
|
|
/* 02398814 */ cpu->r[26] = cpu->r[26] + 0x00000001u;
|
|
/* 02398818 */ cpu->r[22] = cpu->r[22] + 0x00000004u;
|
|
/* 0239881C */ cpu->r[24] = 0x00000001u;
|
|
L_02398820: ; // 0x2398820
|
|
/* 02398820 */ cpu->r[23] = cpu->r[23] + 0xFFFFFFFFu;
|
|
/* 02398820 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], 0x00000000u);
|
|
/* 02398824 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 02398828 */ _t61 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398828 */ _t62 = _t61 & 0x00000001u;
|
|
/* 02398828 */ if (_t62) goto L_0239882C; else goto L_0239879C;
|
|
L_0239882C: ; // 0x239882c
|
|
/* 0239882C */ _t63 = cpu->r[27] + 0x00000018u;
|
|
/* 0239882C */ rbrew_write8(cpu->mem, _t63, (uint8_t)cpu->r[24]);
|
|
/* 02398830 */ /* nop */
|
|
/* 02398834 */ _t64 = cpu->r[1] + 0x00000048u;
|
|
/* 02398834 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t64);
|
|
/* 02398838 */ _t65 = cpu->r[1] + 0x00000040u;
|
|
/* 02398838 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t65);
|
|
/* 0239883C */ _t66 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0239883C */ _t67 = _t66 & 0x00000001u;
|
|
/* 0239883C */ if (_t67) goto L_02398840; // else: addr-0 trap, fall-through
|
|
L_02398840: ; // 0x2398840
|
|
/* 02398840 */ _t68 = cpu->r[1] + 0x00000054u;
|
|
/* 02398840 */ cpu->r[0] = rbrew_read32(cpu->mem, _t68);
|
|
/* 02398844 */ cpu->lr = cpu->r[0];
|
|
/* 02398848 */ cpu->r[1] = cpu->r[1] + 0x00000050u;
|
|
/* 0239884C */ return;
|
|
}
|
|
|
|
// fn_02398850 @ 0x2398850
|
|
void Gambit_fn_02398850(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_02398850: ; // 0x2398850
|
|
/* 02398850 */ cpu->r[0] = cpu->lr;
|
|
/* 02398854 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02398854 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02398854 */ cpu->r[1] = _t0;
|
|
/* 02398858 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 02398858 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0239885C */ cpu->r[30] = cpu->r[3];
|
|
/* 02398860 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02398860 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 02398864 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02398864 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 02398868 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02398868 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0239886C */ cpu->r[29] = cpu->r[5];
|
|
/* 02398870 */ _t5 = cpu->r[30] + 0x00000020u;
|
|
/* 02398870 */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02398874 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02398878 */ cpu->r[31] = cpu->r[4];
|
|
/* 0239887C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239887C */ _t7 = _t6 & 0x00000001u;
|
|
/* 0239887C */ if (_t7) goto L_023988AC; else goto L_02398880;
|
|
L_02398880: ; // 0x2398880
|
|
/* 02398880 */ _t8 = cpu->r[30] + 0x00000004u;
|
|
/* 02398880 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02398884 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02398888 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398888 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02398888 */ if (_t10) goto L_023988AC; else goto L_0239888C;
|
|
L_0239888C: ; // 0x239888c
|
|
/* 0239888C */ _t11 = cpu->r[30] + 0x00000014u;
|
|
/* 0239888C */ cpu->r[4] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02398890 */ cpu->r[5] = cpu->r[31];
|
|
/* 02398894 */ Gambit_fn_02397F10(cpu);
|
|
/* 02398898 */ cpu->r[5] = cpu->r[29];
|
|
/* 0239889C */ cpu->r[4] = cpu->r[31];
|
|
/* 023988A0 */ cpu->r[3] = cpu->r[30];
|
|
/* 023988A4 */ Gambit_fn_02398664(cpu);
|
|
/* 023988A8 */ goto L_023988C4;
|
|
L_023988AC: ; // 0x23988ac
|
|
/* 023988AC */ cpu->r[12] = 0x10080000u;
|
|
/* 023988B0 */ cpu->r[3] = cpu->r[30];
|
|
/* 023988B4 */ _t12 = cpu->r[12] + 0x00006D88u;
|
|
/* 023988B4 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 023988B8 */ cpu->r[4] = cpu->r[31];
|
|
/* 023988BC */ cpu->r[5] = cpu->r[29];
|
|
/* 023988C0 */ Gambit_fn_02398664(cpu);
|
|
L_023988C4: ; // 0x23988c4
|
|
/* 023988C4 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023988C4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t13);
|
|
/* 023988C8 */ _t14 = cpu->r[1] + 0x0000001Cu;
|
|
/* 023988C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 023988CC */ _t15 = cpu->r[1] + 0x00000010u;
|
|
/* 023988CC */ cpu->r[30] = rbrew_read32(cpu->mem, _t15);
|
|
/* 023988D0 */ cpu->lr = cpu->r[0];
|
|
/* 023988D4 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 023988D4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 023988D8 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 023988DC */ return;
|
|
}
|
|
|
|
// fn_02398854 @ 0x2398854
|
|
void Gambit_fn_02398854(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_02398854: ; // 0x2398854
|
|
/* 02398854 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02398854 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02398854 */ cpu->r[1] = _t0;
|
|
/* 02398858 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 02398858 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0239885C */ cpu->r[30] = cpu->r[3];
|
|
/* 02398860 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02398860 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 02398864 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02398864 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 02398868 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02398868 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0239886C */ cpu->r[29] = cpu->r[5];
|
|
/* 02398870 */ _t5 = cpu->r[30] + 0x00000020u;
|
|
/* 02398870 */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02398874 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02398878 */ cpu->r[31] = cpu->r[4];
|
|
/* 0239887C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239887C */ _t7 = _t6 & 0x00000001u;
|
|
/* 0239887C */ if (_t7) goto L_023988AC; else goto L_02398880;
|
|
L_02398880: ; // 0x2398880
|
|
/* 02398880 */ _t8 = cpu->r[30] + 0x00000004u;
|
|
/* 02398880 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02398884 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02398888 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398888 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02398888 */ if (_t10) goto L_023988AC; else goto L_0239888C;
|
|
L_0239888C: ; // 0x239888c
|
|
/* 0239888C */ _t11 = cpu->r[30] + 0x00000014u;
|
|
/* 0239888C */ cpu->r[4] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02398890 */ cpu->r[5] = cpu->r[31];
|
|
/* 02398894 */ Gambit_fn_02397F10(cpu);
|
|
/* 02398898 */ cpu->r[5] = cpu->r[29];
|
|
/* 0239889C */ cpu->r[4] = cpu->r[31];
|
|
/* 023988A0 */ cpu->r[3] = cpu->r[30];
|
|
/* 023988A4 */ Gambit_fn_02398664(cpu);
|
|
/* 023988A8 */ goto L_023988C4;
|
|
L_023988AC: ; // 0x23988ac
|
|
/* 023988AC */ cpu->r[12] = 0x10080000u;
|
|
/* 023988B0 */ cpu->r[3] = cpu->r[30];
|
|
/* 023988B4 */ _t12 = cpu->r[12] + 0x00006D88u;
|
|
/* 023988B4 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 023988B8 */ cpu->r[4] = cpu->r[31];
|
|
/* 023988BC */ cpu->r[5] = cpu->r[29];
|
|
/* 023988C0 */ Gambit_fn_02398664(cpu);
|
|
L_023988C4: ; // 0x23988c4
|
|
/* 023988C4 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023988C4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t13);
|
|
/* 023988C8 */ _t14 = cpu->r[1] + 0x0000001Cu;
|
|
/* 023988C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 023988CC */ _t15 = cpu->r[1] + 0x00000010u;
|
|
/* 023988CC */ cpu->r[30] = rbrew_read32(cpu->mem, _t15);
|
|
/* 023988D0 */ cpu->lr = cpu->r[0];
|
|
/* 023988D4 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 023988D4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 023988D8 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 023988DC */ return;
|
|
}
|
|
|
|
// fn_023988E0 @ 0x23988e0
|
|
void Gambit_fn_023988E0(CPUState* 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_023988E0: ; // 0x23988e0
|
|
/* 023988E0 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 023988E0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t0);
|
|
/* 023988E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 023988E8 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023988E8 */ _t2 = _t1 & 0x00000001u;
|
|
/* 023988E8 */ if (_t2) goto L_023988F4; else goto L_023988EC;
|
|
L_023988EC: ; // 0x23988ec
|
|
/* 023988EC */ _t3 = cpu->r[10] + 0x00000008u;
|
|
/* 023988EC */ cpu->r[9] = rbrew_read32(cpu->mem, _t3);
|
|
/* 023988F0 */ _t4 = cpu->r[9] + 0x00000008u;
|
|
/* 023988F0 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[1]);
|
|
L_023988F4: ; // 0x23988f4
|
|
/* 023988F4 */ _t5 = cpu->r[3] + 0x00000008u;
|
|
/* 023988F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 023988F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 023988FC */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023988FC */ _t7 = _t6 & 0x00000001u;
|
|
/* 023988FC */ if (_t7) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 023988FC */ goto L_02398900;
|
|
L_02398900: ; // 0x2398900
|
|
/* 02398900 */ _t8 = cpu->r[3] + 0x00000010u;
|
|
/* 02398900 */ cpu->r[11] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02398904 */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02398908 */ cpu->r[8] = cpu->r[11] + cpu->r[10];
|
|
/* 0239890C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[8]);
|
|
/* 02398910 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398910 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02398910 */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02398910 */ goto L_02398914;
|
|
L_02398914: ; // 0x2398914
|
|
/* 02398914 */ _t11 = cpu->r[11] + 0x00000000u;
|
|
/* 02398914 */ cpu->r[9] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02398918 */ cpu->r[12] = cpu->r[9];
|
|
/* 0239891C */ _t12 = cpu->r[12] + 0x00000000u;
|
|
/* 0239891C */ cpu->r[0] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t12);
|
|
/* 02398920 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 02398924 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398924 */ _t14 = _t13 & 0x00000001u;
|
|
/* 02398924 */ if (_t14) goto L_02398938; else goto L_02398928;
|
|
L_02398928: ; // 0x2398928
|
|
/* 02398928 */ _t15 = cpu->r[12] + 0x00000002u;
|
|
/* 02398928 */ cpu->r[7] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 0239892C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0xFFFFFFFFu);
|
|
/* 02398930 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398930 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02398930 */ if (_t17) goto L_02398938; else goto L_02398934;
|
|
L_02398934: ; // 0x2398934
|
|
/* 02398934 */ _t18 = cpu->r[9] + 0x00000008u;
|
|
/* 02398934 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[1]);
|
|
L_02398938: ; // 0x2398938
|
|
/* 02398938 */ cpu->r[11] = cpu->r[11] + 0x00000004u;
|
|
/* 0239893C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[8]);
|
|
/* 02398940 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398940 */ _t20 = _t19 & 0x00000001u;
|
|
/* 02398940 */ if (_t20) goto L_02398944; else goto L_02398914;
|
|
L_02398944: ; // 0x2398944
|
|
/* 02398944 */ return;
|
|
}
|
|
|
|
// fn_02398948 @ 0x2398948
|
|
void Gambit_fn_02398948(CPUState* cpu) {
|
|
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_02398948: ; // 0x2398948
|
|
/* 02398948 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02398948 */ cpu->r[7] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0239894C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 02398950 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398950 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02398950 */ if (_t2) goto L_02398960; else goto L_02398954;
|
|
L_02398954: ; // 0x2398954
|
|
/* 02398954 */ _t3 = cpu->r[7] + 0x00000008u;
|
|
/* 02398954 */ cpu->r[8] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02398958 */ _t4 = cpu->r[8] + 0x00000008u;
|
|
/* 02398958 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 0239895C */ return;
|
|
L_02398960: ; // 0x2398960
|
|
/* 02398960 */ _t5 = cpu->r[3] + 0x00000008u;
|
|
/* 02398960 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02398964 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02398968 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398968 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02398968 */ if (_t7) goto L_023989B4; else goto L_0239896C;
|
|
L_0239896C: ; // 0x239896c
|
|
/* 0239896C */ _t8 = cpu->r[3] + 0x00000010u;
|
|
/* 0239896C */ cpu->r[10] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02398970 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02398974 */ cpu->r[7] = cpu->r[10] + cpu->r[0];
|
|
/* 02398978 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[7]);
|
|
/* 0239897C */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239897C */ _t10 = _t9 & 0x00000001u;
|
|
/* 0239897C */ if (_t10) goto L_023989B4; else goto L_02398980;
|
|
L_02398980: ; // 0x2398980
|
|
/* 02398980 */ _t11 = cpu->r[10] + 0x00000000u;
|
|
/* 02398980 */ cpu->r[11] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02398984 */ cpu->r[12] = cpu->r[11];
|
|
/* 02398988 */ _t12 = cpu->r[12] + 0x00000000u;
|
|
/* 02398988 */ cpu->r[8] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t12);
|
|
/* 0239898C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0xFFFFFFFFu);
|
|
/* 02398990 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398990 */ _t14 = _t13 & 0x00000001u;
|
|
/* 02398990 */ if (_t14) goto L_023989A8; else goto L_02398994;
|
|
L_02398994: ; // 0x2398994
|
|
/* 02398994 */ _t15 = cpu->r[12] + 0x00000002u;
|
|
/* 02398994 */ cpu->r[9] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 02398998 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0xFFFFFFFFu);
|
|
/* 0239899C */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239899C */ _t17 = _t16 & 0x00000001u;
|
|
/* 0239899C */ if (_t17) goto L_023989A8; else goto L_023989A0;
|
|
L_023989A0: ; // 0x23989a0
|
|
/* 023989A0 */ _t18 = cpu->r[11] + 0x00000008u;
|
|
/* 023989A0 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 023989A4 */ return;
|
|
L_023989A8: ; // 0x23989a8
|
|
/* 023989A8 */ cpu->r[10] = cpu->r[10] + 0x00000004u;
|
|
/* 023989AC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[7]);
|
|
/* 023989B0 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023989B0 */ _t20 = _t19 & 0x00000001u;
|
|
/* 023989B0 */ if (_t20) goto L_023989B4; else goto L_02398980;
|
|
L_023989B4: ; // 0x23989b4
|
|
/* 023989B4 */ cpu->r[10] = 0x10080000u;
|
|
/* 023989B8 */ _t21 = cpu->r[10] + 0x00006D80u;
|
|
/* 023989B8 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 023989BC */ return;
|
|
}
|
|
|
|
// fn_023989C0 @ 0x23989c0
|
|
void Gambit_fn_023989C0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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_023989C0: ; // 0x23989c0
|
|
/* 023989C0 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 023989C0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 023989C0 */ cpu->r[1] = _t0;
|
|
/* 023989C4 */ /* nop */
|
|
/* 023989C8 */ cpu->r[0] = cpu->lr;
|
|
/* 023989CC */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 023989CC */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 023989D0 */ _t2 = cpu->r[3] + 0x00000004u;
|
|
/* 023989D0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t2);
|
|
/* 023989D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 023989D8 */ cpu->r[31] = cpu->r[4];
|
|
/* 023989DC */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023989DC */ _t4 = _t3 & 0x00000001u;
|
|
/* 023989DC */ if (_t4) goto L_02398AD0; else goto L_023989E0;
|
|
L_023989E0: ; // 0x23989e0
|
|
/* 023989E0 */ _t5 = cpu->r[6] + 0x00000008u;
|
|
/* 023989E0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t5);
|
|
/* 023989E4 */ _t6 = cpu->r[7] + 0x00000000u;
|
|
/* 023989E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 023989E8 */ /* nop */
|
|
/* 023989EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0xFFFFFFFFu);
|
|
/* 023989F0 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023989F0 */ _t8 = _t7 & 0x00000001u;
|
|
/* 023989F0 */ if (_t8) goto L_02398AD0; else goto L_023989F4;
|
|
L_023989F4: ; // 0x23989f4
|
|
/* 023989F4 */ /* nop */
|
|
/* 023989F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 023989FC */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023989FC */ _t10 = _t9 & 0x00000001u;
|
|
/* 023989FC */ if (_t10) goto L_02398AD0; else goto L_02398A00;
|
|
L_02398A00: ; // 0x2398a00
|
|
/* 02398A00 */ cpu->r[10] = 0x10080000u;
|
|
/* 02398A04 */ _t11 = cpu->r[31] + 0x00000004u;
|
|
/* 02398A04 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02398A08 */ cpu->r[10] = cpu->r[10] + 0x00006D68u;
|
|
/* 02398A0C */ _t12 = cpu->r[6] + 0x0000001Cu;
|
|
/* 02398A0C */ cpu->r[8] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02398A10 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02398A10 */ rbrew_write32(cpu->mem, _t13, cpu->r[10]);
|
|
/* 02398A14 */ _t14 = cpu->r[1] + 0x00000008u;
|
|
/* 02398A14 */ rbrew_write32(cpu->mem, _t14, cpu->r[8]);
|
|
/* 02398A18 */ _t15 = cpu->r[12] + 0x00000014u;
|
|
/* 02398A18 */ cpu->r[6] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02398A1C */ cpu->ctr = cpu->r[6];
|
|
/* 02398A20 */ cpu->r[3] = cpu->r[31];
|
|
/* 02398A24 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02398A28 */ _t16 = cpu->r[31] + 0x00000004u;
|
|
/* 02398A28 */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02398A2C */ _t17 = cpu->r[11] + 0x00000014u;
|
|
/* 02398A2C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02398A30 */ cpu->ctr = cpu->r[0];
|
|
/* 02398A34 */ cpu->r[3] = cpu->r[31];
|
|
/* 02398A38 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02398A3C */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02398A3C */ cpu->r[7] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02398A40 */ _t19 = cpu->r[7] + 0x00000014u;
|
|
/* 02398A40 */ cpu->r[9] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02398A44 */ cpu->ctr = cpu->r[9];
|
|
/* 02398A48 */ _t20 = cpu->r[31] + 0x00000000u;
|
|
/* 02398A48 */ cpu->r[30] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02398A4C */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02398A50 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02398A54 */ _t21 = cpu->r[1] + 0x00000008u;
|
|
/* 02398A54 */ cpu->r[10] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02398A58 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[10]);
|
|
/* 02398A5C */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398A5C */ _t23 = _t22 & 0x00000001u;
|
|
/* 02398A5C */ if (_t23) goto L_02398A60; else goto L_02398A78;
|
|
L_02398A60: ; // 0x2398a60
|
|
/* 02398A60 */ /* nop */
|
|
/* 02398A64 */ _t24 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02398A64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02398A68 */ cpu->lr = cpu->r[0];
|
|
/* 02398A6C */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 02398A70 */ cpu->r[3] = 0x00000001u;
|
|
/* 02398A74 */ return;
|
|
L_02398A78: ; // 0x2398a78
|
|
/* 02398A78 */ cpu->r[0] = 0x00080000u;
|
|
/* 02398A7C */ _t25 = cpu->r[31] + 0x00000000u;
|
|
/* 02398A7C */ cpu->r[11] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02398A80 */ cpu->r[12] = 0x10110000u;
|
|
/* 02398A84 */ cpu->r[0] = cpu->r[0] | 0x00000001u;
|
|
/* 02398A88 */ _t26 = cpu->r[1] + 0x00000008u;
|
|
/* 02398A88 */ cpu->r[10] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02398A8C */ cpu->r[11] = cpu->r[11] + 0xFFFFFFFFu;
|
|
/* 02398A90 */ cpu->ctr = cpu->r[0];
|
|
/* 02398A94 */ _t27 = cpu->r[12] + 0x00007399u;
|
|
/* 02398A94 */ cpu->r[12] = rbrew_read8(cpu->mem, _t27);
|
|
/* 02398A98 */ cpu->r[10] = cpu->r[10] + 0xFFFFFFFFu;
|
|
L_02398A9C: ; // 0x2398a9c
|
|
/* 02398A9C */ _t28 = cpu->r[11] + 0x00000001u;
|
|
/* 02398A9C */ cpu->r[8] = rbrew_read8(cpu->mem, _t28);
|
|
/* 02398A9C */ cpu->r[11] = _t28;
|
|
/* 02398AA0 */ _t29 = cpu->r[10] + 0x00000001u;
|
|
/* 02398AA0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t29);
|
|
/* 02398AA0 */ cpu->r[10] = _t29;
|
|
/* 02398AA4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[0]);
|
|
/* 02398AA8 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398AA8 */ _t31 = _t30 & 0x00000001u;
|
|
/* 02398AA8 */ if (_t31) goto L_02398AAC; else goto L_02398AB8;
|
|
L_02398AAC: ; // 0x2398aac
|
|
/* 02398AAC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[12]);
|
|
/* 02398AB0 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398AB0 */ _t33 = _t32 & 0x00000001u;
|
|
/* 02398AB0 */ if (_t33) goto L_02398A60; else goto L_02398AB4;
|
|
L_02398AB4: ; // 0x2398ab4
|
|
/* 02398AB4 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02398AB4 */ _t34 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02398AB4 */ _t35 = _t34 >> (0x00000002u & 31u);
|
|
/* 02398AB4 */ _t36 = _t35 & 0x00000001u;
|
|
/* 02398AB4 */ if (_t36) goto L_02398A9C; else goto L_02398AB8;
|
|
L_02398AB8: ; // 0x2398ab8
|
|
/* 02398AB8 */ /* nop */
|
|
/* 02398ABC */ _t37 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02398ABC */ cpu->r[0] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02398AC0 */ cpu->lr = cpu->r[0];
|
|
/* 02398AC4 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 02398AC8 */ cpu->r[3] = 0x00000000u;
|
|
/* 02398ACC */ return;
|
|
L_02398AD0: ; // 0x2398ad0
|
|
/* 02398AD0 */ _t38 = cpu->r[3] + 0x00000008u;
|
|
/* 02398AD0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02398AD4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02398AD8 */ _t39 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398AD8 */ _t40 = _t39 & 0x00000001u;
|
|
/* 02398AD8 */ if (_t40) goto L_02398B74; else goto L_02398ADC;
|
|
L_02398ADC: ; // 0x2398adc
|
|
/* 02398ADC */ _t41 = cpu->r[3] + 0x00000010u;
|
|
/* 02398ADC */ cpu->r[29] = rbrew_read32(cpu->mem, _t41);
|
|
/* 02398AE0 */ cpu->r[12] = rbrew_rlwinm(cpu->r[9], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02398AE4 */ cpu->r[30] = cpu->r[29] + cpu->r[12];
|
|
/* 02398AE8 */ _t42 = cpu->r[3] + 0x00000014u;
|
|
/* 02398AE8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t42);
|
|
/* 02398AEC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[30]);
|
|
/* 02398AF0 */ _t43 = cpu->r[7] + 0x000000A4u;
|
|
/* 02398AF0 */ cpu->r[28] = rbrew_read32(cpu->mem, _t43);
|
|
/* 02398AF4 */ _t44 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398AF4 */ _t45 = _t44 & 0x00000001u;
|
|
/* 02398AF4 */ if (_t45) goto L_02398B74; else goto L_02398AF8;
|
|
L_02398AF8: ; // 0x2398af8
|
|
/* 02398AF8 */ _t46 = cpu->r[29] + 0x00000000u;
|
|
/* 02398AF8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t46);
|
|
/* 02398AFC */ cpu->r[9] = cpu->r[12];
|
|
/* 02398B00 */ _t47 = cpu->r[9] + 0x00000000u;
|
|
/* 02398B00 */ cpu->r[0] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t47);
|
|
/* 02398B04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 02398B08 */ _t48 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398B08 */ _t49 = _t48 & 0x00000001u;
|
|
/* 02398B08 */ if (_t49) goto L_02398B68; else goto L_02398B0C;
|
|
L_02398B0C: ; // 0x2398b0c
|
|
/* 02398B0C */ _t50 = cpu->r[9] + 0x00000002u;
|
|
/* 02398B0C */ cpu->r[6] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t50);
|
|
/* 02398B10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0xFFFFFFFFu);
|
|
/* 02398B14 */ _t51 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398B14 */ _t52 = _t51 & 0x00000001u;
|
|
/* 02398B14 */ if (_t52) goto L_02398B68; else goto L_02398B18;
|
|
L_02398B18: ; // 0x2398b18
|
|
/* 02398B18 */ _t53 = cpu->r[12] + 0x00000000u;
|
|
/* 02398B18 */ cpu->r[27] = rbrew_read32(cpu->mem, _t53);
|
|
/* 02398B1C */ cpu->r[5] = cpu->r[31];
|
|
/* 02398B20 */ cpu->r[3] = cpu->r[28];
|
|
/* 02398B24 */ /* nop */
|
|
/* 02398B28 */ Gambit_fn_029843D4(cpu);
|
|
/* 02398B2C */ cpu->r[9] = cpu->r[3];
|
|
/* 02398B30 */ /* nop */
|
|
/* 02398B34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0xFFFFFFFFu);
|
|
/* 02398B38 */ _t54 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398B38 */ _t55 = _t54 & 0x00000001u;
|
|
/* 02398B38 */ if (_t55) goto L_02398B68; else goto L_02398B3C;
|
|
L_02398B3C: ; // 0x2398b3c
|
|
/* 02398B3C */ /* nop */
|
|
/* 02398B40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 02398B44 */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398B44 */ _t57 = _t56 & 0x00000001u;
|
|
/* 02398B44 */ if (_t57) goto L_02398B68; else goto L_02398B48;
|
|
L_02398B48: ; // 0x2398b48
|
|
/* 02398B48 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[27]);
|
|
/* 02398B4C */ _t58 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398B4C */ _t59 = _t58 & 0x00000001u;
|
|
/* 02398B4C */ if (_t59) goto L_02398B50; else goto L_02398B68;
|
|
L_02398B50: ; // 0x2398b50
|
|
/* 02398B50 */ /* nop */
|
|
/* 02398B54 */ _t60 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02398B54 */ cpu->r[0] = rbrew_read32(cpu->mem, _t60);
|
|
/* 02398B58 */ cpu->lr = cpu->r[0];
|
|
/* 02398B5C */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 02398B60 */ cpu->r[3] = 0x00000001u;
|
|
/* 02398B64 */ return;
|
|
L_02398B68: ; // 0x2398b68
|
|
/* 02398B68 */ cpu->r[29] = cpu->r[29] + 0x00000004u;
|
|
/* 02398B6C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[30]);
|
|
/* 02398B70 */ _t61 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398B70 */ _t62 = _t61 & 0x00000001u;
|
|
/* 02398B70 */ if (_t62) goto L_02398B74; else goto L_02398AF8;
|
|
L_02398B74: ; // 0x2398b74
|
|
/* 02398B74 */ /* nop */
|
|
/* 02398B78 */ _t63 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02398B78 */ cpu->r[0] = rbrew_read32(cpu->mem, _t63);
|
|
/* 02398B7C */ cpu->lr = cpu->r[0];
|
|
/* 02398B80 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 02398B84 */ cpu->r[3] = 0x00000000u;
|
|
/* 02398B88 */ return;
|
|
}
|
|
|
|
// fn_02398B8C @ 0x2398b8c
|
|
void Gambit_fn_02398B8C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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_02398B8C: ; // 0x2398b8c
|
|
/* 02398B8C */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 02398B8C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02398B8C */ cpu->r[1] = _t0;
|
|
/* 02398B90 */ /* nop */
|
|
/* 02398B94 */ cpu->r[0] = cpu->lr;
|
|
/* 02398B98 */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02398B98 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02398B9C */ _t2 = cpu->r[3] + 0x00000004u;
|
|
/* 02398B9C */ cpu->r[7] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02398BA0 */ cpu->r[30] = cpu->r[4];
|
|
/* 02398BA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 02398BA8 */ cpu->r[26] = 0x00000000u;
|
|
/* 02398BAC */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398BAC */ _t4 = _t3 & 0x00000001u;
|
|
/* 02398BAC */ if (_t4) goto L_02398BD4; else goto L_02398BB0;
|
|
L_02398BB0: ; // 0x2398bb0
|
|
/* 02398BB0 */ _t5 = cpu->r[7] + 0x00000008u;
|
|
/* 02398BB0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02398BB4 */ _t6 = cpu->r[9] + 0x00000000u;
|
|
/* 02398BB4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02398BB8 */ /* nop */
|
|
/* 02398BBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0xFFFFFFFFu);
|
|
/* 02398BC0 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398BC0 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02398BC0 */ if (_t8) goto L_02398BD4; else goto L_02398BC4;
|
|
L_02398BC4: ; // 0x2398bc4
|
|
/* 02398BC4 */ /* nop */
|
|
/* 02398BC8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 02398BCC */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398BCC */ _t10 = _t9 & 0x00000001u;
|
|
/* 02398BCC */ if (_t10) goto L_02398BD4; else goto L_02398BD0;
|
|
L_02398BD0: ; // 0x2398bd0
|
|
/* 02398BD0 */ _t11 = cpu->r[7] + 0x0000001Cu;
|
|
/* 02398BD0 */ cpu->r[26] = rbrew_read32(cpu->mem, _t11);
|
|
L_02398BD4: ; // 0x2398bd4
|
|
/* 02398BD4 */ _t12 = cpu->r[3] + 0x00000008u;
|
|
/* 02398BD4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02398BD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02398BDC */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398BDC */ _t14 = _t13 & 0x00000001u;
|
|
/* 02398BDC */ if (_t14) goto L_02398CE0; else goto L_02398BE0;
|
|
L_02398BE0: ; // 0x2398be0
|
|
/* 02398BE0 */ _t15 = cpu->r[3] + 0x00000010u;
|
|
/* 02398BE0 */ cpu->r[28] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02398BE4 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02398BE8 */ _t16 = cpu->r[3] + 0x00000014u;
|
|
/* 02398BE8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02398BEC */ cpu->r[29] = cpu->r[28] + cpu->r[12];
|
|
/* 02398BF0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], cpu->r[29]);
|
|
/* 02398BF4 */ _t17 = cpu->r[9] + 0x000000A4u;
|
|
/* 02398BF4 */ cpu->r[27] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02398BF8 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398BF8 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02398BF8 */ if (_t19) goto L_02398CE0; else goto L_02398BFC;
|
|
L_02398BFC: ; // 0x2398bfc
|
|
/* 02398BFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 02398C00 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398C00 */ _t21 = _t20 & 0x00000001u;
|
|
/* 02398C00 */ if (_t21) goto L_02398C8C; else goto L_02398C04;
|
|
L_02398C04: ; // 0x2398c04
|
|
/* 02398C04 */ _t22 = cpu->r[28] + 0x00000000u;
|
|
/* 02398C04 */ cpu->r[6] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02398C08 */ cpu->r[11] = cpu->r[6];
|
|
/* 02398C0C */ _t23 = cpu->r[11] + 0x00000000u;
|
|
/* 02398C0C */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t23);
|
|
/* 02398C10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0xFFFFFFFFu);
|
|
/* 02398C14 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398C14 */ _t25 = _t24 & 0x00000001u;
|
|
/* 02398C14 */ if (_t25) goto L_02398C78; else goto L_02398C18;
|
|
L_02398C18: ; // 0x2398c18
|
|
/* 02398C18 */ _t26 = cpu->r[11] + 0x00000002u;
|
|
/* 02398C18 */ cpu->r[12] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t26);
|
|
/* 02398C1C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0xFFFFFFFFu);
|
|
/* 02398C20 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398C20 */ _t28 = _t27 & 0x00000001u;
|
|
/* 02398C20 */ if (_t28) goto L_02398C78; else goto L_02398C24;
|
|
L_02398C24: ; // 0x2398c24
|
|
/* 02398C24 */ cpu->r[0] = 0x10080000u;
|
|
/* 02398C28 */ _t29 = cpu->r[6] + 0x00000000u;
|
|
/* 02398C28 */ cpu->r[31] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02398C2C */ cpu->r[0] = cpu->r[0] + 0x00006D68u;
|
|
/* 02398C30 */ cpu->r[3] = cpu->r[27];
|
|
/* 02398C34 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02398C38 */ _t30 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02398C38 */ rbrew_write32(cpu->mem, _t30, cpu->r[0]);
|
|
/* 02398C3C */ /* nop */
|
|
/* 02398C40 */ _t31 = cpu->r[1] + 0x00000008u;
|
|
/* 02398C40 */ rbrew_write32(cpu->mem, _t31, cpu->r[26]);
|
|
/* 02398C44 */ Gambit_fn_029843D4(cpu);
|
|
/* 02398C48 */ cpu->r[11] = cpu->r[3];
|
|
/* 02398C4C */ /* nop */
|
|
/* 02398C50 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0xFFFFFFFFu);
|
|
/* 02398C54 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398C54 */ _t33 = _t32 & 0x00000001u;
|
|
/* 02398C54 */ if (_t33) goto L_02398C78; else goto L_02398C58;
|
|
L_02398C58: ; // 0x2398c58
|
|
/* 02398C58 */ /* nop */
|
|
/* 02398C5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 02398C60 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398C60 */ _t35 = _t34 & 0x00000001u;
|
|
/* 02398C60 */ if (_t35) goto L_02398C78; else goto L_02398C64;
|
|
L_02398C64: ; // 0x2398c64
|
|
/* 02398C64 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[31]);
|
|
/* 02398C68 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398C68 */ _t37 = _t36 & 0x00000001u;
|
|
/* 02398C68 */ if (_t37) goto L_02398C6C; else goto L_02398C78;
|
|
L_02398C6C: ; // 0x2398c6c
|
|
/* 02398C6C */ /* nop */
|
|
/* 02398C70 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]);
|
|
/* 02398C74 */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398C74 */ _t39 = _t38 & 0x00000001u;
|
|
/* 02398C74 */ if (_t39) goto L_02398CBC; else goto L_02398C78;
|
|
L_02398C78: ; // 0x2398c78
|
|
/* 02398C78 */ cpu->r[28] = cpu->r[28] + 0x00000004u;
|
|
/* 02398C7C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], cpu->r[29]);
|
|
/* 02398C80 */ _t40 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398C80 */ _t41 = _t40 & 0x00000001u;
|
|
/* 02398C80 */ if (_t41) goto L_02398C84; else goto L_02398C04;
|
|
L_02398C84: ; // 0x2398c84
|
|
/* 02398C84 */ cpu->r[3] = 0x00000000u;
|
|
/* 02398C88 */ goto L_02398CE4;
|
|
L_02398C8C: ; // 0x2398c8c
|
|
/* 02398C8C */ _t42 = cpu->r[28] + 0x00000000u;
|
|
/* 02398C8C */ cpu->r[6] = rbrew_read32(cpu->mem, _t42);
|
|
/* 02398C90 */ cpu->r[11] = cpu->r[6];
|
|
/* 02398C94 */ _t43 = cpu->r[11] + 0x00000000u;
|
|
/* 02398C94 */ cpu->r[0] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t43);
|
|
/* 02398C98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 02398C9C */ _t44 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398C9C */ _t45 = _t44 & 0x00000001u;
|
|
/* 02398C9C */ if (_t45) goto L_02398CD4; else goto L_02398CA0;
|
|
L_02398CA0: ; // 0x2398ca0
|
|
/* 02398CA0 */ _t46 = cpu->r[11] + 0x00000002u;
|
|
/* 02398CA0 */ cpu->r[0] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t46);
|
|
/* 02398CA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 02398CA8 */ _t47 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398CA8 */ _t48 = _t47 & 0x00000001u;
|
|
/* 02398CA8 */ if (_t48) goto L_02398CD4; else goto L_02398CAC;
|
|
L_02398CAC: ; // 0x2398cac
|
|
/* 02398CAC */ _t49 = cpu->r[6] + 0x00000000u;
|
|
/* 02398CAC */ cpu->r[31] = rbrew_read32(cpu->mem, _t49);
|
|
/* 02398CB0 */ /* nop */
|
|
/* 02398CB4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[30]);
|
|
/* 02398CB8 */ _t50 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398CB8 */ _t51 = _t50 & 0x00000001u;
|
|
/* 02398CB8 */ if (_t51) goto L_02398CBC; else goto L_02398CD4;
|
|
L_02398CBC: ; // 0x2398cbc
|
|
/* 02398CBC */ /* nop */
|
|
/* 02398CC0 */ _t52 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02398CC0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t52);
|
|
/* 02398CC4 */ cpu->lr = cpu->r[0];
|
|
/* 02398CC8 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 02398CCC */ cpu->r[3] = 0x00000001u;
|
|
/* 02398CD0 */ return;
|
|
L_02398CD4: ; // 0x2398cd4
|
|
/* 02398CD4 */ cpu->r[28] = cpu->r[28] + 0x00000004u;
|
|
/* 02398CD8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], cpu->r[29]);
|
|
/* 02398CDC */ _t53 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398CDC */ _t54 = _t53 & 0x00000001u;
|
|
/* 02398CDC */ if (_t54) goto L_02398CE0; else goto L_02398C8C;
|
|
L_02398CE0: ; // 0x2398ce0
|
|
/* 02398CE0 */ cpu->r[3] = 0x00000000u;
|
|
L_02398CE4: ; // 0x2398ce4
|
|
/* 02398CE4 */ /* nop */
|
|
/* 02398CE8 */ _t55 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02398CE8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t55);
|
|
/* 02398CEC */ cpu->lr = cpu->r[0];
|
|
/* 02398CF0 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 02398CF4 */ return;
|
|
}
|
|
|
|
// fn_02398CF8 @ 0x2398cf8
|
|
void Gambit_fn_02398CF8(CPUState* 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_02398CF8: ; // 0x2398cf8
|
|
/* 02398CF8 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02398CF8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02398CFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02398D00 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398D00 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02398D00 */ if (_t2) goto L_02398D0C; else goto L_02398D04;
|
|
L_02398D04: ; // 0x2398d04
|
|
/* 02398D04 */ _t3 = cpu->r[10] + 0x00000008u;
|
|
/* 02398D04 */ cpu->r[9] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02398D08 */ _t4 = cpu->r[9] + 0x00000004u;
|
|
/* 02398D08 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[1]);
|
|
L_02398D0C: ; // 0x2398d0c
|
|
/* 02398D0C */ _t5 = cpu->r[3] + 0x00000008u;
|
|
/* 02398D0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02398D10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02398D14 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398D14 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02398D14 */ if (_t7) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02398D14 */ goto L_02398D18;
|
|
L_02398D18: ; // 0x2398d18
|
|
/* 02398D18 */ _t8 = cpu->r[3] + 0x00000010u;
|
|
/* 02398D18 */ cpu->r[11] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02398D1C */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02398D20 */ cpu->r[8] = cpu->r[11] + cpu->r[10];
|
|
/* 02398D24 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[8]);
|
|
/* 02398D28 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398D28 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02398D28 */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02398D28 */ goto L_02398D2C;
|
|
L_02398D2C: ; // 0x2398d2c
|
|
/* 02398D2C */ _t11 = cpu->r[11] + 0x00000000u;
|
|
/* 02398D2C */ cpu->r[9] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02398D30 */ cpu->r[12] = cpu->r[9];
|
|
/* 02398D34 */ _t12 = cpu->r[12] + 0x00000000u;
|
|
/* 02398D34 */ cpu->r[0] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t12);
|
|
/* 02398D38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 02398D3C */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398D3C */ _t14 = _t13 & 0x00000001u;
|
|
/* 02398D3C */ if (_t14) goto L_02398D50; else goto L_02398D40;
|
|
L_02398D40: ; // 0x2398d40
|
|
/* 02398D40 */ _t15 = cpu->r[12] + 0x00000002u;
|
|
/* 02398D40 */ cpu->r[7] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 02398D44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0xFFFFFFFFu);
|
|
/* 02398D48 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398D48 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02398D48 */ if (_t17) goto L_02398D50; else goto L_02398D4C;
|
|
L_02398D4C: ; // 0x2398d4c
|
|
/* 02398D4C */ _t18 = cpu->r[9] + 0x00000004u;
|
|
/* 02398D4C */ rbrew_write_f32(cpu->mem, _t18, cpu->f[1]);
|
|
L_02398D50: ; // 0x2398d50
|
|
/* 02398D50 */ cpu->r[11] = cpu->r[11] + 0x00000004u;
|
|
/* 02398D54 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[8]);
|
|
/* 02398D58 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398D58 */ _t20 = _t19 & 0x00000001u;
|
|
/* 02398D58 */ if (_t20) goto L_02398D5C; else goto L_02398D2C;
|
|
L_02398D5C: ; // 0x2398d5c
|
|
/* 02398D5C */ return;
|
|
}
|
|
|
|
// fn_02398D60 @ 0x2398d60
|
|
void Gambit_fn_02398D60(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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_02398D60: ; // 0x2398d60
|
|
/* 02398D60 */ cpu->r[0] = cpu->lr;
|
|
/* 02398D64 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 02398D64 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 02398D68 */ _t1 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02398D68 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 02398D68 */ cpu->r[1] = _t1;
|
|
/* 02398D6C */ _t2 = cpu->r[3] + 0x00000004u;
|
|
/* 02398D6C */ cpu->r[7] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02398D70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 02398D74 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398D74 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02398D74 */ if (_t4) goto L_02398DD8; else goto L_02398D78;
|
|
L_02398D78: ; // 0x2398d78
|
|
/* 02398D78 */ _t5 = cpu->r[7] + 0x00000008u;
|
|
/* 02398D78 */ cpu->r[10] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02398D7C */ _t6 = cpu->r[10] + 0x00000000u;
|
|
/* 02398D7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02398D80 */ /* nop */
|
|
/* 02398D84 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0xFFFFFFFFu);
|
|
/* 02398D88 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398D88 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02398D88 */ if (_t8) goto L_02398DD8; else goto L_02398D8C;
|
|
L_02398D8C: ; // 0x2398d8c
|
|
/* 02398D8C */ /* nop */
|
|
/* 02398D90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 02398D94 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398D94 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02398D94 */ if (_t10) goto L_02398DD8; else goto L_02398D98;
|
|
L_02398D98: ; // 0x2398d98
|
|
/* 02398D98 */ _t11 = cpu->r[3] + 0x00000004u;
|
|
/* 02398D98 */ cpu->r[3] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02398D9C */ Gambit_fn_027C7500(cpu);
|
|
/* 02398DA0 */ _t12 = cpu->r[3] + 0x00000010u;
|
|
/* 02398DA0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02398DA4 */ cpu->r[0] = 0x43300000u;
|
|
/* 02398DA8 */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 02398DA8 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02398DAC */ cpu->r[7] = cpu->r[12] ^ 0x80000000u;
|
|
/* 02398DB0 */ _t14 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02398DB0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02398DB4 */ cpu->r[11] = 0x10080000u;
|
|
/* 02398DB8 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02398DB8 */ rbrew_write32(cpu->mem, _t15, cpu->r[7]);
|
|
/* 02398DBC */ _t16 = cpu->r[1] + 0x00000008u;
|
|
/* 02398DBC */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t16);
|
|
/* 02398DC0 */ cpu->lr = cpu->r[0];
|
|
/* 02398DC4 */ _t17 = cpu->r[11] + 0x00006D90u;
|
|
/* 02398DC4 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t17);
|
|
/* 02398DC8 */ cpu->f[0] = cpu->f[13] - cpu->f[0];
|
|
/* 02398DCC */ cpu->f[1] = (double)(float)cpu->f[0];
|
|
/* 02398DD0 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02398DD4 */ return;
|
|
L_02398DD8: ; // 0x2398dd8
|
|
/* 02398DD8 */ _t18 = cpu->r[3] + 0x00000008u;
|
|
/* 02398DD8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02398DDC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02398DE0 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398DE0 */ _t20 = _t19 & 0x00000001u;
|
|
/* 02398DE0 */ if (_t20) goto L_02398E70; else goto L_02398DE4;
|
|
L_02398DE4: ; // 0x2398de4
|
|
/* 02398DE4 */ _t21 = cpu->r[3] + 0x00000010u;
|
|
/* 02398DE4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02398DE8 */ cpu->r[9] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02398DEC */ cpu->r[9] = cpu->r[7] + cpu->r[9];
|
|
/* 02398DF0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[9]);
|
|
/* 02398DF4 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398DF4 */ _t23 = _t22 & 0x00000001u;
|
|
/* 02398DF4 */ if (_t23) goto L_02398E70; else goto L_02398DF8;
|
|
L_02398DF8: ; // 0x2398df8
|
|
/* 02398DF8 */ _t24 = cpu->r[7] + 0x00000000u;
|
|
/* 02398DF8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02398DFC */ cpu->r[8] = cpu->r[6];
|
|
/* 02398E00 */ _t25 = cpu->r[8] + 0x00000000u;
|
|
/* 02398E00 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t25);
|
|
/* 02398E04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0xFFFFFFFFu);
|
|
/* 02398E08 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398E08 */ _t27 = _t26 & 0x00000001u;
|
|
/* 02398E08 */ if (_t27) goto L_02398E64; else goto L_02398E0C;
|
|
L_02398E0C: ; // 0x2398e0c
|
|
/* 02398E0C */ _t28 = cpu->r[8] + 0x00000002u;
|
|
/* 02398E0C */ cpu->r[11] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t28);
|
|
/* 02398E10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0xFFFFFFFFu);
|
|
/* 02398E14 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398E14 */ _t30 = _t29 & 0x00000001u;
|
|
/* 02398E14 */ if (_t30) goto L_02398E64; else goto L_02398E18;
|
|
L_02398E18: ; // 0x2398e18
|
|
/* 02398E18 */ _t31 = cpu->r[6] + 0x00000000u;
|
|
/* 02398E18 */ cpu->r[12] = rbrew_read32(cpu->mem, _t31);
|
|
/* 02398E1C */ _t32 = cpu->r[6] + 0x0000000Cu;
|
|
/* 02398E1C */ cpu->r[9] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02398E20 */ _t33 = cpu->r[1] + 0x00000010u;
|
|
/* 02398E20 */ rbrew_write32(cpu->mem, _t33, cpu->r[12]);
|
|
/* 02398E24 */ _t34 = cpu->r[9] + 0x000000A4u;
|
|
/* 02398E24 */ cpu->r[3] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02398E28 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 02398E2C */ Gambit_fn_0298415C(cpu);
|
|
/* 02398E30 */ cpu->r[10] = 0x10080000u;
|
|
/* 02398E34 */ cpu->r[0] = cpu->r[3] ^ 0x80000000u;
|
|
/* 02398E38 */ _t35 = cpu->r[10] + 0x00006D90u;
|
|
/* 02398E38 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t35);
|
|
/* 02398E3C */ _t36 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02398E3C */ rbrew_write32(cpu->mem, _t36, cpu->r[0]);
|
|
/* 02398E40 */ cpu->r[12] = 0x43300000u;
|
|
/* 02398E44 */ _t37 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02398E44 */ cpu->r[0] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02398E48 */ _t38 = cpu->r[1] + 0x00000008u;
|
|
/* 02398E48 */ rbrew_write32(cpu->mem, _t38, cpu->r[12]);
|
|
/* 02398E4C */ _t39 = cpu->r[1] + 0x00000008u;
|
|
/* 02398E4C */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t39);
|
|
/* 02398E50 */ cpu->lr = cpu->r[0];
|
|
/* 02398E54 */ cpu->f[13] = cpu->f[0] - cpu->f[13];
|
|
/* 02398E58 */ cpu->f[1] = (double)(float)cpu->f[13];
|
|
/* 02398E5C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02398E60 */ return;
|
|
L_02398E64: ; // 0x2398e64
|
|
/* 02398E64 */ cpu->r[7] = cpu->r[7] + 0x00000004u;
|
|
/* 02398E68 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[9]);
|
|
/* 02398E6C */ _t40 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398E6C */ _t41 = _t40 & 0x00000001u;
|
|
/* 02398E6C */ if (_t41) goto L_02398E70; else goto L_02398DF8;
|
|
L_02398E70: ; // 0x2398e70
|
|
/* 02398E70 */ _t42 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02398E70 */ cpu->r[0] = rbrew_read32(cpu->mem, _t42);
|
|
/* 02398E74 */ cpu->r[11] = 0x10080000u;
|
|
/* 02398E78 */ cpu->lr = cpu->r[0];
|
|
/* 02398E7C */ _t43 = cpu->r[11] + 0x00006D80u;
|
|
/* 02398E7C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t43);
|
|
/* 02398E80 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02398E84 */ return;
|
|
}
|
|
|
|
// fn_02398D68 @ 0x2398d68
|
|
void Gambit_fn_02398D68(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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_02398D68: ; // 0x2398d68
|
|
/* 02398D68 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02398D68 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02398D68 */ cpu->r[1] = _t0;
|
|
/* 02398D6C */ _t1 = cpu->r[3] + 0x00000004u;
|
|
/* 02398D6C */ cpu->r[7] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02398D70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 02398D74 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398D74 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02398D74 */ if (_t3) goto L_02398DD8; else goto L_02398D78;
|
|
L_02398D78: ; // 0x2398d78
|
|
/* 02398D78 */ _t4 = cpu->r[7] + 0x00000008u;
|
|
/* 02398D78 */ cpu->r[10] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02398D7C */ _t5 = cpu->r[10] + 0x00000000u;
|
|
/* 02398D7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02398D80 */ /* nop */
|
|
/* 02398D84 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0xFFFFFFFFu);
|
|
/* 02398D88 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398D88 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02398D88 */ if (_t7) goto L_02398DD8; else goto L_02398D8C;
|
|
L_02398D8C: ; // 0x2398d8c
|
|
/* 02398D8C */ /* nop */
|
|
/* 02398D90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 02398D94 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398D94 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02398D94 */ if (_t9) goto L_02398DD8; else goto L_02398D98;
|
|
L_02398D98: ; // 0x2398d98
|
|
/* 02398D98 */ _t10 = cpu->r[3] + 0x00000004u;
|
|
/* 02398D98 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02398D9C */ Gambit_fn_027C7500(cpu);
|
|
/* 02398DA0 */ _t11 = cpu->r[3] + 0x00000010u;
|
|
/* 02398DA0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02398DA4 */ cpu->r[0] = 0x43300000u;
|
|
/* 02398DA8 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 02398DA8 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 02398DAC */ cpu->r[7] = cpu->r[12] ^ 0x80000000u;
|
|
/* 02398DB0 */ _t13 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02398DB0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02398DB4 */ cpu->r[11] = 0x10080000u;
|
|
/* 02398DB8 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02398DB8 */ rbrew_write32(cpu->mem, _t14, cpu->r[7]);
|
|
/* 02398DBC */ _t15 = cpu->r[1] + 0x00000008u;
|
|
/* 02398DBC */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t15);
|
|
/* 02398DC0 */ cpu->lr = cpu->r[0];
|
|
/* 02398DC4 */ _t16 = cpu->r[11] + 0x00006D90u;
|
|
/* 02398DC4 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t16);
|
|
/* 02398DC8 */ cpu->f[0] = cpu->f[13] - cpu->f[0];
|
|
/* 02398DCC */ cpu->f[1] = (double)(float)cpu->f[0];
|
|
/* 02398DD0 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02398DD4 */ return;
|
|
L_02398DD8: ; // 0x2398dd8
|
|
/* 02398DD8 */ _t17 = cpu->r[3] + 0x00000008u;
|
|
/* 02398DD8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02398DDC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02398DE0 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398DE0 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02398DE0 */ if (_t19) goto L_02398E70; else goto L_02398DE4;
|
|
L_02398DE4: ; // 0x2398de4
|
|
/* 02398DE4 */ _t20 = cpu->r[3] + 0x00000010u;
|
|
/* 02398DE4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02398DE8 */ cpu->r[9] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02398DEC */ cpu->r[9] = cpu->r[7] + cpu->r[9];
|
|
/* 02398DF0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[9]);
|
|
/* 02398DF4 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398DF4 */ _t22 = _t21 & 0x00000001u;
|
|
/* 02398DF4 */ if (_t22) goto L_02398E70; else goto L_02398DF8;
|
|
L_02398DF8: ; // 0x2398df8
|
|
/* 02398DF8 */ _t23 = cpu->r[7] + 0x00000000u;
|
|
/* 02398DF8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02398DFC */ cpu->r[8] = cpu->r[6];
|
|
/* 02398E00 */ _t24 = cpu->r[8] + 0x00000000u;
|
|
/* 02398E00 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t24);
|
|
/* 02398E04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0xFFFFFFFFu);
|
|
/* 02398E08 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398E08 */ _t26 = _t25 & 0x00000001u;
|
|
/* 02398E08 */ if (_t26) goto L_02398E64; else goto L_02398E0C;
|
|
L_02398E0C: ; // 0x2398e0c
|
|
/* 02398E0C */ _t27 = cpu->r[8] + 0x00000002u;
|
|
/* 02398E0C */ cpu->r[11] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t27);
|
|
/* 02398E10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0xFFFFFFFFu);
|
|
/* 02398E14 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398E14 */ _t29 = _t28 & 0x00000001u;
|
|
/* 02398E14 */ if (_t29) goto L_02398E64; else goto L_02398E18;
|
|
L_02398E18: ; // 0x2398e18
|
|
/* 02398E18 */ _t30 = cpu->r[6] + 0x00000000u;
|
|
/* 02398E18 */ cpu->r[12] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02398E1C */ _t31 = cpu->r[6] + 0x0000000Cu;
|
|
/* 02398E1C */ cpu->r[9] = rbrew_read32(cpu->mem, _t31);
|
|
/* 02398E20 */ _t32 = cpu->r[1] + 0x00000010u;
|
|
/* 02398E20 */ rbrew_write32(cpu->mem, _t32, cpu->r[12]);
|
|
/* 02398E24 */ _t33 = cpu->r[9] + 0x000000A4u;
|
|
/* 02398E24 */ cpu->r[3] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02398E28 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 02398E2C */ Gambit_fn_0298415C(cpu);
|
|
/* 02398E30 */ cpu->r[10] = 0x10080000u;
|
|
/* 02398E34 */ cpu->r[0] = cpu->r[3] ^ 0x80000000u;
|
|
/* 02398E38 */ _t34 = cpu->r[10] + 0x00006D90u;
|
|
/* 02398E38 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t34);
|
|
/* 02398E3C */ _t35 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02398E3C */ rbrew_write32(cpu->mem, _t35, cpu->r[0]);
|
|
/* 02398E40 */ cpu->r[12] = 0x43300000u;
|
|
/* 02398E44 */ _t36 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02398E44 */ cpu->r[0] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02398E48 */ _t37 = cpu->r[1] + 0x00000008u;
|
|
/* 02398E48 */ rbrew_write32(cpu->mem, _t37, cpu->r[12]);
|
|
/* 02398E4C */ _t38 = cpu->r[1] + 0x00000008u;
|
|
/* 02398E4C */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t38);
|
|
/* 02398E50 */ cpu->lr = cpu->r[0];
|
|
/* 02398E54 */ cpu->f[13] = cpu->f[0] - cpu->f[13];
|
|
/* 02398E58 */ cpu->f[1] = (double)(float)cpu->f[13];
|
|
/* 02398E5C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02398E60 */ return;
|
|
L_02398E64: ; // 0x2398e64
|
|
/* 02398E64 */ cpu->r[7] = cpu->r[7] + 0x00000004u;
|
|
/* 02398E68 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[9]);
|
|
/* 02398E6C */ _t39 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398E6C */ _t40 = _t39 & 0x00000001u;
|
|
/* 02398E6C */ if (_t40) goto L_02398E70; else goto L_02398DF8;
|
|
L_02398E70: ; // 0x2398e70
|
|
/* 02398E70 */ _t41 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02398E70 */ cpu->r[0] = rbrew_read32(cpu->mem, _t41);
|
|
/* 02398E74 */ cpu->r[11] = 0x10080000u;
|
|
/* 02398E78 */ cpu->lr = cpu->r[0];
|
|
/* 02398E7C */ _t42 = cpu->r[11] + 0x00006D80u;
|
|
/* 02398E7C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 02398E80 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02398E84 */ return;
|
|
}
|
|
|
|
// fn_02398E88 @ 0x2398e88
|
|
void Gambit_fn_02398E88(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_02398E88: ; // 0x2398e88
|
|
/* 02398E88 */ cpu->r[0] = cpu->lr;
|
|
/* 02398E8C */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 02398E8C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02398E8C */ cpu->r[1] = _t0;
|
|
/* 02398E90 */ _t1 = cpu->r[1] + 0x00000018u;
|
|
/* 02398E90 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 02398E94 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02398E94 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02398E98 */ /* nop */
|
|
/* 02398E9C */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 02398E9C */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 02398EA0 */ _t4 = cpu->r[1] + 0x00000020u;
|
|
/* 02398EA0 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[31]);
|
|
/* 02398EA4 */ cpu->r[31] = 0x101D0000u;
|
|
/* 02398EA8 */ cpu->r[30] = cpu->r[3];
|
|
/* 02398EAC */ _t5 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02398EAC */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02398EB0 */ _t6 = cpu->r[31] + 0xFFFF9918u;
|
|
/* 02398EB0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02398EB4 */ Gambit_fn_02398D60(cpu);
|
|
/* 02398EB8 */ cpu->r[3] = cpu->r[31];
|
|
/* 02398EBC */ cpu->f[31] = cpu->f[1];
|
|
/* 02398EC0 */ Gambit_fn_02830138(cpu);
|
|
/* 02398EC4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[3], 0x00000017u, 0x00000009u, 0x0000001Fu);
|
|
/* 02398EC8 */ cpu->r[12] = 0x10080000u;
|
|
/* 02398ECC */ cpu->r[0] = cpu->r[0] | 0x3F800000u;
|
|
/* 02398ED0 */ _t7 = cpu->r[12] + 0x00006D84u;
|
|
/* 02398ED0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 02398ED4 */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 02398ED4 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 02398ED8 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 02398ED8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 02398EDC */ cpu->f[12] = cpu->f[13] - cpu->f[0];
|
|
/* 02398EE0 */ cpu->f[1] = cpu->f[12] * cpu->f[31];
|
|
/* 02398EE4 */ cpu->r[3] = cpu->r[30];
|
|
/* 02398EE8 */ Gambit_fn_02398CF8(cpu);
|
|
/* 02398EEC */ _t10 = cpu->r[1] + 0x00000020u;
|
|
/* 02398EEC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 02398EF0 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 02398EF0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02398EF4 */ _t12 = cpu->r[1] + 0x00000018u;
|
|
/* 02398EF4 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t12);
|
|
/* 02398EF8 */ _t13 = cpu->r[1] + 0x00000010u;
|
|
/* 02398EF8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02398EFC */ _t14 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02398EFC */ _t15 = _t14 & 0x00000001u;
|
|
/* 02398EFC */ if (_t15) goto L_02398F00; // else: addr-0 trap, fall-through
|
|
L_02398F00: ; // 0x2398f00
|
|
/* 02398F00 */ _t16 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02398F00 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02398F04 */ cpu->lr = cpu->r[0];
|
|
/* 02398F08 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 02398F0C */ return;
|
|
}
|
|
|
|
// fn_02398E8C @ 0x2398e8c
|
|
void Gambit_fn_02398E8C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_02398E8C: ; // 0x2398e8c
|
|
/* 02398E8C */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 02398E8C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02398E8C */ cpu->r[1] = _t0;
|
|
/* 02398E90 */ _t1 = cpu->r[1] + 0x00000018u;
|
|
/* 02398E90 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 02398E94 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02398E94 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02398E98 */ /* nop */
|
|
/* 02398E9C */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 02398E9C */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 02398EA0 */ _t4 = cpu->r[1] + 0x00000020u;
|
|
/* 02398EA0 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[31]);
|
|
/* 02398EA4 */ cpu->r[31] = 0x101D0000u;
|
|
/* 02398EA8 */ cpu->r[30] = cpu->r[3];
|
|
/* 02398EAC */ _t5 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02398EAC */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02398EB0 */ _t6 = cpu->r[31] + 0xFFFF9918u;
|
|
/* 02398EB0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02398EB4 */ Gambit_fn_02398D60(cpu);
|
|
/* 02398EB8 */ cpu->r[3] = cpu->r[31];
|
|
/* 02398EBC */ cpu->f[31] = cpu->f[1];
|
|
/* 02398EC0 */ Gambit_fn_02830138(cpu);
|
|
/* 02398EC4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[3], 0x00000017u, 0x00000009u, 0x0000001Fu);
|
|
/* 02398EC8 */ cpu->r[12] = 0x10080000u;
|
|
/* 02398ECC */ cpu->r[0] = cpu->r[0] | 0x3F800000u;
|
|
/* 02398ED0 */ _t7 = cpu->r[12] + 0x00006D84u;
|
|
/* 02398ED0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 02398ED4 */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 02398ED4 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 02398ED8 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 02398ED8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 02398EDC */ cpu->f[12] = cpu->f[13] - cpu->f[0];
|
|
/* 02398EE0 */ cpu->f[1] = cpu->f[12] * cpu->f[31];
|
|
/* 02398EE4 */ cpu->r[3] = cpu->r[30];
|
|
/* 02398EE8 */ Gambit_fn_02398CF8(cpu);
|
|
/* 02398EEC */ _t10 = cpu->r[1] + 0x00000020u;
|
|
/* 02398EEC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 02398EF0 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 02398EF0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02398EF4 */ _t12 = cpu->r[1] + 0x00000018u;
|
|
/* 02398EF4 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t12);
|
|
/* 02398EF8 */ _t13 = cpu->r[1] + 0x00000010u;
|
|
/* 02398EF8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02398EFC */ _t14 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02398EFC */ _t15 = _t14 & 0x00000001u;
|
|
/* 02398EFC */ if (_t15) goto L_02398F00; // else: addr-0 trap, fall-through
|
|
L_02398F00: ; // 0x2398f00
|
|
/* 02398F00 */ _t16 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02398F00 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02398F04 */ cpu->lr = cpu->r[0];
|
|
/* 02398F08 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 02398F0C */ return;
|
|
}
|
|
|
|
// fn_02398F10 @ 0x2398f10
|
|
void Gambit_fn_02398F10(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _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_02398F10: ; // 0x2398f10
|
|
/* 02398F10 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02398F10 */ cpu->r[8] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02398F14 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02398F18 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398F18 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02398F18 */ if (_t2) goto L_02398F48; else goto L_02398F1C;
|
|
L_02398F1C: ; // 0x2398f1c
|
|
/* 02398F1C */ _t3 = cpu->r[8] + 0x00000008u;
|
|
/* 02398F1C */ cpu->r[9] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02398F20 */ _t4 = cpu->r[9] + 0x00000000u;
|
|
/* 02398F20 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02398F24 */ /* nop */
|
|
/* 02398F28 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0xFFFFFFFFu);
|
|
/* 02398F2C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398F2C */ _t6 = _t5 & 0x00000001u;
|
|
/* 02398F2C */ if (_t6) goto L_02398F48; else goto L_02398F30;
|
|
L_02398F30: ; // 0x2398f30
|
|
/* 02398F30 */ /* nop */
|
|
/* 02398F34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 02398F38 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398F38 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02398F38 */ if (_t8) goto L_02398F48; else goto L_02398F3C;
|
|
L_02398F3C: ; // 0x2398f3c
|
|
/* 02398F3C */ _t9 = cpu->r[8] + 0x00000008u;
|
|
/* 02398F3C */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02398F40 */ _t10 = cpu->r[12] + 0x00000004u;
|
|
/* 02398F40 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 02398F44 */ return;
|
|
L_02398F48: ; // 0x2398f48
|
|
/* 02398F48 */ _t11 = cpu->r[3] + 0x00000008u;
|
|
/* 02398F48 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02398F4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02398F50 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398F50 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02398F50 */ if (_t13) goto L_02398F9C; else goto L_02398F54;
|
|
L_02398F54: ; // 0x2398f54
|
|
/* 02398F54 */ _t14 = cpu->r[3] + 0x00000010u;
|
|
/* 02398F54 */ cpu->r[11] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02398F58 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02398F5C */ cpu->r[12] = cpu->r[11] + cpu->r[0];
|
|
/* 02398F60 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[12]);
|
|
/* 02398F64 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398F64 */ _t16 = _t15 & 0x00000001u;
|
|
/* 02398F64 */ if (_t16) goto L_02398F9C; else goto L_02398F68;
|
|
L_02398F68: ; // 0x2398f68
|
|
/* 02398F68 */ _t17 = cpu->r[11] + 0x00000000u;
|
|
/* 02398F68 */ cpu->r[8] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02398F6C */ cpu->r[10] = cpu->r[8];
|
|
/* 02398F70 */ _t18 = cpu->r[10] + 0x00000000u;
|
|
/* 02398F70 */ cpu->r[9] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t18);
|
|
/* 02398F74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0xFFFFFFFFu);
|
|
/* 02398F78 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398F78 */ _t20 = _t19 & 0x00000001u;
|
|
/* 02398F78 */ if (_t20) goto L_02398F90; else goto L_02398F7C;
|
|
L_02398F7C: ; // 0x2398f7c
|
|
/* 02398F7C */ _t21 = cpu->r[10] + 0x00000002u;
|
|
/* 02398F7C */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t21);
|
|
/* 02398F80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0xFFFFFFFFu);
|
|
/* 02398F84 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398F84 */ _t23 = _t22 & 0x00000001u;
|
|
/* 02398F84 */ if (_t23) goto L_02398F90; else goto L_02398F88;
|
|
L_02398F88: ; // 0x2398f88
|
|
/* 02398F88 */ _t24 = cpu->r[8] + 0x00000004u;
|
|
/* 02398F88 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 02398F8C */ return;
|
|
L_02398F90: ; // 0x2398f90
|
|
/* 02398F90 */ cpu->r[11] = cpu->r[11] + 0x00000004u;
|
|
/* 02398F94 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[12]);
|
|
/* 02398F98 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398F98 */ _t26 = _t25 & 0x00000001u;
|
|
/* 02398F98 */ if (_t26) goto L_02398F9C; else goto L_02398F68;
|
|
L_02398F9C: ; // 0x2398f9c
|
|
/* 02398F9C */ cpu->r[8] = 0x10080000u;
|
|
/* 02398FA0 */ _t27 = cpu->r[8] + 0x00006D80u;
|
|
/* 02398FA0 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 02398FA4 */ return;
|
|
}
|
|
|
|
// fn_02398FA8 @ 0x2398fa8
|
|
void Gambit_fn_02398FA8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83;
|
|
|
|
L_02398FA8: ; // 0x2398fa8
|
|
/* 02398FA8 */ cpu->r[0] = cpu->lr;
|
|
/* 02398FAC */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 02398FAC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02398FAC */ cpu->r[1] = _t0;
|
|
/* 02398FB0 */ _t1 = cpu->r[1] + 0x00000020u;
|
|
/* 02398FB0 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 02398FB4 */ /* nop */
|
|
/* 02398FB8 */ _t2 = cpu->r[1] + 0x00000028u;
|
|
/* 02398FB8 */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 02398FBC */ _t3 = cpu->r[1] + 0x00000034u;
|
|
/* 02398FBC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02398FC0 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02398FC0 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 02398FC4 */ _t5 = cpu->r[3] + 0x00000004u;
|
|
/* 02398FC4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02398FC8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02398FCC */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398FCC */ _t7 = _t6 & 0x00000001u;
|
|
/* 02398FCC */ if (_t7) goto L_02399094; else goto L_02398FD0;
|
|
L_02398FD0: ; // 0x2398fd0
|
|
/* 02398FD0 */ _t8 = cpu->r[31] + 0x00000008u;
|
|
/* 02398FD0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02398FD4 */ _t9 = cpu->r[8] + 0x00000000u;
|
|
/* 02398FD4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02398FD8 */ /* nop */
|
|
/* 02398FDC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0xFFFFFFFFu);
|
|
/* 02398FE0 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398FE0 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02398FE0 */ if (_t11) goto L_02399094; else goto L_02398FE4;
|
|
L_02398FE4: ; // 0x2398fe4
|
|
/* 02398FE4 */ /* nop */
|
|
/* 02398FE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 02398FEC */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398FEC */ _t13 = _t12 & 0x00000001u;
|
|
/* 02398FEC */ if (_t13) goto L_02399094; else goto L_02398FF0;
|
|
L_02398FF0: ; // 0x2398ff0
|
|
/* 02398FF0 */ cpu->r[3] = cpu->r[31];
|
|
/* 02398FF4 */ Gambit_fn_027C7500(cpu);
|
|
/* 02398FF8 */ _t14 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02398FF8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02398FFC */ cpu->r[7] = rbrew_rlwinm(cpu->r[12], 0x0000001Eu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02398FFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 02399000 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02399000 */ _t16 = _t15 & 0x00000001u;
|
|
/* 02399000 */ if (_t16) goto L_02399028; else goto L_02399004;
|
|
L_02399004: ; // 0x2399004
|
|
/* 02399004 */ _t17 = cpu->r[1] + 0x00000028u;
|
|
/* 02399004 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 02399008 */ _t18 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02399008 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0239900C */ _t19 = cpu->r[1] + 0x00000020u;
|
|
/* 0239900C */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t19);
|
|
/* 02399010 */ cpu->r[3] = 0x00000000u;
|
|
/* 02399014 */ _t20 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02399014 */ _t21 = _t20 & 0x00000001u;
|
|
/* 02399014 */ if (_t21) goto L_02399018; // else: addr-0 trap, fall-through
|
|
L_02399018: ; // 0x2399018
|
|
/* 02399018 */ _t22 = cpu->r[1] + 0x00000034u;
|
|
/* 02399018 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0239901C */ cpu->lr = cpu->r[0];
|
|
/* 02399020 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 02399024 */ return;
|
|
L_02399028: ; // 0x2399028
|
|
/* 02399028 */ _t23 = cpu->r[31] + 0x00000008u;
|
|
/* 02399028 */ cpu->r[11] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0239902C */ cpu->r[3] = cpu->r[31];
|
|
/* 02399030 */ _t24 = cpu->r[11] + 0x00000004u;
|
|
/* 02399030 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 02399034 */ Gambit_fn_027C7500(cpu);
|
|
/* 02399038 */ cpu->r[0] = 0x43300000u;
|
|
/* 0239903C */ _t25 = cpu->r[3] + 0x00000010u;
|
|
/* 0239903C */ cpu->r[10] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02399040 */ _t26 = cpu->r[1] + 0x00000008u;
|
|
/* 02399040 */ rbrew_write32(cpu->mem, _t26, cpu->r[0]);
|
|
/* 02399044 */ cpu->r[7] = cpu->r[10] ^ 0x80000000u;
|
|
/* 02399048 */ cpu->r[10] = 0x10080000u;
|
|
/* 0239904C */ _t27 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239904C */ rbrew_write32(cpu->mem, _t27, cpu->r[7]);
|
|
/* 02399050 */ _t28 = cpu->r[1] + 0x00000008u;
|
|
/* 02399050 */ cpu->f[12] = rbrew_read_f64(cpu->mem, _t28);
|
|
/* 02399054 */ _t29 = cpu->r[10] + 0x00006D90u;
|
|
/* 02399054 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t29);
|
|
/* 02399058 */ cpu->f[13] = cpu->f[12] - cpu->f[0];
|
|
/* 0239905C */ cpu->f[12] = (double)(float)cpu->f[13];
|
|
/* 02399060 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[31], cpu->f[12]);
|
|
/* 02399064 */ /* nop */
|
|
/* 02399068 */ _t30 = cpu->r[1] + 0x00000028u;
|
|
/* 02399068 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 0239906C */ cpu->r[0] = rbrew_rlwinm(cpu->r[9], 0x00000001u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02399070 */ _t31 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02399070 */ cpu->r[31] = rbrew_read32(cpu->mem, _t31);
|
|
/* 02399074 */ cpu->r[0] = cpu->r[0] ^ 0x00000001u;
|
|
/* 02399078 */ _t32 = cpu->r[1] + 0x00000020u;
|
|
/* 02399078 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t32);
|
|
/* 0239907C */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 02399080 */ _t33 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02399080 */ _t34 = _t33 & 0x00000001u;
|
|
/* 02399080 */ if (_t34) goto L_02399084; // else: addr-0 trap, fall-through
|
|
L_02399084: ; // 0x2399084
|
|
/* 02399084 */ _t35 = cpu->r[1] + 0x00000034u;
|
|
/* 02399084 */ cpu->r[0] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02399088 */ cpu->lr = cpu->r[0];
|
|
/* 0239908C */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 02399090 */ return;
|
|
L_02399094: ; // 0x2399094
|
|
/* 02399094 */ _t36 = cpu->r[3] + 0x00000008u;
|
|
/* 02399094 */ cpu->r[11] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02399098 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0239909C */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239909C */ _t38 = _t37 & 0x00000001u;
|
|
/* 0239909C */ if (_t38) goto L_02399198; else goto L_023990A0;
|
|
L_023990A0: ; // 0x23990a0
|
|
/* 023990A0 */ _t39 = cpu->r[3] + 0x00000010u;
|
|
/* 023990A0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t39);
|
|
/* 023990A4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[11], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 023990A8 */ cpu->r[12] = cpu->r[10] + cpu->r[0];
|
|
/* 023990AC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[12]);
|
|
/* 023990B0 */ _t40 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023990B0 */ _t41 = _t40 & 0x00000001u;
|
|
/* 023990B0 */ if (_t41) goto L_02399198; else goto L_023990B4;
|
|
L_023990B4: ; // 0x23990b4
|
|
/* 023990B4 */ _t42 = cpu->r[10] + 0x00000000u;
|
|
/* 023990B4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t42);
|
|
/* 023990B8 */ cpu->r[11] = cpu->r[31];
|
|
/* 023990BC */ _t43 = cpu->r[11] + 0x00000000u;
|
|
/* 023990BC */ cpu->r[6] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t43);
|
|
/* 023990C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0xFFFFFFFFu);
|
|
/* 023990C4 */ _t44 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023990C4 */ _t45 = _t44 & 0x00000001u;
|
|
/* 023990C4 */ if (_t45) goto L_0239918C; else goto L_023990C8;
|
|
L_023990C8: ; // 0x23990c8
|
|
/* 023990C8 */ _t46 = cpu->r[11] + 0x00000002u;
|
|
/* 023990C8 */ cpu->r[7] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t46);
|
|
/* 023990CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0xFFFFFFFFu);
|
|
/* 023990D0 */ _t47 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023990D0 */ _t48 = _t47 & 0x00000001u;
|
|
/* 023990D0 */ if (_t48) goto L_0239918C; else goto L_023990D4;
|
|
L_023990D4: ; // 0x23990d4
|
|
/* 023990D4 */ _t49 = cpu->r[31] + 0x00000000u;
|
|
/* 023990D4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t49);
|
|
/* 023990D8 */ _t50 = cpu->r[31] + 0x0000000Cu;
|
|
/* 023990D8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t50);
|
|
/* 023990DC */ _t51 = cpu->r[1] + 0x00000010u;
|
|
/* 023990DC */ rbrew_write32(cpu->mem, _t51, cpu->r[10]);
|
|
/* 023990E0 */ _t52 = cpu->r[9] + 0x000000A4u;
|
|
/* 023990E0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t52);
|
|
/* 023990E4 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 023990E8 */ Gambit_fn_0298428C(cpu);
|
|
/* 023990EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023990F0 */ _t53 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023990F0 */ _t54 = _t53 & 0x00000001u;
|
|
/* 023990F0 */ if (_t54) goto L_02399118; else goto L_023990F4;
|
|
L_023990F4: ; // 0x23990f4
|
|
/* 023990F4 */ _t55 = cpu->r[1] + 0x00000028u;
|
|
/* 023990F4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t55);
|
|
/* 023990F8 */ _t56 = cpu->r[1] + 0x0000001Cu;
|
|
/* 023990F8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t56);
|
|
/* 023990FC */ _t57 = cpu->r[1] + 0x00000020u;
|
|
/* 023990FC */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t57);
|
|
/* 02399100 */ cpu->r[3] = 0x00000000u;
|
|
/* 02399104 */ _t58 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02399104 */ _t59 = _t58 & 0x00000001u;
|
|
/* 02399104 */ if (_t59) goto L_02399108; // else: addr-0 trap, fall-through
|
|
L_02399108: ; // 0x2399108
|
|
/* 02399108 */ _t60 = cpu->r[1] + 0x00000034u;
|
|
/* 02399108 */ cpu->r[0] = rbrew_read32(cpu->mem, _t60);
|
|
/* 0239910C */ cpu->lr = cpu->r[0];
|
|
/* 02399110 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 02399114 */ return;
|
|
L_02399118: ; // 0x2399118
|
|
/* 02399118 */ _t61 = cpu->r[31] + 0x00000000u;
|
|
/* 02399118 */ cpu->r[0] = rbrew_read32(cpu->mem, _t61);
|
|
/* 0239911C */ _t62 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0239911C */ cpu->r[11] = rbrew_read32(cpu->mem, _t62);
|
|
/* 02399120 */ _t63 = cpu->r[1] + 0x00000014u;
|
|
/* 02399120 */ rbrew_write32(cpu->mem, _t63, cpu->r[0]);
|
|
/* 02399124 */ _t64 = cpu->r[11] + 0x000000A4u;
|
|
/* 02399124 */ cpu->r[3] = rbrew_read32(cpu->mem, _t64);
|
|
/* 02399128 */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 0239912C */ Gambit_fn_0298415C(cpu);
|
|
/* 02399130 */ cpu->r[12] = cpu->r[3] ^ 0x80000000u;
|
|
/* 02399134 */ cpu->r[9] = 0x43300000u;
|
|
/* 02399138 */ _t65 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02399138 */ rbrew_write32(cpu->mem, _t65, cpu->r[12]);
|
|
/* 0239913C */ cpu->r[6] = 0x10080000u;
|
|
/* 02399140 */ _t66 = cpu->r[1] + 0x00000008u;
|
|
/* 02399140 */ rbrew_write32(cpu->mem, _t66, cpu->r[9]);
|
|
/* 02399144 */ _t67 = cpu->r[1] + 0x00000008u;
|
|
/* 02399144 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t67);
|
|
/* 02399148 */ _t68 = cpu->r[6] + 0x00006D90u;
|
|
/* 02399148 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t68);
|
|
/* 0239914C */ cpu->f[12] = cpu->f[0] - cpu->f[13];
|
|
/* 02399150 */ cpu->f[13] = (double)(float)cpu->f[12];
|
|
/* 02399154 */ _t69 = cpu->r[31] + 0x00000004u;
|
|
/* 02399154 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t69);
|
|
/* 02399158 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[13]);
|
|
/* 0239915C */ /* nop */
|
|
/* 02399160 */ _t70 = cpu->r[1] + 0x00000028u;
|
|
/* 02399160 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t70);
|
|
/* 02399164 */ cpu->r[0] = rbrew_rlwinm(cpu->r[8], 0x00000001u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02399168 */ _t71 = cpu->r[1] + 0x00000020u;
|
|
/* 02399168 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t71);
|
|
/* 0239916C */ cpu->r[0] = cpu->r[0] ^ 0x00000001u;
|
|
/* 02399170 */ _t72 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02399170 */ cpu->r[31] = rbrew_read32(cpu->mem, _t72);
|
|
/* 02399174 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 02399178 */ _t73 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02399178 */ _t74 = _t73 & 0x00000001u;
|
|
/* 02399178 */ if (_t74) goto L_0239917C; // else: addr-0 trap, fall-through
|
|
L_0239917C: ; // 0x239917c
|
|
/* 0239917C */ _t75 = cpu->r[1] + 0x00000034u;
|
|
/* 0239917C */ cpu->r[0] = rbrew_read32(cpu->mem, _t75);
|
|
/* 02399180 */ cpu->lr = cpu->r[0];
|
|
/* 02399184 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 02399188 */ return;
|
|
L_0239918C: ; // 0x239918c
|
|
/* 0239918C */ cpu->r[10] = cpu->r[10] + 0x00000004u;
|
|
/* 02399190 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[12]);
|
|
/* 02399194 */ _t76 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02399194 */ _t77 = _t76 & 0x00000001u;
|
|
/* 02399194 */ if (_t77) goto L_02399198; else goto L_023990B4;
|
|
L_02399198: ; // 0x2399198
|
|
/* 02399198 */ _t78 = cpu->r[1] + 0x00000028u;
|
|
/* 02399198 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t78);
|
|
/* 0239919C */ _t79 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239919C */ cpu->r[31] = rbrew_read32(cpu->mem, _t79);
|
|
/* 023991A0 */ _t80 = cpu->r[1] + 0x00000020u;
|
|
/* 023991A0 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t80);
|
|
/* 023991A4 */ cpu->r[3] = 0x00000001u;
|
|
/* 023991A8 */ _t81 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 023991A8 */ _t82 = _t81 & 0x00000001u;
|
|
/* 023991A8 */ if (_t82) goto L_023991AC; // else: addr-0 trap, fall-through
|
|
L_023991AC: ; // 0x23991ac
|
|
/* 023991AC */ _t83 = cpu->r[1] + 0x00000034u;
|
|
/* 023991AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t83);
|
|
/* 023991B0 */ cpu->lr = cpu->r[0];
|
|
/* 023991B4 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 023991B8 */ return;
|
|
}
|
|
|
|
// fn_02398FAC @ 0x2398fac
|
|
void Gambit_fn_02398FAC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83;
|
|
|
|
L_02398FAC: ; // 0x2398fac
|
|
/* 02398FAC */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 02398FAC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02398FAC */ cpu->r[1] = _t0;
|
|
/* 02398FB0 */ _t1 = cpu->r[1] + 0x00000020u;
|
|
/* 02398FB0 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 02398FB4 */ /* nop */
|
|
/* 02398FB8 */ _t2 = cpu->r[1] + 0x00000028u;
|
|
/* 02398FB8 */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 02398FBC */ _t3 = cpu->r[1] + 0x00000034u;
|
|
/* 02398FBC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02398FC0 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02398FC0 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 02398FC4 */ _t5 = cpu->r[3] + 0x00000004u;
|
|
/* 02398FC4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02398FC8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02398FCC */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398FCC */ _t7 = _t6 & 0x00000001u;
|
|
/* 02398FCC */ if (_t7) goto L_02399094; else goto L_02398FD0;
|
|
L_02398FD0: ; // 0x2398fd0
|
|
/* 02398FD0 */ _t8 = cpu->r[31] + 0x00000008u;
|
|
/* 02398FD0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02398FD4 */ _t9 = cpu->r[8] + 0x00000000u;
|
|
/* 02398FD4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02398FD8 */ /* nop */
|
|
/* 02398FDC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0xFFFFFFFFu);
|
|
/* 02398FE0 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398FE0 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02398FE0 */ if (_t11) goto L_02399094; else goto L_02398FE4;
|
|
L_02398FE4: ; // 0x2398fe4
|
|
/* 02398FE4 */ /* nop */
|
|
/* 02398FE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 02398FEC */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02398FEC */ _t13 = _t12 & 0x00000001u;
|
|
/* 02398FEC */ if (_t13) goto L_02399094; else goto L_02398FF0;
|
|
L_02398FF0: ; // 0x2398ff0
|
|
/* 02398FF0 */ cpu->r[3] = cpu->r[31];
|
|
/* 02398FF4 */ Gambit_fn_027C7500(cpu);
|
|
/* 02398FF8 */ _t14 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02398FF8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02398FFC */ cpu->r[7] = rbrew_rlwinm(cpu->r[12], 0x0000001Eu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02398FFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 02399000 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02399000 */ _t16 = _t15 & 0x00000001u;
|
|
/* 02399000 */ if (_t16) goto L_02399028; else goto L_02399004;
|
|
L_02399004: ; // 0x2399004
|
|
/* 02399004 */ _t17 = cpu->r[1] + 0x00000028u;
|
|
/* 02399004 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 02399008 */ _t18 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02399008 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0239900C */ _t19 = cpu->r[1] + 0x00000020u;
|
|
/* 0239900C */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t19);
|
|
/* 02399010 */ cpu->r[3] = 0x00000000u;
|
|
/* 02399014 */ _t20 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02399014 */ _t21 = _t20 & 0x00000001u;
|
|
/* 02399014 */ if (_t21) goto L_02399018; // else: addr-0 trap, fall-through
|
|
L_02399018: ; // 0x2399018
|
|
/* 02399018 */ _t22 = cpu->r[1] + 0x00000034u;
|
|
/* 02399018 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0239901C */ cpu->lr = cpu->r[0];
|
|
/* 02399020 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 02399024 */ return;
|
|
L_02399028: ; // 0x2399028
|
|
/* 02399028 */ _t23 = cpu->r[31] + 0x00000008u;
|
|
/* 02399028 */ cpu->r[11] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0239902C */ cpu->r[3] = cpu->r[31];
|
|
/* 02399030 */ _t24 = cpu->r[11] + 0x00000004u;
|
|
/* 02399030 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 02399034 */ Gambit_fn_027C7500(cpu);
|
|
/* 02399038 */ cpu->r[0] = 0x43300000u;
|
|
/* 0239903C */ _t25 = cpu->r[3] + 0x00000010u;
|
|
/* 0239903C */ cpu->r[10] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02399040 */ _t26 = cpu->r[1] + 0x00000008u;
|
|
/* 02399040 */ rbrew_write32(cpu->mem, _t26, cpu->r[0]);
|
|
/* 02399044 */ cpu->r[7] = cpu->r[10] ^ 0x80000000u;
|
|
/* 02399048 */ cpu->r[10] = 0x10080000u;
|
|
/* 0239904C */ _t27 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239904C */ rbrew_write32(cpu->mem, _t27, cpu->r[7]);
|
|
/* 02399050 */ _t28 = cpu->r[1] + 0x00000008u;
|
|
/* 02399050 */ cpu->f[12] = rbrew_read_f64(cpu->mem, _t28);
|
|
/* 02399054 */ _t29 = cpu->r[10] + 0x00006D90u;
|
|
/* 02399054 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t29);
|
|
/* 02399058 */ cpu->f[13] = cpu->f[12] - cpu->f[0];
|
|
/* 0239905C */ cpu->f[12] = (double)(float)cpu->f[13];
|
|
/* 02399060 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[31], cpu->f[12]);
|
|
/* 02399064 */ /* nop */
|
|
/* 02399068 */ _t30 = cpu->r[1] + 0x00000028u;
|
|
/* 02399068 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 0239906C */ cpu->r[0] = rbrew_rlwinm(cpu->r[9], 0x00000001u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02399070 */ _t31 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02399070 */ cpu->r[31] = rbrew_read32(cpu->mem, _t31);
|
|
/* 02399074 */ cpu->r[0] = cpu->r[0] ^ 0x00000001u;
|
|
/* 02399078 */ _t32 = cpu->r[1] + 0x00000020u;
|
|
/* 02399078 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t32);
|
|
/* 0239907C */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 02399080 */ _t33 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02399080 */ _t34 = _t33 & 0x00000001u;
|
|
/* 02399080 */ if (_t34) goto L_02399084; // else: addr-0 trap, fall-through
|
|
L_02399084: ; // 0x2399084
|
|
/* 02399084 */ _t35 = cpu->r[1] + 0x00000034u;
|
|
/* 02399084 */ cpu->r[0] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02399088 */ cpu->lr = cpu->r[0];
|
|
/* 0239908C */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 02399090 */ return;
|
|
L_02399094: ; // 0x2399094
|
|
/* 02399094 */ _t36 = cpu->r[3] + 0x00000008u;
|
|
/* 02399094 */ cpu->r[11] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02399098 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0239909C */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239909C */ _t38 = _t37 & 0x00000001u;
|
|
/* 0239909C */ if (_t38) goto L_02399198; else goto L_023990A0;
|
|
L_023990A0: ; // 0x23990a0
|
|
/* 023990A0 */ _t39 = cpu->r[3] + 0x00000010u;
|
|
/* 023990A0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t39);
|
|
/* 023990A4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[11], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 023990A8 */ cpu->r[12] = cpu->r[10] + cpu->r[0];
|
|
/* 023990AC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[12]);
|
|
/* 023990B0 */ _t40 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023990B0 */ _t41 = _t40 & 0x00000001u;
|
|
/* 023990B0 */ if (_t41) goto L_02399198; else goto L_023990B4;
|
|
L_023990B4: ; // 0x23990b4
|
|
/* 023990B4 */ _t42 = cpu->r[10] + 0x00000000u;
|
|
/* 023990B4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t42);
|
|
/* 023990B8 */ cpu->r[11] = cpu->r[31];
|
|
/* 023990BC */ _t43 = cpu->r[11] + 0x00000000u;
|
|
/* 023990BC */ cpu->r[6] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t43);
|
|
/* 023990C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0xFFFFFFFFu);
|
|
/* 023990C4 */ _t44 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023990C4 */ _t45 = _t44 & 0x00000001u;
|
|
/* 023990C4 */ if (_t45) goto L_0239918C; else goto L_023990C8;
|
|
L_023990C8: ; // 0x23990c8
|
|
/* 023990C8 */ _t46 = cpu->r[11] + 0x00000002u;
|
|
/* 023990C8 */ cpu->r[7] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t46);
|
|
/* 023990CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0xFFFFFFFFu);
|
|
/* 023990D0 */ _t47 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023990D0 */ _t48 = _t47 & 0x00000001u;
|
|
/* 023990D0 */ if (_t48) goto L_0239918C; else goto L_023990D4;
|
|
L_023990D4: ; // 0x23990d4
|
|
/* 023990D4 */ _t49 = cpu->r[31] + 0x00000000u;
|
|
/* 023990D4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t49);
|
|
/* 023990D8 */ _t50 = cpu->r[31] + 0x0000000Cu;
|
|
/* 023990D8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t50);
|
|
/* 023990DC */ _t51 = cpu->r[1] + 0x00000010u;
|
|
/* 023990DC */ rbrew_write32(cpu->mem, _t51, cpu->r[10]);
|
|
/* 023990E0 */ _t52 = cpu->r[9] + 0x000000A4u;
|
|
/* 023990E0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t52);
|
|
/* 023990E4 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 023990E8 */ Gambit_fn_0298428C(cpu);
|
|
/* 023990EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023990F0 */ _t53 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023990F0 */ _t54 = _t53 & 0x00000001u;
|
|
/* 023990F0 */ if (_t54) goto L_02399118; else goto L_023990F4;
|
|
L_023990F4: ; // 0x23990f4
|
|
/* 023990F4 */ _t55 = cpu->r[1] + 0x00000028u;
|
|
/* 023990F4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t55);
|
|
/* 023990F8 */ _t56 = cpu->r[1] + 0x0000001Cu;
|
|
/* 023990F8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t56);
|
|
/* 023990FC */ _t57 = cpu->r[1] + 0x00000020u;
|
|
/* 023990FC */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t57);
|
|
/* 02399100 */ cpu->r[3] = 0x00000000u;
|
|
/* 02399104 */ _t58 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02399104 */ _t59 = _t58 & 0x00000001u;
|
|
/* 02399104 */ if (_t59) goto L_02399108; // else: addr-0 trap, fall-through
|
|
L_02399108: ; // 0x2399108
|
|
/* 02399108 */ _t60 = cpu->r[1] + 0x00000034u;
|
|
/* 02399108 */ cpu->r[0] = rbrew_read32(cpu->mem, _t60);
|
|
/* 0239910C */ cpu->lr = cpu->r[0];
|
|
/* 02399110 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 02399114 */ return;
|
|
L_02399118: ; // 0x2399118
|
|
/* 02399118 */ _t61 = cpu->r[31] + 0x00000000u;
|
|
/* 02399118 */ cpu->r[0] = rbrew_read32(cpu->mem, _t61);
|
|
/* 0239911C */ _t62 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0239911C */ cpu->r[11] = rbrew_read32(cpu->mem, _t62);
|
|
/* 02399120 */ _t63 = cpu->r[1] + 0x00000014u;
|
|
/* 02399120 */ rbrew_write32(cpu->mem, _t63, cpu->r[0]);
|
|
/* 02399124 */ _t64 = cpu->r[11] + 0x000000A4u;
|
|
/* 02399124 */ cpu->r[3] = rbrew_read32(cpu->mem, _t64);
|
|
/* 02399128 */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 0239912C */ Gambit_fn_0298415C(cpu);
|
|
/* 02399130 */ cpu->r[12] = cpu->r[3] ^ 0x80000000u;
|
|
/* 02399134 */ cpu->r[9] = 0x43300000u;
|
|
/* 02399138 */ _t65 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02399138 */ rbrew_write32(cpu->mem, _t65, cpu->r[12]);
|
|
/* 0239913C */ cpu->r[6] = 0x10080000u;
|
|
/* 02399140 */ _t66 = cpu->r[1] + 0x00000008u;
|
|
/* 02399140 */ rbrew_write32(cpu->mem, _t66, cpu->r[9]);
|
|
/* 02399144 */ _t67 = cpu->r[1] + 0x00000008u;
|
|
/* 02399144 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t67);
|
|
/* 02399148 */ _t68 = cpu->r[6] + 0x00006D90u;
|
|
/* 02399148 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t68);
|
|
/* 0239914C */ cpu->f[12] = cpu->f[0] - cpu->f[13];
|
|
/* 02399150 */ cpu->f[13] = (double)(float)cpu->f[12];
|
|
/* 02399154 */ _t69 = cpu->r[31] + 0x00000004u;
|
|
/* 02399154 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t69);
|
|
/* 02399158 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[13]);
|
|
/* 0239915C */ /* nop */
|
|
/* 02399160 */ _t70 = cpu->r[1] + 0x00000028u;
|
|
/* 02399160 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t70);
|
|
/* 02399164 */ cpu->r[0] = rbrew_rlwinm(cpu->r[8], 0x00000001u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02399168 */ _t71 = cpu->r[1] + 0x00000020u;
|
|
/* 02399168 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t71);
|
|
/* 0239916C */ cpu->r[0] = cpu->r[0] ^ 0x00000001u;
|
|
/* 02399170 */ _t72 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02399170 */ cpu->r[31] = rbrew_read32(cpu->mem, _t72);
|
|
/* 02399174 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 02399178 */ _t73 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02399178 */ _t74 = _t73 & 0x00000001u;
|
|
/* 02399178 */ if (_t74) goto L_0239917C; // else: addr-0 trap, fall-through
|
|
L_0239917C: ; // 0x239917c
|
|
/* 0239917C */ _t75 = cpu->r[1] + 0x00000034u;
|
|
/* 0239917C */ cpu->r[0] = rbrew_read32(cpu->mem, _t75);
|
|
/* 02399180 */ cpu->lr = cpu->r[0];
|
|
/* 02399184 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 02399188 */ return;
|
|
L_0239918C: ; // 0x239918c
|
|
/* 0239918C */ cpu->r[10] = cpu->r[10] + 0x00000004u;
|
|
/* 02399190 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[12]);
|
|
/* 02399194 */ _t76 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02399194 */ _t77 = _t76 & 0x00000001u;
|
|
/* 02399194 */ if (_t77) goto L_02399198; else goto L_023990B4;
|
|
L_02399198: ; // 0x2399198
|
|
/* 02399198 */ _t78 = cpu->r[1] + 0x00000028u;
|
|
/* 02399198 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t78);
|
|
/* 0239919C */ _t79 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239919C */ cpu->r[31] = rbrew_read32(cpu->mem, _t79);
|
|
/* 023991A0 */ _t80 = cpu->r[1] + 0x00000020u;
|
|
/* 023991A0 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t80);
|
|
/* 023991A4 */ cpu->r[3] = 0x00000001u;
|
|
/* 023991A8 */ _t81 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 023991A8 */ _t82 = _t81 & 0x00000001u;
|
|
/* 023991A8 */ if (_t82) goto L_023991AC; // else: addr-0 trap, fall-through
|
|
L_023991AC: ; // 0x23991ac
|
|
/* 023991AC */ _t83 = cpu->r[1] + 0x00000034u;
|
|
/* 023991AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t83);
|
|
/* 023991B0 */ cpu->lr = cpu->r[0];
|
|
/* 023991B4 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 023991B8 */ return;
|
|
}
|
|
|
|
// fn_023991BC @ 0x23991bc
|
|
void Gambit_fn_023991BC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54;
|
|
|
|
L_023991BC: ; // 0x23991bc
|
|
/* 023991BC */ cpu->r[0] = cpu->lr;
|
|
/* 023991C0 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 023991C0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 023991C0 */ cpu->r[1] = _t0;
|
|
/* 023991C4 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 023991C4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 023991C8 */ cpu->r[31] = cpu->r[3];
|
|
/* 023991CC */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 023991CC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 023991D0 */ _t3 = cpu->r[31] + 0x00000004u;
|
|
/* 023991D0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 023991D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 023991D8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023991D8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 023991D8 */ if (_t5) goto L_02399264; else goto L_023991DC;
|
|
L_023991DC: ; // 0x23991dc
|
|
/* 023991DC */ _t6 = cpu->r[12] + 0x00000008u;
|
|
/* 023991DC */ cpu->r[5] = rbrew_read32(cpu->mem, _t6);
|
|
/* 023991E0 */ _t7 = cpu->r[5] + 0x00000000u;
|
|
/* 023991E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 023991E4 */ /* nop */
|
|
/* 023991E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0xFFFFFFFFu);
|
|
/* 023991EC */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023991EC */ _t9 = _t8 & 0x00000001u;
|
|
/* 023991EC */ if (_t9) goto L_02399264; else goto L_023991F0;
|
|
L_023991F0: ; // 0x23991f0
|
|
/* 023991F0 */ /* nop */
|
|
/* 023991F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 023991F8 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023991F8 */ _t11 = _t10 & 0x00000001u;
|
|
/* 023991F8 */ if (_t11) goto L_02399264; else goto L_023991FC;
|
|
L_023991FC: ; // 0x23991fc
|
|
/* 023991FC */ _t12 = cpu->r[31] + 0x00000004u;
|
|
/* 023991FC */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02399200 */ Gambit_fn_027C7500(cpu);
|
|
/* 02399204 */ cpu->r[9] = 0x10080000u;
|
|
/* 02399208 */ _t13 = cpu->r[3] + 0x00000010u;
|
|
/* 02399208 */ cpu->r[8] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0239920C */ _t14 = cpu->r[9] + 0x00006D90u;
|
|
/* 0239920C */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t14);
|
|
/* 02399210 */ cpu->r[9] = 0x43300000u;
|
|
/* 02399214 */ cpu->r[11] = cpu->r[8] ^ 0x80000000u;
|
|
/* 02399218 */ _t15 = cpu->r[1] + 0x00000008u;
|
|
/* 02399218 */ rbrew_write32(cpu->mem, _t15, cpu->r[9]);
|
|
/* 0239921C */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239921C */ rbrew_write32(cpu->mem, _t16, cpu->r[11]);
|
|
/* 02399220 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 02399220 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t17);
|
|
/* 02399224 */ _t18 = cpu->r[31] + 0x00000004u;
|
|
/* 02399224 */ cpu->r[11] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02399228 */ cpu->f[0] = cpu->f[13] - cpu->f[0];
|
|
/* 0239922C */ _t19 = cpu->r[11] + 0x00000008u;
|
|
/* 0239922C */ cpu->r[12] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02399230 */ cpu->r[7] = 0x10080000u;
|
|
/* 02399234 */ cpu->f[12] = (double)(float)cpu->f[0];
|
|
/* 02399238 */ _t20 = cpu->r[7] + 0x00006D84u;
|
|
/* 02399238 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 0239923C */ _t21 = cpu->r[12] + 0x00000004u;
|
|
/* 0239923C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 02399240 */ cpu->f[13] = cpu->f[12] - cpu->f[13];
|
|
/* 02399244 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[0]);
|
|
/* 02399248 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02399248 */ _t23 = _t22 & 0x00000001u;
|
|
/* 02399248 */ if (_t23) goto L_02399304; else goto L_0239924C;
|
|
L_0239924C: ; // 0x239924c
|
|
/* 0239924C */ _t24 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239924C */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02399250 */ _t25 = cpu->r[1] + 0x00000014u;
|
|
/* 02399250 */ cpu->r[31] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02399254 */ cpu->lr = cpu->r[0];
|
|
/* 02399258 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0239925C */ cpu->r[3] = 0x00000000u;
|
|
/* 02399260 */ return;
|
|
L_02399264: ; // 0x2399264
|
|
/* 02399264 */ _t26 = cpu->r[31] + 0x00000008u;
|
|
/* 02399264 */ cpu->r[5] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02399268 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 0239926C */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239926C */ _t28 = _t27 & 0x00000001u;
|
|
/* 0239926C */ if (_t28) goto L_02399304; else goto L_02399270;
|
|
L_02399270: ; // 0x2399270
|
|
/* 02399270 */ _t29 = cpu->r[31] + 0x00000010u;
|
|
/* 02399270 */ cpu->r[31] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02399274 */ cpu->r[0] = rbrew_rlwinm(cpu->r[5], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02399278 */ cpu->r[7] = cpu->r[31] + cpu->r[0];
|
|
/* 0239927C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[7]);
|
|
/* 02399280 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02399280 */ _t31 = _t30 & 0x00000001u;
|
|
/* 02399280 */ if (_t31) goto L_02399304; else goto L_02399284;
|
|
L_02399284: ; // 0x2399284
|
|
/* 02399284 */ _t32 = cpu->r[31] + 0x00000000u;
|
|
/* 02399284 */ cpu->r[9] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02399288 */ cpu->r[10] = cpu->r[9];
|
|
/* 0239928C */ _t33 = cpu->r[10] + 0x00000000u;
|
|
/* 0239928C */ cpu->r[5] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t33);
|
|
/* 02399290 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0xFFFFFFFFu);
|
|
/* 02399294 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02399294 */ _t35 = _t34 & 0x00000001u;
|
|
/* 02399294 */ if (_t35) goto L_023992F8; else goto L_02399298;
|
|
L_02399298: ; // 0x2399298
|
|
/* 02399298 */ _t36 = cpu->r[10] + 0x00000002u;
|
|
/* 02399298 */ cpu->r[6] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t36);
|
|
/* 0239929C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0xFFFFFFFFu);
|
|
/* 023992A0 */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023992A0 */ _t38 = _t37 & 0x00000001u;
|
|
/* 023992A0 */ if (_t38) goto L_023992F8; else goto L_023992A4;
|
|
L_023992A4: ; // 0x23992a4
|
|
/* 023992A4 */ _t39 = cpu->r[9] + 0x00000000u;
|
|
/* 023992A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t39);
|
|
/* 023992A8 */ _t40 = cpu->r[9] + 0x0000000Cu;
|
|
/* 023992A8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t40);
|
|
/* 023992AC */ _t41 = cpu->r[1] + 0x00000010u;
|
|
/* 023992AC */ rbrew_write32(cpu->mem, _t41, cpu->r[0]);
|
|
/* 023992B0 */ _t42 = cpu->r[10] + 0x000000A4u;
|
|
/* 023992B0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t42);
|
|
/* 023992B4 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 023992B8 */ Gambit_fn_0298415C(cpu);
|
|
/* 023992BC */ cpu->r[10] = 0x10080000u;
|
|
/* 023992C0 */ cpu->r[8] = 0x43300000u;
|
|
/* 023992C4 */ cpu->r[0] = cpu->r[3] + 0xFFFFFFFFu;
|
|
/* 023992C8 */ _t43 = cpu->r[10] + 0x00006D90u;
|
|
/* 023992C8 */ cpu->f[12] = rbrew_read_f64(cpu->mem, _t43);
|
|
/* 023992CC */ cpu->r[0] = cpu->r[0] ^ 0x80000000u;
|
|
/* 023992D0 */ _t44 = cpu->r[1] + 0x00000008u;
|
|
/* 023992D0 */ rbrew_write32(cpu->mem, _t44, cpu->r[8]);
|
|
/* 023992D4 */ _t45 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023992D4 */ rbrew_write32(cpu->mem, _t45, cpu->r[0]);
|
|
/* 023992D8 */ _t46 = cpu->r[1] + 0x00000008u;
|
|
/* 023992D8 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t46);
|
|
/* 023992DC */ cpu->f[13] = cpu->f[0] - cpu->f[12];
|
|
/* 023992E0 */ _t47 = cpu->r[31] + 0x00000000u;
|
|
/* 023992E0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t47);
|
|
/* 023992E4 */ cpu->f[12] = (double)(float)cpu->f[13];
|
|
/* 023992E8 */ _t48 = cpu->r[12] + 0x00000004u;
|
|
/* 023992E8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 023992EC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[0]);
|
|
/* 023992F0 */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023992F0 */ _t50 = _t49 & 0x00000001u;
|
|
/* 023992F0 */ if (_t50) goto L_023992F4; else goto L_0239924C;
|
|
L_023992F4: ; // 0x23992f4
|
|
/* 023992F4 */ goto L_02399304;
|
|
L_023992F8: ; // 0x23992f8
|
|
/* 023992F8 */ cpu->r[31] = cpu->r[31] + 0x00000004u;
|
|
/* 023992FC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[7]);
|
|
/* 02399300 */ _t51 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02399300 */ _t52 = _t51 & 0x00000001u;
|
|
/* 02399300 */ if (_t52) goto L_02399304; else goto L_02399284;
|
|
L_02399304: ; // 0x2399304
|
|
/* 02399304 */ _t53 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02399304 */ cpu->r[0] = rbrew_read32(cpu->mem, _t53);
|
|
/* 02399308 */ _t54 = cpu->r[1] + 0x00000014u;
|
|
/* 02399308 */ cpu->r[31] = rbrew_read32(cpu->mem, _t54);
|
|
/* 0239930C */ cpu->lr = cpu->r[0];
|
|
/* 02399310 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02399314 */ cpu->r[3] = 0x00000001u;
|
|
/* 02399318 */ return;
|
|
}
|
|
|
|
// fn_023991C0 @ 0x23991c0
|
|
void Gambit_fn_023991C0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54;
|
|
|
|
L_023991C0: ; // 0x23991c0
|
|
/* 023991C0 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 023991C0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 023991C0 */ cpu->r[1] = _t0;
|
|
/* 023991C4 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 023991C4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 023991C8 */ cpu->r[31] = cpu->r[3];
|
|
/* 023991CC */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 023991CC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 023991D0 */ _t3 = cpu->r[31] + 0x00000004u;
|
|
/* 023991D0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 023991D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 023991D8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023991D8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 023991D8 */ if (_t5) goto L_02399264; else goto L_023991DC;
|
|
L_023991DC: ; // 0x23991dc
|
|
/* 023991DC */ _t6 = cpu->r[12] + 0x00000008u;
|
|
/* 023991DC */ cpu->r[5] = rbrew_read32(cpu->mem, _t6);
|
|
/* 023991E0 */ _t7 = cpu->r[5] + 0x00000000u;
|
|
/* 023991E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 023991E4 */ /* nop */
|
|
/* 023991E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0xFFFFFFFFu);
|
|
/* 023991EC */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023991EC */ _t9 = _t8 & 0x00000001u;
|
|
/* 023991EC */ if (_t9) goto L_02399264; else goto L_023991F0;
|
|
L_023991F0: ; // 0x23991f0
|
|
/* 023991F0 */ /* nop */
|
|
/* 023991F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 023991F8 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023991F8 */ _t11 = _t10 & 0x00000001u;
|
|
/* 023991F8 */ if (_t11) goto L_02399264; else goto L_023991FC;
|
|
L_023991FC: ; // 0x23991fc
|
|
/* 023991FC */ _t12 = cpu->r[31] + 0x00000004u;
|
|
/* 023991FC */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02399200 */ Gambit_fn_027C7500(cpu);
|
|
/* 02399204 */ cpu->r[9] = 0x10080000u;
|
|
/* 02399208 */ _t13 = cpu->r[3] + 0x00000010u;
|
|
/* 02399208 */ cpu->r[8] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0239920C */ _t14 = cpu->r[9] + 0x00006D90u;
|
|
/* 0239920C */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t14);
|
|
/* 02399210 */ cpu->r[9] = 0x43300000u;
|
|
/* 02399214 */ cpu->r[11] = cpu->r[8] ^ 0x80000000u;
|
|
/* 02399218 */ _t15 = cpu->r[1] + 0x00000008u;
|
|
/* 02399218 */ rbrew_write32(cpu->mem, _t15, cpu->r[9]);
|
|
/* 0239921C */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239921C */ rbrew_write32(cpu->mem, _t16, cpu->r[11]);
|
|
/* 02399220 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 02399220 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t17);
|
|
/* 02399224 */ _t18 = cpu->r[31] + 0x00000004u;
|
|
/* 02399224 */ cpu->r[11] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02399228 */ cpu->f[0] = cpu->f[13] - cpu->f[0];
|
|
/* 0239922C */ _t19 = cpu->r[11] + 0x00000008u;
|
|
/* 0239922C */ cpu->r[12] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02399230 */ cpu->r[7] = 0x10080000u;
|
|
/* 02399234 */ cpu->f[12] = (double)(float)cpu->f[0];
|
|
/* 02399238 */ _t20 = cpu->r[7] + 0x00006D84u;
|
|
/* 02399238 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 0239923C */ _t21 = cpu->r[12] + 0x00000004u;
|
|
/* 0239923C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 02399240 */ cpu->f[13] = cpu->f[12] - cpu->f[13];
|
|
/* 02399244 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[0]);
|
|
/* 02399248 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02399248 */ _t23 = _t22 & 0x00000001u;
|
|
/* 02399248 */ if (_t23) goto L_02399304; else goto L_0239924C;
|
|
L_0239924C: ; // 0x239924c
|
|
/* 0239924C */ _t24 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239924C */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02399250 */ _t25 = cpu->r[1] + 0x00000014u;
|
|
/* 02399250 */ cpu->r[31] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02399254 */ cpu->lr = cpu->r[0];
|
|
/* 02399258 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0239925C */ cpu->r[3] = 0x00000000u;
|
|
/* 02399260 */ return;
|
|
L_02399264: ; // 0x2399264
|
|
/* 02399264 */ _t26 = cpu->r[31] + 0x00000008u;
|
|
/* 02399264 */ cpu->r[5] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02399268 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 0239926C */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239926C */ _t28 = _t27 & 0x00000001u;
|
|
/* 0239926C */ if (_t28) goto L_02399304; else goto L_02399270;
|
|
L_02399270: ; // 0x2399270
|
|
/* 02399270 */ _t29 = cpu->r[31] + 0x00000010u;
|
|
/* 02399270 */ cpu->r[31] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02399274 */ cpu->r[0] = rbrew_rlwinm(cpu->r[5], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02399278 */ cpu->r[7] = cpu->r[31] + cpu->r[0];
|
|
/* 0239927C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[7]);
|
|
/* 02399280 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02399280 */ _t31 = _t30 & 0x00000001u;
|
|
/* 02399280 */ if (_t31) goto L_02399304; else goto L_02399284;
|
|
L_02399284: ; // 0x2399284
|
|
/* 02399284 */ _t32 = cpu->r[31] + 0x00000000u;
|
|
/* 02399284 */ cpu->r[9] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02399288 */ cpu->r[10] = cpu->r[9];
|
|
/* 0239928C */ _t33 = cpu->r[10] + 0x00000000u;
|
|
/* 0239928C */ cpu->r[5] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t33);
|
|
/* 02399290 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0xFFFFFFFFu);
|
|
/* 02399294 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02399294 */ _t35 = _t34 & 0x00000001u;
|
|
/* 02399294 */ if (_t35) goto L_023992F8; else goto L_02399298;
|
|
L_02399298: ; // 0x2399298
|
|
/* 02399298 */ _t36 = cpu->r[10] + 0x00000002u;
|
|
/* 02399298 */ cpu->r[6] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t36);
|
|
/* 0239929C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0xFFFFFFFFu);
|
|
/* 023992A0 */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023992A0 */ _t38 = _t37 & 0x00000001u;
|
|
/* 023992A0 */ if (_t38) goto L_023992F8; else goto L_023992A4;
|
|
L_023992A4: ; // 0x23992a4
|
|
/* 023992A4 */ _t39 = cpu->r[9] + 0x00000000u;
|
|
/* 023992A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t39);
|
|
/* 023992A8 */ _t40 = cpu->r[9] + 0x0000000Cu;
|
|
/* 023992A8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t40);
|
|
/* 023992AC */ _t41 = cpu->r[1] + 0x00000010u;
|
|
/* 023992AC */ rbrew_write32(cpu->mem, _t41, cpu->r[0]);
|
|
/* 023992B0 */ _t42 = cpu->r[10] + 0x000000A4u;
|
|
/* 023992B0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t42);
|
|
/* 023992B4 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 023992B8 */ Gambit_fn_0298415C(cpu);
|
|
/* 023992BC */ cpu->r[10] = 0x10080000u;
|
|
/* 023992C0 */ cpu->r[8] = 0x43300000u;
|
|
/* 023992C4 */ cpu->r[0] = cpu->r[3] + 0xFFFFFFFFu;
|
|
/* 023992C8 */ _t43 = cpu->r[10] + 0x00006D90u;
|
|
/* 023992C8 */ cpu->f[12] = rbrew_read_f64(cpu->mem, _t43);
|
|
/* 023992CC */ cpu->r[0] = cpu->r[0] ^ 0x80000000u;
|
|
/* 023992D0 */ _t44 = cpu->r[1] + 0x00000008u;
|
|
/* 023992D0 */ rbrew_write32(cpu->mem, _t44, cpu->r[8]);
|
|
/* 023992D4 */ _t45 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023992D4 */ rbrew_write32(cpu->mem, _t45, cpu->r[0]);
|
|
/* 023992D8 */ _t46 = cpu->r[1] + 0x00000008u;
|
|
/* 023992D8 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t46);
|
|
/* 023992DC */ cpu->f[13] = cpu->f[0] - cpu->f[12];
|
|
/* 023992E0 */ _t47 = cpu->r[31] + 0x00000000u;
|
|
/* 023992E0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t47);
|
|
/* 023992E4 */ cpu->f[12] = (double)(float)cpu->f[13];
|
|
/* 023992E8 */ _t48 = cpu->r[12] + 0x00000004u;
|
|
/* 023992E8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 023992EC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[0]);
|
|
/* 023992F0 */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023992F0 */ _t50 = _t49 & 0x00000001u;
|
|
/* 023992F0 */ if (_t50) goto L_023992F4; else goto L_0239924C;
|
|
L_023992F4: ; // 0x23992f4
|
|
/* 023992F4 */ goto L_02399304;
|
|
L_023992F8: ; // 0x23992f8
|
|
/* 023992F8 */ cpu->r[31] = cpu->r[31] + 0x00000004u;
|
|
/* 023992FC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[7]);
|
|
/* 02399300 */ _t51 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02399300 */ _t52 = _t51 & 0x00000001u;
|
|
/* 02399300 */ if (_t52) goto L_02399304; else goto L_02399284;
|
|
L_02399304: ; // 0x2399304
|
|
/* 02399304 */ _t53 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02399304 */ cpu->r[0] = rbrew_read32(cpu->mem, _t53);
|
|
/* 02399308 */ _t54 = cpu->r[1] + 0x00000014u;
|
|
/* 02399308 */ cpu->r[31] = rbrew_read32(cpu->mem, _t54);
|
|
/* 0239930C */ cpu->lr = cpu->r[0];
|
|
/* 02399310 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02399314 */ cpu->r[3] = 0x00000001u;
|
|
/* 02399318 */ return;
|
|
}
|
|
|
|
// fn_0239931C @ 0x239931c
|
|
void Gambit_fn_0239931C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0239931C: ; // 0x239931c
|
|
/* 0239931C */ cpu->r[0] = cpu->lr;
|
|
/* 02399320 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 02399320 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02399320 */ cpu->r[1] = _t0;
|
|
/* 02399324 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 02399324 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 02399328 */ /* nop */
|
|
/* 0239932C */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239932C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02399330 */ _t3 = cpu->r[1] + 0x00000018u;
|
|
/* 02399330 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 02399334 */ cpu->f[31] = cpu->f[1];
|
|
/* 02399338 */ cpu->r[31] = cpu->r[3];
|
|
/* 0239933C */ _t4 = cpu->r[1] + 0x00000024u;
|
|
/* 0239933C */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02399340 */ Gambit_fn_02398D60(cpu);
|
|
/* 02399344 */ cpu->f[1] = cpu->f[1] / cpu->f[31];
|
|
/* 02399348 */ cpu->r[3] = cpu->r[31];
|
|
/* 0239934C */ Gambit_fn_023988E0(cpu);
|
|
/* 02399350 */ _t5 = cpu->r[1] + 0x00000018u;
|
|
/* 02399350 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 02399354 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02399354 */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02399358 */ _t7 = cpu->r[1] + 0x00000010u;
|
|
/* 02399358 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t7);
|
|
/* 0239935C */ _t8 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0239935C */ _t9 = _t8 & 0x00000001u;
|
|
/* 0239935C */ if (_t9) goto L_02399360; // else: addr-0 trap, fall-through
|
|
L_02399360: ; // 0x2399360
|
|
/* 02399360 */ _t10 = cpu->r[1] + 0x00000024u;
|
|
/* 02399360 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02399364 */ cpu->lr = cpu->r[0];
|
|
/* 02399368 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 0239936C */ return;
|
|
}
|
|
|
|
// fn_02399320 @ 0x2399320
|
|
void Gambit_fn_02399320(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02399320: ; // 0x2399320
|
|
/* 02399320 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 02399320 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02399320 */ cpu->r[1] = _t0;
|
|
/* 02399324 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 02399324 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 02399328 */ /* nop */
|
|
/* 0239932C */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239932C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02399330 */ _t3 = cpu->r[1] + 0x00000018u;
|
|
/* 02399330 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 02399334 */ cpu->f[31] = cpu->f[1];
|
|
/* 02399338 */ cpu->r[31] = cpu->r[3];
|
|
/* 0239933C */ _t4 = cpu->r[1] + 0x00000024u;
|
|
/* 0239933C */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02399340 */ Gambit_fn_02398D60(cpu);
|
|
/* 02399344 */ cpu->f[1] = cpu->f[1] / cpu->f[31];
|
|
/* 02399348 */ cpu->r[3] = cpu->r[31];
|
|
/* 0239934C */ Gambit_fn_023988E0(cpu);
|
|
/* 02399350 */ _t5 = cpu->r[1] + 0x00000018u;
|
|
/* 02399350 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 02399354 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02399354 */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02399358 */ _t7 = cpu->r[1] + 0x00000010u;
|
|
/* 02399358 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t7);
|
|
/* 0239935C */ _t8 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0239935C */ _t9 = _t8 & 0x00000001u;
|
|
/* 0239935C */ if (_t9) goto L_02399360; // else: addr-0 trap, fall-through
|
|
L_02399360: ; // 0x2399360
|
|
/* 02399360 */ _t10 = cpu->r[1] + 0x00000024u;
|
|
/* 02399360 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02399364 */ cpu->lr = cpu->r[0];
|
|
/* 02399368 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 0239936C */ return;
|
|
}
|
|
|
|
// fn_02399370 @ 0x2399370
|
|
void Gambit_fn_02399370(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_02399370: ; // 0x2399370
|
|
/* 02399370 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02399370 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02399374 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02399378 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02399378 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02399378 */ if (_t2) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02399378 */ goto L_0239937C;
|
|
L_0239937C: ; // 0x239937c
|
|
/* 0239937C */ goto L_027C78D0;
|
|
L_027C78D0: ; // 0x27c78d0
|
|
/* 027C78D0 */ _t3 = cpu->r[3] + 0x00000024u;
|
|
/* 027C78D0 */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[4]);
|
|
/* 027C78D4 */ return;
|
|
}
|
|
|
|
// fn_02399380 @ 0x2399380
|
|
void Gambit_fn_02399380(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_02399380: ; // 0x2399380
|
|
/* 02399380 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02399384 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02399384 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02399384 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02399384 */ goto L_02399388;
|
|
L_02399388: ; // 0x2399388
|
|
/* 02399388 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02399388 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0239938C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239938C */ _t3 = _t2 & 0x00000001u;
|
|
/* 0239938C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0239938C */ goto L_02399390;
|
|
L_02399390: ; // 0x2399390
|
|
/* 02399390 */ 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_02399394 @ 0x2399394
|
|
void Gambit_fn_02399394(CPUState* cpu) {
|
|
L_02399394: ; // 0x2399394
|
|
/* 02399394 */ return;
|
|
}
|
|
|
|
// fn_02399398 @ 0x2399398
|
|
void Gambit_fn_02399398(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02399398: ; // 0x2399398
|
|
/* 02399398 */ cpu->r[0] = cpu->lr;
|
|
/* 0239939C */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 0239939C */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 023993A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023993A4 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 023993A4 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 023993A4 */ cpu->r[1] = _t1;
|
|
/* 023993A8 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023993A8 */ _t3 = _t2 & 0x00000001u;
|
|
/* 023993A8 */ if (_t3) goto L_023993AC; else goto L_023993BC;
|
|
L_023993AC: ; // 0x23993ac
|
|
/* 023993AC */ cpu->r[3] = 0x00000008u;
|
|
/* 023993B0 */ Gambit_fn_02801A78(cpu);
|
|
/* 023993B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023993B8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023993B8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 023993B8 */ if (_t5) goto L_023993D4; else goto L_023993BC;
|
|
L_023993BC: ; // 0x23993bc
|
|
/* 023993BC */ cpu->r[12] = 0x10080000u;
|
|
/* 023993C0 */ _t6 = cpu->r[12] + 0x00006D98u;
|
|
/* 023993C0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 023993C4 */ cpu->r[12] = 0x10080000u;
|
|
/* 023993C8 */ _t7 = cpu->r[12] + 0x00006D9Cu;
|
|
/* 023993C8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 023993CC */ _t8 = cpu->r[3] + 0x00000000u;
|
|
/* 023993CC */ rbrew_write_f32(cpu->mem, _t8, cpu->f[0]);
|
|
/* 023993D0 */ _t9 = cpu->r[3] + 0x00000004u;
|
|
/* 023993D0 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[13]);
|
|
L_023993D4: ; // 0x23993d4
|
|
/* 023993D4 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023993D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 023993D8 */ cpu->lr = cpu->r[0];
|
|
/* 023993DC */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 023993E0 */ return;
|
|
}
|
|
|
|
// fn_023993A4 @ 0x23993a4
|
|
void Gambit_fn_023993A4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_023993A4: ; // 0x23993a4
|
|
/* 023993A4 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 023993A4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 023993A4 */ cpu->r[1] = _t0;
|
|
/* 023993A8 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023993A8 */ _t2 = _t1 & 0x00000001u;
|
|
/* 023993A8 */ if (_t2) goto L_023993AC; else goto L_023993BC;
|
|
L_023993AC: ; // 0x23993ac
|
|
/* 023993AC */ cpu->r[3] = 0x00000008u;
|
|
/* 023993B0 */ Gambit_fn_02801A78(cpu);
|
|
/* 023993B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023993B8 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023993B8 */ _t4 = _t3 & 0x00000001u;
|
|
/* 023993B8 */ if (_t4) goto L_023993D4; else goto L_023993BC;
|
|
L_023993BC: ; // 0x23993bc
|
|
/* 023993BC */ cpu->r[12] = 0x10080000u;
|
|
/* 023993C0 */ _t5 = cpu->r[12] + 0x00006D98u;
|
|
/* 023993C0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 023993C4 */ cpu->r[12] = 0x10080000u;
|
|
/* 023993C8 */ _t6 = cpu->r[12] + 0x00006D9Cu;
|
|
/* 023993C8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 023993CC */ _t7 = cpu->r[3] + 0x00000000u;
|
|
/* 023993CC */ rbrew_write_f32(cpu->mem, _t7, cpu->f[0]);
|
|
/* 023993D0 */ _t8 = cpu->r[3] + 0x00000004u;
|
|
/* 023993D0 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[13]);
|
|
L_023993D4: ; // 0x23993d4
|
|
/* 023993D4 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023993D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 023993D8 */ cpu->lr = cpu->r[0];
|
|
/* 023993DC */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 023993E0 */ return;
|
|
}
|
|
|
|
// fn_023993E4 @ 0x23993e4
|
|
void Gambit_fn_023993E4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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_023993E4: ; // 0x23993e4
|
|
/* 023993E4 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 023993E4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 023993E4 */ cpu->r[1] = _t0;
|
|
/* 023993E8 */ cpu->r[0] = cpu->lr;
|
|
/* 023993EC */ _t1 = cpu->r[1] + 0x00000018u;
|
|
/* 023993EC */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 023993F0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 023993F0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 023993F4 */ /* nop */
|
|
/* 023993F8 */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 023993F8 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 023993FC */ _t4 = cpu->r[1] + 0x00000020u;
|
|
/* 023993FC */ rbrew_write_f32(cpu->mem, _t4, cpu->f[31]);
|
|
/* 02399400 */ cpu->r[30] = cpu->r[4];
|
|
/* 02399404 */ cpu->r[31] = cpu->r[3];
|
|
/* 02399404 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02399408 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02399408 */ rbrew_write32(cpu->mem, _t5, cpu->r[29]);
|
|
/* 0239940C */ _t6 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0239940C */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02399410 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02399410 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02399410 */ if (_t8) goto L_02399414; else goto L_02399424;
|
|
L_02399414: ; // 0x2399414
|
|
/* 02399414 */ cpu->r[3] = 0x00000038u;
|
|
/* 02399418 */ Gambit_fn_02801A78(cpu);
|
|
/* 0239941C */ cpu->r[31] = cpu->r[3];
|
|
/* 0239941C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02399420 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02399420 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02399420 */ if (_t10) goto L_0239952C; else goto L_02399424;
|
|
L_02399424: ; // 0x2399424
|
|
/* 02399424 */ cpu->r[3] = cpu->r[31];
|
|
/* 02399424 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02399428 */ cpu->r[29] = 0x00000000u;
|
|
/* 0239942C */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239942C */ _t12 = _t11 & 0x00000001u;
|
|
/* 0239942C */ if (_t12) goto L_02399430; else goto L_02399440;
|
|
L_02399430: ; // 0x2399430
|
|
/* 02399430 */ cpu->r[3] = 0x00000008u;
|
|
/* 02399434 */ Gambit_fn_02801A78(cpu);
|
|
/* 02399438 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239943C */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239943C */ _t14 = _t13 & 0x00000001u;
|
|
/* 0239943C */ if (_t14) goto L_02399450; else goto L_02399440;
|
|
L_02399440: ; // 0x2399440
|
|
/* 02399440 */ cpu->r[0] = 0x10080000u;
|
|
/* 02399444 */ _t15 = cpu->r[3] + 0x00000000u;
|
|
/* 02399444 */ rbrew_write32(cpu->mem, _t15, cpu->r[29]);
|
|
/* 02399448 */ cpu->r[0] = cpu->r[0] + 0x00006DA0u;
|
|
/* 0239944C */ _t16 = cpu->r[3] + 0x00000004u;
|
|
/* 0239944C */ rbrew_write32(cpu->mem, _t16, cpu->r[0]);
|
|
L_02399450: ; // 0x2399450
|
|
/* 02399450 */ cpu->r[10] = 0x10080000u;
|
|
/* 02399454 */ _t17 = cpu->r[31] + 0x00000008u;
|
|
/* 02399454 */ rbrew_write32(cpu->mem, _t17, cpu->r[29]);
|
|
/* 02399458 */ cpu->r[12] = 0x10080000u;
|
|
/* 0239945C */ cpu->r[10] = cpu->r[10] + 0x00006DB0u;
|
|
/* 02399460 */ _t18 = cpu->r[12] + 0x00006DC0u;
|
|
/* 02399460 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 02399464 */ cpu->r[3] = cpu->r[31] + 0x0000000Cu;
|
|
/* 02399464 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02399468 */ _t19 = cpu->r[31] + 0x00000004u;
|
|
/* 02399468 */ rbrew_write32(cpu->mem, _t19, cpu->r[10]);
|
|
/* 0239946C */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239946C */ _t21 = _t20 & 0x00000001u;
|
|
/* 0239946C */ if (_t21) goto L_02399470; else goto L_02399480;
|
|
L_02399470: ; // 0x2399470
|
|
/* 02399470 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02399474 */ Gambit_fn_02801A78(cpu);
|
|
/* 02399478 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239947C */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239947C */ _t23 = _t22 & 0x00000001u;
|
|
/* 0239947C */ if (_t23) goto L_023994A4; else goto L_02399480;
|
|
L_02399480: ; // 0x2399480
|
|
/* 02399480 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02399484 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02399484 */ _t25 = _t24 & 0x00000001u;
|
|
/* 02399484 */ if (_t25) goto L_02399488; else goto L_02399498;
|
|
L_02399488: ; // 0x2399488
|
|
/* 02399488 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0239948C */ Gambit_fn_02801A78(cpu);
|
|
/* 02399490 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02399494 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02399494 */ _t27 = _t26 & 0x00000001u;
|
|
/* 02399494 */ if (_t27) goto L_023994A4; else goto L_02399498;
|
|
L_02399498: ; // 0x2399498
|
|
/* 02399498 */ _t28 = cpu->r[3] + 0x00000004u;
|
|
/* 02399498 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[31]);
|
|
/* 0239949C */ _t29 = cpu->r[3] + 0x00000000u;
|
|
/* 0239949C */ rbrew_write_f32(cpu->mem, _t29, cpu->f[31]);
|
|
/* 023994A0 */ _t30 = cpu->r[3] + 0x00000008u;
|
|
/* 023994A0 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[31]);
|
|
L_023994A4: ; // 0x23994a4
|
|
/* 023994A4 */ cpu->r[3] = cpu->r[31] + 0x00000018u;
|
|
/* 023994A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023994A8 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023994A8 */ _t32 = _t31 & 0x00000001u;
|
|
/* 023994A8 */ if (_t32) goto L_023994AC; else goto L_023994BC;
|
|
L_023994AC: ; // 0x23994ac
|
|
/* 023994AC */ cpu->r[3] = 0x0000000Cu;
|
|
/* 023994B0 */ Gambit_fn_02801A78(cpu);
|
|
/* 023994B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023994B8 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023994B8 */ _t34 = _t33 & 0x00000001u;
|
|
/* 023994B8 */ if (_t34) goto L_023994E0; else goto L_023994BC;
|
|
L_023994BC: ; // 0x23994bc
|
|
/* 023994BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023994C0 */ _t35 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023994C0 */ _t36 = _t35 & 0x00000001u;
|
|
/* 023994C0 */ if (_t36) goto L_023994C4; else goto L_023994D4;
|
|
L_023994C4: ; // 0x23994c4
|
|
/* 023994C4 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 023994C8 */ Gambit_fn_02801A78(cpu);
|
|
/* 023994CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023994D0 */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023994D0 */ _t38 = _t37 & 0x00000001u;
|
|
/* 023994D0 */ if (_t38) goto L_023994E0; else goto L_023994D4;
|
|
L_023994D4: ; // 0x23994d4
|
|
/* 023994D4 */ _t39 = cpu->r[3] + 0x00000004u;
|
|
/* 023994D4 */ rbrew_write_f32(cpu->mem, _t39, cpu->f[31]);
|
|
/* 023994D8 */ _t40 = cpu->r[3] + 0x00000000u;
|
|
/* 023994D8 */ rbrew_write_f32(cpu->mem, _t40, cpu->f[31]);
|
|
/* 023994DC */ _t41 = cpu->r[3] + 0x00000008u;
|
|
/* 023994DC */ rbrew_write_f32(cpu->mem, _t41, cpu->f[31]);
|
|
L_023994E0: ; // 0x23994e0
|
|
/* 023994E0 */ cpu->r[3] = cpu->r[31] + 0x00000024u;
|
|
/* 023994E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023994E4 */ _t42 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023994E4 */ _t43 = _t42 & 0x00000001u;
|
|
/* 023994E4 */ if (_t43) goto L_023994E8; else goto L_023994F8;
|
|
L_023994E8: ; // 0x23994e8
|
|
/* 023994E8 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 023994EC */ Gambit_fn_02801A78(cpu);
|
|
/* 023994F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023994F4 */ _t44 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023994F4 */ _t45 = _t44 & 0x00000001u;
|
|
/* 023994F4 */ if (_t45) goto L_0239951C; else goto L_023994F8;
|
|
L_023994F8: ; // 0x23994f8
|
|
/* 023994F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023994FC */ _t46 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023994FC */ _t47 = _t46 & 0x00000001u;
|
|
/* 023994FC */ if (_t47) goto L_02399500; else goto L_02399510;
|
|
L_02399500: ; // 0x2399500
|
|
/* 02399500 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02399504 */ Gambit_fn_02801A78(cpu);
|
|
/* 02399508 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239950C */ _t48 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239950C */ _t49 = _t48 & 0x00000001u;
|
|
/* 0239950C */ if (_t49) goto L_0239951C; else goto L_02399510;
|
|
L_02399510: ; // 0x2399510
|
|
/* 02399510 */ _t50 = cpu->r[3] + 0x00000004u;
|
|
/* 02399510 */ rbrew_write_f32(cpu->mem, _t50, cpu->f[31]);
|
|
/* 02399514 */ _t51 = cpu->r[3] + 0x00000000u;
|
|
/* 02399514 */ rbrew_write_f32(cpu->mem, _t51, cpu->f[31]);
|
|
/* 02399518 */ _t52 = cpu->r[3] + 0x00000008u;
|
|
/* 02399518 */ rbrew_write_f32(cpu->mem, _t52, cpu->f[31]);
|
|
L_0239951C: ; // 0x239951c
|
|
/* 0239951C */ cpu->r[3] = cpu->r[31] + 0x00000030u;
|
|
/* 02399520 */ Gambit_fn_02399398(cpu);
|
|
/* 02399524 */ _t53 = cpu->r[30] + 0x00000000u;
|
|
/* 02399524 */ cpu->r[0] = rbrew_read32(cpu->mem, _t53);
|
|
/* 02399528 */ _t54 = cpu->r[31] + 0x00000008u;
|
|
/* 02399528 */ rbrew_write32(cpu->mem, _t54, cpu->r[0]);
|
|
L_0239952C: ; // 0x239952c
|
|
/* 0239952C */ _t55 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239952C */ cpu->r[29] = rbrew_read32(cpu->mem, _t55);
|
|
/* 02399530 */ _t56 = cpu->r[1] + 0x00000020u;
|
|
/* 02399530 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 02399534 */ _t57 = cpu->r[1] + 0x00000010u;
|
|
/* 02399534 */ cpu->r[30] = rbrew_read32(cpu->mem, _t57);
|
|
/* 02399538 */ _t58 = cpu->r[1] + 0x00000018u;
|
|
/* 02399538 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t58);
|
|
/* 0239953C */ cpu->r[3] = cpu->r[31];
|
|
/* 02399540 */ _t59 = cpu->r[1] + 0x00000014u;
|
|
/* 02399540 */ cpu->r[31] = rbrew_read32(cpu->mem, _t59);
|
|
/* 02399544 */ _t60 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02399544 */ _t61 = _t60 & 0x00000001u;
|
|
/* 02399544 */ if (_t61) goto L_02399548; // else: addr-0 trap, fall-through
|
|
L_02399548: ; // 0x2399548
|
|
/* 02399548 */ _t62 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02399548 */ cpu->r[0] = rbrew_read32(cpu->mem, _t62);
|
|
/* 0239954C */ cpu->lr = cpu->r[0];
|
|
/* 02399550 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 02399554 */ return;
|
|
}
|
|
|
|
// fn_02399558 @ 0x2399558
|
|
void Gambit_fn_02399558(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_02399558: ; // 0x2399558
|
|
/* 02399558 */ _t0 = cpu->r[4] + 0x00000000u;
|
|
/* 02399558 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0239955C */ _t1 = cpu->r[3] + 0x00000030u;
|
|
/* 0239955C */ rbrew_write32(cpu->mem, _t1, cpu->r[12]);
|
|
/* 02399560 */ _t2 = cpu->r[4] + 0x00000004u;
|
|
/* 02399560 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02399564 */ _t3 = cpu->r[3] + 0x00000034u;
|
|
/* 02399564 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02399568 */ return;
|
|
}
|
|
|
|
// fn_0239956C @ 0x239956c
|
|
void Gambit_fn_0239956C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_0239956C: ; // 0x239956c
|
|
/* 0239956C */ cpu->r[12] = 0x10080000u;
|
|
/* 02399570 */ _t0 = cpu->r[12] + 0x00006DC0u;
|
|
/* 02399570 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 02399574 */ _t1 = cpu->r[3] + 0x00000018u;
|
|
/* 02399574 */ rbrew_write_f32(cpu->mem, _t1, cpu->f[0]);
|
|
/* 02399578 */ _t2 = cpu->r[3] + 0x00000010u;
|
|
/* 02399578 */ rbrew_write_f32(cpu->mem, _t2, cpu->f[0]);
|
|
/* 0239957C */ _t3 = cpu->r[3] + 0x00000014u;
|
|
/* 0239957C */ rbrew_write_f32(cpu->mem, _t3, cpu->f[0]);
|
|
/* 02399580 */ _t4 = cpu->r[3] + 0x0000002Cu;
|
|
/* 02399580 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[0]);
|
|
/* 02399584 */ _t5 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02399584 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[0]);
|
|
/* 02399588 */ _t6 = cpu->r[3] + 0x00000024u;
|
|
/* 02399588 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[0]);
|
|
/* 0239958C */ _t7 = cpu->r[3] + 0x00000028u;
|
|
/* 0239958C */ rbrew_write_f32(cpu->mem, _t7, cpu->f[0]);
|
|
/* 02399590 */ _t8 = cpu->r[3] + 0x0000001Cu;
|
|
/* 02399590 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[0]);
|
|
/* 02399594 */ _t9 = cpu->r[3] + 0x00000020u;
|
|
/* 02399594 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[0]);
|
|
/* 02399598 */ return;
|
|
}
|
|
|
|
// fn_0239959C @ 0x239959c
|
|
void Gambit_fn_0239959C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36;
|
|
|
|
L_0239959C: ; // 0x239959c
|
|
/* 0239959C */ cpu->r[0] = cpu->lr;
|
|
/* 023995A0 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 023995A0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 023995A0 */ cpu->r[1] = _t0;
|
|
/* 023995A4 */ _t1 = cpu->r[1] + 0x0000003Cu;
|
|
/* 023995A4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 023995A8 */ cpu->r[31] = cpu->r[3];
|
|
/* 023995AC */ _t2 = cpu->r[1] + 0x00000044u;
|
|
/* 023995AC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 023995B0 */ _t3 = cpu->r[31] + 0x00000020u;
|
|
/* 023995B0 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 023995B4 */ _t4 = cpu->r[31] + 0x00000018u;
|
|
/* 023995B4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 023995B8 */ cpu->f[9] = -cpu->f[7];
|
|
/* 023995BC */ _t5 = cpu->r[31] + 0x0000001Cu;
|
|
/* 023995BC */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 023995C0 */ cpu->f[11] = -cpu->f[13];
|
|
/* 023995C4 */ _t6 = cpu->r[31] + 0x0000002Cu;
|
|
/* 023995C4 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 023995C8 */ _t7 = cpu->r[1] + 0x00000010u;
|
|
/* 023995C8 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[9]);
|
|
/* 023995CC */ _t8 = cpu->r[1] + 0x00000010u;
|
|
/* 023995CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 023995D0 */ cpu->f[0] = -cpu->f[8];
|
|
/* 023995D4 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 023995D4 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[11]);
|
|
/* 023995D8 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 023995D8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t10);
|
|
/* 023995DC */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023995DC */ rbrew_write_f32(cpu->mem, _t11, cpu->f[0]);
|
|
/* 023995E0 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023995E0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t12);
|
|
/* 023995E4 */ /* nop */
|
|
/* 023995E8 */ _t13 = cpu->r[31] + 0x00000014u;
|
|
/* 023995E8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 023995EC */ _t14 = cpu->r[1] + 0x00000030u;
|
|
/* 023995EC */ rbrew_write32(cpu->mem, _t14, cpu->r[11]);
|
|
/* 023995F0 */ cpu->f[6] = cpu->f[6] + cpu->f[13];
|
|
/* 023995F4 */ /* nop */
|
|
/* 023995F8 */ _t15 = cpu->r[31] + 0x00000030u;
|
|
/* 023995F8 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 023995FC */ _t16 = cpu->r[1] + 0x0000002Cu;
|
|
/* 023995FC */ rbrew_write32(cpu->mem, _t16, cpu->r[10]);
|
|
/* 02399600 */ /* nop */
|
|
/* 02399604 */ /* nop */
|
|
/* 02399608 */ _t17 = cpu->r[1] + 0x00000034u;
|
|
/* 02399608 */ rbrew_write32(cpu->mem, _t17, cpu->r[0]);
|
|
/* 0239960C */ _t18 = cpu->r[1] + 0x00000034u;
|
|
/* 0239960C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 02399610 */ /* nop */
|
|
/* 02399614 */ /* nop */
|
|
/* 02399618 */ _t19 = cpu->r[1] + 0x00000018u;
|
|
/* 02399618 */ cpu->r[8] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0239961C */ cpu->f[0] = cpu->f[8] * cpu->f[10];
|
|
/* 02399620 */ _t20 = cpu->r[1] + 0x00000014u;
|
|
/* 02399620 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02399624 */ _t21 = cpu->r[31] + 0x00000034u;
|
|
/* 02399624 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 02399628 */ _t22 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02399628 */ rbrew_write_f32(cpu->mem, _t22, cpu->f[0]);
|
|
/* 0239962C */ _t23 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239962C */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02399630 */ _t24 = cpu->r[1] + 0x00000020u;
|
|
/* 02399630 */ rbrew_write32(cpu->mem, _t24, cpu->r[11]);
|
|
/* 02399634 */ _t25 = cpu->r[1] + 0x00000024u;
|
|
/* 02399634 */ rbrew_write32(cpu->mem, _t25, cpu->r[8]);
|
|
/* 02399638 */ /* nop */
|
|
/* 0239963C */ /* nop */
|
|
/* 02399640 */ _t26 = cpu->r[1] + 0x00000028u;
|
|
/* 02399640 */ rbrew_write32(cpu->mem, _t26, cpu->r[0]);
|
|
/* 02399644 */ _t27 = cpu->r[1] + 0x00000028u;
|
|
/* 02399644 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 02399648 */ /* nop */
|
|
/* 0239964C */ /* nop */
|
|
/* 02399650 */ cpu->f[11] = fma(cpu->f[6], cpu->f[8], cpu->f[11]);
|
|
/* 02399654 */ /* nop */
|
|
/* 02399658 */ cpu->r[12] = 0x10080000u;
|
|
/* 0239965C */ /* nop */
|
|
/* 02399660 */ _t28 = cpu->r[12] + 0x00006DC4u;
|
|
/* 02399660 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 02399664 */ cpu->f[12] = cpu->f[7] + cpu->f[11];
|
|
/* 02399668 */ /* nop */
|
|
/* 0239966C */ _t29 = cpu->r[31] + 0x0000002Cu;
|
|
/* 0239966C */ rbrew_write_f32(cpu->mem, _t29, cpu->f[11]);
|
|
/* 02399670 */ cpu->r[3] = cpu->r[31] + 0x00000018u;
|
|
/* 02399674 */ _t30 = cpu->r[31] + 0x00000020u;
|
|
/* 02399674 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[12]);
|
|
/* 02399678 */ Gambit_fn_0204ECF0(cpu);
|
|
/* 0239967C */ cpu->r[11] = 0x10080000u;
|
|
/* 02399680 */ _t31 = cpu->r[11] + 0x00006DC0u;
|
|
/* 02399680 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 02399684 */ _t32 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02399684 */ rbrew_write_f32(cpu->mem, _t32, cpu->f[0]);
|
|
/* 02399688 */ _t33 = cpu->r[31] + 0x00000014u;
|
|
/* 02399688 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[0]);
|
|
/* 0239968C */ _t34 = cpu->r[31] + 0x00000010u;
|
|
/* 0239968C */ rbrew_write_f32(cpu->mem, _t34, cpu->f[0]);
|
|
/* 02399690 */ _t35 = cpu->r[1] + 0x00000044u;
|
|
/* 02399690 */ cpu->r[0] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02399694 */ cpu->lr = cpu->r[0];
|
|
/* 02399698 */ _t36 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02399698 */ cpu->r[31] = rbrew_read32(cpu->mem, _t36);
|
|
/* 0239969C */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 023996A0 */ return;
|
|
}
|
|
|
|
// fn_023995A0 @ 0x23995a0
|
|
void Gambit_fn_023995A0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36;
|
|
|
|
L_023995A0: ; // 0x23995a0
|
|
/* 023995A0 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 023995A0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 023995A0 */ cpu->r[1] = _t0;
|
|
/* 023995A4 */ _t1 = cpu->r[1] + 0x0000003Cu;
|
|
/* 023995A4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 023995A8 */ cpu->r[31] = cpu->r[3];
|
|
/* 023995AC */ _t2 = cpu->r[1] + 0x00000044u;
|
|
/* 023995AC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 023995B0 */ _t3 = cpu->r[31] + 0x00000020u;
|
|
/* 023995B0 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 023995B4 */ _t4 = cpu->r[31] + 0x00000018u;
|
|
/* 023995B4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 023995B8 */ cpu->f[9] = -cpu->f[7];
|
|
/* 023995BC */ _t5 = cpu->r[31] + 0x0000001Cu;
|
|
/* 023995BC */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 023995C0 */ cpu->f[11] = -cpu->f[13];
|
|
/* 023995C4 */ _t6 = cpu->r[31] + 0x0000002Cu;
|
|
/* 023995C4 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 023995C8 */ _t7 = cpu->r[1] + 0x00000010u;
|
|
/* 023995C8 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[9]);
|
|
/* 023995CC */ _t8 = cpu->r[1] + 0x00000010u;
|
|
/* 023995CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 023995D0 */ cpu->f[0] = -cpu->f[8];
|
|
/* 023995D4 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 023995D4 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[11]);
|
|
/* 023995D8 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 023995D8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t10);
|
|
/* 023995DC */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023995DC */ rbrew_write_f32(cpu->mem, _t11, cpu->f[0]);
|
|
/* 023995E0 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023995E0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t12);
|
|
/* 023995E4 */ /* nop */
|
|
/* 023995E8 */ _t13 = cpu->r[31] + 0x00000014u;
|
|
/* 023995E8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 023995EC */ _t14 = cpu->r[1] + 0x00000030u;
|
|
/* 023995EC */ rbrew_write32(cpu->mem, _t14, cpu->r[11]);
|
|
/* 023995F0 */ cpu->f[6] = cpu->f[6] + cpu->f[13];
|
|
/* 023995F4 */ /* nop */
|
|
/* 023995F8 */ _t15 = cpu->r[31] + 0x00000030u;
|
|
/* 023995F8 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 023995FC */ _t16 = cpu->r[1] + 0x0000002Cu;
|
|
/* 023995FC */ rbrew_write32(cpu->mem, _t16, cpu->r[10]);
|
|
/* 02399600 */ /* nop */
|
|
/* 02399604 */ /* nop */
|
|
/* 02399608 */ _t17 = cpu->r[1] + 0x00000034u;
|
|
/* 02399608 */ rbrew_write32(cpu->mem, _t17, cpu->r[0]);
|
|
/* 0239960C */ _t18 = cpu->r[1] + 0x00000034u;
|
|
/* 0239960C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 02399610 */ /* nop */
|
|
/* 02399614 */ /* nop */
|
|
/* 02399618 */ _t19 = cpu->r[1] + 0x00000018u;
|
|
/* 02399618 */ cpu->r[8] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0239961C */ cpu->f[0] = cpu->f[8] * cpu->f[10];
|
|
/* 02399620 */ _t20 = cpu->r[1] + 0x00000014u;
|
|
/* 02399620 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02399624 */ _t21 = cpu->r[31] + 0x00000034u;
|
|
/* 02399624 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 02399628 */ _t22 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02399628 */ rbrew_write_f32(cpu->mem, _t22, cpu->f[0]);
|
|
/* 0239962C */ _t23 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239962C */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02399630 */ _t24 = cpu->r[1] + 0x00000020u;
|
|
/* 02399630 */ rbrew_write32(cpu->mem, _t24, cpu->r[11]);
|
|
/* 02399634 */ _t25 = cpu->r[1] + 0x00000024u;
|
|
/* 02399634 */ rbrew_write32(cpu->mem, _t25, cpu->r[8]);
|
|
/* 02399638 */ /* nop */
|
|
/* 0239963C */ /* nop */
|
|
/* 02399640 */ _t26 = cpu->r[1] + 0x00000028u;
|
|
/* 02399640 */ rbrew_write32(cpu->mem, _t26, cpu->r[0]);
|
|
/* 02399644 */ _t27 = cpu->r[1] + 0x00000028u;
|
|
/* 02399644 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 02399648 */ /* nop */
|
|
/* 0239964C */ /* nop */
|
|
/* 02399650 */ cpu->f[11] = fma(cpu->f[6], cpu->f[8], cpu->f[11]);
|
|
/* 02399654 */ /* nop */
|
|
/* 02399658 */ cpu->r[12] = 0x10080000u;
|
|
/* 0239965C */ /* nop */
|
|
/* 02399660 */ _t28 = cpu->r[12] + 0x00006DC4u;
|
|
/* 02399660 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 02399664 */ cpu->f[12] = cpu->f[7] + cpu->f[11];
|
|
/* 02399668 */ /* nop */
|
|
/* 0239966C */ _t29 = cpu->r[31] + 0x0000002Cu;
|
|
/* 0239966C */ rbrew_write_f32(cpu->mem, _t29, cpu->f[11]);
|
|
/* 02399670 */ cpu->r[3] = cpu->r[31] + 0x00000018u;
|
|
/* 02399674 */ _t30 = cpu->r[31] + 0x00000020u;
|
|
/* 02399674 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[12]);
|
|
/* 02399678 */ Gambit_fn_0204ECF0(cpu);
|
|
/* 0239967C */ cpu->r[11] = 0x10080000u;
|
|
/* 02399680 */ _t31 = cpu->r[11] + 0x00006DC0u;
|
|
/* 02399680 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 02399684 */ _t32 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02399684 */ rbrew_write_f32(cpu->mem, _t32, cpu->f[0]);
|
|
/* 02399688 */ _t33 = cpu->r[31] + 0x00000014u;
|
|
/* 02399688 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[0]);
|
|
/* 0239968C */ _t34 = cpu->r[31] + 0x00000010u;
|
|
/* 0239968C */ rbrew_write_f32(cpu->mem, _t34, cpu->f[0]);
|
|
/* 02399690 */ _t35 = cpu->r[1] + 0x00000044u;
|
|
/* 02399690 */ cpu->r[0] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02399694 */ cpu->lr = cpu->r[0];
|
|
/* 02399698 */ _t36 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02399698 */ cpu->r[31] = rbrew_read32(cpu->mem, _t36);
|
|
/* 0239969C */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 023996A0 */ return;
|
|
}
|
|
|
|
// fn_023996A4 @ 0x23996a4
|
|
void Gambit_fn_023996A4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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, _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;
|
|
double _ft134, _ft135;
|
|
|
|
L_023996A4: ; // 0x23996a4
|
|
/* 023996A4 */ _t0 = cpu->r[1] + 0xFFFFFF30u;
|
|
/* 023996A4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 023996A4 */ cpu->r[1] = _t0;
|
|
/* 023996A8 */ _t1 = cpu->r[1] + 0x000000A0u;
|
|
/* 023996A8 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[29]);
|
|
/* 023996AC */ cpu->r[0] = cpu->lr;
|
|
/* 023996B0 */ _t2 = cpu->r[1] + 0x000000B0u;
|
|
/* 023996B0 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[30]);
|
|
/* 023996B4 */ /* nop */
|
|
/* 023996B8 */ _t3 = cpu->r[1] + 0x000000C0u;
|
|
/* 023996B8 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[31]);
|
|
/* 023996BC */ _t4 = cpu->r[1] + 0x0000009Cu;
|
|
/* 023996BC */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 023996C0 */ /* nop */
|
|
/* 023996C4 */ _t5 = cpu->r[1] + 0x000000B8u;
|
|
/* 023996C4 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[30]);
|
|
/* 023996C8 */ _t6 = cpu->r[1] + 0x000000C8u;
|
|
/* 023996C8 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[31]);
|
|
/* 023996CC */ /* nop */
|
|
/* 023996D0 */ _t7 = cpu->r[1] + 0x000000A8u;
|
|
/* 023996D0 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[29]);
|
|
/* 023996D4 */ cpu->r[31] = cpu->r[3];
|
|
/* 023996D8 */ _t8 = cpu->r[1] + 0x000000D4u;
|
|
/* 023996D8 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 023996DC */ _t9 = cpu->r[31] + 0x00000008u;
|
|
/* 023996DC */ cpu->r[10] = rbrew_read32(cpu->mem, _t9);
|
|
/* 023996E0 */ _t10 = cpu->r[4] + 0x00000008u;
|
|
/* 023996E0 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 023996E4 */ _t11 = cpu->r[10] + 0x0000002Cu;
|
|
/* 023996E4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 023996E8 */ /* nop */
|
|
/* 023996EC */ cpu->f[6] = cpu->f[9] - cpu->f[10];
|
|
/* 023996F0 */ /* nop */
|
|
/* 023996F4 */ _t12 = cpu->r[1] + 0x00000094u;
|
|
/* 023996F4 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[6]);
|
|
/* 023996F8 */ /* nop */
|
|
/* 023996FC */ /* nop */
|
|
/* 02399700 */ /* nop */
|
|
/* 02399704 */ /* nop */
|
|
/* 02399708 */ /* nop */
|
|
/* 0239970C */ /* nop */
|
|
/* 02399710 */ /* nop */
|
|
/* 02399714 */ /* nop */
|
|
/* 02399718 */ _t13 = cpu->r[10] + 0x00000008u;
|
|
/* 02399718 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 0239971C */ /* nop */
|
|
/* 02399720 */ cpu->f[10] = fma(cpu->f[6], cpu->f[7], cpu->f[13]);
|
|
/* 02399724 */ _t14 = cpu->r[10] + 0x00000020u;
|
|
/* 02399724 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 02399728 */ /* nop */
|
|
/* 0239972C */ _t15 = cpu->r[10] + 0x00000014u;
|
|
/* 0239972C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 02399730 */ cpu->f[9] = fma(cpu->f[6], cpu->f[7], cpu->f[12]);
|
|
/* 02399734 */ _t16 = cpu->r[1] + 0x00000020u;
|
|
/* 02399734 */ rbrew_write_f32(cpu->mem, _t16, cpu->f[10]);
|
|
/* 02399738 */ _t17 = cpu->r[1] + 0x00000020u;
|
|
/* 02399738 */ cpu->r[12] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0239973C */ cpu->f[13] = cpu->f[11];
|
|
/* 02399740 */ /* nop */
|
|
/* 02399744 */ _t18 = cpu->r[1] + 0x00000028u;
|
|
/* 02399744 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[9]);
|
|
/* 02399748 */ cpu->f[13] = fma(cpu->f[6], cpu->f[8], cpu->f[13]);
|
|
/* 0239974C */ _t19 = cpu->r[1] + 0x00000028u;
|
|
/* 0239974C */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02399750 */ _t20 = cpu->r[1] + 0x00000050u;
|
|
/* 02399750 */ rbrew_write32(cpu->mem, _t20, cpu->r[12]);
|
|
/* 02399754 */ _t21 = cpu->r[1] + 0x00000024u;
|
|
/* 02399754 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[13]);
|
|
/* 02399758 */ _t22 = cpu->r[1] + 0x00000024u;
|
|
/* 02399758 */ cpu->r[7] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0239975C */ _t23 = cpu->r[1] + 0x00000058u;
|
|
/* 0239975C */ rbrew_write32(cpu->mem, _t23, cpu->r[0]);
|
|
/* 02399760 */ _t24 = cpu->r[1] + 0x00000054u;
|
|
/* 02399760 */ rbrew_write32(cpu->mem, _t24, cpu->r[7]);
|
|
/* 02399764 */ /* nop */
|
|
/* 02399768 */ /* nop */
|
|
/* 0239976C */ /* nop */
|
|
/* 02399770 */ /* nop */
|
|
/* 02399774 */ /* nop */
|
|
/* 02399778 */ /* nop */
|
|
/* 0239977C */ cpu->f[7] = cpu->f[0];
|
|
/* 02399780 */ _t25 = cpu->r[5] + 0x00000008u;
|
|
/* 02399780 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 02399784 */ /* nop */
|
|
/* 02399788 */ _t26 = cpu->r[10] + 0x00000008u;
|
|
/* 02399788 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 0239978C */ /* nop */
|
|
/* 02399790 */ _t27 = cpu->r[6] + 0x00000000u;
|
|
/* 02399790 */ cpu->r[9] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02399794 */ cpu->f[10] = fma(cpu->f[13], cpu->f[8], cpu->f[7]);
|
|
/* 02399798 */ _t28 = cpu->r[10] + 0x00000014u;
|
|
/* 02399798 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 0239979C */ cpu->f[8] = cpu->f[0];
|
|
/* 023997A0 */ _t29 = cpu->r[10] + 0x00000020u;
|
|
/* 023997A0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 023997A4 */ /* nop */
|
|
/* 023997A8 */ _t30 = cpu->r[1] + 0x00000014u;
|
|
/* 023997A8 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[10]);
|
|
/* 023997AC */ cpu->f[12] = cpu->f[11];
|
|
/* 023997B0 */ _t31 = cpu->r[1] + 0x00000014u;
|
|
/* 023997B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 023997B4 */ cpu->f[11] = fma(cpu->f[13], cpu->f[9], cpu->f[8]);
|
|
/* 023997B8 */ _t32 = cpu->r[1] + 0x00000068u;
|
|
/* 023997B8 */ rbrew_write32(cpu->mem, _t32, cpu->r[0]);
|
|
/* 023997BC */ cpu->f[0] = fma(cpu->f[13], cpu->f[0], cpu->f[12]);
|
|
/* 023997C0 */ _t33 = cpu->r[1] + 0x00000018u;
|
|
/* 023997C0 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[11]);
|
|
/* 023997C4 */ _t34 = cpu->r[1] + 0x00000018u;
|
|
/* 023997C4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t34);
|
|
/* 023997C8 */ _t35 = cpu->r[1] + 0x0000001Cu;
|
|
/* 023997C8 */ rbrew_write_f32(cpu->mem, _t35, cpu->f[0]);
|
|
/* 023997CC */ _t36 = cpu->r[1] + 0x0000001Cu;
|
|
/* 023997CC */ cpu->r[8] = rbrew_read32(cpu->mem, _t36);
|
|
/* 023997D0 */ _t37 = cpu->r[1] + 0x0000006Cu;
|
|
/* 023997D0 */ rbrew_write32(cpu->mem, _t37, cpu->r[7]);
|
|
/* 023997D4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], 0x00000001u);
|
|
/* 023997D8 */ _t38 = cpu->r[1] + 0x00000070u;
|
|
/* 023997D8 */ rbrew_write32(cpu->mem, _t38, cpu->r[8]);
|
|
/* 023997DC */ _t39 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 023997DC */ _t40 = _t39 & 0x00000001u;
|
|
/* 023997DC */ if (_t40) goto L_02399858; else goto L_023997E0;
|
|
L_023997E0: ; // 0x23997e0
|
|
/* 023997E0 */ _t41 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023997E0 */ _t42 = _t41 & 0x00000001u;
|
|
/* 023997E0 */ if (_t42) goto L_023998CC; else goto L_023997E4;
|
|
L_023997E4: ; // 0x23997e4
|
|
/* 023997E4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], 0x00000002u);
|
|
/* 023997E8 */ _t43 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023997E8 */ _t44 = _t43 & 0x00000001u;
|
|
/* 023997E8 */ if (_t44) goto L_02399940; else goto L_023997EC;
|
|
L_023997EC: ; // 0x23997ec
|
|
/* 023997EC */ _t45 = cpu->r[1] + 0x00000054u;
|
|
/* 023997EC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t45);
|
|
/* 023997F0 */ cpu->r[12] = 0x10080000u;
|
|
/* 023997F4 */ _t46 = cpu->r[1] + 0x00000050u;
|
|
/* 023997F4 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t46);
|
|
/* 023997F8 */ cpu->f[9] = -cpu->f[11];
|
|
/* 023997FC */ _t47 = cpu->r[12] + 0x00006DC0u;
|
|
/* 023997FC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 02399800 */ cpu->f[7] = -cpu->f[8];
|
|
/* 02399804 */ _t48 = cpu->r[1] + 0x00000058u;
|
|
/* 02399804 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 02399808 */ _t49 = cpu->r[1] + 0x00000030u;
|
|
/* 02399808 */ rbrew_write_f32(cpu->mem, _t49, cpu->f[9]);
|
|
/* 0239980C */ cpu->f[12] = -cpu->f[8];
|
|
/* 02399810 */ _t50 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02399810 */ rbrew_write_f32(cpu->mem, _t50, cpu->f[7]);
|
|
/* 02399814 */ _t51 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02399814 */ cpu->r[12] = rbrew_read32(cpu->mem, _t51);
|
|
/* 02399818 */ _t52 = cpu->r[1] + 0x00000034u;
|
|
/* 02399818 */ rbrew_write_f32(cpu->mem, _t52, cpu->f[12]);
|
|
/* 0239981C */ _t53 = cpu->r[1] + 0x00000034u;
|
|
/* 0239981C */ cpu->r[0] = rbrew_read32(cpu->mem, _t53);
|
|
/* 02399820 */ _t54 = cpu->r[1] + 0x00000080u;
|
|
/* 02399820 */ rbrew_write32(cpu->mem, _t54, cpu->r[12]);
|
|
/* 02399824 */ _t55 = cpu->r[1] + 0x00000088u;
|
|
/* 02399824 */ rbrew_write32(cpu->mem, _t55, cpu->r[0]);
|
|
/* 02399828 */ _t56 = cpu->r[1] + 0x00000088u;
|
|
/* 02399828 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 0239982C */ _t57 = cpu->r[1] + 0x00000030u;
|
|
/* 0239982C */ cpu->r[0] = rbrew_read32(cpu->mem, _t57);
|
|
/* 02399830 */ cpu->f[12] = cpu->f[29] * cpu->f[29];
|
|
/* 02399834 */ _t58 = cpu->r[1] + 0x00000080u;
|
|
/* 02399834 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 02399838 */ _t59 = cpu->r[1] + 0x00000010u;
|
|
/* 02399838 */ rbrew_write_f32(cpu->mem, _t59, cpu->f[29]);
|
|
/* 0239983C */ cpu->f[7] = fma(cpu->f[9], cpu->f[9], cpu->f[12]);
|
|
/* 02399840 */ _t60 = cpu->r[1] + 0x00000084u;
|
|
/* 02399840 */ rbrew_write32(cpu->mem, _t60, cpu->r[0]);
|
|
/* 02399844 */ _t61 = cpu->r[1] + 0x00000008u;
|
|
/* 02399844 */ rbrew_write_f32(cpu->mem, _t61, cpu->f[9]);
|
|
/* 02399848 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[7], cpu->f[13]);
|
|
/* 0239984C */ _t62 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239984C */ rbrew_write_f32(cpu->mem, _t62, cpu->f[13]);
|
|
/* 02399850 */ _t63 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02399850 */ _t64 = _t63 & 0x00000001u;
|
|
/* 02399850 */ if (_t64) goto L_02399854; else goto L_023999B0;
|
|
L_02399854: ; // 0x2399854
|
|
/* 02399854 */ goto L_023999E0;
|
|
L_02399858: ; // 0x2399858
|
|
/* 02399858 */ _t65 = cpu->r[1] + 0x00000050u;
|
|
/* 02399858 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t65);
|
|
/* 0239985C */ cpu->r[12] = 0x10080000u;
|
|
/* 02399860 */ _t66 = cpu->r[1] + 0x00000054u;
|
|
/* 02399860 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t66);
|
|
/* 02399864 */ cpu->f[7] = -cpu->f[8];
|
|
/* 02399868 */ _t67 = cpu->r[1] + 0x00000058u;
|
|
/* 02399868 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t67);
|
|
/* 0239986C */ _t68 = cpu->r[12] + 0x00006DC0u;
|
|
/* 0239986C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t68);
|
|
/* 02399870 */ cpu->f[12] = -cpu->f[8];
|
|
/* 02399874 */ _t69 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02399874 */ rbrew_write_f32(cpu->mem, _t69, cpu->f[7]);
|
|
/* 02399878 */ _t70 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02399878 */ cpu->r[12] = rbrew_read32(cpu->mem, _t70);
|
|
/* 0239987C */ cpu->f[9] = -cpu->f[11];
|
|
/* 02399880 */ _t71 = cpu->r[1] + 0x00000034u;
|
|
/* 02399880 */ rbrew_write_f32(cpu->mem, _t71, cpu->f[12]);
|
|
/* 02399884 */ _t72 = cpu->r[1] + 0x00000034u;
|
|
/* 02399884 */ cpu->r[0] = rbrew_read32(cpu->mem, _t72);
|
|
/* 02399888 */ _t73 = cpu->r[1] + 0x00000030u;
|
|
/* 02399888 */ rbrew_write_f32(cpu->mem, _t73, cpu->f[9]);
|
|
/* 0239988C */ _t74 = cpu->r[1] + 0x00000088u;
|
|
/* 0239988C */ rbrew_write32(cpu->mem, _t74, cpu->r[0]);
|
|
/* 02399890 */ _t75 = cpu->r[1] + 0x00000088u;
|
|
/* 02399890 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t75);
|
|
/* 02399894 */ _t76 = cpu->r[1] + 0x00000080u;
|
|
/* 02399894 */ rbrew_write32(cpu->mem, _t76, cpu->r[12]);
|
|
/* 02399898 */ cpu->f[12] = cpu->f[29] * cpu->f[29];
|
|
/* 0239989C */ _t77 = cpu->r[1] + 0x00000080u;
|
|
/* 0239989C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t77);
|
|
/* 023998A0 */ _t78 = cpu->r[1] + 0x00000030u;
|
|
/* 023998A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t78);
|
|
/* 023998A4 */ cpu->f[7] = fma(cpu->f[9], cpu->f[9], cpu->f[12]);
|
|
/* 023998A8 */ _t79 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023998A8 */ rbrew_write_f32(cpu->mem, _t79, cpu->f[13]);
|
|
/* 023998AC */ cpu->r[7] = 0x10080000u;
|
|
/* 023998B0 */ _t80 = cpu->r[1] + 0x00000008u;
|
|
/* 023998B0 */ rbrew_write_f32(cpu->mem, _t80, cpu->f[9]);
|
|
/* 023998B4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[7], cpu->f[13]);
|
|
/* 023998B8 */ _t81 = cpu->r[7] + 0x00006DC8u;
|
|
/* 023998B8 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t81);
|
|
/* 023998BC */ _t82 = cpu->r[1] + 0x00000084u;
|
|
/* 023998BC */ rbrew_write32(cpu->mem, _t82, cpu->r[0]);
|
|
/* 023998C0 */ _t83 = cpu->r[1] + 0x00000010u;
|
|
/* 023998C0 */ rbrew_write_f32(cpu->mem, _t83, cpu->f[29]);
|
|
/* 023998C4 */ _t84 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 023998C4 */ _t85 = _t84 & 0x00000001u;
|
|
/* 023998C4 */ if (_t85) goto L_023998C8; else goto L_023999B0;
|
|
L_023998C8: ; // 0x23998c8
|
|
/* 023998C8 */ goto L_023999E0;
|
|
L_023998CC: ; // 0x23998cc
|
|
/* 023998CC */ _t86 = cpu->r[1] + 0x00000050u;
|
|
/* 023998CC */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t86);
|
|
/* 023998D0 */ cpu->r[12] = 0x10080000u;
|
|
/* 023998D4 */ _t87 = cpu->r[1] + 0x00000054u;
|
|
/* 023998D4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t87);
|
|
/* 023998D8 */ cpu->f[7] = -cpu->f[8];
|
|
/* 023998DC */ _t88 = cpu->r[1] + 0x00000058u;
|
|
/* 023998DC */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t88);
|
|
/* 023998E0 */ _t89 = cpu->r[12] + 0x00006DC0u;
|
|
/* 023998E0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t89);
|
|
/* 023998E4 */ cpu->f[12] = -cpu->f[8];
|
|
/* 023998E8 */ _t90 = cpu->r[1] + 0x0000002Cu;
|
|
/* 023998E8 */ rbrew_write_f32(cpu->mem, _t90, cpu->f[7]);
|
|
/* 023998EC */ _t91 = cpu->r[1] + 0x0000002Cu;
|
|
/* 023998EC */ cpu->r[12] = rbrew_read32(cpu->mem, _t91);
|
|
/* 023998F0 */ cpu->f[9] = -cpu->f[11];
|
|
/* 023998F4 */ _t92 = cpu->r[1] + 0x00000034u;
|
|
/* 023998F4 */ rbrew_write_f32(cpu->mem, _t92, cpu->f[12]);
|
|
/* 023998F8 */ _t93 = cpu->r[1] + 0x00000034u;
|
|
/* 023998F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t93);
|
|
/* 023998FC */ _t94 = cpu->r[1] + 0x00000030u;
|
|
/* 023998FC */ rbrew_write_f32(cpu->mem, _t94, cpu->f[9]);
|
|
/* 02399900 */ _t95 = cpu->r[1] + 0x00000088u;
|
|
/* 02399900 */ rbrew_write32(cpu->mem, _t95, cpu->r[0]);
|
|
/* 02399904 */ _t96 = cpu->r[1] + 0x00000088u;
|
|
/* 02399904 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t96);
|
|
/* 02399908 */ _t97 = cpu->r[1] + 0x00000080u;
|
|
/* 02399908 */ rbrew_write32(cpu->mem, _t97, cpu->r[12]);
|
|
/* 0239990C */ cpu->f[12] = cpu->f[29] * cpu->f[29];
|
|
/* 02399910 */ _t98 = cpu->r[1] + 0x00000080u;
|
|
/* 02399910 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t98);
|
|
/* 02399914 */ _t99 = cpu->r[1] + 0x00000030u;
|
|
/* 02399914 */ cpu->r[0] = rbrew_read32(cpu->mem, _t99);
|
|
/* 02399918 */ cpu->f[7] = fma(cpu->f[9], cpu->f[9], cpu->f[12]);
|
|
/* 0239991C */ _t100 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239991C */ rbrew_write_f32(cpu->mem, _t100, cpu->f[13]);
|
|
/* 02399920 */ cpu->r[8] = 0x10080000u;
|
|
/* 02399924 */ _t101 = cpu->r[1] + 0x00000008u;
|
|
/* 02399924 */ rbrew_write_f32(cpu->mem, _t101, cpu->f[9]);
|
|
/* 02399928 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[7], cpu->f[13]);
|
|
/* 0239992C */ _t102 = cpu->r[8] + 0x00006DCCu;
|
|
/* 0239992C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t102);
|
|
/* 02399930 */ _t103 = cpu->r[1] + 0x00000084u;
|
|
/* 02399930 */ rbrew_write32(cpu->mem, _t103, cpu->r[0]);
|
|
/* 02399934 */ _t104 = cpu->r[1] + 0x00000010u;
|
|
/* 02399934 */ rbrew_write_f32(cpu->mem, _t104, cpu->f[29]);
|
|
/* 02399938 */ _t105 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02399938 */ _t106 = _t105 & 0x00000001u;
|
|
/* 02399938 */ if (_t106) goto L_0239993C; else goto L_023999B0;
|
|
L_0239993C: ; // 0x239993c
|
|
/* 0239993C */ goto L_023999E0;
|
|
L_02399940: ; // 0x2399940
|
|
/* 02399940 */ _t107 = cpu->r[1] + 0x00000050u;
|
|
/* 02399940 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t107);
|
|
/* 02399944 */ cpu->r[12] = 0x10080000u;
|
|
/* 02399948 */ _t108 = cpu->r[1] + 0x00000054u;
|
|
/* 02399948 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t108);
|
|
/* 0239994C */ cpu->f[7] = -cpu->f[8];
|
|
/* 02399950 */ _t109 = cpu->r[1] + 0x00000058u;
|
|
/* 02399950 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t109);
|
|
/* 02399954 */ _t110 = cpu->r[12] + 0x00006DC0u;
|
|
/* 02399954 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t110);
|
|
/* 02399958 */ cpu->f[12] = -cpu->f[8];
|
|
/* 0239995C */ _t111 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0239995C */ rbrew_write_f32(cpu->mem, _t111, cpu->f[7]);
|
|
/* 02399960 */ _t112 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02399960 */ cpu->r[12] = rbrew_read32(cpu->mem, _t112);
|
|
/* 02399964 */ cpu->f[9] = -cpu->f[11];
|
|
/* 02399968 */ _t113 = cpu->r[1] + 0x00000034u;
|
|
/* 02399968 */ rbrew_write_f32(cpu->mem, _t113, cpu->f[12]);
|
|
/* 0239996C */ _t114 = cpu->r[1] + 0x00000034u;
|
|
/* 0239996C */ cpu->r[0] = rbrew_read32(cpu->mem, _t114);
|
|
/* 02399970 */ _t115 = cpu->r[1] + 0x00000030u;
|
|
/* 02399970 */ rbrew_write_f32(cpu->mem, _t115, cpu->f[9]);
|
|
/* 02399974 */ _t116 = cpu->r[1] + 0x00000088u;
|
|
/* 02399974 */ rbrew_write32(cpu->mem, _t116, cpu->r[0]);
|
|
/* 02399978 */ _t117 = cpu->r[1] + 0x00000088u;
|
|
/* 02399978 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t117);
|
|
/* 0239997C */ _t118 = cpu->r[1] + 0x00000080u;
|
|
/* 0239997C */ rbrew_write32(cpu->mem, _t118, cpu->r[12]);
|
|
/* 02399980 */ cpu->f[12] = cpu->f[29] * cpu->f[29];
|
|
/* 02399984 */ _t119 = cpu->r[1] + 0x00000080u;
|
|
/* 02399984 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t119);
|
|
/* 02399988 */ _t120 = cpu->r[1] + 0x00000030u;
|
|
/* 02399988 */ cpu->r[0] = rbrew_read32(cpu->mem, _t120);
|
|
/* 0239998C */ cpu->f[7] = fma(cpu->f[9], cpu->f[9], cpu->f[12]);
|
|
/* 02399990 */ _t121 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02399990 */ rbrew_write_f32(cpu->mem, _t121, cpu->f[13]);
|
|
/* 02399994 */ cpu->r[9] = 0x10080000u;
|
|
/* 02399998 */ _t122 = cpu->r[1] + 0x00000008u;
|
|
/* 02399998 */ rbrew_write_f32(cpu->mem, _t122, cpu->f[9]);
|
|
/* 0239999C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[7], cpu->f[13]);
|
|
/* 023999A0 */ _t123 = cpu->r[9] + 0x00006DD0u;
|
|
/* 023999A0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t123);
|
|
/* 023999A4 */ _t124 = cpu->r[1] + 0x00000084u;
|
|
/* 023999A4 */ rbrew_write32(cpu->mem, _t124, cpu->r[0]);
|
|
/* 023999A8 */ _t125 = cpu->r[1] + 0x00000010u;
|
|
/* 023999A8 */ rbrew_write_f32(cpu->mem, _t125, cpu->f[29]);
|
|
/* 023999AC */ _t126 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 023999AC */ _t127 = _t126 & 0x00000001u;
|
|
/* 023999AC */ if (_t127) goto L_023999E0; else goto L_023999B0;
|
|
L_023999B0: ; // 0x23999b0
|
|
/* 023999B0 */ /* nop */
|
|
/* 023999B4 */ /* nop */
|
|
/* 023999B8 */ _t128 = cpu->r[1] + 0x00000070u;
|
|
/* 023999B8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t128);
|
|
/* 023999BC */ /* nop */
|
|
/* 023999C0 */ /* nop */
|
|
/* 023999C4 */ cpu->f[0] = fma(cpu->f[29], cpu->f[13], cpu->f[11]);
|
|
/* 023999C8 */ cpu->r[9] = 0x10080000u;
|
|
/* 023999CC */ cpu->f[31] = cpu->f[10] * cpu->f[0];
|
|
/* 023999D0 */ _t129 = cpu->r[9] + 0x00006DC4u;
|
|
/* 023999D0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t129);
|
|
/* 023999D4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[31], cpu->f[12]);
|
|
/* 023999D8 */ _t130 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 023999D8 */ _t131 = _t130 & 0x00000001u;
|
|
/* 023999D8 */ if (_t131) goto L_02399A40; else goto L_023999DC;
|
|
L_023999DC: ; // 0x23999dc
|
|
/* 023999DC */ goto L_02399A44;
|
|
L_023999E0: ; // 0x23999e0
|
|
/* 023999E0 */ cpu->r[12] = 0x10080000u;
|
|
/* 023999E4 */ cpu->r[11] = 0x10080000u;
|
|
/* 023999E8 */ _t132 = cpu->r[12] + 0x00006DD8u;
|
|
/* 023999E8 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t132);
|
|
/* 023999EC */ _t133 = cpu->r[11] + 0x00006DD4u;
|
|
/* 023999EC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t133);
|
|
/* 023999F0 */ _ft134 = sqrt(cpu->f[7]);
|
|
/* 023999F0 */ _ft135 = (double)(int32_t)0x00000001u;
|
|
/* 023999F0 */ cpu->f[8] = _ft135 / _ft134;
|
|
/* 023999F4 */ cpu->f[11] = cpu->f[8] * cpu->f[8];
|
|
/* 023999F8 */ cpu->f[12] = cpu->f[8] * cpu->f[0];
|
|
/* 023999FC */ cpu->f[11] = -fma(cpu->f[11], cpu->f[7], -(cpu->f[9]));
|
|
/* 02399A00 */ cpu->f[8] = cpu->f[11] * cpu->f[12];
|
|
/* 02399A04 */ /* nop */
|
|
/* 02399A08 */ _t136 = cpu->r[1] + 0x00000010u;
|
|
/* 02399A08 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t136);
|
|
/* 02399A0C */ /* nop */
|
|
/* 02399A10 */ /* nop */
|
|
/* 02399A14 */ cpu->f[29] = cpu->f[29] * cpu->f[8];
|
|
/* 02399A18 */ /* nop */
|
|
/* 02399A1C */ _t137 = cpu->r[1] + 0x00000070u;
|
|
/* 02399A1C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t137);
|
|
/* 02399A20 */ /* nop */
|
|
/* 02399A24 */ cpu->f[0] = fma(cpu->f[29], cpu->f[13], cpu->f[11]);
|
|
/* 02399A28 */ cpu->r[9] = 0x10080000u;
|
|
/* 02399A2C */ cpu->f[31] = cpu->f[10] * cpu->f[0];
|
|
/* 02399A30 */ _t138 = cpu->r[9] + 0x00006DC4u;
|
|
/* 02399A30 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t138);
|
|
/* 02399A34 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[31], cpu->f[12]);
|
|
/* 02399A38 */ _t139 = cpu->r[1] + 0x00000010u;
|
|
/* 02399A38 */ rbrew_write_f32(cpu->mem, _t139, cpu->f[29]);
|
|
/* 02399A3C */ _t140 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02399A3C */ _t141 = _t140 & 0x00000001u;
|
|
/* 02399A3C */ if (_t141) goto L_02399A40; else goto L_02399A44;
|
|
L_02399A40: ; // 0x2399a40
|
|
/* 02399A40 */ cpu->f[31] = cpu->f[12];
|
|
L_02399A44: ; // 0x2399a44
|
|
/* 02399A44 */ cpu->r[12] = 0x10080000u;
|
|
/* 02399A48 */ _t142 = cpu->r[12] + 0x00006DDCu;
|
|
/* 02399A48 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t142);
|
|
/* 02399A4C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[1]);
|
|
/* 02399A50 */ _t143 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02399A50 */ _t144 = _t143 & 0x00000001u;
|
|
/* 02399A50 */ if (_t144) goto L_02399A54; else goto L_02399A58;
|
|
L_02399A54: ; // 0x2399a54
|
|
/* 02399A54 */ cpu->f[1] = cpu->f[11];
|
|
L_02399A58: ; // 0x2399a58
|
|
/* 02399A58 */ cpu->f[2] = cpu->f[1] / cpu->f[11];
|
|
/* 02399A5C */ cpu->r[10] = 0x10080000u;
|
|
/* 02399A60 */ _t145 = cpu->r[10] + 0x00006DE0u;
|
|
/* 02399A60 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t145);
|
|
/* 02399A64 */ Gambit_fn_0204EA50(cpu);
|
|
/* 02399A68 */ /* nop */
|
|
/* 02399A6C */ /* nop */
|
|
/* 02399A70 */ _t146 = cpu->r[1] + 0x00000038u;
|
|
/* 02399A70 */ cpu->r[9] = rbrew_read32(cpu->mem, _t146);
|
|
/* 02399A74 */ _t147 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02399A74 */ cpu->r[0] = rbrew_read32(cpu->mem, _t147);
|
|
/* 02399A78 */ cpu->f[13] = cpu->f[29] * cpu->f[31];
|
|
/* 02399A7C */ _t148 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02399A7C */ rbrew_write32(cpu->mem, _t148, cpu->r[9]);
|
|
/* 02399A80 */ _t149 = cpu->r[1] + 0x00000060u;
|
|
/* 02399A80 */ rbrew_write32(cpu->mem, _t149, cpu->r[0]);
|
|
/* 02399A84 */ /* nop */
|
|
/* 02399A88 */ _t150 = cpu->r[1] + 0x00000040u;
|
|
/* 02399A88 */ rbrew_write_f32(cpu->mem, _t150, cpu->f[13]);
|
|
/* 02399A8C */ _t151 = cpu->r[1] + 0x00000040u;
|
|
/* 02399A8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t151);
|
|
/* 02399A90 */ /* nop */
|
|
/* 02399A94 */ _t152 = cpu->r[31] + 0x00000014u;
|
|
/* 02399A94 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t152);
|
|
/* 02399A98 */ /* nop */
|
|
/* 02399A9C */ _t153 = cpu->r[1] + 0x00000048u;
|
|
/* 02399A9C */ cpu->r[8] = rbrew_read32(cpu->mem, _t153);
|
|
/* 02399AA0 */ _t154 = cpu->r[1] + 0x00000064u;
|
|
/* 02399AA0 */ rbrew_write32(cpu->mem, _t154, cpu->r[0]);
|
|
/* 02399AA4 */ _t155 = cpu->r[1] + 0x00000064u;
|
|
/* 02399AA4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t155);
|
|
/* 02399AA8 */ _t156 = cpu->r[1] + 0x00000044u;
|
|
/* 02399AA8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t156);
|
|
/* 02399AAC */ cpu->f[10] = cpu->f[11] * cpu->f[1];
|
|
/* 02399AB0 */ /* nop */
|
|
/* 02399AB4 */ _t157 = cpu->r[1] + 0x00000074u;
|
|
/* 02399AB4 */ rbrew_write32(cpu->mem, _t157, cpu->r[7]);
|
|
/* 02399AB8 */ _t158 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02399AB8 */ rbrew_write_f32(cpu->mem, _t158, cpu->f[10]);
|
|
/* 02399ABC */ _t159 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02399ABC */ cpu->r[0] = rbrew_read32(cpu->mem, _t159);
|
|
/* 02399AC0 */ _t160 = cpu->r[1] + 0x00000078u;
|
|
/* 02399AC0 */ rbrew_write32(cpu->mem, _t160, cpu->r[8]);
|
|
/* 02399AC4 */ _t161 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02399AC4 */ rbrew_write32(cpu->mem, _t161, cpu->r[0]);
|
|
/* 02399AC8 */ _t162 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02399AC8 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t162);
|
|
/* 02399ACC */ /* nop */
|
|
/* 02399AD0 */ cpu->f[7] = cpu->f[7] + cpu->f[8];
|
|
/* 02399AD4 */ /* nop */
|
|
/* 02399AD8 */ /* nop */
|
|
/* 02399ADC */ _t163 = cpu->r[31] + 0x00000014u;
|
|
/* 02399ADC */ rbrew_write_f32(cpu->mem, _t163, cpu->f[7]);
|
|
/* 02399AE0 */ _t164 = cpu->r[1] + 0x000000A8u;
|
|
/* 02399AE0 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t164);
|
|
/* 02399AE4 */ _t165 = cpu->r[1] + 0x000000C8u;
|
|
/* 02399AE4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t165);
|
|
/* 02399AE8 */ _t166 = cpu->r[1] + 0x000000A0u;
|
|
/* 02399AE8 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t166);
|
|
/* 02399AEC */ _t167 = cpu->r[1] + 0x000000B8u;
|
|
/* 02399AEC */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t167);
|
|
/* 02399AF0 */ _t168 = cpu->r[1] + 0x000000C0u;
|
|
/* 02399AF0 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t168);
|
|
/* 02399AF4 */ _t169 = cpu->r[1] + 0x000000B0u;
|
|
/* 02399AF4 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t169);
|
|
/* 02399AF8 */ _t170 = cpu->r[1] + 0x0000009Cu;
|
|
/* 02399AF8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t170);
|
|
/* 02399AFC */ _t171 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02399AFC */ _t172 = _t171 & 0x00000001u;
|
|
/* 02399AFC */ if (_t172) goto L_02399B00; // else: addr-0 trap, fall-through
|
|
L_02399B00: ; // 0x2399b00
|
|
/* 02399B00 */ _t173 = cpu->r[1] + 0x000000D4u;
|
|
/* 02399B00 */ cpu->r[0] = rbrew_read32(cpu->mem, _t173);
|
|
/* 02399B04 */ cpu->lr = cpu->r[0];
|
|
/* 02399B08 */ cpu->r[1] = cpu->r[1] + 0x000000D0u;
|
|
/* 02399B0C */ return;
|
|
}
|
|
|
|
// fn_02399B10 @ 0x2399b10
|
|
void Gambit_fn_02399B10(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02399B10: ; // 0x2399b10
|
|
/* 02399B10 */ cpu->r[0] = cpu->lr;
|
|
/* 02399B14 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 02399B14 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 02399B18 */ cpu->r[3] = cpu->r[3] + 0x00000018u;
|
|
/* 02399B1C */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 02399B1C */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 02399B1C */ cpu->r[1] = _t1;
|
|
/* 02399B20 */ Gambit_fn_02C69350(cpu);
|
|
/* 02399B24 */ cpu->r[12] = 0x10080000u;
|
|
/* 02399B28 */ _t2 = cpu->r[12] + 0x00006DC4u;
|
|
/* 02399B28 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 02399B2C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[0]);
|
|
/* 02399B30 */ _t3 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02399B30 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02399B30 */ if (_t4) goto L_02399B34; else goto L_02399B38;
|
|
L_02399B34: ; // 0x2399b34
|
|
/* 02399B34 */ cpu->f[1] = cpu->f[0];
|
|
L_02399B38: ; // 0x2399b38
|
|
/* 02399B38 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02399B38 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02399B3C */ cpu->lr = cpu->r[0];
|
|
/* 02399B40 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 02399B44 */ return;
|
|
}
|
|
|
|
// fn_02399B1C @ 0x2399b1c
|
|
void Gambit_fn_02399B1C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_02399B1C: ; // 0x2399b1c
|
|
/* 02399B1C */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 02399B1C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02399B1C */ cpu->r[1] = _t0;
|
|
/* 02399B20 */ Gambit_fn_02C69350(cpu);
|
|
/* 02399B24 */ cpu->r[12] = 0x10080000u;
|
|
/* 02399B28 */ _t1 = cpu->r[12] + 0x00006DC4u;
|
|
/* 02399B28 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 02399B2C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[0]);
|
|
/* 02399B30 */ _t2 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02399B30 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02399B30 */ if (_t3) goto L_02399B34; else goto L_02399B38;
|
|
L_02399B34: ; // 0x2399b34
|
|
/* 02399B34 */ cpu->f[1] = cpu->f[0];
|
|
L_02399B38: ; // 0x2399b38
|
|
/* 02399B38 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02399B38 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02399B3C */ cpu->lr = cpu->r[0];
|
|
/* 02399B40 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 02399B44 */ return;
|
|
}
|
|
|
|
// fn_02399B48 @ 0x2399b48
|
|
void Gambit_fn_02399B48(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _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_02399B48: ; // 0x2399b48
|
|
/* 02399B48 */ cpu->r[0] = cpu->lr;
|
|
/* 02399B4C */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 02399B4C */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 02399B50 */ _t1 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 02399B50 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 02399B50 */ cpu->r[1] = _t1;
|
|
/* 02399B54 */ _t2 = cpu->r[3] + 0x00000008u;
|
|
/* 02399B54 */ cpu->r[8] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02399B58 */ _t3 = cpu->r[8] + 0x00000000u;
|
|
/* 02399B58 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 02399B5C */ _t4 = cpu->r[1] + 0x00000008u;
|
|
/* 02399B5C */ rbrew_write_f32(cpu->mem, _t4, cpu->f[13]);
|
|
/* 02399B60 */ _t5 = cpu->r[8] + 0x00000004u;
|
|
/* 02399B60 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 02399B64 */ _t6 = cpu->r[3] + 0x00000018u;
|
|
/* 02399B64 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 02399B68 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02399B68 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[8]);
|
|
/* 02399B6C */ _t8 = cpu->r[8] + 0x00000008u;
|
|
/* 02399B6C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 02399B70 */ _t9 = cpu->r[3] + 0x0000001Cu;
|
|
/* 02399B70 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 02399B74 */ cpu->f[8] = cpu->f[8] * cpu->f[9];
|
|
/* 02399B78 */ _t10 = cpu->r[1] + 0x00000010u;
|
|
/* 02399B78 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[8]);
|
|
/* 02399B7C */ _t11 = cpu->r[8] + 0x00000014u;
|
|
/* 02399B7C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 02399B80 */ /* nop */
|
|
/* 02399B84 */ cpu->f[8] = fma(cpu->f[11], cpu->f[13], cpu->f[8]);
|
|
/* 02399B88 */ /* nop */
|
|
/* 02399B8C */ /* nop */
|
|
/* 02399B90 */ _t12 = cpu->r[1] + 0x00000010u;
|
|
/* 02399B90 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[8]);
|
|
/* 02399B94 */ /* nop */
|
|
/* 02399B98 */ /* nop */
|
|
/* 02399B9C */ _t13 = cpu->r[3] + 0x00000020u;
|
|
/* 02399B9C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 02399BA0 */ /* nop */
|
|
/* 02399BA4 */ /* nop */
|
|
/* 02399BA8 */ _t14 = cpu->r[8] + 0x00000020u;
|
|
/* 02399BA8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 02399BAC */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02399BAC */ cpu->r[10] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02399BB0 */ cpu->f[0] = fma(cpu->f[0], cpu->f[13], cpu->f[8]);
|
|
/* 02399BB4 */ _t16 = cpu->r[1] + 0x00000008u;
|
|
/* 02399BB4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02399BB8 */ _t17 = cpu->r[1] + 0x00000018u;
|
|
/* 02399BB8 */ rbrew_write32(cpu->mem, _t17, cpu->r[10]);
|
|
/* 02399BBC */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 02399BC0 */ _t18 = cpu->r[1] + 0x00000010u;
|
|
/* 02399BC0 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[0]);
|
|
/* 02399BC4 */ _t19 = cpu->r[1] + 0x00000010u;
|
|
/* 02399BC4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02399BC8 */ cpu->r[5] = cpu->r[8] + 0x0000000Cu;
|
|
/* 02399BCC */ _t20 = cpu->r[1] + 0x00000014u;
|
|
/* 02399BCC */ rbrew_write32(cpu->mem, _t20, cpu->r[9]);
|
|
/* 02399BD0 */ cpu->r[3] = cpu->r[8] + 0x00000018u;
|
|
/* 02399BD4 */ _t21 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02399BD4 */ rbrew_write32(cpu->mem, _t21, cpu->r[0]);
|
|
/* 02399BD8 */ Gambit_fn_0204F0A0(cpu);
|
|
/* 02399BDC */ cpu->r[12] = 0x10080000u;
|
|
/* 02399BE0 */ _t22 = cpu->r[12] + 0x00006DC0u;
|
|
/* 02399BE0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 02399BE4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[13]);
|
|
/* 02399BE8 */ _t23 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02399BE8 */ _t24 = _t23 & 0x00000001u;
|
|
/* 02399BE8 */ if (_t24) goto L_02399BEC; else goto L_02399BF8;
|
|
L_02399BEC: ; // 0x2399bec
|
|
/* 02399BEC */ cpu->r[11] = 0x10080000u;
|
|
/* 02399BF0 */ _t25 = cpu->r[11] + 0x00006DE4u;
|
|
/* 02399BF0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 02399BF4 */ cpu->f[1] = cpu->f[1] + cpu->f[0];
|
|
L_02399BF8: ; // 0x2399bf8
|
|
/* 02399BF8 */ _t26 = cpu->r[1] + 0x00000024u;
|
|
/* 02399BF8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02399BFC */ cpu->lr = cpu->r[0];
|
|
/* 02399C00 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 02399C04 */ return;
|
|
}
|
|
|
|
// fn_02399B50 @ 0x2399b50
|
|
void Gambit_fn_02399B50(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _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_02399B50: ; // 0x2399b50
|
|
/* 02399B50 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 02399B50 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02399B50 */ cpu->r[1] = _t0;
|
|
/* 02399B54 */ _t1 = cpu->r[3] + 0x00000008u;
|
|
/* 02399B54 */ cpu->r[8] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02399B58 */ _t2 = cpu->r[8] + 0x00000000u;
|
|
/* 02399B58 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 02399B5C */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 02399B5C */ rbrew_write_f32(cpu->mem, _t3, cpu->f[13]);
|
|
/* 02399B60 */ _t4 = cpu->r[8] + 0x00000004u;
|
|
/* 02399B60 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 02399B64 */ _t5 = cpu->r[3] + 0x00000018u;
|
|
/* 02399B64 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 02399B68 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02399B68 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[8]);
|
|
/* 02399B6C */ _t7 = cpu->r[8] + 0x00000008u;
|
|
/* 02399B6C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 02399B70 */ _t8 = cpu->r[3] + 0x0000001Cu;
|
|
/* 02399B70 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 02399B74 */ cpu->f[8] = cpu->f[8] * cpu->f[9];
|
|
/* 02399B78 */ _t9 = cpu->r[1] + 0x00000010u;
|
|
/* 02399B78 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[8]);
|
|
/* 02399B7C */ _t10 = cpu->r[8] + 0x00000014u;
|
|
/* 02399B7C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 02399B80 */ /* nop */
|
|
/* 02399B84 */ cpu->f[8] = fma(cpu->f[11], cpu->f[13], cpu->f[8]);
|
|
/* 02399B88 */ /* nop */
|
|
/* 02399B8C */ /* nop */
|
|
/* 02399B90 */ _t11 = cpu->r[1] + 0x00000010u;
|
|
/* 02399B90 */ rbrew_write_f32(cpu->mem, _t11, cpu->f[8]);
|
|
/* 02399B94 */ /* nop */
|
|
/* 02399B98 */ /* nop */
|
|
/* 02399B9C */ _t12 = cpu->r[3] + 0x00000020u;
|
|
/* 02399B9C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 02399BA0 */ /* nop */
|
|
/* 02399BA4 */ /* nop */
|
|
/* 02399BA8 */ _t13 = cpu->r[8] + 0x00000020u;
|
|
/* 02399BA8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 02399BAC */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02399BAC */ cpu->r[10] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02399BB0 */ cpu->f[0] = fma(cpu->f[0], cpu->f[13], cpu->f[8]);
|
|
/* 02399BB4 */ _t15 = cpu->r[1] + 0x00000008u;
|
|
/* 02399BB4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02399BB8 */ _t16 = cpu->r[1] + 0x00000018u;
|
|
/* 02399BB8 */ rbrew_write32(cpu->mem, _t16, cpu->r[10]);
|
|
/* 02399BBC */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 02399BC0 */ _t17 = cpu->r[1] + 0x00000010u;
|
|
/* 02399BC0 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[0]);
|
|
/* 02399BC4 */ _t18 = cpu->r[1] + 0x00000010u;
|
|
/* 02399BC4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02399BC8 */ cpu->r[5] = cpu->r[8] + 0x0000000Cu;
|
|
/* 02399BCC */ _t19 = cpu->r[1] + 0x00000014u;
|
|
/* 02399BCC */ rbrew_write32(cpu->mem, _t19, cpu->r[9]);
|
|
/* 02399BD0 */ cpu->r[3] = cpu->r[8] + 0x00000018u;
|
|
/* 02399BD4 */ _t20 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02399BD4 */ rbrew_write32(cpu->mem, _t20, cpu->r[0]);
|
|
/* 02399BD8 */ Gambit_fn_0204F0A0(cpu);
|
|
/* 02399BDC */ cpu->r[12] = 0x10080000u;
|
|
/* 02399BE0 */ _t21 = cpu->r[12] + 0x00006DC0u;
|
|
/* 02399BE0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 02399BE4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[13]);
|
|
/* 02399BE8 */ _t22 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02399BE8 */ _t23 = _t22 & 0x00000001u;
|
|
/* 02399BE8 */ if (_t23) goto L_02399BEC; else goto L_02399BF8;
|
|
L_02399BEC: ; // 0x2399bec
|
|
/* 02399BEC */ cpu->r[11] = 0x10080000u;
|
|
/* 02399BF0 */ _t24 = cpu->r[11] + 0x00006DE4u;
|
|
/* 02399BF0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 02399BF4 */ cpu->f[1] = cpu->f[1] + cpu->f[0];
|
|
L_02399BF8: ; // 0x2399bf8
|
|
/* 02399BF8 */ _t25 = cpu->r[1] + 0x00000024u;
|
|
/* 02399BF8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02399BFC */ cpu->lr = cpu->r[0];
|
|
/* 02399C00 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 02399C04 */ return;
|
|
}
|
|
|
|
// fn_02399C08 @ 0x2399c08
|
|
void Gambit_fn_02399C08(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_02399C08: ; // 0x2399c08
|
|
/* 02399C08 */ cpu->r[0] = cpu->lr;
|
|
/* 02399C0C */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 02399C0C */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 02399C10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02399C14 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 02399C14 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 02399C14 */ cpu->r[1] = _t1;
|
|
/* 02399C18 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02399C18 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02399C18 */ if (_t3) goto L_02399C1C; else goto L_02399C2C;
|
|
L_02399C1C: ; // 0x2399c1c
|
|
/* 02399C1C */ cpu->r[3] = 0x00000004u;
|
|
/* 02399C20 */ Gambit_fn_02801A78(cpu);
|
|
/* 02399C24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02399C28 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02399C28 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02399C28 */ if (_t5) goto L_02399C34; else goto L_02399C2C;
|
|
L_02399C2C: ; // 0x2399c2c
|
|
/* 02399C2C */ cpu->r[0] = 0x00000000u;
|
|
/* 02399C30 */ _t6 = cpu->r[3] + 0x00000000u;
|
|
/* 02399C30 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
L_02399C34: ; // 0x2399c34
|
|
/* 02399C34 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02399C34 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02399C38 */ cpu->lr = cpu->r[0];
|
|
/* 02399C3C */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 02399C40 */ return;
|
|
}
|
|
|
|
// fn_02399C14 @ 0x2399c14
|
|
void Gambit_fn_02399C14(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_02399C14: ; // 0x2399c14
|
|
/* 02399C14 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 02399C14 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02399C14 */ cpu->r[1] = _t0;
|
|
/* 02399C18 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02399C18 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02399C18 */ if (_t2) goto L_02399C1C; else goto L_02399C2C;
|
|
L_02399C1C: ; // 0x2399c1c
|
|
/* 02399C1C */ cpu->r[3] = 0x00000004u;
|
|
/* 02399C20 */ Gambit_fn_02801A78(cpu);
|
|
/* 02399C24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02399C28 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02399C28 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02399C28 */ if (_t4) goto L_02399C34; else goto L_02399C2C;
|
|
L_02399C2C: ; // 0x2399c2c
|
|
/* 02399C2C */ cpu->r[0] = 0x00000000u;
|
|
/* 02399C30 */ _t5 = cpu->r[3] + 0x00000000u;
|
|
/* 02399C30 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
L_02399C34: ; // 0x2399c34
|
|
/* 02399C34 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02399C34 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02399C38 */ cpu->lr = cpu->r[0];
|
|
/* 02399C3C */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 02399C40 */ return;
|
|
}
|
|
|
|
// fn_02399C44 @ 0x2399c44
|
|
void Gambit_fn_02399C44(CPUState* cpu) {
|
|
uint32_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_02399C44: ; // 0x2399c44
|
|
/* 02399C44 */ cpu->r[0] = cpu->lr;
|
|
/* 02399C48 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02399C48 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02399C48 */ cpu->r[1] = _t0;
|
|
/* 02399C4C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02399C4C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02399C50 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02399C50 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02399C54 */ cpu->r[31] = cpu->r[3];
|
|
/* 02399C54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02399C58 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02399C58 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02399C5C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02399C5C */ _t5 = _t4 & 0x00000001u;
|
|
/* 02399C5C */ if (_t5) goto L_02399C60; else goto L_02399C70;
|
|
L_02399C60: ; // 0x2399c60
|
|
/* 02399C60 */ cpu->r[3] = 0x000000A0u;
|
|
/* 02399C64 */ Gambit_fn_02801A78(cpu);
|
|
/* 02399C68 */ cpu->r[31] = cpu->r[3];
|
|
/* 02399C68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02399C6C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02399C6C */ _t7 = _t6 & 0x00000001u;
|
|
/* 02399C6C */ if (_t7) goto L_02399CCC; else goto L_02399C70;
|
|
L_02399C70: ; // 0x2399c70
|
|
/* 02399C70 */ cpu->r[10] = 0x10080000u;
|
|
/* 02399C74 */ cpu->r[10] = cpu->r[10] + 0x00006DF8u;
|
|
/* 02399C78 */ cpu->r[30] = cpu->r[31] + 0x00000010u;
|
|
/* 02399C78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02399C7C */ _t8 = cpu->r[31] + 0x0000009Cu;
|
|
/* 02399C7C */ rbrew_write32(cpu->mem, _t8, cpu->r[10]);
|
|
/* 02399C80 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02399C80 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02399C80 */ if (_t10) goto L_02399C84; else goto L_02399C94;
|
|
L_02399C84: ; // 0x2399c84
|
|
/* 02399C84 */ cpu->r[3] = 0x0000008Cu;
|
|
/* 02399C88 */ Gambit_fn_02801A78(cpu);
|
|
/* 02399C8C */ cpu->r[30] = cpu->r[3];
|
|
/* 02399C8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02399C90 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02399C90 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02399C90 */ if (_t12) goto L_02399CCC; else goto L_02399C94;
|
|
L_02399C94: ; // 0x2399c94
|
|
/* 02399C94 */ cpu->r[3] = cpu->r[30];
|
|
/* 02399C94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02399C98 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02399C98 */ _t14 = _t13 & 0x00000001u;
|
|
/* 02399C98 */ if (_t14) goto L_02399C9C; else goto L_02399CAC;
|
|
L_02399C9C: ; // 0x2399c9c
|
|
/* 02399C9C */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02399CA0 */ Gambit_fn_02801A78(cpu);
|
|
/* 02399CA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02399CA8 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02399CA8 */ _t16 = _t15 & 0x00000001u;
|
|
/* 02399CA8 */ if (_t16) goto L_02399CBC; else goto L_02399CAC;
|
|
L_02399CAC: ; // 0x2399cac
|
|
/* 02399CAC */ cpu->r[11] = 0x00000000u;
|
|
/* 02399CB0 */ _t17 = cpu->r[3] + 0x00000000u;
|
|
/* 02399CB0 */ rbrew_write32(cpu->mem, _t17, cpu->r[11]);
|
|
/* 02399CB4 */ _t18 = cpu->r[3] + 0x00000008u;
|
|
/* 02399CB4 */ rbrew_write32(cpu->mem, _t18, cpu->r[11]);
|
|
/* 02399CB8 */ _t19 = cpu->r[3] + 0x00000004u;
|
|
/* 02399CB8 */ rbrew_write32(cpu->mem, _t19, cpu->r[11]);
|
|
L_02399CBC: ; // 0x2399cbc
|
|
/* 02399CBC */ cpu->r[4] = 0x00000020u;
|
|
/* 02399CC0 */ cpu->r[5] = cpu->r[30] + 0x0000000Cu;
|
|
/* 02399CC4 */ cpu->r[3] = cpu->r[30];
|
|
/* 02399CC8 */ Gambit_fn_028023A8(cpu);
|
|
L_02399CCC: ; // 0x2399ccc
|
|
/* 02399CCC */ _t20 = cpu->r[1] + 0x00000014u;
|
|
/* 02399CCC */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02399CD0 */ cpu->r[3] = cpu->r[31];
|
|
/* 02399CD4 */ _t21 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02399CD4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02399CD8 */ cpu->lr = cpu->r[0];
|
|
/* 02399CDC */ _t22 = cpu->r[1] + 0x00000008u;
|
|
/* 02399CDC */ cpu->r[30] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02399CE0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02399CE4 */ return;
|
|
}
|
|
|
|
// fn_02399C48 @ 0x2399c48
|
|
void Gambit_fn_02399C48(CPUState* cpu) {
|
|
uint32_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_02399C48: ; // 0x2399c48
|
|
/* 02399C48 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02399C48 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02399C48 */ cpu->r[1] = _t0;
|
|
/* 02399C4C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02399C4C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02399C50 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02399C50 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02399C54 */ cpu->r[31] = cpu->r[3];
|
|
/* 02399C54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02399C58 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02399C58 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02399C5C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02399C5C */ _t5 = _t4 & 0x00000001u;
|
|
/* 02399C5C */ if (_t5) goto L_02399C60; else goto L_02399C70;
|
|
L_02399C60: ; // 0x2399c60
|
|
/* 02399C60 */ cpu->r[3] = 0x000000A0u;
|
|
/* 02399C64 */ Gambit_fn_02801A78(cpu);
|
|
/* 02399C68 */ cpu->r[31] = cpu->r[3];
|
|
/* 02399C68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02399C6C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02399C6C */ _t7 = _t6 & 0x00000001u;
|
|
/* 02399C6C */ if (_t7) goto L_02399CCC; else goto L_02399C70;
|
|
L_02399C70: ; // 0x2399c70
|
|
/* 02399C70 */ cpu->r[10] = 0x10080000u;
|
|
/* 02399C74 */ cpu->r[10] = cpu->r[10] + 0x00006DF8u;
|
|
/* 02399C78 */ cpu->r[30] = cpu->r[31] + 0x00000010u;
|
|
/* 02399C78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02399C7C */ _t8 = cpu->r[31] + 0x0000009Cu;
|
|
/* 02399C7C */ rbrew_write32(cpu->mem, _t8, cpu->r[10]);
|
|
/* 02399C80 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02399C80 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02399C80 */ if (_t10) goto L_02399C84; else goto L_02399C94;
|
|
L_02399C84: ; // 0x2399c84
|
|
/* 02399C84 */ cpu->r[3] = 0x0000008Cu;
|
|
/* 02399C88 */ Gambit_fn_02801A78(cpu);
|
|
/* 02399C8C */ cpu->r[30] = cpu->r[3];
|
|
/* 02399C8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02399C90 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02399C90 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02399C90 */ if (_t12) goto L_02399CCC; else goto L_02399C94;
|
|
L_02399C94: ; // 0x2399c94
|
|
/* 02399C94 */ cpu->r[3] = cpu->r[30];
|
|
/* 02399C94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02399C98 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02399C98 */ _t14 = _t13 & 0x00000001u;
|
|
/* 02399C98 */ if (_t14) goto L_02399C9C; else goto L_02399CAC;
|
|
L_02399C9C: ; // 0x2399c9c
|
|
/* 02399C9C */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02399CA0 */ Gambit_fn_02801A78(cpu);
|
|
/* 02399CA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02399CA8 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02399CA8 */ _t16 = _t15 & 0x00000001u;
|
|
/* 02399CA8 */ if (_t16) goto L_02399CBC; else goto L_02399CAC;
|
|
L_02399CAC: ; // 0x2399cac
|
|
/* 02399CAC */ cpu->r[11] = 0x00000000u;
|
|
/* 02399CB0 */ _t17 = cpu->r[3] + 0x00000000u;
|
|
/* 02399CB0 */ rbrew_write32(cpu->mem, _t17, cpu->r[11]);
|
|
/* 02399CB4 */ _t18 = cpu->r[3] + 0x00000008u;
|
|
/* 02399CB4 */ rbrew_write32(cpu->mem, _t18, cpu->r[11]);
|
|
/* 02399CB8 */ _t19 = cpu->r[3] + 0x00000004u;
|
|
/* 02399CB8 */ rbrew_write32(cpu->mem, _t19, cpu->r[11]);
|
|
L_02399CBC: ; // 0x2399cbc
|
|
/* 02399CBC */ cpu->r[4] = 0x00000020u;
|
|
/* 02399CC0 */ cpu->r[5] = cpu->r[30] + 0x0000000Cu;
|
|
/* 02399CC4 */ cpu->r[3] = cpu->r[30];
|
|
/* 02399CC8 */ Gambit_fn_028023A8(cpu);
|
|
L_02399CCC: ; // 0x2399ccc
|
|
/* 02399CCC */ _t20 = cpu->r[1] + 0x00000014u;
|
|
/* 02399CCC */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02399CD0 */ cpu->r[3] = cpu->r[31];
|
|
/* 02399CD4 */ _t21 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02399CD4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02399CD8 */ cpu->lr = cpu->r[0];
|
|
/* 02399CDC */ _t22 = cpu->r[1] + 0x00000008u;
|
|
/* 02399CDC */ cpu->r[30] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02399CE0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02399CE4 */ return;
|
|
}
|
|
|
|
// fn_02399CE8 @ 0x2399ce8
|
|
void Gambit_fn_02399CE8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_02399CE8: ; // 0x2399ce8
|
|
/* 02399CE8 */ cpu->r[0] = cpu->lr;
|
|
/* 02399CEC */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02399CEC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02399CEC */ cpu->r[1] = _t0;
|
|
/* 02399CF0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02399CF0 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 02399CF4 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 02399CF4 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02399CF8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02399CF8 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 02399CFC */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02399CFC */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02399D00 */ cpu->r[29] = 0x101C0000u;
|
|
/* 02399D04 */ cpu->r[30] = cpu->r[3];
|
|
/* 02399D08 */ _t5 = cpu->r[29] + 0x00005B90u;
|
|
/* 02399D08 */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02399D08 */ cpu->r[29] = _t5;
|
|
/* 02399D0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02399D10 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02399D10 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02399D10 */ if (_t7) goto L_02399D14; else goto L_02399D60;
|
|
L_02399D14: ; // 0x2399d14
|
|
/* 02399D14 */ cpu->r[4] = cpu->r[30];
|
|
/* 02399D18 */ cpu->r[3] = 0x000000A0u;
|
|
/* 02399D1C */ cpu->r[5] = 0x00000004u;
|
|
/* 02399D20 */ Gambit_fn_02801ADC(cpu);
|
|
/* 02399D24 */ cpu->r[31] = cpu->r[3];
|
|
/* 02399D24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02399D28 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02399D28 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02399D28 */ if (_t9) goto L_02399D48; else goto L_02399D2C;
|
|
L_02399D2C: ; // 0x2399d2c
|
|
/* 02399D2C */ cpu->r[5] = 0x00000003u;
|
|
/* 02399D30 */ cpu->r[4] = cpu->r[30];
|
|
/* 02399D34 */ cpu->r[3] = cpu->r[31];
|
|
/* 02399D38 */ Gambit_fn_02821D88(cpu);
|
|
/* 02399D3C */ cpu->r[0] = 0x10080000u;
|
|
/* 02399D40 */ cpu->r[0] = cpu->r[0] + 0x00006DE8u;
|
|
/* 02399D44 */ _t10 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02399D44 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
L_02399D48: ; // 0x2399d48
|
|
/* 02399D48 */ cpu->r[12] = 0x101C0000u;
|
|
/* 02399D4C */ cpu->r[3] = cpu->r[31];
|
|
/* 02399D4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02399D50 */ _t11 = cpu->r[12] + 0x00005B94u;
|
|
/* 02399D50 */ rbrew_write32(cpu->mem, _t11, cpu->r[31]);
|
|
/* 02399D54 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02399D54 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02399D54 */ if (_t13) goto L_02399D5C; else goto L_02399D58;
|
|
L_02399D58: ; // 0x2399d58
|
|
/* 02399D58 */ Gambit_fn_02399C44(cpu);
|
|
L_02399D5C: ; // 0x2399d5c
|
|
/* 02399D5C */ _t14 = cpu->r[29] + 0x00000000u;
|
|
/* 02399D5C */ rbrew_write32(cpu->mem, _t14, cpu->r[3]);
|
|
L_02399D60: ; // 0x2399d60
|
|
/* 02399D60 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02399D60 */ cpu->r[29] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02399D64 */ _t16 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02399D64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02399D68 */ _t17 = cpu->r[1] + 0x00000010u;
|
|
/* 02399D68 */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02399D6C */ cpu->lr = cpu->r[0];
|
|
/* 02399D70 */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02399D70 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02399D74 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02399D78 */ return;
|
|
}
|
|
|
|
// fn_02399CEC @ 0x2399cec
|
|
void Gambit_fn_02399CEC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_02399CEC: ; // 0x2399cec
|
|
/* 02399CEC */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02399CEC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02399CEC */ cpu->r[1] = _t0;
|
|
/* 02399CF0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02399CF0 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 02399CF4 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 02399CF4 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02399CF8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02399CF8 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 02399CFC */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02399CFC */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02399D00 */ cpu->r[29] = 0x101C0000u;
|
|
/* 02399D04 */ cpu->r[30] = cpu->r[3];
|
|
/* 02399D08 */ _t5 = cpu->r[29] + 0x00005B90u;
|
|
/* 02399D08 */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02399D08 */ cpu->r[29] = _t5;
|
|
/* 02399D0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02399D10 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02399D10 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02399D10 */ if (_t7) goto L_02399D14; else goto L_02399D60;
|
|
L_02399D14: ; // 0x2399d14
|
|
/* 02399D14 */ cpu->r[4] = cpu->r[30];
|
|
/* 02399D18 */ cpu->r[3] = 0x000000A0u;
|
|
/* 02399D1C */ cpu->r[5] = 0x00000004u;
|
|
/* 02399D20 */ Gambit_fn_02801ADC(cpu);
|
|
/* 02399D24 */ cpu->r[31] = cpu->r[3];
|
|
/* 02399D24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02399D28 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02399D28 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02399D28 */ if (_t9) goto L_02399D48; else goto L_02399D2C;
|
|
L_02399D2C: ; // 0x2399d2c
|
|
/* 02399D2C */ cpu->r[5] = 0x00000003u;
|
|
/* 02399D30 */ cpu->r[4] = cpu->r[30];
|
|
/* 02399D34 */ cpu->r[3] = cpu->r[31];
|
|
/* 02399D38 */ Gambit_fn_02821D88(cpu);
|
|
/* 02399D3C */ cpu->r[0] = 0x10080000u;
|
|
/* 02399D40 */ cpu->r[0] = cpu->r[0] + 0x00006DE8u;
|
|
/* 02399D44 */ _t10 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02399D44 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
L_02399D48: ; // 0x2399d48
|
|
/* 02399D48 */ cpu->r[12] = 0x101C0000u;
|
|
/* 02399D4C */ cpu->r[3] = cpu->r[31];
|
|
/* 02399D4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02399D50 */ _t11 = cpu->r[12] + 0x00005B94u;
|
|
/* 02399D50 */ rbrew_write32(cpu->mem, _t11, cpu->r[31]);
|
|
/* 02399D54 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02399D54 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02399D54 */ if (_t13) goto L_02399D5C; else goto L_02399D58;
|
|
L_02399D58: ; // 0x2399d58
|
|
/* 02399D58 */ Gambit_fn_02399C44(cpu);
|
|
L_02399D5C: ; // 0x2399d5c
|
|
/* 02399D5C */ _t14 = cpu->r[29] + 0x00000000u;
|
|
/* 02399D5C */ rbrew_write32(cpu->mem, _t14, cpu->r[3]);
|
|
L_02399D60: ; // 0x2399d60
|
|
/* 02399D60 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02399D60 */ cpu->r[29] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02399D64 */ _t16 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02399D64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02399D68 */ _t17 = cpu->r[1] + 0x00000010u;
|
|
/* 02399D68 */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02399D6C */ cpu->lr = cpu->r[0];
|
|
/* 02399D70 */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02399D70 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02399D74 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02399D78 */ return;
|
|
}
|
|
|
|
// fn_02399D7C @ 0x2399d7c
|
|
void Gambit_fn_02399D7C(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_02399D7C: ; // 0x2399d7c
|
|
/* 02399D7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02399D80 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02399D80 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02399D80 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02399D80 */ goto L_02399D84;
|
|
L_02399D84: ; // 0x2399d84
|
|
/* 02399D84 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02399D84 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02399D88 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02399D88 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02399D88 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02399D88 */ goto L_02399D8C;
|
|
L_02399D8C: ; // 0x2399d8c
|
|
/* 02399D8C */ 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_02399D90 @ 0x2399d90
|
|
void Gambit_fn_02399D90(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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_02399D90: ; // 0x2399d90
|
|
/* 02399D90 */ cpu->r[0] = cpu->lr;
|
|
/* 02399D94 */ _t0 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 02399D94 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02399D94 */ cpu->r[1] = _t0;
|
|
/* 02399D98 */ _t1 = cpu->r[1] + 0x00000028u;
|
|
/* 02399D98 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 02399D9C */ /* nop */
|
|
/* 02399DA0 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02399DA0 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 02399DA4 */ _t3 = cpu->r[1] + 0x00000018u;
|
|
/* 02399DA4 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[30]);
|
|
/* 02399DA8 */ _t4 = cpu->r[1] + 0x00000008u;
|
|
/* 02399DA8 */ rbrew_write32(cpu->mem, _t4, cpu->r[28]);
|
|
/* 02399DAC */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 02399DAC */ rbrew_write32(cpu->mem, _t5, cpu->r[30]);
|
|
/* 02399DB0 */ _t6 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02399DB0 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02399DB4 */ _t7 = cpu->r[1] + 0x00000030u;
|
|
/* 02399DB4 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[31]);
|
|
/* 02399DB8 */ /* nop */
|
|
/* 02399DBC */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 02399DBC */ rbrew_write32(cpu->mem, _t8, cpu->r[31]);
|
|
/* 02399DC0 */ _t9 = cpu->r[1] + 0x00000020u;
|
|
/* 02399DC0 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[30]);
|
|
/* 02399DC4 */ _t10 = cpu->r[3] + 0x00000010u;
|
|
/* 02399DC4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02399DC8 */ cpu->r[30] = cpu->r[4];
|
|
/* 02399DCC */ _t11 = cpu->r[3] + 0x00000018u;
|
|
/* 02399DCC */ cpu->r[28] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02399DD0 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02399DD4 */ cpu->r[31] = cpu->r[5];
|
|
/* 02399DD8 */ cpu->r[29] = cpu->r[28] + cpu->r[12];
|
|
/* 02399DDC */ cpu->f[30] = cpu->f[2];
|
|
/* 02399DE0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], cpu->r[29]);
|
|
/* 02399DE4 */ cpu->f[31] = cpu->f[1];
|
|
/* 02399DE8 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02399DE8 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02399DE8 */ if (_t13) goto L_02399E60; else goto L_02399DEC;
|
|
L_02399DEC: ; // 0x2399dec
|
|
/* 02399DEC */ _t14 = cpu->r[28] + 0x00000000u;
|
|
/* 02399DEC */ cpu->r[3] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02399DF0 */ _t15 = cpu->r[3] + 0x00000000u;
|
|
/* 02399DF0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02399DF4 */ _t16 = cpu->r[10] + 0x0000000Cu;
|
|
/* 02399DF4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02399DF8 */ cpu->f[2] = cpu->f[30];
|
|
/* 02399DFC */ cpu->ctr = cpu->r[0];
|
|
/* 02399E00 */ cpu->r[5] = cpu->r[31];
|
|
/* 02399E04 */ cpu->f[1] = cpu->f[31];
|
|
/* 02399E08 */ cpu->r[6] = 0x00000000u;
|
|
/* 02399E0C */ cpu->r[4] = cpu->r[30];
|
|
/* 02399E10 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02399E14 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02399E18 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02399E18 */ _t18 = _t17 & 0x00000001u;
|
|
/* 02399E18 */ if (_t18) goto L_02399E54; else goto L_02399E1C;
|
|
L_02399E1C: ; // 0x2399e1c
|
|
/* 02399E1C */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 02399E1C */ cpu->r[28] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02399E20 */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02399E20 */ cpu->r[29] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02399E24 */ _t21 = cpu->r[1] + 0x00000030u;
|
|
/* 02399E24 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 02399E28 */ _t22 = cpu->r[1] + 0x00000020u;
|
|
/* 02399E28 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 02399E2C */ _t23 = cpu->r[1] + 0x00000028u;
|
|
/* 02399E2C */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t23);
|
|
/* 02399E30 */ _t24 = cpu->r[1] + 0x00000018u;
|
|
/* 02399E30 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t24);
|
|
/* 02399E34 */ _t25 = cpu->r[1] + 0x00000014u;
|
|
/* 02399E34 */ cpu->r[31] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02399E38 */ _t26 = cpu->r[1] + 0x00000010u;
|
|
/* 02399E38 */ cpu->r[30] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02399E3C */ cpu->r[3] = 0x00000001u;
|
|
/* 02399E40 */ _t27 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02399E40 */ _t28 = _t27 & 0x00000001u;
|
|
/* 02399E40 */ if (_t28) goto L_02399E44; // else: addr-0 trap, fall-through
|
|
L_02399E44: ; // 0x2399e44
|
|
/* 02399E44 */ _t29 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02399E44 */ cpu->r[0] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02399E48 */ cpu->lr = cpu->r[0];
|
|
/* 02399E4C */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 02399E50 */ return;
|
|
L_02399E54: ; // 0x2399e54
|
|
/* 02399E54 */ cpu->r[28] = cpu->r[28] + 0x00000004u;
|
|
/* 02399E58 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], cpu->r[29]);
|
|
/* 02399E5C */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02399E5C */ _t31 = _t30 & 0x00000001u;
|
|
/* 02399E5C */ if (_t31) goto L_02399E60; else goto L_02399DEC;
|
|
L_02399E60: ; // 0x2399e60
|
|
/* 02399E60 */ _t32 = cpu->r[1] + 0x00000008u;
|
|
/* 02399E60 */ cpu->r[28] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02399E64 */ _t33 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02399E64 */ cpu->r[29] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02399E68 */ _t34 = cpu->r[1] + 0x00000030u;
|
|
/* 02399E68 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 02399E6C */ _t35 = cpu->r[1] + 0x00000020u;
|
|
/* 02399E6C */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 02399E70 */ _t36 = cpu->r[1] + 0x00000028u;
|
|
/* 02399E70 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t36);
|
|
/* 02399E74 */ _t37 = cpu->r[1] + 0x00000018u;
|
|
/* 02399E74 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t37);
|
|
/* 02399E78 */ _t38 = cpu->r[1] + 0x00000014u;
|
|
/* 02399E78 */ cpu->r[31] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02399E7C */ _t39 = cpu->r[1] + 0x00000010u;
|
|
/* 02399E7C */ cpu->r[30] = rbrew_read32(cpu->mem, _t39);
|
|
/* 02399E80 */ cpu->r[3] = 0x00000000u;
|
|
/* 02399E84 */ _t40 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02399E84 */ _t41 = _t40 & 0x00000001u;
|
|
/* 02399E84 */ if (_t41) goto L_02399E88; // else: addr-0 trap, fall-through
|
|
L_02399E88: ; // 0x2399e88
|
|
/* 02399E88 */ _t42 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02399E88 */ cpu->r[0] = rbrew_read32(cpu->mem, _t42);
|
|
/* 02399E8C */ cpu->lr = cpu->r[0];
|
|
/* 02399E90 */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 02399E94 */ return;
|
|
}
|
|
|
|
// fn_02399D94 @ 0x2399d94
|
|
void Gambit_fn_02399D94(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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_02399D94: ; // 0x2399d94
|
|
/* 02399D94 */ _t0 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 02399D94 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02399D94 */ cpu->r[1] = _t0;
|
|
/* 02399D98 */ _t1 = cpu->r[1] + 0x00000028u;
|
|
/* 02399D98 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 02399D9C */ /* nop */
|
|
/* 02399DA0 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02399DA0 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 02399DA4 */ _t3 = cpu->r[1] + 0x00000018u;
|
|
/* 02399DA4 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[30]);
|
|
/* 02399DA8 */ _t4 = cpu->r[1] + 0x00000008u;
|
|
/* 02399DA8 */ rbrew_write32(cpu->mem, _t4, cpu->r[28]);
|
|
/* 02399DAC */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 02399DAC */ rbrew_write32(cpu->mem, _t5, cpu->r[30]);
|
|
/* 02399DB0 */ _t6 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02399DB0 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02399DB4 */ _t7 = cpu->r[1] + 0x00000030u;
|
|
/* 02399DB4 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[31]);
|
|
/* 02399DB8 */ /* nop */
|
|
/* 02399DBC */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 02399DBC */ rbrew_write32(cpu->mem, _t8, cpu->r[31]);
|
|
/* 02399DC0 */ _t9 = cpu->r[1] + 0x00000020u;
|
|
/* 02399DC0 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[30]);
|
|
/* 02399DC4 */ _t10 = cpu->r[3] + 0x00000010u;
|
|
/* 02399DC4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02399DC8 */ cpu->r[30] = cpu->r[4];
|
|
/* 02399DCC */ _t11 = cpu->r[3] + 0x00000018u;
|
|
/* 02399DCC */ cpu->r[28] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02399DD0 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02399DD4 */ cpu->r[31] = cpu->r[5];
|
|
/* 02399DD8 */ cpu->r[29] = cpu->r[28] + cpu->r[12];
|
|
/* 02399DDC */ cpu->f[30] = cpu->f[2];
|
|
/* 02399DE0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], cpu->r[29]);
|
|
/* 02399DE4 */ cpu->f[31] = cpu->f[1];
|
|
/* 02399DE8 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02399DE8 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02399DE8 */ if (_t13) goto L_02399E60; else goto L_02399DEC;
|
|
L_02399DEC: ; // 0x2399dec
|
|
/* 02399DEC */ _t14 = cpu->r[28] + 0x00000000u;
|
|
/* 02399DEC */ cpu->r[3] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02399DF0 */ _t15 = cpu->r[3] + 0x00000000u;
|
|
/* 02399DF0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02399DF4 */ _t16 = cpu->r[10] + 0x0000000Cu;
|
|
/* 02399DF4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02399DF8 */ cpu->f[2] = cpu->f[30];
|
|
/* 02399DFC */ cpu->ctr = cpu->r[0];
|
|
/* 02399E00 */ cpu->r[5] = cpu->r[31];
|
|
/* 02399E04 */ cpu->f[1] = cpu->f[31];
|
|
/* 02399E08 */ cpu->r[6] = 0x00000000u;
|
|
/* 02399E0C */ cpu->r[4] = cpu->r[30];
|
|
/* 02399E10 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02399E14 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02399E18 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02399E18 */ _t18 = _t17 & 0x00000001u;
|
|
/* 02399E18 */ if (_t18) goto L_02399E54; else goto L_02399E1C;
|
|
L_02399E1C: ; // 0x2399e1c
|
|
/* 02399E1C */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 02399E1C */ cpu->r[28] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02399E20 */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02399E20 */ cpu->r[29] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02399E24 */ _t21 = cpu->r[1] + 0x00000030u;
|
|
/* 02399E24 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 02399E28 */ _t22 = cpu->r[1] + 0x00000020u;
|
|
/* 02399E28 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 02399E2C */ _t23 = cpu->r[1] + 0x00000028u;
|
|
/* 02399E2C */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t23);
|
|
/* 02399E30 */ _t24 = cpu->r[1] + 0x00000018u;
|
|
/* 02399E30 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t24);
|
|
/* 02399E34 */ _t25 = cpu->r[1] + 0x00000014u;
|
|
/* 02399E34 */ cpu->r[31] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02399E38 */ _t26 = cpu->r[1] + 0x00000010u;
|
|
/* 02399E38 */ cpu->r[30] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02399E3C */ cpu->r[3] = 0x00000001u;
|
|
/* 02399E40 */ _t27 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02399E40 */ _t28 = _t27 & 0x00000001u;
|
|
/* 02399E40 */ if (_t28) goto L_02399E44; // else: addr-0 trap, fall-through
|
|
L_02399E44: ; // 0x2399e44
|
|
/* 02399E44 */ _t29 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02399E44 */ cpu->r[0] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02399E48 */ cpu->lr = cpu->r[0];
|
|
/* 02399E4C */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 02399E50 */ return;
|
|
L_02399E54: ; // 0x2399e54
|
|
/* 02399E54 */ cpu->r[28] = cpu->r[28] + 0x00000004u;
|
|
/* 02399E58 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], cpu->r[29]);
|
|
/* 02399E5C */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02399E5C */ _t31 = _t30 & 0x00000001u;
|
|
/* 02399E5C */ if (_t31) goto L_02399E60; else goto L_02399DEC;
|
|
L_02399E60: ; // 0x2399e60
|
|
/* 02399E60 */ _t32 = cpu->r[1] + 0x00000008u;
|
|
/* 02399E60 */ cpu->r[28] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02399E64 */ _t33 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02399E64 */ cpu->r[29] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02399E68 */ _t34 = cpu->r[1] + 0x00000030u;
|
|
/* 02399E68 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 02399E6C */ _t35 = cpu->r[1] + 0x00000020u;
|
|
/* 02399E6C */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 02399E70 */ _t36 = cpu->r[1] + 0x00000028u;
|
|
/* 02399E70 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t36);
|
|
/* 02399E74 */ _t37 = cpu->r[1] + 0x00000018u;
|
|
/* 02399E74 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t37);
|
|
/* 02399E78 */ _t38 = cpu->r[1] + 0x00000014u;
|
|
/* 02399E78 */ cpu->r[31] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02399E7C */ _t39 = cpu->r[1] + 0x00000010u;
|
|
/* 02399E7C */ cpu->r[30] = rbrew_read32(cpu->mem, _t39);
|
|
/* 02399E80 */ cpu->r[3] = 0x00000000u;
|
|
/* 02399E84 */ _t40 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02399E84 */ _t41 = _t40 & 0x00000001u;
|
|
/* 02399E84 */ if (_t41) goto L_02399E88; // else: addr-0 trap, fall-through
|
|
L_02399E88: ; // 0x2399e88
|
|
/* 02399E88 */ _t42 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02399E88 */ cpu->r[0] = rbrew_read32(cpu->mem, _t42);
|
|
/* 02399E8C */ cpu->lr = cpu->r[0];
|
|
/* 02399E90 */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 02399E94 */ return;
|
|
}
|
|
|
|
// fn_02399E98 @ 0x2399e98
|
|
void Gambit_fn_02399E98(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_02399E98: ; // 0x2399e98
|
|
/* 02399E98 */ _t0 = cpu->r[3] + 0x00000010u;
|
|
/* 02399E98 */ cpu->r[10] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02399E9C */ _t1 = cpu->r[3] + 0x00000014u;
|
|
/* 02399E9C */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02399EA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], cpu->r[12]);
|
|
/* 02399EA4 */ _t2 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02399EA4 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02399EA4 */ if (_t3) goto L_02399EB0; else goto L_02399EA8;
|
|
L_02399EA8: ; // 0x2399ea8
|
|
/* 02399EA8 */ cpu->r[3] = 0x00000000u;
|
|
/* 02399EAC */ return;
|
|
L_02399EB0: ; // 0x2399eb0
|
|
/* 02399EB0 */ _t4 = cpu->r[3] + 0x00000018u;
|
|
/* 02399EB0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02399EB4 */ cpu->r[12] = rbrew_rlwinm(cpu->r[10], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02399EB8 */ _t5 = cpu->r[12] + cpu->r[0];
|
|
/* 02399EB8 */ rbrew_write32(cpu->mem, _t5, cpu->r[4]);
|
|
/* 02399EBC */ _t6 = cpu->r[3] + 0x00000010u;
|
|
/* 02399EBC */ cpu->r[11] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02399EC0 */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 02399EC4 */ _t7 = cpu->r[3] + 0x00000010u;
|
|
/* 02399EC4 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 02399EC8 */ cpu->r[3] = 0x00000001u;
|
|
/* 02399ECC */ return;
|
|
}
|
|
|
|
// fn_02399ED0 @ 0x2399ed0
|
|
void Gambit_fn_02399ED0(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02399ED0: ; // 0x2399ed0
|
|
/* 02399ED0 */ cpu->r[0] = 0x00000000u;
|
|
/* 02399ED4 */ _t0 = cpu->r[3] + 0x00000010u;
|
|
/* 02399ED4 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 02399ED8 */ return;
|
|
}
|
|
|
|
// fn_02399EDC @ 0x2399edc
|
|
void Gambit_fn_02399EDC(CPUState* cpu) {
|
|
uint32_t _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_02399EDC: ; // 0x2399edc
|
|
/* 02399EDC */ cpu->r[0] = cpu->lr;
|
|
/* 02399EE0 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02399EE0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02399EE0 */ cpu->r[1] = _t0;
|
|
/* 02399EE4 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02399EE4 */ rbrew_write32(cpu->mem, _t1, cpu->r[28]);
|
|
/* 02399EE8 */ cpu->r[28] = cpu->r[4];
|
|
/* 02399EEC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02399EEC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02399EF0 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02399EF0 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 02399EF4 */ cpu->r[31] = cpu->r[3];
|
|
/* 02399EF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02399EF8 */ _t4 = cpu->r[1] + 0x00000010u;
|
|
/* 02399EF8 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 02399EFC */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02399EFC */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02399F00 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02399F00 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02399F00 */ if (_t7) goto L_02399F64; else goto L_02399F04;
|
|
L_02399F04: ; // 0x2399f04
|
|
/* 02399F04 */ cpu->r[6] = 0x10080000u;
|
|
/* 02399F08 */ cpu->r[6] = cpu->r[6] + 0x00006DE8u;
|
|
/* 02399F0C */ cpu->r[12] = 0x101C0000u;
|
|
/* 02399F10 */ _t8 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02399F10 */ rbrew_write32(cpu->mem, _t8, cpu->r[6]);
|
|
/* 02399F14 */ _t9 = cpu->r[12] + 0x00005B94u;
|
|
/* 02399F14 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02399F14 */ cpu->r[12] = _t9;
|
|
/* 02399F18 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]);
|
|
/* 02399F1C */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02399F1C */ _t11 = _t10 & 0x00000001u;
|
|
/* 02399F1C */ if (_t11) goto L_02399F20; else goto L_02399F48;
|
|
L_02399F20: ; // 0x2399f20
|
|
/* 02399F20 */ cpu->r[30] = 0x101C0000u;
|
|
/* 02399F24 */ cpu->r[29] = 0x00000000u;
|
|
/* 02399F28 */ _t12 = cpu->r[30] + 0x00005B90u;
|
|
/* 02399F28 */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02399F2C */ _t13 = cpu->r[12] + 0x00000000u;
|
|
/* 02399F2C */ rbrew_write32(cpu->mem, _t13, cpu->r[29]);
|
|
/* 02399F30 */ _t14 = cpu->r[3] + 0x0000009Cu;
|
|
/* 02399F30 */ cpu->r[8] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02399F34 */ _t15 = cpu->r[8] + 0x0000000Cu;
|
|
/* 02399F34 */ cpu->r[10] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02399F38 */ cpu->ctr = cpu->r[10];
|
|
/* 02399F3C */ cpu->r[4] = 0x00000002u;
|
|
/* 02399F40 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02399F44 */ _t16 = cpu->r[30] + 0x00005B90u;
|
|
/* 02399F44 */ rbrew_write32(cpu->mem, _t16, cpu->r[29]);
|
|
L_02399F48: ; // 0x2399f48
|
|
/* 02399F48 */ cpu->r[3] = cpu->r[31];
|
|
/* 02399F4C */ cpu->r[4] = 0x00000000u;
|
|
/* 02399F50 */ Gambit_fn_02821E68(cpu);
|
|
/* 02399F54 */ cpu->r[0] = rbrew_rlwinm(cpu->r[28], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02399F54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02399F58 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02399F58 */ _t18 = _t17 & 0x00000001u;
|
|
/* 02399F58 */ if (_t18) goto L_02399F64; else goto L_02399F5C;
|
|
L_02399F5C: ; // 0x2399f5c
|
|
/* 02399F5C */ cpu->r[3] = cpu->r[31];
|
|
/* 02399F60 */ Gambit_fn_02801BB0(cpu);
|
|
L_02399F64: ; // 0x2399f64
|
|
/* 02399F64 */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 02399F64 */ cpu->r[28] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02399F68 */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02399F68 */ cpu->r[29] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02399F6C */ _t21 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02399F6C */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02399F70 */ _t22 = cpu->r[1] + 0x00000010u;
|
|
/* 02399F70 */ cpu->r[30] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02399F74 */ cpu->lr = cpu->r[0];
|
|
/* 02399F78 */ _t23 = cpu->r[1] + 0x00000014u;
|
|
/* 02399F78 */ cpu->r[31] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02399F7C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02399F80 */ return;
|
|
}
|
|
|
|
// fn_02399EE0 @ 0x2399ee0
|
|
void Gambit_fn_02399EE0(CPUState* cpu) {
|
|
uint32_t _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_02399EE0: ; // 0x2399ee0
|
|
/* 02399EE0 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02399EE0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02399EE0 */ cpu->r[1] = _t0;
|
|
/* 02399EE4 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02399EE4 */ rbrew_write32(cpu->mem, _t1, cpu->r[28]);
|
|
/* 02399EE8 */ cpu->r[28] = cpu->r[4];
|
|
/* 02399EEC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02399EEC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02399EF0 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02399EF0 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 02399EF4 */ cpu->r[31] = cpu->r[3];
|
|
/* 02399EF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02399EF8 */ _t4 = cpu->r[1] + 0x00000010u;
|
|
/* 02399EF8 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 02399EFC */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02399EFC */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02399F00 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02399F00 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02399F00 */ if (_t7) goto L_02399F64; else goto L_02399F04;
|
|
L_02399F04: ; // 0x2399f04
|
|
/* 02399F04 */ cpu->r[6] = 0x10080000u;
|
|
/* 02399F08 */ cpu->r[6] = cpu->r[6] + 0x00006DE8u;
|
|
/* 02399F0C */ cpu->r[12] = 0x101C0000u;
|
|
/* 02399F10 */ _t8 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02399F10 */ rbrew_write32(cpu->mem, _t8, cpu->r[6]);
|
|
/* 02399F14 */ _t9 = cpu->r[12] + 0x00005B94u;
|
|
/* 02399F14 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02399F14 */ cpu->r[12] = _t9;
|
|
/* 02399F18 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]);
|
|
/* 02399F1C */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02399F1C */ _t11 = _t10 & 0x00000001u;
|
|
/* 02399F1C */ if (_t11) goto L_02399F20; else goto L_02399F48;
|
|
L_02399F20: ; // 0x2399f20
|
|
/* 02399F20 */ cpu->r[30] = 0x101C0000u;
|
|
/* 02399F24 */ cpu->r[29] = 0x00000000u;
|
|
/* 02399F28 */ _t12 = cpu->r[30] + 0x00005B90u;
|
|
/* 02399F28 */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02399F2C */ _t13 = cpu->r[12] + 0x00000000u;
|
|
/* 02399F2C */ rbrew_write32(cpu->mem, _t13, cpu->r[29]);
|
|
/* 02399F30 */ _t14 = cpu->r[3] + 0x0000009Cu;
|
|
/* 02399F30 */ cpu->r[8] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02399F34 */ _t15 = cpu->r[8] + 0x0000000Cu;
|
|
/* 02399F34 */ cpu->r[10] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02399F38 */ cpu->ctr = cpu->r[10];
|
|
/* 02399F3C */ cpu->r[4] = 0x00000002u;
|
|
/* 02399F40 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02399F44 */ _t16 = cpu->r[30] + 0x00005B90u;
|
|
/* 02399F44 */ rbrew_write32(cpu->mem, _t16, cpu->r[29]);
|
|
L_02399F48: ; // 0x2399f48
|
|
/* 02399F48 */ cpu->r[3] = cpu->r[31];
|
|
/* 02399F4C */ cpu->r[4] = 0x00000000u;
|
|
/* 02399F50 */ Gambit_fn_02821E68(cpu);
|
|
/* 02399F54 */ cpu->r[0] = rbrew_rlwinm(cpu->r[28], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02399F54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02399F58 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02399F58 */ _t18 = _t17 & 0x00000001u;
|
|
/* 02399F58 */ if (_t18) goto L_02399F64; else goto L_02399F5C;
|
|
L_02399F5C: ; // 0x2399f5c
|
|
/* 02399F5C */ cpu->r[3] = cpu->r[31];
|
|
/* 02399F60 */ Gambit_fn_02801BB0(cpu);
|
|
L_02399F64: ; // 0x2399f64
|
|
/* 02399F64 */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 02399F64 */ cpu->r[28] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02399F68 */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02399F68 */ cpu->r[29] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02399F6C */ _t21 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02399F6C */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02399F70 */ _t22 = cpu->r[1] + 0x00000010u;
|
|
/* 02399F70 */ cpu->r[30] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02399F74 */ cpu->lr = cpu->r[0];
|
|
/* 02399F78 */ _t23 = cpu->r[1] + 0x00000014u;
|
|
/* 02399F78 */ cpu->r[31] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02399F7C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02399F80 */ return;
|
|
}
|
|
|
|
// fn_02399F84 @ 0x2399f84
|
|
void Gambit_fn_02399F84(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _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_02399F84: ; // 0x2399f84
|
|
/* 02399F84 */ cpu->r[0] = cpu->lr;
|
|
/* 02399F88 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02399F88 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02399F88 */ cpu->r[1] = _t0;
|
|
/* 02399F8C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02399F8C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02399F90 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02399F90 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02399F94 */ cpu->r[31] = cpu->r[3];
|
|
/* 02399F94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02399F98 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02399F98 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02399F9C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02399F9C */ _t5 = _t4 & 0x00000001u;
|
|
/* 02399F9C */ if (_t5) goto L_02399FA0; else goto L_02399FB0;
|
|
L_02399FA0: ; // 0x2399fa0
|
|
/* 02399FA0 */ cpu->r[3] = 0x00000020u;
|
|
/* 02399FA4 */ Gambit_fn_02801A78(cpu);
|
|
/* 02399FA8 */ cpu->r[31] = cpu->r[3];
|
|
/* 02399FA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02399FAC */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02399FAC */ _t7 = _t6 & 0x00000001u;
|
|
/* 02399FAC */ if (_t7) goto L_0239A024; else goto L_02399FB0;
|
|
L_02399FB0: ; // 0x2399fb0
|
|
/* 02399FB0 */ cpu->r[3] = cpu->r[31];
|
|
/* 02399FB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02399FB4 */ cpu->r[30] = 0x00000000u;
|
|
/* 02399FB8 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02399FB8 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02399FB8 */ if (_t9) goto L_02399FBC; else goto L_02399FCC;
|
|
L_02399FBC: ; // 0x2399fbc
|
|
/* 02399FBC */ cpu->r[3] = 0x00000008u;
|
|
/* 02399FC0 */ Gambit_fn_02801A78(cpu);
|
|
/* 02399FC4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02399FC8 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02399FC8 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02399FC8 */ if (_t11) goto L_02399FDC; else goto L_02399FCC;
|
|
L_02399FCC: ; // 0x2399fcc
|
|
/* 02399FCC */ cpu->r[10] = 0x10080000u;
|
|
/* 02399FD0 */ _t12 = cpu->r[3] + 0x00000000u;
|
|
/* 02399FD0 */ rbrew_write32(cpu->mem, _t12, cpu->r[30]);
|
|
/* 02399FD4 */ cpu->r[10] = cpu->r[10] + 0x00006E08u;
|
|
/* 02399FD8 */ _t13 = cpu->r[3] + 0x00000004u;
|
|
/* 02399FD8 */ rbrew_write32(cpu->mem, _t13, cpu->r[10]);
|
|
L_02399FDC: ; // 0x2399fdc
|
|
/* 02399FDC */ cpu->r[0] = 0x10080000u;
|
|
/* 02399FE0 */ _t14 = cpu->r[31] + 0x00000018u;
|
|
/* 02399FE0 */ rbrew_write32(cpu->mem, _t14, cpu->r[30]);
|
|
/* 02399FE4 */ cpu->r[0] = cpu->r[0] + 0x00006E18u;
|
|
/* 02399FE8 */ cpu->r[3] = 0x00000000u;
|
|
/* 02399FEC */ _t15 = cpu->r[31] + 0x00000004u;
|
|
/* 02399FEC */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 02399FF0 */ cpu->r[4] = 0x00000006u;
|
|
/* 02399FF4 */ _t16 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02399FF4 */ rbrew_write8(cpu->mem, _t16, (uint8_t)cpu->r[30]);
|
|
/* 02399FF8 */ Gambit_fn_02419CF4(cpu);
|
|
/* 02399FFC */ cpu->r[12] = 0x101C0000u;
|
|
/* 0239A000 */ _t17 = cpu->r[31] + 0x00000018u;
|
|
/* 0239A000 */ rbrew_write32(cpu->mem, _t17, cpu->r[3]);
|
|
/* 0239A004 */ _t18 = cpu->r[12] + 0x00006000u;
|
|
/* 0239A004 */ cpu->r[12] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0239A008 */ cpu->r[4] = cpu->r[3];
|
|
/* 0239A008 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 0239A00C */ _t19 = cpu->r[12] + 0x00000250u;
|
|
/* 0239A00C */ cpu->r[9] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0239A010 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A010 */ _t21 = _t20 & 0x00000001u;
|
|
/* 0239A010 */ if (_t21) goto L_0239A018; else goto L_0239A014;
|
|
L_0239A014: ; // 0x239a014
|
|
/* 0239A014 */ cpu->r[4] = cpu->r[3] + 0x00000010u;
|
|
L_0239A018: ; // 0x239a018
|
|
/* 0239A018 */ _t22 = cpu->r[9] + 0x00000250u;
|
|
/* 0239A018 */ cpu->r[3] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0239A01C */ cpu->r[5] = 0x00000000u;
|
|
/* 0239A020 */ Gambit_fn_027EFC10(cpu);
|
|
L_0239A024: ; // 0x239a024
|
|
/* 0239A024 */ _t23 = cpu->r[1] + 0x00000014u;
|
|
/* 0239A024 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0239A028 */ cpu->r[3] = cpu->r[31];
|
|
/* 0239A02C */ _t24 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239A02C */ cpu->r[31] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0239A030 */ cpu->lr = cpu->r[0];
|
|
/* 0239A034 */ _t25 = cpu->r[1] + 0x00000008u;
|
|
/* 0239A034 */ cpu->r[30] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0239A038 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0239A03C */ return;
|
|
}
|
|
|
|
// fn_02399F88 @ 0x2399f88
|
|
void Gambit_fn_02399F88(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _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_02399F88: ; // 0x2399f88
|
|
/* 02399F88 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02399F88 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02399F88 */ cpu->r[1] = _t0;
|
|
/* 02399F8C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02399F8C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02399F90 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02399F90 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02399F94 */ cpu->r[31] = cpu->r[3];
|
|
/* 02399F94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02399F98 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02399F98 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02399F9C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02399F9C */ _t5 = _t4 & 0x00000001u;
|
|
/* 02399F9C */ if (_t5) goto L_02399FA0; else goto L_02399FB0;
|
|
L_02399FA0: ; // 0x2399fa0
|
|
/* 02399FA0 */ cpu->r[3] = 0x00000020u;
|
|
/* 02399FA4 */ Gambit_fn_02801A78(cpu);
|
|
/* 02399FA8 */ cpu->r[31] = cpu->r[3];
|
|
/* 02399FA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02399FAC */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02399FAC */ _t7 = _t6 & 0x00000001u;
|
|
/* 02399FAC */ if (_t7) goto L_0239A024; else goto L_02399FB0;
|
|
L_02399FB0: ; // 0x2399fb0
|
|
/* 02399FB0 */ cpu->r[3] = cpu->r[31];
|
|
/* 02399FB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02399FB4 */ cpu->r[30] = 0x00000000u;
|
|
/* 02399FB8 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02399FB8 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02399FB8 */ if (_t9) goto L_02399FBC; else goto L_02399FCC;
|
|
L_02399FBC: ; // 0x2399fbc
|
|
/* 02399FBC */ cpu->r[3] = 0x00000008u;
|
|
/* 02399FC0 */ Gambit_fn_02801A78(cpu);
|
|
/* 02399FC4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02399FC8 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02399FC8 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02399FC8 */ if (_t11) goto L_02399FDC; else goto L_02399FCC;
|
|
L_02399FCC: ; // 0x2399fcc
|
|
/* 02399FCC */ cpu->r[10] = 0x10080000u;
|
|
/* 02399FD0 */ _t12 = cpu->r[3] + 0x00000000u;
|
|
/* 02399FD0 */ rbrew_write32(cpu->mem, _t12, cpu->r[30]);
|
|
/* 02399FD4 */ cpu->r[10] = cpu->r[10] + 0x00006E08u;
|
|
/* 02399FD8 */ _t13 = cpu->r[3] + 0x00000004u;
|
|
/* 02399FD8 */ rbrew_write32(cpu->mem, _t13, cpu->r[10]);
|
|
L_02399FDC: ; // 0x2399fdc
|
|
/* 02399FDC */ cpu->r[0] = 0x10080000u;
|
|
/* 02399FE0 */ _t14 = cpu->r[31] + 0x00000018u;
|
|
/* 02399FE0 */ rbrew_write32(cpu->mem, _t14, cpu->r[30]);
|
|
/* 02399FE4 */ cpu->r[0] = cpu->r[0] + 0x00006E18u;
|
|
/* 02399FE8 */ cpu->r[3] = 0x00000000u;
|
|
/* 02399FEC */ _t15 = cpu->r[31] + 0x00000004u;
|
|
/* 02399FEC */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 02399FF0 */ cpu->r[4] = 0x00000006u;
|
|
/* 02399FF4 */ _t16 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02399FF4 */ rbrew_write8(cpu->mem, _t16, (uint8_t)cpu->r[30]);
|
|
/* 02399FF8 */ Gambit_fn_02419CF4(cpu);
|
|
/* 02399FFC */ cpu->r[12] = 0x101C0000u;
|
|
/* 0239A000 */ _t17 = cpu->r[31] + 0x00000018u;
|
|
/* 0239A000 */ rbrew_write32(cpu->mem, _t17, cpu->r[3]);
|
|
/* 0239A004 */ _t18 = cpu->r[12] + 0x00006000u;
|
|
/* 0239A004 */ cpu->r[12] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0239A008 */ cpu->r[4] = cpu->r[3];
|
|
/* 0239A008 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 0239A00C */ _t19 = cpu->r[12] + 0x00000250u;
|
|
/* 0239A00C */ cpu->r[9] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0239A010 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A010 */ _t21 = _t20 & 0x00000001u;
|
|
/* 0239A010 */ if (_t21) goto L_0239A018; else goto L_0239A014;
|
|
L_0239A014: ; // 0x239a014
|
|
/* 0239A014 */ cpu->r[4] = cpu->r[3] + 0x00000010u;
|
|
L_0239A018: ; // 0x239a018
|
|
/* 0239A018 */ _t22 = cpu->r[9] + 0x00000250u;
|
|
/* 0239A018 */ cpu->r[3] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0239A01C */ cpu->r[5] = 0x00000000u;
|
|
/* 0239A020 */ Gambit_fn_027EFC10(cpu);
|
|
L_0239A024: ; // 0x239a024
|
|
/* 0239A024 */ _t23 = cpu->r[1] + 0x00000014u;
|
|
/* 0239A024 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0239A028 */ cpu->r[3] = cpu->r[31];
|
|
/* 0239A02C */ _t24 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239A02C */ cpu->r[31] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0239A030 */ cpu->lr = cpu->r[0];
|
|
/* 0239A034 */ _t25 = cpu->r[1] + 0x00000008u;
|
|
/* 0239A034 */ cpu->r[30] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0239A038 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0239A03C */ return;
|
|
}
|
|
|
|
// fn_0239A040 @ 0x239a040
|
|
void Gambit_fn_0239A040(CPUState* 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_0239A040: ; // 0x239a040
|
|
/* 0239A040 */ cpu->r[0] = cpu->lr;
|
|
/* 0239A044 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0239A044 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239A044 */ cpu->r[1] = _t0;
|
|
/* 0239A048 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 0239A048 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0239A04C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0239A04C */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 0239A050 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239A050 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 0239A054 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 0239A054 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 0239A058 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239A058 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0239A05C */ cpu->r[29] = 0x101C0000u;
|
|
/* 0239A060 */ cpu->r[30] = cpu->r[3];
|
|
/* 0239A064 */ _t6 = cpu->r[29] + 0x00005B98u;
|
|
/* 0239A064 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0239A064 */ cpu->r[29] = _t6;
|
|
/* 0239A068 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239A06C */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A06C */ _t8 = _t7 & 0x00000001u;
|
|
/* 0239A06C */ if (_t8) goto L_0239A070; else goto L_0239A0C0;
|
|
L_0239A070: ; // 0x239a070
|
|
/* 0239A070 */ cpu->r[4] = cpu->r[30];
|
|
/* 0239A074 */ cpu->r[3] = 0x00000020u;
|
|
/* 0239A078 */ cpu->r[5] = 0x00000004u;
|
|
/* 0239A07C */ Gambit_fn_02801ADC(cpu);
|
|
/* 0239A080 */ cpu->r[31] = cpu->r[3];
|
|
/* 0239A084 */ cpu->r[28] = cpu->r[31] + 0x00000008u;
|
|
/* 0239A084 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 0239A088 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A088 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0239A088 */ if (_t10) goto L_0239A0A8; else goto L_0239A08C;
|
|
L_0239A08C: ; // 0x239a08c
|
|
/* 0239A08C */ cpu->r[5] = 0x00000003u;
|
|
/* 0239A090 */ cpu->r[4] = cpu->r[30];
|
|
/* 0239A094 */ cpu->r[3] = cpu->r[28];
|
|
/* 0239A098 */ Gambit_fn_02821D88(cpu);
|
|
/* 0239A09C */ cpu->r[0] = 0x10080000u;
|
|
/* 0239A0A0 */ cpu->r[0] = cpu->r[0] + 0x00006E28u;
|
|
/* 0239A0A4 */ _t11 = cpu->r[28] + 0x0000000Cu;
|
|
/* 0239A0A4 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
L_0239A0A8: ; // 0x239a0a8
|
|
/* 0239A0A8 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0239A0AC */ cpu->r[3] = cpu->r[31];
|
|
/* 0239A0AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239A0B0 */ _t12 = cpu->r[12] + 0x00005B9Cu;
|
|
/* 0239A0B0 */ rbrew_write32(cpu->mem, _t12, cpu->r[28]);
|
|
/* 0239A0B4 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A0B4 */ _t14 = _t13 & 0x00000001u;
|
|
/* 0239A0B4 */ if (_t14) goto L_0239A0BC; else goto L_0239A0B8;
|
|
L_0239A0B8: ; // 0x239a0b8
|
|
/* 0239A0B8 */ Gambit_fn_02399F84(cpu);
|
|
L_0239A0BC: ; // 0x239a0bc
|
|
/* 0239A0BC */ _t15 = cpu->r[29] + 0x00000000u;
|
|
/* 0239A0BC */ rbrew_write32(cpu->mem, _t15, cpu->r[3]);
|
|
L_0239A0C0: ; // 0x239a0c0
|
|
/* 0239A0C0 */ _t16 = cpu->r[1] + 0x00000008u;
|
|
/* 0239A0C0 */ cpu->r[28] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0239A0C4 */ _t17 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239A0C4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0239A0C8 */ _t18 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239A0C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0239A0CC */ _t19 = cpu->r[1] + 0x00000010u;
|
|
/* 0239A0CC */ cpu->r[30] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0239A0D0 */ cpu->lr = cpu->r[0];
|
|
/* 0239A0D4 */ _t20 = cpu->r[1] + 0x00000014u;
|
|
/* 0239A0D4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0239A0D8 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0239A0DC */ return;
|
|
}
|
|
|
|
// fn_0239A044 @ 0x239a044
|
|
void Gambit_fn_0239A044(CPUState* 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_0239A044: ; // 0x239a044
|
|
/* 0239A044 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0239A044 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239A044 */ cpu->r[1] = _t0;
|
|
/* 0239A048 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 0239A048 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0239A04C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0239A04C */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 0239A050 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239A050 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 0239A054 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 0239A054 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 0239A058 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239A058 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0239A05C */ cpu->r[29] = 0x101C0000u;
|
|
/* 0239A060 */ cpu->r[30] = cpu->r[3];
|
|
/* 0239A064 */ _t6 = cpu->r[29] + 0x00005B98u;
|
|
/* 0239A064 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0239A064 */ cpu->r[29] = _t6;
|
|
/* 0239A068 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239A06C */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A06C */ _t8 = _t7 & 0x00000001u;
|
|
/* 0239A06C */ if (_t8) goto L_0239A070; else goto L_0239A0C0;
|
|
L_0239A070: ; // 0x239a070
|
|
/* 0239A070 */ cpu->r[4] = cpu->r[30];
|
|
/* 0239A074 */ cpu->r[3] = 0x00000020u;
|
|
/* 0239A078 */ cpu->r[5] = 0x00000004u;
|
|
/* 0239A07C */ Gambit_fn_02801ADC(cpu);
|
|
/* 0239A080 */ cpu->r[31] = cpu->r[3];
|
|
/* 0239A084 */ cpu->r[28] = cpu->r[31] + 0x00000008u;
|
|
/* 0239A084 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 0239A088 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A088 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0239A088 */ if (_t10) goto L_0239A0A8; else goto L_0239A08C;
|
|
L_0239A08C: ; // 0x239a08c
|
|
/* 0239A08C */ cpu->r[5] = 0x00000003u;
|
|
/* 0239A090 */ cpu->r[4] = cpu->r[30];
|
|
/* 0239A094 */ cpu->r[3] = cpu->r[28];
|
|
/* 0239A098 */ Gambit_fn_02821D88(cpu);
|
|
/* 0239A09C */ cpu->r[0] = 0x10080000u;
|
|
/* 0239A0A0 */ cpu->r[0] = cpu->r[0] + 0x00006E28u;
|
|
/* 0239A0A4 */ _t11 = cpu->r[28] + 0x0000000Cu;
|
|
/* 0239A0A4 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
L_0239A0A8: ; // 0x239a0a8
|
|
/* 0239A0A8 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0239A0AC */ cpu->r[3] = cpu->r[31];
|
|
/* 0239A0AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239A0B0 */ _t12 = cpu->r[12] + 0x00005B9Cu;
|
|
/* 0239A0B0 */ rbrew_write32(cpu->mem, _t12, cpu->r[28]);
|
|
/* 0239A0B4 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A0B4 */ _t14 = _t13 & 0x00000001u;
|
|
/* 0239A0B4 */ if (_t14) goto L_0239A0BC; else goto L_0239A0B8;
|
|
L_0239A0B8: ; // 0x239a0b8
|
|
/* 0239A0B8 */ Gambit_fn_02399F84(cpu);
|
|
L_0239A0BC: ; // 0x239a0bc
|
|
/* 0239A0BC */ _t15 = cpu->r[29] + 0x00000000u;
|
|
/* 0239A0BC */ rbrew_write32(cpu->mem, _t15, cpu->r[3]);
|
|
L_0239A0C0: ; // 0x239a0c0
|
|
/* 0239A0C0 */ _t16 = cpu->r[1] + 0x00000008u;
|
|
/* 0239A0C0 */ cpu->r[28] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0239A0C4 */ _t17 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239A0C4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0239A0C8 */ _t18 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239A0C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0239A0CC */ _t19 = cpu->r[1] + 0x00000010u;
|
|
/* 0239A0CC */ cpu->r[30] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0239A0D0 */ cpu->lr = cpu->r[0];
|
|
/* 0239A0D4 */ _t20 = cpu->r[1] + 0x00000014u;
|
|
/* 0239A0D4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0239A0D8 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0239A0DC */ return;
|
|
}
|
|
|
|
// fn_0239A0E0 @ 0x239a0e0
|
|
void Gambit_fn_0239A0E0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_0239A0E0: ; // 0x239a0e0
|
|
/* 0239A0E0 */ _t0 = cpu->r[3] + 0x00000018u;
|
|
/* 0239A0E0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0239A0E4 */ goto L_02419E88;
|
|
L_02419E88: ; // 0x2419e88
|
|
/* 02419E88 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], 0x00000008u);
|
|
/* 02419E8C */ cpu->r[12] = cpu->r[3] + 0x0000002Cu;
|
|
/* 02419E90 */ _t1 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02419E90 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02419E90 */ if (_t2) goto L_02419E94; else goto L_02419E9C;
|
|
L_02419E94: ; // 0x2419e94
|
|
/* 02419E94 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02419E98 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_02419E9C: ; // 0x2419e9c
|
|
/* 02419E9C */ _t3 = cpu->r[12] + 0x00000000u;
|
|
/* 02419E9C */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02419EA0 */ goto L_0241A05C;
|
|
L_0241A05C: ; // 0x241a05c
|
|
/* 0241A05C */ _t4 = cpu->r[3] + 0x00000228u;
|
|
/* 0241A05C */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0241A060 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0241A064 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0241A064 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0241A064 */ if (_t6) goto L_0241A070; else goto L_0241A068;
|
|
L_0241A068: ; // 0x241a068
|
|
/* 0241A068 */ _t7 = cpu->r[12] + 0x000002F2u;
|
|
/* 0241A068 */ cpu->r[3] = rbrew_read8(cpu->mem, _t7);
|
|
/* 0241A06C */ return;
|
|
L_0241A070: ; // 0x241a070
|
|
/* 0241A070 */ cpu->r[3] = 0x00000000u;
|
|
/* 0241A074 */ return;
|
|
}
|
|
|
|
// fn_0239A0E8 @ 0x239a0e8
|
|
void Gambit_fn_0239A0E8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0239A0E8: ; // 0x239a0e8
|
|
/* 0239A0E8 */ _t0 = cpu->r[3] + 0x00000018u;
|
|
/* 0239A0E8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0239A0EC */ goto L_02419E6C;
|
|
L_02419E6C: ; // 0x2419e6c
|
|
/* 02419E6C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], 0x00000008u);
|
|
/* 02419E70 */ cpu->r[12] = cpu->r[3] + 0x0000002Cu;
|
|
/* 02419E74 */ _t1 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02419E74 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02419E74 */ if (_t2) goto L_02419E78; else goto L_02419E80;
|
|
L_02419E78: ; // 0x2419e78
|
|
/* 02419E78 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02419E7C */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_02419E80: ; // 0x2419e80
|
|
/* 02419E80 */ _t3 = cpu->r[12] + 0x00000000u;
|
|
/* 02419E80 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02419E84 */ goto L_0241A050;
|
|
L_0241A050: ; // 0x241a050
|
|
/* 0241A050 */ _t4 = cpu->r[3] + 0x00000228u;
|
|
/* 0241A050 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0241A054 */ _t5 = cpu->r[12] + 0x00000134u;
|
|
/* 0241A054 */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0241A058 */ return;
|
|
}
|
|
|
|
// fn_0239A0F0 @ 0x239a0f0
|
|
void Gambit_fn_0239A0F0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _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_0239A0F0: ; // 0x239a0f0
|
|
/* 0239A0F0 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 0239A0F0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239A0F0 */ cpu->r[1] = _t0;
|
|
/* 0239A0F4 */ /* nop */
|
|
/* 0239A0F8 */ cpu->r[0] = cpu->lr;
|
|
/* 0239A0FC */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0239A0FC */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0239A100 */ cpu->r[30] = cpu->r[3];
|
|
/* 0239A104 */ _t2 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0239A104 */ cpu->r[8] = rbrew_read8(cpu->mem, _t2);
|
|
/* 0239A108 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0239A10C */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A10C */ _t4 = _t3 & 0x00000001u;
|
|
/* 0239A10C */ if (_t4) goto L_0239A110; else goto L_0239A1AC;
|
|
L_0239A110: ; // 0x239a110
|
|
/* 0239A110 */ Gambit_fn_027E3E2C(cpu);
|
|
/* 0239A114 */ cpu->r[31] = cpu->r[3];
|
|
/* 0239A114 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0239A118 */ cpu->r[27] = 0x00000000u;
|
|
/* 0239A11C */ _t5 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0239A11C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0239A11C */ if (_t6) goto L_0239A120; else goto L_0239A1AC;
|
|
L_0239A120: ; // 0x239a120
|
|
/* 0239A120 */ cpu->r[29] = 0x00000001u;
|
|
/* 0239A124 */ cpu->r[28] = cpu->r[31] + 0xFFFFFFFFu;
|
|
/* 0239A128 */ cpu->r[26] = 0x101C0000u;
|
|
/* 0239A12C */ cpu->r[25] = 0x00000000u;
|
|
L_0239A130: ; // 0x239a130
|
|
/* 0239A130 */ _t7 = cpu->r[30] + 0x00000018u;
|
|
/* 0239A130 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0239A134 */ cpu->r[4] = cpu->r[27];
|
|
/* 0239A138 */ Gambit_fn_02419D94(cpu);
|
|
/* 0239A13C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239A140 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A140 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0239A140 */ if (_t9) goto L_0239A19C; else goto L_0239A144;
|
|
L_0239A144: ; // 0x239a144
|
|
/* 0239A144 */ _t10 = cpu->r[30] + 0x00000018u;
|
|
/* 0239A144 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0239A148 */ cpu->r[4] = cpu->r[27];
|
|
/* 0239A14C */ Gambit_fn_02419E88(cpu);
|
|
/* 0239A150 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239A154 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A154 */ _t12 = _t11 & 0x00000001u;
|
|
/* 0239A154 */ if (_t12) goto L_0239A158; else goto L_0239A19C;
|
|
L_0239A158: ; // 0x239a158
|
|
/* 0239A158 */ _t13 = cpu->r[26] + 0x00001358u;
|
|
/* 0239A158 */ cpu->r[11] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0239A15C */ _t14 = cpu->r[30] + 0x00000018u;
|
|
/* 0239A15C */ cpu->r[3] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0239A160 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], 0x00000008u);
|
|
/* 0239A164 */ _t15 = cpu->r[11] + 0x00000010u;
|
|
/* 0239A164 */ cpu->r[12] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0239A168 */ _t16 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0239A168 */ _t17 = _t16 & 0x00000001u;
|
|
/* 0239A168 */ if (_t17) goto L_0239A16C; else goto L_0239A170;
|
|
L_0239A16C: ; // 0x239a16c
|
|
/* 0239A16C */ cpu->r[12] = cpu->r[12] + cpu->r[25];
|
|
L_0239A170: ; // 0x239a170
|
|
/* 0239A170 */ _t18 = cpu->r[12] + 0x00000000u;
|
|
/* 0239A170 */ cpu->r[5] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0239A174 */ cpu->r[4] = cpu->r[27];
|
|
/* 0239A178 */ Gambit_fn_02419DC0(cpu);
|
|
/* 0239A17C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], cpu->r[28]);
|
|
/* 0239A180 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A180 */ _t20 = _t19 & 0x00000001u;
|
|
/* 0239A180 */ if (_t20) goto L_0239A184; else goto L_0239A1AC;
|
|
L_0239A184: ; // 0x239a184
|
|
/* 0239A184 */ _t21 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0239A184 */ rbrew_write8(cpu->mem, _t21, (uint8_t)cpu->r[29]);
|
|
/* 0239A188 */ /* nop */
|
|
/* 0239A18C */ _t22 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0239A18C */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0239A190 */ cpu->lr = cpu->r[0];
|
|
/* 0239A194 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 0239A198 */ return;
|
|
L_0239A19C: ; // 0x239a19c
|
|
/* 0239A19C */ cpu->r[31] = cpu->r[31] + 0xFFFFFFFFu;
|
|
/* 0239A19C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0239A1A0 */ cpu->r[27] = cpu->r[27] + 0x00000001u;
|
|
/* 0239A1A4 */ cpu->r[25] = cpu->r[25] + 0x00000004u;
|
|
/* 0239A1A8 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A1A8 */ _t24 = _t23 & 0x00000001u;
|
|
/* 0239A1A8 */ if (_t24) goto L_0239A1AC; else goto L_0239A130;
|
|
L_0239A1AC: ; // 0x239a1ac
|
|
/* 0239A1AC */ /* nop */
|
|
/* 0239A1B0 */ _t25 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0239A1B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0239A1B4 */ cpu->lr = cpu->r[0];
|
|
/* 0239A1B8 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 0239A1BC */ return;
|
|
}
|
|
|
|
// fn_0239A1C0 @ 0x239a1c0
|
|
void Gambit_fn_0239A1C0(CPUState* cpu) {
|
|
uint32_t _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_0239A1C0: ; // 0x239a1c0
|
|
/* 0239A1C0 */ cpu->r[0] = cpu->lr;
|
|
/* 0239A1C4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0239A1C4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239A1C4 */ cpu->r[1] = _t0;
|
|
/* 0239A1C8 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0239A1C8 */ rbrew_write32(cpu->mem, _t1, cpu->r[28]);
|
|
/* 0239A1CC */ cpu->r[28] = cpu->r[4];
|
|
/* 0239A1D0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0239A1D0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0239A1D4 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239A1D4 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 0239A1D8 */ cpu->r[31] = cpu->r[3];
|
|
/* 0239A1D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0239A1DC */ _t4 = cpu->r[1] + 0x00000010u;
|
|
/* 0239A1DC */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 0239A1E0 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239A1E0 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0239A1E4 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A1E4 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0239A1E4 */ if (_t7) goto L_0239A248; else goto L_0239A1E8;
|
|
L_0239A1E8: ; // 0x239a1e8
|
|
/* 0239A1E8 */ cpu->r[6] = 0x10080000u;
|
|
/* 0239A1EC */ cpu->r[6] = cpu->r[6] + 0x00006E28u;
|
|
/* 0239A1F0 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0239A1F4 */ _t8 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0239A1F4 */ rbrew_write32(cpu->mem, _t8, cpu->r[6]);
|
|
/* 0239A1F8 */ _t9 = cpu->r[12] + 0x00005B9Cu;
|
|
/* 0239A1F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0239A1F8 */ cpu->r[12] = _t9;
|
|
/* 0239A1FC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]);
|
|
/* 0239A200 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A200 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0239A200 */ if (_t11) goto L_0239A204; else goto L_0239A22C;
|
|
L_0239A204: ; // 0x239a204
|
|
/* 0239A204 */ cpu->r[30] = 0x101C0000u;
|
|
/* 0239A208 */ cpu->r[29] = 0x00000000u;
|
|
/* 0239A20C */ _t12 = cpu->r[30] + 0x00005B98u;
|
|
/* 0239A20C */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0239A210 */ _t13 = cpu->r[12] + 0x00000000u;
|
|
/* 0239A210 */ rbrew_write32(cpu->mem, _t13, cpu->r[29]);
|
|
/* 0239A214 */ _t14 = cpu->r[3] + 0x00000004u;
|
|
/* 0239A214 */ cpu->r[8] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0239A218 */ _t15 = cpu->r[8] + 0x0000000Cu;
|
|
/* 0239A218 */ cpu->r[10] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0239A21C */ cpu->ctr = cpu->r[10];
|
|
/* 0239A220 */ cpu->r[4] = 0x00000002u;
|
|
/* 0239A224 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0239A228 */ _t16 = cpu->r[30] + 0x00005B98u;
|
|
/* 0239A228 */ rbrew_write32(cpu->mem, _t16, cpu->r[29]);
|
|
L_0239A22C: ; // 0x239a22c
|
|
/* 0239A22C */ cpu->r[3] = cpu->r[31];
|
|
/* 0239A230 */ cpu->r[4] = 0x00000000u;
|
|
/* 0239A234 */ Gambit_fn_02821E68(cpu);
|
|
/* 0239A238 */ cpu->r[0] = rbrew_rlwinm(cpu->r[28], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0239A238 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0239A23C */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A23C */ _t18 = _t17 & 0x00000001u;
|
|
/* 0239A23C */ if (_t18) goto L_0239A248; else goto L_0239A240;
|
|
L_0239A240: ; // 0x239a240
|
|
/* 0239A240 */ cpu->r[3] = cpu->r[31];
|
|
/* 0239A244 */ Gambit_fn_02801BB0(cpu);
|
|
L_0239A248: ; // 0x239a248
|
|
/* 0239A248 */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 0239A248 */ cpu->r[28] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0239A24C */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239A24C */ cpu->r[29] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0239A250 */ _t21 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239A250 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0239A254 */ _t22 = cpu->r[1] + 0x00000010u;
|
|
/* 0239A254 */ cpu->r[30] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0239A258 */ cpu->lr = cpu->r[0];
|
|
/* 0239A25C */ _t23 = cpu->r[1] + 0x00000014u;
|
|
/* 0239A25C */ cpu->r[31] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0239A260 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0239A264 */ return;
|
|
}
|
|
|
|
// fn_0239A1C4 @ 0x239a1c4
|
|
void Gambit_fn_0239A1C4(CPUState* cpu) {
|
|
uint32_t _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_0239A1C4: ; // 0x239a1c4
|
|
/* 0239A1C4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0239A1C4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239A1C4 */ cpu->r[1] = _t0;
|
|
/* 0239A1C8 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0239A1C8 */ rbrew_write32(cpu->mem, _t1, cpu->r[28]);
|
|
/* 0239A1CC */ cpu->r[28] = cpu->r[4];
|
|
/* 0239A1D0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0239A1D0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0239A1D4 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239A1D4 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 0239A1D8 */ cpu->r[31] = cpu->r[3];
|
|
/* 0239A1D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0239A1DC */ _t4 = cpu->r[1] + 0x00000010u;
|
|
/* 0239A1DC */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 0239A1E0 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239A1E0 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0239A1E4 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A1E4 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0239A1E4 */ if (_t7) goto L_0239A248; else goto L_0239A1E8;
|
|
L_0239A1E8: ; // 0x239a1e8
|
|
/* 0239A1E8 */ cpu->r[6] = 0x10080000u;
|
|
/* 0239A1EC */ cpu->r[6] = cpu->r[6] + 0x00006E28u;
|
|
/* 0239A1F0 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0239A1F4 */ _t8 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0239A1F4 */ rbrew_write32(cpu->mem, _t8, cpu->r[6]);
|
|
/* 0239A1F8 */ _t9 = cpu->r[12] + 0x00005B9Cu;
|
|
/* 0239A1F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0239A1F8 */ cpu->r[12] = _t9;
|
|
/* 0239A1FC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]);
|
|
/* 0239A200 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A200 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0239A200 */ if (_t11) goto L_0239A204; else goto L_0239A22C;
|
|
L_0239A204: ; // 0x239a204
|
|
/* 0239A204 */ cpu->r[30] = 0x101C0000u;
|
|
/* 0239A208 */ cpu->r[29] = 0x00000000u;
|
|
/* 0239A20C */ _t12 = cpu->r[30] + 0x00005B98u;
|
|
/* 0239A20C */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0239A210 */ _t13 = cpu->r[12] + 0x00000000u;
|
|
/* 0239A210 */ rbrew_write32(cpu->mem, _t13, cpu->r[29]);
|
|
/* 0239A214 */ _t14 = cpu->r[3] + 0x00000004u;
|
|
/* 0239A214 */ cpu->r[8] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0239A218 */ _t15 = cpu->r[8] + 0x0000000Cu;
|
|
/* 0239A218 */ cpu->r[10] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0239A21C */ cpu->ctr = cpu->r[10];
|
|
/* 0239A220 */ cpu->r[4] = 0x00000002u;
|
|
/* 0239A224 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0239A228 */ _t16 = cpu->r[30] + 0x00005B98u;
|
|
/* 0239A228 */ rbrew_write32(cpu->mem, _t16, cpu->r[29]);
|
|
L_0239A22C: ; // 0x239a22c
|
|
/* 0239A22C */ cpu->r[3] = cpu->r[31];
|
|
/* 0239A230 */ cpu->r[4] = 0x00000000u;
|
|
/* 0239A234 */ Gambit_fn_02821E68(cpu);
|
|
/* 0239A238 */ cpu->r[0] = rbrew_rlwinm(cpu->r[28], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0239A238 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0239A23C */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A23C */ _t18 = _t17 & 0x00000001u;
|
|
/* 0239A23C */ if (_t18) goto L_0239A248; else goto L_0239A240;
|
|
L_0239A240: ; // 0x239a240
|
|
/* 0239A240 */ cpu->r[3] = cpu->r[31];
|
|
/* 0239A244 */ Gambit_fn_02801BB0(cpu);
|
|
L_0239A248: ; // 0x239a248
|
|
/* 0239A248 */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 0239A248 */ cpu->r[28] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0239A24C */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239A24C */ cpu->r[29] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0239A250 */ _t21 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239A250 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0239A254 */ _t22 = cpu->r[1] + 0x00000010u;
|
|
/* 0239A254 */ cpu->r[30] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0239A258 */ cpu->lr = cpu->r[0];
|
|
/* 0239A25C */ _t23 = cpu->r[1] + 0x00000014u;
|
|
/* 0239A25C */ cpu->r[31] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0239A260 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0239A264 */ return;
|
|
}
|
|
|
|
// fn_0239A268 @ 0x239a268
|
|
void Gambit_fn_0239A268(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0239A268: ; // 0x239a268
|
|
/* 0239A268 */ cpu->r[5] = 0xFFFFFFFDu;
|
|
/* 0239A26C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0239A26C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239A26C */ cpu->r[1] = _t0;
|
|
/* 0239A270 */ cpu->r[10] = 0x101E0000u;
|
|
/* 0239A274 */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 0239A278 */ _t1 = cpu->r[10] + 0x00004A74u;
|
|
/* 0239A278 */ rbrew_write32(cpu->mem, _t1, cpu->r[5]);
|
|
/* 0239A278 */ cpu->r[10] = _t1;
|
|
/* 0239A27C */ cpu->r[7] = 0x101E0000u;
|
|
/* 0239A280 */ _t2 = cpu->r[10] + 0x00000004u;
|
|
/* 0239A280 */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 0239A284 */ cpu->r[9] = 0xFFFFFFFEu;
|
|
/* 0239A288 */ cpu->r[8] = 0x101E0000u;
|
|
/* 0239A28C */ _t3 = cpu->r[7] + 0x00004A84u;
|
|
/* 0239A28C */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 0239A28C */ cpu->r[7] = _t3;
|
|
/* 0239A290 */ _t4 = cpu->r[8] + 0x00004A7Cu;
|
|
/* 0239A290 */ rbrew_write32(cpu->mem, _t4, cpu->r[9]);
|
|
/* 0239A290 */ cpu->r[8] = _t4;
|
|
/* 0239A294 */ cpu->r[0] = 0x00000002u;
|
|
/* 0239A298 */ _t5 = cpu->r[8] + 0x00000004u;
|
|
/* 0239A298 */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 0239A29C */ cpu->r[8] = 0x101E0000u;
|
|
/* 0239A2A0 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 0239A2A0 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0239A2A4 */ cpu->r[12] = 0x101E0000u;
|
|
/* 0239A2A8 */ _t7 = cpu->r[7] + 0x00000004u;
|
|
/* 0239A2A8 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 0239A2AC */ _t8 = cpu->r[8] + 0x00004A94u;
|
|
/* 0239A2AC */ rbrew_write32(cpu->mem, _t8, cpu->r[5]);
|
|
/* 0239A2AC */ cpu->r[8] = _t8;
|
|
/* 0239A2B0 */ _t9 = cpu->r[12] + 0x00004A8Cu;
|
|
/* 0239A2B0 */ rbrew_write32(cpu->mem, _t9, cpu->r[5]);
|
|
/* 0239A2B0 */ cpu->r[12] = _t9;
|
|
/* 0239A2B4 */ _t10 = cpu->r[12] + 0x00000004u;
|
|
/* 0239A2B4 */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 0239A2B8 */ cpu->r[0] = 0x00000004u;
|
|
/* 0239A2BC */ _t11 = cpu->r[8] + 0x00000004u;
|
|
/* 0239A2BC */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
/* 0239A2C0 */ cpu->r[11] = 0x101E0000u;
|
|
/* 0239A2C4 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 0239A2C4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0239A2C8 */ _t13 = cpu->r[11] + 0x00004A9Cu;
|
|
/* 0239A2C8 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 0239A2CC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0239A2D0 */ return;
|
|
}
|
|
|
|
// fn_0239A26C @ 0x239a26c
|
|
void Gambit_fn_0239A26C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0239A26C: ; // 0x239a26c
|
|
/* 0239A26C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0239A26C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239A26C */ cpu->r[1] = _t0;
|
|
/* 0239A270 */ cpu->r[10] = 0x101E0000u;
|
|
/* 0239A274 */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 0239A278 */ _t1 = cpu->r[10] + 0x00004A74u;
|
|
/* 0239A278 */ rbrew_write32(cpu->mem, _t1, cpu->r[5]);
|
|
/* 0239A278 */ cpu->r[10] = _t1;
|
|
/* 0239A27C */ cpu->r[7] = 0x101E0000u;
|
|
/* 0239A280 */ _t2 = cpu->r[10] + 0x00000004u;
|
|
/* 0239A280 */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 0239A284 */ cpu->r[9] = 0xFFFFFFFEu;
|
|
/* 0239A288 */ cpu->r[8] = 0x101E0000u;
|
|
/* 0239A28C */ _t3 = cpu->r[7] + 0x00004A84u;
|
|
/* 0239A28C */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 0239A28C */ cpu->r[7] = _t3;
|
|
/* 0239A290 */ _t4 = cpu->r[8] + 0x00004A7Cu;
|
|
/* 0239A290 */ rbrew_write32(cpu->mem, _t4, cpu->r[9]);
|
|
/* 0239A290 */ cpu->r[8] = _t4;
|
|
/* 0239A294 */ cpu->r[0] = 0x00000002u;
|
|
/* 0239A298 */ _t5 = cpu->r[8] + 0x00000004u;
|
|
/* 0239A298 */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 0239A29C */ cpu->r[8] = 0x101E0000u;
|
|
/* 0239A2A0 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 0239A2A0 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0239A2A4 */ cpu->r[12] = 0x101E0000u;
|
|
/* 0239A2A8 */ _t7 = cpu->r[7] + 0x00000004u;
|
|
/* 0239A2A8 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 0239A2AC */ _t8 = cpu->r[8] + 0x00004A94u;
|
|
/* 0239A2AC */ rbrew_write32(cpu->mem, _t8, cpu->r[5]);
|
|
/* 0239A2AC */ cpu->r[8] = _t8;
|
|
/* 0239A2B0 */ _t9 = cpu->r[12] + 0x00004A8Cu;
|
|
/* 0239A2B0 */ rbrew_write32(cpu->mem, _t9, cpu->r[5]);
|
|
/* 0239A2B0 */ cpu->r[12] = _t9;
|
|
/* 0239A2B4 */ _t10 = cpu->r[12] + 0x00000004u;
|
|
/* 0239A2B4 */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 0239A2B8 */ cpu->r[0] = 0x00000004u;
|
|
/* 0239A2BC */ _t11 = cpu->r[8] + 0x00000004u;
|
|
/* 0239A2BC */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
/* 0239A2C0 */ cpu->r[11] = 0x101E0000u;
|
|
/* 0239A2C4 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 0239A2C4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0239A2C8 */ _t13 = cpu->r[11] + 0x00004A9Cu;
|
|
/* 0239A2C8 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 0239A2CC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0239A2D0 */ return;
|
|
}
|
|
|
|
// fn_0239A2D4 @ 0x239a2d4
|
|
void Gambit_fn_0239A2D4(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_0239A2D4: ; // 0x239a2d4
|
|
/* 0239A2D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239A2D8 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A2D8 */ _t1 = _t0 & 0x00000001u;
|
|
/* 0239A2D8 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0239A2D8 */ goto L_0239A2DC;
|
|
L_0239A2DC: ; // 0x239a2dc
|
|
/* 0239A2DC */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0239A2DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0239A2E0 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A2E0 */ _t3 = _t2 & 0x00000001u;
|
|
/* 0239A2E0 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0239A2E0 */ goto L_0239A2E4;
|
|
L_0239A2E4: ; // 0x239a2e4
|
|
/* 0239A2E4 */ 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_0239A2E8 @ 0x239a2e8
|
|
void Gambit_fn_0239A2E8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_0239A2E8: ; // 0x239a2e8
|
|
/* 0239A2E8 */ cpu->r[0] = cpu->lr;
|
|
/* 0239A2EC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0239A2EC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239A2EC */ cpu->r[1] = _t0;
|
|
/* 0239A2F0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239A2F0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0239A2F4 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0239A2F4 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0239A2F8 */ cpu->r[30] = cpu->r[3];
|
|
/* 0239A2F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0239A2FC */ cpu->r[31] = cpu->r[4];
|
|
/* 0239A300 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0239A300 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0239A304 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A304 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0239A304 */ if (_t5) goto L_0239A35C; else goto L_0239A308;
|
|
L_0239A308: ; // 0x239a308
|
|
/* 0239A308 */ cpu->r[0] = 0x10080000u;
|
|
/* 0239A30C */ cpu->r[11] = 0x10080000u;
|
|
/* 0239A310 */ cpu->r[0] = cpu->r[0] + 0x00006E88u;
|
|
/* 0239A314 */ cpu->r[11] = cpu->r[11] + 0x00006EC0u;
|
|
/* 0239A318 */ _t6 = cpu->r[30] + 0x00000000u;
|
|
/* 0239A318 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0239A31C */ cpu->r[0] = 0x10080000u;
|
|
/* 0239A320 */ _t7 = cpu->r[30] + 0x00000030u;
|
|
/* 0239A320 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 0239A324 */ cpu->r[0] = cpu->r[0] + 0x00006EB0u;
|
|
/* 0239A328 */ cpu->r[3] = cpu->r[30];
|
|
/* 0239A32C */ _t8 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0239A32C */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0239A330 */ Gambit_fn_026F099C(cpu);
|
|
/* 0239A334 */ cpu->r[4] = 0x00000000u;
|
|
/* 0239A338 */ cpu->r[3] = cpu->r[30] + 0x00000024u;
|
|
/* 0239A33C */ Gambit_fn_02821E68(cpu);
|
|
/* 0239A340 */ cpu->r[0] = 0x10080000u;
|
|
/* 0239A344 */ cpu->r[0] = cpu->r[0] + 0x00006E48u;
|
|
/* 0239A348 */ cpu->r[12] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0239A348 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0239A34C */ _t9 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0239A34C */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 0239A350 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A350 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0239A350 */ if (_t11) goto L_0239A35C; else goto L_0239A354;
|
|
L_0239A354: ; // 0x239a354
|
|
/* 0239A354 */ cpu->r[3] = cpu->r[30];
|
|
/* 0239A358 */ Gambit_fn_02801BB0(cpu);
|
|
L_0239A35C: ; // 0x239a35c
|
|
/* 0239A35C */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0239A35C */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0239A360 */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 0239A360 */ cpu->r[30] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0239A364 */ cpu->lr = cpu->r[0];
|
|
/* 0239A368 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239A368 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0239A36C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0239A370 */ return;
|
|
}
|
|
|
|
// fn_0239A2EC @ 0x239a2ec
|
|
void Gambit_fn_0239A2EC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_0239A2EC: ; // 0x239a2ec
|
|
/* 0239A2EC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0239A2EC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239A2EC */ cpu->r[1] = _t0;
|
|
/* 0239A2F0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239A2F0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0239A2F4 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0239A2F4 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0239A2F8 */ cpu->r[30] = cpu->r[3];
|
|
/* 0239A2F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0239A2FC */ cpu->r[31] = cpu->r[4];
|
|
/* 0239A300 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0239A300 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0239A304 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A304 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0239A304 */ if (_t5) goto L_0239A35C; else goto L_0239A308;
|
|
L_0239A308: ; // 0x239a308
|
|
/* 0239A308 */ cpu->r[0] = 0x10080000u;
|
|
/* 0239A30C */ cpu->r[11] = 0x10080000u;
|
|
/* 0239A310 */ cpu->r[0] = cpu->r[0] + 0x00006E88u;
|
|
/* 0239A314 */ cpu->r[11] = cpu->r[11] + 0x00006EC0u;
|
|
/* 0239A318 */ _t6 = cpu->r[30] + 0x00000000u;
|
|
/* 0239A318 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0239A31C */ cpu->r[0] = 0x10080000u;
|
|
/* 0239A320 */ _t7 = cpu->r[30] + 0x00000030u;
|
|
/* 0239A320 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 0239A324 */ cpu->r[0] = cpu->r[0] + 0x00006EB0u;
|
|
/* 0239A328 */ cpu->r[3] = cpu->r[30];
|
|
/* 0239A32C */ _t8 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0239A32C */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0239A330 */ Gambit_fn_026F099C(cpu);
|
|
/* 0239A334 */ cpu->r[4] = 0x00000000u;
|
|
/* 0239A338 */ cpu->r[3] = cpu->r[30] + 0x00000024u;
|
|
/* 0239A33C */ Gambit_fn_02821E68(cpu);
|
|
/* 0239A340 */ cpu->r[0] = 0x10080000u;
|
|
/* 0239A344 */ cpu->r[0] = cpu->r[0] + 0x00006E48u;
|
|
/* 0239A348 */ cpu->r[12] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0239A348 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0239A34C */ _t9 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0239A34C */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 0239A350 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A350 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0239A350 */ if (_t11) goto L_0239A35C; else goto L_0239A354;
|
|
L_0239A354: ; // 0x239a354
|
|
/* 0239A354 */ cpu->r[3] = cpu->r[30];
|
|
/* 0239A358 */ Gambit_fn_02801BB0(cpu);
|
|
L_0239A35C: ; // 0x239a35c
|
|
/* 0239A35C */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0239A35C */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0239A360 */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 0239A360 */ cpu->r[30] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0239A364 */ cpu->lr = cpu->r[0];
|
|
/* 0239A368 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239A368 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0239A36C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0239A370 */ return;
|
|
}
|
|
|
|
// fn_0239A374 @ 0x239a374
|
|
void Gambit_fn_0239A374(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_0239A2E8: ; // 0x239a2e8
|
|
/* 0239A2E8 */ cpu->r[0] = cpu->lr;
|
|
/* 0239A2EC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0239A2EC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239A2EC */ cpu->r[1] = _t0;
|
|
/* 0239A2F0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239A2F0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0239A2F4 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0239A2F4 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0239A2F8 */ cpu->r[30] = cpu->r[3];
|
|
/* 0239A2F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0239A2FC */ cpu->r[31] = cpu->r[4];
|
|
/* 0239A300 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0239A300 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0239A304 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A304 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0239A304 */ if (_t5) goto L_0239A35C; else goto L_0239A308;
|
|
L_0239A308: ; // 0x239a308
|
|
/* 0239A308 */ cpu->r[0] = 0x10080000u;
|
|
/* 0239A30C */ cpu->r[11] = 0x10080000u;
|
|
/* 0239A310 */ cpu->r[0] = cpu->r[0] + 0x00006E88u;
|
|
/* 0239A314 */ cpu->r[11] = cpu->r[11] + 0x00006EC0u;
|
|
/* 0239A318 */ _t6 = cpu->r[30] + 0x00000000u;
|
|
/* 0239A318 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0239A31C */ cpu->r[0] = 0x10080000u;
|
|
/* 0239A320 */ _t7 = cpu->r[30] + 0x00000030u;
|
|
/* 0239A320 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 0239A324 */ cpu->r[0] = cpu->r[0] + 0x00006EB0u;
|
|
/* 0239A328 */ cpu->r[3] = cpu->r[30];
|
|
/* 0239A32C */ _t8 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0239A32C */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0239A330 */ Gambit_fn_026F099C(cpu);
|
|
/* 0239A334 */ cpu->r[4] = 0x00000000u;
|
|
/* 0239A338 */ cpu->r[3] = cpu->r[30] + 0x00000024u;
|
|
/* 0239A33C */ Gambit_fn_02821E68(cpu);
|
|
/* 0239A340 */ cpu->r[0] = 0x10080000u;
|
|
/* 0239A344 */ cpu->r[0] = cpu->r[0] + 0x00006E48u;
|
|
/* 0239A348 */ cpu->r[12] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0239A348 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0239A34C */ _t9 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0239A34C */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 0239A350 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A350 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0239A350 */ if (_t11) goto L_0239A35C; else goto L_0239A354;
|
|
L_0239A354: ; // 0x239a354
|
|
/* 0239A354 */ cpu->r[3] = cpu->r[30];
|
|
/* 0239A358 */ Gambit_fn_02801BB0(cpu);
|
|
L_0239A35C: ; // 0x239a35c
|
|
/* 0239A35C */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0239A35C */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0239A360 */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 0239A360 */ cpu->r[30] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0239A364 */ cpu->lr = cpu->r[0];
|
|
/* 0239A368 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239A368 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0239A36C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0239A370 */ return;
|
|
L_0239A374: ; // 0x239a374
|
|
/* 0239A374 */ cpu->r[3] = cpu->r[3] + 0xFFFFFFDCu;
|
|
/* 0239A378 */ goto L_0239A2E8;
|
|
}
|
|
|
|
// fn_0239A37C @ 0x239a37c
|
|
void Gambit_fn_0239A37C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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;
|
|
|
|
L_0239A37C: ; // 0x239a37c
|
|
/* 0239A37C */ cpu->r[0] = cpu->lr;
|
|
/* 0239A380 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0239A380 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239A380 */ cpu->r[1] = _t0;
|
|
/* 0239A384 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239A384 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 0239A388 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0239A388 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0239A38C */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 0239A38C */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 0239A390 */ cpu->r[31] = cpu->r[3];
|
|
/* 0239A390 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0239A394 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239A394 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0239A398 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A398 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0239A398 */ if (_t6) goto L_0239A39C; else goto L_0239A3AC;
|
|
L_0239A39C: ; // 0x239a39c
|
|
/* 0239A39C */ cpu->r[3] = 0x0000021Cu;
|
|
/* 0239A3A0 */ Gambit_fn_02801A78(cpu);
|
|
/* 0239A3A4 */ cpu->r[31] = cpu->r[3];
|
|
/* 0239A3A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0239A3A8 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A3A8 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0239A3A8 */ if (_t8) goto L_0239A6B0; else goto L_0239A3AC;
|
|
L_0239A3AC: ; // 0x239a3ac
|
|
/* 0239A3AC */ cpu->r[29] = 0x00000000u;
|
|
/* 0239A3B0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0239A3B4 */ cpu->r[4] = 0x10080000u;
|
|
/* 0239A3B8 */ cpu->r[5] = cpu->r[29];
|
|
/* 0239A3BC */ cpu->r[6] = 0x00000121u;
|
|
/* 0239A3C0 */ cpu->r[4] = cpu->r[4] + 0x00006E58u;
|
|
/* 0239A3C4 */ cpu->r[7] = cpu->r[5];
|
|
/* 0239A3C8 */ Gambit_fn_026F080C(cpu);
|
|
/* 0239A3CC */ cpu->r[3] = cpu->r[31] + 0x00000024u;
|
|
/* 0239A3D0 */ Gambit_fn_02821D00(cpu);
|
|
/* 0239A3D4 */ cpu->r[10] = 0x10080000u;
|
|
/* 0239A3D8 */ _t9 = cpu->r[31] + 0x00000048u;
|
|
/* 0239A3D8 */ rbrew_write32(cpu->mem, _t9, cpu->r[29]);
|
|
/* 0239A3DC */ cpu->r[10] = cpu->r[10] + 0x00006E88u;
|
|
/* 0239A3E0 */ cpu->r[0] = 0x00000001u;
|
|
/* 0239A3E4 */ cpu->r[11] = 0x10080000u;
|
|
/* 0239A3E8 */ _t10 = cpu->r[31] + 0x00000000u;
|
|
/* 0239A3E8 */ rbrew_write32(cpu->mem, _t10, cpu->r[10]);
|
|
/* 0239A3EC */ cpu->r[11] = cpu->r[11] + 0x00006EB0u;
|
|
/* 0239A3F0 */ _t11 = cpu->r[31] + 0x00000044u;
|
|
/* 0239A3F0 */ rbrew_write8(cpu->mem, _t11, (uint8_t)cpu->r[0]);
|
|
/* 0239A3F4 */ cpu->r[12] = 0x10080000u;
|
|
/* 0239A3F8 */ _t12 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0239A3F8 */ rbrew_write32(cpu->mem, _t12, cpu->r[11]);
|
|
/* 0239A3FC */ cpu->r[12] = cpu->r[12] + 0x00006EC0u;
|
|
/* 0239A400 */ cpu->r[30] = cpu->r[31] + 0x0000004Cu;
|
|
/* 0239A400 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0239A404 */ _t13 = cpu->r[31] + 0x00000030u;
|
|
/* 0239A404 */ rbrew_write32(cpu->mem, _t13, cpu->r[12]);
|
|
/* 0239A408 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A408 */ _t15 = _t14 & 0x00000001u;
|
|
/* 0239A408 */ if (_t15) goto L_0239A40C; else goto L_0239A41C;
|
|
L_0239A40C: ; // 0x239a40c
|
|
/* 0239A40C */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0239A410 */ Gambit_fn_02801A78(cpu);
|
|
/* 0239A414 */ cpu->r[30] = cpu->r[3];
|
|
/* 0239A414 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0239A418 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A418 */ _t17 = _t16 & 0x00000001u;
|
|
/* 0239A418 */ if (_t17) goto L_0239A450; else goto L_0239A41C;
|
|
L_0239A41C: ; // 0x239a41c
|
|
/* 0239A41C */ cpu->r[3] = cpu->r[30];
|
|
/* 0239A41C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239A420 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A420 */ _t19 = _t18 & 0x00000001u;
|
|
/* 0239A420 */ if (_t19) goto L_0239A424; else goto L_0239A434;
|
|
L_0239A424: ; // 0x239a424
|
|
/* 0239A424 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0239A428 */ Gambit_fn_02801A78(cpu);
|
|
/* 0239A42C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239A430 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A430 */ _t21 = _t20 & 0x00000001u;
|
|
/* 0239A430 */ if (_t21) goto L_0239A440; else goto L_0239A434;
|
|
L_0239A434: ; // 0x239a434
|
|
/* 0239A434 */ _t22 = cpu->r[3] + 0x00000004u;
|
|
/* 0239A434 */ rbrew_write32(cpu->mem, _t22, cpu->r[29]);
|
|
/* 0239A438 */ _t23 = cpu->r[3] + 0x00000000u;
|
|
/* 0239A438 */ rbrew_write32(cpu->mem, _t23, cpu->r[29]);
|
|
/* 0239A43C */ _t24 = cpu->r[3] + 0x00000008u;
|
|
/* 0239A43C */ rbrew_write32(cpu->mem, _t24, cpu->r[29]);
|
|
L_0239A440: ; // 0x239a440
|
|
/* 0239A440 */ cpu->r[4] = 0x00000008u;
|
|
/* 0239A444 */ cpu->r[5] = cpu->r[30] + 0x0000000Cu;
|
|
/* 0239A448 */ cpu->r[3] = cpu->r[30];
|
|
/* 0239A44C */ Gambit_fn_028023A8(cpu);
|
|
L_0239A450: ; // 0x239a450
|
|
/* 0239A450 */ cpu->r[30] = cpu->r[31] + 0x00000078u;
|
|
/* 0239A450 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0239A454 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A454 */ _t26 = _t25 & 0x00000001u;
|
|
/* 0239A454 */ if (_t26) goto L_0239A458; else goto L_0239A468;
|
|
L_0239A458: ; // 0x239a458
|
|
/* 0239A458 */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0239A45C */ Gambit_fn_02801A78(cpu);
|
|
/* 0239A460 */ cpu->r[30] = cpu->r[3];
|
|
/* 0239A460 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0239A464 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A464 */ _t28 = _t27 & 0x00000001u;
|
|
/* 0239A464 */ if (_t28) goto L_0239A49C; else goto L_0239A468;
|
|
L_0239A468: ; // 0x239a468
|
|
/* 0239A468 */ cpu->r[3] = cpu->r[30];
|
|
/* 0239A468 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239A46C */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A46C */ _t30 = _t29 & 0x00000001u;
|
|
/* 0239A46C */ if (_t30) goto L_0239A470; else goto L_0239A480;
|
|
L_0239A470: ; // 0x239a470
|
|
/* 0239A470 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0239A474 */ Gambit_fn_02801A78(cpu);
|
|
/* 0239A478 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239A47C */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A47C */ _t32 = _t31 & 0x00000001u;
|
|
/* 0239A47C */ if (_t32) goto L_0239A48C; else goto L_0239A480;
|
|
L_0239A480: ; // 0x239a480
|
|
/* 0239A480 */ _t33 = cpu->r[3] + 0x00000004u;
|
|
/* 0239A480 */ rbrew_write32(cpu->mem, _t33, cpu->r[29]);
|
|
/* 0239A484 */ _t34 = cpu->r[3] + 0x00000000u;
|
|
/* 0239A484 */ rbrew_write32(cpu->mem, _t34, cpu->r[29]);
|
|
/* 0239A488 */ _t35 = cpu->r[3] + 0x00000008u;
|
|
/* 0239A488 */ rbrew_write32(cpu->mem, _t35, cpu->r[29]);
|
|
L_0239A48C: ; // 0x239a48c
|
|
/* 0239A48C */ cpu->r[4] = 0x00000008u;
|
|
/* 0239A490 */ cpu->r[5] = cpu->r[30] + 0x0000000Cu;
|
|
/* 0239A494 */ cpu->r[3] = cpu->r[30];
|
|
/* 0239A498 */ Gambit_fn_028023A8(cpu);
|
|
L_0239A49C: ; // 0x239a49c
|
|
/* 0239A49C */ cpu->r[30] = cpu->r[31] + 0x000000A8u;
|
|
/* 0239A49C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0239A4A0 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A4A0 */ _t37 = _t36 & 0x00000001u;
|
|
/* 0239A4A0 */ if (_t37) goto L_0239A4A4; else goto L_0239A4B4;
|
|
L_0239A4A4: ; // 0x239a4a4
|
|
/* 0239A4A4 */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0239A4A8 */ Gambit_fn_02801A78(cpu);
|
|
/* 0239A4AC */ cpu->r[30] = cpu->r[3];
|
|
/* 0239A4AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0239A4B0 */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A4B0 */ _t39 = _t38 & 0x00000001u;
|
|
/* 0239A4B0 */ if (_t39) goto L_0239A4E8; else goto L_0239A4B4;
|
|
L_0239A4B4: ; // 0x239a4b4
|
|
/* 0239A4B4 */ cpu->r[3] = cpu->r[30];
|
|
/* 0239A4B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239A4B8 */ _t40 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A4B8 */ _t41 = _t40 & 0x00000001u;
|
|
/* 0239A4B8 */ if (_t41) goto L_0239A4BC; else goto L_0239A4CC;
|
|
L_0239A4BC: ; // 0x239a4bc
|
|
/* 0239A4BC */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0239A4C0 */ Gambit_fn_02801A78(cpu);
|
|
/* 0239A4C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239A4C8 */ _t42 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A4C8 */ _t43 = _t42 & 0x00000001u;
|
|
/* 0239A4C8 */ if (_t43) goto L_0239A4D8; else goto L_0239A4CC;
|
|
L_0239A4CC: ; // 0x239a4cc
|
|
/* 0239A4CC */ _t44 = cpu->r[3] + 0x00000004u;
|
|
/* 0239A4CC */ rbrew_write32(cpu->mem, _t44, cpu->r[29]);
|
|
/* 0239A4D0 */ _t45 = cpu->r[3] + 0x00000000u;
|
|
/* 0239A4D0 */ rbrew_write32(cpu->mem, _t45, cpu->r[29]);
|
|
/* 0239A4D4 */ _t46 = cpu->r[3] + 0x00000008u;
|
|
/* 0239A4D4 */ rbrew_write32(cpu->mem, _t46, cpu->r[29]);
|
|
L_0239A4D8: ; // 0x239a4d8
|
|
/* 0239A4D8 */ cpu->r[4] = 0x00000008u;
|
|
/* 0239A4DC */ cpu->r[5] = cpu->r[30] + 0x0000000Cu;
|
|
/* 0239A4E0 */ cpu->r[3] = cpu->r[30];
|
|
/* 0239A4E4 */ Gambit_fn_028023A8(cpu);
|
|
L_0239A4E8: ; // 0x239a4e8
|
|
/* 0239A4E8 */ cpu->r[30] = cpu->r[31] + 0x000000D4u;
|
|
/* 0239A4E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0239A4EC */ _t47 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A4EC */ _t48 = _t47 & 0x00000001u;
|
|
/* 0239A4EC */ if (_t48) goto L_0239A4F0; else goto L_0239A500;
|
|
L_0239A4F0: ; // 0x239a4f0
|
|
/* 0239A4F0 */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0239A4F4 */ Gambit_fn_02801A78(cpu);
|
|
/* 0239A4F8 */ cpu->r[30] = cpu->r[3];
|
|
/* 0239A4F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0239A4FC */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A4FC */ _t50 = _t49 & 0x00000001u;
|
|
/* 0239A4FC */ if (_t50) goto L_0239A534; else goto L_0239A500;
|
|
L_0239A500: ; // 0x239a500
|
|
/* 0239A500 */ cpu->r[3] = cpu->r[30];
|
|
/* 0239A500 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239A504 */ _t51 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A504 */ _t52 = _t51 & 0x00000001u;
|
|
/* 0239A504 */ if (_t52) goto L_0239A508; else goto L_0239A518;
|
|
L_0239A508: ; // 0x239a508
|
|
/* 0239A508 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0239A50C */ Gambit_fn_02801A78(cpu);
|
|
/* 0239A510 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239A514 */ _t53 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A514 */ _t54 = _t53 & 0x00000001u;
|
|
/* 0239A514 */ if (_t54) goto L_0239A524; else goto L_0239A518;
|
|
L_0239A518: ; // 0x239a518
|
|
/* 0239A518 */ _t55 = cpu->r[3] + 0x00000004u;
|
|
/* 0239A518 */ rbrew_write32(cpu->mem, _t55, cpu->r[29]);
|
|
/* 0239A51C */ _t56 = cpu->r[3] + 0x00000000u;
|
|
/* 0239A51C */ rbrew_write32(cpu->mem, _t56, cpu->r[29]);
|
|
/* 0239A520 */ _t57 = cpu->r[3] + 0x00000008u;
|
|
/* 0239A520 */ rbrew_write32(cpu->mem, _t57, cpu->r[29]);
|
|
L_0239A524: ; // 0x239a524
|
|
/* 0239A524 */ cpu->r[4] = 0x00000008u;
|
|
/* 0239A528 */ cpu->r[5] = cpu->r[30] + 0x0000000Cu;
|
|
/* 0239A52C */ cpu->r[3] = cpu->r[30];
|
|
/* 0239A530 */ Gambit_fn_028023A8(cpu);
|
|
L_0239A534: ; // 0x239a534
|
|
/* 0239A534 */ cpu->r[30] = cpu->r[31] + 0x00000100u;
|
|
/* 0239A534 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0239A538 */ _t58 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A538 */ _t59 = _t58 & 0x00000001u;
|
|
/* 0239A538 */ if (_t59) goto L_0239A53C; else goto L_0239A54C;
|
|
L_0239A53C: ; // 0x239a53c
|
|
/* 0239A53C */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0239A540 */ Gambit_fn_02801A78(cpu);
|
|
/* 0239A544 */ cpu->r[30] = cpu->r[3];
|
|
/* 0239A544 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0239A548 */ _t60 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A548 */ _t61 = _t60 & 0x00000001u;
|
|
/* 0239A548 */ if (_t61) goto L_0239A580; else goto L_0239A54C;
|
|
L_0239A54C: ; // 0x239a54c
|
|
/* 0239A54C */ cpu->r[3] = cpu->r[30];
|
|
/* 0239A54C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239A550 */ _t62 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A550 */ _t63 = _t62 & 0x00000001u;
|
|
/* 0239A550 */ if (_t63) goto L_0239A554; else goto L_0239A564;
|
|
L_0239A554: ; // 0x239a554
|
|
/* 0239A554 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0239A558 */ Gambit_fn_02801A78(cpu);
|
|
/* 0239A55C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239A560 */ _t64 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A560 */ _t65 = _t64 & 0x00000001u;
|
|
/* 0239A560 */ if (_t65) goto L_0239A570; else goto L_0239A564;
|
|
L_0239A564: ; // 0x239a564
|
|
/* 0239A564 */ _t66 = cpu->r[3] + 0x00000004u;
|
|
/* 0239A564 */ rbrew_write32(cpu->mem, _t66, cpu->r[29]);
|
|
/* 0239A568 */ _t67 = cpu->r[3] + 0x00000000u;
|
|
/* 0239A568 */ rbrew_write32(cpu->mem, _t67, cpu->r[29]);
|
|
/* 0239A56C */ _t68 = cpu->r[3] + 0x00000008u;
|
|
/* 0239A56C */ rbrew_write32(cpu->mem, _t68, cpu->r[29]);
|
|
L_0239A570: ; // 0x239a570
|
|
/* 0239A570 */ cpu->r[4] = 0x00000008u;
|
|
/* 0239A574 */ cpu->r[5] = cpu->r[30] + 0x0000000Cu;
|
|
/* 0239A578 */ cpu->r[3] = cpu->r[30];
|
|
/* 0239A57C */ Gambit_fn_028023A8(cpu);
|
|
L_0239A580: ; // 0x239a580
|
|
/* 0239A580 */ cpu->r[30] = cpu->r[31] + 0x0000012Cu;
|
|
/* 0239A580 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0239A584 */ _t69 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A584 */ _t70 = _t69 & 0x00000001u;
|
|
/* 0239A584 */ if (_t70) goto L_0239A588; else goto L_0239A598;
|
|
L_0239A588: ; // 0x239a588
|
|
/* 0239A588 */ cpu->r[3] = 0x0000006Cu;
|
|
/* 0239A58C */ Gambit_fn_02801A78(cpu);
|
|
/* 0239A590 */ cpu->r[30] = cpu->r[3];
|
|
/* 0239A590 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0239A594 */ _t71 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A594 */ _t72 = _t71 & 0x00000001u;
|
|
/* 0239A594 */ if (_t72) goto L_0239A5CC; else goto L_0239A598;
|
|
L_0239A598: ; // 0x239a598
|
|
/* 0239A598 */ cpu->r[3] = cpu->r[30];
|
|
/* 0239A598 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239A59C */ _t73 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A59C */ _t74 = _t73 & 0x00000001u;
|
|
/* 0239A59C */ if (_t74) goto L_0239A5A0; else goto L_0239A5B0;
|
|
L_0239A5A0: ; // 0x239a5a0
|
|
/* 0239A5A0 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0239A5A4 */ Gambit_fn_02801A78(cpu);
|
|
/* 0239A5A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239A5AC */ _t75 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A5AC */ _t76 = _t75 & 0x00000001u;
|
|
/* 0239A5AC */ if (_t76) goto L_0239A5BC; else goto L_0239A5B0;
|
|
L_0239A5B0: ; // 0x239a5b0
|
|
/* 0239A5B0 */ _t77 = cpu->r[3] + 0x00000004u;
|
|
/* 0239A5B0 */ rbrew_write32(cpu->mem, _t77, cpu->r[29]);
|
|
/* 0239A5B4 */ _t78 = cpu->r[3] + 0x00000000u;
|
|
/* 0239A5B4 */ rbrew_write32(cpu->mem, _t78, cpu->r[29]);
|
|
/* 0239A5B8 */ _t79 = cpu->r[3] + 0x00000008u;
|
|
/* 0239A5B8 */ rbrew_write32(cpu->mem, _t79, cpu->r[29]);
|
|
L_0239A5BC: ; // 0x239a5bc
|
|
/* 0239A5BC */ cpu->r[4] = 0x00000018u;
|
|
/* 0239A5C0 */ cpu->r[5] = cpu->r[30] + 0x0000000Cu;
|
|
/* 0239A5C4 */ cpu->r[3] = cpu->r[30];
|
|
/* 0239A5C8 */ Gambit_fn_028023A8(cpu);
|
|
L_0239A5CC: ; // 0x239a5cc
|
|
/* 0239A5CC */ cpu->r[30] = cpu->r[31] + 0x00000198u;
|
|
/* 0239A5CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0239A5D0 */ _t80 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A5D0 */ _t81 = _t80 & 0x00000001u;
|
|
/* 0239A5D0 */ if (_t81) goto L_0239A5D4; else goto L_0239A5E4;
|
|
L_0239A5D4: ; // 0x239a5d4
|
|
/* 0239A5D4 */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0239A5D8 */ Gambit_fn_02801A78(cpu);
|
|
/* 0239A5DC */ cpu->r[30] = cpu->r[3];
|
|
/* 0239A5DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0239A5E0 */ _t82 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A5E0 */ _t83 = _t82 & 0x00000001u;
|
|
/* 0239A5E0 */ if (_t83) goto L_0239A618; else goto L_0239A5E4;
|
|
L_0239A5E4: ; // 0x239a5e4
|
|
/* 0239A5E4 */ cpu->r[3] = cpu->r[30];
|
|
/* 0239A5E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239A5E8 */ _t84 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A5E8 */ _t85 = _t84 & 0x00000001u;
|
|
/* 0239A5E8 */ if (_t85) goto L_0239A5EC; else goto L_0239A5FC;
|
|
L_0239A5EC: ; // 0x239a5ec
|
|
/* 0239A5EC */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0239A5F0 */ Gambit_fn_02801A78(cpu);
|
|
/* 0239A5F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239A5F8 */ _t86 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A5F8 */ _t87 = _t86 & 0x00000001u;
|
|
/* 0239A5F8 */ if (_t87) goto L_0239A608; else goto L_0239A5FC;
|
|
L_0239A5FC: ; // 0x239a5fc
|
|
/* 0239A5FC */ _t88 = cpu->r[3] + 0x00000004u;
|
|
/* 0239A5FC */ rbrew_write32(cpu->mem, _t88, cpu->r[29]);
|
|
/* 0239A600 */ _t89 = cpu->r[3] + 0x00000000u;
|
|
/* 0239A600 */ rbrew_write32(cpu->mem, _t89, cpu->r[29]);
|
|
/* 0239A604 */ _t90 = cpu->r[3] + 0x00000008u;
|
|
/* 0239A604 */ rbrew_write32(cpu->mem, _t90, cpu->r[29]);
|
|
L_0239A608: ; // 0x239a608
|
|
/* 0239A608 */ cpu->r[4] = 0x00000008u;
|
|
/* 0239A60C */ cpu->r[5] = cpu->r[30] + 0x0000000Cu;
|
|
/* 0239A610 */ cpu->r[3] = cpu->r[30];
|
|
/* 0239A614 */ Gambit_fn_028023A8(cpu);
|
|
L_0239A618: ; // 0x239a618
|
|
/* 0239A618 */ cpu->r[30] = cpu->r[31] + 0x000001C4u;
|
|
/* 0239A618 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0239A61C */ _t91 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A61C */ _t92 = _t91 & 0x00000001u;
|
|
/* 0239A61C */ if (_t92) goto L_0239A620; else goto L_0239A630;
|
|
L_0239A620: ; // 0x239a620
|
|
/* 0239A620 */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0239A624 */ Gambit_fn_02801A78(cpu);
|
|
/* 0239A628 */ cpu->r[30] = cpu->r[3];
|
|
/* 0239A628 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0239A62C */ _t93 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A62C */ _t94 = _t93 & 0x00000001u;
|
|
/* 0239A62C */ if (_t94) goto L_0239A664; else goto L_0239A630;
|
|
L_0239A630: ; // 0x239a630
|
|
/* 0239A630 */ cpu->r[3] = cpu->r[30];
|
|
/* 0239A630 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239A634 */ _t95 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A634 */ _t96 = _t95 & 0x00000001u;
|
|
/* 0239A634 */ if (_t96) goto L_0239A638; else goto L_0239A648;
|
|
L_0239A638: ; // 0x239a638
|
|
/* 0239A638 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0239A63C */ Gambit_fn_02801A78(cpu);
|
|
/* 0239A640 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239A644 */ _t97 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A644 */ _t98 = _t97 & 0x00000001u;
|
|
/* 0239A644 */ if (_t98) goto L_0239A654; else goto L_0239A648;
|
|
L_0239A648: ; // 0x239a648
|
|
/* 0239A648 */ _t99 = cpu->r[3] + 0x00000004u;
|
|
/* 0239A648 */ rbrew_write32(cpu->mem, _t99, cpu->r[29]);
|
|
/* 0239A64C */ _t100 = cpu->r[3] + 0x00000000u;
|
|
/* 0239A64C */ rbrew_write32(cpu->mem, _t100, cpu->r[29]);
|
|
/* 0239A650 */ _t101 = cpu->r[3] + 0x00000008u;
|
|
/* 0239A650 */ rbrew_write32(cpu->mem, _t101, cpu->r[29]);
|
|
L_0239A654: ; // 0x239a654
|
|
/* 0239A654 */ cpu->r[4] = 0x00000008u;
|
|
/* 0239A658 */ cpu->r[5] = cpu->r[30] + 0x0000000Cu;
|
|
/* 0239A65C */ cpu->r[3] = cpu->r[30];
|
|
/* 0239A660 */ Gambit_fn_028023A8(cpu);
|
|
L_0239A664: ; // 0x239a664
|
|
/* 0239A664 */ cpu->r[30] = cpu->r[31] + 0x000001F0u;
|
|
/* 0239A664 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0239A668 */ _t102 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A668 */ _t103 = _t102 & 0x00000001u;
|
|
/* 0239A668 */ if (_t103) goto L_0239A66C; else goto L_0239A67C;
|
|
L_0239A66C: ; // 0x239a66c
|
|
/* 0239A66C */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0239A670 */ Gambit_fn_02801A78(cpu);
|
|
/* 0239A674 */ cpu->r[30] = cpu->r[3];
|
|
/* 0239A674 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0239A678 */ _t104 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A678 */ _t105 = _t104 & 0x00000001u;
|
|
/* 0239A678 */ if (_t105) goto L_0239A6B0; else goto L_0239A67C;
|
|
L_0239A67C: ; // 0x239a67c
|
|
/* 0239A67C */ cpu->r[3] = cpu->r[30];
|
|
/* 0239A67C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239A680 */ _t106 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A680 */ _t107 = _t106 & 0x00000001u;
|
|
/* 0239A680 */ if (_t107) goto L_0239A684; else goto L_0239A694;
|
|
L_0239A684: ; // 0x239a684
|
|
/* 0239A684 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0239A688 */ Gambit_fn_02801A78(cpu);
|
|
/* 0239A68C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239A690 */ _t108 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A690 */ _t109 = _t108 & 0x00000001u;
|
|
/* 0239A690 */ if (_t109) goto L_0239A6A0; else goto L_0239A694;
|
|
L_0239A694: ; // 0x239a694
|
|
/* 0239A694 */ _t110 = cpu->r[3] + 0x00000004u;
|
|
/* 0239A694 */ rbrew_write32(cpu->mem, _t110, cpu->r[29]);
|
|
/* 0239A698 */ _t111 = cpu->r[3] + 0x00000000u;
|
|
/* 0239A698 */ rbrew_write32(cpu->mem, _t111, cpu->r[29]);
|
|
/* 0239A69C */ _t112 = cpu->r[3] + 0x00000008u;
|
|
/* 0239A69C */ rbrew_write32(cpu->mem, _t112, cpu->r[29]);
|
|
L_0239A6A0: ; // 0x239a6a0
|
|
/* 0239A6A0 */ cpu->r[4] = 0x00000008u;
|
|
/* 0239A6A4 */ cpu->r[5] = cpu->r[30] + 0x0000000Cu;
|
|
/* 0239A6A8 */ cpu->r[3] = cpu->r[30];
|
|
/* 0239A6AC */ Gambit_fn_028023A8(cpu);
|
|
L_0239A6B0: ; // 0x239a6b0
|
|
/* 0239A6B0 */ _t113 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239A6B0 */ cpu->r[29] = rbrew_read32(cpu->mem, _t113);
|
|
/* 0239A6B4 */ _t114 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239A6B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t114);
|
|
/* 0239A6B8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0239A6BC */ _t115 = cpu->r[1] + 0x00000010u;
|
|
/* 0239A6BC */ cpu->r[30] = rbrew_read32(cpu->mem, _t115);
|
|
/* 0239A6C0 */ cpu->lr = cpu->r[0];
|
|
/* 0239A6C4 */ _t116 = cpu->r[1] + 0x00000014u;
|
|
/* 0239A6C4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t116);
|
|
/* 0239A6C8 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0239A6CC */ return;
|
|
}
|
|
|
|
// fn_0239A380 @ 0x239a380
|
|
void Gambit_fn_0239A380(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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;
|
|
|
|
L_0239A380: ; // 0x239a380
|
|
/* 0239A380 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0239A380 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239A380 */ cpu->r[1] = _t0;
|
|
/* 0239A384 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239A384 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 0239A388 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0239A388 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0239A38C */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 0239A38C */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 0239A390 */ cpu->r[31] = cpu->r[3];
|
|
/* 0239A390 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0239A394 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239A394 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0239A398 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A398 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0239A398 */ if (_t6) goto L_0239A39C; else goto L_0239A3AC;
|
|
L_0239A39C: ; // 0x239a39c
|
|
/* 0239A39C */ cpu->r[3] = 0x0000021Cu;
|
|
/* 0239A3A0 */ Gambit_fn_02801A78(cpu);
|
|
/* 0239A3A4 */ cpu->r[31] = cpu->r[3];
|
|
/* 0239A3A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0239A3A8 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A3A8 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0239A3A8 */ if (_t8) goto L_0239A6B0; else goto L_0239A3AC;
|
|
L_0239A3AC: ; // 0x239a3ac
|
|
/* 0239A3AC */ cpu->r[29] = 0x00000000u;
|
|
/* 0239A3B0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0239A3B4 */ cpu->r[4] = 0x10080000u;
|
|
/* 0239A3B8 */ cpu->r[5] = cpu->r[29];
|
|
/* 0239A3BC */ cpu->r[6] = 0x00000121u;
|
|
/* 0239A3C0 */ cpu->r[4] = cpu->r[4] + 0x00006E58u;
|
|
/* 0239A3C4 */ cpu->r[7] = cpu->r[5];
|
|
/* 0239A3C8 */ Gambit_fn_026F080C(cpu);
|
|
/* 0239A3CC */ cpu->r[3] = cpu->r[31] + 0x00000024u;
|
|
/* 0239A3D0 */ Gambit_fn_02821D00(cpu);
|
|
/* 0239A3D4 */ cpu->r[10] = 0x10080000u;
|
|
/* 0239A3D8 */ _t9 = cpu->r[31] + 0x00000048u;
|
|
/* 0239A3D8 */ rbrew_write32(cpu->mem, _t9, cpu->r[29]);
|
|
/* 0239A3DC */ cpu->r[10] = cpu->r[10] + 0x00006E88u;
|
|
/* 0239A3E0 */ cpu->r[0] = 0x00000001u;
|
|
/* 0239A3E4 */ cpu->r[11] = 0x10080000u;
|
|
/* 0239A3E8 */ _t10 = cpu->r[31] + 0x00000000u;
|
|
/* 0239A3E8 */ rbrew_write32(cpu->mem, _t10, cpu->r[10]);
|
|
/* 0239A3EC */ cpu->r[11] = cpu->r[11] + 0x00006EB0u;
|
|
/* 0239A3F0 */ _t11 = cpu->r[31] + 0x00000044u;
|
|
/* 0239A3F0 */ rbrew_write8(cpu->mem, _t11, (uint8_t)cpu->r[0]);
|
|
/* 0239A3F4 */ cpu->r[12] = 0x10080000u;
|
|
/* 0239A3F8 */ _t12 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0239A3F8 */ rbrew_write32(cpu->mem, _t12, cpu->r[11]);
|
|
/* 0239A3FC */ cpu->r[12] = cpu->r[12] + 0x00006EC0u;
|
|
/* 0239A400 */ cpu->r[30] = cpu->r[31] + 0x0000004Cu;
|
|
/* 0239A400 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0239A404 */ _t13 = cpu->r[31] + 0x00000030u;
|
|
/* 0239A404 */ rbrew_write32(cpu->mem, _t13, cpu->r[12]);
|
|
/* 0239A408 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A408 */ _t15 = _t14 & 0x00000001u;
|
|
/* 0239A408 */ if (_t15) goto L_0239A40C; else goto L_0239A41C;
|
|
L_0239A40C: ; // 0x239a40c
|
|
/* 0239A40C */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0239A410 */ Gambit_fn_02801A78(cpu);
|
|
/* 0239A414 */ cpu->r[30] = cpu->r[3];
|
|
/* 0239A414 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0239A418 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A418 */ _t17 = _t16 & 0x00000001u;
|
|
/* 0239A418 */ if (_t17) goto L_0239A450; else goto L_0239A41C;
|
|
L_0239A41C: ; // 0x239a41c
|
|
/* 0239A41C */ cpu->r[3] = cpu->r[30];
|
|
/* 0239A41C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239A420 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A420 */ _t19 = _t18 & 0x00000001u;
|
|
/* 0239A420 */ if (_t19) goto L_0239A424; else goto L_0239A434;
|
|
L_0239A424: ; // 0x239a424
|
|
/* 0239A424 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0239A428 */ Gambit_fn_02801A78(cpu);
|
|
/* 0239A42C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239A430 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A430 */ _t21 = _t20 & 0x00000001u;
|
|
/* 0239A430 */ if (_t21) goto L_0239A440; else goto L_0239A434;
|
|
L_0239A434: ; // 0x239a434
|
|
/* 0239A434 */ _t22 = cpu->r[3] + 0x00000004u;
|
|
/* 0239A434 */ rbrew_write32(cpu->mem, _t22, cpu->r[29]);
|
|
/* 0239A438 */ _t23 = cpu->r[3] + 0x00000000u;
|
|
/* 0239A438 */ rbrew_write32(cpu->mem, _t23, cpu->r[29]);
|
|
/* 0239A43C */ _t24 = cpu->r[3] + 0x00000008u;
|
|
/* 0239A43C */ rbrew_write32(cpu->mem, _t24, cpu->r[29]);
|
|
L_0239A440: ; // 0x239a440
|
|
/* 0239A440 */ cpu->r[4] = 0x00000008u;
|
|
/* 0239A444 */ cpu->r[5] = cpu->r[30] + 0x0000000Cu;
|
|
/* 0239A448 */ cpu->r[3] = cpu->r[30];
|
|
/* 0239A44C */ Gambit_fn_028023A8(cpu);
|
|
L_0239A450: ; // 0x239a450
|
|
/* 0239A450 */ cpu->r[30] = cpu->r[31] + 0x00000078u;
|
|
/* 0239A450 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0239A454 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A454 */ _t26 = _t25 & 0x00000001u;
|
|
/* 0239A454 */ if (_t26) goto L_0239A458; else goto L_0239A468;
|
|
L_0239A458: ; // 0x239a458
|
|
/* 0239A458 */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0239A45C */ Gambit_fn_02801A78(cpu);
|
|
/* 0239A460 */ cpu->r[30] = cpu->r[3];
|
|
/* 0239A460 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0239A464 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A464 */ _t28 = _t27 & 0x00000001u;
|
|
/* 0239A464 */ if (_t28) goto L_0239A49C; else goto L_0239A468;
|
|
L_0239A468: ; // 0x239a468
|
|
/* 0239A468 */ cpu->r[3] = cpu->r[30];
|
|
/* 0239A468 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239A46C */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A46C */ _t30 = _t29 & 0x00000001u;
|
|
/* 0239A46C */ if (_t30) goto L_0239A470; else goto L_0239A480;
|
|
L_0239A470: ; // 0x239a470
|
|
/* 0239A470 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0239A474 */ Gambit_fn_02801A78(cpu);
|
|
/* 0239A478 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239A47C */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A47C */ _t32 = _t31 & 0x00000001u;
|
|
/* 0239A47C */ if (_t32) goto L_0239A48C; else goto L_0239A480;
|
|
L_0239A480: ; // 0x239a480
|
|
/* 0239A480 */ _t33 = cpu->r[3] + 0x00000004u;
|
|
/* 0239A480 */ rbrew_write32(cpu->mem, _t33, cpu->r[29]);
|
|
/* 0239A484 */ _t34 = cpu->r[3] + 0x00000000u;
|
|
/* 0239A484 */ rbrew_write32(cpu->mem, _t34, cpu->r[29]);
|
|
/* 0239A488 */ _t35 = cpu->r[3] + 0x00000008u;
|
|
/* 0239A488 */ rbrew_write32(cpu->mem, _t35, cpu->r[29]);
|
|
L_0239A48C: ; // 0x239a48c
|
|
/* 0239A48C */ cpu->r[4] = 0x00000008u;
|
|
/* 0239A490 */ cpu->r[5] = cpu->r[30] + 0x0000000Cu;
|
|
/* 0239A494 */ cpu->r[3] = cpu->r[30];
|
|
/* 0239A498 */ Gambit_fn_028023A8(cpu);
|
|
L_0239A49C: ; // 0x239a49c
|
|
/* 0239A49C */ cpu->r[30] = cpu->r[31] + 0x000000A8u;
|
|
/* 0239A49C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0239A4A0 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A4A0 */ _t37 = _t36 & 0x00000001u;
|
|
/* 0239A4A0 */ if (_t37) goto L_0239A4A4; else goto L_0239A4B4;
|
|
L_0239A4A4: ; // 0x239a4a4
|
|
/* 0239A4A4 */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0239A4A8 */ Gambit_fn_02801A78(cpu);
|
|
/* 0239A4AC */ cpu->r[30] = cpu->r[3];
|
|
/* 0239A4AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0239A4B0 */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A4B0 */ _t39 = _t38 & 0x00000001u;
|
|
/* 0239A4B0 */ if (_t39) goto L_0239A4E8; else goto L_0239A4B4;
|
|
L_0239A4B4: ; // 0x239a4b4
|
|
/* 0239A4B4 */ cpu->r[3] = cpu->r[30];
|
|
/* 0239A4B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239A4B8 */ _t40 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A4B8 */ _t41 = _t40 & 0x00000001u;
|
|
/* 0239A4B8 */ if (_t41) goto L_0239A4BC; else goto L_0239A4CC;
|
|
L_0239A4BC: ; // 0x239a4bc
|
|
/* 0239A4BC */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0239A4C0 */ Gambit_fn_02801A78(cpu);
|
|
/* 0239A4C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239A4C8 */ _t42 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A4C8 */ _t43 = _t42 & 0x00000001u;
|
|
/* 0239A4C8 */ if (_t43) goto L_0239A4D8; else goto L_0239A4CC;
|
|
L_0239A4CC: ; // 0x239a4cc
|
|
/* 0239A4CC */ _t44 = cpu->r[3] + 0x00000004u;
|
|
/* 0239A4CC */ rbrew_write32(cpu->mem, _t44, cpu->r[29]);
|
|
/* 0239A4D0 */ _t45 = cpu->r[3] + 0x00000000u;
|
|
/* 0239A4D0 */ rbrew_write32(cpu->mem, _t45, cpu->r[29]);
|
|
/* 0239A4D4 */ _t46 = cpu->r[3] + 0x00000008u;
|
|
/* 0239A4D4 */ rbrew_write32(cpu->mem, _t46, cpu->r[29]);
|
|
L_0239A4D8: ; // 0x239a4d8
|
|
/* 0239A4D8 */ cpu->r[4] = 0x00000008u;
|
|
/* 0239A4DC */ cpu->r[5] = cpu->r[30] + 0x0000000Cu;
|
|
/* 0239A4E0 */ cpu->r[3] = cpu->r[30];
|
|
/* 0239A4E4 */ Gambit_fn_028023A8(cpu);
|
|
L_0239A4E8: ; // 0x239a4e8
|
|
/* 0239A4E8 */ cpu->r[30] = cpu->r[31] + 0x000000D4u;
|
|
/* 0239A4E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0239A4EC */ _t47 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A4EC */ _t48 = _t47 & 0x00000001u;
|
|
/* 0239A4EC */ if (_t48) goto L_0239A4F0; else goto L_0239A500;
|
|
L_0239A4F0: ; // 0x239a4f0
|
|
/* 0239A4F0 */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0239A4F4 */ Gambit_fn_02801A78(cpu);
|
|
/* 0239A4F8 */ cpu->r[30] = cpu->r[3];
|
|
/* 0239A4F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0239A4FC */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A4FC */ _t50 = _t49 & 0x00000001u;
|
|
/* 0239A4FC */ if (_t50) goto L_0239A534; else goto L_0239A500;
|
|
L_0239A500: ; // 0x239a500
|
|
/* 0239A500 */ cpu->r[3] = cpu->r[30];
|
|
/* 0239A500 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239A504 */ _t51 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A504 */ _t52 = _t51 & 0x00000001u;
|
|
/* 0239A504 */ if (_t52) goto L_0239A508; else goto L_0239A518;
|
|
L_0239A508: ; // 0x239a508
|
|
/* 0239A508 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0239A50C */ Gambit_fn_02801A78(cpu);
|
|
/* 0239A510 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239A514 */ _t53 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A514 */ _t54 = _t53 & 0x00000001u;
|
|
/* 0239A514 */ if (_t54) goto L_0239A524; else goto L_0239A518;
|
|
L_0239A518: ; // 0x239a518
|
|
/* 0239A518 */ _t55 = cpu->r[3] + 0x00000004u;
|
|
/* 0239A518 */ rbrew_write32(cpu->mem, _t55, cpu->r[29]);
|
|
/* 0239A51C */ _t56 = cpu->r[3] + 0x00000000u;
|
|
/* 0239A51C */ rbrew_write32(cpu->mem, _t56, cpu->r[29]);
|
|
/* 0239A520 */ _t57 = cpu->r[3] + 0x00000008u;
|
|
/* 0239A520 */ rbrew_write32(cpu->mem, _t57, cpu->r[29]);
|
|
L_0239A524: ; // 0x239a524
|
|
/* 0239A524 */ cpu->r[4] = 0x00000008u;
|
|
/* 0239A528 */ cpu->r[5] = cpu->r[30] + 0x0000000Cu;
|
|
/* 0239A52C */ cpu->r[3] = cpu->r[30];
|
|
/* 0239A530 */ Gambit_fn_028023A8(cpu);
|
|
L_0239A534: ; // 0x239a534
|
|
/* 0239A534 */ cpu->r[30] = cpu->r[31] + 0x00000100u;
|
|
/* 0239A534 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0239A538 */ _t58 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A538 */ _t59 = _t58 & 0x00000001u;
|
|
/* 0239A538 */ if (_t59) goto L_0239A53C; else goto L_0239A54C;
|
|
L_0239A53C: ; // 0x239a53c
|
|
/* 0239A53C */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0239A540 */ Gambit_fn_02801A78(cpu);
|
|
/* 0239A544 */ cpu->r[30] = cpu->r[3];
|
|
/* 0239A544 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0239A548 */ _t60 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A548 */ _t61 = _t60 & 0x00000001u;
|
|
/* 0239A548 */ if (_t61) goto L_0239A580; else goto L_0239A54C;
|
|
L_0239A54C: ; // 0x239a54c
|
|
/* 0239A54C */ cpu->r[3] = cpu->r[30];
|
|
/* 0239A54C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239A550 */ _t62 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A550 */ _t63 = _t62 & 0x00000001u;
|
|
/* 0239A550 */ if (_t63) goto L_0239A554; else goto L_0239A564;
|
|
L_0239A554: ; // 0x239a554
|
|
/* 0239A554 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0239A558 */ Gambit_fn_02801A78(cpu);
|
|
/* 0239A55C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239A560 */ _t64 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A560 */ _t65 = _t64 & 0x00000001u;
|
|
/* 0239A560 */ if (_t65) goto L_0239A570; else goto L_0239A564;
|
|
L_0239A564: ; // 0x239a564
|
|
/* 0239A564 */ _t66 = cpu->r[3] + 0x00000004u;
|
|
/* 0239A564 */ rbrew_write32(cpu->mem, _t66, cpu->r[29]);
|
|
/* 0239A568 */ _t67 = cpu->r[3] + 0x00000000u;
|
|
/* 0239A568 */ rbrew_write32(cpu->mem, _t67, cpu->r[29]);
|
|
/* 0239A56C */ _t68 = cpu->r[3] + 0x00000008u;
|
|
/* 0239A56C */ rbrew_write32(cpu->mem, _t68, cpu->r[29]);
|
|
L_0239A570: ; // 0x239a570
|
|
/* 0239A570 */ cpu->r[4] = 0x00000008u;
|
|
/* 0239A574 */ cpu->r[5] = cpu->r[30] + 0x0000000Cu;
|
|
/* 0239A578 */ cpu->r[3] = cpu->r[30];
|
|
/* 0239A57C */ Gambit_fn_028023A8(cpu);
|
|
L_0239A580: ; // 0x239a580
|
|
/* 0239A580 */ cpu->r[30] = cpu->r[31] + 0x0000012Cu;
|
|
/* 0239A580 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0239A584 */ _t69 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A584 */ _t70 = _t69 & 0x00000001u;
|
|
/* 0239A584 */ if (_t70) goto L_0239A588; else goto L_0239A598;
|
|
L_0239A588: ; // 0x239a588
|
|
/* 0239A588 */ cpu->r[3] = 0x0000006Cu;
|
|
/* 0239A58C */ Gambit_fn_02801A78(cpu);
|
|
/* 0239A590 */ cpu->r[30] = cpu->r[3];
|
|
/* 0239A590 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0239A594 */ _t71 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A594 */ _t72 = _t71 & 0x00000001u;
|
|
/* 0239A594 */ if (_t72) goto L_0239A5CC; else goto L_0239A598;
|
|
L_0239A598: ; // 0x239a598
|
|
/* 0239A598 */ cpu->r[3] = cpu->r[30];
|
|
/* 0239A598 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239A59C */ _t73 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A59C */ _t74 = _t73 & 0x00000001u;
|
|
/* 0239A59C */ if (_t74) goto L_0239A5A0; else goto L_0239A5B0;
|
|
L_0239A5A0: ; // 0x239a5a0
|
|
/* 0239A5A0 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0239A5A4 */ Gambit_fn_02801A78(cpu);
|
|
/* 0239A5A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239A5AC */ _t75 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A5AC */ _t76 = _t75 & 0x00000001u;
|
|
/* 0239A5AC */ if (_t76) goto L_0239A5BC; else goto L_0239A5B0;
|
|
L_0239A5B0: ; // 0x239a5b0
|
|
/* 0239A5B0 */ _t77 = cpu->r[3] + 0x00000004u;
|
|
/* 0239A5B0 */ rbrew_write32(cpu->mem, _t77, cpu->r[29]);
|
|
/* 0239A5B4 */ _t78 = cpu->r[3] + 0x00000000u;
|
|
/* 0239A5B4 */ rbrew_write32(cpu->mem, _t78, cpu->r[29]);
|
|
/* 0239A5B8 */ _t79 = cpu->r[3] + 0x00000008u;
|
|
/* 0239A5B8 */ rbrew_write32(cpu->mem, _t79, cpu->r[29]);
|
|
L_0239A5BC: ; // 0x239a5bc
|
|
/* 0239A5BC */ cpu->r[4] = 0x00000018u;
|
|
/* 0239A5C0 */ cpu->r[5] = cpu->r[30] + 0x0000000Cu;
|
|
/* 0239A5C4 */ cpu->r[3] = cpu->r[30];
|
|
/* 0239A5C8 */ Gambit_fn_028023A8(cpu);
|
|
L_0239A5CC: ; // 0x239a5cc
|
|
/* 0239A5CC */ cpu->r[30] = cpu->r[31] + 0x00000198u;
|
|
/* 0239A5CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0239A5D0 */ _t80 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A5D0 */ _t81 = _t80 & 0x00000001u;
|
|
/* 0239A5D0 */ if (_t81) goto L_0239A5D4; else goto L_0239A5E4;
|
|
L_0239A5D4: ; // 0x239a5d4
|
|
/* 0239A5D4 */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0239A5D8 */ Gambit_fn_02801A78(cpu);
|
|
/* 0239A5DC */ cpu->r[30] = cpu->r[3];
|
|
/* 0239A5DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0239A5E0 */ _t82 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A5E0 */ _t83 = _t82 & 0x00000001u;
|
|
/* 0239A5E0 */ if (_t83) goto L_0239A618; else goto L_0239A5E4;
|
|
L_0239A5E4: ; // 0x239a5e4
|
|
/* 0239A5E4 */ cpu->r[3] = cpu->r[30];
|
|
/* 0239A5E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239A5E8 */ _t84 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A5E8 */ _t85 = _t84 & 0x00000001u;
|
|
/* 0239A5E8 */ if (_t85) goto L_0239A5EC; else goto L_0239A5FC;
|
|
L_0239A5EC: ; // 0x239a5ec
|
|
/* 0239A5EC */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0239A5F0 */ Gambit_fn_02801A78(cpu);
|
|
/* 0239A5F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239A5F8 */ _t86 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A5F8 */ _t87 = _t86 & 0x00000001u;
|
|
/* 0239A5F8 */ if (_t87) goto L_0239A608; else goto L_0239A5FC;
|
|
L_0239A5FC: ; // 0x239a5fc
|
|
/* 0239A5FC */ _t88 = cpu->r[3] + 0x00000004u;
|
|
/* 0239A5FC */ rbrew_write32(cpu->mem, _t88, cpu->r[29]);
|
|
/* 0239A600 */ _t89 = cpu->r[3] + 0x00000000u;
|
|
/* 0239A600 */ rbrew_write32(cpu->mem, _t89, cpu->r[29]);
|
|
/* 0239A604 */ _t90 = cpu->r[3] + 0x00000008u;
|
|
/* 0239A604 */ rbrew_write32(cpu->mem, _t90, cpu->r[29]);
|
|
L_0239A608: ; // 0x239a608
|
|
/* 0239A608 */ cpu->r[4] = 0x00000008u;
|
|
/* 0239A60C */ cpu->r[5] = cpu->r[30] + 0x0000000Cu;
|
|
/* 0239A610 */ cpu->r[3] = cpu->r[30];
|
|
/* 0239A614 */ Gambit_fn_028023A8(cpu);
|
|
L_0239A618: ; // 0x239a618
|
|
/* 0239A618 */ cpu->r[30] = cpu->r[31] + 0x000001C4u;
|
|
/* 0239A618 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0239A61C */ _t91 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A61C */ _t92 = _t91 & 0x00000001u;
|
|
/* 0239A61C */ if (_t92) goto L_0239A620; else goto L_0239A630;
|
|
L_0239A620: ; // 0x239a620
|
|
/* 0239A620 */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0239A624 */ Gambit_fn_02801A78(cpu);
|
|
/* 0239A628 */ cpu->r[30] = cpu->r[3];
|
|
/* 0239A628 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0239A62C */ _t93 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A62C */ _t94 = _t93 & 0x00000001u;
|
|
/* 0239A62C */ if (_t94) goto L_0239A664; else goto L_0239A630;
|
|
L_0239A630: ; // 0x239a630
|
|
/* 0239A630 */ cpu->r[3] = cpu->r[30];
|
|
/* 0239A630 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239A634 */ _t95 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A634 */ _t96 = _t95 & 0x00000001u;
|
|
/* 0239A634 */ if (_t96) goto L_0239A638; else goto L_0239A648;
|
|
L_0239A638: ; // 0x239a638
|
|
/* 0239A638 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0239A63C */ Gambit_fn_02801A78(cpu);
|
|
/* 0239A640 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239A644 */ _t97 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A644 */ _t98 = _t97 & 0x00000001u;
|
|
/* 0239A644 */ if (_t98) goto L_0239A654; else goto L_0239A648;
|
|
L_0239A648: ; // 0x239a648
|
|
/* 0239A648 */ _t99 = cpu->r[3] + 0x00000004u;
|
|
/* 0239A648 */ rbrew_write32(cpu->mem, _t99, cpu->r[29]);
|
|
/* 0239A64C */ _t100 = cpu->r[3] + 0x00000000u;
|
|
/* 0239A64C */ rbrew_write32(cpu->mem, _t100, cpu->r[29]);
|
|
/* 0239A650 */ _t101 = cpu->r[3] + 0x00000008u;
|
|
/* 0239A650 */ rbrew_write32(cpu->mem, _t101, cpu->r[29]);
|
|
L_0239A654: ; // 0x239a654
|
|
/* 0239A654 */ cpu->r[4] = 0x00000008u;
|
|
/* 0239A658 */ cpu->r[5] = cpu->r[30] + 0x0000000Cu;
|
|
/* 0239A65C */ cpu->r[3] = cpu->r[30];
|
|
/* 0239A660 */ Gambit_fn_028023A8(cpu);
|
|
L_0239A664: ; // 0x239a664
|
|
/* 0239A664 */ cpu->r[30] = cpu->r[31] + 0x000001F0u;
|
|
/* 0239A664 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0239A668 */ _t102 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A668 */ _t103 = _t102 & 0x00000001u;
|
|
/* 0239A668 */ if (_t103) goto L_0239A66C; else goto L_0239A67C;
|
|
L_0239A66C: ; // 0x239a66c
|
|
/* 0239A66C */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0239A670 */ Gambit_fn_02801A78(cpu);
|
|
/* 0239A674 */ cpu->r[30] = cpu->r[3];
|
|
/* 0239A674 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0239A678 */ _t104 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A678 */ _t105 = _t104 & 0x00000001u;
|
|
/* 0239A678 */ if (_t105) goto L_0239A6B0; else goto L_0239A67C;
|
|
L_0239A67C: ; // 0x239a67c
|
|
/* 0239A67C */ cpu->r[3] = cpu->r[30];
|
|
/* 0239A67C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239A680 */ _t106 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A680 */ _t107 = _t106 & 0x00000001u;
|
|
/* 0239A680 */ if (_t107) goto L_0239A684; else goto L_0239A694;
|
|
L_0239A684: ; // 0x239a684
|
|
/* 0239A684 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0239A688 */ Gambit_fn_02801A78(cpu);
|
|
/* 0239A68C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239A690 */ _t108 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A690 */ _t109 = _t108 & 0x00000001u;
|
|
/* 0239A690 */ if (_t109) goto L_0239A6A0; else goto L_0239A694;
|
|
L_0239A694: ; // 0x239a694
|
|
/* 0239A694 */ _t110 = cpu->r[3] + 0x00000004u;
|
|
/* 0239A694 */ rbrew_write32(cpu->mem, _t110, cpu->r[29]);
|
|
/* 0239A698 */ _t111 = cpu->r[3] + 0x00000000u;
|
|
/* 0239A698 */ rbrew_write32(cpu->mem, _t111, cpu->r[29]);
|
|
/* 0239A69C */ _t112 = cpu->r[3] + 0x00000008u;
|
|
/* 0239A69C */ rbrew_write32(cpu->mem, _t112, cpu->r[29]);
|
|
L_0239A6A0: ; // 0x239a6a0
|
|
/* 0239A6A0 */ cpu->r[4] = 0x00000008u;
|
|
/* 0239A6A4 */ cpu->r[5] = cpu->r[30] + 0x0000000Cu;
|
|
/* 0239A6A8 */ cpu->r[3] = cpu->r[30];
|
|
/* 0239A6AC */ Gambit_fn_028023A8(cpu);
|
|
L_0239A6B0: ; // 0x239a6b0
|
|
/* 0239A6B0 */ _t113 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239A6B0 */ cpu->r[29] = rbrew_read32(cpu->mem, _t113);
|
|
/* 0239A6B4 */ _t114 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239A6B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t114);
|
|
/* 0239A6B8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0239A6BC */ _t115 = cpu->r[1] + 0x00000010u;
|
|
/* 0239A6BC */ cpu->r[30] = rbrew_read32(cpu->mem, _t115);
|
|
/* 0239A6C0 */ cpu->lr = cpu->r[0];
|
|
/* 0239A6C4 */ _t116 = cpu->r[1] + 0x00000014u;
|
|
/* 0239A6C4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t116);
|
|
/* 0239A6C8 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0239A6CC */ return;
|
|
}
|
|
|
|
// fn_0239A6D0 @ 0x239a6d0
|
|
void Gambit_fn_0239A6D0(CPUState* 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_0239A6D0: ; // 0x239a6d0
|
|
/* 0239A6D0 */ cpu->r[0] = cpu->lr;
|
|
/* 0239A6D4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0239A6D4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239A6D4 */ cpu->r[1] = _t0;
|
|
/* 0239A6D8 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 0239A6D8 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0239A6DC */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0239A6DC */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 0239A6E0 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239A6E0 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 0239A6E4 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 0239A6E4 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 0239A6E8 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239A6E8 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0239A6EC */ cpu->r[29] = 0x101C0000u;
|
|
/* 0239A6F0 */ cpu->r[30] = cpu->r[3];
|
|
/* 0239A6F4 */ _t6 = cpu->r[29] + 0x00005BA0u;
|
|
/* 0239A6F4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0239A6F4 */ cpu->r[29] = _t6;
|
|
/* 0239A6F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239A6FC */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A6FC */ _t8 = _t7 & 0x00000001u;
|
|
/* 0239A6FC */ if (_t8) goto L_0239A700; else goto L_0239A750;
|
|
L_0239A700: ; // 0x239a700
|
|
/* 0239A700 */ cpu->r[4] = cpu->r[30];
|
|
/* 0239A704 */ cpu->r[3] = 0x0000021Cu;
|
|
/* 0239A708 */ cpu->r[5] = 0x00000004u;
|
|
/* 0239A70C */ Gambit_fn_02801ADC(cpu);
|
|
/* 0239A710 */ cpu->r[31] = cpu->r[3];
|
|
/* 0239A714 */ cpu->r[28] = cpu->r[31] + 0x00000034u;
|
|
/* 0239A714 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 0239A718 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A718 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0239A718 */ if (_t10) goto L_0239A738; else goto L_0239A71C;
|
|
L_0239A71C: ; // 0x239a71c
|
|
/* 0239A71C */ cpu->r[5] = 0x00000003u;
|
|
/* 0239A720 */ cpu->r[4] = cpu->r[30];
|
|
/* 0239A724 */ cpu->r[3] = cpu->r[28];
|
|
/* 0239A728 */ Gambit_fn_02821D88(cpu);
|
|
/* 0239A72C */ cpu->r[0] = 0x10080000u;
|
|
/* 0239A730 */ cpu->r[0] = cpu->r[0] + 0x00006E78u;
|
|
/* 0239A734 */ _t11 = cpu->r[28] + 0x0000000Cu;
|
|
/* 0239A734 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
L_0239A738: ; // 0x239a738
|
|
/* 0239A738 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0239A73C */ cpu->r[3] = cpu->r[31];
|
|
/* 0239A73C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239A740 */ _t12 = cpu->r[12] + 0x00005BA4u;
|
|
/* 0239A740 */ rbrew_write32(cpu->mem, _t12, cpu->r[28]);
|
|
/* 0239A744 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A744 */ _t14 = _t13 & 0x00000001u;
|
|
/* 0239A744 */ if (_t14) goto L_0239A74C; else goto L_0239A748;
|
|
L_0239A748: ; // 0x239a748
|
|
/* 0239A748 */ Gambit_fn_0239A37C(cpu);
|
|
L_0239A74C: ; // 0x239a74c
|
|
/* 0239A74C */ _t15 = cpu->r[29] + 0x00000000u;
|
|
/* 0239A74C */ rbrew_write32(cpu->mem, _t15, cpu->r[3]);
|
|
L_0239A750: ; // 0x239a750
|
|
/* 0239A750 */ _t16 = cpu->r[1] + 0x00000008u;
|
|
/* 0239A750 */ cpu->r[28] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0239A754 */ _t17 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239A754 */ cpu->r[29] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0239A758 */ _t18 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239A758 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0239A75C */ _t19 = cpu->r[1] + 0x00000010u;
|
|
/* 0239A75C */ cpu->r[30] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0239A760 */ cpu->lr = cpu->r[0];
|
|
/* 0239A764 */ _t20 = cpu->r[1] + 0x00000014u;
|
|
/* 0239A764 */ cpu->r[31] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0239A768 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0239A76C */ return;
|
|
}
|
|
|
|
// fn_0239A6D4 @ 0x239a6d4
|
|
void Gambit_fn_0239A6D4(CPUState* 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_0239A6D4: ; // 0x239a6d4
|
|
/* 0239A6D4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0239A6D4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239A6D4 */ cpu->r[1] = _t0;
|
|
/* 0239A6D8 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 0239A6D8 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0239A6DC */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0239A6DC */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 0239A6E0 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239A6E0 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 0239A6E4 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 0239A6E4 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 0239A6E8 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239A6E8 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0239A6EC */ cpu->r[29] = 0x101C0000u;
|
|
/* 0239A6F0 */ cpu->r[30] = cpu->r[3];
|
|
/* 0239A6F4 */ _t6 = cpu->r[29] + 0x00005BA0u;
|
|
/* 0239A6F4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0239A6F4 */ cpu->r[29] = _t6;
|
|
/* 0239A6F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239A6FC */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A6FC */ _t8 = _t7 & 0x00000001u;
|
|
/* 0239A6FC */ if (_t8) goto L_0239A700; else goto L_0239A750;
|
|
L_0239A700: ; // 0x239a700
|
|
/* 0239A700 */ cpu->r[4] = cpu->r[30];
|
|
/* 0239A704 */ cpu->r[3] = 0x0000021Cu;
|
|
/* 0239A708 */ cpu->r[5] = 0x00000004u;
|
|
/* 0239A70C */ Gambit_fn_02801ADC(cpu);
|
|
/* 0239A710 */ cpu->r[31] = cpu->r[3];
|
|
/* 0239A714 */ cpu->r[28] = cpu->r[31] + 0x00000034u;
|
|
/* 0239A714 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 0239A718 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A718 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0239A718 */ if (_t10) goto L_0239A738; else goto L_0239A71C;
|
|
L_0239A71C: ; // 0x239a71c
|
|
/* 0239A71C */ cpu->r[5] = 0x00000003u;
|
|
/* 0239A720 */ cpu->r[4] = cpu->r[30];
|
|
/* 0239A724 */ cpu->r[3] = cpu->r[28];
|
|
/* 0239A728 */ Gambit_fn_02821D88(cpu);
|
|
/* 0239A72C */ cpu->r[0] = 0x10080000u;
|
|
/* 0239A730 */ cpu->r[0] = cpu->r[0] + 0x00006E78u;
|
|
/* 0239A734 */ _t11 = cpu->r[28] + 0x0000000Cu;
|
|
/* 0239A734 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
L_0239A738: ; // 0x239a738
|
|
/* 0239A738 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0239A73C */ cpu->r[3] = cpu->r[31];
|
|
/* 0239A73C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239A740 */ _t12 = cpu->r[12] + 0x00005BA4u;
|
|
/* 0239A740 */ rbrew_write32(cpu->mem, _t12, cpu->r[28]);
|
|
/* 0239A744 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A744 */ _t14 = _t13 & 0x00000001u;
|
|
/* 0239A744 */ if (_t14) goto L_0239A74C; else goto L_0239A748;
|
|
L_0239A748: ; // 0x239a748
|
|
/* 0239A748 */ Gambit_fn_0239A37C(cpu);
|
|
L_0239A74C: ; // 0x239a74c
|
|
/* 0239A74C */ _t15 = cpu->r[29] + 0x00000000u;
|
|
/* 0239A74C */ rbrew_write32(cpu->mem, _t15, cpu->r[3]);
|
|
L_0239A750: ; // 0x239a750
|
|
/* 0239A750 */ _t16 = cpu->r[1] + 0x00000008u;
|
|
/* 0239A750 */ cpu->r[28] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0239A754 */ _t17 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239A754 */ cpu->r[29] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0239A758 */ _t18 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239A758 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0239A75C */ _t19 = cpu->r[1] + 0x00000010u;
|
|
/* 0239A75C */ cpu->r[30] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0239A760 */ cpu->lr = cpu->r[0];
|
|
/* 0239A764 */ _t20 = cpu->r[1] + 0x00000014u;
|
|
/* 0239A764 */ cpu->r[31] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0239A768 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0239A76C */ return;
|
|
}
|
|
|
|
// fn_0239A770 @ 0x239a770
|
|
void Gambit_fn_0239A770(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0239A770: ; // 0x239a770
|
|
/* 0239A770 */ cpu->r[0] = cpu->lr;
|
|
/* 0239A774 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0239A774 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239A774 */ cpu->r[1] = _t0;
|
|
/* 0239A778 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239A778 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0239A77C */ cpu->r[31] = cpu->r[3];
|
|
/* 0239A780 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 0239A784 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0239A784 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0239A788 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A788 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0239A788 */ if (_t4) goto L_0239A78C; else goto L_0239A7A4;
|
|
L_0239A78C: ; // 0x239a78c
|
|
/* 0239A78C */ Gambit_fn_027F5880(cpu);
|
|
/* 0239A790 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239A794 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A794 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0239A794 */ if (_t6) goto L_0239A7A4; else goto L_0239A798;
|
|
L_0239A798: ; // 0x239a798
|
|
/* 0239A798 */ cpu->r[0] = 0x00000000u;
|
|
/* 0239A79C */ _t7 = cpu->r[31] + 0x00000044u;
|
|
/* 0239A79C */ rbrew_write8(cpu->mem, _t7, (uint8_t)cpu->r[0]);
|
|
/* 0239A7A0 */ goto L_0239A7AC;
|
|
L_0239A7A4: ; // 0x239a7a4
|
|
/* 0239A7A4 */ cpu->r[0] = 0x00000001u;
|
|
/* 0239A7A8 */ _t8 = cpu->r[31] + 0x00000044u;
|
|
/* 0239A7A8 */ rbrew_write8(cpu->mem, _t8, (uint8_t)cpu->r[0]);
|
|
L_0239A7AC: ; // 0x239a7ac
|
|
/* 0239A7AC */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0239A7AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0239A7B0 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239A7B0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0239A7B4 */ cpu->lr = cpu->r[0];
|
|
/* 0239A7B8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0239A7BC */ return;
|
|
}
|
|
|
|
// fn_0239A774 @ 0x239a774
|
|
void Gambit_fn_0239A774(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0239A774: ; // 0x239a774
|
|
/* 0239A774 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0239A774 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239A774 */ cpu->r[1] = _t0;
|
|
/* 0239A778 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239A778 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0239A77C */ cpu->r[31] = cpu->r[3];
|
|
/* 0239A780 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 0239A784 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0239A784 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0239A788 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A788 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0239A788 */ if (_t4) goto L_0239A78C; else goto L_0239A7A4;
|
|
L_0239A78C: ; // 0x239a78c
|
|
/* 0239A78C */ Gambit_fn_027F5880(cpu);
|
|
/* 0239A790 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239A794 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A794 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0239A794 */ if (_t6) goto L_0239A7A4; else goto L_0239A798;
|
|
L_0239A798: ; // 0x239a798
|
|
/* 0239A798 */ cpu->r[0] = 0x00000000u;
|
|
/* 0239A79C */ _t7 = cpu->r[31] + 0x00000044u;
|
|
/* 0239A79C */ rbrew_write8(cpu->mem, _t7, (uint8_t)cpu->r[0]);
|
|
/* 0239A7A0 */ goto L_0239A7AC;
|
|
L_0239A7A4: ; // 0x239a7a4
|
|
/* 0239A7A4 */ cpu->r[0] = 0x00000001u;
|
|
/* 0239A7A8 */ _t8 = cpu->r[31] + 0x00000044u;
|
|
/* 0239A7A8 */ rbrew_write8(cpu->mem, _t8, (uint8_t)cpu->r[0]);
|
|
L_0239A7AC: ; // 0x239a7ac
|
|
/* 0239A7AC */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0239A7AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0239A7B0 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239A7B0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0239A7B4 */ cpu->lr = cpu->r[0];
|
|
/* 0239A7B8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0239A7BC */ return;
|
|
}
|
|
|
|
// fn_0239A7C0 @ 0x239a7c0
|
|
void Gambit_fn_0239A7C0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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;
|
|
|
|
L_0239A7C0: ; // 0x239a7c0
|
|
/* 0239A7C0 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 0239A7C0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239A7C0 */ cpu->r[1] = _t0;
|
|
/* 0239A7C4 */ cpu->r[0] = cpu->lr;
|
|
/* 0239A7C8 */ /* nop */
|
|
/* 0239A7CC */ cpu->r[5] = 0x00000004u;
|
|
/* 0239A7D0 */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 0239A7D0 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0239A7D4 */ cpu->r[29] = cpu->r[3];
|
|
/* 0239A7D8 */ cpu->r[3] = 0x000001A8u;
|
|
/* 0239A7DC */ cpu->r[30] = cpu->r[4];
|
|
/* 0239A7E0 */ Gambit_fn_02801AC8(cpu);
|
|
/* 0239A7E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239A7E8 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A7E8 */ _t3 = _t2 & 0x00000001u;
|
|
/* 0239A7E8 */ if (_t3) goto L_0239A7F0; else goto L_0239A7EC;
|
|
L_0239A7EC: ; // 0x239a7ec
|
|
/* 0239A7EC */ Gambit_fn_023B9F88(cpu);
|
|
L_0239A7F0: ; // 0x239a7f0
|
|
/* 0239A7F0 */ cpu->r[5] = 0x000000C8u;
|
|
/* 0239A7F4 */ cpu->r[4] = cpu->r[29];
|
|
/* 0239A7F8 */ cpu->r[6] = cpu->r[30];
|
|
/* 0239A7FC */ _t4 = cpu->r[29] + 0x00000048u;
|
|
/* 0239A7FC */ rbrew_write32(cpu->mem, _t4, cpu->r[3]);
|
|
/* 0239A800 */ Gambit_fn_023BA050(cpu);
|
|
/* 0239A804 */ cpu->r[28] = 0x00000008u;
|
|
/* 0239A808 */ cpu->r[27] = 0x00000000u;
|
|
/* 0239A80C */ cpu->r[26] = 0x000000C9u;
|
|
L_0239A810: ; // 0x239a810
|
|
/* 0239A810 */ cpu->r[4] = cpu->r[30];
|
|
/* 0239A814 */ cpu->r[3] = 0x0000003Cu;
|
|
/* 0239A818 */ cpu->r[5] = 0x00000004u;
|
|
/* 0239A81C */ Gambit_fn_02801AC8(cpu);
|
|
/* 0239A820 */ cpu->r[31] = cpu->r[3];
|
|
/* 0239A820 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0239A824 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A824 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0239A824 */ if (_t6) goto L_0239A834; else goto L_0239A828;
|
|
L_0239A828: ; // 0x239a828
|
|
/* 0239A828 */ cpu->r[3] = cpu->r[31];
|
|
/* 0239A82C */ Gambit_fn_023B220C(cpu);
|
|
/* 0239A830 */ cpu->r[31] = cpu->r[3];
|
|
L_0239A834: ; // 0x239a834
|
|
/* 0239A834 */ cpu->r[7] = cpu->r[30];
|
|
/* 0239A838 */ cpu->r[6] = cpu->r[27];
|
|
/* 0239A83C */ cpu->r[5] = cpu->r[26];
|
|
/* 0239A840 */ cpu->r[4] = cpu->r[29];
|
|
/* 0239A844 */ cpu->r[3] = cpu->r[31];
|
|
/* 0239A848 */ Gambit_fn_023B22CC(cpu);
|
|
/* 0239A84C */ _t7 = cpu->r[29] + 0x0000004Cu;
|
|
/* 0239A84C */ cpu->r[7] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0239A850 */ _t8 = cpu->r[29] + 0x00000050u;
|
|
/* 0239A850 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0239A854 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], cpu->r[0]);
|
|
/* 0239A858 */ _t9 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0239A858 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0239A858 */ if (_t10) goto L_0239A85C; else goto L_0239A874;
|
|
L_0239A85C: ; // 0x239a85c
|
|
/* 0239A85C */ _t11 = cpu->r[29] + 0x00000054u;
|
|
/* 0239A85C */ cpu->r[9] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0239A860 */ cpu->r[8] = rbrew_rlwinm(cpu->r[7], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239A864 */ _t12 = cpu->r[8] + cpu->r[9];
|
|
/* 0239A864 */ rbrew_write32(cpu->mem, _t12, cpu->r[31]);
|
|
/* 0239A868 */ _t13 = cpu->r[29] + 0x0000004Cu;
|
|
/* 0239A868 */ cpu->r[10] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0239A86C */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 0239A870 */ _t14 = cpu->r[29] + 0x0000004Cu;
|
|
/* 0239A870 */ rbrew_write32(cpu->mem, _t14, cpu->r[10]);
|
|
L_0239A874: ; // 0x239a874
|
|
/* 0239A874 */ cpu->r[28] = cpu->r[28] + 0xFFFFFFFFu;
|
|
/* 0239A874 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 0239A878 */ cpu->r[26] = cpu->r[26] + 0x00000001u;
|
|
/* 0239A87C */ cpu->r[27] = cpu->r[27] + 0x00000001u;
|
|
/* 0239A880 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A880 */ _t16 = _t15 & 0x00000001u;
|
|
/* 0239A880 */ if (_t16) goto L_0239A884; else goto L_0239A810;
|
|
L_0239A884: ; // 0x239a884
|
|
/* 0239A884 */ cpu->r[28] = 0x00000008u;
|
|
/* 0239A888 */ cpu->r[27] = 0x00000000u;
|
|
/* 0239A88C */ cpu->r[26] = 0x000000D1u;
|
|
L_0239A890: ; // 0x239a890
|
|
/* 0239A890 */ cpu->r[4] = cpu->r[30];
|
|
/* 0239A894 */ cpu->r[3] = 0x00002E38u;
|
|
/* 0239A898 */ cpu->r[5] = 0x00000004u;
|
|
/* 0239A89C */ Gambit_fn_02801AC8(cpu);
|
|
/* 0239A8A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239A8A4 */ cpu->r[31] = cpu->r[3];
|
|
/* 0239A8A8 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A8A8 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0239A8A8 */ if (_t18) goto L_0239A8B4; else goto L_0239A8AC;
|
|
L_0239A8AC: ; // 0x239a8ac
|
|
/* 0239A8AC */ Gambit_fn_025DBBA4(cpu);
|
|
/* 0239A8B0 */ cpu->r[31] = cpu->r[3];
|
|
L_0239A8B4: ; // 0x239a8b4
|
|
/* 0239A8B4 */ cpu->r[7] = cpu->r[30];
|
|
/* 0239A8B8 */ cpu->r[6] = cpu->r[27];
|
|
/* 0239A8BC */ cpu->r[5] = cpu->r[26];
|
|
/* 0239A8C0 */ cpu->r[4] = cpu->r[29];
|
|
/* 0239A8C4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0239A8C8 */ Gambit_fn_025DBF00(cpu);
|
|
/* 0239A8CC */ _t19 = cpu->r[29] + 0x00000078u;
|
|
/* 0239A8CC */ cpu->r[9] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0239A8D0 */ _t20 = cpu->r[29] + 0x0000007Cu;
|
|
/* 0239A8D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0239A8D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], cpu->r[0]);
|
|
/* 0239A8D8 */ _t21 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0239A8D8 */ _t22 = _t21 & 0x00000001u;
|
|
/* 0239A8D8 */ if (_t22) goto L_0239A8DC; else goto L_0239A8F4;
|
|
L_0239A8DC: ; // 0x239a8dc
|
|
/* 0239A8DC */ _t23 = cpu->r[29] + 0x00000080u;
|
|
/* 0239A8DC */ cpu->r[4] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0239A8E0 */ cpu->r[12] = rbrew_rlwinm(cpu->r[9], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239A8E4 */ _t24 = cpu->r[12] + cpu->r[4];
|
|
/* 0239A8E4 */ rbrew_write32(cpu->mem, _t24, cpu->r[31]);
|
|
/* 0239A8E8 */ _t25 = cpu->r[29] + 0x00000078u;
|
|
/* 0239A8E8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0239A8EC */ cpu->r[5] = cpu->r[5] + 0x00000001u;
|
|
/* 0239A8F0 */ _t26 = cpu->r[29] + 0x00000078u;
|
|
/* 0239A8F0 */ rbrew_write32(cpu->mem, _t26, cpu->r[5]);
|
|
L_0239A8F4: ; // 0x239a8f4
|
|
/* 0239A8F4 */ cpu->r[28] = cpu->r[28] + 0xFFFFFFFFu;
|
|
/* 0239A8F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 0239A8F8 */ cpu->r[26] = cpu->r[26] + 0x00000001u;
|
|
/* 0239A8FC */ cpu->r[27] = cpu->r[27] + 0x00000001u;
|
|
/* 0239A900 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A900 */ _t28 = _t27 & 0x00000001u;
|
|
/* 0239A900 */ if (_t28) goto L_0239A904; else goto L_0239A890;
|
|
L_0239A904: ; // 0x239a904
|
|
/* 0239A904 */ cpu->r[28] = 0x101C0000u;
|
|
/* 0239A908 */ _t29 = cpu->r[28] + 0x00006000u;
|
|
/* 0239A908 */ cpu->r[5] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0239A908 */ cpu->r[28] = _t29;
|
|
/* 0239A90C */ _t30 = cpu->r[5] + 0x00000264u;
|
|
/* 0239A90C */ cpu->r[4] = rbrew_read32(cpu->mem, _t30);
|
|
/* 0239A910 */ _t31 = cpu->r[4] + 0x00000030u;
|
|
/* 0239A910 */ cpu->r[6] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0239A914 */ _t32 = cpu->r[6] + 0x0000002Cu;
|
|
/* 0239A914 */ cpu->r[7] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0239A918 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 0239A91C */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A91C */ _t34 = _t33 & 0x00000001u;
|
|
/* 0239A91C */ if (_t34) goto L_0239A99C; else goto L_0239A920;
|
|
L_0239A920: ; // 0x239a920
|
|
/* 0239A920 */ cpu->r[27] = 0x00000008u;
|
|
/* 0239A924 */ cpu->r[26] = 0x000000D9u;
|
|
L_0239A928: ; // 0x239a928
|
|
/* 0239A928 */ cpu->r[4] = cpu->r[30];
|
|
/* 0239A92C */ cpu->r[3] = 0x00000620u;
|
|
/* 0239A930 */ cpu->r[5] = 0x00000004u;
|
|
/* 0239A934 */ Gambit_fn_02801AC8(cpu);
|
|
/* 0239A938 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239A93C */ cpu->r[31] = cpu->r[3];
|
|
/* 0239A940 */ _t35 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A940 */ _t36 = _t35 & 0x00000001u;
|
|
/* 0239A940 */ if (_t36) goto L_0239A94C; else goto L_0239A944;
|
|
L_0239A944: ; // 0x239a944
|
|
/* 0239A944 */ Gambit_fn_024C0E28(cpu);
|
|
/* 0239A948 */ cpu->r[31] = cpu->r[3];
|
|
L_0239A94C: ; // 0x239a94c
|
|
/* 0239A94C */ cpu->r[6] = cpu->r[30];
|
|
/* 0239A950 */ cpu->r[5] = cpu->r[26];
|
|
/* 0239A954 */ cpu->r[4] = cpu->r[29];
|
|
/* 0239A958 */ cpu->r[3] = cpu->r[31];
|
|
/* 0239A95C */ Gambit_fn_024C0F24(cpu);
|
|
/* 0239A960 */ _t37 = cpu->r[29] + 0x000000A8u;
|
|
/* 0239A960 */ cpu->r[0] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0239A964 */ _t38 = cpu->r[29] + 0x000000ACu;
|
|
/* 0239A964 */ cpu->r[8] = rbrew_read32(cpu->mem, _t38);
|
|
/* 0239A968 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], cpu->r[8]);
|
|
/* 0239A96C */ _t39 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0239A96C */ _t40 = _t39 & 0x00000001u;
|
|
/* 0239A96C */ if (_t40) goto L_0239A970; else goto L_0239A988;
|
|
L_0239A970: ; // 0x239a970
|
|
/* 0239A970 */ _t41 = cpu->r[29] + 0x000000B0u;
|
|
/* 0239A970 */ cpu->r[10] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0239A974 */ cpu->r[9] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239A978 */ _t42 = cpu->r[9] + cpu->r[10];
|
|
/* 0239A978 */ rbrew_write32(cpu->mem, _t42, cpu->r[31]);
|
|
/* 0239A97C */ _t43 = cpu->r[29] + 0x000000A8u;
|
|
/* 0239A97C */ cpu->r[11] = rbrew_read32(cpu->mem, _t43);
|
|
/* 0239A980 */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 0239A984 */ _t44 = cpu->r[29] + 0x000000A8u;
|
|
/* 0239A984 */ rbrew_write32(cpu->mem, _t44, cpu->r[11]);
|
|
L_0239A988: ; // 0x239a988
|
|
/* 0239A988 */ cpu->r[27] = cpu->r[27] + 0xFFFFFFFFu;
|
|
/* 0239A988 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0239A98C */ cpu->r[26] = cpu->r[26] + 0x00000001u;
|
|
/* 0239A990 */ _t45 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A990 */ _t46 = _t45 & 0x00000001u;
|
|
/* 0239A990 */ if (_t46) goto L_0239A994; else goto L_0239A928;
|
|
L_0239A994: ; // 0x239a994
|
|
/* 0239A994 */ _t47 = cpu->r[28] + 0x00000000u;
|
|
/* 0239A994 */ cpu->r[5] = rbrew_read32(cpu->mem, _t47);
|
|
/* 0239A998 */ _t48 = cpu->r[5] + 0x00000264u;
|
|
/* 0239A998 */ cpu->r[4] = rbrew_read32(cpu->mem, _t48);
|
|
L_0239A99C: ; // 0x239a99c
|
|
/* 0239A99C */ _t49 = cpu->r[4] + 0x00000030u;
|
|
/* 0239A99C */ cpu->r[12] = rbrew_read32(cpu->mem, _t49);
|
|
/* 0239A9A0 */ _t50 = cpu->r[12] + 0x00000114u;
|
|
/* 0239A9A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t50);
|
|
/* 0239A9A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0239A9A8 */ _t51 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A9A8 */ _t52 = _t51 & 0x00000001u;
|
|
/* 0239A9A8 */ if (_t52) goto L_0239AA28; else goto L_0239A9AC;
|
|
L_0239A9AC: ; // 0x239a9ac
|
|
/* 0239A9AC */ cpu->r[27] = 0x00000008u;
|
|
/* 0239A9B0 */ cpu->r[26] = 0x000000E1u;
|
|
L_0239A9B4: ; // 0x239a9b4
|
|
/* 0239A9B4 */ cpu->r[4] = cpu->r[30];
|
|
/* 0239A9B8 */ cpu->r[3] = 0x0000021Cu;
|
|
/* 0239A9BC */ cpu->r[5] = 0x00000004u;
|
|
/* 0239A9C0 */ Gambit_fn_02801AC8(cpu);
|
|
/* 0239A9C4 */ cpu->r[31] = cpu->r[3];
|
|
/* 0239A9C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0239A9C8 */ _t53 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239A9C8 */ _t54 = _t53 & 0x00000001u;
|
|
/* 0239A9C8 */ if (_t54) goto L_0239A9D8; else goto L_0239A9CC;
|
|
L_0239A9CC: ; // 0x239a9cc
|
|
/* 0239A9CC */ cpu->r[3] = cpu->r[31];
|
|
/* 0239A9D0 */ Gambit_fn_025590B4(cpu);
|
|
/* 0239A9D4 */ cpu->r[31] = cpu->r[3];
|
|
L_0239A9D8: ; // 0x239a9d8
|
|
/* 0239A9D8 */ cpu->r[6] = cpu->r[30];
|
|
/* 0239A9DC */ cpu->r[5] = cpu->r[26];
|
|
/* 0239A9E0 */ cpu->r[4] = cpu->r[29];
|
|
/* 0239A9E4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0239A9E8 */ Gambit_fn_02559174(cpu);
|
|
/* 0239A9EC */ _t55 = cpu->r[29] + 0x000000D4u;
|
|
/* 0239A9EC */ cpu->r[4] = rbrew_read32(cpu->mem, _t55);
|
|
/* 0239A9F0 */ _t56 = cpu->r[29] + 0x000000D8u;
|
|
/* 0239A9F0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t56);
|
|
/* 0239A9F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], cpu->r[5]);
|
|
/* 0239A9F8 */ _t57 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0239A9F8 */ _t58 = _t57 & 0x00000001u;
|
|
/* 0239A9F8 */ if (_t58) goto L_0239A9FC; else goto L_0239AA14;
|
|
L_0239A9FC: ; // 0x239a9fc
|
|
/* 0239A9FC */ _t59 = cpu->r[29] + 0x000000DCu;
|
|
/* 0239A9FC */ cpu->r[7] = rbrew_read32(cpu->mem, _t59);
|
|
/* 0239AA00 */ cpu->r[6] = rbrew_rlwinm(cpu->r[4], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239AA04 */ _t60 = cpu->r[6] + cpu->r[7];
|
|
/* 0239AA04 */ rbrew_write32(cpu->mem, _t60, cpu->r[31]);
|
|
/* 0239AA08 */ _t61 = cpu->r[29] + 0x000000D4u;
|
|
/* 0239AA08 */ cpu->r[8] = rbrew_read32(cpu->mem, _t61);
|
|
/* 0239AA0C */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 0239AA10 */ _t62 = cpu->r[29] + 0x000000D4u;
|
|
/* 0239AA10 */ rbrew_write32(cpu->mem, _t62, cpu->r[8]);
|
|
L_0239AA14: ; // 0x239aa14
|
|
/* 0239AA14 */ cpu->r[27] = cpu->r[27] + 0xFFFFFFFFu;
|
|
/* 0239AA14 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0239AA18 */ cpu->r[26] = cpu->r[26] + 0x00000001u;
|
|
/* 0239AA1C */ _t63 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239AA1C */ _t64 = _t63 & 0x00000001u;
|
|
/* 0239AA1C */ if (_t64) goto L_0239AA20; else goto L_0239A9B4;
|
|
L_0239AA20: ; // 0x239aa20
|
|
/* 0239AA20 */ _t65 = cpu->r[28] + 0x00000000u;
|
|
/* 0239AA20 */ cpu->r[5] = rbrew_read32(cpu->mem, _t65);
|
|
/* 0239AA24 */ _t66 = cpu->r[5] + 0x00000264u;
|
|
/* 0239AA24 */ cpu->r[4] = rbrew_read32(cpu->mem, _t66);
|
|
L_0239AA28: ; // 0x239aa28
|
|
/* 0239AA28 */ _t67 = cpu->r[4] + 0x00000030u;
|
|
/* 0239AA28 */ cpu->r[9] = rbrew_read32(cpu->mem, _t67);
|
|
/* 0239AA2C */ _t68 = cpu->r[9] + 0x00000018u;
|
|
/* 0239AA2C */ cpu->r[10] = rbrew_read32(cpu->mem, _t68);
|
|
/* 0239AA30 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0239AA34 */ _t69 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239AA34 */ _t70 = _t69 & 0x00000001u;
|
|
/* 0239AA34 */ if (_t70) goto L_0239AAB4; else goto L_0239AA38;
|
|
L_0239AA38: ; // 0x239aa38
|
|
/* 0239AA38 */ cpu->r[27] = 0x00000008u;
|
|
/* 0239AA3C */ cpu->r[26] = 0x000000E9u;
|
|
L_0239AA40: ; // 0x239aa40
|
|
/* 0239AA40 */ cpu->r[4] = cpu->r[30];
|
|
/* 0239AA44 */ cpu->r[3] = 0x0000009Cu;
|
|
/* 0239AA48 */ cpu->r[5] = 0x00000004u;
|
|
/* 0239AA4C */ Gambit_fn_02801AC8(cpu);
|
|
/* 0239AA50 */ cpu->r[31] = cpu->r[3];
|
|
/* 0239AA50 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0239AA54 */ _t71 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239AA54 */ _t72 = _t71 & 0x00000001u;
|
|
/* 0239AA54 */ if (_t72) goto L_0239AA64; else goto L_0239AA58;
|
|
L_0239AA58: ; // 0x239aa58
|
|
/* 0239AA58 */ cpu->r[3] = cpu->r[31];
|
|
/* 0239AA5C */ Gambit_fn_025308D4(cpu);
|
|
/* 0239AA60 */ cpu->r[31] = cpu->r[3];
|
|
L_0239AA64: ; // 0x239aa64
|
|
/* 0239AA64 */ cpu->r[6] = cpu->r[30];
|
|
/* 0239AA68 */ cpu->r[5] = cpu->r[26];
|
|
/* 0239AA6C */ cpu->r[4] = cpu->r[29];
|
|
/* 0239AA70 */ cpu->r[3] = cpu->r[31];
|
|
/* 0239AA74 */ Gambit_fn_02530994(cpu);
|
|
/* 0239AA78 */ _t73 = cpu->r[29] + 0x00000100u;
|
|
/* 0239AA78 */ cpu->r[6] = rbrew_read32(cpu->mem, _t73);
|
|
/* 0239AA7C */ _t74 = cpu->r[29] + 0x00000104u;
|
|
/* 0239AA7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t74);
|
|
/* 0239AA80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], cpu->r[0]);
|
|
/* 0239AA84 */ _t75 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0239AA84 */ _t76 = _t75 & 0x00000001u;
|
|
/* 0239AA84 */ if (_t76) goto L_0239AA88; else goto L_0239AAA0;
|
|
L_0239AA88: ; // 0x239aa88
|
|
/* 0239AA88 */ _t77 = cpu->r[29] + 0x00000108u;
|
|
/* 0239AA88 */ cpu->r[0] = rbrew_read32(cpu->mem, _t77);
|
|
/* 0239AA8C */ cpu->r[12] = rbrew_rlwinm(cpu->r[6], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239AA90 */ _t78 = cpu->r[12] + cpu->r[0];
|
|
/* 0239AA90 */ rbrew_write32(cpu->mem, _t78, cpu->r[31]);
|
|
/* 0239AA94 */ _t79 = cpu->r[29] + 0x00000100u;
|
|
/* 0239AA94 */ cpu->r[5] = rbrew_read32(cpu->mem, _t79);
|
|
/* 0239AA98 */ cpu->r[5] = cpu->r[5] + 0x00000001u;
|
|
/* 0239AA9C */ _t80 = cpu->r[29] + 0x00000100u;
|
|
/* 0239AA9C */ rbrew_write32(cpu->mem, _t80, cpu->r[5]);
|
|
L_0239AAA0: ; // 0x239aaa0
|
|
/* 0239AAA0 */ cpu->r[27] = cpu->r[27] + 0xFFFFFFFFu;
|
|
/* 0239AAA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0239AAA4 */ cpu->r[26] = cpu->r[26] + 0x00000001u;
|
|
/* 0239AAA8 */ _t81 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239AAA8 */ _t82 = _t81 & 0x00000001u;
|
|
/* 0239AAA8 */ if (_t82) goto L_0239AAAC; else goto L_0239AA40;
|
|
L_0239AAAC: ; // 0x239aaac
|
|
/* 0239AAAC */ _t83 = cpu->r[28] + 0x00000000u;
|
|
/* 0239AAAC */ cpu->r[5] = rbrew_read32(cpu->mem, _t83);
|
|
/* 0239AAB0 */ _t84 = cpu->r[5] + 0x00000264u;
|
|
/* 0239AAB0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t84);
|
|
L_0239AAB4: ; // 0x239aab4
|
|
/* 0239AAB4 */ _t85 = cpu->r[4] + 0x00000030u;
|
|
/* 0239AAB4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t85);
|
|
/* 0239AAB8 */ _t86 = cpu->r[6] + 0x00000050u;
|
|
/* 0239AAB8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t86);
|
|
/* 0239AABC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0239AAC0 */ _t87 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239AAC0 */ _t88 = _t87 & 0x00000001u;
|
|
/* 0239AAC0 */ if (_t88) goto L_0239AB40; else goto L_0239AAC4;
|
|
L_0239AAC4: ; // 0x239aac4
|
|
/* 0239AAC4 */ cpu->r[27] = 0x00000018u;
|
|
/* 0239AAC8 */ cpu->r[26] = 0x000000F1u;
|
|
L_0239AACC: ; // 0x239aacc
|
|
/* 0239AACC */ cpu->r[4] = cpu->r[30];
|
|
/* 0239AAD0 */ cpu->r[3] = 0x0000009Cu;
|
|
/* 0239AAD4 */ cpu->r[5] = 0x00000004u;
|
|
/* 0239AAD8 */ Gambit_fn_02801AC8(cpu);
|
|
/* 0239AADC */ cpu->r[31] = cpu->r[3];
|
|
/* 0239AADC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0239AAE0 */ _t89 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239AAE0 */ _t90 = _t89 & 0x00000001u;
|
|
/* 0239AAE0 */ if (_t90) goto L_0239AAF0; else goto L_0239AAE4;
|
|
L_0239AAE4: ; // 0x239aae4
|
|
/* 0239AAE4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0239AAE8 */ Gambit_fn_02561950(cpu);
|
|
/* 0239AAEC */ cpu->r[31] = cpu->r[3];
|
|
L_0239AAF0: ; // 0x239aaf0
|
|
/* 0239AAF0 */ cpu->r[6] = cpu->r[30];
|
|
/* 0239AAF4 */ cpu->r[5] = cpu->r[26];
|
|
/* 0239AAF8 */ cpu->r[4] = cpu->r[29];
|
|
/* 0239AAFC */ cpu->r[3] = cpu->r[31];
|
|
/* 0239AB00 */ Gambit_fn_02561A10(cpu);
|
|
/* 0239AB04 */ _t91 = cpu->r[29] + 0x0000012Cu;
|
|
/* 0239AB04 */ cpu->r[8] = rbrew_read32(cpu->mem, _t91);
|
|
/* 0239AB08 */ _t92 = cpu->r[29] + 0x00000130u;
|
|
/* 0239AB08 */ cpu->r[0] = rbrew_read32(cpu->mem, _t92);
|
|
/* 0239AB0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], cpu->r[0]);
|
|
/* 0239AB10 */ _t93 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0239AB10 */ _t94 = _t93 & 0x00000001u;
|
|
/* 0239AB10 */ if (_t94) goto L_0239AB14; else goto L_0239AB2C;
|
|
L_0239AB14: ; // 0x239ab14
|
|
/* 0239AB14 */ _t95 = cpu->r[29] + 0x00000134u;
|
|
/* 0239AB14 */ cpu->r[0] = rbrew_read32(cpu->mem, _t95);
|
|
/* 0239AB18 */ cpu->r[9] = rbrew_rlwinm(cpu->r[8], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239AB1C */ _t96 = cpu->r[9] + cpu->r[0];
|
|
/* 0239AB1C */ rbrew_write32(cpu->mem, _t96, cpu->r[31]);
|
|
/* 0239AB20 */ _t97 = cpu->r[29] + 0x0000012Cu;
|
|
/* 0239AB20 */ cpu->r[11] = rbrew_read32(cpu->mem, _t97);
|
|
/* 0239AB24 */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 0239AB28 */ _t98 = cpu->r[29] + 0x0000012Cu;
|
|
/* 0239AB28 */ rbrew_write32(cpu->mem, _t98, cpu->r[11]);
|
|
L_0239AB2C: ; // 0x239ab2c
|
|
/* 0239AB2C */ cpu->r[27] = cpu->r[27] + 0xFFFFFFFFu;
|
|
/* 0239AB2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0239AB30 */ cpu->r[26] = cpu->r[26] + 0x00000001u;
|
|
/* 0239AB34 */ _t99 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239AB34 */ _t100 = _t99 & 0x00000001u;
|
|
/* 0239AB34 */ if (_t100) goto L_0239AB38; else goto L_0239AACC;
|
|
L_0239AB38: ; // 0x239ab38
|
|
/* 0239AB38 */ _t101 = cpu->r[28] + 0x00000000u;
|
|
/* 0239AB38 */ cpu->r[5] = rbrew_read32(cpu->mem, _t101);
|
|
/* 0239AB3C */ _t102 = cpu->r[5] + 0x00000264u;
|
|
/* 0239AB3C */ cpu->r[4] = rbrew_read32(cpu->mem, _t102);
|
|
L_0239AB40: ; // 0x239ab40
|
|
/* 0239AB40 */ _t103 = cpu->r[4] + 0x00000030u;
|
|
/* 0239AB40 */ cpu->r[12] = rbrew_read32(cpu->mem, _t103);
|
|
/* 0239AB44 */ _t104 = cpu->r[12] + 0x00000010u;
|
|
/* 0239AB44 */ cpu->r[0] = rbrew_read32(cpu->mem, _t104);
|
|
/* 0239AB48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0239AB4C */ _t105 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239AB4C */ _t106 = _t105 & 0x00000001u;
|
|
/* 0239AB4C */ if (_t106) goto L_0239ABCC; else goto L_0239AB50;
|
|
L_0239AB50: ; // 0x239ab50
|
|
/* 0239AB50 */ cpu->r[27] = 0x00000008u;
|
|
/* 0239AB54 */ cpu->r[26] = 0x00000109u;
|
|
L_0239AB58: ; // 0x239ab58
|
|
/* 0239AB58 */ cpu->r[4] = cpu->r[30];
|
|
/* 0239AB5C */ cpu->r[3] = 0x00000008u;
|
|
/* 0239AB60 */ cpu->r[5] = 0x00000004u;
|
|
/* 0239AB64 */ Gambit_fn_02801AC8(cpu);
|
|
/* 0239AB68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239AB6C */ cpu->r[31] = cpu->r[3];
|
|
/* 0239AB70 */ _t107 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239AB70 */ _t108 = _t107 & 0x00000001u;
|
|
/* 0239AB70 */ if (_t108) goto L_0239AB7C; else goto L_0239AB74;
|
|
L_0239AB74: ; // 0x239ab74
|
|
/* 0239AB74 */ Gambit_fn_025393DC(cpu);
|
|
/* 0239AB78 */ cpu->r[31] = cpu->r[3];
|
|
L_0239AB7C: ; // 0x239ab7c
|
|
/* 0239AB7C */ cpu->r[6] = cpu->r[30];
|
|
/* 0239AB80 */ cpu->r[5] = cpu->r[26];
|
|
/* 0239AB84 */ cpu->r[4] = cpu->r[29];
|
|
/* 0239AB88 */ cpu->r[3] = cpu->r[31];
|
|
/* 0239AB8C */ Gambit_fn_0253941C(cpu);
|
|
/* 0239AB90 */ _t109 = cpu->r[29] + 0x00000198u;
|
|
/* 0239AB90 */ cpu->r[9] = rbrew_read32(cpu->mem, _t109);
|
|
/* 0239AB94 */ _t110 = cpu->r[29] + 0x0000019Cu;
|
|
/* 0239AB94 */ cpu->r[6] = rbrew_read32(cpu->mem, _t110);
|
|
/* 0239AB98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], cpu->r[6]);
|
|
/* 0239AB9C */ _t111 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0239AB9C */ _t112 = _t111 & 0x00000001u;
|
|
/* 0239AB9C */ if (_t112) goto L_0239ABA0; else goto L_0239ABB8;
|
|
L_0239ABA0: ; // 0x239aba0
|
|
/* 0239ABA0 */ _t113 = cpu->r[29] + 0x000001A0u;
|
|
/* 0239ABA0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t113);
|
|
/* 0239ABA4 */ cpu->r[8] = rbrew_rlwinm(cpu->r[9], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239ABA8 */ _t114 = cpu->r[8] + cpu->r[10];
|
|
/* 0239ABA8 */ rbrew_write32(cpu->mem, _t114, cpu->r[31]);
|
|
/* 0239ABAC */ _t115 = cpu->r[29] + 0x00000198u;
|
|
/* 0239ABAC */ cpu->r[12] = rbrew_read32(cpu->mem, _t115);
|
|
/* 0239ABB0 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 0239ABB4 */ _t116 = cpu->r[29] + 0x00000198u;
|
|
/* 0239ABB4 */ rbrew_write32(cpu->mem, _t116, cpu->r[12]);
|
|
L_0239ABB8: ; // 0x239abb8
|
|
/* 0239ABB8 */ cpu->r[27] = cpu->r[27] + 0xFFFFFFFFu;
|
|
/* 0239ABB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0239ABBC */ cpu->r[26] = cpu->r[26] + 0x00000001u;
|
|
/* 0239ABC0 */ _t117 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239ABC0 */ _t118 = _t117 & 0x00000001u;
|
|
/* 0239ABC0 */ if (_t118) goto L_0239ABC4; else goto L_0239AB58;
|
|
L_0239ABC4: ; // 0x239abc4
|
|
/* 0239ABC4 */ _t119 = cpu->r[28] + 0x00000000u;
|
|
/* 0239ABC4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t119);
|
|
/* 0239ABC8 */ _t120 = cpu->r[5] + 0x00000264u;
|
|
/* 0239ABC8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t120);
|
|
L_0239ABCC: ; // 0x239abcc
|
|
/* 0239ABCC */ _t121 = cpu->r[4] + 0x00000030u;
|
|
/* 0239ABCC */ cpu->r[5] = rbrew_read32(cpu->mem, _t121);
|
|
/* 0239ABD0 */ _t122 = cpu->r[5] + 0x00000014u;
|
|
/* 0239ABD0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t122);
|
|
/* 0239ABD4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 0239ABD8 */ _t123 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239ABD8 */ _t124 = _t123 & 0x00000001u;
|
|
/* 0239ABD8 */ if (_t124) goto L_0239AC58; else goto L_0239ABDC;
|
|
L_0239ABDC: ; // 0x239abdc
|
|
/* 0239ABDC */ cpu->r[27] = 0x00000008u;
|
|
/* 0239ABE0 */ cpu->r[26] = 0x00000111u;
|
|
L_0239ABE4: ; // 0x239abe4
|
|
/* 0239ABE4 */ cpu->r[4] = cpu->r[30];
|
|
/* 0239ABE8 */ cpu->r[3] = 0x00000008u;
|
|
/* 0239ABEC */ cpu->r[5] = 0x00000004u;
|
|
/* 0239ABF0 */ Gambit_fn_02801AC8(cpu);
|
|
/* 0239ABF4 */ cpu->r[31] = cpu->r[3];
|
|
/* 0239ABF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0239ABF8 */ _t125 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239ABF8 */ _t126 = _t125 & 0x00000001u;
|
|
/* 0239ABF8 */ if (_t126) goto L_0239AC08; else goto L_0239ABFC;
|
|
L_0239ABFC: ; // 0x239abfc
|
|
/* 0239ABFC */ cpu->r[3] = cpu->r[31];
|
|
/* 0239AC00 */ Gambit_fn_0256E43C(cpu);
|
|
/* 0239AC04 */ cpu->r[31] = cpu->r[3];
|
|
L_0239AC08: ; // 0x239ac08
|
|
/* 0239AC08 */ cpu->r[6] = cpu->r[30];
|
|
/* 0239AC0C */ cpu->r[5] = cpu->r[26];
|
|
/* 0239AC10 */ cpu->r[4] = cpu->r[29];
|
|
/* 0239AC14 */ cpu->r[3] = cpu->r[31];
|
|
/* 0239AC18 */ Gambit_fn_0256E47C(cpu);
|
|
/* 0239AC1C */ _t127 = cpu->r[29] + 0x000001C4u;
|
|
/* 0239AC1C */ cpu->r[0] = rbrew_read32(cpu->mem, _t127);
|
|
/* 0239AC20 */ _t128 = cpu->r[29] + 0x000001C8u;
|
|
/* 0239AC20 */ cpu->r[10] = rbrew_read32(cpu->mem, _t128);
|
|
/* 0239AC24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], cpu->r[10]);
|
|
/* 0239AC28 */ _t129 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0239AC28 */ _t130 = _t129 & 0x00000001u;
|
|
/* 0239AC28 */ if (_t130) goto L_0239AC2C; else goto L_0239AC44;
|
|
L_0239AC2C: ; // 0x239ac2c
|
|
/* 0239AC2C */ _t131 = cpu->r[29] + 0x000001CCu;
|
|
/* 0239AC2C */ cpu->r[5] = rbrew_read32(cpu->mem, _t131);
|
|
/* 0239AC30 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239AC34 */ _t132 = cpu->r[12] + cpu->r[5];
|
|
/* 0239AC34 */ rbrew_write32(cpu->mem, _t132, cpu->r[31]);
|
|
/* 0239AC38 */ _t133 = cpu->r[29] + 0x000001C4u;
|
|
/* 0239AC38 */ cpu->r[6] = rbrew_read32(cpu->mem, _t133);
|
|
/* 0239AC3C */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 0239AC40 */ _t134 = cpu->r[29] + 0x000001C4u;
|
|
/* 0239AC40 */ rbrew_write32(cpu->mem, _t134, cpu->r[6]);
|
|
L_0239AC44: ; // 0x239ac44
|
|
/* 0239AC44 */ cpu->r[27] = cpu->r[27] + 0xFFFFFFFFu;
|
|
/* 0239AC44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0239AC48 */ cpu->r[26] = cpu->r[26] + 0x00000001u;
|
|
/* 0239AC4C */ _t135 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239AC4C */ _t136 = _t135 & 0x00000001u;
|
|
/* 0239AC4C */ if (_t136) goto L_0239AC50; else goto L_0239ABE4;
|
|
L_0239AC50: ; // 0x239ac50
|
|
/* 0239AC50 */ _t137 = cpu->r[28] + 0x00000000u;
|
|
/* 0239AC50 */ cpu->r[5] = rbrew_read32(cpu->mem, _t137);
|
|
/* 0239AC54 */ _t138 = cpu->r[5] + 0x00000264u;
|
|
/* 0239AC54 */ cpu->r[4] = rbrew_read32(cpu->mem, _t138);
|
|
L_0239AC58: ; // 0x239ac58
|
|
/* 0239AC58 */ _t139 = cpu->r[4] + 0x00000030u;
|
|
/* 0239AC58 */ cpu->r[7] = rbrew_read32(cpu->mem, _t139);
|
|
/* 0239AC5C */ _t140 = cpu->r[7] + 0x0000010Cu;
|
|
/* 0239AC5C */ cpu->r[8] = rbrew_read32(cpu->mem, _t140);
|
|
/* 0239AC60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0239AC64 */ _t141 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239AC64 */ _t142 = _t141 & 0x00000001u;
|
|
/* 0239AC64 */ if (_t142) goto L_0239ACDC; else goto L_0239AC68;
|
|
L_0239AC68: ; // 0x239ac68
|
|
/* 0239AC68 */ cpu->r[28] = 0x00000008u;
|
|
/* 0239AC6C */ cpu->r[27] = 0x00000119u;
|
|
L_0239AC70: ; // 0x239ac70
|
|
/* 0239AC70 */ cpu->r[4] = cpu->r[30];
|
|
/* 0239AC74 */ cpu->r[3] = 0x00000820u;
|
|
/* 0239AC78 */ cpu->r[5] = 0x00000004u;
|
|
/* 0239AC7C */ Gambit_fn_02801AC8(cpu);
|
|
/* 0239AC80 */ cpu->r[31] = cpu->r[3];
|
|
/* 0239AC80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0239AC84 */ _t143 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239AC84 */ _t144 = _t143 & 0x00000001u;
|
|
/* 0239AC84 */ if (_t144) goto L_0239AC94; else goto L_0239AC88;
|
|
L_0239AC88: ; // 0x239ac88
|
|
/* 0239AC88 */ cpu->r[3] = cpu->r[31];
|
|
/* 0239AC8C */ Gambit_fn_025121C8(cpu);
|
|
/* 0239AC90 */ cpu->r[31] = cpu->r[3];
|
|
L_0239AC94: ; // 0x239ac94
|
|
/* 0239AC94 */ cpu->r[6] = cpu->r[30];
|
|
/* 0239AC98 */ cpu->r[5] = cpu->r[27];
|
|
/* 0239AC9C */ cpu->r[4] = cpu->r[29];
|
|
/* 0239ACA0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0239ACA4 */ Gambit_fn_025122C4(cpu);
|
|
/* 0239ACA8 */ _t145 = cpu->r[29] + 0x000001F0u;
|
|
/* 0239ACA8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t145);
|
|
/* 0239ACAC */ _t146 = cpu->r[29] + 0x000001F4u;
|
|
/* 0239ACAC */ cpu->r[9] = rbrew_read32(cpu->mem, _t146);
|
|
/* 0239ACB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], cpu->r[9]);
|
|
/* 0239ACB4 */ _t147 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0239ACB4 */ _t148 = _t147 & 0x00000001u;
|
|
/* 0239ACB4 */ if (_t148) goto L_0239ACB8; else goto L_0239ACD0;
|
|
L_0239ACB8: ; // 0x239acb8
|
|
/* 0239ACB8 */ _t149 = cpu->r[29] + 0x000001F8u;
|
|
/* 0239ACB8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t149);
|
|
/* 0239ACBC */ cpu->r[10] = rbrew_rlwinm(cpu->r[4], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239ACC0 */ _t150 = cpu->r[10] + cpu->r[0];
|
|
/* 0239ACC0 */ rbrew_write32(cpu->mem, _t150, cpu->r[31]);
|
|
/* 0239ACC4 */ _t151 = cpu->r[29] + 0x000001F0u;
|
|
/* 0239ACC4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t151);
|
|
/* 0239ACC8 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 0239ACCC */ _t152 = cpu->r[29] + 0x000001F0u;
|
|
/* 0239ACCC */ rbrew_write32(cpu->mem, _t152, cpu->r[12]);
|
|
L_0239ACD0: ; // 0x239acd0
|
|
/* 0239ACD0 */ cpu->r[28] = cpu->r[28] + 0xFFFFFFFFu;
|
|
/* 0239ACD0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 0239ACD4 */ cpu->r[27] = cpu->r[27] + 0x00000001u;
|
|
/* 0239ACD8 */ _t153 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239ACD8 */ _t154 = _t153 & 0x00000001u;
|
|
/* 0239ACD8 */ if (_t154) goto L_0239ACDC; else goto L_0239AC70;
|
|
L_0239ACDC: ; // 0x239acdc
|
|
/* 0239ACDC */ /* nop */
|
|
/* 0239ACE0 */ _t155 = cpu->r[1] + 0x00000024u;
|
|
/* 0239ACE0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t155);
|
|
/* 0239ACE4 */ cpu->lr = cpu->r[0];
|
|
/* 0239ACE8 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 0239ACEC */ return;
|
|
}
|
|
|
|
// fn_0239ACF0 @ 0x239acf0
|
|
void Gambit_fn_0239ACF0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_0239ACF0: ; // 0x239acf0
|
|
/* 0239ACF0 */ cpu->r[0] = cpu->lr;
|
|
/* 0239ACF4 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 0239ACF4 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 0239ACF8 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 0239ACF8 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 0239ACF8 */ cpu->r[1] = _t1;
|
|
/* 0239ACFC */ _t2 = cpu->r[3] + 0x00000044u;
|
|
/* 0239ACFC */ cpu->r[0] = rbrew_read8(cpu->mem, _t2);
|
|
/* 0239AD00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0239AD04 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239AD04 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0239AD04 */ if (_t4) goto L_0239AD08; else goto L_0239AD14;
|
|
L_0239AD08: ; // 0x239ad08
|
|
/* 0239AD08 */ Gambit_fn_027F5AD8(cpu);
|
|
/* 0239AD0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0xFFFFFFFFu);
|
|
/* 0239AD10 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239AD10 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0239AD10 */ if (_t6) goto L_0239AD14; else goto L_0239AD18;
|
|
L_0239AD14: ; // 0x239ad14
|
|
/* 0239AD14 */ cpu->r[3] = 0x00000000u;
|
|
L_0239AD18: ; // 0x239ad18
|
|
/* 0239AD18 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239AD18 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0239AD1C */ cpu->lr = cpu->r[0];
|
|
/* 0239AD20 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 0239AD24 */ return;
|
|
}
|
|
|
|
// fn_0239ACF8 @ 0x239acf8
|
|
void Gambit_fn_0239ACF8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_0239ACF8: ; // 0x239acf8
|
|
/* 0239ACF8 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 0239ACF8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239ACF8 */ cpu->r[1] = _t0;
|
|
/* 0239ACFC */ _t1 = cpu->r[3] + 0x00000044u;
|
|
/* 0239ACFC */ cpu->r[0] = rbrew_read8(cpu->mem, _t1);
|
|
/* 0239AD00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0239AD04 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239AD04 */ _t3 = _t2 & 0x00000001u;
|
|
/* 0239AD04 */ if (_t3) goto L_0239AD08; else goto L_0239AD14;
|
|
L_0239AD08: ; // 0x239ad08
|
|
/* 0239AD08 */ Gambit_fn_027F5AD8(cpu);
|
|
/* 0239AD0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0xFFFFFFFFu);
|
|
/* 0239AD10 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239AD10 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0239AD10 */ if (_t5) goto L_0239AD14; else goto L_0239AD18;
|
|
L_0239AD14: ; // 0x239ad14
|
|
/* 0239AD14 */ cpu->r[3] = 0x00000000u;
|
|
L_0239AD18: ; // 0x239ad18
|
|
/* 0239AD18 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239AD18 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0239AD1C */ cpu->lr = cpu->r[0];
|
|
/* 0239AD20 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 0239AD24 */ return;
|
|
}
|
|
|
|
// fn_0239AD28 @ 0x239ad28
|
|
void Gambit_fn_0239AD28(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21;
|
|
|
|
L_021290D8: ; // 0x21290d8
|
|
/* 021290D8 */ cpu->r[0] = cpu->lr;
|
|
/* 021290DC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 021290DC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 021290DC */ cpu->r[1] = _t0;
|
|
/* 021290E0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 021290E0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 021290E4 */ cpu->r[31] = cpu->r[3];
|
|
/* 021290E8 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 021290E8 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 021290EC */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 021290EC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 021290F0 */ Gambit_fn_027F5880(cpu);
|
|
/* 021290F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 021290F8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 021290F8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 021290F8 */ if (_t5) goto L_02129144; else goto L_021290FC;
|
|
L_021290FC: ; // 0x21290fc
|
|
/* 021290FC */ _t6 = cpu->r[31] + 0x00000068u;
|
|
/* 021290FC */ cpu->r[0] = rbrew_read8(cpu->mem, _t6);
|
|
/* 02129100 */ /* nop */
|
|
/* 02129104 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 02129108 */ cpu->r[30] = 0x00000000u;
|
|
/* 0212910C */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0212910C */ _t8 = _t7 & 0x00000001u;
|
|
/* 0212910C */ if (_t8) goto L_02129128; else goto L_02129110;
|
|
L_02129110: ; // 0x2129110
|
|
/* 02129110 */ Gambit_fn_027F5AD8(cpu);
|
|
/* 02129114 */ _t9 = cpu->r[31] + 0x00000068u;
|
|
/* 02129114 */ cpu->r[0] = rbrew_read8(cpu->mem, _t9);
|
|
/* 02129118 */ /* nop */
|
|
/* 0212911C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], cpu->r[0]);
|
|
/* 02129120 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02129120 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02129120 */ if (_t11) goto L_02129124; else goto L_02129128;
|
|
L_02129124: ; // 0x2129124
|
|
/* 02129124 */ cpu->r[30] = 0x00000001u;
|
|
L_02129128: ; // 0x2129128
|
|
/* 02129128 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 02129128 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0212912C */ cpu->r[3] = rbrew_rlwinm(cpu->r[30], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 02129130 */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 02129130 */ cpu->r[30] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02129134 */ cpu->lr = cpu->r[0];
|
|
/* 02129138 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02129138 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0212913C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02129140 */ return;
|
|
L_02129144: ; // 0x2129144
|
|
/* 02129144 */ cpu->r[31] = 0x00000000u;
|
|
/* 02129148 */ Gambit_fn_027F5850(cpu);
|
|
/* 0212914C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02129150 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02129150 */ _t16 = _t15 & 0x00000001u;
|
|
/* 02129150 */ if (_t16) goto L_02129160; else goto L_02129154;
|
|
L_02129154: ; // 0x2129154
|
|
/* 02129154 */ Gambit_fn_027F5B78(cpu);
|
|
/* 02129158 */ cpu->r[11] = rbrew_clz32(cpu->r[3]);
|
|
/* 0212915C */ cpu->r[31] = rbrew_rlwinm(cpu->r[11], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
L_02129160: ; // 0x2129160
|
|
/* 02129160 */ _t17 = cpu->r[1] + 0x00000014u;
|
|
/* 02129160 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02129164 */ cpu->r[3] = cpu->r[31];
|
|
/* 02129168 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02129168 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0212916C */ cpu->lr = cpu->r[0];
|
|
/* 02129170 */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 02129170 */ cpu->r[30] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02129174 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02129178 */ return;
|
|
L_0239AD28: ; // 0x239ad28
|
|
/* 0239AD28 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0239AD2C */ _t20 = cpu->r[12] + 0xFFFF8624u;
|
|
/* 0239AD2C */ cpu->r[12] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0239AD30 */ _t21 = cpu->r[12] + 0x00000028u;
|
|
/* 0239AD30 */ cpu->r[3] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0239AD34 */ goto L_021290D8;
|
|
}
|
|
|
|
// fn_0239AD38 @ 0x239ad38
|
|
void Gambit_fn_0239AD38(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _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_0239AD38: ; // 0x239ad38
|
|
/* 0239AD38 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 0239AD38 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239AD38 */ cpu->r[1] = _t0;
|
|
/* 0239AD3C */ /* nop */
|
|
/* 0239AD40 */ cpu->r[0] = cpu->lr;
|
|
/* 0239AD44 */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0239AD44 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0239AD48 */ cpu->r[30] = cpu->r[3];
|
|
/* 0239AD4C */ _t2 = cpu->r[30] + 0x00000044u;
|
|
/* 0239AD4C */ cpu->r[12] = rbrew_read8(cpu->mem, _t2);
|
|
/* 0239AD50 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0239AD54 */ cpu->r[31] = cpu->r[4];
|
|
/* 0239AD58 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239AD58 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0239AD58 */ if (_t4) goto L_0239AD5C; else goto L_0239AE2C;
|
|
L_0239AD5C: ; // 0x239ad5c
|
|
/* 0239AD5C */ cpu->r[3] = cpu->r[31];
|
|
/* 0239AD60 */ Gambit_fn_0216F4A0(cpu);
|
|
/* 0239AD64 */ cpu->r[27] = cpu->r[3];
|
|
/* 0239AD64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0239AD68 */ cpu->r[25] = 0x00000000u;
|
|
/* 0239AD6C */ _t5 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0239AD6C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0239AD6C */ if (_t6) goto L_0239AD70; else goto L_0239AE2C;
|
|
L_0239AD70: ; // 0x239ad70
|
|
/* 0239AD70 */ cpu->r[29] = 0x101E0000u;
|
|
/* 0239AD74 */ cpu->r[28] = cpu->r[31];
|
|
/* 0239AD78 */ cpu->r[29] = cpu->r[29] + 0x00004AB8u;
|
|
/* 0239AD7C */ goto L_0239AD88;
|
|
L_0239AD80: ; // 0x239ad80
|
|
/* 0239AD80 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[25], 0x00000008u);
|
|
/* 0239AD84 */ _t7 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0239AD84 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0239AD84 */ if (_t8) goto L_0239AD88; else goto L_0239AD90;
|
|
L_0239AD88: ; // 0x239ad88
|
|
/* 0239AD88 */ cpu->r[7] = cpu->r[28];
|
|
/* 0239AD8C */ goto L_0239AD94;
|
|
L_0239AD90: ; // 0x239ad90
|
|
/* 0239AD90 */ cpu->r[7] = cpu->r[31];
|
|
L_0239AD94: ; // 0x239ad94
|
|
/* 0239AD94 */ _t9 = cpu->r[7] + 0x00000000u;
|
|
/* 0239AD94 */ cpu->r[5] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0239AD98 */ _t10 = cpu->r[29] + 0x00000000u;
|
|
/* 0239AD98 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0239AD9C */ _t11 = cpu->r[5] + 0x000000C4u;
|
|
/* 0239AD9C */ cpu->r[11] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0239ADA0 */ cpu->r[26] = cpu->r[5] + 0x000000C4u;
|
|
/* 0239ADA4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[0]);
|
|
/* 0239ADA8 */ _t12 = cpu->r[5] + 0x000000C8u;
|
|
/* 0239ADA8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0239ADAC */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239ADAC */ _t14 = _t13 & 0x00000001u;
|
|
/* 0239ADAC */ if (_t14) goto L_0239ADB0; else goto L_0239ADBC;
|
|
L_0239ADB0: ; // 0x239adb0
|
|
/* 0239ADB0 */ _t15 = cpu->r[29] + 0x00000004u;
|
|
/* 0239ADB0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0239ADB4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[12]);
|
|
/* 0239ADB8 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239ADB8 */ _t17 = _t16 & 0x00000001u;
|
|
/* 0239ADB8 */ if (_t17) goto L_0239AE1C; else goto L_0239ADBC;
|
|
L_0239ADBC: ; // 0x239adbc
|
|
/* 0239ADBC */ cpu->r[3] = cpu->r[26];
|
|
/* 0239ADC0 */ Gambit_fn_027F59DC(cpu);
|
|
/* 0239ADC4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239ADC8 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239ADC8 */ _t19 = _t18 & 0x00000001u;
|
|
/* 0239ADC8 */ if (_t19) goto L_0239ADCC; else goto L_0239AE1C;
|
|
L_0239ADCC: ; // 0x239adcc
|
|
/* 0239ADCC */ cpu->r[3] = cpu->r[26];
|
|
/* 0239ADD0 */ Gambit_fn_027F5A54(cpu);
|
|
/* 0239ADD4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239ADD8 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239ADD8 */ _t21 = _t20 & 0x00000001u;
|
|
/* 0239ADD8 */ if (_t21) goto L_0239ADDC; else goto L_0239AE1C;
|
|
L_0239ADDC: ; // 0x239addc
|
|
/* 0239ADDC */ cpu->r[3] = cpu->r[30];
|
|
/* 0239ADE0 */ cpu->r[4] = cpu->r[26];
|
|
/* 0239ADE4 */ Gambit_fn_026F0940(cpu);
|
|
/* 0239ADE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239ADEC */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239ADEC */ _t23 = _t22 & 0x00000001u;
|
|
/* 0239ADEC */ if (_t23) goto L_0239AE04; else goto L_0239ADF0;
|
|
L_0239ADF0: ; // 0x239adf0
|
|
/* 0239ADF0 */ _t24 = cpu->r[30] + 0x00000048u;
|
|
/* 0239ADF0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0239ADF4 */ cpu->r[4] = cpu->r[26];
|
|
/* 0239ADF8 */ Gambit_fn_023BA550(cpu);
|
|
/* 0239ADFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239AE00 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239AE00 */ _t26 = _t25 & 0x00000001u;
|
|
/* 0239AE00 */ if (_t26) goto L_0239AE04; else goto L_0239AE1C;
|
|
L_0239AE04: ; // 0x239ae04
|
|
/* 0239AE04 */ /* nop */
|
|
/* 0239AE08 */ _t27 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0239AE08 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0239AE0C */ cpu->lr = cpu->r[0];
|
|
/* 0239AE10 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 0239AE14 */ cpu->r[3] = 0x00000000u;
|
|
/* 0239AE18 */ return;
|
|
L_0239AE1C: ; // 0x239ae1c
|
|
/* 0239AE1C */ cpu->r[27] = cpu->r[27] + 0xFFFFFFFFu;
|
|
/* 0239AE1C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0239AE20 */ cpu->r[25] = cpu->r[25] + 0x00000001u;
|
|
/* 0239AE24 */ cpu->r[28] = cpu->r[28] + 0x00000004u;
|
|
/* 0239AE28 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239AE28 */ _t29 = _t28 & 0x00000001u;
|
|
/* 0239AE28 */ if (_t29) goto L_0239AE2C; else goto L_0239AD80;
|
|
L_0239AE2C: ; // 0x239ae2c
|
|
/* 0239AE2C */ /* nop */
|
|
/* 0239AE30 */ _t30 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0239AE30 */ cpu->r[0] = rbrew_read32(cpu->mem, _t30);
|
|
/* 0239AE34 */ cpu->lr = cpu->r[0];
|
|
/* 0239AE38 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 0239AE3C */ cpu->r[3] = 0x00000001u;
|
|
/* 0239AE40 */ return;
|
|
}
|
|
|
|
// fn_0239AE44 @ 0x239ae44
|
|
void Gambit_fn_0239AE44(CPUState* cpu) {
|
|
uint32_t _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_0239AE44: ; // 0x239ae44
|
|
/* 0239AE44 */ cpu->r[0] = cpu->lr;
|
|
/* 0239AE48 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0239AE48 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239AE48 */ cpu->r[1] = _t0;
|
|
/* 0239AE4C */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0239AE4C */ rbrew_write32(cpu->mem, _t1, cpu->r[28]);
|
|
/* 0239AE50 */ cpu->r[28] = cpu->r[4];
|
|
/* 0239AE54 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0239AE54 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0239AE58 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239AE58 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 0239AE5C */ cpu->r[31] = cpu->r[3];
|
|
/* 0239AE5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0239AE60 */ _t4 = cpu->r[1] + 0x00000010u;
|
|
/* 0239AE60 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 0239AE64 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239AE64 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0239AE68 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239AE68 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0239AE68 */ if (_t7) goto L_0239AECC; else goto L_0239AE6C;
|
|
L_0239AE6C: ; // 0x239ae6c
|
|
/* 0239AE6C */ cpu->r[6] = 0x10080000u;
|
|
/* 0239AE70 */ cpu->r[6] = cpu->r[6] + 0x00006E78u;
|
|
/* 0239AE74 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0239AE78 */ _t8 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0239AE78 */ rbrew_write32(cpu->mem, _t8, cpu->r[6]);
|
|
/* 0239AE7C */ _t9 = cpu->r[12] + 0x00005BA4u;
|
|
/* 0239AE7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0239AE7C */ cpu->r[12] = _t9;
|
|
/* 0239AE80 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]);
|
|
/* 0239AE84 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239AE84 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0239AE84 */ if (_t11) goto L_0239AE88; else goto L_0239AEB0;
|
|
L_0239AE88: ; // 0x239ae88
|
|
/* 0239AE88 */ cpu->r[30] = 0x101C0000u;
|
|
/* 0239AE8C */ cpu->r[29] = 0x00000000u;
|
|
/* 0239AE90 */ _t12 = cpu->r[30] + 0x00005BA0u;
|
|
/* 0239AE90 */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0239AE94 */ _t13 = cpu->r[12] + 0x00000000u;
|
|
/* 0239AE94 */ rbrew_write32(cpu->mem, _t13, cpu->r[29]);
|
|
/* 0239AE98 */ _t14 = cpu->r[3] + 0x00000000u;
|
|
/* 0239AE98 */ cpu->r[8] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0239AE9C */ _t15 = cpu->r[8] + 0x00000014u;
|
|
/* 0239AE9C */ cpu->r[10] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0239AEA0 */ cpu->ctr = cpu->r[10];
|
|
/* 0239AEA4 */ cpu->r[4] = 0x00000002u;
|
|
/* 0239AEA8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0239AEAC */ _t16 = cpu->r[30] + 0x00005BA0u;
|
|
/* 0239AEAC */ rbrew_write32(cpu->mem, _t16, cpu->r[29]);
|
|
L_0239AEB0: ; // 0x239aeb0
|
|
/* 0239AEB0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0239AEB4 */ cpu->r[4] = 0x00000000u;
|
|
/* 0239AEB8 */ Gambit_fn_02821E68(cpu);
|
|
/* 0239AEBC */ cpu->r[0] = rbrew_rlwinm(cpu->r[28], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0239AEBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0239AEC0 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239AEC0 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0239AEC0 */ if (_t18) goto L_0239AECC; else goto L_0239AEC4;
|
|
L_0239AEC4: ; // 0x239aec4
|
|
/* 0239AEC4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0239AEC8 */ Gambit_fn_02801BB0(cpu);
|
|
L_0239AECC: ; // 0x239aecc
|
|
/* 0239AECC */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 0239AECC */ cpu->r[28] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0239AED0 */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239AED0 */ cpu->r[29] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0239AED4 */ _t21 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239AED4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0239AED8 */ _t22 = cpu->r[1] + 0x00000010u;
|
|
/* 0239AED8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0239AEDC */ cpu->lr = cpu->r[0];
|
|
/* 0239AEE0 */ _t23 = cpu->r[1] + 0x00000014u;
|
|
/* 0239AEE0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0239AEE4 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0239AEE8 */ return;
|
|
}
|
|
|
|
// fn_0239AE48 @ 0x239ae48
|
|
void Gambit_fn_0239AE48(CPUState* cpu) {
|
|
uint32_t _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_0239AE48: ; // 0x239ae48
|
|
/* 0239AE48 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0239AE48 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239AE48 */ cpu->r[1] = _t0;
|
|
/* 0239AE4C */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0239AE4C */ rbrew_write32(cpu->mem, _t1, cpu->r[28]);
|
|
/* 0239AE50 */ cpu->r[28] = cpu->r[4];
|
|
/* 0239AE54 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0239AE54 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0239AE58 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239AE58 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 0239AE5C */ cpu->r[31] = cpu->r[3];
|
|
/* 0239AE5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0239AE60 */ _t4 = cpu->r[1] + 0x00000010u;
|
|
/* 0239AE60 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 0239AE64 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239AE64 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0239AE68 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239AE68 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0239AE68 */ if (_t7) goto L_0239AECC; else goto L_0239AE6C;
|
|
L_0239AE6C: ; // 0x239ae6c
|
|
/* 0239AE6C */ cpu->r[6] = 0x10080000u;
|
|
/* 0239AE70 */ cpu->r[6] = cpu->r[6] + 0x00006E78u;
|
|
/* 0239AE74 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0239AE78 */ _t8 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0239AE78 */ rbrew_write32(cpu->mem, _t8, cpu->r[6]);
|
|
/* 0239AE7C */ _t9 = cpu->r[12] + 0x00005BA4u;
|
|
/* 0239AE7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0239AE7C */ cpu->r[12] = _t9;
|
|
/* 0239AE80 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]);
|
|
/* 0239AE84 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239AE84 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0239AE84 */ if (_t11) goto L_0239AE88; else goto L_0239AEB0;
|
|
L_0239AE88: ; // 0x239ae88
|
|
/* 0239AE88 */ cpu->r[30] = 0x101C0000u;
|
|
/* 0239AE8C */ cpu->r[29] = 0x00000000u;
|
|
/* 0239AE90 */ _t12 = cpu->r[30] + 0x00005BA0u;
|
|
/* 0239AE90 */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0239AE94 */ _t13 = cpu->r[12] + 0x00000000u;
|
|
/* 0239AE94 */ rbrew_write32(cpu->mem, _t13, cpu->r[29]);
|
|
/* 0239AE98 */ _t14 = cpu->r[3] + 0x00000000u;
|
|
/* 0239AE98 */ cpu->r[8] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0239AE9C */ _t15 = cpu->r[8] + 0x00000014u;
|
|
/* 0239AE9C */ cpu->r[10] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0239AEA0 */ cpu->ctr = cpu->r[10];
|
|
/* 0239AEA4 */ cpu->r[4] = 0x00000002u;
|
|
/* 0239AEA8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0239AEAC */ _t16 = cpu->r[30] + 0x00005BA0u;
|
|
/* 0239AEAC */ rbrew_write32(cpu->mem, _t16, cpu->r[29]);
|
|
L_0239AEB0: ; // 0x239aeb0
|
|
/* 0239AEB0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0239AEB4 */ cpu->r[4] = 0x00000000u;
|
|
/* 0239AEB8 */ Gambit_fn_02821E68(cpu);
|
|
/* 0239AEBC */ cpu->r[0] = rbrew_rlwinm(cpu->r[28], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0239AEBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0239AEC0 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239AEC0 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0239AEC0 */ if (_t18) goto L_0239AECC; else goto L_0239AEC4;
|
|
L_0239AEC4: ; // 0x239aec4
|
|
/* 0239AEC4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0239AEC8 */ Gambit_fn_02801BB0(cpu);
|
|
L_0239AECC: ; // 0x239aecc
|
|
/* 0239AECC */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 0239AECC */ cpu->r[28] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0239AED0 */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239AED0 */ cpu->r[29] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0239AED4 */ _t21 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239AED4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0239AED8 */ _t22 = cpu->r[1] + 0x00000010u;
|
|
/* 0239AED8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0239AEDC */ cpu->lr = cpu->r[0];
|
|
/* 0239AEE0 */ _t23 = cpu->r[1] + 0x00000014u;
|
|
/* 0239AEE0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0239AEE4 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0239AEE8 */ return;
|
|
}
|
|
|
|
// fn_0239AEEC @ 0x239aeec
|
|
void Gambit_fn_0239AEEC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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_0239AEEC: ; // 0x239aeec
|
|
/* 0239AEEC */ _t0 = cpu->r[1] + 0xFFFFFF98u;
|
|
/* 0239AEEC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239AEEC */ cpu->r[1] = _t0;
|
|
/* 0239AEF0 */ _t1 = cpu->r[1] + 0x00000028u;
|
|
/* 0239AEF0 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[28]);
|
|
/* 0239AEF4 */ /* nop */
|
|
/* 0239AEF8 */ _t2 = cpu->r[1] + 0x00000058u;
|
|
/* 0239AEF8 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 0239AEFC */ /* nop */
|
|
/* 0239AF00 */ /* nop */
|
|
/* 0239AF04 */ cpu->r[0] = cpu->lr;
|
|
/* 0239AF08 */ _t3 = cpu->r[1] + 0x00000048u;
|
|
/* 0239AF08 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[30]);
|
|
/* 0239AF0C */ _t4 = cpu->r[1] + 0x00000030u;
|
|
/* 0239AF0C */ rbrew_write_f32(cpu->mem, _t4, cpu->f[28]);
|
|
/* 0239AF10 */ /* nop */
|
|
/* 0239AF14 */ _t5 = cpu->r[1] + 0x00000038u;
|
|
/* 0239AF14 */ rbrew_write_f64(cpu->mem, _t5, cpu->f[29]);
|
|
/* 0239AF18 */ _t6 = cpu->r[1] + 0x00000060u;
|
|
/* 0239AF18 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[31]);
|
|
/* 0239AF1C */ /* nop */
|
|
/* 0239AF20 */ _t7 = cpu->r[1] + 0x00000050u;
|
|
/* 0239AF20 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[30]);
|
|
/* 0239AF24 */ cpu->r[8] = 0xFFFFFFFDu;
|
|
/* 0239AF28 */ _t8 = cpu->r[1] + 0x00000040u;
|
|
/* 0239AF28 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[29]);
|
|
/* 0239AF2C */ cpu->r[4] = 0xFFFFFFFFu;
|
|
/* 0239AF30 */ cpu->r[7] = 0x101E0000u;
|
|
/* 0239AF34 */ _t9 = cpu->r[1] + 0x0000006Cu;
|
|
/* 0239AF34 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 0239AF38 */ cpu->r[6] = 0xFFFFFFFEu;
|
|
/* 0239AF3C */ _t10 = cpu->r[7] + 0x00004AA0u;
|
|
/* 0239AF3C */ rbrew_write32(cpu->mem, _t10, cpu->r[8]);
|
|
/* 0239AF3C */ cpu->r[7] = _t10;
|
|
/* 0239AF40 */ cpu->r[5] = 0x101E0000u;
|
|
/* 0239AF44 */ cpu->r[10] = 0x101E0000u;
|
|
/* 0239AF48 */ _t11 = cpu->r[5] + 0x00004AA8u;
|
|
/* 0239AF48 */ rbrew_write32(cpu->mem, _t11, cpu->r[6]);
|
|
/* 0239AF48 */ cpu->r[5] = _t11;
|
|
/* 0239AF4C */ cpu->r[10] = cpu->r[10] + 0x00004AB8u;
|
|
/* 0239AF50 */ _t12 = cpu->r[7] + 0x00000004u;
|
|
/* 0239AF50 */ rbrew_write32(cpu->mem, _t12, cpu->r[4]);
|
|
/* 0239AF54 */ cpu->r[9] = 0x101F0000u;
|
|
/* 0239AF58 */ _t13 = cpu->r[10] + 0x00000004u;
|
|
/* 0239AF58 */ rbrew_write32(cpu->mem, _t13, cpu->r[4]);
|
|
/* 0239AF5C */ cpu->r[9] = cpu->r[9] + 0x00005BFCu;
|
|
/* 0239AF60 */ _t14 = cpu->r[5] + 0x00000004u;
|
|
/* 0239AF60 */ rbrew_write32(cpu->mem, _t14, cpu->r[4]);
|
|
/* 0239AF64 */ cpu->r[12] = 0x101E0000u;
|
|
/* 0239AF68 */ _t15 = cpu->r[9] + 0x00000008u;
|
|
/* 0239AF68 */ cpu->r[29] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0239AF6C */ cpu->r[31] = 0x101E0000u;
|
|
/* 0239AF70 */ _t16 = cpu->r[12] + 0x00004AB0u;
|
|
/* 0239AF70 */ rbrew_write32(cpu->mem, _t16, cpu->r[4]);
|
|
/* 0239AF70 */ cpu->r[12] = _t16;
|
|
/* 0239AF74 */ cpu->r[11] = 0x00000002u;
|
|
/* 0239AF78 */ _t17 = cpu->r[9] + 0x00000004u;
|
|
/* 0239AF78 */ cpu->r[26] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0239AF7C */ _t18 = cpu->r[9] + 0x00000000u;
|
|
/* 0239AF7C */ cpu->r[28] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0239AF80 */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 0239AF80 */ rbrew_write32(cpu->mem, _t19, cpu->r[11]);
|
|
/* 0239AF84 */ _t20 = cpu->r[1] + 0x00000008u;
|
|
/* 0239AF84 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0239AF88 */ _t21 = cpu->r[31] + 0x00004ACCu;
|
|
/* 0239AF88 */ rbrew_write32(cpu->mem, _t21, cpu->r[28]);
|
|
/* 0239AF88 */ cpu->r[31] = _t21;
|
|
/* 0239AF8C */ cpu->r[0] = 0x00000004u;
|
|
/* 0239AF90 */ _t22 = cpu->r[12] + 0x00000004u;
|
|
/* 0239AF90 */ rbrew_write32(cpu->mem, _t22, cpu->r[4]);
|
|
/* 0239AF94 */ cpu->r[12] = 0x101F0000u;
|
|
/* 0239AF98 */ _t23 = cpu->r[9] + 0x0000000Cu;
|
|
/* 0239AF98 */ cpu->r[27] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0239AF9C */ _t24 = cpu->r[12] + 0x00005C2Cu;
|
|
/* 0239AF9C */ cpu->r[9] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0239AF9C */ cpu->r[12] = _t24;
|
|
/* 0239AFA0 */ _t25 = cpu->r[31] + 0x00000010u;
|
|
/* 0239AFA0 */ rbrew_write32(cpu->mem, _t25, cpu->r[28]);
|
|
/* 0239AFA4 */ _t26 = cpu->r[31] + 0x00000018u;
|
|
/* 0239AFA4 */ rbrew_write32(cpu->mem, _t26, cpu->r[29]);
|
|
/* 0239AFA8 */ _t27 = cpu->r[31] + 0x00000030u;
|
|
/* 0239AFA8 */ rbrew_write32(cpu->mem, _t27, cpu->r[9]);
|
|
/* 0239AFAC */ _t28 = cpu->r[31] + 0x0000002Cu;
|
|
/* 0239AFAC */ rbrew_write32(cpu->mem, _t28, cpu->r[27]);
|
|
/* 0239AFB0 */ _t29 = cpu->r[31] + 0x00000008u;
|
|
/* 0239AFB0 */ rbrew_write32(cpu->mem, _t29, cpu->r[29]);
|
|
/* 0239AFB4 */ _t30 = cpu->r[31] + 0x00000024u;
|
|
/* 0239AFB4 */ rbrew_write32(cpu->mem, _t30, cpu->r[26]);
|
|
/* 0239AFB8 */ cpu->r[7] = 0x101E0000u;
|
|
/* 0239AFBC */ _t31 = cpu->r[31] + 0x00000028u;
|
|
/* 0239AFBC */ rbrew_write32(cpu->mem, _t31, cpu->r[29]);
|
|
/* 0239AFC0 */ cpu->r[6] = 0x101F0000u;
|
|
/* 0239AFC4 */ _t32 = cpu->r[7] + 0x00004AC8u;
|
|
/* 0239AFC4 */ rbrew_write32(cpu->mem, _t32, cpu->r[0]);
|
|
/* 0239AFC8 */ _t33 = cpu->r[6] + 0x00005C1Cu;
|
|
/* 0239AFC8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 0239AFC8 */ cpu->r[6] = _t33;
|
|
/* 0239AFCC */ _t34 = cpu->r[31] + 0x00000004u;
|
|
/* 0239AFCC */ rbrew_write32(cpu->mem, _t34, cpu->r[26]);
|
|
/* 0239AFD0 */ _t35 = cpu->r[31] + 0x00000020u;
|
|
/* 0239AFD0 */ rbrew_write32(cpu->mem, _t35, cpu->r[28]);
|
|
/* 0239AFD4 */ cpu->r[5] = 0x101E0000u;
|
|
/* 0239AFD8 */ _t36 = cpu->r[12] + 0x0000000Cu;
|
|
/* 0239AFD8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t36);
|
|
/* 0239AFDC */ _t37 = cpu->r[5] + 0x00004AC0u;
|
|
/* 0239AFDC */ rbrew_write32(cpu->mem, _t37, cpu->r[8]);
|
|
/* 0239AFDC */ cpu->r[5] = _t37;
|
|
/* 0239AFE0 */ _t38 = cpu->r[31] + 0x00000014u;
|
|
/* 0239AFE0 */ rbrew_write32(cpu->mem, _t38, cpu->r[26]);
|
|
/* 0239AFE4 */ _t39 = cpu->r[10] + 0x00000000u;
|
|
/* 0239AFE4 */ rbrew_write32(cpu->mem, _t39, cpu->r[8]);
|
|
/* 0239AFE8 */ _t40 = cpu->r[31] + 0x00000040u;
|
|
/* 0239AFE8 */ rbrew_write32(cpu->mem, _t40, cpu->r[0]);
|
|
/* 0239AFEC */ _t41 = cpu->r[6] + 0x0000000Cu;
|
|
/* 0239AFEC */ cpu->r[0] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0239AFF0 */ _t42 = cpu->r[6] + 0x00000008u;
|
|
/* 0239AFF0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t42);
|
|
/* 0239AFF4 */ _t43 = cpu->r[6] + 0x00000004u;
|
|
/* 0239AFF4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t43);
|
|
/* 0239AFF8 */ _t44 = cpu->r[31] + 0x0000003Cu;
|
|
/* 0239AFF8 */ rbrew_write32(cpu->mem, _t44, cpu->r[11]);
|
|
/* 0239AFFC */ _t45 = cpu->r[31] + 0x00000044u;
|
|
/* 0239AFFC */ rbrew_write32(cpu->mem, _t45, cpu->r[8]);
|
|
/* 0239B000 */ _t46 = cpu->r[31] + 0x00000048u;
|
|
/* 0239B000 */ rbrew_write32(cpu->mem, _t46, cpu->r[9]);
|
|
/* 0239B004 */ _t47 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0239B004 */ rbrew_write32(cpu->mem, _t47, cpu->r[27]);
|
|
/* 0239B008 */ _t48 = cpu->r[5] + 0x00000004u;
|
|
/* 0239B008 */ rbrew_write32(cpu->mem, _t48, cpu->r[4]);
|
|
/* 0239B00C */ _t49 = cpu->r[12] + 0x00000004u;
|
|
/* 0239B00C */ cpu->r[5] = rbrew_read32(cpu->mem, _t49);
|
|
/* 0239B010 */ _t50 = cpu->r[31] + 0x0000004Cu;
|
|
/* 0239B010 */ rbrew_write32(cpu->mem, _t50, cpu->r[0]);
|
|
/* 0239B014 */ cpu->r[11] = 0x101F0000u;
|
|
/* 0239B018 */ _t51 = cpu->r[12] + 0x00000008u;
|
|
/* 0239B018 */ cpu->r[7] = rbrew_read32(cpu->mem, _t51);
|
|
/* 0239B01C */ _t52 = cpu->r[11] + 0x00005BDCu;
|
|
/* 0239B01C */ cpu->r[30] = rbrew_read32(cpu->mem, _t52);
|
|
/* 0239B01C */ cpu->r[11] = _t52;
|
|
/* 0239B020 */ _t53 = cpu->r[11] + 0x00000008u;
|
|
/* 0239B020 */ cpu->r[3] = rbrew_read32(cpu->mem, _t53);
|
|
/* 0239B024 */ _t54 = cpu->r[11] + 0x0000000Cu;
|
|
/* 0239B024 */ cpu->r[4] = rbrew_read32(cpu->mem, _t54);
|
|
/* 0239B028 */ _t55 = cpu->r[11] + 0x00000004u;
|
|
/* 0239B028 */ cpu->r[11] = rbrew_read32(cpu->mem, _t55);
|
|
/* 0239B02C */ _t56 = cpu->r[31] + 0x00000088u;
|
|
/* 0239B02C */ rbrew_write32(cpu->mem, _t56, cpu->r[3]);
|
|
/* 0239B030 */ _t57 = cpu->r[31] + 0x00000080u;
|
|
/* 0239B030 */ rbrew_write32(cpu->mem, _t57, cpu->r[30]);
|
|
/* 0239B034 */ _t58 = cpu->r[31] + 0x00000034u;
|
|
/* 0239B034 */ rbrew_write32(cpu->mem, _t58, cpu->r[5]);
|
|
/* 0239B038 */ cpu->r[12] = 0x101F0000u;
|
|
/* 0239B03C */ _t59 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0239B03C */ rbrew_write32(cpu->mem, _t59, cpu->r[27]);
|
|
/* 0239B040 */ cpu->r[5] = 0x101F0000u;
|
|
/* 0239B044 */ _t60 = cpu->r[31] + 0x00000038u;
|
|
/* 0239B044 */ rbrew_write32(cpu->mem, _t60, cpu->r[7]);
|
|
/* 0239B048 */ cpu->r[5] = cpu->r[5] + 0x00005C4Cu;
|
|
/* 0239B04C */ _t61 = cpu->r[12] + 0x00005C3Cu;
|
|
/* 0239B04C */ cpu->r[7] = rbrew_read32(cpu->mem, _t61);
|
|
/* 0239B04C */ cpu->r[12] = _t61;
|
|
/* 0239B050 */ _t62 = cpu->r[12] + 0x00000008u;
|
|
/* 0239B050 */ cpu->r[9] = rbrew_read32(cpu->mem, _t62);
|
|
/* 0239B054 */ _t63 = cpu->r[5] + 0x00000004u;
|
|
/* 0239B054 */ cpu->r[8] = rbrew_read32(cpu->mem, _t63);
|
|
/* 0239B058 */ _t64 = cpu->r[31] + 0x00000058u;
|
|
/* 0239B058 */ rbrew_write32(cpu->mem, _t64, cpu->r[3]);
|
|
/* 0239B05C */ _t65 = cpu->r[31] + 0x00000064u;
|
|
/* 0239B05C */ rbrew_write32(cpu->mem, _t65, cpu->r[8]);
|
|
/* 0239B060 */ _t66 = cpu->r[31] + 0x00000090u;
|
|
/* 0239B060 */ rbrew_write32(cpu->mem, _t66, cpu->r[30]);
|
|
/* 0239B064 */ _t67 = cpu->r[31] + 0x00000070u;
|
|
/* 0239B064 */ rbrew_write32(cpu->mem, _t67, cpu->r[7]);
|
|
/* 0239B068 */ _t68 = cpu->r[12] + 0x00000004u;
|
|
/* 0239B068 */ cpu->r[8] = rbrew_read32(cpu->mem, _t68);
|
|
/* 0239B06C */ _t69 = cpu->r[12] + 0x0000000Cu;
|
|
/* 0239B06C */ cpu->r[10] = rbrew_read32(cpu->mem, _t69);
|
|
/* 0239B070 */ _t70 = cpu->r[31] + 0x00000074u;
|
|
/* 0239B070 */ rbrew_write32(cpu->mem, _t70, cpu->r[8]);
|
|
/* 0239B074 */ _t71 = cpu->r[31] + 0x0000007Cu;
|
|
/* 0239B074 */ rbrew_write32(cpu->mem, _t71, cpu->r[10]);
|
|
/* 0239B078 */ _t72 = cpu->r[5] + 0x0000000Cu;
|
|
/* 0239B078 */ cpu->r[0] = rbrew_read32(cpu->mem, _t72);
|
|
/* 0239B07C */ _t73 = cpu->r[31] + 0x0000005Cu;
|
|
/* 0239B07C */ rbrew_write32(cpu->mem, _t73, cpu->r[4]);
|
|
/* 0239B080 */ _t74 = cpu->r[31] + 0x0000006Cu;
|
|
/* 0239B080 */ rbrew_write32(cpu->mem, _t74, cpu->r[0]);
|
|
/* 0239B084 */ _t75 = cpu->r[31] + 0x00000094u;
|
|
/* 0239B084 */ rbrew_write32(cpu->mem, _t75, cpu->r[11]);
|
|
/* 0239B088 */ _t76 = cpu->r[31] + 0x00000054u;
|
|
/* 0239B088 */ rbrew_write32(cpu->mem, _t76, cpu->r[11]);
|
|
/* 0239B08C */ _t77 = cpu->r[31] + 0x00000084u;
|
|
/* 0239B08C */ rbrew_write32(cpu->mem, _t77, cpu->r[11]);
|
|
/* 0239B090 */ _t78 = cpu->r[31] + 0x00000050u;
|
|
/* 0239B090 */ rbrew_write32(cpu->mem, _t78, cpu->r[30]);
|
|
/* 0239B094 */ _t79 = cpu->r[5] + 0x00000000u;
|
|
/* 0239B094 */ cpu->r[6] = rbrew_read32(cpu->mem, _t79);
|
|
/* 0239B098 */ cpu->r[10] = 0x101F0000u;
|
|
/* 0239B09C */ _t80 = cpu->r[31] + 0x0000008Cu;
|
|
/* 0239B09C */ rbrew_write32(cpu->mem, _t80, cpu->r[4]);
|
|
/* 0239B0A0 */ _t81 = cpu->r[10] + 0x00005C0Cu;
|
|
/* 0239B0A0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t81);
|
|
/* 0239B0A0 */ cpu->r[10] = _t81;
|
|
/* 0239B0A4 */ _t82 = cpu->r[10] + 0x00000004u;
|
|
/* 0239B0A4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t82);
|
|
/* 0239B0A8 */ _t83 = cpu->r[31] + 0x000000BCu;
|
|
/* 0239B0A8 */ rbrew_write32(cpu->mem, _t83, cpu->r[27]);
|
|
/* 0239B0AC */ _t84 = cpu->r[31] + 0x000000A0u;
|
|
/* 0239B0AC */ rbrew_write32(cpu->mem, _t84, cpu->r[7]);
|
|
/* 0239B0B0 */ _t85 = cpu->r[31] + 0x000000A4u;
|
|
/* 0239B0B0 */ rbrew_write32(cpu->mem, _t85, cpu->r[8]);
|
|
/* 0239B0B4 */ _t86 = cpu->r[31] + 0x00000078u;
|
|
/* 0239B0B4 */ rbrew_write32(cpu->mem, _t86, cpu->r[9]);
|
|
/* 0239B0B8 */ cpu->r[12] = 0x10080000u;
|
|
/* 0239B0BC */ _t87 = cpu->r[10] + 0x00000008u;
|
|
/* 0239B0BC */ cpu->r[9] = rbrew_read32(cpu->mem, _t87);
|
|
/* 0239B0C0 */ _t88 = cpu->r[12] + 0x00006E74u;
|
|
/* 0239B0C0 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t88);
|
|
/* 0239B0C4 */ _t89 = cpu->r[31] + 0x000000A8u;
|
|
/* 0239B0C4 */ rbrew_write32(cpu->mem, _t89, cpu->r[9]);
|
|
/* 0239B0C8 */ _t90 = cpu->r[31] + 0x00000060u;
|
|
/* 0239B0C8 */ rbrew_write32(cpu->mem, _t90, cpu->r[6]);
|
|
/* 0239B0CC */ _t91 = cpu->r[31] + 0x00000098u;
|
|
/* 0239B0CC */ rbrew_write32(cpu->mem, _t91, cpu->r[3]);
|
|
/* 0239B0D0 */ _t92 = cpu->r[31] + 0x0000009Cu;
|
|
/* 0239B0D0 */ rbrew_write32(cpu->mem, _t92, cpu->r[4]);
|
|
/* 0239B0D4 */ _t93 = cpu->r[5] + 0x00000008u;
|
|
/* 0239B0D4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t93);
|
|
/* 0239B0D8 */ _t94 = cpu->r[31] + 0x000000B8u;
|
|
/* 0239B0D8 */ rbrew_write32(cpu->mem, _t94, cpu->r[29]);
|
|
/* 0239B0DC */ cpu->r[12] = 0x10080000u;
|
|
/* 0239B0E0 */ _t95 = cpu->r[31] + 0x00000068u;
|
|
/* 0239B0E0 */ rbrew_write32(cpu->mem, _t95, cpu->r[9]);
|
|
/* 0239B0E4 */ cpu->r[3] = cpu->r[31] + 0x000000C0u;
|
|
/* 0239B0E8 */ _t96 = cpu->r[12] + 0x00006E6Cu;
|
|
/* 0239B0E8 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t96);
|
|
/* 0239B0EC */ _t97 = cpu->r[31] + 0x000000B0u;
|
|
/* 0239B0EC */ rbrew_write32(cpu->mem, _t97, cpu->r[28]);
|
|
/* 0239B0F0 */ cpu->r[12] = 0x10080000u;
|
|
/* 0239B0F4 */ _t98 = cpu->r[31] + 0x000000B4u;
|
|
/* 0239B0F4 */ rbrew_write32(cpu->mem, _t98, cpu->r[26]);
|
|
/* 0239B0F8 */ _t99 = cpu->r[12] + 0x00006E68u;
|
|
/* 0239B0F8 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t99);
|
|
/* 0239B0FC */ cpu->r[11] = 0x10080000u;
|
|
/* 0239B100 */ _t100 = cpu->r[10] + 0x0000000Cu;
|
|
/* 0239B100 */ cpu->r[10] = rbrew_read32(cpu->mem, _t100);
|
|
/* 0239B104 */ _t101 = cpu->r[11] + 0x00006E70u;
|
|
/* 0239B104 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t101);
|
|
/* 0239B108 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0xFFFFFF40u);
|
|
/* 0239B10C */ _t102 = cpu->r[31] + 0x000000ACu;
|
|
/* 0239B10C */ rbrew_write32(cpu->mem, _t102, cpu->r[10]);
|
|
/* 0239B110 */ _t103 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B110 */ _t104 = _t103 & 0x00000001u;
|
|
/* 0239B110 */ if (_t104) goto L_0239B114; else goto L_0239B124;
|
|
L_0239B114: ; // 0x239b114
|
|
/* 0239B114 */ cpu->r[3] = 0x00000010u;
|
|
/* 0239B118 */ Gambit_fn_02801A78(cpu);
|
|
/* 0239B11C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239B120 */ _t105 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B120 */ _t106 = _t105 & 0x00000001u;
|
|
/* 0239B120 */ if (_t106) goto L_0239B134; else goto L_0239B124;
|
|
L_0239B124: ; // 0x239b124
|
|
/* 0239B124 */ _t107 = cpu->r[3] + 0x00000004u;
|
|
/* 0239B124 */ rbrew_write_f32(cpu->mem, _t107, cpu->f[29]);
|
|
/* 0239B128 */ _t108 = cpu->r[3] + 0x00000008u;
|
|
/* 0239B128 */ rbrew_write_f32(cpu->mem, _t108, cpu->f[28]);
|
|
/* 0239B12C */ _t109 = cpu->r[3] + 0x00000000u;
|
|
/* 0239B12C */ rbrew_write_f32(cpu->mem, _t109, cpu->f[31]);
|
|
/* 0239B130 */ _t110 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0239B130 */ rbrew_write_f32(cpu->mem, _t110, cpu->f[30]);
|
|
L_0239B134: ; // 0x239b134
|
|
/* 0239B134 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0xFFFFFF30u);
|
|
/* 0239B138 */ cpu->r[3] = cpu->r[31] + 0x000000D0u;
|
|
/* 0239B13C */ _t111 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B13C */ _t112 = _t111 & 0x00000001u;
|
|
/* 0239B13C */ if (_t112) goto L_0239B140; else goto L_0239B150;
|
|
L_0239B140: ; // 0x239b140
|
|
/* 0239B140 */ cpu->r[3] = 0x00000010u;
|
|
/* 0239B144 */ Gambit_fn_02801A78(cpu);
|
|
/* 0239B148 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239B14C */ _t113 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B14C */ _t114 = _t113 & 0x00000001u;
|
|
/* 0239B14C */ if (_t114) goto L_0239B160; else goto L_0239B150;
|
|
L_0239B150: ; // 0x239b150
|
|
/* 0239B150 */ _t115 = cpu->r[3] + 0x00000004u;
|
|
/* 0239B150 */ rbrew_write_f32(cpu->mem, _t115, cpu->f[29]);
|
|
/* 0239B154 */ _t116 = cpu->r[3] + 0x00000008u;
|
|
/* 0239B154 */ rbrew_write_f32(cpu->mem, _t116, cpu->f[31]);
|
|
/* 0239B158 */ _t117 = cpu->r[3] + 0x00000000u;
|
|
/* 0239B158 */ rbrew_write_f32(cpu->mem, _t117, cpu->f[28]);
|
|
/* 0239B15C */ _t118 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0239B15C */ rbrew_write_f32(cpu->mem, _t118, cpu->f[30]);
|
|
L_0239B160: ; // 0x239b160
|
|
/* 0239B160 */ cpu->r[8] = 0x101F0000u;
|
|
/* 0239B164 */ cpu->r[8] = cpu->r[8] + 0x00005BCCu;
|
|
/* 0239B168 */ _t119 = cpu->r[8] + 0x00000004u;
|
|
/* 0239B168 */ cpu->r[0] = rbrew_read32(cpu->mem, _t119);
|
|
/* 0239B16C */ _t120 = cpu->r[8] + 0x00000000u;
|
|
/* 0239B16C */ cpu->r[11] = rbrew_read32(cpu->mem, _t120);
|
|
/* 0239B170 */ _t121 = cpu->r[31] + 0x000000E4u;
|
|
/* 0239B170 */ rbrew_write32(cpu->mem, _t121, cpu->r[0]);
|
|
/* 0239B174 */ _t122 = cpu->r[31] + 0x000000E0u;
|
|
/* 0239B174 */ rbrew_write32(cpu->mem, _t122, cpu->r[11]);
|
|
/* 0239B178 */ _t123 = cpu->r[8] + 0x0000000Cu;
|
|
/* 0239B178 */ cpu->r[0] = rbrew_read32(cpu->mem, _t123);
|
|
/* 0239B17C */ _t124 = cpu->r[8] + 0x00000008u;
|
|
/* 0239B17C */ cpu->r[10] = rbrew_read32(cpu->mem, _t124);
|
|
/* 0239B180 */ _t125 = cpu->r[31] + 0x000000ECu;
|
|
/* 0239B180 */ rbrew_write32(cpu->mem, _t125, cpu->r[0]);
|
|
/* 0239B184 */ _t126 = cpu->r[31] + 0x000000E8u;
|
|
/* 0239B184 */ rbrew_write32(cpu->mem, _t126, cpu->r[10]);
|
|
/* 0239B188 */ /* nop */
|
|
/* 0239B18C */ _t127 = cpu->r[1] + 0x00000040u;
|
|
/* 0239B18C */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t127);
|
|
/* 0239B190 */ _t128 = cpu->r[1] + 0x00000050u;
|
|
/* 0239B190 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t128);
|
|
/* 0239B194 */ _t129 = cpu->r[1] + 0x00000038u;
|
|
/* 0239B194 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t129);
|
|
/* 0239B198 */ _t130 = cpu->r[1] + 0x00000048u;
|
|
/* 0239B198 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t130);
|
|
/* 0239B19C */ _t131 = cpu->r[1] + 0x00000030u;
|
|
/* 0239B19C */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t131);
|
|
/* 0239B1A0 */ _t132 = cpu->r[1] + 0x00000060u;
|
|
/* 0239B1A0 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t132);
|
|
/* 0239B1A4 */ _t133 = cpu->r[1] + 0x00000028u;
|
|
/* 0239B1A4 */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t133);
|
|
/* 0239B1A8 */ _t134 = cpu->r[1] + 0x00000058u;
|
|
/* 0239B1A8 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t134);
|
|
/* 0239B1AC */ _t135 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0239B1AC */ _t136 = _t135 & 0x00000001u;
|
|
/* 0239B1AC */ if (_t136) goto L_0239B1B0; // else: addr-0 trap, fall-through
|
|
L_0239B1B0: ; // 0x239b1b0
|
|
/* 0239B1B0 */ _t137 = cpu->r[1] + 0x0000006Cu;
|
|
/* 0239B1B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t137);
|
|
/* 0239B1B4 */ cpu->lr = cpu->r[0];
|
|
/* 0239B1B8 */ cpu->r[1] = cpu->r[1] + 0x00000068u;
|
|
/* 0239B1BC */ return;
|
|
}
|
|
|
|
// fn_0239B1C0 @ 0x239b1c0
|
|
void Gambit_fn_0239B1C0(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0239B1C0: ; // 0x239b1c0
|
|
/* 0239B1C0 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0239B1C0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0239B1C4 */ return;
|
|
}
|
|
|
|
// fn_0239B1C8 @ 0x239b1c8
|
|
void Gambit_fn_0239B1C8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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_0239B1C8: ; // 0x239b1c8
|
|
/* 0239B1C8 */ cpu->r[0] = cpu->lr;
|
|
/* 0239B1CC */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0239B1CC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239B1CC */ cpu->r[1] = _t0;
|
|
/* 0239B1D0 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 0239B1D0 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0239B1D4 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0239B1D4 */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 0239B1D8 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239B1D8 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 0239B1DC */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 0239B1DC */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 0239B1E0 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239B1E0 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0239B1E4 */ cpu->r[29] = 0x101C0000u;
|
|
/* 0239B1E8 */ _t6 = cpu->r[29] + 0x00005BA8u;
|
|
/* 0239B1E8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0239B1E8 */ cpu->r[29] = _t6;
|
|
/* 0239B1EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0239B1F0 */ cpu->r[30] = cpu->r[3];
|
|
/* 0239B1F4 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B1F4 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0239B1F4 */ if (_t8) goto L_0239B1F8; else goto L_0239B304;
|
|
L_0239B1F8: ; // 0x239b1f8
|
|
/* 0239B1F8 */ cpu->r[4] = cpu->r[30];
|
|
/* 0239B1FC */ cpu->r[3] = 0x00000034u;
|
|
/* 0239B200 */ cpu->r[5] = 0x00000004u;
|
|
/* 0239B204 */ Gambit_fn_02801ADC(cpu);
|
|
/* 0239B208 */ cpu->r[31] = cpu->r[3];
|
|
/* 0239B20C */ cpu->r[28] = cpu->r[31] + 0x00000008u;
|
|
/* 0239B20C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 0239B210 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B210 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0239B210 */ if (_t10) goto L_0239B230; else goto L_0239B214;
|
|
L_0239B214: ; // 0x239b214
|
|
/* 0239B214 */ cpu->r[5] = 0x00000003u;
|
|
/* 0239B218 */ cpu->r[4] = cpu->r[30];
|
|
/* 0239B21C */ cpu->r[3] = cpu->r[28];
|
|
/* 0239B220 */ Gambit_fn_02821D88(cpu);
|
|
/* 0239B224 */ cpu->r[10] = 0x10080000u;
|
|
/* 0239B228 */ cpu->r[10] = cpu->r[10] + 0x00006EF0u;
|
|
/* 0239B22C */ _t11 = cpu->r[28] + 0x0000000Cu;
|
|
/* 0239B22C */ rbrew_write32(cpu->mem, _t11, cpu->r[10]);
|
|
L_0239B230: ; // 0x239b230
|
|
/* 0239B230 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0239B234 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0239B238 */ cpu->r[30] = 0x00000000u;
|
|
/* 0239B23C */ _t12 = cpu->r[12] + 0x00005BACu;
|
|
/* 0239B23C */ rbrew_write32(cpu->mem, _t12, cpu->r[28]);
|
|
/* 0239B240 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B240 */ _t14 = _t13 & 0x00000001u;
|
|
/* 0239B240 */ if (_t14) goto L_0239B2FC; else goto L_0239B244;
|
|
L_0239B244: ; // 0x239b244
|
|
/* 0239B244 */ cpu->r[3] = cpu->r[31];
|
|
/* 0239B244 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239B248 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B248 */ _t16 = _t15 & 0x00000001u;
|
|
/* 0239B248 */ if (_t16) goto L_0239B24C; else goto L_0239B25C;
|
|
L_0239B24C: ; // 0x239b24c
|
|
/* 0239B24C */ cpu->r[3] = 0x00000008u;
|
|
/* 0239B250 */ Gambit_fn_02801A78(cpu);
|
|
/* 0239B254 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239B258 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B258 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0239B258 */ if (_t18) goto L_0239B26C; else goto L_0239B25C;
|
|
L_0239B25C: ; // 0x239b25c
|
|
/* 0239B25C */ cpu->r[11] = 0x10080000u;
|
|
/* 0239B260 */ _t19 = cpu->r[3] + 0x00000000u;
|
|
/* 0239B260 */ rbrew_write32(cpu->mem, _t19, cpu->r[30]);
|
|
/* 0239B264 */ cpu->r[11] = cpu->r[11] + 0x00006ED0u;
|
|
/* 0239B268 */ _t20 = cpu->r[3] + 0x00000004u;
|
|
/* 0239B268 */ rbrew_write32(cpu->mem, _t20, cpu->r[11]);
|
|
L_0239B26C: ; // 0x239b26c
|
|
/* 0239B26C */ cpu->r[0] = 0x10080000u;
|
|
/* 0239B270 */ cpu->r[0] = cpu->r[0] + 0x00006EE0u;
|
|
/* 0239B274 */ cpu->r[3] = cpu->r[31] + 0x00000018u;
|
|
/* 0239B274 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239B278 */ _t21 = cpu->r[31] + 0x00000004u;
|
|
/* 0239B278 */ rbrew_write32(cpu->mem, _t21, cpu->r[0]);
|
|
/* 0239B27C */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B27C */ _t23 = _t22 & 0x00000001u;
|
|
/* 0239B27C */ if (_t23) goto L_0239B280; else goto L_0239B290;
|
|
L_0239B280: ; // 0x239b280
|
|
/* 0239B280 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0239B284 */ Gambit_fn_02801A78(cpu);
|
|
/* 0239B288 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239B28C */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B28C */ _t25 = _t24 & 0x00000001u;
|
|
/* 0239B28C */ if (_t25) goto L_0239B2B4; else goto L_0239B290;
|
|
L_0239B290: ; // 0x239b290
|
|
/* 0239B290 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239B294 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B294 */ _t27 = _t26 & 0x00000001u;
|
|
/* 0239B294 */ if (_t27) goto L_0239B298; else goto L_0239B2A8;
|
|
L_0239B298: ; // 0x239b298
|
|
/* 0239B298 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0239B29C */ Gambit_fn_02801A78(cpu);
|
|
/* 0239B2A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239B2A4 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B2A4 */ _t29 = _t28 & 0x00000001u;
|
|
/* 0239B2A4 */ if (_t29) goto L_0239B2B4; else goto L_0239B2A8;
|
|
L_0239B2A8: ; // 0x239b2a8
|
|
/* 0239B2A8 */ _t30 = cpu->r[3] + 0x00000004u;
|
|
/* 0239B2A8 */ rbrew_write32(cpu->mem, _t30, cpu->r[30]);
|
|
/* 0239B2AC */ _t31 = cpu->r[3] + 0x00000000u;
|
|
/* 0239B2AC */ rbrew_write32(cpu->mem, _t31, cpu->r[30]);
|
|
/* 0239B2B0 */ _t32 = cpu->r[3] + 0x00000008u;
|
|
/* 0239B2B0 */ rbrew_write32(cpu->mem, _t32, cpu->r[30]);
|
|
L_0239B2B4: ; // 0x239b2b4
|
|
/* 0239B2B4 */ cpu->r[3] = cpu->r[31] + 0x00000024u;
|
|
/* 0239B2B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239B2B8 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B2B8 */ _t34 = _t33 & 0x00000001u;
|
|
/* 0239B2B8 */ if (_t34) goto L_0239B2BC; else goto L_0239B2CC;
|
|
L_0239B2BC: ; // 0x239b2bc
|
|
/* 0239B2BC */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0239B2C0 */ Gambit_fn_02801A78(cpu);
|
|
/* 0239B2C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239B2C8 */ _t35 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B2C8 */ _t36 = _t35 & 0x00000001u;
|
|
/* 0239B2C8 */ if (_t36) goto L_0239B2F0; else goto L_0239B2CC;
|
|
L_0239B2CC: ; // 0x239b2cc
|
|
/* 0239B2CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239B2D0 */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B2D0 */ _t38 = _t37 & 0x00000001u;
|
|
/* 0239B2D0 */ if (_t38) goto L_0239B2D4; else goto L_0239B2E4;
|
|
L_0239B2D4: ; // 0x239b2d4
|
|
/* 0239B2D4 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0239B2D8 */ Gambit_fn_02801A78(cpu);
|
|
/* 0239B2DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239B2E0 */ _t39 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B2E0 */ _t40 = _t39 & 0x00000001u;
|
|
/* 0239B2E0 */ if (_t40) goto L_0239B2F0; else goto L_0239B2E4;
|
|
L_0239B2E4: ; // 0x239b2e4
|
|
/* 0239B2E4 */ _t41 = cpu->r[3] + 0x00000004u;
|
|
/* 0239B2E4 */ rbrew_write32(cpu->mem, _t41, cpu->r[30]);
|
|
/* 0239B2E8 */ _t42 = cpu->r[3] + 0x00000000u;
|
|
/* 0239B2E8 */ rbrew_write32(cpu->mem, _t42, cpu->r[30]);
|
|
/* 0239B2EC */ _t43 = cpu->r[3] + 0x00000008u;
|
|
/* 0239B2EC */ rbrew_write32(cpu->mem, _t43, cpu->r[30]);
|
|
L_0239B2F0: ; // 0x239b2f0
|
|
/* 0239B2F0 */ _t44 = cpu->r[31] + 0x00000030u;
|
|
/* 0239B2F0 */ rbrew_write8(cpu->mem, _t44, (uint8_t)cpu->r[30]);
|
|
/* 0239B2F4 */ _t45 = cpu->r[29] + 0x00000000u;
|
|
/* 0239B2F4 */ rbrew_write32(cpu->mem, _t45, cpu->r[31]);
|
|
/* 0239B2F8 */ goto L_0239B304;
|
|
L_0239B2FC: ; // 0x239b2fc
|
|
/* 0239B2FC */ cpu->r[31] = 0x00000000u;
|
|
/* 0239B300 */ _t46 = cpu->r[29] + 0x00000000u;
|
|
/* 0239B300 */ rbrew_write32(cpu->mem, _t46, cpu->r[31]);
|
|
L_0239B304: ; // 0x239b304
|
|
/* 0239B304 */ _t47 = cpu->r[1] + 0x00000008u;
|
|
/* 0239B304 */ cpu->r[28] = rbrew_read32(cpu->mem, _t47);
|
|
/* 0239B308 */ _t48 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239B308 */ cpu->r[29] = rbrew_read32(cpu->mem, _t48);
|
|
/* 0239B30C */ _t49 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239B30C */ cpu->r[0] = rbrew_read32(cpu->mem, _t49);
|
|
/* 0239B310 */ cpu->r[3] = cpu->r[31];
|
|
/* 0239B314 */ _t50 = cpu->r[1] + 0x00000010u;
|
|
/* 0239B314 */ cpu->r[30] = rbrew_read32(cpu->mem, _t50);
|
|
/* 0239B318 */ cpu->lr = cpu->r[0];
|
|
/* 0239B31C */ _t51 = cpu->r[1] + 0x00000014u;
|
|
/* 0239B31C */ cpu->r[31] = rbrew_read32(cpu->mem, _t51);
|
|
/* 0239B320 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0239B324 */ return;
|
|
}
|
|
|
|
// fn_0239B1CC @ 0x239b1cc
|
|
void Gambit_fn_0239B1CC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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_0239B1CC: ; // 0x239b1cc
|
|
/* 0239B1CC */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0239B1CC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239B1CC */ cpu->r[1] = _t0;
|
|
/* 0239B1D0 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 0239B1D0 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0239B1D4 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0239B1D4 */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 0239B1D8 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239B1D8 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 0239B1DC */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 0239B1DC */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 0239B1E0 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239B1E0 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0239B1E4 */ cpu->r[29] = 0x101C0000u;
|
|
/* 0239B1E8 */ _t6 = cpu->r[29] + 0x00005BA8u;
|
|
/* 0239B1E8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0239B1E8 */ cpu->r[29] = _t6;
|
|
/* 0239B1EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0239B1F0 */ cpu->r[30] = cpu->r[3];
|
|
/* 0239B1F4 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B1F4 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0239B1F4 */ if (_t8) goto L_0239B1F8; else goto L_0239B304;
|
|
L_0239B1F8: ; // 0x239b1f8
|
|
/* 0239B1F8 */ cpu->r[4] = cpu->r[30];
|
|
/* 0239B1FC */ cpu->r[3] = 0x00000034u;
|
|
/* 0239B200 */ cpu->r[5] = 0x00000004u;
|
|
/* 0239B204 */ Gambit_fn_02801ADC(cpu);
|
|
/* 0239B208 */ cpu->r[31] = cpu->r[3];
|
|
/* 0239B20C */ cpu->r[28] = cpu->r[31] + 0x00000008u;
|
|
/* 0239B20C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 0239B210 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B210 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0239B210 */ if (_t10) goto L_0239B230; else goto L_0239B214;
|
|
L_0239B214: ; // 0x239b214
|
|
/* 0239B214 */ cpu->r[5] = 0x00000003u;
|
|
/* 0239B218 */ cpu->r[4] = cpu->r[30];
|
|
/* 0239B21C */ cpu->r[3] = cpu->r[28];
|
|
/* 0239B220 */ Gambit_fn_02821D88(cpu);
|
|
/* 0239B224 */ cpu->r[10] = 0x10080000u;
|
|
/* 0239B228 */ cpu->r[10] = cpu->r[10] + 0x00006EF0u;
|
|
/* 0239B22C */ _t11 = cpu->r[28] + 0x0000000Cu;
|
|
/* 0239B22C */ rbrew_write32(cpu->mem, _t11, cpu->r[10]);
|
|
L_0239B230: ; // 0x239b230
|
|
/* 0239B230 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0239B234 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0239B238 */ cpu->r[30] = 0x00000000u;
|
|
/* 0239B23C */ _t12 = cpu->r[12] + 0x00005BACu;
|
|
/* 0239B23C */ rbrew_write32(cpu->mem, _t12, cpu->r[28]);
|
|
/* 0239B240 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B240 */ _t14 = _t13 & 0x00000001u;
|
|
/* 0239B240 */ if (_t14) goto L_0239B2FC; else goto L_0239B244;
|
|
L_0239B244: ; // 0x239b244
|
|
/* 0239B244 */ cpu->r[3] = cpu->r[31];
|
|
/* 0239B244 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239B248 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B248 */ _t16 = _t15 & 0x00000001u;
|
|
/* 0239B248 */ if (_t16) goto L_0239B24C; else goto L_0239B25C;
|
|
L_0239B24C: ; // 0x239b24c
|
|
/* 0239B24C */ cpu->r[3] = 0x00000008u;
|
|
/* 0239B250 */ Gambit_fn_02801A78(cpu);
|
|
/* 0239B254 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239B258 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B258 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0239B258 */ if (_t18) goto L_0239B26C; else goto L_0239B25C;
|
|
L_0239B25C: ; // 0x239b25c
|
|
/* 0239B25C */ cpu->r[11] = 0x10080000u;
|
|
/* 0239B260 */ _t19 = cpu->r[3] + 0x00000000u;
|
|
/* 0239B260 */ rbrew_write32(cpu->mem, _t19, cpu->r[30]);
|
|
/* 0239B264 */ cpu->r[11] = cpu->r[11] + 0x00006ED0u;
|
|
/* 0239B268 */ _t20 = cpu->r[3] + 0x00000004u;
|
|
/* 0239B268 */ rbrew_write32(cpu->mem, _t20, cpu->r[11]);
|
|
L_0239B26C: ; // 0x239b26c
|
|
/* 0239B26C */ cpu->r[0] = 0x10080000u;
|
|
/* 0239B270 */ cpu->r[0] = cpu->r[0] + 0x00006EE0u;
|
|
/* 0239B274 */ cpu->r[3] = cpu->r[31] + 0x00000018u;
|
|
/* 0239B274 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239B278 */ _t21 = cpu->r[31] + 0x00000004u;
|
|
/* 0239B278 */ rbrew_write32(cpu->mem, _t21, cpu->r[0]);
|
|
/* 0239B27C */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B27C */ _t23 = _t22 & 0x00000001u;
|
|
/* 0239B27C */ if (_t23) goto L_0239B280; else goto L_0239B290;
|
|
L_0239B280: ; // 0x239b280
|
|
/* 0239B280 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0239B284 */ Gambit_fn_02801A78(cpu);
|
|
/* 0239B288 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239B28C */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B28C */ _t25 = _t24 & 0x00000001u;
|
|
/* 0239B28C */ if (_t25) goto L_0239B2B4; else goto L_0239B290;
|
|
L_0239B290: ; // 0x239b290
|
|
/* 0239B290 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239B294 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B294 */ _t27 = _t26 & 0x00000001u;
|
|
/* 0239B294 */ if (_t27) goto L_0239B298; else goto L_0239B2A8;
|
|
L_0239B298: ; // 0x239b298
|
|
/* 0239B298 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0239B29C */ Gambit_fn_02801A78(cpu);
|
|
/* 0239B2A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239B2A4 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B2A4 */ _t29 = _t28 & 0x00000001u;
|
|
/* 0239B2A4 */ if (_t29) goto L_0239B2B4; else goto L_0239B2A8;
|
|
L_0239B2A8: ; // 0x239b2a8
|
|
/* 0239B2A8 */ _t30 = cpu->r[3] + 0x00000004u;
|
|
/* 0239B2A8 */ rbrew_write32(cpu->mem, _t30, cpu->r[30]);
|
|
/* 0239B2AC */ _t31 = cpu->r[3] + 0x00000000u;
|
|
/* 0239B2AC */ rbrew_write32(cpu->mem, _t31, cpu->r[30]);
|
|
/* 0239B2B0 */ _t32 = cpu->r[3] + 0x00000008u;
|
|
/* 0239B2B0 */ rbrew_write32(cpu->mem, _t32, cpu->r[30]);
|
|
L_0239B2B4: ; // 0x239b2b4
|
|
/* 0239B2B4 */ cpu->r[3] = cpu->r[31] + 0x00000024u;
|
|
/* 0239B2B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239B2B8 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B2B8 */ _t34 = _t33 & 0x00000001u;
|
|
/* 0239B2B8 */ if (_t34) goto L_0239B2BC; else goto L_0239B2CC;
|
|
L_0239B2BC: ; // 0x239b2bc
|
|
/* 0239B2BC */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0239B2C0 */ Gambit_fn_02801A78(cpu);
|
|
/* 0239B2C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239B2C8 */ _t35 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B2C8 */ _t36 = _t35 & 0x00000001u;
|
|
/* 0239B2C8 */ if (_t36) goto L_0239B2F0; else goto L_0239B2CC;
|
|
L_0239B2CC: ; // 0x239b2cc
|
|
/* 0239B2CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239B2D0 */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B2D0 */ _t38 = _t37 & 0x00000001u;
|
|
/* 0239B2D0 */ if (_t38) goto L_0239B2D4; else goto L_0239B2E4;
|
|
L_0239B2D4: ; // 0x239b2d4
|
|
/* 0239B2D4 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0239B2D8 */ Gambit_fn_02801A78(cpu);
|
|
/* 0239B2DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239B2E0 */ _t39 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B2E0 */ _t40 = _t39 & 0x00000001u;
|
|
/* 0239B2E0 */ if (_t40) goto L_0239B2F0; else goto L_0239B2E4;
|
|
L_0239B2E4: ; // 0x239b2e4
|
|
/* 0239B2E4 */ _t41 = cpu->r[3] + 0x00000004u;
|
|
/* 0239B2E4 */ rbrew_write32(cpu->mem, _t41, cpu->r[30]);
|
|
/* 0239B2E8 */ _t42 = cpu->r[3] + 0x00000000u;
|
|
/* 0239B2E8 */ rbrew_write32(cpu->mem, _t42, cpu->r[30]);
|
|
/* 0239B2EC */ _t43 = cpu->r[3] + 0x00000008u;
|
|
/* 0239B2EC */ rbrew_write32(cpu->mem, _t43, cpu->r[30]);
|
|
L_0239B2F0: ; // 0x239b2f0
|
|
/* 0239B2F0 */ _t44 = cpu->r[31] + 0x00000030u;
|
|
/* 0239B2F0 */ rbrew_write8(cpu->mem, _t44, (uint8_t)cpu->r[30]);
|
|
/* 0239B2F4 */ _t45 = cpu->r[29] + 0x00000000u;
|
|
/* 0239B2F4 */ rbrew_write32(cpu->mem, _t45, cpu->r[31]);
|
|
/* 0239B2F8 */ goto L_0239B304;
|
|
L_0239B2FC: ; // 0x239b2fc
|
|
/* 0239B2FC */ cpu->r[31] = 0x00000000u;
|
|
/* 0239B300 */ _t46 = cpu->r[29] + 0x00000000u;
|
|
/* 0239B300 */ rbrew_write32(cpu->mem, _t46, cpu->r[31]);
|
|
L_0239B304: ; // 0x239b304
|
|
/* 0239B304 */ _t47 = cpu->r[1] + 0x00000008u;
|
|
/* 0239B304 */ cpu->r[28] = rbrew_read32(cpu->mem, _t47);
|
|
/* 0239B308 */ _t48 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239B308 */ cpu->r[29] = rbrew_read32(cpu->mem, _t48);
|
|
/* 0239B30C */ _t49 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239B30C */ cpu->r[0] = rbrew_read32(cpu->mem, _t49);
|
|
/* 0239B310 */ cpu->r[3] = cpu->r[31];
|
|
/* 0239B314 */ _t50 = cpu->r[1] + 0x00000010u;
|
|
/* 0239B314 */ cpu->r[30] = rbrew_read32(cpu->mem, _t50);
|
|
/* 0239B318 */ cpu->lr = cpu->r[0];
|
|
/* 0239B31C */ _t51 = cpu->r[1] + 0x00000014u;
|
|
/* 0239B31C */ cpu->r[31] = rbrew_read32(cpu->mem, _t51);
|
|
/* 0239B320 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0239B324 */ return;
|
|
}
|
|
|
|
// fn_0239B328 @ 0x239b328
|
|
void Gambit_fn_0239B328(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17;
|
|
|
|
L_0239B328: ; // 0x239b328
|
|
/* 0239B328 */ cpu->r[0] = cpu->lr;
|
|
/* 0239B32C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0239B32C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239B32C */ cpu->r[1] = _t0;
|
|
/* 0239B330 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239B330 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0239B334 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0239B338 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0239B338 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0239B33C */ _t3 = cpu->r[12] + 0x00006000u;
|
|
/* 0239B33C */ cpu->r[6] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0239B33C */ cpu->r[12] = _t3;
|
|
/* 0239B340 */ _t4 = cpu->r[6] + 0x00000264u;
|
|
/* 0239B340 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0239B344 */ _t5 = cpu->r[11] + 0x00000030u;
|
|
/* 0239B344 */ cpu->r[7] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0239B348 */ _t6 = cpu->r[7] + 0x000000ACu;
|
|
/* 0239B348 */ cpu->r[8] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0239B34C */ cpu->r[9] = cpu->r[8] + 0xFFFFFFFFu;
|
|
/* 0239B350 */ cpu->r[0] = cpu->r[8] - cpu->r[9];
|
|
/* 0239B350 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0239B354 */ cpu->r[31] = cpu->r[3];
|
|
/* 0239B358 */ _t7 = cpu->r[31] + 0x00000030u;
|
|
/* 0239B358 */ rbrew_write8(cpu->mem, _t7, (uint8_t)cpu->r[0]);
|
|
/* 0239B35C */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B35C */ _t9 = _t8 & 0x00000001u;
|
|
/* 0239B35C */ if (_t9) goto L_0239B398; else goto L_0239B360;
|
|
L_0239B360: ; // 0x239b360
|
|
/* 0239B360 */ _t10 = cpu->r[12] + 0x00000000u;
|
|
/* 0239B360 */ cpu->r[10] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0239B364 */ _t11 = cpu->r[10] + 0x00000264u;
|
|
/* 0239B364 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0239B368 */ _t12 = cpu->r[12] + 0x00000030u;
|
|
/* 0239B368 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0239B36C */ _t13 = cpu->r[12] + 0x000000ACu;
|
|
/* 0239B36C */ cpu->r[10] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0239B370 */ cpu->r[5] = 0x00000000u;
|
|
/* 0239B374 */ cpu->r[3] = cpu->r[31] + 0x00000018u;
|
|
/* 0239B378 */ _t14 = cpu->r[10] + 0x00000000u;
|
|
/* 0239B378 */ cpu->r[4] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0239B37C */ cpu->r[6] = 0x00000004u;
|
|
/* 0239B380 */ Gambit_fn_028023CC(cpu);
|
|
/* 0239B384 */ _t15 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0239B384 */ cpu->r[4] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0239B388 */ cpu->r[6] = 0x00000004u;
|
|
/* 0239B38C */ cpu->r[5] = 0x00000000u;
|
|
/* 0239B390 */ cpu->r[3] = cpu->r[31] + 0x00000024u;
|
|
/* 0239B394 */ Gambit_fn_028023CC(cpu);
|
|
L_0239B398: ; // 0x239b398
|
|
/* 0239B398 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 0239B398 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0239B39C */ _t17 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239B39C */ cpu->r[31] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0239B3A0 */ cpu->lr = cpu->r[0];
|
|
/* 0239B3A4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0239B3A8 */ return;
|
|
}
|
|
|
|
// fn_0239B32C @ 0x239b32c
|
|
void Gambit_fn_0239B32C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17;
|
|
|
|
L_0239B32C: ; // 0x239b32c
|
|
/* 0239B32C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0239B32C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239B32C */ cpu->r[1] = _t0;
|
|
/* 0239B330 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239B330 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0239B334 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0239B338 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0239B338 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0239B33C */ _t3 = cpu->r[12] + 0x00006000u;
|
|
/* 0239B33C */ cpu->r[6] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0239B33C */ cpu->r[12] = _t3;
|
|
/* 0239B340 */ _t4 = cpu->r[6] + 0x00000264u;
|
|
/* 0239B340 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0239B344 */ _t5 = cpu->r[11] + 0x00000030u;
|
|
/* 0239B344 */ cpu->r[7] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0239B348 */ _t6 = cpu->r[7] + 0x000000ACu;
|
|
/* 0239B348 */ cpu->r[8] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0239B34C */ cpu->r[9] = cpu->r[8] + 0xFFFFFFFFu;
|
|
/* 0239B350 */ cpu->r[0] = cpu->r[8] - cpu->r[9];
|
|
/* 0239B350 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0239B354 */ cpu->r[31] = cpu->r[3];
|
|
/* 0239B358 */ _t7 = cpu->r[31] + 0x00000030u;
|
|
/* 0239B358 */ rbrew_write8(cpu->mem, _t7, (uint8_t)cpu->r[0]);
|
|
/* 0239B35C */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B35C */ _t9 = _t8 & 0x00000001u;
|
|
/* 0239B35C */ if (_t9) goto L_0239B398; else goto L_0239B360;
|
|
L_0239B360: ; // 0x239b360
|
|
/* 0239B360 */ _t10 = cpu->r[12] + 0x00000000u;
|
|
/* 0239B360 */ cpu->r[10] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0239B364 */ _t11 = cpu->r[10] + 0x00000264u;
|
|
/* 0239B364 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0239B368 */ _t12 = cpu->r[12] + 0x00000030u;
|
|
/* 0239B368 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0239B36C */ _t13 = cpu->r[12] + 0x000000ACu;
|
|
/* 0239B36C */ cpu->r[10] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0239B370 */ cpu->r[5] = 0x00000000u;
|
|
/* 0239B374 */ cpu->r[3] = cpu->r[31] + 0x00000018u;
|
|
/* 0239B378 */ _t14 = cpu->r[10] + 0x00000000u;
|
|
/* 0239B378 */ cpu->r[4] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0239B37C */ cpu->r[6] = 0x00000004u;
|
|
/* 0239B380 */ Gambit_fn_028023CC(cpu);
|
|
/* 0239B384 */ _t15 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0239B384 */ cpu->r[4] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0239B388 */ cpu->r[6] = 0x00000004u;
|
|
/* 0239B38C */ cpu->r[5] = 0x00000000u;
|
|
/* 0239B390 */ cpu->r[3] = cpu->r[31] + 0x00000024u;
|
|
/* 0239B394 */ Gambit_fn_028023CC(cpu);
|
|
L_0239B398: ; // 0x239b398
|
|
/* 0239B398 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 0239B398 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0239B39C */ _t17 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239B39C */ cpu->r[31] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0239B3A0 */ cpu->lr = cpu->r[0];
|
|
/* 0239B3A4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0239B3A8 */ return;
|
|
}
|
|
|
|
// fn_0239B3AC @ 0x239b3ac
|
|
void Gambit_fn_0239B3AC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _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_0239B3AC: ; // 0x239b3ac
|
|
/* 0239B3AC */ cpu->r[0] = cpu->lr;
|
|
/* 0239B3B0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0239B3B0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239B3B0 */ cpu->r[1] = _t0;
|
|
/* 0239B3B4 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0239B3B4 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0239B3B8 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239B3B8 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0239B3BC */ cpu->r[12] = 0x101C0000u;
|
|
/* 0239B3C0 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0239B3C0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0239B3C4 */ _t4 = cpu->r[12] + 0x00006000u;
|
|
/* 0239B3C4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0239B3C8 */ _t5 = cpu->r[12] + 0x00000268u;
|
|
/* 0239B3C8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0239B3CC */ cpu->r[3] = cpu->r[31];
|
|
/* 0239B3D0 */ cpu->r[30] = cpu->r[4];
|
|
/* 0239B3D4 */ Gambit_fn_0261F774(cpu);
|
|
/* 0239B3D8 */ cpu->r[4] = cpu->r[3];
|
|
/* 0239B3DC */ cpu->r[3] = cpu->r[31];
|
|
/* 0239B3E0 */ Gambit_fn_0261F55C(cpu);
|
|
/* 0239B3E4 */ _t6 = cpu->r[3] + 0x0000065Cu;
|
|
/* 0239B3E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0239B3E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000003u);
|
|
/* 0239B3EC */ cpu->r[31] = cpu->r[3];
|
|
/* 0239B3F0 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B3F0 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0239B3F0 */ if (_t8) goto L_0239B404; else goto L_0239B3F4;
|
|
L_0239B3F4: ; // 0x239b3f4
|
|
/* 0239B3F4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0239B3F8 */ Gambit_fn_025A9734(cpu);
|
|
/* 0239B3FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239B400 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B400 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0239B400 */ if (_t10) goto L_0239B434; else goto L_0239B404;
|
|
L_0239B404: ; // 0x239b404
|
|
/* 0239B404 */ _t11 = cpu->r[31] + 0x00000600u;
|
|
/* 0239B404 */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0239B408 */ _t12 = cpu->r[30] + 0x00000000u;
|
|
/* 0239B408 */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 0239B40C */ _t13 = cpu->r[31] + 0x00000604u;
|
|
/* 0239B40C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0239B410 */ _t14 = cpu->r[30] + 0x00000004u;
|
|
/* 0239B410 */ rbrew_write32(cpu->mem, _t14, cpu->r[0]);
|
|
/* 0239B414 */ _t15 = cpu->r[31] + 0x00000608u;
|
|
/* 0239B414 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0239B418 */ _t16 = cpu->r[30] + 0x00000008u;
|
|
/* 0239B418 */ rbrew_write32(cpu->mem, _t16, cpu->r[0]);
|
|
/* 0239B41C */ _t17 = cpu->r[1] + 0x00000014u;
|
|
/* 0239B41C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0239B420 */ _t18 = cpu->r[1] + 0x00000008u;
|
|
/* 0239B420 */ cpu->r[30] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0239B424 */ cpu->lr = cpu->r[0];
|
|
/* 0239B428 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239B428 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0239B42C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0239B430 */ return;
|
|
L_0239B434: ; // 0x239b434
|
|
/* 0239B434 */ _t20 = cpu->r[31] + 0x00000244u;
|
|
/* 0239B434 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0239B438 */ _t21 = cpu->r[30] + 0x00000000u;
|
|
/* 0239B438 */ rbrew_write32(cpu->mem, _t21, cpu->r[0]);
|
|
/* 0239B43C */ _t22 = cpu->r[31] + 0x00000248u;
|
|
/* 0239B43C */ cpu->r[10] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0239B440 */ _t23 = cpu->r[30] + 0x00000004u;
|
|
/* 0239B440 */ rbrew_write32(cpu->mem, _t23, cpu->r[10]);
|
|
/* 0239B444 */ _t24 = cpu->r[31] + 0x0000024Cu;
|
|
/* 0239B444 */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0239B448 */ _t25 = cpu->r[30] + 0x00000008u;
|
|
/* 0239B448 */ rbrew_write32(cpu->mem, _t25, cpu->r[0]);
|
|
/* 0239B44C */ _t26 = cpu->r[1] + 0x00000014u;
|
|
/* 0239B44C */ cpu->r[0] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0239B450 */ _t27 = cpu->r[1] + 0x00000008u;
|
|
/* 0239B450 */ cpu->r[30] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0239B454 */ cpu->lr = cpu->r[0];
|
|
/* 0239B458 */ _t28 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239B458 */ cpu->r[31] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0239B45C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0239B460 */ return;
|
|
}
|
|
|
|
// fn_0239B3B0 @ 0x239b3b0
|
|
void Gambit_fn_0239B3B0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _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_0239B3B0: ; // 0x239b3b0
|
|
/* 0239B3B0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0239B3B0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239B3B0 */ cpu->r[1] = _t0;
|
|
/* 0239B3B4 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0239B3B4 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0239B3B8 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239B3B8 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0239B3BC */ cpu->r[12] = 0x101C0000u;
|
|
/* 0239B3C0 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0239B3C0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0239B3C4 */ _t4 = cpu->r[12] + 0x00006000u;
|
|
/* 0239B3C4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0239B3C8 */ _t5 = cpu->r[12] + 0x00000268u;
|
|
/* 0239B3C8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0239B3CC */ cpu->r[3] = cpu->r[31];
|
|
/* 0239B3D0 */ cpu->r[30] = cpu->r[4];
|
|
/* 0239B3D4 */ Gambit_fn_0261F774(cpu);
|
|
/* 0239B3D8 */ cpu->r[4] = cpu->r[3];
|
|
/* 0239B3DC */ cpu->r[3] = cpu->r[31];
|
|
/* 0239B3E0 */ Gambit_fn_0261F55C(cpu);
|
|
/* 0239B3E4 */ _t6 = cpu->r[3] + 0x0000065Cu;
|
|
/* 0239B3E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0239B3E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000003u);
|
|
/* 0239B3EC */ cpu->r[31] = cpu->r[3];
|
|
/* 0239B3F0 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B3F0 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0239B3F0 */ if (_t8) goto L_0239B404; else goto L_0239B3F4;
|
|
L_0239B3F4: ; // 0x239b3f4
|
|
/* 0239B3F4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0239B3F8 */ Gambit_fn_025A9734(cpu);
|
|
/* 0239B3FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239B400 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B400 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0239B400 */ if (_t10) goto L_0239B434; else goto L_0239B404;
|
|
L_0239B404: ; // 0x239b404
|
|
/* 0239B404 */ _t11 = cpu->r[31] + 0x00000600u;
|
|
/* 0239B404 */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0239B408 */ _t12 = cpu->r[30] + 0x00000000u;
|
|
/* 0239B408 */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 0239B40C */ _t13 = cpu->r[31] + 0x00000604u;
|
|
/* 0239B40C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0239B410 */ _t14 = cpu->r[30] + 0x00000004u;
|
|
/* 0239B410 */ rbrew_write32(cpu->mem, _t14, cpu->r[0]);
|
|
/* 0239B414 */ _t15 = cpu->r[31] + 0x00000608u;
|
|
/* 0239B414 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0239B418 */ _t16 = cpu->r[30] + 0x00000008u;
|
|
/* 0239B418 */ rbrew_write32(cpu->mem, _t16, cpu->r[0]);
|
|
/* 0239B41C */ _t17 = cpu->r[1] + 0x00000014u;
|
|
/* 0239B41C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0239B420 */ _t18 = cpu->r[1] + 0x00000008u;
|
|
/* 0239B420 */ cpu->r[30] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0239B424 */ cpu->lr = cpu->r[0];
|
|
/* 0239B428 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239B428 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0239B42C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0239B430 */ return;
|
|
L_0239B434: ; // 0x239b434
|
|
/* 0239B434 */ _t20 = cpu->r[31] + 0x00000244u;
|
|
/* 0239B434 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0239B438 */ _t21 = cpu->r[30] + 0x00000000u;
|
|
/* 0239B438 */ rbrew_write32(cpu->mem, _t21, cpu->r[0]);
|
|
/* 0239B43C */ _t22 = cpu->r[31] + 0x00000248u;
|
|
/* 0239B43C */ cpu->r[10] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0239B440 */ _t23 = cpu->r[30] + 0x00000004u;
|
|
/* 0239B440 */ rbrew_write32(cpu->mem, _t23, cpu->r[10]);
|
|
/* 0239B444 */ _t24 = cpu->r[31] + 0x0000024Cu;
|
|
/* 0239B444 */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0239B448 */ _t25 = cpu->r[30] + 0x00000008u;
|
|
/* 0239B448 */ rbrew_write32(cpu->mem, _t25, cpu->r[0]);
|
|
/* 0239B44C */ _t26 = cpu->r[1] + 0x00000014u;
|
|
/* 0239B44C */ cpu->r[0] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0239B450 */ _t27 = cpu->r[1] + 0x00000008u;
|
|
/* 0239B450 */ cpu->r[30] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0239B454 */ cpu->lr = cpu->r[0];
|
|
/* 0239B458 */ _t28 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239B458 */ cpu->r[31] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0239B45C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0239B460 */ return;
|
|
}
|
|
|
|
// fn_0239B464 @ 0x239b464
|
|
void Gambit_fn_0239B464(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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;
|
|
|
|
L_0239B464: ; // 0x239b464
|
|
/* 0239B464 */ _t0 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 0239B464 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239B464 */ cpu->r[1] = _t0;
|
|
/* 0239B468 */ /* nop */
|
|
/* 0239B46C */ cpu->r[0] = cpu->lr;
|
|
/* 0239B470 */ _t1 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0239B470 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0239B474 */ cpu->r[27] = cpu->r[3];
|
|
/* 0239B478 */ _t2 = cpu->r[27] + 0x00000030u;
|
|
/* 0239B478 */ cpu->r[4] = rbrew_read8(cpu->mem, _t2);
|
|
/* 0239B47C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 0239B480 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B480 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0239B480 */ if (_t4) goto L_0239B704; else goto L_0239B484;
|
|
L_0239B484: ; // 0x239b484
|
|
/* 0239B484 */ cpu->r[6] = 0x00000000u;
|
|
/* 0239B488 */ cpu->r[3] = cpu->r[27];
|
|
/* 0239B48C */ _t5 = cpu->r[27] + 0x00000018u;
|
|
/* 0239B48C */ rbrew_write32(cpu->mem, _t5, cpu->r[6]);
|
|
/* 0239B490 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0239B494 */ _t6 = cpu->r[27] + 0x00000024u;
|
|
/* 0239B494 */ rbrew_write32(cpu->mem, _t6, cpu->r[6]);
|
|
/* 0239B498 */ Gambit_fn_0239B3AC(cpu);
|
|
/* 0239B49C */ cpu->r[26] = 0x101C0000u;
|
|
/* 0239B4A0 */ cpu->r[28] = 0x101C0000u;
|
|
/* 0239B4A4 */ _t7 = cpu->r[26] + 0x00006000u;
|
|
/* 0239B4A4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0239B4A4 */ cpu->r[26] = _t7;
|
|
/* 0239B4A8 */ _t8 = cpu->r[28] + 0x00006394u;
|
|
/* 0239B4A8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0239B4A8 */ cpu->r[28] = _t8;
|
|
/* 0239B4AC */ _t9 = cpu->r[9] + 0x00000264u;
|
|
/* 0239B4AC */ cpu->r[8] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0239B4B0 */ cpu->r[10] = cpu->r[8] + cpu->r[11];
|
|
/* 0239B4B4 */ _t10 = cpu->r[10] + 0x00000104u;
|
|
/* 0239B4B4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t10);
|
|
/* 0239B4B8 */ _t11 = cpu->r[8] + 0x00000030u;
|
|
/* 0239B4B8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0239B4BC */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239B4C0 */ _t12 = cpu->r[12] + cpu->r[4];
|
|
/* 0239B4C0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0239B4C4 */ _t13 = cpu->r[5] + 0x00000008u;
|
|
/* 0239B4C4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0239B4C8 */ _t14 = cpu->r[12] + 0x0000000Cu;
|
|
/* 0239B4C8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0239B4CC */ _t15 = cpu->r[12] + 0x00000004u;
|
|
/* 0239B4CC */ cpu->r[6] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0239B4D0 */ cpu->r[31] = cpu->r[12] - cpu->r[30];
|
|
/* 0239B4D4 */ cpu->r[29] = cpu->r[6] - cpu->r[30];
|
|
/* 0239B4D8 */ goto L_0239B4E8;
|
|
L_0239B4DC: ; // 0x239b4dc
|
|
/* 0239B4DC */ cpu->r[9] = cpu->r[29] + cpu->r[30];
|
|
/* 0239B4E0 */ _t16 = cpu->r[9] + 0x00000004u;
|
|
/* 0239B4E0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0239B4E4 */ cpu->r[29] = cpu->r[7] - cpu->r[30];
|
|
L_0239B4E8: ; // 0x239b4e8
|
|
/* 0239B4E8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[31]);
|
|
/* 0239B4EC */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B4EC */ _t18 = _t17 & 0x00000001u;
|
|
/* 0239B4EC */ if (_t18) goto L_0239B504; else goto L_0239B4F0;
|
|
L_0239B4F0: ; // 0x239b4f0
|
|
/* 0239B4F0 */ _t19 = cpu->r[29] + 0x0000001Cu;
|
|
/* 0239B4F0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0239B4F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000002u);
|
|
/* 0239B4F8 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B4F8 */ _t21 = _t20 & 0x00000001u;
|
|
/* 0239B4F8 */ if (_t21) goto L_0239B504; else goto L_0239B4FC;
|
|
L_0239B4FC: ; // 0x239b4fc
|
|
/* 0239B4FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000003u);
|
|
/* 0239B500 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B500 */ _t23 = _t22 & 0x00000001u;
|
|
/* 0239B500 */ if (_t23) goto L_0239B504; else goto L_0239B4DC;
|
|
L_0239B504: ; // 0x239b504
|
|
/* 0239B504 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[31]);
|
|
/* 0239B508 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B508 */ _t25 = _t24 & 0x00000001u;
|
|
/* 0239B508 */ if (_t25) goto L_0239B588; else goto L_0239B50C;
|
|
L_0239B50C: ; // 0x239b50c
|
|
/* 0239B50C */ _t26 = cpu->r[29] + 0x00000020u;
|
|
/* 0239B50C */ cpu->r[8] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0239B510 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x0000002Bu);
|
|
/* 0239B514 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B514 */ _t28 = _t27 & 0x00000001u;
|
|
/* 0239B514 */ if (_t28) goto L_0239B518; else goto L_0239B554;
|
|
L_0239B518: ; // 0x239b518
|
|
/* 0239B518 */ cpu->r[3] = cpu->r[29];
|
|
/* 0239B51C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0239B520 */ Gambit_fn_024AE2A0(cpu);
|
|
/* 0239B524 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239B528 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B528 */ _t30 = _t29 & 0x00000001u;
|
|
/* 0239B528 */ if (_t30) goto L_0239B554; else goto L_0239B52C;
|
|
L_0239B52C: ; // 0x239b52c
|
|
/* 0239B52C */ _t31 = cpu->r[27] + 0x00000018u;
|
|
/* 0239B52C */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0239B530 */ _t32 = cpu->r[27] + 0x0000001Cu;
|
|
/* 0239B530 */ cpu->r[12] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0239B534 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], cpu->r[12]);
|
|
/* 0239B538 */ _t33 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0239B538 */ _t34 = _t33 & 0x00000001u;
|
|
/* 0239B538 */ if (_t34) goto L_0239B53C; else goto L_0239B554;
|
|
L_0239B53C: ; // 0x239b53c
|
|
/* 0239B53C */ _t35 = cpu->r[27] + 0x00000020u;
|
|
/* 0239B53C */ cpu->r[5] = rbrew_read32(cpu->mem, _t35);
|
|
/* 0239B540 */ cpu->r[4] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239B544 */ _t36 = cpu->r[4] + cpu->r[5];
|
|
/* 0239B544 */ rbrew_write32(cpu->mem, _t36, cpu->r[29]);
|
|
/* 0239B548 */ _t37 = cpu->r[27] + 0x00000018u;
|
|
/* 0239B548 */ cpu->r[6] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0239B54C */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 0239B550 */ _t38 = cpu->r[27] + 0x00000018u;
|
|
/* 0239B550 */ rbrew_write32(cpu->mem, _t38, cpu->r[6]);
|
|
L_0239B554: ; // 0x239b554
|
|
/* 0239B554 */ cpu->r[11] = cpu->r[29] + cpu->r[30];
|
|
/* 0239B558 */ _t39 = cpu->r[11] + 0x00000004u;
|
|
/* 0239B558 */ cpu->r[7] = rbrew_read32(cpu->mem, _t39);
|
|
/* 0239B55C */ cpu->r[29] = cpu->r[7] - cpu->r[30];
|
|
/* 0239B560 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[31]);
|
|
/* 0239B564 */ _t40 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B564 */ _t41 = _t40 & 0x00000001u;
|
|
/* 0239B564 */ if (_t41) goto L_0239B588; else goto L_0239B568;
|
|
L_0239B568: ; // 0x239b568
|
|
/* 0239B568 */ _t42 = cpu->r[29] + 0x0000001Cu;
|
|
/* 0239B568 */ cpu->r[6] = rbrew_read32(cpu->mem, _t42);
|
|
/* 0239B56C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000002u);
|
|
/* 0239B570 */ _t43 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B570 */ _t44 = _t43 & 0x00000001u;
|
|
/* 0239B570 */ if (_t44) goto L_0239B580; else goto L_0239B574;
|
|
L_0239B574: ; // 0x239b574
|
|
/* 0239B574 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000003u);
|
|
/* 0239B578 */ _t45 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B578 */ _t46 = _t45 & 0x00000001u;
|
|
/* 0239B578 */ if (_t46) goto L_0239B57C; else goto L_0239B554;
|
|
L_0239B57C: ; // 0x239b57c
|
|
/* 0239B57C */ goto L_0239B504;
|
|
L_0239B580: ; // 0x239b580
|
|
/* 0239B580 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[31]);
|
|
/* 0239B584 */ _t47 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B584 */ _t48 = _t47 & 0x00000001u;
|
|
/* 0239B584 */ if (_t48) goto L_0239B588; else goto L_0239B50C;
|
|
L_0239B588: ; // 0x239b588
|
|
/* 0239B588 */ _t49 = cpu->r[27] + 0x00000018u;
|
|
/* 0239B588 */ cpu->r[9] = rbrew_read32(cpu->mem, _t49);
|
|
/* 0239B58C */ _t50 = cpu->r[27] + 0x00000020u;
|
|
/* 0239B58C */ cpu->r[24] = rbrew_read32(cpu->mem, _t50);
|
|
/* 0239B590 */ cpu->r[8] = rbrew_rlwinm(cpu->r[9], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239B594 */ cpu->r[0] = cpu->r[24] + cpu->r[8];
|
|
/* 0239B598 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[24], cpu->r[0]);
|
|
/* 0239B59C */ _t51 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B59C */ _t52 = _t51 & 0x00000001u;
|
|
/* 0239B59C */ if (_t52) goto L_0239B704; else goto L_0239B5A0;
|
|
L_0239B5A0: ; // 0x239b5a0
|
|
/* 0239B5A0 */ _t53 = cpu->r[24] + 0x00000000u;
|
|
/* 0239B5A0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t53);
|
|
/* 0239B5A4 */ Gambit_fn_024AE500(cpu);
|
|
/* 0239B5A8 */ cpu->r[25] = cpu->r[3];
|
|
/* 0239B5A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 0239B5AC */ _t54 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0239B5AC */ _t55 = _t54 & 0x00000001u;
|
|
/* 0239B5AC */ if (_t55) goto L_0239B5B0; else goto L_0239B5D0;
|
|
L_0239B5B0: ; // 0x239b5b0
|
|
/* 0239B5B0 */ _t56 = cpu->r[27] + 0x00000018u;
|
|
/* 0239B5B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t56);
|
|
/* 0239B5B4 */ _t57 = cpu->r[27] + 0x00000020u;
|
|
/* 0239B5B4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t57);
|
|
/* 0239B5B8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239B5BC */ cpu->r[24] = cpu->r[24] + 0x00000004u;
|
|
/* 0239B5C0 */ cpu->r[5] = cpu->r[7] + cpu->r[0];
|
|
/* 0239B5C4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[24], cpu->r[5]);
|
|
/* 0239B5C8 */ _t58 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B5C8 */ _t59 = _t58 & 0x00000001u;
|
|
/* 0239B5C8 */ if (_t59) goto L_0239B5CC; else goto L_0239B5A0;
|
|
L_0239B5CC: ; // 0x239b5cc
|
|
/* 0239B5CC */ goto L_0239B704;
|
|
L_0239B5D0: ; // 0x239b5d0
|
|
/* 0239B5D0 */ _t60 = cpu->r[26] + 0x00000000u;
|
|
/* 0239B5D0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t60);
|
|
/* 0239B5D4 */ _t61 = cpu->r[28] + 0x00000000u;
|
|
/* 0239B5D4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t61);
|
|
/* 0239B5D8 */ _t62 = cpu->r[4] + 0x00000264u;
|
|
/* 0239B5D8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t62);
|
|
/* 0239B5DC */ cpu->r[6] = cpu->r[7] + cpu->r[8];
|
|
/* 0239B5E0 */ _t63 = cpu->r[6] + 0x00000104u;
|
|
/* 0239B5E0 */ cpu->r[10] = rbrew_read8(cpu->mem, _t63);
|
|
/* 0239B5E4 */ _t64 = cpu->r[7] + 0x00000030u;
|
|
/* 0239B5E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t64);
|
|
/* 0239B5E8 */ cpu->r[9] = rbrew_rlwinm(cpu->r[10], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239B5EC */ _t65 = cpu->r[9] + cpu->r[0];
|
|
/* 0239B5EC */ cpu->r[12] = rbrew_read32(cpu->mem, _t65);
|
|
/* 0239B5F0 */ _t66 = cpu->r[12] + 0x00000008u;
|
|
/* 0239B5F0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t66);
|
|
/* 0239B5F4 */ _t67 = cpu->r[5] + 0x0000000Cu;
|
|
/* 0239B5F4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t67);
|
|
/* 0239B5F8 */ _t68 = cpu->r[5] + 0x00000004u;
|
|
/* 0239B5F8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t68);
|
|
/* 0239B5FC */ cpu->r[31] = cpu->r[5] - cpu->r[30];
|
|
/* 0239B600 */ cpu->r[29] = cpu->r[4] - cpu->r[30];
|
|
/* 0239B604 */ goto L_0239B614;
|
|
L_0239B608: ; // 0x239b608
|
|
/* 0239B608 */ cpu->r[11] = cpu->r[29] + cpu->r[30];
|
|
/* 0239B60C */ _t69 = cpu->r[11] + 0x00000004u;
|
|
/* 0239B60C */ cpu->r[5] = rbrew_read32(cpu->mem, _t69);
|
|
/* 0239B610 */ cpu->r[29] = cpu->r[5] - cpu->r[30];
|
|
L_0239B614: ; // 0x239b614
|
|
/* 0239B614 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[31]);
|
|
/* 0239B618 */ _t70 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B618 */ _t71 = _t70 & 0x00000001u;
|
|
/* 0239B618 */ if (_t71) goto L_0239B630; else goto L_0239B61C;
|
|
L_0239B61C: ; // 0x239b61c
|
|
/* 0239B61C */ _t72 = cpu->r[29] + 0x0000001Cu;
|
|
/* 0239B61C */ cpu->r[0] = rbrew_read32(cpu->mem, _t72);
|
|
/* 0239B620 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000002u);
|
|
/* 0239B624 */ _t73 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B624 */ _t74 = _t73 & 0x00000001u;
|
|
/* 0239B624 */ if (_t74) goto L_0239B630; else goto L_0239B628;
|
|
L_0239B628: ; // 0x239b628
|
|
/* 0239B628 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000003u);
|
|
/* 0239B62C */ _t75 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B62C */ _t76 = _t75 & 0x00000001u;
|
|
/* 0239B62C */ if (_t76) goto L_0239B630; else goto L_0239B608;
|
|
L_0239B630: ; // 0x239b630
|
|
/* 0239B630 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[31]);
|
|
/* 0239B634 */ _t77 = cpu->r[27] + 0x00000018u;
|
|
/* 0239B634 */ cpu->r[0] = rbrew_read32(cpu->mem, _t77);
|
|
/* 0239B638 */ _t78 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B638 */ _t79 = _t78 & 0x00000001u;
|
|
/* 0239B638 */ if (_t79) goto L_0239B6EC; else goto L_0239B63C;
|
|
L_0239B63C: ; // 0x239b63c
|
|
/* 0239B63C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0239B640 */ cpu->r[12] = 0x00000000u;
|
|
/* 0239B644 */ _t80 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0239B644 */ _t81 = _t80 & 0x00000001u;
|
|
/* 0239B644 */ if (_t81) goto L_0239B648; else goto L_0239B684;
|
|
L_0239B648: ; // 0x239b648
|
|
/* 0239B648 */ _t82 = cpu->r[27] + 0x00000020u;
|
|
/* 0239B648 */ cpu->r[10] = rbrew_read32(cpu->mem, _t82);
|
|
/* 0239B64C */ cpu->ctr = cpu->r[0];
|
|
/* 0239B650 */ cpu->r[10] = cpu->r[10] + 0xFFFFFFFCu;
|
|
L_0239B654: ; // 0x239b654
|
|
/* 0239B654 */ _t83 = cpu->r[10] + 0x00000004u;
|
|
/* 0239B654 */ cpu->r[6] = rbrew_read32(cpu->mem, _t83);
|
|
/* 0239B654 */ cpu->r[10] = _t83;
|
|
/* 0239B658 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[29]);
|
|
/* 0239B65C */ _t84 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B65C */ _t85 = _t84 & 0x00000001u;
|
|
/* 0239B65C */ if (_t85) goto L_0239B67C; else goto L_0239B660;
|
|
L_0239B660: ; // 0x239b660
|
|
/* 0239B660 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 0239B664 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0239B664 */ _t86 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0239B664 */ _t87 = _t86 >> (0x00000002u & 31u);
|
|
/* 0239B664 */ _t88 = _t87 & 0x00000001u;
|
|
/* 0239B664 */ if (_t88) goto L_0239B654; else goto L_0239B668;
|
|
L_0239B668: ; // 0x239b668
|
|
/* 0239B668 */ cpu->r[3] = cpu->r[29];
|
|
/* 0239B66C */ Gambit_fn_024AE500(cpu);
|
|
/* 0239B670 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[25], cpu->r[3]);
|
|
/* 0239B674 */ _t89 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B674 */ _t90 = _t89 & 0x00000001u;
|
|
/* 0239B674 */ if (_t90) goto L_0239B678; else goto L_0239B6BC;
|
|
L_0239B678: ; // 0x239b678
|
|
/* 0239B678 */ goto L_0239B694;
|
|
L_0239B67C: ; // 0x239b67c
|
|
/* 0239B67C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0239B680 */ _t91 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0239B680 */ _t92 = _t91 & 0x00000001u;
|
|
/* 0239B680 */ if (_t92) goto L_0239B684; else goto L_0239B6C0;
|
|
L_0239B684: ; // 0x239b684
|
|
/* 0239B684 */ cpu->r[3] = cpu->r[29];
|
|
/* 0239B688 */ Gambit_fn_024AE500(cpu);
|
|
/* 0239B68C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[25], cpu->r[3]);
|
|
/* 0239B690 */ _t93 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B690 */ _t94 = _t93 & 0x00000001u;
|
|
/* 0239B690 */ if (_t94) goto L_0239B694; else goto L_0239B6BC;
|
|
L_0239B694: ; // 0x239b694
|
|
/* 0239B694 */ _t95 = cpu->r[27] + 0x00000024u;
|
|
/* 0239B694 */ cpu->r[9] = rbrew_read32(cpu->mem, _t95);
|
|
/* 0239B698 */ _t96 = cpu->r[27] + 0x00000028u;
|
|
/* 0239B698 */ cpu->r[8] = rbrew_read32(cpu->mem, _t96);
|
|
/* 0239B69C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], cpu->r[8]);
|
|
/* 0239B6A0 */ _t97 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0239B6A0 */ _t98 = _t97 & 0x00000001u;
|
|
/* 0239B6A0 */ if (_t98) goto L_0239B6A4; else goto L_0239B6BC;
|
|
L_0239B6A4: ; // 0x239b6a4
|
|
/* 0239B6A4 */ _t99 = cpu->r[27] + 0x0000002Cu;
|
|
/* 0239B6A4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t99);
|
|
/* 0239B6A8 */ cpu->r[9] = rbrew_rlwinm(cpu->r[9], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239B6AC */ _t100 = cpu->r[9] + cpu->r[10];
|
|
/* 0239B6AC */ rbrew_write32(cpu->mem, _t100, cpu->r[29]);
|
|
/* 0239B6B0 */ _t101 = cpu->r[27] + 0x00000024u;
|
|
/* 0239B6B0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t101);
|
|
/* 0239B6B4 */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 0239B6B8 */ _t102 = cpu->r[27] + 0x00000024u;
|
|
/* 0239B6B8 */ rbrew_write32(cpu->mem, _t102, cpu->r[11]);
|
|
L_0239B6BC: ; // 0x239b6bc
|
|
/* 0239B6BC */ _t103 = cpu->r[27] + 0x00000018u;
|
|
/* 0239B6BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t103);
|
|
L_0239B6C0: ; // 0x239b6c0
|
|
/* 0239B6C0 */ cpu->r[5] = cpu->r[29] + cpu->r[30];
|
|
/* 0239B6C4 */ _t104 = cpu->r[5] + 0x00000004u;
|
|
/* 0239B6C4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t104);
|
|
/* 0239B6C8 */ cpu->r[29] = cpu->r[12] - cpu->r[30];
|
|
/* 0239B6CC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[31]);
|
|
/* 0239B6D0 */ _t105 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B6D0 */ _t106 = _t105 & 0x00000001u;
|
|
/* 0239B6D0 */ if (_t106) goto L_0239B6EC; else goto L_0239B6D4;
|
|
L_0239B6D4: ; // 0x239b6d4
|
|
/* 0239B6D4 */ _t107 = cpu->r[29] + 0x0000001Cu;
|
|
/* 0239B6D4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t107);
|
|
/* 0239B6D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000002u);
|
|
/* 0239B6DC */ _t108 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B6DC */ _t109 = _t108 & 0x00000001u;
|
|
/* 0239B6DC */ if (_t109) goto L_0239B63C; else goto L_0239B6E0;
|
|
L_0239B6E0: ; // 0x239b6e0
|
|
/* 0239B6E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000003u);
|
|
/* 0239B6E4 */ _t110 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B6E4 */ _t111 = _t110 & 0x00000001u;
|
|
/* 0239B6E4 */ if (_t111) goto L_0239B63C; else goto L_0239B6E8;
|
|
L_0239B6E8: ; // 0x239b6e8
|
|
/* 0239B6E8 */ goto L_0239B6C0;
|
|
L_0239B6EC: ; // 0x239b6ec
|
|
/* 0239B6EC */ _t112 = cpu->r[27] + 0x00000020u;
|
|
/* 0239B6EC */ cpu->r[7] = rbrew_read32(cpu->mem, _t112);
|
|
/* 0239B6F0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239B6F4 */ cpu->r[24] = cpu->r[24] + 0x00000004u;
|
|
/* 0239B6F8 */ cpu->r[5] = cpu->r[7] + cpu->r[0];
|
|
/* 0239B6FC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[24], cpu->r[5]);
|
|
/* 0239B700 */ _t113 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B700 */ _t114 = _t113 & 0x00000001u;
|
|
/* 0239B700 */ if (_t114) goto L_0239B704; else goto L_0239B5A0;
|
|
L_0239B704: ; // 0x239b704
|
|
/* 0239B704 */ /* nop */
|
|
/* 0239B708 */ _t115 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0239B708 */ cpu->r[0] = rbrew_read32(cpu->mem, _t115);
|
|
/* 0239B70C */ cpu->lr = cpu->r[0];
|
|
/* 0239B710 */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 0239B714 */ return;
|
|
}
|
|
|
|
// fn_0239B718 @ 0x239b718
|
|
void Gambit_fn_0239B718(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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_0239B718: ; // 0x239b718
|
|
/* 0239B718 */ cpu->r[0] = cpu->lr;
|
|
/* 0239B71C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0239B71C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239B71C */ cpu->r[1] = _t0;
|
|
/* 0239B720 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0239B720 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0239B724 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0239B724 */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 0239B728 */ cpu->r[11] = 0x101C0000u;
|
|
/* 0239B72C */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239B72C */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 0239B730 */ _t4 = cpu->r[1] + 0x00000010u;
|
|
/* 0239B730 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 0239B734 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0239B738 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239B738 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0239B73C */ _t6 = cpu->r[11] + 0x00006000u;
|
|
/* 0239B73C */ cpu->r[11] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0239B740 */ cpu->r[29] = cpu->r[4];
|
|
/* 0239B744 */ _t7 = cpu->r[12] + 0x00006394u;
|
|
/* 0239B744 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0239B748 */ _t8 = cpu->r[11] + 0x00000264u;
|
|
/* 0239B748 */ cpu->r[7] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0239B74C */ cpu->r[6] = cpu->r[7] + cpu->r[12];
|
|
/* 0239B750 */ _t9 = cpu->r[6] + 0x00000104u;
|
|
/* 0239B750 */ cpu->r[8] = rbrew_read8(cpu->mem, _t9);
|
|
/* 0239B754 */ _t10 = cpu->r[7] + 0x00000030u;
|
|
/* 0239B754 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0239B758 */ cpu->r[7] = rbrew_rlwinm(cpu->r[8], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239B75C */ _t11 = cpu->r[7] + cpu->r[0];
|
|
/* 0239B75C */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0239B760 */ _t12 = cpu->r[10] + 0x00000008u;
|
|
/* 0239B760 */ cpu->r[11] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0239B764 */ _t13 = cpu->r[11] + 0x0000000Cu;
|
|
/* 0239B764 */ cpu->r[30] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0239B768 */ _t14 = cpu->r[11] + 0x00000004u;
|
|
/* 0239B768 */ cpu->r[5] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0239B76C */ cpu->r[31] = cpu->r[11] - cpu->r[30];
|
|
/* 0239B770 */ cpu->r[28] = cpu->r[5] - cpu->r[30];
|
|
/* 0239B774 */ goto L_0239B784;
|
|
L_0239B778: ; // 0x239b778
|
|
/* 0239B778 */ cpu->r[12] = cpu->r[28] + cpu->r[30];
|
|
/* 0239B77C */ _t15 = cpu->r[12] + 0x00000004u;
|
|
/* 0239B77C */ cpu->r[6] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0239B780 */ cpu->r[28] = cpu->r[6] - cpu->r[30];
|
|
L_0239B784: ; // 0x239b784
|
|
/* 0239B784 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], cpu->r[31]);
|
|
/* 0239B788 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B788 */ _t17 = _t16 & 0x00000001u;
|
|
/* 0239B788 */ if (_t17) goto L_0239B7A0; else goto L_0239B78C;
|
|
L_0239B78C: ; // 0x239b78c
|
|
/* 0239B78C */ _t18 = cpu->r[28] + 0x0000001Cu;
|
|
/* 0239B78C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0239B790 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000002u);
|
|
/* 0239B794 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B794 */ _t20 = _t19 & 0x00000001u;
|
|
/* 0239B794 */ if (_t20) goto L_0239B7A0; else goto L_0239B798;
|
|
L_0239B798: ; // 0x239b798
|
|
/* 0239B798 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000003u);
|
|
/* 0239B79C */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B79C */ _t22 = _t21 & 0x00000001u;
|
|
/* 0239B79C */ if (_t22) goto L_0239B7A0; else goto L_0239B778;
|
|
L_0239B7A0: ; // 0x239b7a0
|
|
/* 0239B7A0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], cpu->r[31]);
|
|
/* 0239B7A4 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B7A4 */ _t24 = _t23 & 0x00000001u;
|
|
/* 0239B7A4 */ if (_t24) goto L_0239B820; else goto L_0239B7A8;
|
|
L_0239B7A8: ; // 0x239b7a8
|
|
/* 0239B7A8 */ _t25 = cpu->r[28] + 0x00000020u;
|
|
/* 0239B7A8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0239B7AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x0000002Bu);
|
|
/* 0239B7B0 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B7B0 */ _t27 = _t26 & 0x00000001u;
|
|
/* 0239B7B0 */ if (_t27) goto L_0239B7B4; else goto L_0239B7EC;
|
|
L_0239B7B4: ; // 0x239b7b4
|
|
/* 0239B7B4 */ cpu->r[3] = cpu->r[28];
|
|
/* 0239B7B8 */ cpu->r[4] = cpu->r[29];
|
|
/* 0239B7BC */ Gambit_fn_024AE2A0(cpu);
|
|
/* 0239B7C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239B7C4 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B7C4 */ _t29 = _t28 & 0x00000001u;
|
|
/* 0239B7C4 */ if (_t29) goto L_0239B7EC; else goto L_0239B7C8;
|
|
L_0239B7C8: ; // 0x239b7c8
|
|
/* 0239B7C8 */ _t30 = cpu->r[1] + 0x00000008u;
|
|
/* 0239B7C8 */ cpu->r[28] = rbrew_read32(cpu->mem, _t30);
|
|
/* 0239B7CC */ _t31 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239B7CC */ cpu->r[29] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0239B7D0 */ _t32 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239B7D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0239B7D4 */ _t33 = cpu->r[1] + 0x00000010u;
|
|
/* 0239B7D4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t33);
|
|
/* 0239B7D8 */ cpu->lr = cpu->r[0];
|
|
/* 0239B7DC */ _t34 = cpu->r[1] + 0x00000014u;
|
|
/* 0239B7DC */ cpu->r[31] = rbrew_read32(cpu->mem, _t34);
|
|
/* 0239B7E0 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0239B7E4 */ cpu->r[3] = 0x00000000u;
|
|
/* 0239B7E8 */ return;
|
|
L_0239B7EC: ; // 0x239b7ec
|
|
/* 0239B7EC */ cpu->r[5] = cpu->r[28] + cpu->r[30];
|
|
/* 0239B7F0 */ _t35 = cpu->r[5] + 0x00000004u;
|
|
/* 0239B7F0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t35);
|
|
/* 0239B7F4 */ cpu->r[28] = cpu->r[10] - cpu->r[30];
|
|
/* 0239B7F8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], cpu->r[31]);
|
|
/* 0239B7FC */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B7FC */ _t37 = _t36 & 0x00000001u;
|
|
/* 0239B7FC */ if (_t37) goto L_0239B820; else goto L_0239B800;
|
|
L_0239B800: ; // 0x239b800
|
|
/* 0239B800 */ _t38 = cpu->r[28] + 0x0000001Cu;
|
|
/* 0239B800 */ cpu->r[0] = rbrew_read32(cpu->mem, _t38);
|
|
/* 0239B804 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000002u);
|
|
/* 0239B808 */ _t39 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B808 */ _t40 = _t39 & 0x00000001u;
|
|
/* 0239B808 */ if (_t40) goto L_0239B818; else goto L_0239B80C;
|
|
L_0239B80C: ; // 0x239b80c
|
|
/* 0239B80C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000003u);
|
|
/* 0239B810 */ _t41 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B810 */ _t42 = _t41 & 0x00000001u;
|
|
/* 0239B810 */ if (_t42) goto L_0239B814; else goto L_0239B7EC;
|
|
L_0239B814: ; // 0x239b814
|
|
/* 0239B814 */ goto L_0239B7A0;
|
|
L_0239B818: ; // 0x239b818
|
|
/* 0239B818 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], cpu->r[31]);
|
|
/* 0239B81C */ _t43 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B81C */ _t44 = _t43 & 0x00000001u;
|
|
/* 0239B81C */ if (_t44) goto L_0239B820; else goto L_0239B7A8;
|
|
L_0239B820: ; // 0x239b820
|
|
/* 0239B820 */ _t45 = cpu->r[1] + 0x00000008u;
|
|
/* 0239B820 */ cpu->r[28] = rbrew_read32(cpu->mem, _t45);
|
|
/* 0239B824 */ _t46 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239B824 */ cpu->r[29] = rbrew_read32(cpu->mem, _t46);
|
|
/* 0239B828 */ _t47 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239B828 */ cpu->r[0] = rbrew_read32(cpu->mem, _t47);
|
|
/* 0239B82C */ _t48 = cpu->r[1] + 0x00000010u;
|
|
/* 0239B82C */ cpu->r[30] = rbrew_read32(cpu->mem, _t48);
|
|
/* 0239B830 */ cpu->lr = cpu->r[0];
|
|
/* 0239B834 */ _t49 = cpu->r[1] + 0x00000014u;
|
|
/* 0239B834 */ cpu->r[31] = rbrew_read32(cpu->mem, _t49);
|
|
/* 0239B838 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0239B83C */ cpu->r[3] = 0x00000001u;
|
|
/* 0239B840 */ return;
|
|
}
|
|
|
|
// fn_0239B71C @ 0x239b71c
|
|
void Gambit_fn_0239B71C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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_0239B71C: ; // 0x239b71c
|
|
/* 0239B71C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0239B71C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239B71C */ cpu->r[1] = _t0;
|
|
/* 0239B720 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0239B720 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0239B724 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0239B724 */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 0239B728 */ cpu->r[11] = 0x101C0000u;
|
|
/* 0239B72C */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239B72C */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 0239B730 */ _t4 = cpu->r[1] + 0x00000010u;
|
|
/* 0239B730 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 0239B734 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0239B738 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239B738 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0239B73C */ _t6 = cpu->r[11] + 0x00006000u;
|
|
/* 0239B73C */ cpu->r[11] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0239B740 */ cpu->r[29] = cpu->r[4];
|
|
/* 0239B744 */ _t7 = cpu->r[12] + 0x00006394u;
|
|
/* 0239B744 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0239B748 */ _t8 = cpu->r[11] + 0x00000264u;
|
|
/* 0239B748 */ cpu->r[7] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0239B74C */ cpu->r[6] = cpu->r[7] + cpu->r[12];
|
|
/* 0239B750 */ _t9 = cpu->r[6] + 0x00000104u;
|
|
/* 0239B750 */ cpu->r[8] = rbrew_read8(cpu->mem, _t9);
|
|
/* 0239B754 */ _t10 = cpu->r[7] + 0x00000030u;
|
|
/* 0239B754 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0239B758 */ cpu->r[7] = rbrew_rlwinm(cpu->r[8], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239B75C */ _t11 = cpu->r[7] + cpu->r[0];
|
|
/* 0239B75C */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0239B760 */ _t12 = cpu->r[10] + 0x00000008u;
|
|
/* 0239B760 */ cpu->r[11] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0239B764 */ _t13 = cpu->r[11] + 0x0000000Cu;
|
|
/* 0239B764 */ cpu->r[30] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0239B768 */ _t14 = cpu->r[11] + 0x00000004u;
|
|
/* 0239B768 */ cpu->r[5] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0239B76C */ cpu->r[31] = cpu->r[11] - cpu->r[30];
|
|
/* 0239B770 */ cpu->r[28] = cpu->r[5] - cpu->r[30];
|
|
/* 0239B774 */ goto L_0239B784;
|
|
L_0239B778: ; // 0x239b778
|
|
/* 0239B778 */ cpu->r[12] = cpu->r[28] + cpu->r[30];
|
|
/* 0239B77C */ _t15 = cpu->r[12] + 0x00000004u;
|
|
/* 0239B77C */ cpu->r[6] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0239B780 */ cpu->r[28] = cpu->r[6] - cpu->r[30];
|
|
L_0239B784: ; // 0x239b784
|
|
/* 0239B784 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], cpu->r[31]);
|
|
/* 0239B788 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B788 */ _t17 = _t16 & 0x00000001u;
|
|
/* 0239B788 */ if (_t17) goto L_0239B7A0; else goto L_0239B78C;
|
|
L_0239B78C: ; // 0x239b78c
|
|
/* 0239B78C */ _t18 = cpu->r[28] + 0x0000001Cu;
|
|
/* 0239B78C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0239B790 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000002u);
|
|
/* 0239B794 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B794 */ _t20 = _t19 & 0x00000001u;
|
|
/* 0239B794 */ if (_t20) goto L_0239B7A0; else goto L_0239B798;
|
|
L_0239B798: ; // 0x239b798
|
|
/* 0239B798 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000003u);
|
|
/* 0239B79C */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B79C */ _t22 = _t21 & 0x00000001u;
|
|
/* 0239B79C */ if (_t22) goto L_0239B7A0; else goto L_0239B778;
|
|
L_0239B7A0: ; // 0x239b7a0
|
|
/* 0239B7A0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], cpu->r[31]);
|
|
/* 0239B7A4 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B7A4 */ _t24 = _t23 & 0x00000001u;
|
|
/* 0239B7A4 */ if (_t24) goto L_0239B820; else goto L_0239B7A8;
|
|
L_0239B7A8: ; // 0x239b7a8
|
|
/* 0239B7A8 */ _t25 = cpu->r[28] + 0x00000020u;
|
|
/* 0239B7A8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0239B7AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x0000002Bu);
|
|
/* 0239B7B0 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B7B0 */ _t27 = _t26 & 0x00000001u;
|
|
/* 0239B7B0 */ if (_t27) goto L_0239B7B4; else goto L_0239B7EC;
|
|
L_0239B7B4: ; // 0x239b7b4
|
|
/* 0239B7B4 */ cpu->r[3] = cpu->r[28];
|
|
/* 0239B7B8 */ cpu->r[4] = cpu->r[29];
|
|
/* 0239B7BC */ Gambit_fn_024AE2A0(cpu);
|
|
/* 0239B7C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239B7C4 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B7C4 */ _t29 = _t28 & 0x00000001u;
|
|
/* 0239B7C4 */ if (_t29) goto L_0239B7EC; else goto L_0239B7C8;
|
|
L_0239B7C8: ; // 0x239b7c8
|
|
/* 0239B7C8 */ _t30 = cpu->r[1] + 0x00000008u;
|
|
/* 0239B7C8 */ cpu->r[28] = rbrew_read32(cpu->mem, _t30);
|
|
/* 0239B7CC */ _t31 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239B7CC */ cpu->r[29] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0239B7D0 */ _t32 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239B7D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0239B7D4 */ _t33 = cpu->r[1] + 0x00000010u;
|
|
/* 0239B7D4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t33);
|
|
/* 0239B7D8 */ cpu->lr = cpu->r[0];
|
|
/* 0239B7DC */ _t34 = cpu->r[1] + 0x00000014u;
|
|
/* 0239B7DC */ cpu->r[31] = rbrew_read32(cpu->mem, _t34);
|
|
/* 0239B7E0 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0239B7E4 */ cpu->r[3] = 0x00000000u;
|
|
/* 0239B7E8 */ return;
|
|
L_0239B7EC: ; // 0x239b7ec
|
|
/* 0239B7EC */ cpu->r[5] = cpu->r[28] + cpu->r[30];
|
|
/* 0239B7F0 */ _t35 = cpu->r[5] + 0x00000004u;
|
|
/* 0239B7F0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t35);
|
|
/* 0239B7F4 */ cpu->r[28] = cpu->r[10] - cpu->r[30];
|
|
/* 0239B7F8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], cpu->r[31]);
|
|
/* 0239B7FC */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B7FC */ _t37 = _t36 & 0x00000001u;
|
|
/* 0239B7FC */ if (_t37) goto L_0239B820; else goto L_0239B800;
|
|
L_0239B800: ; // 0x239b800
|
|
/* 0239B800 */ _t38 = cpu->r[28] + 0x0000001Cu;
|
|
/* 0239B800 */ cpu->r[0] = rbrew_read32(cpu->mem, _t38);
|
|
/* 0239B804 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000002u);
|
|
/* 0239B808 */ _t39 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B808 */ _t40 = _t39 & 0x00000001u;
|
|
/* 0239B808 */ if (_t40) goto L_0239B818; else goto L_0239B80C;
|
|
L_0239B80C: ; // 0x239b80c
|
|
/* 0239B80C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000003u);
|
|
/* 0239B810 */ _t41 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B810 */ _t42 = _t41 & 0x00000001u;
|
|
/* 0239B810 */ if (_t42) goto L_0239B814; else goto L_0239B7EC;
|
|
L_0239B814: ; // 0x239b814
|
|
/* 0239B814 */ goto L_0239B7A0;
|
|
L_0239B818: ; // 0x239b818
|
|
/* 0239B818 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], cpu->r[31]);
|
|
/* 0239B81C */ _t43 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B81C */ _t44 = _t43 & 0x00000001u;
|
|
/* 0239B81C */ if (_t44) goto L_0239B820; else goto L_0239B7A8;
|
|
L_0239B820: ; // 0x239b820
|
|
/* 0239B820 */ _t45 = cpu->r[1] + 0x00000008u;
|
|
/* 0239B820 */ cpu->r[28] = rbrew_read32(cpu->mem, _t45);
|
|
/* 0239B824 */ _t46 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239B824 */ cpu->r[29] = rbrew_read32(cpu->mem, _t46);
|
|
/* 0239B828 */ _t47 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239B828 */ cpu->r[0] = rbrew_read32(cpu->mem, _t47);
|
|
/* 0239B82C */ _t48 = cpu->r[1] + 0x00000010u;
|
|
/* 0239B82C */ cpu->r[30] = rbrew_read32(cpu->mem, _t48);
|
|
/* 0239B830 */ cpu->lr = cpu->r[0];
|
|
/* 0239B834 */ _t49 = cpu->r[1] + 0x00000014u;
|
|
/* 0239B834 */ cpu->r[31] = rbrew_read32(cpu->mem, _t49);
|
|
/* 0239B838 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0239B83C */ cpu->r[3] = 0x00000001u;
|
|
/* 0239B840 */ return;
|
|
}
|
|
|
|
// fn_0239B844 @ 0x239b844
|
|
void Gambit_fn_0239B844(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39;
|
|
|
|
L_0239B844: ; // 0x239b844
|
|
/* 0239B844 */ cpu->r[0] = cpu->lr;
|
|
/* 0239B848 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0239B848 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239B848 */ cpu->r[1] = _t0;
|
|
/* 0239B84C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239B84C */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 0239B850 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 0239B850 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0239B854 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0239B854 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 0239B858 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239B858 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0239B85C */ cpu->r[29] = cpu->r[3];
|
|
/* 0239B860 */ _t5 = cpu->r[29] + 0x00000030u;
|
|
/* 0239B860 */ cpu->r[8] = rbrew_read8(cpu->mem, _t5);
|
|
/* 0239B864 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0239B868 */ cpu->r[30] = cpu->r[4];
|
|
/* 0239B86C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B86C */ _t7 = _t6 & 0x00000001u;
|
|
/* 0239B86C */ if (_t7) goto L_0239B914; else goto L_0239B870;
|
|
L_0239B870: ; // 0x239b870
|
|
/* 0239B870 */ _t8 = cpu->r[29] + 0x00000018u;
|
|
/* 0239B870 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0239B874 */ _t9 = cpu->r[29] + 0x00000020u;
|
|
/* 0239B874 */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0239B878 */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239B87C */ cpu->r[12] = cpu->r[31] + cpu->r[10];
|
|
/* 0239B880 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[12]);
|
|
/* 0239B884 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B884 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0239B884 */ if (_t11) goto L_0239B8B8; else goto L_0239B888;
|
|
L_0239B888: ; // 0x239b888
|
|
/* 0239B888 */ _t12 = cpu->r[31] + 0x00000000u;
|
|
/* 0239B888 */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0239B88C */ cpu->r[4] = cpu->r[30];
|
|
/* 0239B890 */ Gambit_fn_024AE2A0(cpu);
|
|
/* 0239B894 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239B898 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B898 */ _t14 = _t13 & 0x00000001u;
|
|
/* 0239B898 */ if (_t14) goto L_0239B89C; else goto L_0239B914;
|
|
L_0239B89C: ; // 0x239b89c
|
|
/* 0239B89C */ _t15 = cpu->r[29] + 0x00000018u;
|
|
/* 0239B89C */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0239B8A0 */ _t16 = cpu->r[29] + 0x00000020u;
|
|
/* 0239B8A0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0239B8A4 */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239B8A8 */ cpu->r[31] = cpu->r[31] + 0x00000004u;
|
|
/* 0239B8AC */ cpu->r[12] = cpu->r[12] + cpu->r[10];
|
|
/* 0239B8B0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[12]);
|
|
/* 0239B8B4 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B8B4 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0239B8B4 */ if (_t18) goto L_0239B8B8; else goto L_0239B888;
|
|
L_0239B8B8: ; // 0x239b8b8
|
|
/* 0239B8B8 */ _t19 = cpu->r[29] + 0x00000024u;
|
|
/* 0239B8B8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0239B8BC */ _t20 = cpu->r[29] + 0x0000002Cu;
|
|
/* 0239B8BC */ cpu->r[31] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0239B8C0 */ cpu->r[11] = rbrew_rlwinm(cpu->r[5], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239B8C4 */ cpu->r[0] = cpu->r[31] + cpu->r[11];
|
|
/* 0239B8C8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]);
|
|
/* 0239B8CC */ cpu->r[4] = cpu->r[30];
|
|
/* 0239B8D0 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B8D0 */ _t22 = _t21 & 0x00000001u;
|
|
/* 0239B8D0 */ if (_t22) goto L_0239B904; else goto L_0239B8D4;
|
|
L_0239B8D4: ; // 0x239b8d4
|
|
/* 0239B8D4 */ _t23 = cpu->r[31] + 0x00000000u;
|
|
/* 0239B8D4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0239B8D8 */ Gambit_fn_024AE2A0(cpu);
|
|
/* 0239B8DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239B8E0 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B8E0 */ _t25 = _t24 & 0x00000001u;
|
|
/* 0239B8E0 */ if (_t25) goto L_0239B8E4; else goto L_0239B914;
|
|
L_0239B8E4: ; // 0x239b8e4
|
|
/* 0239B8E4 */ _t26 = cpu->r[29] + 0x00000024u;
|
|
/* 0239B8E4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0239B8E8 */ _t27 = cpu->r[29] + 0x0000002Cu;
|
|
/* 0239B8E8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0239B8EC */ cpu->r[11] = rbrew_rlwinm(cpu->r[5], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239B8F0 */ cpu->r[31] = cpu->r[31] + 0x00000004u;
|
|
/* 0239B8F4 */ cpu->r[0] = cpu->r[6] + cpu->r[11];
|
|
/* 0239B8F8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]);
|
|
/* 0239B8FC */ cpu->r[4] = cpu->r[30];
|
|
/* 0239B900 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B900 */ _t29 = _t28 & 0x00000001u;
|
|
/* 0239B900 */ if (_t29) goto L_0239B904; else goto L_0239B8D4;
|
|
L_0239B904: ; // 0x239b904
|
|
/* 0239B904 */ cpu->r[3] = cpu->r[29];
|
|
/* 0239B908 */ Gambit_fn_0239B718(cpu);
|
|
/* 0239B90C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239B910 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B910 */ _t31 = _t30 & 0x00000001u;
|
|
/* 0239B910 */ if (_t31) goto L_0239B934; else goto L_0239B914;
|
|
L_0239B914: ; // 0x239b914
|
|
/* 0239B914 */ _t32 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239B914 */ cpu->r[29] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0239B918 */ _t33 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239B918 */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 0239B91C */ _t34 = cpu->r[1] + 0x00000010u;
|
|
/* 0239B91C */ cpu->r[30] = rbrew_read32(cpu->mem, _t34);
|
|
/* 0239B920 */ cpu->lr = cpu->r[0];
|
|
/* 0239B924 */ _t35 = cpu->r[1] + 0x00000014u;
|
|
/* 0239B924 */ cpu->r[31] = rbrew_read32(cpu->mem, _t35);
|
|
/* 0239B928 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0239B92C */ cpu->r[3] = 0x00000000u;
|
|
/* 0239B930 */ return;
|
|
L_0239B934: ; // 0x239b934
|
|
/* 0239B934 */ _t36 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239B934 */ cpu->r[29] = rbrew_read32(cpu->mem, _t36);
|
|
/* 0239B938 */ _t37 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239B938 */ cpu->r[0] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0239B93C */ _t38 = cpu->r[1] + 0x00000010u;
|
|
/* 0239B93C */ cpu->r[30] = rbrew_read32(cpu->mem, _t38);
|
|
/* 0239B940 */ cpu->lr = cpu->r[0];
|
|
/* 0239B944 */ _t39 = cpu->r[1] + 0x00000014u;
|
|
/* 0239B944 */ cpu->r[31] = rbrew_read32(cpu->mem, _t39);
|
|
/* 0239B948 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0239B94C */ cpu->r[3] = 0x00000001u;
|
|
/* 0239B950 */ return;
|
|
}
|
|
|
|
// fn_0239B848 @ 0x239b848
|
|
void Gambit_fn_0239B848(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39;
|
|
|
|
L_0239B848: ; // 0x239b848
|
|
/* 0239B848 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0239B848 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239B848 */ cpu->r[1] = _t0;
|
|
/* 0239B84C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239B84C */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 0239B850 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 0239B850 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0239B854 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0239B854 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 0239B858 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239B858 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0239B85C */ cpu->r[29] = cpu->r[3];
|
|
/* 0239B860 */ _t5 = cpu->r[29] + 0x00000030u;
|
|
/* 0239B860 */ cpu->r[8] = rbrew_read8(cpu->mem, _t5);
|
|
/* 0239B864 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0239B868 */ cpu->r[30] = cpu->r[4];
|
|
/* 0239B86C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B86C */ _t7 = _t6 & 0x00000001u;
|
|
/* 0239B86C */ if (_t7) goto L_0239B914; else goto L_0239B870;
|
|
L_0239B870: ; // 0x239b870
|
|
/* 0239B870 */ _t8 = cpu->r[29] + 0x00000018u;
|
|
/* 0239B870 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0239B874 */ _t9 = cpu->r[29] + 0x00000020u;
|
|
/* 0239B874 */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0239B878 */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239B87C */ cpu->r[12] = cpu->r[31] + cpu->r[10];
|
|
/* 0239B880 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[12]);
|
|
/* 0239B884 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B884 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0239B884 */ if (_t11) goto L_0239B8B8; else goto L_0239B888;
|
|
L_0239B888: ; // 0x239b888
|
|
/* 0239B888 */ _t12 = cpu->r[31] + 0x00000000u;
|
|
/* 0239B888 */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0239B88C */ cpu->r[4] = cpu->r[30];
|
|
/* 0239B890 */ Gambit_fn_024AE2A0(cpu);
|
|
/* 0239B894 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239B898 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B898 */ _t14 = _t13 & 0x00000001u;
|
|
/* 0239B898 */ if (_t14) goto L_0239B89C; else goto L_0239B914;
|
|
L_0239B89C: ; // 0x239b89c
|
|
/* 0239B89C */ _t15 = cpu->r[29] + 0x00000018u;
|
|
/* 0239B89C */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0239B8A0 */ _t16 = cpu->r[29] + 0x00000020u;
|
|
/* 0239B8A0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0239B8A4 */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239B8A8 */ cpu->r[31] = cpu->r[31] + 0x00000004u;
|
|
/* 0239B8AC */ cpu->r[12] = cpu->r[12] + cpu->r[10];
|
|
/* 0239B8B0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[12]);
|
|
/* 0239B8B4 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B8B4 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0239B8B4 */ if (_t18) goto L_0239B8B8; else goto L_0239B888;
|
|
L_0239B8B8: ; // 0x239b8b8
|
|
/* 0239B8B8 */ _t19 = cpu->r[29] + 0x00000024u;
|
|
/* 0239B8B8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0239B8BC */ _t20 = cpu->r[29] + 0x0000002Cu;
|
|
/* 0239B8BC */ cpu->r[31] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0239B8C0 */ cpu->r[11] = rbrew_rlwinm(cpu->r[5], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239B8C4 */ cpu->r[0] = cpu->r[31] + cpu->r[11];
|
|
/* 0239B8C8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]);
|
|
/* 0239B8CC */ cpu->r[4] = cpu->r[30];
|
|
/* 0239B8D0 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B8D0 */ _t22 = _t21 & 0x00000001u;
|
|
/* 0239B8D0 */ if (_t22) goto L_0239B904; else goto L_0239B8D4;
|
|
L_0239B8D4: ; // 0x239b8d4
|
|
/* 0239B8D4 */ _t23 = cpu->r[31] + 0x00000000u;
|
|
/* 0239B8D4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0239B8D8 */ Gambit_fn_024AE2A0(cpu);
|
|
/* 0239B8DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239B8E0 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B8E0 */ _t25 = _t24 & 0x00000001u;
|
|
/* 0239B8E0 */ if (_t25) goto L_0239B8E4; else goto L_0239B914;
|
|
L_0239B8E4: ; // 0x239b8e4
|
|
/* 0239B8E4 */ _t26 = cpu->r[29] + 0x00000024u;
|
|
/* 0239B8E4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0239B8E8 */ _t27 = cpu->r[29] + 0x0000002Cu;
|
|
/* 0239B8E8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0239B8EC */ cpu->r[11] = rbrew_rlwinm(cpu->r[5], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239B8F0 */ cpu->r[31] = cpu->r[31] + 0x00000004u;
|
|
/* 0239B8F4 */ cpu->r[0] = cpu->r[6] + cpu->r[11];
|
|
/* 0239B8F8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]);
|
|
/* 0239B8FC */ cpu->r[4] = cpu->r[30];
|
|
/* 0239B900 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B900 */ _t29 = _t28 & 0x00000001u;
|
|
/* 0239B900 */ if (_t29) goto L_0239B904; else goto L_0239B8D4;
|
|
L_0239B904: ; // 0x239b904
|
|
/* 0239B904 */ cpu->r[3] = cpu->r[29];
|
|
/* 0239B908 */ Gambit_fn_0239B718(cpu);
|
|
/* 0239B90C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239B910 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B910 */ _t31 = _t30 & 0x00000001u;
|
|
/* 0239B910 */ if (_t31) goto L_0239B934; else goto L_0239B914;
|
|
L_0239B914: ; // 0x239b914
|
|
/* 0239B914 */ _t32 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239B914 */ cpu->r[29] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0239B918 */ _t33 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239B918 */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 0239B91C */ _t34 = cpu->r[1] + 0x00000010u;
|
|
/* 0239B91C */ cpu->r[30] = rbrew_read32(cpu->mem, _t34);
|
|
/* 0239B920 */ cpu->lr = cpu->r[0];
|
|
/* 0239B924 */ _t35 = cpu->r[1] + 0x00000014u;
|
|
/* 0239B924 */ cpu->r[31] = rbrew_read32(cpu->mem, _t35);
|
|
/* 0239B928 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0239B92C */ cpu->r[3] = 0x00000000u;
|
|
/* 0239B930 */ return;
|
|
L_0239B934: ; // 0x239b934
|
|
/* 0239B934 */ _t36 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239B934 */ cpu->r[29] = rbrew_read32(cpu->mem, _t36);
|
|
/* 0239B938 */ _t37 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239B938 */ cpu->r[0] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0239B93C */ _t38 = cpu->r[1] + 0x00000010u;
|
|
/* 0239B93C */ cpu->r[30] = rbrew_read32(cpu->mem, _t38);
|
|
/* 0239B940 */ cpu->lr = cpu->r[0];
|
|
/* 0239B944 */ _t39 = cpu->r[1] + 0x00000014u;
|
|
/* 0239B944 */ cpu->r[31] = rbrew_read32(cpu->mem, _t39);
|
|
/* 0239B948 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0239B94C */ cpu->r[3] = 0x00000001u;
|
|
/* 0239B950 */ return;
|
|
}
|
|
|
|
// fn_0239B954 @ 0x239b954
|
|
void Gambit_fn_0239B954(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_0239B954: ; // 0x239b954
|
|
/* 0239B954 */ cpu->r[0] = cpu->lr;
|
|
/* 0239B958 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0239B958 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239B958 */ cpu->r[1] = _t0;
|
|
/* 0239B95C */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 0239B95C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0239B960 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239B960 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 0239B964 */ cpu->r[30] = cpu->r[3];
|
|
/* 0239B968 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0239B968 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 0239B96C */ cpu->r[3] = cpu->r[5];
|
|
/* 0239B970 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239B970 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0239B974 */ _t5 = cpu->r[3] + 0x00000004u;
|
|
/* 0239B974 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0239B978 */ _t6 = cpu->r[12] + 0x000001DCu;
|
|
/* 0239B978 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0239B97C */ cpu->ctr = cpu->r[0];
|
|
/* 0239B980 */ cpu->r[29] = 0x00000000u;
|
|
/* 0239B984 */ cpu->r[31] = cpu->r[4];
|
|
/* 0239B988 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0239B98C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239B990 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B990 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0239B990 */ if (_t8) goto L_0239B9A4; else goto L_0239B994;
|
|
L_0239B994: ; // 0x239b994
|
|
/* 0239B994 */ cpu->r[3] = cpu->r[30];
|
|
/* 0239B998 */ cpu->r[4] = cpu->r[31];
|
|
/* 0239B99C */ Gambit_fn_0239B844(cpu);
|
|
/* 0239B9A0 */ cpu->r[29] = cpu->r[3];
|
|
L_0239B9A4: ; // 0x239b9a4
|
|
/* 0239B9A4 */ cpu->r[3] = cpu->r[29];
|
|
/* 0239B9A8 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239B9A8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0239B9AC */ _t10 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239B9AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0239B9B0 */ _t11 = cpu->r[1] + 0x00000010u;
|
|
/* 0239B9B0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0239B9B4 */ cpu->lr = cpu->r[0];
|
|
/* 0239B9B8 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0239B9B8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0239B9BC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0239B9C0 */ return;
|
|
}
|
|
|
|
// fn_0239B958 @ 0x239b958
|
|
void Gambit_fn_0239B958(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_0239B958: ; // 0x239b958
|
|
/* 0239B958 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0239B958 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239B958 */ cpu->r[1] = _t0;
|
|
/* 0239B95C */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 0239B95C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0239B960 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239B960 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 0239B964 */ cpu->r[30] = cpu->r[3];
|
|
/* 0239B968 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0239B968 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 0239B96C */ cpu->r[3] = cpu->r[5];
|
|
/* 0239B970 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239B970 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0239B974 */ _t5 = cpu->r[3] + 0x00000004u;
|
|
/* 0239B974 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0239B978 */ _t6 = cpu->r[12] + 0x000001DCu;
|
|
/* 0239B978 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0239B97C */ cpu->ctr = cpu->r[0];
|
|
/* 0239B980 */ cpu->r[29] = 0x00000000u;
|
|
/* 0239B984 */ cpu->r[31] = cpu->r[4];
|
|
/* 0239B988 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0239B98C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239B990 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B990 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0239B990 */ if (_t8) goto L_0239B9A4; else goto L_0239B994;
|
|
L_0239B994: ; // 0x239b994
|
|
/* 0239B994 */ cpu->r[3] = cpu->r[30];
|
|
/* 0239B998 */ cpu->r[4] = cpu->r[31];
|
|
/* 0239B99C */ Gambit_fn_0239B844(cpu);
|
|
/* 0239B9A0 */ cpu->r[29] = cpu->r[3];
|
|
L_0239B9A4: ; // 0x239b9a4
|
|
/* 0239B9A4 */ cpu->r[3] = cpu->r[29];
|
|
/* 0239B9A8 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239B9A8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0239B9AC */ _t10 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239B9AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0239B9B0 */ _t11 = cpu->r[1] + 0x00000010u;
|
|
/* 0239B9B0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0239B9B4 */ cpu->lr = cpu->r[0];
|
|
/* 0239B9B8 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0239B9B8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0239B9BC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0239B9C0 */ return;
|
|
}
|
|
|
|
// fn_0239B9C4 @ 0x239b9c4
|
|
void Gambit_fn_0239B9C4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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_0239B9C4: ; // 0x239b9c4
|
|
/* 0239B9C4 */ cpu->r[0] = cpu->lr;
|
|
/* 0239B9C8 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0239B9C8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239B9C8 */ cpu->r[1] = _t0;
|
|
/* 0239B9CC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239B9CC */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 0239B9D0 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0239B9D0 */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 0239B9D4 */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 0239B9D4 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 0239B9D8 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 0239B9D8 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 0239B9DC */ cpu->r[12] = 0x101C0000u;
|
|
/* 0239B9E0 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239B9E0 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0239B9E4 */ _t6 = cpu->r[12] + 0x00006000u;
|
|
/* 0239B9E4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0239B9E8 */ cpu->r[28] = cpu->r[4];
|
|
/* 0239B9EC */ _t7 = cpu->r[12] + 0x00000264u;
|
|
/* 0239B9EC */ cpu->r[4] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0239B9F0 */ _t8 = cpu->r[4] + 0x00000030u;
|
|
/* 0239B9F0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0239B9F4 */ _t9 = cpu->r[9] + 0x000000ACu;
|
|
/* 0239B9F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0239B9F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0239B9FC */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B9FC */ _t11 = _t10 & 0x00000001u;
|
|
/* 0239B9FC */ if (_t11) goto L_0239BAB8; else goto L_0239BA00;
|
|
L_0239BA00: ; // 0x239ba00
|
|
/* 0239BA00 */ cpu->r[11] = 0x101C0000u;
|
|
/* 0239BA04 */ _t12 = cpu->r[11] + 0x00006394u;
|
|
/* 0239BA04 */ cpu->r[11] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0239BA08 */ cpu->r[12] = cpu->r[4] + cpu->r[11];
|
|
/* 0239BA0C */ _t13 = cpu->r[12] + 0x00000104u;
|
|
/* 0239BA0C */ cpu->r[5] = rbrew_read8(cpu->mem, _t13);
|
|
/* 0239BA10 */ _t14 = cpu->r[4] + 0x00000030u;
|
|
/* 0239BA10 */ cpu->r[6] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0239BA14 */ cpu->r[4] = rbrew_rlwinm(cpu->r[5], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239BA18 */ _t15 = cpu->r[4] + cpu->r[6];
|
|
/* 0239BA18 */ cpu->r[7] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0239BA1C */ _t16 = cpu->r[7] + 0x00000008u;
|
|
/* 0239BA1C */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0239BA20 */ _t17 = cpu->r[11] + 0x0000000Cu;
|
|
/* 0239BA20 */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0239BA24 */ _t18 = cpu->r[11] + 0x00000004u;
|
|
/* 0239BA24 */ cpu->r[8] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0239BA28 */ cpu->r[31] = cpu->r[11] - cpu->r[30];
|
|
/* 0239BA2C */ cpu->r[29] = cpu->r[8] - cpu->r[30];
|
|
/* 0239BA30 */ goto L_0239BA40;
|
|
L_0239BA34: ; // 0x239ba34
|
|
/* 0239BA34 */ cpu->r[5] = cpu->r[29] + cpu->r[30];
|
|
/* 0239BA38 */ _t19 = cpu->r[5] + 0x00000004u;
|
|
/* 0239BA38 */ cpu->r[9] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0239BA3C */ cpu->r[29] = cpu->r[9] - cpu->r[30];
|
|
L_0239BA40: ; // 0x239ba40
|
|
/* 0239BA40 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[31]);
|
|
/* 0239BA44 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239BA44 */ _t21 = _t20 & 0x00000001u;
|
|
/* 0239BA44 */ if (_t21) goto L_0239BA5C; else goto L_0239BA48;
|
|
L_0239BA48: ; // 0x239ba48
|
|
/* 0239BA48 */ _t22 = cpu->r[29] + 0x0000001Cu;
|
|
/* 0239BA48 */ cpu->r[6] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0239BA4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000002u);
|
|
/* 0239BA50 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239BA50 */ _t24 = _t23 & 0x00000001u;
|
|
/* 0239BA50 */ if (_t24) goto L_0239BA5C; else goto L_0239BA54;
|
|
L_0239BA54: ; // 0x239ba54
|
|
/* 0239BA54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000003u);
|
|
/* 0239BA58 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239BA58 */ _t26 = _t25 & 0x00000001u;
|
|
/* 0239BA58 */ if (_t26) goto L_0239BA5C; else goto L_0239BA34;
|
|
L_0239BA5C: ; // 0x239ba5c
|
|
/* 0239BA5C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[31]);
|
|
/* 0239BA60 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239BA60 */ _t28 = _t27 & 0x00000001u;
|
|
/* 0239BA60 */ if (_t28) goto L_0239BAB8; else goto L_0239BA64;
|
|
L_0239BA64: ; // 0x239ba64
|
|
/* 0239BA64 */ _t29 = cpu->r[29] + 0x00000020u;
|
|
/* 0239BA64 */ cpu->r[10] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0239BA68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x0000002Bu);
|
|
/* 0239BA6C */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239BA6C */ _t31 = _t30 & 0x00000001u;
|
|
/* 0239BA6C */ if (_t31) goto L_0239BA70; else goto L_0239BA84;
|
|
L_0239BA70: ; // 0x239ba70
|
|
/* 0239BA70 */ cpu->r[3] = cpu->r[29];
|
|
/* 0239BA74 */ cpu->r[4] = cpu->r[28];
|
|
/* 0239BA78 */ Gambit_fn_024AE2A0(cpu);
|
|
/* 0239BA7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239BA80 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239BA80 */ _t33 = _t32 & 0x00000001u;
|
|
/* 0239BA80 */ if (_t33) goto L_0239BA84; else goto L_0239BABC;
|
|
L_0239BA84: ; // 0x239ba84
|
|
/* 0239BA84 */ cpu->r[8] = cpu->r[29] + cpu->r[30];
|
|
/* 0239BA88 */ _t34 = cpu->r[8] + 0x00000004u;
|
|
/* 0239BA88 */ cpu->r[0] = rbrew_read32(cpu->mem, _t34);
|
|
/* 0239BA8C */ cpu->r[29] = cpu->r[0] - cpu->r[30];
|
|
/* 0239BA90 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[31]);
|
|
/* 0239BA94 */ _t35 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239BA94 */ _t36 = _t35 & 0x00000001u;
|
|
/* 0239BA94 */ if (_t36) goto L_0239BAB8; else goto L_0239BA98;
|
|
L_0239BA98: ; // 0x239ba98
|
|
/* 0239BA98 */ _t37 = cpu->r[29] + 0x0000001Cu;
|
|
/* 0239BA98 */ cpu->r[0] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0239BA9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000002u);
|
|
/* 0239BAA0 */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239BAA0 */ _t39 = _t38 & 0x00000001u;
|
|
/* 0239BAA0 */ if (_t39) goto L_0239BAB0; else goto L_0239BAA4;
|
|
L_0239BAA4: ; // 0x239baa4
|
|
/* 0239BAA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000003u);
|
|
/* 0239BAA8 */ _t40 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239BAA8 */ _t41 = _t40 & 0x00000001u;
|
|
/* 0239BAA8 */ if (_t41) goto L_0239BAAC; else goto L_0239BA84;
|
|
L_0239BAAC: ; // 0x239baac
|
|
/* 0239BAAC */ goto L_0239BA5C;
|
|
L_0239BAB0: ; // 0x239bab0
|
|
/* 0239BAB0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[31]);
|
|
/* 0239BAB4 */ _t42 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239BAB4 */ _t43 = _t42 & 0x00000001u;
|
|
/* 0239BAB4 */ if (_t43) goto L_0239BAB8; else goto L_0239BA64;
|
|
L_0239BAB8: ; // 0x239bab8
|
|
/* 0239BAB8 */ cpu->r[29] = 0x00000000u;
|
|
L_0239BABC: ; // 0x239babc
|
|
/* 0239BABC */ _t44 = cpu->r[1] + 0x00000008u;
|
|
/* 0239BABC */ cpu->r[28] = rbrew_read32(cpu->mem, _t44);
|
|
/* 0239BAC0 */ cpu->r[3] = cpu->r[29];
|
|
/* 0239BAC4 */ _t45 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239BAC4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t45);
|
|
/* 0239BAC8 */ _t46 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239BAC8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t46);
|
|
/* 0239BACC */ _t47 = cpu->r[1] + 0x00000010u;
|
|
/* 0239BACC */ cpu->r[30] = rbrew_read32(cpu->mem, _t47);
|
|
/* 0239BAD0 */ cpu->lr = cpu->r[0];
|
|
/* 0239BAD4 */ _t48 = cpu->r[1] + 0x00000014u;
|
|
/* 0239BAD4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t48);
|
|
/* 0239BAD8 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0239BADC */ return;
|
|
}
|
|
|
|
// fn_0239B9C8 @ 0x239b9c8
|
|
void Gambit_fn_0239B9C8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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_0239B9C8: ; // 0x239b9c8
|
|
/* 0239B9C8 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0239B9C8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239B9C8 */ cpu->r[1] = _t0;
|
|
/* 0239B9CC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239B9CC */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 0239B9D0 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0239B9D0 */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 0239B9D4 */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 0239B9D4 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 0239B9D8 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 0239B9D8 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 0239B9DC */ cpu->r[12] = 0x101C0000u;
|
|
/* 0239B9E0 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239B9E0 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0239B9E4 */ _t6 = cpu->r[12] + 0x00006000u;
|
|
/* 0239B9E4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0239B9E8 */ cpu->r[28] = cpu->r[4];
|
|
/* 0239B9EC */ _t7 = cpu->r[12] + 0x00000264u;
|
|
/* 0239B9EC */ cpu->r[4] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0239B9F0 */ _t8 = cpu->r[4] + 0x00000030u;
|
|
/* 0239B9F0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0239B9F4 */ _t9 = cpu->r[9] + 0x000000ACu;
|
|
/* 0239B9F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0239B9F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0239B9FC */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239B9FC */ _t11 = _t10 & 0x00000001u;
|
|
/* 0239B9FC */ if (_t11) goto L_0239BAB8; else goto L_0239BA00;
|
|
L_0239BA00: ; // 0x239ba00
|
|
/* 0239BA00 */ cpu->r[11] = 0x101C0000u;
|
|
/* 0239BA04 */ _t12 = cpu->r[11] + 0x00006394u;
|
|
/* 0239BA04 */ cpu->r[11] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0239BA08 */ cpu->r[12] = cpu->r[4] + cpu->r[11];
|
|
/* 0239BA0C */ _t13 = cpu->r[12] + 0x00000104u;
|
|
/* 0239BA0C */ cpu->r[5] = rbrew_read8(cpu->mem, _t13);
|
|
/* 0239BA10 */ _t14 = cpu->r[4] + 0x00000030u;
|
|
/* 0239BA10 */ cpu->r[6] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0239BA14 */ cpu->r[4] = rbrew_rlwinm(cpu->r[5], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239BA18 */ _t15 = cpu->r[4] + cpu->r[6];
|
|
/* 0239BA18 */ cpu->r[7] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0239BA1C */ _t16 = cpu->r[7] + 0x00000008u;
|
|
/* 0239BA1C */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0239BA20 */ _t17 = cpu->r[11] + 0x0000000Cu;
|
|
/* 0239BA20 */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0239BA24 */ _t18 = cpu->r[11] + 0x00000004u;
|
|
/* 0239BA24 */ cpu->r[8] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0239BA28 */ cpu->r[31] = cpu->r[11] - cpu->r[30];
|
|
/* 0239BA2C */ cpu->r[29] = cpu->r[8] - cpu->r[30];
|
|
/* 0239BA30 */ goto L_0239BA40;
|
|
L_0239BA34: ; // 0x239ba34
|
|
/* 0239BA34 */ cpu->r[5] = cpu->r[29] + cpu->r[30];
|
|
/* 0239BA38 */ _t19 = cpu->r[5] + 0x00000004u;
|
|
/* 0239BA38 */ cpu->r[9] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0239BA3C */ cpu->r[29] = cpu->r[9] - cpu->r[30];
|
|
L_0239BA40: ; // 0x239ba40
|
|
/* 0239BA40 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[31]);
|
|
/* 0239BA44 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239BA44 */ _t21 = _t20 & 0x00000001u;
|
|
/* 0239BA44 */ if (_t21) goto L_0239BA5C; else goto L_0239BA48;
|
|
L_0239BA48: ; // 0x239ba48
|
|
/* 0239BA48 */ _t22 = cpu->r[29] + 0x0000001Cu;
|
|
/* 0239BA48 */ cpu->r[6] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0239BA4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000002u);
|
|
/* 0239BA50 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239BA50 */ _t24 = _t23 & 0x00000001u;
|
|
/* 0239BA50 */ if (_t24) goto L_0239BA5C; else goto L_0239BA54;
|
|
L_0239BA54: ; // 0x239ba54
|
|
/* 0239BA54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000003u);
|
|
/* 0239BA58 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239BA58 */ _t26 = _t25 & 0x00000001u;
|
|
/* 0239BA58 */ if (_t26) goto L_0239BA5C; else goto L_0239BA34;
|
|
L_0239BA5C: ; // 0x239ba5c
|
|
/* 0239BA5C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[31]);
|
|
/* 0239BA60 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239BA60 */ _t28 = _t27 & 0x00000001u;
|
|
/* 0239BA60 */ if (_t28) goto L_0239BAB8; else goto L_0239BA64;
|
|
L_0239BA64: ; // 0x239ba64
|
|
/* 0239BA64 */ _t29 = cpu->r[29] + 0x00000020u;
|
|
/* 0239BA64 */ cpu->r[10] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0239BA68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x0000002Bu);
|
|
/* 0239BA6C */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239BA6C */ _t31 = _t30 & 0x00000001u;
|
|
/* 0239BA6C */ if (_t31) goto L_0239BA70; else goto L_0239BA84;
|
|
L_0239BA70: ; // 0x239ba70
|
|
/* 0239BA70 */ cpu->r[3] = cpu->r[29];
|
|
/* 0239BA74 */ cpu->r[4] = cpu->r[28];
|
|
/* 0239BA78 */ Gambit_fn_024AE2A0(cpu);
|
|
/* 0239BA7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239BA80 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239BA80 */ _t33 = _t32 & 0x00000001u;
|
|
/* 0239BA80 */ if (_t33) goto L_0239BA84; else goto L_0239BABC;
|
|
L_0239BA84: ; // 0x239ba84
|
|
/* 0239BA84 */ cpu->r[8] = cpu->r[29] + cpu->r[30];
|
|
/* 0239BA88 */ _t34 = cpu->r[8] + 0x00000004u;
|
|
/* 0239BA88 */ cpu->r[0] = rbrew_read32(cpu->mem, _t34);
|
|
/* 0239BA8C */ cpu->r[29] = cpu->r[0] - cpu->r[30];
|
|
/* 0239BA90 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[31]);
|
|
/* 0239BA94 */ _t35 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239BA94 */ _t36 = _t35 & 0x00000001u;
|
|
/* 0239BA94 */ if (_t36) goto L_0239BAB8; else goto L_0239BA98;
|
|
L_0239BA98: ; // 0x239ba98
|
|
/* 0239BA98 */ _t37 = cpu->r[29] + 0x0000001Cu;
|
|
/* 0239BA98 */ cpu->r[0] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0239BA9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000002u);
|
|
/* 0239BAA0 */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239BAA0 */ _t39 = _t38 & 0x00000001u;
|
|
/* 0239BAA0 */ if (_t39) goto L_0239BAB0; else goto L_0239BAA4;
|
|
L_0239BAA4: ; // 0x239baa4
|
|
/* 0239BAA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000003u);
|
|
/* 0239BAA8 */ _t40 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239BAA8 */ _t41 = _t40 & 0x00000001u;
|
|
/* 0239BAA8 */ if (_t41) goto L_0239BAAC; else goto L_0239BA84;
|
|
L_0239BAAC: ; // 0x239baac
|
|
/* 0239BAAC */ goto L_0239BA5C;
|
|
L_0239BAB0: ; // 0x239bab0
|
|
/* 0239BAB0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[31]);
|
|
/* 0239BAB4 */ _t42 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239BAB4 */ _t43 = _t42 & 0x00000001u;
|
|
/* 0239BAB4 */ if (_t43) goto L_0239BAB8; else goto L_0239BA64;
|
|
L_0239BAB8: ; // 0x239bab8
|
|
/* 0239BAB8 */ cpu->r[29] = 0x00000000u;
|
|
L_0239BABC: ; // 0x239babc
|
|
/* 0239BABC */ _t44 = cpu->r[1] + 0x00000008u;
|
|
/* 0239BABC */ cpu->r[28] = rbrew_read32(cpu->mem, _t44);
|
|
/* 0239BAC0 */ cpu->r[3] = cpu->r[29];
|
|
/* 0239BAC4 */ _t45 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239BAC4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t45);
|
|
/* 0239BAC8 */ _t46 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239BAC8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t46);
|
|
/* 0239BACC */ _t47 = cpu->r[1] + 0x00000010u;
|
|
/* 0239BACC */ cpu->r[30] = rbrew_read32(cpu->mem, _t47);
|
|
/* 0239BAD0 */ cpu->lr = cpu->r[0];
|
|
/* 0239BAD4 */ _t48 = cpu->r[1] + 0x00000014u;
|
|
/* 0239BAD4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t48);
|
|
/* 0239BAD8 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0239BADC */ return;
|
|
}
|
|
|
|
// fn_0239BAE0 @ 0x239bae0
|
|
void Gambit_fn_0239BAE0(CPUState* cpu) {
|
|
uint32_t _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_0239BAE0: ; // 0x239bae0
|
|
/* 0239BAE0 */ cpu->r[0] = cpu->lr;
|
|
/* 0239BAE4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0239BAE4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239BAE4 */ cpu->r[1] = _t0;
|
|
/* 0239BAE8 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0239BAE8 */ rbrew_write32(cpu->mem, _t1, cpu->r[28]);
|
|
/* 0239BAEC */ cpu->r[28] = cpu->r[4];
|
|
/* 0239BAF0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0239BAF0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0239BAF4 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239BAF4 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 0239BAF8 */ cpu->r[31] = cpu->r[3];
|
|
/* 0239BAF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0239BAFC */ _t4 = cpu->r[1] + 0x00000010u;
|
|
/* 0239BAFC */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 0239BB00 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239BB00 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0239BB04 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239BB04 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0239BB04 */ if (_t7) goto L_0239BB68; else goto L_0239BB08;
|
|
L_0239BB08: ; // 0x239bb08
|
|
/* 0239BB08 */ cpu->r[6] = 0x10080000u;
|
|
/* 0239BB0C */ cpu->r[6] = cpu->r[6] + 0x00006EF0u;
|
|
/* 0239BB10 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0239BB14 */ _t8 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0239BB14 */ rbrew_write32(cpu->mem, _t8, cpu->r[6]);
|
|
/* 0239BB18 */ _t9 = cpu->r[12] + 0x00005BACu;
|
|
/* 0239BB18 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0239BB18 */ cpu->r[12] = _t9;
|
|
/* 0239BB1C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]);
|
|
/* 0239BB20 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239BB20 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0239BB20 */ if (_t11) goto L_0239BB24; else goto L_0239BB4C;
|
|
L_0239BB24: ; // 0x239bb24
|
|
/* 0239BB24 */ cpu->r[30] = 0x101C0000u;
|
|
/* 0239BB28 */ cpu->r[29] = 0x00000000u;
|
|
/* 0239BB2C */ _t12 = cpu->r[30] + 0x00005BA8u;
|
|
/* 0239BB2C */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0239BB30 */ _t13 = cpu->r[12] + 0x00000000u;
|
|
/* 0239BB30 */ rbrew_write32(cpu->mem, _t13, cpu->r[29]);
|
|
/* 0239BB34 */ _t14 = cpu->r[3] + 0x00000004u;
|
|
/* 0239BB34 */ cpu->r[8] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0239BB38 */ _t15 = cpu->r[8] + 0x0000000Cu;
|
|
/* 0239BB38 */ cpu->r[10] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0239BB3C */ cpu->ctr = cpu->r[10];
|
|
/* 0239BB40 */ cpu->r[4] = 0x00000002u;
|
|
/* 0239BB44 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0239BB48 */ _t16 = cpu->r[30] + 0x00005BA8u;
|
|
/* 0239BB48 */ rbrew_write32(cpu->mem, _t16, cpu->r[29]);
|
|
L_0239BB4C: ; // 0x239bb4c
|
|
/* 0239BB4C */ cpu->r[3] = cpu->r[31];
|
|
/* 0239BB50 */ cpu->r[4] = 0x00000000u;
|
|
/* 0239BB54 */ Gambit_fn_02821E68(cpu);
|
|
/* 0239BB58 */ cpu->r[0] = rbrew_rlwinm(cpu->r[28], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0239BB58 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0239BB5C */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239BB5C */ _t18 = _t17 & 0x00000001u;
|
|
/* 0239BB5C */ if (_t18) goto L_0239BB68; else goto L_0239BB60;
|
|
L_0239BB60: ; // 0x239bb60
|
|
/* 0239BB60 */ cpu->r[3] = cpu->r[31];
|
|
/* 0239BB64 */ Gambit_fn_02801BB0(cpu);
|
|
L_0239BB68: ; // 0x239bb68
|
|
/* 0239BB68 */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 0239BB68 */ cpu->r[28] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0239BB6C */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239BB6C */ cpu->r[29] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0239BB70 */ _t21 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239BB70 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0239BB74 */ _t22 = cpu->r[1] + 0x00000010u;
|
|
/* 0239BB74 */ cpu->r[30] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0239BB78 */ cpu->lr = cpu->r[0];
|
|
/* 0239BB7C */ _t23 = cpu->r[1] + 0x00000014u;
|
|
/* 0239BB7C */ cpu->r[31] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0239BB80 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0239BB84 */ return;
|
|
}
|
|
|
|
// fn_0239BAE4 @ 0x239bae4
|
|
void Gambit_fn_0239BAE4(CPUState* cpu) {
|
|
uint32_t _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_0239BAE4: ; // 0x239bae4
|
|
/* 0239BAE4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0239BAE4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239BAE4 */ cpu->r[1] = _t0;
|
|
/* 0239BAE8 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0239BAE8 */ rbrew_write32(cpu->mem, _t1, cpu->r[28]);
|
|
/* 0239BAEC */ cpu->r[28] = cpu->r[4];
|
|
/* 0239BAF0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0239BAF0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0239BAF4 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239BAF4 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 0239BAF8 */ cpu->r[31] = cpu->r[3];
|
|
/* 0239BAF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0239BAFC */ _t4 = cpu->r[1] + 0x00000010u;
|
|
/* 0239BAFC */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 0239BB00 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239BB00 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0239BB04 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239BB04 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0239BB04 */ if (_t7) goto L_0239BB68; else goto L_0239BB08;
|
|
L_0239BB08: ; // 0x239bb08
|
|
/* 0239BB08 */ cpu->r[6] = 0x10080000u;
|
|
/* 0239BB0C */ cpu->r[6] = cpu->r[6] + 0x00006EF0u;
|
|
/* 0239BB10 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0239BB14 */ _t8 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0239BB14 */ rbrew_write32(cpu->mem, _t8, cpu->r[6]);
|
|
/* 0239BB18 */ _t9 = cpu->r[12] + 0x00005BACu;
|
|
/* 0239BB18 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0239BB18 */ cpu->r[12] = _t9;
|
|
/* 0239BB1C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]);
|
|
/* 0239BB20 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239BB20 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0239BB20 */ if (_t11) goto L_0239BB24; else goto L_0239BB4C;
|
|
L_0239BB24: ; // 0x239bb24
|
|
/* 0239BB24 */ cpu->r[30] = 0x101C0000u;
|
|
/* 0239BB28 */ cpu->r[29] = 0x00000000u;
|
|
/* 0239BB2C */ _t12 = cpu->r[30] + 0x00005BA8u;
|
|
/* 0239BB2C */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0239BB30 */ _t13 = cpu->r[12] + 0x00000000u;
|
|
/* 0239BB30 */ rbrew_write32(cpu->mem, _t13, cpu->r[29]);
|
|
/* 0239BB34 */ _t14 = cpu->r[3] + 0x00000004u;
|
|
/* 0239BB34 */ cpu->r[8] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0239BB38 */ _t15 = cpu->r[8] + 0x0000000Cu;
|
|
/* 0239BB38 */ cpu->r[10] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0239BB3C */ cpu->ctr = cpu->r[10];
|
|
/* 0239BB40 */ cpu->r[4] = 0x00000002u;
|
|
/* 0239BB44 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0239BB48 */ _t16 = cpu->r[30] + 0x00005BA8u;
|
|
/* 0239BB48 */ rbrew_write32(cpu->mem, _t16, cpu->r[29]);
|
|
L_0239BB4C: ; // 0x239bb4c
|
|
/* 0239BB4C */ cpu->r[3] = cpu->r[31];
|
|
/* 0239BB50 */ cpu->r[4] = 0x00000000u;
|
|
/* 0239BB54 */ Gambit_fn_02821E68(cpu);
|
|
/* 0239BB58 */ cpu->r[0] = rbrew_rlwinm(cpu->r[28], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0239BB58 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0239BB5C */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239BB5C */ _t18 = _t17 & 0x00000001u;
|
|
/* 0239BB5C */ if (_t18) goto L_0239BB68; else goto L_0239BB60;
|
|
L_0239BB60: ; // 0x239bb60
|
|
/* 0239BB60 */ cpu->r[3] = cpu->r[31];
|
|
/* 0239BB64 */ Gambit_fn_02801BB0(cpu);
|
|
L_0239BB68: ; // 0x239bb68
|
|
/* 0239BB68 */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 0239BB68 */ cpu->r[28] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0239BB6C */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239BB6C */ cpu->r[29] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0239BB70 */ _t21 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239BB70 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0239BB74 */ _t22 = cpu->r[1] + 0x00000010u;
|
|
/* 0239BB74 */ cpu->r[30] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0239BB78 */ cpu->lr = cpu->r[0];
|
|
/* 0239BB7C */ _t23 = cpu->r[1] + 0x00000014u;
|
|
/* 0239BB7C */ cpu->r[31] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0239BB80 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0239BB84 */ return;
|
|
}
|
|
|
|
// fn_0239BB88 @ 0x239bb88
|
|
void Gambit_fn_0239BB88(CPUState* cpu) {
|
|
L_0239BB88: ; // 0x239bb88
|
|
/* 0239BB88 */ return;
|
|
}
|
|
|
|
// fn_0239BB8C @ 0x239bb8c
|
|
void Gambit_fn_0239BB8C(CPUState* cpu) {
|
|
L_0239BB8C: ; // 0x239bb8c
|
|
/* 0239BB8C */ cpu->r[3] = 0x00000000u;
|
|
/* 0239BB90 */ return;
|
|
}
|
|
|
|
// fn_0239BB94 @ 0x239bb94
|
|
void Gambit_fn_0239BB94(CPUState* cpu) {
|
|
L_0239BB94: ; // 0x239bb94
|
|
/* 0239BB94 */ cpu->r[3] = 0x00000001u;
|
|
/* 0239BB98 */ return;
|
|
}
|
|
|
|
// fn_0239BB9C @ 0x239bb9c
|
|
void Gambit_fn_0239BB9C(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_0239BB9C: ; // 0x239bb9c
|
|
/* 0239BB9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239BBA0 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239BBA0 */ _t1 = _t0 & 0x00000001u;
|
|
/* 0239BBA0 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0239BBA0 */ goto L_0239BBA4;
|
|
L_0239BBA4: ; // 0x239bba4
|
|
/* 0239BBA4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0239BBA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0239BBA8 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239BBA8 */ _t3 = _t2 & 0x00000001u;
|
|
/* 0239BBA8 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0239BBA8 */ goto L_0239BBAC;
|
|
L_0239BBAC: ; // 0x239bbac
|
|
/* 0239BBAC */ 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_0239BBB0 @ 0x239bbb0
|
|
void Gambit_fn_0239BBB0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_0239BBB0: ; // 0x239bbb0
|
|
/* 0239BBB0 */ cpu->r[0] = cpu->lr;
|
|
/* 0239BBB4 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 0239BBB4 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 0239BBB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239BBBC */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 0239BBBC */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 0239BBBC */ cpu->r[1] = _t1;
|
|
/* 0239BBC0 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239BBC0 */ _t3 = _t2 & 0x00000001u;
|
|
/* 0239BBC0 */ if (_t3) goto L_0239BBC4; else goto L_0239BBD4;
|
|
L_0239BBC4: ; // 0x239bbc4
|
|
/* 0239BBC4 */ cpu->r[3] = 0x00000008u;
|
|
/* 0239BBC8 */ Gambit_fn_02801A78(cpu);
|
|
/* 0239BBCC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239BBD0 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239BBD0 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0239BBD0 */ if (_t5) goto L_0239BBE8; else goto L_0239BBD4;
|
|
L_0239BBD4: ; // 0x239bbd4
|
|
/* 0239BBD4 */ cpu->r[0] = 0x10080000u;
|
|
/* 0239BBD8 */ cpu->r[12] = 0x00000000u;
|
|
/* 0239BBDC */ cpu->r[0] = cpu->r[0] + 0x00006F00u;
|
|
/* 0239BBE0 */ _t6 = cpu->r[3] + 0x00000000u;
|
|
/* 0239BBE0 */ rbrew_write32(cpu->mem, _t6, cpu->r[12]);
|
|
/* 0239BBE4 */ _t7 = cpu->r[3] + 0x00000004u;
|
|
/* 0239BBE4 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
L_0239BBE8: ; // 0x239bbe8
|
|
/* 0239BBE8 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239BBE8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0239BBEC */ cpu->lr = cpu->r[0];
|
|
/* 0239BBF0 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 0239BBF4 */ return;
|
|
}
|
|
|
|
// fn_0239BBBC @ 0x239bbbc
|
|
void Gambit_fn_0239BBBC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_0239BBBC: ; // 0x239bbbc
|
|
/* 0239BBBC */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 0239BBBC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239BBBC */ cpu->r[1] = _t0;
|
|
/* 0239BBC0 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239BBC0 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0239BBC0 */ if (_t2) goto L_0239BBC4; else goto L_0239BBD4;
|
|
L_0239BBC4: ; // 0x239bbc4
|
|
/* 0239BBC4 */ cpu->r[3] = 0x00000008u;
|
|
/* 0239BBC8 */ Gambit_fn_02801A78(cpu);
|
|
/* 0239BBCC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239BBD0 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239BBD0 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0239BBD0 */ if (_t4) goto L_0239BBE8; else goto L_0239BBD4;
|
|
L_0239BBD4: ; // 0x239bbd4
|
|
/* 0239BBD4 */ cpu->r[0] = 0x10080000u;
|
|
/* 0239BBD8 */ cpu->r[12] = 0x00000000u;
|
|
/* 0239BBDC */ cpu->r[0] = cpu->r[0] + 0x00006F00u;
|
|
/* 0239BBE0 */ _t5 = cpu->r[3] + 0x00000000u;
|
|
/* 0239BBE0 */ rbrew_write32(cpu->mem, _t5, cpu->r[12]);
|
|
/* 0239BBE4 */ _t6 = cpu->r[3] + 0x00000004u;
|
|
/* 0239BBE4 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
L_0239BBE8: ; // 0x239bbe8
|
|
/* 0239BBE8 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239BBE8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0239BBEC */ cpu->lr = cpu->r[0];
|
|
/* 0239BBF0 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 0239BBF4 */ return;
|
|
}
|
|
|
|
// fn_0239BBF8 @ 0x239bbf8
|
|
void Gambit_fn_0239BBF8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_0239BBF8: ; // 0x239bbf8
|
|
/* 0239BBF8 */ cpu->r[0] = cpu->lr;
|
|
/* 0239BBFC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0239BBFC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239BBFC */ cpu->r[1] = _t0;
|
|
/* 0239BC00 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239BC00 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0239BC04 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0239BC08 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0239BC08 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0239BC0C */ _t3 = cpu->r[12] + 0x00006BD0u;
|
|
/* 0239BC0C */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0239BC10 */ cpu->r[31] = cpu->r[3];
|
|
/* 0239BC14 */ _t4 = cpu->r[12] + 0x000002DCu;
|
|
/* 0239BC14 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0239BC18 */ Gambit_fn_024256B0(cpu);
|
|
/* 0239BC1C */ cpu->r[0] = 0x00000000u;
|
|
/* 0239BC20 */ _t5 = cpu->r[31] + 0x00000000u;
|
|
/* 0239BC20 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0239BC24 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 0239BC24 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0239BC28 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239BC28 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0239BC2C */ cpu->lr = cpu->r[0];
|
|
/* 0239BC30 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0239BC34 */ return;
|
|
}
|
|
|
|
// fn_0239BBFC @ 0x239bbfc
|
|
void Gambit_fn_0239BBFC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_0239BBFC: ; // 0x239bbfc
|
|
/* 0239BBFC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0239BBFC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239BBFC */ cpu->r[1] = _t0;
|
|
/* 0239BC00 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239BC00 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0239BC04 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0239BC08 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0239BC08 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0239BC0C */ _t3 = cpu->r[12] + 0x00006BD0u;
|
|
/* 0239BC0C */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0239BC10 */ cpu->r[31] = cpu->r[3];
|
|
/* 0239BC14 */ _t4 = cpu->r[12] + 0x000002DCu;
|
|
/* 0239BC14 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0239BC18 */ Gambit_fn_024256B0(cpu);
|
|
/* 0239BC1C */ cpu->r[0] = 0x00000000u;
|
|
/* 0239BC20 */ _t5 = cpu->r[31] + 0x00000000u;
|
|
/* 0239BC20 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0239BC24 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 0239BC24 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0239BC28 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239BC28 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0239BC2C */ cpu->lr = cpu->r[0];
|
|
/* 0239BC30 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0239BC34 */ return;
|
|
}
|
|
|
|
// fn_0239BC38 @ 0x239bc38
|
|
void Gambit_fn_0239BC38(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29;
|
|
|
|
L_0239BC38: ; // 0x239bc38
|
|
/* 0239BC38 */ cpu->r[0] = cpu->lr;
|
|
/* 0239BC3C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0239BC3C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239BC3C */ cpu->r[1] = _t0;
|
|
/* 0239BC40 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 0239BC40 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0239BC44 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239BC44 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 0239BC48 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0239BC48 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 0239BC4C */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239BC4C */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0239BC50 */ cpu->r[29] = 0x101C0000u;
|
|
/* 0239BC54 */ _t5 = cpu->r[29] + 0x00006000u;
|
|
/* 0239BC54 */ cpu->r[9] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0239BC54 */ cpu->r[29] = _t5;
|
|
/* 0239BC58 */ cpu->r[31] = cpu->r[3];
|
|
/* 0239BC5C */ _t6 = cpu->r[9] + 0x00000250u;
|
|
/* 0239BC5C */ cpu->r[10] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0239BC60 */ _t7 = cpu->r[31] + 0x00000000u;
|
|
/* 0239BC60 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0239BC64 */ _t8 = cpu->r[10] + 0x00000250u;
|
|
/* 0239BC64 */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0239BC68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000001u);
|
|
/* 0239BC6C */ _t9 = cpu->r[12] + 0x000000A0u;
|
|
/* 0239BC6C */ cpu->r[30] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0239BC70 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239BC70 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0239BC70 */ if (_t11) goto L_0239BC74; else goto L_0239BCD4;
|
|
L_0239BC74: ; // 0x239bc74
|
|
/* 0239BC74 */ Gambit_fn_027DFA60(cpu);
|
|
/* 0239BC78 */ _t12 = cpu->r[3] + 0x0000008Cu;
|
|
/* 0239BC78 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0239BC7C */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000016u, 0x00000016u);
|
|
/* 0239BC7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0239BC80 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239BC80 */ _t14 = _t13 & 0x00000001u;
|
|
/* 0239BC80 */ if (_t14) goto L_0239BCD4; else goto L_0239BC84;
|
|
L_0239BC84: ; // 0x239bc84
|
|
/* 0239BC84 */ cpu->r[3] = cpu->r[30];
|
|
/* 0239BC88 */ cpu->r[4] = 0x00000000u;
|
|
/* 0239BC8C */ Gambit_fn_0206EAA8(cpu);
|
|
/* 0239BC90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239BC94 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239BC94 */ _t16 = _t15 & 0x00000001u;
|
|
/* 0239BC94 */ if (_t16) goto L_0239BCD4; else goto L_0239BC98;
|
|
L_0239BC98: ; // 0x239bc98
|
|
/* 0239BC98 */ cpu->r[0] = 0x00000006u;
|
|
/* 0239BC9C */ _t17 = cpu->r[29] + 0x00000000u;
|
|
/* 0239BC9C */ cpu->r[6] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0239BCA0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0239BCA4 */ _t18 = cpu->r[1] + 0x00000008u;
|
|
/* 0239BCA4 */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
/* 0239BCA8 */ _t19 = cpu->r[6] + 0x000002A4u;
|
|
/* 0239BCA8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0239BCAC */ cpu->r[5] = 0xFFFFFFFFu;
|
|
/* 0239BCB0 */ Gambit_fn_023B4120(cpu);
|
|
/* 0239BCB4 */ _t20 = cpu->r[29] + 0x00000000u;
|
|
/* 0239BCB4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0239BCB8 */ _t21 = cpu->r[7] + 0x00000250u;
|
|
/* 0239BCB8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0239BCBC */ _t22 = cpu->r[10] + 0x00000254u;
|
|
/* 0239BCBC */ cpu->r[3] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0239BCC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239BCC4 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239BCC4 */ _t24 = _t23 & 0x00000001u;
|
|
/* 0239BCC4 */ if (_t24) goto L_0239BCCC; else goto L_0239BCC8;
|
|
L_0239BCC8: ; // 0x239bcc8
|
|
/* 0239BCC8 */ Gambit_fn_0219707C(cpu);
|
|
L_0239BCCC: ; // 0x239bccc
|
|
/* 0239BCCC */ cpu->r[8] = 0x00000002u;
|
|
/* 0239BCD0 */ _t25 = cpu->r[31] + 0x00000000u;
|
|
/* 0239BCD0 */ rbrew_write32(cpu->mem, _t25, cpu->r[8]);
|
|
L_0239BCD4: ; // 0x239bcd4
|
|
/* 0239BCD4 */ _t26 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239BCD4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0239BCD8 */ _t27 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239BCD8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0239BCDC */ _t28 = cpu->r[1] + 0x00000010u;
|
|
/* 0239BCDC */ cpu->r[30] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0239BCE0 */ cpu->lr = cpu->r[0];
|
|
/* 0239BCE4 */ _t29 = cpu->r[1] + 0x00000014u;
|
|
/* 0239BCE4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0239BCE8 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0239BCEC */ return;
|
|
}
|
|
|
|
// fn_0239BC3C @ 0x239bc3c
|
|
void Gambit_fn_0239BC3C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29;
|
|
|
|
L_0239BC3C: ; // 0x239bc3c
|
|
/* 0239BC3C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0239BC3C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239BC3C */ cpu->r[1] = _t0;
|
|
/* 0239BC40 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 0239BC40 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0239BC44 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239BC44 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 0239BC48 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0239BC48 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 0239BC4C */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239BC4C */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0239BC50 */ cpu->r[29] = 0x101C0000u;
|
|
/* 0239BC54 */ _t5 = cpu->r[29] + 0x00006000u;
|
|
/* 0239BC54 */ cpu->r[9] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0239BC54 */ cpu->r[29] = _t5;
|
|
/* 0239BC58 */ cpu->r[31] = cpu->r[3];
|
|
/* 0239BC5C */ _t6 = cpu->r[9] + 0x00000250u;
|
|
/* 0239BC5C */ cpu->r[10] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0239BC60 */ _t7 = cpu->r[31] + 0x00000000u;
|
|
/* 0239BC60 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0239BC64 */ _t8 = cpu->r[10] + 0x00000250u;
|
|
/* 0239BC64 */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0239BC68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000001u);
|
|
/* 0239BC6C */ _t9 = cpu->r[12] + 0x000000A0u;
|
|
/* 0239BC6C */ cpu->r[30] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0239BC70 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239BC70 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0239BC70 */ if (_t11) goto L_0239BC74; else goto L_0239BCD4;
|
|
L_0239BC74: ; // 0x239bc74
|
|
/* 0239BC74 */ Gambit_fn_027DFA60(cpu);
|
|
/* 0239BC78 */ _t12 = cpu->r[3] + 0x0000008Cu;
|
|
/* 0239BC78 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0239BC7C */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000016u, 0x00000016u);
|
|
/* 0239BC7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0239BC80 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239BC80 */ _t14 = _t13 & 0x00000001u;
|
|
/* 0239BC80 */ if (_t14) goto L_0239BCD4; else goto L_0239BC84;
|
|
L_0239BC84: ; // 0x239bc84
|
|
/* 0239BC84 */ cpu->r[3] = cpu->r[30];
|
|
/* 0239BC88 */ cpu->r[4] = 0x00000000u;
|
|
/* 0239BC8C */ Gambit_fn_0206EAA8(cpu);
|
|
/* 0239BC90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239BC94 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239BC94 */ _t16 = _t15 & 0x00000001u;
|
|
/* 0239BC94 */ if (_t16) goto L_0239BCD4; else goto L_0239BC98;
|
|
L_0239BC98: ; // 0x239bc98
|
|
/* 0239BC98 */ cpu->r[0] = 0x00000006u;
|
|
/* 0239BC9C */ _t17 = cpu->r[29] + 0x00000000u;
|
|
/* 0239BC9C */ cpu->r[6] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0239BCA0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0239BCA4 */ _t18 = cpu->r[1] + 0x00000008u;
|
|
/* 0239BCA4 */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
/* 0239BCA8 */ _t19 = cpu->r[6] + 0x000002A4u;
|
|
/* 0239BCA8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0239BCAC */ cpu->r[5] = 0xFFFFFFFFu;
|
|
/* 0239BCB0 */ Gambit_fn_023B4120(cpu);
|
|
/* 0239BCB4 */ _t20 = cpu->r[29] + 0x00000000u;
|
|
/* 0239BCB4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0239BCB8 */ _t21 = cpu->r[7] + 0x00000250u;
|
|
/* 0239BCB8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0239BCBC */ _t22 = cpu->r[10] + 0x00000254u;
|
|
/* 0239BCBC */ cpu->r[3] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0239BCC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239BCC4 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239BCC4 */ _t24 = _t23 & 0x00000001u;
|
|
/* 0239BCC4 */ if (_t24) goto L_0239BCCC; else goto L_0239BCC8;
|
|
L_0239BCC8: ; // 0x239bcc8
|
|
/* 0239BCC8 */ Gambit_fn_0219707C(cpu);
|
|
L_0239BCCC: ; // 0x239bccc
|
|
/* 0239BCCC */ cpu->r[8] = 0x00000002u;
|
|
/* 0239BCD0 */ _t25 = cpu->r[31] + 0x00000000u;
|
|
/* 0239BCD0 */ rbrew_write32(cpu->mem, _t25, cpu->r[8]);
|
|
L_0239BCD4: ; // 0x239bcd4
|
|
/* 0239BCD4 */ _t26 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239BCD4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0239BCD8 */ _t27 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239BCD8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0239BCDC */ _t28 = cpu->r[1] + 0x00000010u;
|
|
/* 0239BCDC */ cpu->r[30] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0239BCE0 */ cpu->lr = cpu->r[0];
|
|
/* 0239BCE4 */ _t29 = cpu->r[1] + 0x00000014u;
|
|
/* 0239BCE4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0239BCE8 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0239BCEC */ return;
|
|
}
|
|
|
|
// fn_0239BCF0 @ 0x239bcf0
|
|
void Gambit_fn_0239BCF0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_0239BCF0: ; // 0x239bcf0
|
|
/* 0239BCF0 */ cpu->r[0] = cpu->lr;
|
|
/* 0239BCF4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0239BCF4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239BCF4 */ cpu->r[1] = _t0;
|
|
/* 0239BCF8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239BCF8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0239BCFC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0239BCFC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0239BD00 */ cpu->r[0] = 0x00000001u;
|
|
/* 0239BD04 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0239BD08 */ _t3 = cpu->r[3] + 0x00000000u;
|
|
/* 0239BD08 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0239BD0C */ _t4 = cpu->r[12] + 0x00006BD0u;
|
|
/* 0239BD0C */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0239BD10 */ _t5 = cpu->r[12] + 0x000002DCu;
|
|
/* 0239BD10 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0239BD14 */ cpu->r[3] = cpu->r[31];
|
|
/* 0239BD18 */ Gambit_fn_02425630(cpu);
|
|
/* 0239BD1C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239BD20 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239BD20 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0239BD20 */ if (_t7) goto L_0239BD24; else goto L_0239BD2C;
|
|
L_0239BD24: ; // 0x239bd24
|
|
/* 0239BD24 */ cpu->r[3] = cpu->r[31];
|
|
/* 0239BD28 */ Gambit_fn_024256B0(cpu);
|
|
L_0239BD2C: ; // 0x239bd2c
|
|
/* 0239BD2C */ cpu->r[3] = cpu->r[31];
|
|
/* 0239BD30 */ Gambit_fn_02425648(cpu);
|
|
/* 0239BD34 */ cpu->r[3] = cpu->r[31];
|
|
/* 0239BD38 */ Gambit_fn_0242542C(cpu);
|
|
/* 0239BD3C */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 0239BD3C */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0239BD40 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239BD40 */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0239BD44 */ cpu->lr = cpu->r[0];
|
|
/* 0239BD48 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0239BD4C */ return;
|
|
}
|
|
|
|
// fn_0239BCF4 @ 0x239bcf4
|
|
void Gambit_fn_0239BCF4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_0239BCF4: ; // 0x239bcf4
|
|
/* 0239BCF4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0239BCF4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239BCF4 */ cpu->r[1] = _t0;
|
|
/* 0239BCF8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239BCF8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0239BCFC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0239BCFC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0239BD00 */ cpu->r[0] = 0x00000001u;
|
|
/* 0239BD04 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0239BD08 */ _t3 = cpu->r[3] + 0x00000000u;
|
|
/* 0239BD08 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0239BD0C */ _t4 = cpu->r[12] + 0x00006BD0u;
|
|
/* 0239BD0C */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0239BD10 */ _t5 = cpu->r[12] + 0x000002DCu;
|
|
/* 0239BD10 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0239BD14 */ cpu->r[3] = cpu->r[31];
|
|
/* 0239BD18 */ Gambit_fn_02425630(cpu);
|
|
/* 0239BD1C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239BD20 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239BD20 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0239BD20 */ if (_t7) goto L_0239BD24; else goto L_0239BD2C;
|
|
L_0239BD24: ; // 0x239bd24
|
|
/* 0239BD24 */ cpu->r[3] = cpu->r[31];
|
|
/* 0239BD28 */ Gambit_fn_024256B0(cpu);
|
|
L_0239BD2C: ; // 0x239bd2c
|
|
/* 0239BD2C */ cpu->r[3] = cpu->r[31];
|
|
/* 0239BD30 */ Gambit_fn_02425648(cpu);
|
|
/* 0239BD34 */ cpu->r[3] = cpu->r[31];
|
|
/* 0239BD38 */ Gambit_fn_0242542C(cpu);
|
|
/* 0239BD3C */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 0239BD3C */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0239BD40 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239BD40 */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0239BD44 */ cpu->lr = cpu->r[0];
|
|
/* 0239BD48 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0239BD4C */ return;
|
|
}
|
|
|
|
// fn_0239BD50 @ 0x239bd50
|
|
void Gambit_fn_0239BD50(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_0239BD50: ; // 0x239bd50
|
|
/* 0239BD50 */ cpu->r[0] = cpu->lr;
|
|
/* 0239BD54 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0239BD54 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239BD54 */ cpu->r[1] = _t0;
|
|
/* 0239BD58 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239BD58 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0239BD5C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0239BD5C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0239BD60 */ cpu->r[31] = cpu->r[3];
|
|
/* 0239BD64 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0239BD64 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0239BD68 */ _t4 = cpu->r[31] + 0x00000000u;
|
|
/* 0239BD68 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0239BD6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000002u);
|
|
/* 0239BD70 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239BD70 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0239BD70 */ if (_t6) goto L_0239BD74; else goto L_0239BDA0;
|
|
L_0239BD74: ; // 0x239bd74
|
|
/* 0239BD74 */ cpu->r[11] = 0x101C0000u;
|
|
/* 0239BD78 */ _t7 = cpu->r[11] + 0x00006000u;
|
|
/* 0239BD78 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0239BD7C */ _t8 = cpu->r[11] + 0x00000250u;
|
|
/* 0239BD7C */ cpu->r[11] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0239BD80 */ _t9 = cpu->r[11] + 0x00000250u;
|
|
/* 0239BD80 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0239BD84 */ _t10 = cpu->r[12] + 0x000000A0u;
|
|
/* 0239BD84 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0239BD88 */ cpu->r[4] = 0x00000000u;
|
|
/* 0239BD8C */ cpu->r[3] = cpu->r[30];
|
|
/* 0239BD90 */ Gambit_fn_0206E9A0(cpu);
|
|
/* 0239BD94 */ cpu->r[4] = 0x00000001u;
|
|
/* 0239BD98 */ cpu->r[3] = cpu->r[30];
|
|
/* 0239BD9C */ Gambit_fn_0206E9A0(cpu);
|
|
L_0239BDA0: ; // 0x239bda0
|
|
/* 0239BDA0 */ cpu->r[0] = 0x00000000u;
|
|
/* 0239BDA4 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0239BDA8 */ _t11 = cpu->r[31] + 0x00000000u;
|
|
/* 0239BDA8 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 0239BDAC */ _t12 = cpu->r[12] + 0x00006BD0u;
|
|
/* 0239BDAC */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0239BDB0 */ _t13 = cpu->r[12] + 0x000002DCu;
|
|
/* 0239BDB0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0239BDB4 */ Gambit_fn_0242567C(cpu);
|
|
/* 0239BDB8 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 0239BDB8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0239BDBC */ _t15 = cpu->r[1] + 0x00000008u;
|
|
/* 0239BDBC */ cpu->r[30] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0239BDC0 */ cpu->lr = cpu->r[0];
|
|
/* 0239BDC4 */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239BDC4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0239BDC8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0239BDCC */ return;
|
|
}
|
|
|
|
// fn_0239BD54 @ 0x239bd54
|
|
void Gambit_fn_0239BD54(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_0239BD54: ; // 0x239bd54
|
|
/* 0239BD54 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0239BD54 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239BD54 */ cpu->r[1] = _t0;
|
|
/* 0239BD58 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239BD58 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0239BD5C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0239BD5C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0239BD60 */ cpu->r[31] = cpu->r[3];
|
|
/* 0239BD64 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0239BD64 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0239BD68 */ _t4 = cpu->r[31] + 0x00000000u;
|
|
/* 0239BD68 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0239BD6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000002u);
|
|
/* 0239BD70 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239BD70 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0239BD70 */ if (_t6) goto L_0239BD74; else goto L_0239BDA0;
|
|
L_0239BD74: ; // 0x239bd74
|
|
/* 0239BD74 */ cpu->r[11] = 0x101C0000u;
|
|
/* 0239BD78 */ _t7 = cpu->r[11] + 0x00006000u;
|
|
/* 0239BD78 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0239BD7C */ _t8 = cpu->r[11] + 0x00000250u;
|
|
/* 0239BD7C */ cpu->r[11] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0239BD80 */ _t9 = cpu->r[11] + 0x00000250u;
|
|
/* 0239BD80 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0239BD84 */ _t10 = cpu->r[12] + 0x000000A0u;
|
|
/* 0239BD84 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0239BD88 */ cpu->r[4] = 0x00000000u;
|
|
/* 0239BD8C */ cpu->r[3] = cpu->r[30];
|
|
/* 0239BD90 */ Gambit_fn_0206E9A0(cpu);
|
|
/* 0239BD94 */ cpu->r[4] = 0x00000001u;
|
|
/* 0239BD98 */ cpu->r[3] = cpu->r[30];
|
|
/* 0239BD9C */ Gambit_fn_0206E9A0(cpu);
|
|
L_0239BDA0: ; // 0x239bda0
|
|
/* 0239BDA0 */ cpu->r[0] = 0x00000000u;
|
|
/* 0239BDA4 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0239BDA8 */ _t11 = cpu->r[31] + 0x00000000u;
|
|
/* 0239BDA8 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 0239BDAC */ _t12 = cpu->r[12] + 0x00006BD0u;
|
|
/* 0239BDAC */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0239BDB0 */ _t13 = cpu->r[12] + 0x000002DCu;
|
|
/* 0239BDB0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0239BDB4 */ Gambit_fn_0242567C(cpu);
|
|
/* 0239BDB8 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 0239BDB8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0239BDBC */ _t15 = cpu->r[1] + 0x00000008u;
|
|
/* 0239BDBC */ cpu->r[30] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0239BDC0 */ cpu->lr = cpu->r[0];
|
|
/* 0239BDC4 */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239BDC4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0239BDC8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0239BDCC */ return;
|
|
}
|
|
|
|
// fn_0239BDD0 @ 0x239bdd0
|
|
void Gambit_fn_0239BDD0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_0239BDD0: ; // 0x239bdd0
|
|
/* 0239BDD0 */ cpu->r[0] = cpu->lr;
|
|
/* 0239BDD4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0239BDD4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239BDD4 */ cpu->r[1] = _t0;
|
|
/* 0239BDD8 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 0239BDD8 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0239BDDC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0239BDDC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0239BDE0 */ cpu->r[30] = 0x101C0000u;
|
|
/* 0239BDE4 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239BDE4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0239BDE8 */ _t4 = cpu->r[30] + 0x00006000u;
|
|
/* 0239BDE8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0239BDE8 */ cpu->r[30] = _t4;
|
|
/* 0239BDEC */ _t5 = cpu->r[12] + 0x00000250u;
|
|
/* 0239BDEC */ cpu->r[9] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0239BDF0 */ _t6 = cpu->r[9] + 0x00000250u;
|
|
/* 0239BDF0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0239BDF4 */ cpu->r[31] = cpu->r[3];
|
|
/* 0239BDF8 */ _t7 = cpu->r[11] + 0x000000A0u;
|
|
/* 0239BDF8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0239BDFC */ cpu->r[4] = 0x00000000u;
|
|
/* 0239BE00 */ Gambit_fn_0206EB08(cpu);
|
|
/* 0239BE04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239BE08 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239BE08 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0239BE08 */ if (_t9) goto L_0239BE30; else goto L_0239BE0C;
|
|
L_0239BE0C: ; // 0x239be0c
|
|
/* 0239BE0C */ cpu->r[0] = 0x00000006u;
|
|
/* 0239BE10 */ _t10 = cpu->r[30] + 0x00000000u;
|
|
/* 0239BE10 */ cpu->r[10] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0239BE14 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0239BE18 */ _t11 = cpu->r[1] + 0x00000008u;
|
|
/* 0239BE18 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 0239BE1C */ _t12 = cpu->r[10] + 0x000002A4u;
|
|
/* 0239BE1C */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0239BE20 */ cpu->r[5] = 0xFFFFFFFFu;
|
|
/* 0239BE24 */ Gambit_fn_023B4548(cpu);
|
|
/* 0239BE28 */ cpu->r[0] = 0x00000003u;
|
|
/* 0239BE2C */ _t13 = cpu->r[31] + 0x00000000u;
|
|
/* 0239BE2C */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
L_0239BE30: ; // 0x239be30
|
|
/* 0239BE30 */ _t14 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239BE30 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0239BE34 */ _t15 = cpu->r[1] + 0x00000010u;
|
|
/* 0239BE34 */ cpu->r[30] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0239BE38 */ cpu->lr = cpu->r[0];
|
|
/* 0239BE3C */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 0239BE3C */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0239BE40 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0239BE44 */ return;
|
|
}
|
|
|
|
// fn_0239BDD4 @ 0x239bdd4
|
|
void Gambit_fn_0239BDD4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_0239BDD4: ; // 0x239bdd4
|
|
/* 0239BDD4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0239BDD4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239BDD4 */ cpu->r[1] = _t0;
|
|
/* 0239BDD8 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 0239BDD8 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0239BDDC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0239BDDC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0239BDE0 */ cpu->r[30] = 0x101C0000u;
|
|
/* 0239BDE4 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239BDE4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0239BDE8 */ _t4 = cpu->r[30] + 0x00006000u;
|
|
/* 0239BDE8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0239BDE8 */ cpu->r[30] = _t4;
|
|
/* 0239BDEC */ _t5 = cpu->r[12] + 0x00000250u;
|
|
/* 0239BDEC */ cpu->r[9] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0239BDF0 */ _t6 = cpu->r[9] + 0x00000250u;
|
|
/* 0239BDF0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0239BDF4 */ cpu->r[31] = cpu->r[3];
|
|
/* 0239BDF8 */ _t7 = cpu->r[11] + 0x000000A0u;
|
|
/* 0239BDF8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0239BDFC */ cpu->r[4] = 0x00000000u;
|
|
/* 0239BE00 */ Gambit_fn_0206EB08(cpu);
|
|
/* 0239BE04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239BE08 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239BE08 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0239BE08 */ if (_t9) goto L_0239BE30; else goto L_0239BE0C;
|
|
L_0239BE0C: ; // 0x239be0c
|
|
/* 0239BE0C */ cpu->r[0] = 0x00000006u;
|
|
/* 0239BE10 */ _t10 = cpu->r[30] + 0x00000000u;
|
|
/* 0239BE10 */ cpu->r[10] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0239BE14 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0239BE18 */ _t11 = cpu->r[1] + 0x00000008u;
|
|
/* 0239BE18 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 0239BE1C */ _t12 = cpu->r[10] + 0x000002A4u;
|
|
/* 0239BE1C */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0239BE20 */ cpu->r[5] = 0xFFFFFFFFu;
|
|
/* 0239BE24 */ Gambit_fn_023B4548(cpu);
|
|
/* 0239BE28 */ cpu->r[0] = 0x00000003u;
|
|
/* 0239BE2C */ _t13 = cpu->r[31] + 0x00000000u;
|
|
/* 0239BE2C */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
L_0239BE30: ; // 0x239be30
|
|
/* 0239BE30 */ _t14 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239BE30 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0239BE34 */ _t15 = cpu->r[1] + 0x00000010u;
|
|
/* 0239BE34 */ cpu->r[30] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0239BE38 */ cpu->lr = cpu->r[0];
|
|
/* 0239BE3C */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 0239BE3C */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0239BE40 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0239BE44 */ return;
|
|
}
|
|
|
|
// fn_0239BE48 @ 0x239be48
|
|
void Gambit_fn_0239BE48(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_0239BE48: ; // 0x239be48
|
|
/* 0239BE48 */ cpu->r[0] = cpu->lr;
|
|
/* 0239BE4C */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 0239BE4C */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 0239BE50 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0239BE54 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 0239BE54 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 0239BE54 */ cpu->r[1] = _t1;
|
|
/* 0239BE58 */ _t2 = cpu->r[12] + 0x00006000u;
|
|
/* 0239BE58 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0239BE5C */ _t3 = cpu->r[12] + 0x00000250u;
|
|
/* 0239BE5C */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0239BE60 */ _t4 = cpu->r[3] + 0x00000000u;
|
|
/* 0239BE60 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0239BE64 */ _t5 = cpu->r[12] + 0x00000250u;
|
|
/* 0239BE64 */ cpu->r[11] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0239BE68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000002u);
|
|
/* 0239BE6C */ _t6 = cpu->r[11] + 0x000000A0u;
|
|
/* 0239BE6C */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0239BE70 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239BE70 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0239BE70 */ if (_t8) goto L_0239BE74; else goto L_0239BE98;
|
|
L_0239BE74: ; // 0x239be74
|
|
/* 0239BE74 */ cpu->r[4] = 0x00000000u;
|
|
/* 0239BE78 */ Gambit_fn_0206EB08(cpu);
|
|
/* 0239BE7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239BE80 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239BE80 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0239BE80 */ if (_t10) goto L_0239BE98; else goto L_0239BE84;
|
|
L_0239BE84: ; // 0x239be84
|
|
/* 0239BE84 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239BE84 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0239BE88 */ cpu->lr = cpu->r[0];
|
|
/* 0239BE8C */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 0239BE90 */ cpu->r[3] = 0x00000001u;
|
|
/* 0239BE94 */ return;
|
|
L_0239BE98: ; // 0x239be98
|
|
/* 0239BE98 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239BE98 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0239BE9C */ cpu->lr = cpu->r[0];
|
|
/* 0239BEA0 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 0239BEA4 */ cpu->r[3] = 0x00000000u;
|
|
/* 0239BEA8 */ return;
|
|
}
|
|
|
|
// fn_0239BE54 @ 0x239be54
|
|
void Gambit_fn_0239BE54(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_0239BE54: ; // 0x239be54
|
|
/* 0239BE54 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 0239BE54 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239BE54 */ cpu->r[1] = _t0;
|
|
/* 0239BE58 */ _t1 = cpu->r[12] + 0x00006000u;
|
|
/* 0239BE58 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0239BE5C */ _t2 = cpu->r[12] + 0x00000250u;
|
|
/* 0239BE5C */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0239BE60 */ _t3 = cpu->r[3] + 0x00000000u;
|
|
/* 0239BE60 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0239BE64 */ _t4 = cpu->r[12] + 0x00000250u;
|
|
/* 0239BE64 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0239BE68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000002u);
|
|
/* 0239BE6C */ _t5 = cpu->r[11] + 0x000000A0u;
|
|
/* 0239BE6C */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0239BE70 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239BE70 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0239BE70 */ if (_t7) goto L_0239BE74; else goto L_0239BE98;
|
|
L_0239BE74: ; // 0x239be74
|
|
/* 0239BE74 */ cpu->r[4] = 0x00000000u;
|
|
/* 0239BE78 */ Gambit_fn_0206EB08(cpu);
|
|
/* 0239BE7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239BE80 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239BE80 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0239BE80 */ if (_t9) goto L_0239BE98; else goto L_0239BE84;
|
|
L_0239BE84: ; // 0x239be84
|
|
/* 0239BE84 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239BE84 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0239BE88 */ cpu->lr = cpu->r[0];
|
|
/* 0239BE8C */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 0239BE90 */ cpu->r[3] = 0x00000001u;
|
|
/* 0239BE94 */ return;
|
|
L_0239BE98: ; // 0x239be98
|
|
/* 0239BE98 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239BE98 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0239BE9C */ cpu->lr = cpu->r[0];
|
|
/* 0239BEA0 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 0239BEA4 */ cpu->r[3] = 0x00000000u;
|
|
/* 0239BEA8 */ return;
|
|
}
|
|
|
|
// fn_0239BEAC @ 0x239beac
|
|
void Gambit_fn_0239BEAC(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0239BEAC: ; // 0x239beac
|
|
/* 0239BEAC */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 0239BEAC */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0239BEB0 */ cpu->r[0] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 0239BEB4 */ cpu->r[3] = cpu->r[12] - cpu->r[0];
|
|
/* 0239BEB8 */ return;
|
|
}
|
|
|
|
// fn_0239BEC0 @ 0x239bec0
|
|
void Gambit_fn_0239BEC0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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;
|
|
|
|
L_0239BEC0: ; // 0x239bec0
|
|
/* 0239BEC0 */ _t0 = cpu->r[1] + 0xFFFFFFA0u;
|
|
/* 0239BEC0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239BEC0 */ cpu->r[1] = _t0;
|
|
/* 0239BEC4 */ _t1 = cpu->r[1] + 0x00000050u;
|
|
/* 0239BEC4 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0239BEC8 */ /* nop */
|
|
/* 0239BECC */ _t2 = cpu->r[1] + 0x00000058u;
|
|
/* 0239BECC */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 0239BED0 */ _t3 = cpu->r[1] + 0x00000064u;
|
|
/* 0239BED0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0239BED4 */ /* nop */
|
|
/* 0239BED8 */ cpu->r[29] = cpu->r[3];
|
|
/* 0239BED8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0239BEDC */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239BEDC */ _t5 = _t4 & 0x00000001u;
|
|
/* 0239BEDC */ if (_t5) goto L_0239BEE0; else goto L_0239BEF0;
|
|
L_0239BEE0: ; // 0x239bee0
|
|
/* 0239BEE0 */ cpu->r[3] = 0x000002F0u;
|
|
/* 0239BEE4 */ Gambit_fn_02801A78(cpu);
|
|
/* 0239BEE8 */ cpu->r[29] = cpu->r[3];
|
|
/* 0239BEE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0239BEEC */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239BEEC */ _t7 = _t6 & 0x00000001u;
|
|
/* 0239BEEC */ if (_t7) goto L_0239C72C; else goto L_0239BEF0;
|
|
L_0239BEF0: ; // 0x239bef0
|
|
/* 0239BEF0 */ cpu->r[3] = cpu->r[29];
|
|
/* 0239BEF4 */ Gambit_fn_02000020(cpu);
|
|
/* 0239BEF8 */ cpu->r[0] = 0x10080000u;
|
|
/* 0239BEFC */ cpu->r[31] = cpu->r[29] + 0x00000050u;
|
|
/* 0239BEFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0239BF00 */ cpu->r[0] = cpu->r[0] + 0x00007384u;
|
|
/* 0239BF04 */ cpu->r[28] = 0x00000000u;
|
|
/* 0239BF08 */ _t8 = cpu->r[29] + 0x00000004u;
|
|
/* 0239BF08 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0239BF0C */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239BF0C */ _t10 = _t9 & 0x00000001u;
|
|
/* 0239BF0C */ if (_t10) goto L_0239BF10; else goto L_0239BF20;
|
|
L_0239BF10: ; // 0x239bf10
|
|
/* 0239BF10 */ cpu->r[3] = 0x00000038u;
|
|
/* 0239BF14 */ Gambit_fn_02801A78(cpu);
|
|
/* 0239BF18 */ cpu->r[31] = cpu->r[3];
|
|
/* 0239BF18 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0239BF1C */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239BF1C */ _t12 = _t11 & 0x00000001u;
|
|
/* 0239BF1C */ if (_t12) goto L_0239BF50; else goto L_0239BF20;
|
|
L_0239BF20: ; // 0x239bf20
|
|
/* 0239BF20 */ cpu->r[3] = cpu->r[31];
|
|
/* 0239BF24 */ Gambit_fn_027FC29C(cpu);
|
|
/* 0239BF28 */ cpu->r[4] = 0x10080000u;
|
|
/* 0239BF2C */ _t13 = cpu->r[31] + 0x00000030u;
|
|
/* 0239BF2C */ rbrew_write32(cpu->mem, _t13, cpu->r[28]);
|
|
/* 0239BF30 */ cpu->r[4] = cpu->r[4] + 0x00007354u;
|
|
/* 0239BF34 */ _t14 = cpu->r[31] + 0x00000034u;
|
|
/* 0239BF34 */ rbrew_write32(cpu->mem, _t14, cpu->r[28]);
|
|
/* 0239BF38 */ _t15 = cpu->r[31] + 0x00000004u;
|
|
/* 0239BF38 */ rbrew_write32(cpu->mem, _t15, cpu->r[4]);
|
|
/* 0239BF3C */ _t16 = cpu->r[31] + 0x00000024u;
|
|
/* 0239BF3C */ rbrew_write32(cpu->mem, _t16, cpu->r[28]);
|
|
/* 0239BF40 */ _t17 = cpu->r[31] + 0x00000028u;
|
|
/* 0239BF40 */ rbrew_write32(cpu->mem, _t17, cpu->r[28]);
|
|
/* 0239BF44 */ _t18 = cpu->r[31] + 0x0000002Cu;
|
|
/* 0239BF44 */ rbrew_write32(cpu->mem, _t18, cpu->r[28]);
|
|
/* 0239BF48 */ _t19 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0239BF48 */ rbrew_write32(cpu->mem, _t19, cpu->r[28]);
|
|
/* 0239BF4C */ _t20 = cpu->r[31] + 0x00000020u;
|
|
/* 0239BF4C */ rbrew_write32(cpu->mem, _t20, cpu->r[28]);
|
|
L_0239BF50: ; // 0x239bf50
|
|
/* 0239BF50 */ cpu->r[3] = 0x101E0000u;
|
|
/* 0239BF54 */ _t21 = cpu->r[29] + 0x00000088u;
|
|
/* 0239BF54 */ rbrew_write32(cpu->mem, _t21, cpu->r[28]);
|
|
/* 0239BF58 */ cpu->r[5] = 0xFFFFFFFFu;
|
|
/* 0239BF5C */ cpu->r[3] = cpu->r[3] + 0xFFFF96FCu;
|
|
/* 0239BF60 */ cpu->r[10] = 0x00000003u;
|
|
/* 0239BF64 */ _t22 = cpu->r[29] + 0x00000090u;
|
|
/* 0239BF64 */ rbrew_write16(cpu->mem, _t22, (uint16_t)cpu->r[5]);
|
|
/* 0239BF68 */ cpu->r[9] = cpu->r[29] + 0x00000094u;
|
|
/* 0239BF6C */ cpu->r[8] = cpu->r[3] + 0xFFFFFFFCu;
|
|
/* 0239BF70 */ _t23 = cpu->r[29] + 0x00000094u;
|
|
/* 0239BF70 */ rbrew_write16(cpu->mem, _t23, (uint16_t)cpu->r[5]);
|
|
/* 0239BF74 */ cpu->ctr = cpu->r[10];
|
|
/* 0239BF78 */ _t24 = cpu->r[29] + 0x00000092u;
|
|
/* 0239BF78 */ rbrew_write16(cpu->mem, _t24, (uint16_t)cpu->r[5]);
|
|
L_0239BF7C: ; // 0x239bf7c
|
|
/* 0239BF7C */ _t25 = cpu->r[8] + 0x00000004u;
|
|
/* 0239BF7C */ cpu->r[11] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0239BF80 */ _t26 = cpu->r[9] + 0x00000004u;
|
|
/* 0239BF80 */ rbrew_write32(cpu->mem, _t26, cpu->r[11]);
|
|
/* 0239BF84 */ _t27 = cpu->r[8] + 0x00000008u;
|
|
/* 0239BF84 */ cpu->r[12] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0239BF88 */ _t28 = cpu->r[9] + 0x00000008u;
|
|
/* 0239BF88 */ rbrew_write32(cpu->mem, _t28, cpu->r[12]);
|
|
/* 0239BF8C */ _t29 = cpu->r[8] + 0x0000000Cu;
|
|
/* 0239BF8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0239BF90 */ _t30 = cpu->r[9] + 0x0000000Cu;
|
|
/* 0239BF90 */ rbrew_write32(cpu->mem, _t30, cpu->r[0]);
|
|
/* 0239BF94 */ _t31 = cpu->r[8] + 0x00000010u;
|
|
/* 0239BF94 */ cpu->r[4] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0239BF94 */ cpu->r[8] = _t31;
|
|
/* 0239BF98 */ _t32 = cpu->r[9] + 0x00000010u;
|
|
/* 0239BF98 */ rbrew_write32(cpu->mem, _t32, cpu->r[4]);
|
|
/* 0239BF98 */ cpu->r[9] = _t32;
|
|
/* 0239BF9C */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0239BF9C */ _t33 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0239BF9C */ _t34 = _t33 >> (0x00000002u & 31u);
|
|
/* 0239BF9C */ _t35 = _t34 & 0x00000001u;
|
|
/* 0239BF9C */ if (_t35) goto L_0239BF7C; else goto L_0239BFA0;
|
|
L_0239BFA0: ; // 0x239bfa0
|
|
/* 0239BFA0 */ cpu->r[7] = 0x00000003u;
|
|
/* 0239BFA4 */ cpu->r[5] = cpu->r[3] + 0xFFFFFFFCu;
|
|
/* 0239BFA8 */ cpu->ctr = cpu->r[7];
|
|
/* 0239BFAC */ cpu->r[6] = cpu->r[29] + 0x000000C4u;
|
|
L_0239BFB0: ; // 0x239bfb0
|
|
/* 0239BFB0 */ _t36 = cpu->r[5] + 0x00000004u;
|
|
/* 0239BFB0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t36);
|
|
/* 0239BFB4 */ _t37 = cpu->r[6] + 0x00000004u;
|
|
/* 0239BFB4 */ rbrew_write32(cpu->mem, _t37, cpu->r[9]);
|
|
/* 0239BFB8 */ _t38 = cpu->r[5] + 0x00000008u;
|
|
/* 0239BFB8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t38);
|
|
/* 0239BFBC */ _t39 = cpu->r[6] + 0x00000008u;
|
|
/* 0239BFBC */ rbrew_write32(cpu->mem, _t39, cpu->r[10]);
|
|
/* 0239BFC0 */ _t40 = cpu->r[5] + 0x0000000Cu;
|
|
/* 0239BFC0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0239BFC4 */ _t41 = cpu->r[6] + 0x0000000Cu;
|
|
/* 0239BFC4 */ rbrew_write32(cpu->mem, _t41, cpu->r[11]);
|
|
/* 0239BFC8 */ _t42 = cpu->r[5] + 0x00000010u;
|
|
/* 0239BFC8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t42);
|
|
/* 0239BFC8 */ cpu->r[5] = _t42;
|
|
/* 0239BFCC */ _t43 = cpu->r[6] + 0x00000010u;
|
|
/* 0239BFCC */ rbrew_write32(cpu->mem, _t43, cpu->r[12]);
|
|
/* 0239BFCC */ cpu->r[6] = _t43;
|
|
/* 0239BFD0 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0239BFD0 */ _t44 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0239BFD0 */ _t45 = _t44 >> (0x00000002u & 31u);
|
|
/* 0239BFD0 */ _t46 = _t45 & 0x00000001u;
|
|
/* 0239BFD0 */ if (_t46) goto L_0239BFB0; else goto L_0239BFD4;
|
|
L_0239BFD4: ; // 0x239bfd4
|
|
/* 0239BFD4 */ cpu->r[4] = 0x10080000u;
|
|
/* 0239BFD8 */ cpu->r[3] = cpu->r[29] + 0x000000F8u;
|
|
/* 0239BFD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239BFDC */ _t47 = cpu->r[4] + 0x0000704Cu;
|
|
/* 0239BFDC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 0239BFE0 */ _t48 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239BFE0 */ _t49 = _t48 & 0x00000001u;
|
|
/* 0239BFE0 */ if (_t49) goto L_0239BFE4; else goto L_0239BFF4;
|
|
L_0239BFE4: ; // 0x239bfe4
|
|
/* 0239BFE4 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0239BFE8 */ Gambit_fn_02801A78(cpu);
|
|
/* 0239BFEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239BFF0 */ _t50 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239BFF0 */ _t51 = _t50 & 0x00000001u;
|
|
/* 0239BFF0 */ if (_t51) goto L_0239C018; else goto L_0239BFF4;
|
|
L_0239BFF4: ; // 0x239bff4
|
|
/* 0239BFF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239BFF8 */ _t52 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239BFF8 */ _t53 = _t52 & 0x00000001u;
|
|
/* 0239BFF8 */ if (_t53) goto L_0239BFFC; else goto L_0239C00C;
|
|
L_0239BFFC: ; // 0x239bffc
|
|
/* 0239BFFC */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0239C000 */ Gambit_fn_02801A78(cpu);
|
|
/* 0239C004 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239C008 */ _t54 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239C008 */ _t55 = _t54 & 0x00000001u;
|
|
/* 0239C008 */ if (_t55) goto L_0239C018; else goto L_0239C00C;
|
|
L_0239C00C: ; // 0x239c00c
|
|
/* 0239C00C */ _t56 = cpu->r[3] + 0x00000004u;
|
|
/* 0239C00C */ rbrew_write_f32(cpu->mem, _t56, cpu->f[31]);
|
|
/* 0239C010 */ _t57 = cpu->r[3] + 0x00000000u;
|
|
/* 0239C010 */ rbrew_write_f32(cpu->mem, _t57, cpu->f[31]);
|
|
/* 0239C014 */ _t58 = cpu->r[3] + 0x00000008u;
|
|
/* 0239C014 */ rbrew_write_f32(cpu->mem, _t58, cpu->f[31]);
|
|
L_0239C018: ; // 0x239c018
|
|
/* 0239C018 */ cpu->r[3] = cpu->r[29] + 0x00000104u;
|
|
/* 0239C018 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239C01C */ _t59 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239C01C */ _t60 = _t59 & 0x00000001u;
|
|
/* 0239C01C */ if (_t60) goto L_0239C020; else goto L_0239C030;
|
|
L_0239C020: ; // 0x239c020
|
|
/* 0239C020 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0239C024 */ Gambit_fn_02801A78(cpu);
|
|
/* 0239C028 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239C02C */ _t61 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239C02C */ _t62 = _t61 & 0x00000001u;
|
|
/* 0239C02C */ if (_t62) goto L_0239C054; else goto L_0239C030;
|
|
L_0239C030: ; // 0x239c030
|
|
/* 0239C030 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239C034 */ _t63 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239C034 */ _t64 = _t63 & 0x00000001u;
|
|
/* 0239C034 */ if (_t64) goto L_0239C038; else goto L_0239C048;
|
|
L_0239C038: ; // 0x239c038
|
|
/* 0239C038 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0239C03C */ Gambit_fn_02801A78(cpu);
|
|
/* 0239C040 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239C044 */ _t65 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239C044 */ _t66 = _t65 & 0x00000001u;
|
|
/* 0239C044 */ if (_t66) goto L_0239C054; else goto L_0239C048;
|
|
L_0239C048: ; // 0x239c048
|
|
/* 0239C048 */ _t67 = cpu->r[3] + 0x00000004u;
|
|
/* 0239C048 */ rbrew_write_f32(cpu->mem, _t67, cpu->f[31]);
|
|
/* 0239C04C */ _t68 = cpu->r[3] + 0x00000000u;
|
|
/* 0239C04C */ rbrew_write_f32(cpu->mem, _t68, cpu->f[31]);
|
|
/* 0239C050 */ _t69 = cpu->r[3] + 0x00000008u;
|
|
/* 0239C050 */ rbrew_write_f32(cpu->mem, _t69, cpu->f[31]);
|
|
L_0239C054: ; // 0x239c054
|
|
/* 0239C054 */ cpu->r[12] = 0x10080000u;
|
|
/* 0239C058 */ _t70 = cpu->r[12] + 0x00007050u;
|
|
/* 0239C058 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t70);
|
|
/* 0239C05C */ cpu->r[3] = cpu->r[29] + 0x00000114u;
|
|
/* 0239C05C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239C060 */ _t71 = cpu->r[29] + 0x00000110u;
|
|
/* 0239C060 */ rbrew_write_f32(cpu->mem, _t71, cpu->f[0]);
|
|
/* 0239C064 */ _t72 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239C064 */ _t73 = _t72 & 0x00000001u;
|
|
/* 0239C064 */ if (_t73) goto L_0239C068; else goto L_0239C078;
|
|
L_0239C068: ; // 0x239c068
|
|
/* 0239C068 */ cpu->r[3] = 0x00000008u;
|
|
/* 0239C06C */ Gambit_fn_02801A78(cpu);
|
|
/* 0239C070 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239C074 */ _t74 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239C074 */ _t75 = _t74 & 0x00000001u;
|
|
/* 0239C074 */ if (_t75) goto L_0239C080; else goto L_0239C078;
|
|
L_0239C078: ; // 0x239c078
|
|
/* 0239C078 */ _t76 = cpu->r[3] + 0x00000004u;
|
|
/* 0239C078 */ rbrew_write_f32(cpu->mem, _t76, cpu->f[31]);
|
|
/* 0239C07C */ _t77 = cpu->r[3] + 0x00000000u;
|
|
/* 0239C07C */ rbrew_write_f32(cpu->mem, _t77, cpu->f[31]);
|
|
L_0239C080: ; // 0x239c080
|
|
/* 0239C080 */ _t78 = cpu->r[29] + 0x0000012Cu;
|
|
/* 0239C080 */ rbrew_write32(cpu->mem, _t78, cpu->r[28]);
|
|
/* 0239C084 */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 0239C088 */ _t79 = cpu->r[29] + 0x0000011Cu;
|
|
/* 0239C088 */ rbrew_write8(cpu->mem, _t79, (uint8_t)cpu->r[28]);
|
|
/* 0239C08C */ _t80 = cpu->r[29] + 0x00000130u;
|
|
/* 0239C08C */ rbrew_write32(cpu->mem, _t80, cpu->r[0]);
|
|
/* 0239C090 */ cpu->r[31] = cpu->r[29] + 0x00000134u;
|
|
/* 0239C090 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0239C094 */ _t81 = cpu->r[29] + 0x00000128u;
|
|
/* 0239C094 */ rbrew_write8(cpu->mem, _t81, (uint8_t)cpu->r[28]);
|
|
/* 0239C098 */ _t82 = cpu->r[29] + 0x00000124u;
|
|
/* 0239C098 */ rbrew_write32(cpu->mem, _t82, cpu->r[28]);
|
|
/* 0239C09C */ _t83 = cpu->r[29] + 0x0000011Du;
|
|
/* 0239C09C */ rbrew_write8(cpu->mem, _t83, (uint8_t)cpu->r[28]);
|
|
/* 0239C0A0 */ _t84 = cpu->r[29] + 0x00000120u;
|
|
/* 0239C0A0 */ rbrew_write32(cpu->mem, _t84, cpu->r[28]);
|
|
/* 0239C0A4 */ _t85 = cpu->r[29] + 0x0000011Eu;
|
|
/* 0239C0A4 */ rbrew_write8(cpu->mem, _t85, (uint8_t)cpu->r[28]);
|
|
/* 0239C0A8 */ _t86 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239C0A8 */ _t87 = _t86 & 0x00000001u;
|
|
/* 0239C0A8 */ if (_t87) goto L_0239C0AC; else goto L_0239C0BC;
|
|
L_0239C0AC: ; // 0x239c0ac
|
|
/* 0239C0AC */ cpu->r[3] = 0x00000024u;
|
|
/* 0239C0B0 */ Gambit_fn_02801A78(cpu);
|
|
/* 0239C0B4 */ cpu->r[31] = cpu->r[3];
|
|
/* 0239C0B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0239C0B8 */ _t88 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239C0B8 */ _t89 = _t88 & 0x00000001u;
|
|
/* 0239C0B8 */ if (_t89) goto L_0239C0EC; else goto L_0239C0BC;
|
|
L_0239C0BC: ; // 0x239c0bc
|
|
/* 0239C0BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0239C0C0 */ _t90 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239C0C0 */ _t91 = _t90 & 0x00000001u;
|
|
/* 0239C0C0 */ if (_t91) goto L_0239C0C4; else goto L_0239C0CC;
|
|
L_0239C0C4: ; // 0x239c0c4
|
|
/* 0239C0C4 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0239C0C8 */ Gambit_fn_02801A78(cpu);
|
|
L_0239C0CC: ; // 0x239c0cc
|
|
/* 0239C0CC */ cpu->r[5] = cpu->r[31] + 0x0000000Cu;
|
|
/* 0239C0CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 0239C0D0 */ _t92 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239C0D0 */ _t93 = _t92 & 0x00000001u;
|
|
/* 0239C0D0 */ if (_t93) goto L_0239C0D4; else goto L_0239C0DC;
|
|
L_0239C0D4: ; // 0x239c0d4
|
|
/* 0239C0D4 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0239C0D8 */ Gambit_fn_02801A78(cpu);
|
|
L_0239C0DC: ; // 0x239c0dc
|
|
/* 0239C0DC */ cpu->r[7] = cpu->r[31] + 0x00000018u;
|
|
/* 0239C0DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 0239C0E0 */ _t94 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239C0E0 */ _t95 = _t94 & 0x00000001u;
|
|
/* 0239C0E0 */ if (_t95) goto L_0239C0E4; else goto L_0239C0EC;
|
|
L_0239C0E4: ; // 0x239c0e4
|
|
/* 0239C0E4 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0239C0E8 */ Gambit_fn_02801A78(cpu);
|
|
L_0239C0EC: ; // 0x239c0ec
|
|
/* 0239C0EC */ _t96 = cpu->r[29] + 0x00000158u;
|
|
/* 0239C0EC */ rbrew_write32(cpu->mem, _t96, cpu->r[28]);
|
|
/* 0239C0F0 */ cpu->r[8] = 0xFFFFFFFFu;
|
|
/* 0239C0F4 */ _t97 = cpu->r[29] + 0x00000164u;
|
|
/* 0239C0F4 */ rbrew_write32(cpu->mem, _t97, cpu->r[28]);
|
|
/* 0239C0F8 */ cpu->r[3] = cpu->r[29] + 0x0000016Cu;
|
|
/* 0239C0F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239C0FC */ _t98 = cpu->r[29] + 0x00000168u;
|
|
/* 0239C0FC */ rbrew_write32(cpu->mem, _t98, cpu->r[8]);
|
|
/* 0239C100 */ _t99 = cpu->r[29] + 0x00000160u;
|
|
/* 0239C100 */ rbrew_write8(cpu->mem, _t99, (uint8_t)cpu->r[28]);
|
|
/* 0239C104 */ _t100 = cpu->r[29] + 0x0000015Cu;
|
|
/* 0239C104 */ rbrew_write32(cpu->mem, _t100, cpu->r[28]);
|
|
/* 0239C108 */ _t101 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239C108 */ _t102 = _t101 & 0x00000001u;
|
|
/* 0239C108 */ if (_t102) goto L_0239C10C; else goto L_0239C11C;
|
|
L_0239C10C: ; // 0x239c10c
|
|
/* 0239C10C */ cpu->r[3] = 0x00000008u;
|
|
/* 0239C110 */ Gambit_fn_02801A78(cpu);
|
|
/* 0239C114 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239C118 */ _t103 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239C118 */ _t104 = _t103 & 0x00000001u;
|
|
/* 0239C118 */ if (_t104) goto L_0239C124; else goto L_0239C11C;
|
|
L_0239C11C: ; // 0x239c11c
|
|
/* 0239C11C */ _t105 = cpu->r[3] + 0x00000004u;
|
|
/* 0239C11C */ rbrew_write_f32(cpu->mem, _t105, cpu->f[31]);
|
|
/* 0239C120 */ _t106 = cpu->r[3] + 0x00000000u;
|
|
/* 0239C120 */ rbrew_write_f32(cpu->mem, _t106, cpu->f[31]);
|
|
L_0239C124: ; // 0x239c124
|
|
/* 0239C124 */ cpu->r[3] = cpu->r[29] + 0x00000174u;
|
|
/* 0239C124 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239C128 */ _t107 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239C128 */ _t108 = _t107 & 0x00000001u;
|
|
/* 0239C128 */ if (_t108) goto L_0239C12C; else goto L_0239C13C;
|
|
L_0239C12C: ; // 0x239c12c
|
|
/* 0239C12C */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0239C130 */ Gambit_fn_02801A78(cpu);
|
|
/* 0239C134 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239C138 */ _t109 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239C138 */ _t110 = _t109 & 0x00000001u;
|
|
/* 0239C138 */ if (_t110) goto L_0239C160; else goto L_0239C13C;
|
|
L_0239C13C: ; // 0x239c13c
|
|
/* 0239C13C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239C140 */ _t111 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239C140 */ _t112 = _t111 & 0x00000001u;
|
|
/* 0239C140 */ if (_t112) goto L_0239C144; else goto L_0239C154;
|
|
L_0239C144: ; // 0x239c144
|
|
/* 0239C144 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0239C148 */ Gambit_fn_02801A78(cpu);
|
|
/* 0239C14C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239C150 */ _t113 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239C150 */ _t114 = _t113 & 0x00000001u;
|
|
/* 0239C150 */ if (_t114) goto L_0239C160; else goto L_0239C154;
|
|
L_0239C154: ; // 0x239c154
|
|
/* 0239C154 */ _t115 = cpu->r[3] + 0x00000004u;
|
|
/* 0239C154 */ rbrew_write_f32(cpu->mem, _t115, cpu->f[31]);
|
|
/* 0239C158 */ _t116 = cpu->r[3] + 0x00000000u;
|
|
/* 0239C158 */ rbrew_write_f32(cpu->mem, _t116, cpu->f[31]);
|
|
/* 0239C15C */ _t117 = cpu->r[3] + 0x00000008u;
|
|
/* 0239C15C */ rbrew_write_f32(cpu->mem, _t117, cpu->f[31]);
|
|
L_0239C160: ; // 0x239c160
|
|
/* 0239C160 */ _t118 = cpu->r[29] + 0x0000018Cu;
|
|
/* 0239C160 */ rbrew_write8(cpu->mem, _t118, (uint8_t)cpu->r[28]);
|
|
/* 0239C164 */ cpu->r[3] = cpu->r[29] + 0x00000190u;
|
|
/* 0239C164 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239C168 */ _t119 = cpu->r[29] + 0x00000184u;
|
|
/* 0239C168 */ rbrew_write32(cpu->mem, _t119, cpu->r[28]);
|
|
/* 0239C16C */ _t120 = cpu->r[29] + 0x00000188u;
|
|
/* 0239C16C */ rbrew_write32(cpu->mem, _t120, cpu->r[28]);
|
|
/* 0239C170 */ _t121 = cpu->r[29] + 0x00000180u;
|
|
/* 0239C170 */ rbrew_write8(cpu->mem, _t121, (uint8_t)cpu->r[28]);
|
|
/* 0239C174 */ _t122 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239C174 */ _t123 = _t122 & 0x00000001u;
|
|
/* 0239C174 */ if (_t123) goto L_0239C178; else goto L_0239C188;
|
|
L_0239C178: ; // 0x239c178
|
|
/* 0239C178 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0239C17C */ Gambit_fn_02801A78(cpu);
|
|
/* 0239C180 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239C184 */ _t124 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239C184 */ _t125 = _t124 & 0x00000001u;
|
|
/* 0239C184 */ if (_t125) goto L_0239C1AC; else goto L_0239C188;
|
|
L_0239C188: ; // 0x239c188
|
|
/* 0239C188 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239C18C */ _t126 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239C18C */ _t127 = _t126 & 0x00000001u;
|
|
/* 0239C18C */ if (_t127) goto L_0239C190; else goto L_0239C1A0;
|
|
L_0239C190: ; // 0x239c190
|
|
/* 0239C190 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0239C194 */ Gambit_fn_02801A78(cpu);
|
|
/* 0239C198 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239C19C */ _t128 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239C19C */ _t129 = _t128 & 0x00000001u;
|
|
/* 0239C19C */ if (_t129) goto L_0239C1AC; else goto L_0239C1A0;
|
|
L_0239C1A0: ; // 0x239c1a0
|
|
/* 0239C1A0 */ _t130 = cpu->r[3] + 0x00000004u;
|
|
/* 0239C1A0 */ rbrew_write_f32(cpu->mem, _t130, cpu->f[31]);
|
|
/* 0239C1A4 */ _t131 = cpu->r[3] + 0x00000000u;
|
|
/* 0239C1A4 */ rbrew_write_f32(cpu->mem, _t131, cpu->f[31]);
|
|
/* 0239C1A8 */ _t132 = cpu->r[3] + 0x00000008u;
|
|
/* 0239C1A8 */ rbrew_write_f32(cpu->mem, _t132, cpu->f[31]);
|
|
L_0239C1AC: ; // 0x239c1ac
|
|
/* 0239C1AC */ _t133 = cpu->r[29] + 0x0000019Cu;
|
|
/* 0239C1AC */ rbrew_write8(cpu->mem, _t133, (uint8_t)cpu->r[28]);
|
|
/* 0239C1B0 */ cpu->r[3] = cpu->r[29] + 0x000001A0u;
|
|
/* 0239C1B4 */ _t134 = cpu->r[29] + 0x0000019Du;
|
|
/* 0239C1B4 */ rbrew_write8(cpu->mem, _t134, (uint8_t)cpu->r[28]);
|
|
/* 0239C1B8 */ Gambit_fn_028F7044(cpu);
|
|
/* 0239C1BC */ cpu->r[3] = cpu->r[29] + 0x00000228u;
|
|
/* 0239C1C0 */ cpu->r[4] = 0x00000060u;
|
|
/* 0239C1C4 */ _t135 = cpu->r[29] + 0x00000224u;
|
|
/* 0239C1C4 */ rbrew_write32(cpu->mem, _t135, cpu->r[28]);
|
|
/* 0239C1C8 */ Gambit_fn_02C89380(cpu);
|
|
/* 0239C1CC */ cpu->r[6] = 0x023A0000u;
|
|
/* 0239C1D0 */ cpu->r[3] = cpu->r[29] + 0x00000228u;
|
|
/* 0239C1D4 */ cpu->r[4] = 0x00000008u;
|
|
/* 0239C1D8 */ cpu->r[6] = cpu->r[6] + 0x00002540u;
|
|
/* 0239C1DC */ cpu->r[5] = 0x0000000Cu;
|
|
/* 0239C1E0 */ Gambit_fn_02C82E00(cpu);
|
|
/* 0239C1E4 */ cpu->r[4] = 0x00000020u;
|
|
/* 0239C1E8 */ cpu->r[3] = cpu->r[29] + 0x00000288u;
|
|
/* 0239C1EC */ Gambit_fn_02C89380(cpu);
|
|
/* 0239C1F0 */ cpu->r[6] = 0x023A0000u;
|
|
/* 0239C1F4 */ cpu->r[3] = cpu->r[29] + 0x00000288u;
|
|
/* 0239C1F8 */ cpu->r[4] = 0x00000008u;
|
|
/* 0239C1FC */ cpu->r[6] = cpu->r[6] + 0x000025BCu;
|
|
/* 0239C200 */ cpu->r[5] = 0x00000004u;
|
|
/* 0239C204 */ Gambit_fn_02C82E00(cpu);
|
|
/* 0239C208 */ cpu->r[31] = 0x10080000u;
|
|
/* 0239C20C */ cpu->r[3] = cpu->r[29] + 0x000002A8u;
|
|
/* 0239C20C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239C210 */ cpu->r[31] = cpu->r[31] + 0x00006FD4u;
|
|
/* 0239C214 */ _t136 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239C214 */ _t137 = _t136 & 0x00000001u;
|
|
/* 0239C214 */ if (_t137) goto L_0239C218; else goto L_0239C228;
|
|
L_0239C218: ; // 0x239c218
|
|
/* 0239C218 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0239C21C */ Gambit_fn_02801A78(cpu);
|
|
/* 0239C220 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239C224 */ _t138 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239C224 */ _t139 = _t138 & 0x00000001u;
|
|
/* 0239C224 */ if (_t139) goto L_0239C234; else goto L_0239C228;
|
|
L_0239C228: ; // 0x239c228
|
|
/* 0239C228 */ _t140 = cpu->r[3] + 0x00000000u;
|
|
/* 0239C228 */ rbrew_write32(cpu->mem, _t140, cpu->r[28]);
|
|
/* 0239C22C */ _t141 = cpu->r[3] + 0x00000008u;
|
|
/* 0239C22C */ rbrew_write32(cpu->mem, _t141, cpu->r[31]);
|
|
/* 0239C230 */ _t142 = cpu->r[3] + 0x00000004u;
|
|
/* 0239C230 */ rbrew_write32(cpu->mem, _t142, cpu->r[28]);
|
|
L_0239C234: ; // 0x239c234
|
|
/* 0239C234 */ cpu->r[30] = 0x10080000u;
|
|
/* 0239C238 */ cpu->r[30] = cpu->r[30] + 0x00006FE4u;
|
|
/* 0239C23C */ cpu->r[3] = cpu->r[29] + 0x000002B4u;
|
|
/* 0239C23C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239C240 */ _t143 = cpu->r[29] + 0x000002B0u;
|
|
/* 0239C240 */ rbrew_write32(cpu->mem, _t143, cpu->r[30]);
|
|
/* 0239C244 */ _t144 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239C244 */ _t145 = _t144 & 0x00000001u;
|
|
/* 0239C244 */ if (_t145) goto L_0239C248; else goto L_0239C258;
|
|
L_0239C248: ; // 0x239c248
|
|
/* 0239C248 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0239C24C */ Gambit_fn_02801A78(cpu);
|
|
/* 0239C250 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239C254 */ _t146 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239C254 */ _t147 = _t146 & 0x00000001u;
|
|
/* 0239C254 */ if (_t147) goto L_0239C264; else goto L_0239C258;
|
|
L_0239C258: ; // 0x239c258
|
|
/* 0239C258 */ _t148 = cpu->r[3] + 0x00000000u;
|
|
/* 0239C258 */ rbrew_write32(cpu->mem, _t148, cpu->r[28]);
|
|
/* 0239C25C */ _t149 = cpu->r[3] + 0x00000008u;
|
|
/* 0239C25C */ rbrew_write32(cpu->mem, _t149, cpu->r[31]);
|
|
/* 0239C260 */ _t150 = cpu->r[3] + 0x00000004u;
|
|
/* 0239C260 */ rbrew_write32(cpu->mem, _t150, cpu->r[28]);
|
|
L_0239C264: ; // 0x239c264
|
|
/* 0239C264 */ _t151 = cpu->r[29] + 0x000002C0u;
|
|
/* 0239C264 */ rbrew_write8(cpu->mem, _t151, (uint8_t)cpu->r[28]);
|
|
/* 0239C268 */ cpu->r[3] = cpu->r[29] + 0x000002C8u;
|
|
/* 0239C268 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239C26C */ _t152 = cpu->r[29] + 0x000002C4u;
|
|
/* 0239C26C */ rbrew_write32(cpu->mem, _t152, cpu->r[28]);
|
|
/* 0239C270 */ _t153 = cpu->r[29] + 0x000002BCu;
|
|
/* 0239C270 */ rbrew_write32(cpu->mem, _t153, cpu->r[30]);
|
|
/* 0239C274 */ _t154 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239C274 */ _t155 = _t154 & 0x00000001u;
|
|
/* 0239C274 */ if (_t155) goto L_0239C278; else goto L_0239C288;
|
|
L_0239C278: ; // 0x239c278
|
|
/* 0239C278 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0239C27C */ Gambit_fn_02801A78(cpu);
|
|
/* 0239C280 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239C284 */ _t156 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239C284 */ _t157 = _t156 & 0x00000001u;
|
|
/* 0239C284 */ if (_t157) goto L_0239C294; else goto L_0239C288;
|
|
L_0239C288: ; // 0x239c288
|
|
/* 0239C288 */ _t158 = cpu->r[3] + 0x00000000u;
|
|
/* 0239C288 */ rbrew_write32(cpu->mem, _t158, cpu->r[28]);
|
|
/* 0239C28C */ _t159 = cpu->r[3] + 0x00000008u;
|
|
/* 0239C28C */ rbrew_write32(cpu->mem, _t159, cpu->r[31]);
|
|
/* 0239C290 */ _t160 = cpu->r[3] + 0x00000004u;
|
|
/* 0239C290 */ rbrew_write32(cpu->mem, _t160, cpu->r[28]);
|
|
L_0239C294: ; // 0x239c294
|
|
/* 0239C294 */ _t161 = cpu->r[29] + 0x000002D0u;
|
|
/* 0239C294 */ rbrew_write32(cpu->mem, _t161, cpu->r[30]);
|
|
/* 0239C298 */ cpu->r[3] = cpu->r[29] + 0x000002D8u;
|
|
/* 0239C298 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239C29C */ _t162 = cpu->r[29] + 0x000002D4u;
|
|
/* 0239C29C */ rbrew_write8(cpu->mem, _t162, (uint8_t)cpu->r[28]);
|
|
/* 0239C2A0 */ _t163 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239C2A0 */ _t164 = _t163 & 0x00000001u;
|
|
/* 0239C2A0 */ if (_t164) goto L_0239C2A4; else goto L_0239C2B4;
|
|
L_0239C2A4: ; // 0x239c2a4
|
|
/* 0239C2A4 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0239C2A8 */ Gambit_fn_02801A78(cpu);
|
|
/* 0239C2AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239C2B0 */ _t165 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239C2B0 */ _t166 = _t165 & 0x00000001u;
|
|
/* 0239C2B0 */ if (_t166) goto L_0239C2C0; else goto L_0239C2B4;
|
|
L_0239C2B4: ; // 0x239c2b4
|
|
/* 0239C2B4 */ _t167 = cpu->r[3] + 0x00000000u;
|
|
/* 0239C2B4 */ rbrew_write32(cpu->mem, _t167, cpu->r[28]);
|
|
/* 0239C2B8 */ _t168 = cpu->r[3] + 0x00000008u;
|
|
/* 0239C2B8 */ rbrew_write32(cpu->mem, _t168, cpu->r[31]);
|
|
/* 0239C2BC */ _t169 = cpu->r[3] + 0x00000004u;
|
|
/* 0239C2BC */ rbrew_write32(cpu->mem, _t169, cpu->r[28]);
|
|
L_0239C2C0: ; // 0x239c2c0
|
|
/* 0239C2C0 */ cpu->r[3] = cpu->r[29] + 0x000002E4u;
|
|
/* 0239C2C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239C2C4 */ _t170 = cpu->r[29] + 0x000002E0u;
|
|
/* 0239C2C4 */ rbrew_write32(cpu->mem, _t170, cpu->r[30]);
|
|
/* 0239C2C8 */ _t171 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239C2C8 */ _t172 = _t171 & 0x00000001u;
|
|
/* 0239C2C8 */ if (_t172) goto L_0239C2CC; else goto L_0239C2DC;
|
|
L_0239C2CC: ; // 0x239c2cc
|
|
/* 0239C2CC */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0239C2D0 */ Gambit_fn_02801A78(cpu);
|
|
/* 0239C2D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239C2D8 */ _t173 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239C2D8 */ _t174 = _t173 & 0x00000001u;
|
|
/* 0239C2D8 */ if (_t174) goto L_0239C2E8; else goto L_0239C2DC;
|
|
L_0239C2DC: ; // 0x239c2dc
|
|
/* 0239C2DC */ _t175 = cpu->r[3] + 0x00000000u;
|
|
/* 0239C2DC */ rbrew_write32(cpu->mem, _t175, cpu->r[28]);
|
|
/* 0239C2E0 */ _t176 = cpu->r[3] + 0x00000008u;
|
|
/* 0239C2E0 */ rbrew_write32(cpu->mem, _t176, cpu->r[31]);
|
|
/* 0239C2E4 */ _t177 = cpu->r[3] + 0x00000004u;
|
|
/* 0239C2E4 */ rbrew_write32(cpu->mem, _t177, cpu->r[28]);
|
|
L_0239C2E8: ; // 0x239c2e8
|
|
/* 0239C2E8 */ cpu->r[0] = 0x00000004u;
|
|
/* 0239C2EC */ _t178 = cpu->r[29] + 0x000002ECu;
|
|
/* 0239C2EC */ rbrew_write32(cpu->mem, _t178, cpu->r[30]);
|
|
/* 0239C2F0 */ cpu->r[3] = cpu->r[29] + 0x00000050u;
|
|
/* 0239C2F4 */ cpu->r[4] = cpu->r[29];
|
|
/* 0239C2F8 */ cpu->r[6] = 0x00000000u;
|
|
/* 0239C2FC */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0239C300 */ _t179 = cpu->r[1] + 0x00000008u;
|
|
/* 0239C300 */ rbrew_write8(cpu->mem, _t179, (uint8_t)cpu->r[0]);
|
|
/* 0239C304 */ Gambit_fn_023A282C(cpu);
|
|
/* 0239C308 */ cpu->r[3] = cpu->r[29];
|
|
/* 0239C30C */ cpu->r[4] = cpu->r[29] + 0x00000050u;
|
|
/* 0239C310 */ Gambit_fn_02000834(cpu);
|
|
/* 0239C314 */ cpu->r[27] = 0x10080000u;
|
|
/* 0239C318 */ cpu->r[26] = 0x023A0000u;
|
|
/* 0239C31C */ cpu->r[27] = cpu->r[27] + 0x00006F34u;
|
|
/* 0239C320 */ cpu->r[6] = 0x10080000u;
|
|
/* 0239C324 */ cpu->r[26] = cpu->r[26] + 0x00002118u;
|
|
/* 0239C328 */ cpu->r[6] = cpu->r[6] + 0x00007054u;
|
|
/* 0239C32C */ cpu->ctr = cpu->r[26];
|
|
/* 0239C330 */ _t180 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239C330 */ rbrew_write32(cpu->mem, _t180, cpu->r[6]);
|
|
/* 0239C334 */ _t181 = cpu->r[1] + 0x00000010u;
|
|
/* 0239C334 */ rbrew_write32(cpu->mem, _t181, cpu->r[27]);
|
|
/* 0239C338 */ _t182 = cpu->r[29] + 0x00000068u;
|
|
/* 0239C338 */ cpu->r[24] = rbrew_read32(cpu->mem, _t182);
|
|
/* 0239C33C */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239C340 */ _t183 = cpu->r[24] + 0x00000000u;
|
|
/* 0239C340 */ cpu->r[25] = rbrew_read32(cpu->mem, _t183);
|
|
/* 0239C344 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0239C348 */ cpu->r[31] = 0x10110000u;
|
|
/* 0239C34C */ _t184 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239C34C */ cpu->r[5] = rbrew_read32(cpu->mem, _t184);
|
|
/* 0239C350 */ _t185 = cpu->r[31] + 0x00007399u;
|
|
/* 0239C350 */ cpu->r[31] = rbrew_read8(cpu->mem, _t185);
|
|
/* 0239C354 */ _t186 = cpu->r[5] + 0x00000000u;
|
|
/* 0239C354 */ cpu->r[8] = rbrew_read8(cpu->mem, _t186);
|
|
/* 0239C358 */ cpu->r[30] = 0x00000000u;
|
|
/* 0239C35C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[31]);
|
|
/* 0239C360 */ cpu->r[4] = 0x00080000u;
|
|
/* 0239C364 */ _t187 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239C364 */ _t188 = _t187 & 0x00000001u;
|
|
/* 0239C364 */ if (_t188) goto L_0239C38C; else goto L_0239C368;
|
|
L_0239C368: ; // 0x239c368
|
|
/* 0239C368 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 0239C36C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[4]);
|
|
/* 0239C370 */ cpu->r[5] = cpu->r[5] + 0x00000001u;
|
|
/* 0239C374 */ _t189 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0239C374 */ _t190 = _t189 & 0x00000001u;
|
|
/* 0239C374 */ if (_t190) goto L_0239C388; else goto L_0239C378;
|
|
L_0239C378: ; // 0x239c378
|
|
/* 0239C378 */ _t191 = cpu->r[5] + 0x00000000u;
|
|
/* 0239C378 */ cpu->r[10] = rbrew_read8(cpu->mem, _t191);
|
|
/* 0239C37C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[31]);
|
|
/* 0239C380 */ _t192 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239C380 */ _t193 = _t192 & 0x00000001u;
|
|
/* 0239C380 */ if (_t193) goto L_0239C384; else goto L_0239C368;
|
|
L_0239C384: ; // 0x239c384
|
|
/* 0239C384 */ goto L_0239C38C;
|
|
L_0239C388: ; // 0x239c388
|
|
/* 0239C388 */ cpu->r[30] = 0x00000000u;
|
|
L_0239C38C: ; // 0x239c38c
|
|
/* 0239C38C */ _t194 = cpu->r[24] + 0x00000008u;
|
|
/* 0239C38C */ cpu->r[9] = rbrew_read32(cpu->mem, _t194);
|
|
/* 0239C390 */ _t195 = cpu->r[1] + 0x00000010u;
|
|
/* 0239C390 */ cpu->r[12] = rbrew_read32(cpu->mem, _t195);
|
|
/* 0239C394 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[9]);
|
|
/* 0239C398 */ _t196 = cpu->r[12] + 0x00000014u;
|
|
/* 0239C398 */ cpu->r[4] = rbrew_read32(cpu->mem, _t196);
|
|
/* 0239C39C */ _t197 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0239C39C */ _t198 = _t197 & 0x00000001u;
|
|
/* 0239C39C */ if (_t198) goto L_0239C3A4; else goto L_0239C3A0;
|
|
L_0239C3A0: ; // 0x239c3a0
|
|
/* 0239C3A0 */ cpu->r[30] = cpu->r[9] + 0xFFFFFFFFu;
|
|
L_0239C3A4: ; // 0x239c3a4
|
|
/* 0239C3A4 */ cpu->ctr = cpu->r[4];
|
|
/* 0239C3A8 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239C3AC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0239C3B0 */ _t199 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239C3B0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t199);
|
|
/* 0239C3B4 */ cpu->r[6] = 0x00000000u;
|
|
/* 0239C3B8 */ cpu->r[5] = cpu->r[30];
|
|
/* 0239C3BC */ cpu->r[3] = cpu->r[25];
|
|
/* 0239C3C0 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0239C3C4 */ _t200 = cpu->r[25] + cpu->r[30];
|
|
/* 0239C3C4 */ rbrew_write8(cpu->mem, _t200, (uint8_t)cpu->r[31]);
|
|
/* 0239C3C8 */ cpu->r[9] = 0x00000000u;
|
|
/* 0239C3CC */ _t201 = cpu->r[1] + 0x00000026u;
|
|
/* 0239C3CC */ rbrew_write16(cpu->mem, _t201, (uint16_t)cpu->r[28]);
|
|
/* 0239C3D0 */ cpu->r[8] = 0x023A0000u;
|
|
/* 0239C3D4 */ _t202 = cpu->r[1] + 0x00000028u;
|
|
/* 0239C3D4 */ rbrew_write32(cpu->mem, _t202, cpu->r[28]);
|
|
/* 0239C3D8 */ cpu->r[6] = 0x023A0000u;
|
|
/* 0239C3DC */ _t203 = cpu->r[1] + 0x00000014u;
|
|
/* 0239C3DC */ rbrew_write16(cpu->mem, _t203, (uint16_t)cpu->r[28]);
|
|
/* 0239C3E0 */ cpu->r[6] = cpu->r[6] + 0x000025F8u;
|
|
/* 0239C3E4 */ _t204 = cpu->r[1] + 0x00000008u;
|
|
/* 0239C3E4 */ rbrew_write8(cpu->mem, _t204, (uint8_t)cpu->r[9]);
|
|
/* 0239C3E8 */ _t205 = cpu->r[1] + 0x00000024u;
|
|
/* 0239C3E8 */ rbrew_write16(cpu->mem, _t205, (uint16_t)cpu->r[28]);
|
|
/* 0239C3EC */ cpu->r[8] = cpu->r[8] + 0x000025FCu;
|
|
/* 0239C3F0 */ _t206 = cpu->r[1] + 0x00000018u;
|
|
/* 0239C3F0 */ rbrew_write32(cpu->mem, _t206, cpu->r[6]);
|
|
/* 0239C3F4 */ cpu->r[10] = 0xFFFFFFFFu;
|
|
/* 0239C3F8 */ _t207 = cpu->r[1] + 0x00000020u;
|
|
/* 0239C3F8 */ rbrew_write32(cpu->mem, _t207, cpu->r[8]);
|
|
/* 0239C3FC */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 0239C400 */ cpu->r[5] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239C404 */ _t208 = cpu->r[1] + 0x0000001Eu;
|
|
/* 0239C404 */ rbrew_write16(cpu->mem, _t208, (uint16_t)cpu->r[10]);
|
|
/* 0239C408 */ cpu->r[3] = cpu->r[29] + 0x00000050u;
|
|
/* 0239C40C */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 0239C410 */ _t209 = cpu->r[1] + 0x00000016u;
|
|
/* 0239C410 */ rbrew_write16(cpu->mem, _t209, (uint16_t)cpu->r[10]);
|
|
/* 0239C414 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 0239C418 */ _t210 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239C418 */ rbrew_write16(cpu->mem, _t210, (uint16_t)cpu->r[28]);
|
|
/* 0239C41C */ Gambit_fn_023A2ADC(cpu);
|
|
/* 0239C420 */ cpu->r[0] = 0x10080000u;
|
|
/* 0239C424 */ _t211 = cpu->r[1] + 0x00000010u;
|
|
/* 0239C424 */ rbrew_write32(cpu->mem, _t211, cpu->r[27]);
|
|
/* 0239C428 */ cpu->r[0] = cpu->r[0] + 0x00007064u;
|
|
/* 0239C42C */ _t212 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239C42C */ rbrew_write32(cpu->mem, _t212, cpu->r[0]);
|
|
/* 0239C430 */ _t213 = cpu->r[29] + 0x00000064u;
|
|
/* 0239C430 */ cpu->r[0] = rbrew_read32(cpu->mem, _t213);
|
|
/* 0239C434 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000001u);
|
|
/* 0239C438 */ _t214 = cpu->r[29] + 0x00000068u;
|
|
/* 0239C438 */ cpu->r[25] = rbrew_read32(cpu->mem, _t214);
|
|
/* 0239C43C */ _t215 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0239C43C */ _t216 = _t215 & 0x00000001u;
|
|
/* 0239C43C */ if (_t216) goto L_0239C440; else goto L_0239C444;
|
|
L_0239C440: ; // 0x239c440
|
|
/* 0239C440 */ cpu->r[25] = cpu->r[25] + 0x00000024u;
|
|
L_0239C444: ; // 0x239c444
|
|
/* 0239C444 */ cpu->ctr = cpu->r[26];
|
|
/* 0239C448 */ _t217 = cpu->r[25] + 0x00000000u;
|
|
/* 0239C448 */ cpu->r[24] = rbrew_read32(cpu->mem, _t217);
|
|
/* 0239C44C */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239C450 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0239C454 */ _t218 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239C454 */ cpu->r[9] = rbrew_read32(cpu->mem, _t218);
|
|
/* 0239C458 */ _t219 = cpu->r[9] + 0x00000000u;
|
|
/* 0239C458 */ cpu->r[5] = rbrew_read8(cpu->mem, _t219);
|
|
/* 0239C45C */ cpu->r[30] = 0x00000000u;
|
|
/* 0239C460 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[31]);
|
|
/* 0239C464 */ cpu->r[0] = 0x00080000u;
|
|
/* 0239C468 */ _t220 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239C468 */ _t221 = _t220 & 0x00000001u;
|
|
/* 0239C468 */ if (_t221) goto L_0239C490; else goto L_0239C46C;
|
|
L_0239C46C: ; // 0x239c46c
|
|
/* 0239C46C */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 0239C470 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[0]);
|
|
/* 0239C474 */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
/* 0239C478 */ _t222 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0239C478 */ _t223 = _t222 & 0x00000001u;
|
|
/* 0239C478 */ if (_t223) goto L_0239C48C; else goto L_0239C47C;
|
|
L_0239C47C: ; // 0x239c47c
|
|
/* 0239C47C */ _t224 = cpu->r[9] + 0x00000000u;
|
|
/* 0239C47C */ cpu->r[6] = rbrew_read8(cpu->mem, _t224);
|
|
/* 0239C480 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[31]);
|
|
/* 0239C484 */ _t225 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239C484 */ _t226 = _t225 & 0x00000001u;
|
|
/* 0239C484 */ if (_t226) goto L_0239C488; else goto L_0239C46C;
|
|
L_0239C488: ; // 0x239c488
|
|
/* 0239C488 */ goto L_0239C490;
|
|
L_0239C48C: ; // 0x239c48c
|
|
/* 0239C48C */ cpu->r[30] = 0x00000000u;
|
|
L_0239C490: ; // 0x239c490
|
|
/* 0239C490 */ _t227 = cpu->r[25] + 0x00000008u;
|
|
/* 0239C490 */ cpu->r[10] = rbrew_read32(cpu->mem, _t227);
|
|
/* 0239C494 */ _t228 = cpu->r[1] + 0x00000010u;
|
|
/* 0239C494 */ cpu->r[7] = rbrew_read32(cpu->mem, _t228);
|
|
/* 0239C498 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[10]);
|
|
/* 0239C49C */ _t229 = cpu->r[7] + 0x00000014u;
|
|
/* 0239C49C */ cpu->r[8] = rbrew_read32(cpu->mem, _t229);
|
|
/* 0239C4A0 */ _t230 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0239C4A0 */ _t231 = _t230 & 0x00000001u;
|
|
/* 0239C4A0 */ if (_t231) goto L_0239C4A8; else goto L_0239C4A4;
|
|
L_0239C4A4: ; // 0x239c4a4
|
|
/* 0239C4A4 */ cpu->r[30] = cpu->r[10] + 0xFFFFFFFFu;
|
|
L_0239C4A8: ; // 0x239c4a8
|
|
/* 0239C4A8 */ cpu->ctr = cpu->r[8];
|
|
/* 0239C4AC */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239C4B0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0239C4B4 */ _t232 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239C4B4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t232);
|
|
/* 0239C4B8 */ cpu->r[6] = 0x00000000u;
|
|
/* 0239C4BC */ cpu->r[5] = cpu->r[30];
|
|
/* 0239C4C0 */ cpu->r[3] = cpu->r[24];
|
|
/* 0239C4C4 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0239C4C8 */ _t233 = cpu->r[24] + cpu->r[30];
|
|
/* 0239C4C8 */ rbrew_write8(cpu->mem, _t233, (uint8_t)cpu->r[31]);
|
|
/* 0239C4CC */ cpu->r[8] = 0x00000001u;
|
|
/* 0239C4D0 */ _t234 = cpu->r[1] + 0x00000026u;
|
|
/* 0239C4D0 */ rbrew_write16(cpu->mem, _t234, (uint16_t)cpu->r[28]);
|
|
/* 0239C4D4 */ cpu->r[9] = 0x023A0000u;
|
|
/* 0239C4D8 */ _t235 = cpu->r[1] + 0x00000008u;
|
|
/* 0239C4D8 */ rbrew_write8(cpu->mem, _t235, (uint8_t)cpu->r[8]);
|
|
/* 0239C4DC */ cpu->r[6] = 0xFFFFFFFFu;
|
|
/* 0239C4E0 */ _t236 = cpu->r[1] + 0x00000014u;
|
|
/* 0239C4E0 */ rbrew_write16(cpu->mem, _t236, (uint16_t)cpu->r[28]);
|
|
/* 0239C4E4 */ cpu->r[11] = 0x023A0000u;
|
|
/* 0239C4E8 */ _t237 = cpu->r[1] + 0x0000001Eu;
|
|
/* 0239C4E8 */ rbrew_write16(cpu->mem, _t237, (uint16_t)cpu->r[6]);
|
|
/* 0239C4EC */ _t238 = cpu->r[1] + 0x00000024u;
|
|
/* 0239C4EC */ rbrew_write16(cpu->mem, _t238, (uint16_t)cpu->r[28]);
|
|
/* 0239C4F0 */ cpu->r[9] = cpu->r[9] + 0x00002600u;
|
|
/* 0239C4F4 */ _t239 = cpu->r[1] + 0x00000016u;
|
|
/* 0239C4F4 */ rbrew_write16(cpu->mem, _t239, (uint16_t)cpu->r[6]);
|
|
/* 0239C4F8 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 0239C4FC */ cpu->r[11] = cpu->r[11] + 0x00002604u;
|
|
/* 0239C500 */ _t240 = cpu->r[1] + 0x00000020u;
|
|
/* 0239C500 */ rbrew_write32(cpu->mem, _t240, cpu->r[9]);
|
|
/* 0239C504 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 0239C508 */ _t241 = cpu->r[1] + 0x00000018u;
|
|
/* 0239C508 */ rbrew_write32(cpu->mem, _t241, cpu->r[11]);
|
|
/* 0239C50C */ cpu->r[3] = cpu->r[29] + 0x00000050u;
|
|
/* 0239C510 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239C514 */ _t242 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239C514 */ rbrew_write16(cpu->mem, _t242, (uint16_t)cpu->r[28]);
|
|
/* 0239C518 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 0239C51C */ _t243 = cpu->r[1] + 0x00000028u;
|
|
/* 0239C51C */ rbrew_write32(cpu->mem, _t243, cpu->r[28]);
|
|
/* 0239C520 */ Gambit_fn_023A2ADC(cpu);
|
|
/* 0239C524 */ cpu->r[0] = 0x10080000u;
|
|
/* 0239C528 */ _t244 = cpu->r[1] + 0x00000010u;
|
|
/* 0239C528 */ rbrew_write32(cpu->mem, _t244, cpu->r[27]);
|
|
/* 0239C52C */ cpu->r[0] = cpu->r[0] + 0x00007074u;
|
|
/* 0239C530 */ _t245 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239C530 */ rbrew_write32(cpu->mem, _t245, cpu->r[0]);
|
|
/* 0239C534 */ _t246 = cpu->r[29] + 0x00000064u;
|
|
/* 0239C534 */ cpu->r[0] = rbrew_read32(cpu->mem, _t246);
|
|
/* 0239C538 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000002u);
|
|
/* 0239C53C */ _t247 = cpu->r[29] + 0x00000068u;
|
|
/* 0239C53C */ cpu->r[25] = rbrew_read32(cpu->mem, _t247);
|
|
/* 0239C540 */ _t248 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0239C540 */ _t249 = _t248 & 0x00000001u;
|
|
/* 0239C540 */ if (_t249) goto L_0239C544; else goto L_0239C548;
|
|
L_0239C544: ; // 0x239c544
|
|
/* 0239C544 */ cpu->r[25] = cpu->r[25] + 0x00000048u;
|
|
L_0239C548: ; // 0x239c548
|
|
/* 0239C548 */ cpu->ctr = cpu->r[26];
|
|
/* 0239C54C */ _t250 = cpu->r[25] + 0x00000000u;
|
|
/* 0239C54C */ cpu->r[24] = rbrew_read32(cpu->mem, _t250);
|
|
/* 0239C550 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239C554 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0239C558 */ _t251 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239C558 */ cpu->r[5] = rbrew_read32(cpu->mem, _t251);
|
|
/* 0239C55C */ _t252 = cpu->r[5] + 0x00000000u;
|
|
/* 0239C55C */ cpu->r[4] = rbrew_read8(cpu->mem, _t252);
|
|
/* 0239C560 */ cpu->r[30] = 0x00000000u;
|
|
/* 0239C564 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[31]);
|
|
/* 0239C568 */ cpu->r[7] = 0x00080000u;
|
|
/* 0239C56C */ _t253 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239C56C */ _t254 = _t253 & 0x00000001u;
|
|
/* 0239C56C */ if (_t254) goto L_0239C594; else goto L_0239C570;
|
|
L_0239C570: ; // 0x239c570
|
|
/* 0239C570 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 0239C574 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[7]);
|
|
/* 0239C578 */ cpu->r[5] = cpu->r[5] + 0x00000001u;
|
|
/* 0239C57C */ _t255 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0239C57C */ _t256 = _t255 & 0x00000001u;
|
|
/* 0239C57C */ if (_t256) goto L_0239C590; else goto L_0239C580;
|
|
L_0239C580: ; // 0x239c580
|
|
/* 0239C580 */ _t257 = cpu->r[5] + 0x00000000u;
|
|
/* 0239C580 */ cpu->r[6] = rbrew_read8(cpu->mem, _t257);
|
|
/* 0239C584 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[31]);
|
|
/* 0239C588 */ _t258 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239C588 */ _t259 = _t258 & 0x00000001u;
|
|
/* 0239C588 */ if (_t259) goto L_0239C58C; else goto L_0239C570;
|
|
L_0239C58C: ; // 0x239c58c
|
|
/* 0239C58C */ goto L_0239C594;
|
|
L_0239C590: ; // 0x239c590
|
|
/* 0239C590 */ cpu->r[30] = 0x00000000u;
|
|
L_0239C594: ; // 0x239c594
|
|
/* 0239C594 */ _t260 = cpu->r[25] + 0x00000008u;
|
|
/* 0239C594 */ cpu->r[11] = rbrew_read32(cpu->mem, _t260);
|
|
/* 0239C598 */ _t261 = cpu->r[1] + 0x00000010u;
|
|
/* 0239C598 */ cpu->r[8] = rbrew_read32(cpu->mem, _t261);
|
|
/* 0239C59C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[11]);
|
|
/* 0239C5A0 */ _t262 = cpu->r[8] + 0x00000014u;
|
|
/* 0239C5A0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t262);
|
|
/* 0239C5A4 */ _t263 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0239C5A4 */ _t264 = _t263 & 0x00000001u;
|
|
/* 0239C5A4 */ if (_t264) goto L_0239C5AC; else goto L_0239C5A8;
|
|
L_0239C5A8: ; // 0x239c5a8
|
|
/* 0239C5A8 */ cpu->r[30] = cpu->r[11] + 0xFFFFFFFFu;
|
|
L_0239C5AC: ; // 0x239c5ac
|
|
/* 0239C5AC */ cpu->ctr = cpu->r[9];
|
|
/* 0239C5B0 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239C5B4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0239C5B8 */ _t265 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239C5B8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t265);
|
|
/* 0239C5BC */ cpu->r[3] = cpu->r[24];
|
|
/* 0239C5C0 */ cpu->r[5] = cpu->r[30];
|
|
/* 0239C5C4 */ cpu->r[6] = 0x00000000u;
|
|
/* 0239C5C8 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0239C5CC */ _t266 = cpu->r[24] + cpu->r[30];
|
|
/* 0239C5CC */ rbrew_write8(cpu->mem, _t266, (uint8_t)cpu->r[31]);
|
|
/* 0239C5D0 */ cpu->r[0] = 0x00000002u;
|
|
/* 0239C5D4 */ _t267 = cpu->r[1] + 0x00000028u;
|
|
/* 0239C5D4 */ rbrew_write32(cpu->mem, _t267, cpu->r[28]);
|
|
/* 0239C5D8 */ cpu->r[10] = 0x023A0000u;
|
|
/* 0239C5DC */ _t268 = cpu->r[1] + 0x00000008u;
|
|
/* 0239C5DC */ rbrew_write8(cpu->mem, _t268, (uint8_t)cpu->r[0]);
|
|
/* 0239C5E0 */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 0239C5E4 */ _t269 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239C5E4 */ rbrew_write16(cpu->mem, _t269, (uint16_t)cpu->r[28]);
|
|
/* 0239C5E8 */ cpu->r[12] = 0x023A0000u;
|
|
/* 0239C5EC */ _t270 = cpu->r[1] + 0x00000024u;
|
|
/* 0239C5EC */ rbrew_write16(cpu->mem, _t270, (uint16_t)cpu->r[28]);
|
|
/* 0239C5F0 */ _t271 = cpu->r[1] + 0x00000026u;
|
|
/* 0239C5F0 */ rbrew_write16(cpu->mem, _t271, (uint16_t)cpu->r[28]);
|
|
/* 0239C5F4 */ cpu->r[10] = cpu->r[10] + 0x00002608u;
|
|
/* 0239C5F8 */ _t272 = cpu->r[1] + 0x00000016u;
|
|
/* 0239C5F8 */ rbrew_write16(cpu->mem, _t272, (uint16_t)cpu->r[0]);
|
|
/* 0239C5FC */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 0239C600 */ _t273 = cpu->r[1] + 0x00000020u;
|
|
/* 0239C600 */ rbrew_write32(cpu->mem, _t273, cpu->r[10]);
|
|
/* 0239C604 */ cpu->r[12] = cpu->r[12] + 0x0000260Cu;
|
|
/* 0239C608 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 0239C60C */ _t274 = cpu->r[1] + 0x00000014u;
|
|
/* 0239C60C */ rbrew_write16(cpu->mem, _t274, (uint16_t)cpu->r[28]);
|
|
/* 0239C610 */ cpu->r[3] = cpu->r[29] + 0x00000050u;
|
|
/* 0239C614 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 0239C618 */ _t275 = cpu->r[1] + 0x00000018u;
|
|
/* 0239C618 */ rbrew_write32(cpu->mem, _t275, cpu->r[12]);
|
|
/* 0239C61C */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239C620 */ _t276 = cpu->r[1] + 0x0000001Eu;
|
|
/* 0239C620 */ rbrew_write16(cpu->mem, _t276, (uint16_t)cpu->r[0]);
|
|
/* 0239C624 */ Gambit_fn_023A2ADC(cpu);
|
|
/* 0239C628 */ cpu->r[4] = 0x10080000u;
|
|
/* 0239C62C */ _t277 = cpu->r[1] + 0x00000010u;
|
|
/* 0239C62C */ rbrew_write32(cpu->mem, _t277, cpu->r[27]);
|
|
/* 0239C630 */ cpu->r[4] = cpu->r[4] + 0x00007084u;
|
|
/* 0239C634 */ _t278 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239C634 */ rbrew_write32(cpu->mem, _t278, cpu->r[4]);
|
|
/* 0239C638 */ _t279 = cpu->r[29] + 0x00000064u;
|
|
/* 0239C638 */ cpu->r[5] = rbrew_read32(cpu->mem, _t279);
|
|
/* 0239C63C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], 0x00000003u);
|
|
/* 0239C640 */ _t280 = cpu->r[29] + 0x00000068u;
|
|
/* 0239C640 */ cpu->r[27] = rbrew_read32(cpu->mem, _t280);
|
|
/* 0239C644 */ _t281 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0239C644 */ _t282 = _t281 & 0x00000001u;
|
|
/* 0239C644 */ if (_t282) goto L_0239C648; else goto L_0239C64C;
|
|
L_0239C648: ; // 0x239c648
|
|
/* 0239C648 */ cpu->r[27] = cpu->r[27] + 0x0000006Cu;
|
|
L_0239C64C: ; // 0x239c64c
|
|
/* 0239C64C */ cpu->ctr = cpu->r[26];
|
|
/* 0239C650 */ _t283 = cpu->r[27] + 0x00000000u;
|
|
/* 0239C650 */ cpu->r[25] = rbrew_read32(cpu->mem, _t283);
|
|
/* 0239C654 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239C658 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0239C65C */ _t284 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239C65C */ cpu->r[11] = rbrew_read32(cpu->mem, _t284);
|
|
/* 0239C660 */ _t285 = cpu->r[11] + 0x00000000u;
|
|
/* 0239C660 */ cpu->r[6] = rbrew_read8(cpu->mem, _t285);
|
|
/* 0239C664 */ cpu->r[30] = 0x00000000u;
|
|
/* 0239C668 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[31]);
|
|
/* 0239C66C */ cpu->r[0] = 0x00080000u;
|
|
/* 0239C670 */ _t286 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239C670 */ _t287 = _t286 & 0x00000001u;
|
|
/* 0239C670 */ if (_t287) goto L_0239C698; else goto L_0239C674;
|
|
L_0239C674: ; // 0x239c674
|
|
/* 0239C674 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 0239C678 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[0]);
|
|
/* 0239C67C */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 0239C680 */ _t288 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0239C680 */ _t289 = _t288 & 0x00000001u;
|
|
/* 0239C680 */ if (_t289) goto L_0239C694; else goto L_0239C684;
|
|
L_0239C684: ; // 0x239c684
|
|
/* 0239C684 */ _t290 = cpu->r[11] + 0x00000000u;
|
|
/* 0239C684 */ cpu->r[7] = rbrew_read8(cpu->mem, _t290);
|
|
/* 0239C688 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[31]);
|
|
/* 0239C68C */ _t291 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239C68C */ _t292 = _t291 & 0x00000001u;
|
|
/* 0239C68C */ if (_t292) goto L_0239C690; else goto L_0239C674;
|
|
L_0239C690: ; // 0x239c690
|
|
/* 0239C690 */ goto L_0239C698;
|
|
L_0239C694: ; // 0x239c694
|
|
/* 0239C694 */ cpu->r[30] = 0x00000000u;
|
|
L_0239C698: ; // 0x239c698
|
|
/* 0239C698 */ _t293 = cpu->r[27] + 0x00000008u;
|
|
/* 0239C698 */ cpu->r[12] = rbrew_read32(cpu->mem, _t293);
|
|
/* 0239C69C */ _t294 = cpu->r[1] + 0x00000010u;
|
|
/* 0239C69C */ cpu->r[8] = rbrew_read32(cpu->mem, _t294);
|
|
/* 0239C6A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[12]);
|
|
/* 0239C6A4 */ _t295 = cpu->r[8] + 0x00000014u;
|
|
/* 0239C6A4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t295);
|
|
/* 0239C6A8 */ _t296 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0239C6A8 */ _t297 = _t296 & 0x00000001u;
|
|
/* 0239C6A8 */ if (_t297) goto L_0239C6B0; else goto L_0239C6AC;
|
|
L_0239C6AC: ; // 0x239c6ac
|
|
/* 0239C6AC */ cpu->r[30] = cpu->r[12] + 0xFFFFFFFFu;
|
|
L_0239C6B0: ; // 0x239c6b0
|
|
/* 0239C6B0 */ cpu->ctr = cpu->r[9];
|
|
/* 0239C6B4 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239C6B8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0239C6BC */ _t298 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239C6BC */ cpu->r[4] = rbrew_read32(cpu->mem, _t298);
|
|
/* 0239C6C0 */ cpu->r[3] = cpu->r[25];
|
|
/* 0239C6C4 */ cpu->r[5] = cpu->r[30];
|
|
/* 0239C6C8 */ cpu->r[6] = 0x00000000u;
|
|
/* 0239C6CC */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0239C6D0 */ _t299 = cpu->r[25] + cpu->r[30];
|
|
/* 0239C6D0 */ rbrew_write8(cpu->mem, _t299, (uint8_t)cpu->r[31]);
|
|
/* 0239C6D4 */ cpu->r[12] = 0x00000003u;
|
|
/* 0239C6D8 */ _t300 = cpu->r[1] + 0x00000028u;
|
|
/* 0239C6D8 */ rbrew_write32(cpu->mem, _t300, cpu->r[28]);
|
|
/* 0239C6DC */ cpu->r[8] = 0xFFFFFFFFu;
|
|
/* 0239C6E0 */ _t301 = cpu->r[1] + 0x00000008u;
|
|
/* 0239C6E0 */ rbrew_write8(cpu->mem, _t301, (uint8_t)cpu->r[12]);
|
|
/* 0239C6E4 */ cpu->r[10] = 0x023A0000u;
|
|
/* 0239C6E8 */ _t302 = cpu->r[1] + 0x00000026u;
|
|
/* 0239C6E8 */ rbrew_write16(cpu->mem, _t302, (uint16_t)cpu->r[28]);
|
|
/* 0239C6EC */ cpu->r[10] = cpu->r[10] + 0x00002610u;
|
|
/* 0239C6F0 */ _t303 = cpu->r[1] + 0x00000014u;
|
|
/* 0239C6F0 */ rbrew_write16(cpu->mem, _t303, (uint16_t)cpu->r[28]);
|
|
/* 0239C6F4 */ cpu->r[0] = 0x023A0000u;
|
|
/* 0239C6F8 */ _t304 = cpu->r[1] + 0x00000020u;
|
|
/* 0239C6F8 */ rbrew_write32(cpu->mem, _t304, cpu->r[10]);
|
|
/* 0239C6FC */ cpu->r[0] = cpu->r[0] + 0x00002614u;
|
|
/* 0239C700 */ _t305 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239C700 */ rbrew_write16(cpu->mem, _t305, (uint16_t)cpu->r[28]);
|
|
/* 0239C704 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239C708 */ _t306 = cpu->r[1] + 0x00000016u;
|
|
/* 0239C708 */ rbrew_write16(cpu->mem, _t306, (uint16_t)cpu->r[8]);
|
|
/* 0239C70C */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 0239C710 */ _t307 = cpu->r[1] + 0x00000018u;
|
|
/* 0239C710 */ rbrew_write32(cpu->mem, _t307, cpu->r[0]);
|
|
/* 0239C714 */ cpu->r[3] = cpu->r[29] + 0x00000050u;
|
|
/* 0239C718 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 0239C71C */ _t308 = cpu->r[1] + 0x0000001Eu;
|
|
/* 0239C71C */ rbrew_write16(cpu->mem, _t308, (uint16_t)cpu->r[8]);
|
|
/* 0239C720 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 0239C724 */ _t309 = cpu->r[1] + 0x00000024u;
|
|
/* 0239C724 */ rbrew_write16(cpu->mem, _t309, (uint16_t)cpu->r[28]);
|
|
/* 0239C728 */ Gambit_fn_023A2ADC(cpu);
|
|
L_0239C72C: ; // 0x239c72c
|
|
/* 0239C72C */ cpu->r[3] = cpu->r[29];
|
|
/* 0239C730 */ /* nop */
|
|
/* 0239C734 */ _t310 = cpu->r[1] + 0x00000058u;
|
|
/* 0239C734 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t310);
|
|
/* 0239C738 */ _t311 = cpu->r[1] + 0x00000050u;
|
|
/* 0239C738 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t311);
|
|
/* 0239C73C */ _t312 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0239C73C */ _t313 = _t312 & 0x00000001u;
|
|
/* 0239C73C */ if (_t313) goto L_0239C740; // else: addr-0 trap, fall-through
|
|
L_0239C740: ; // 0x239c740
|
|
/* 0239C740 */ _t314 = cpu->r[1] + 0x00000064u;
|
|
/* 0239C740 */ cpu->r[0] = rbrew_read32(cpu->mem, _t314);
|
|
/* 0239C744 */ cpu->lr = cpu->r[0];
|
|
/* 0239C748 */ cpu->r[1] = cpu->r[1] + 0x00000060u;
|
|
/* 0239C74C */ return;
|
|
}
|
|
|
|
// fn_0239C750 @ 0x239c750
|
|
void Gambit_fn_0239C750(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_0239C750: ; // 0x239c750
|
|
/* 0239C750 */ cpu->r[0] = cpu->lr;
|
|
/* 0239C754 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 0239C754 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 0239C758 */ _t1 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0239C758 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 0239C758 */ cpu->r[1] = _t1;
|
|
/* 0239C75C */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0239C760 */ Gambit_fn_02019890(cpu);
|
|
/* 0239C764 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0239C764 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0239C768 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000001u);
|
|
/* 0239C76C */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239C76C */ _t4 = _t3 & 0x00000001u;
|
|
/* 0239C76C */ if (_t4) goto L_0239C778; else goto L_0239C770;
|
|
L_0239C770: ; // 0x239c770
|
|
/* 0239C770 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000003u);
|
|
/* 0239C774 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239C774 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0239C774 */ if (_t6) goto L_0239C778; else goto L_0239C78C;
|
|
L_0239C778: ; // 0x239c778
|
|
/* 0239C778 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 0239C778 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0239C77C */ cpu->lr = cpu->r[0];
|
|
/* 0239C780 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0239C784 */ cpu->r[3] = 0x00000000u;
|
|
/* 0239C788 */ return;
|
|
L_0239C78C: ; // 0x239c78c
|
|
/* 0239C78C */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 0239C78C */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0239C790 */ cpu->lr = cpu->r[0];
|
|
/* 0239C794 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0239C798 */ cpu->r[3] = 0x00000001u;
|
|
/* 0239C79C */ return;
|
|
}
|
|
|
|
// fn_0239C758 @ 0x239c758
|
|
void Gambit_fn_0239C758(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_0239C758: ; // 0x239c758
|
|
/* 0239C758 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0239C758 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239C758 */ cpu->r[1] = _t0;
|
|
/* 0239C75C */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0239C760 */ Gambit_fn_02019890(cpu);
|
|
/* 0239C764 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0239C764 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0239C768 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000001u);
|
|
/* 0239C76C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239C76C */ _t3 = _t2 & 0x00000001u;
|
|
/* 0239C76C */ if (_t3) goto L_0239C778; else goto L_0239C770;
|
|
L_0239C770: ; // 0x239c770
|
|
/* 0239C770 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000003u);
|
|
/* 0239C774 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239C774 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0239C774 */ if (_t5) goto L_0239C778; else goto L_0239C78C;
|
|
L_0239C778: ; // 0x239c778
|
|
/* 0239C778 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 0239C778 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0239C77C */ cpu->lr = cpu->r[0];
|
|
/* 0239C780 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0239C784 */ cpu->r[3] = 0x00000000u;
|
|
/* 0239C788 */ return;
|
|
L_0239C78C: ; // 0x239c78c
|
|
/* 0239C78C */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 0239C78C */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0239C790 */ cpu->lr = cpu->r[0];
|
|
/* 0239C794 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0239C798 */ cpu->r[3] = 0x00000001u;
|
|
/* 0239C79C */ return;
|
|
}
|
|
|
|
// fn_0239C7A0 @ 0x239c7a0
|
|
void Gambit_fn_0239C7A0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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_0239C7A0: ; // 0x239c7a0
|
|
/* 0239C7A0 */ _t0 = cpu->r[1] + 0xFFFFFFA8u;
|
|
/* 0239C7A0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239C7A0 */ cpu->r[1] = _t0;
|
|
/* 0239C7A4 */ /* nop */
|
|
/* 0239C7A8 */ cpu->r[0] = cpu->lr;
|
|
/* 0239C7AC */ _t1 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0239C7AC */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0239C7B0 */ cpu->r[0] = 0x00000000u;
|
|
/* 0239C7B4 */ cpu->r[3] = cpu->r[1] + 0x00000028u;
|
|
/* 0239C7B8 */ cpu->r[27] = cpu->r[0];
|
|
/* 0239C7BC */ Gambit_fn_02019890(cpu);
|
|
/* 0239C7C0 */ _t2 = cpu->r[1] + 0x00000028u;
|
|
/* 0239C7C0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0239C7C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000001u);
|
|
/* 0239C7C8 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239C7C8 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0239C7C8 */ if (_t4) goto L_0239C7CC; else goto L_0239CB4C;
|
|
L_0239C7CC: ; // 0x239c7cc
|
|
/* 0239C7CC */ cpu->r[28] = 0x10080000u;
|
|
/* 0239C7D0 */ cpu->r[25] = 0x101C0000u;
|
|
/* 0239C7D4 */ cpu->r[0] = 0x10080000u;
|
|
/* 0239C7D8 */ cpu->r[28] = cpu->r[28] + 0x00006F34u;
|
|
/* 0239C7DC */ _t5 = cpu->r[25] + 0x00001358u;
|
|
/* 0239C7DC */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0239C7DC */ cpu->r[25] = _t5;
|
|
/* 0239C7E0 */ cpu->r[0] = cpu->r[0] + 0x00007094u;
|
|
/* 0239C7E4 */ _t6 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239C7E4 */ rbrew_write32(cpu->mem, _t6, cpu->r[28]);
|
|
/* 0239C7E8 */ _t7 = cpu->r[1] + 0x00000018u;
|
|
/* 0239C7E8 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 0239C7EC */ _t8 = cpu->r[31] + 0x00000020u;
|
|
/* 0239C7EC */ cpu->r[7] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0239C7F0 */ _t9 = cpu->r[7] + 0x00000014u;
|
|
/* 0239C7F0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0239C7F4 */ cpu->r[24] = cpu->r[31] + 0x0000001Cu;
|
|
/* 0239C7F8 */ cpu->ctr = cpu->r[8];
|
|
/* 0239C7FC */ cpu->r[0] = 0x00000001u;
|
|
/* 0239C800 */ cpu->r[3] = cpu->r[24];
|
|
/* 0239C804 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0239C808 */ _t10 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0239C808 */ cpu->r[7] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0239C80C */ cpu->r[31] = 0x10110000u;
|
|
/* 0239C810 */ _t11 = cpu->r[31] + 0x00007399u;
|
|
/* 0239C810 */ cpu->r[31] = rbrew_read8(cpu->mem, _t11);
|
|
/* 0239C814 */ _t12 = cpu->r[7] + 0x00000000u;
|
|
/* 0239C814 */ cpu->r[9] = rbrew_read8(cpu->mem, _t12);
|
|
/* 0239C818 */ cpu->r[8] = 0x00080000u;
|
|
/* 0239C81C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[31]);
|
|
/* 0239C820 */ cpu->r[29] = 0x00000000u;
|
|
/* 0239C824 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239C824 */ _t14 = _t13 & 0x00000001u;
|
|
/* 0239C824 */ if (_t14) goto L_0239C84C; else goto L_0239C828;
|
|
L_0239C828: ; // 0x239c828
|
|
/* 0239C828 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 0239C82C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[8]);
|
|
/* 0239C830 */ cpu->r[7] = cpu->r[7] + 0x00000001u;
|
|
/* 0239C834 */ _t15 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0239C834 */ _t16 = _t15 & 0x00000001u;
|
|
/* 0239C834 */ if (_t16) goto L_0239C848; else goto L_0239C838;
|
|
L_0239C838: ; // 0x239c838
|
|
/* 0239C838 */ _t17 = cpu->r[7] + 0x00000000u;
|
|
/* 0239C838 */ cpu->r[10] = rbrew_read8(cpu->mem, _t17);
|
|
/* 0239C83C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[31]);
|
|
/* 0239C840 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239C840 */ _t19 = _t18 & 0x00000001u;
|
|
/* 0239C840 */ if (_t19) goto L_0239C844; else goto L_0239C828;
|
|
L_0239C844: ; // 0x239c844
|
|
/* 0239C844 */ goto L_0239C84C;
|
|
L_0239C848: ; // 0x239c848
|
|
/* 0239C848 */ cpu->r[29] = 0x00000000u;
|
|
L_0239C84C: ; // 0x239c84c
|
|
/* 0239C84C */ _t20 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239C84C */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0239C850 */ _t21 = cpu->r[11] + 0x00000014u;
|
|
/* 0239C850 */ cpu->r[12] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0239C854 */ cpu->ctr = cpu->r[12];
|
|
/* 0239C858 */ cpu->r[3] = cpu->r[1] + 0x00000018u;
|
|
/* 0239C85C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0239C860 */ _t22 = cpu->r[1] + 0x00000018u;
|
|
/* 0239C860 */ cpu->r[5] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0239C864 */ _t23 = cpu->r[5] + 0x00000000u;
|
|
/* 0239C864 */ cpu->r[0] = rbrew_read8(cpu->mem, _t23);
|
|
/* 0239C868 */ cpu->r[30] = 0x00000000u;
|
|
/* 0239C86C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 0239C870 */ cpu->r[6] = 0x00080000u;
|
|
/* 0239C874 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239C874 */ _t25 = _t24 & 0x00000001u;
|
|
/* 0239C874 */ if (_t25) goto L_0239C89C; else goto L_0239C878;
|
|
L_0239C878: ; // 0x239c878
|
|
/* 0239C878 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 0239C87C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[6]);
|
|
/* 0239C880 */ cpu->r[5] = cpu->r[5] + 0x00000001u;
|
|
/* 0239C884 */ _t26 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0239C884 */ _t27 = _t26 & 0x00000001u;
|
|
/* 0239C884 */ if (_t27) goto L_0239C898; else goto L_0239C888;
|
|
L_0239C888: ; // 0x239c888
|
|
/* 0239C888 */ _t28 = cpu->r[5] + 0x00000000u;
|
|
/* 0239C888 */ cpu->r[0] = rbrew_read8(cpu->mem, _t28);
|
|
/* 0239C88C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 0239C890 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239C890 */ _t30 = _t29 & 0x00000001u;
|
|
/* 0239C890 */ if (_t30) goto L_0239C894; else goto L_0239C878;
|
|
L_0239C894: ; // 0x239c894
|
|
/* 0239C894 */ goto L_0239C89C;
|
|
L_0239C898: ; // 0x239c898
|
|
/* 0239C898 */ cpu->r[30] = 0x00000000u;
|
|
L_0239C89C: ; // 0x239c89c
|
|
/* 0239C89C */ cpu->r[29] = cpu->r[29] - cpu->r[30];
|
|
/* 0239C89C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0239C8A0 */ cpu->r[22] = 0x00000000u;
|
|
/* 0239C8A4 */ _t31 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0239C8A4 */ _t32 = _t31 & 0x00000001u;
|
|
/* 0239C8A4 */ if (_t32) goto L_0239C9B8; else goto L_0239C8A8;
|
|
L_0239C8A8: ; // 0x239c8a8
|
|
/* 0239C8A8 */ cpu->r[26] = cpu->r[31];
|
|
L_0239C8AC: ; // 0x239c8ac
|
|
/* 0239C8AC */ _t33 = cpu->r[24] + 0x00000000u;
|
|
/* 0239C8AC */ cpu->r[5] = rbrew_read32(cpu->mem, _t33);
|
|
/* 0239C8B0 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0239C8B4 */ _t34 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239C8B4 */ rbrew_write32(cpu->mem, _t34, cpu->r[28]);
|
|
/* 0239C8B8 */ cpu->r[0] = cpu->r[5] + cpu->r[22];
|
|
/* 0239C8BC */ cpu->r[23] = cpu->r[30];
|
|
/* 0239C8C0 */ _t35 = cpu->r[1] + 0x00000008u;
|
|
/* 0239C8C0 */ rbrew_write32(cpu->mem, _t35, cpu->r[0]);
|
|
/* 0239C8C4 */ Gambit_fn_023A2118(cpu);
|
|
/* 0239C8C8 */ _t36 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239C8C8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t36);
|
|
/* 0239C8CC */ _t37 = cpu->r[6] + 0x00000014u;
|
|
/* 0239C8CC */ cpu->r[7] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0239C8D0 */ cpu->ctr = cpu->r[7];
|
|
/* 0239C8D4 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0239C8D8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0239C8DC */ _t38 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239C8DC */ cpu->r[8] = rbrew_read32(cpu->mem, _t38);
|
|
/* 0239C8E0 */ _t39 = cpu->r[8] + 0x00000014u;
|
|
/* 0239C8E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t39);
|
|
/* 0239C8E4 */ cpu->ctr = cpu->r[0];
|
|
/* 0239C8E8 */ _t40 = cpu->r[1] + 0x00000008u;
|
|
/* 0239C8E8 */ cpu->r[21] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0239C8EC */ cpu->r[3] = cpu->r[1] + 0x00000018u;
|
|
/* 0239C8F0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0239C8F4 */ _t41 = cpu->r[1] + 0x00000018u;
|
|
/* 0239C8F4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0239C8F8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[21], cpu->r[10]);
|
|
/* 0239C8FC */ _t42 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239C8FC */ _t43 = _t42 & 0x00000001u;
|
|
/* 0239C8FC */ if (_t43) goto L_0239C9B0; else goto L_0239C900;
|
|
L_0239C900: ; // 0x239c900
|
|
/* 0239C900 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], 0x00000000u);
|
|
/* 0239C904 */ _t44 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0239C904 */ _t45 = _t44 & 0x00000001u;
|
|
/* 0239C904 */ if (_t45) goto L_0239C908; else goto L_0239C9B0;
|
|
L_0239C908: ; // 0x239c908
|
|
/* 0239C908 */ cpu->ctr = cpu->r[23];
|
|
/* 0239C90C */ _t46 = cpu->r[1] + 0x00000008u;
|
|
/* 0239C90C */ cpu->r[12] = rbrew_read32(cpu->mem, _t46);
|
|
L_0239C910: ; // 0x239c910
|
|
/* 0239C910 */ _t47 = cpu->r[12] + 0x00000000u;
|
|
/* 0239C910 */ cpu->r[11] = rbrew_read8(cpu->mem, _t47);
|
|
/* 0239C914 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[26]);
|
|
/* 0239C918 */ _t48 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239C918 */ _t49 = _t48 & 0x00000001u;
|
|
/* 0239C918 */ if (_t49) goto L_0239C91C; else goto L_0239C92C;
|
|
L_0239C91C: ; // 0x239c91c
|
|
/* 0239C91C */ _t50 = cpu->r[10] + 0x00000000u;
|
|
/* 0239C91C */ cpu->r[9] = rbrew_read8(cpu->mem, _t50);
|
|
/* 0239C920 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[26]);
|
|
/* 0239C924 */ _t51 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239C924 */ _t52 = _t51 & 0x00000001u;
|
|
/* 0239C924 */ if (_t52) goto L_0239C9B0; else goto L_0239C928;
|
|
L_0239C928: ; // 0x239c928
|
|
/* 0239C928 */ goto L_0239C958;
|
|
L_0239C92C: ; // 0x239c92c
|
|
/* 0239C92C */ _t53 = cpu->r[10] + 0x00000000u;
|
|
/* 0239C92C */ cpu->r[9] = rbrew_read8(cpu->mem, _t53);
|
|
/* 0239C930 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[26]);
|
|
/* 0239C934 */ _t54 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239C934 */ _t55 = _t54 & 0x00000001u;
|
|
/* 0239C934 */ if (_t55) goto L_0239C958; else goto L_0239C938;
|
|
L_0239C938: ; // 0x239c938
|
|
/* 0239C938 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[11]);
|
|
/* 0239C93C */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239C93C */ _t57 = _t56 & 0x00000001u;
|
|
/* 0239C93C */ if (_t57) goto L_0239C940; else goto L_0239C958;
|
|
L_0239C940: ; // 0x239c940
|
|
/* 0239C940 */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 0239C944 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 0239C948 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0239C948 */ _t58 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0239C948 */ _t59 = _t58 >> (0x00000002u & 31u);
|
|
/* 0239C948 */ _t60 = _t59 & 0x00000001u;
|
|
/* 0239C948 */ if (_t60) goto L_0239C910; else goto L_0239C94C;
|
|
L_0239C94C: ; // 0x239c94c
|
|
/* 0239C94C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[22], 0xFFFFFFFFu);
|
|
/* 0239C950 */ _t61 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239C950 */ _t62 = _t61 & 0x00000001u;
|
|
/* 0239C950 */ if (_t62) goto L_0239C9B8; else goto L_0239C954;
|
|
L_0239C954: ; // 0x239c954
|
|
/* 0239C954 */ goto L_0239CB48;
|
|
L_0239C958: ; // 0x239c958
|
|
/* 0239C958 */ cpu->r[22] = cpu->r[22] + 0x00000001u;
|
|
/* 0239C95C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[22], cpu->r[29]);
|
|
/* 0239C960 */ _t63 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0239C960 */ _t64 = _t63 & 0x00000001u;
|
|
/* 0239C960 */ if (_t64) goto L_0239C964; else goto L_0239C8AC;
|
|
L_0239C964: ; // 0x239c964
|
|
/* 0239C964 */ cpu->r[0] = 0x10080000u;
|
|
/* 0239C968 */ _t65 = cpu->r[1] + 0x00000024u;
|
|
/* 0239C968 */ rbrew_write32(cpu->mem, _t65, cpu->r[28]);
|
|
/* 0239C96C */ cpu->r[0] = cpu->r[0] + 0x0000709Cu;
|
|
/* 0239C970 */ _t66 = cpu->r[25] + 0x00000000u;
|
|
/* 0239C970 */ cpu->r[30] = rbrew_read32(cpu->mem, _t66);
|
|
/* 0239C974 */ _t67 = cpu->r[1] + 0x00000020u;
|
|
/* 0239C974 */ rbrew_write32(cpu->mem, _t67, cpu->r[0]);
|
|
/* 0239C978 */ _t68 = cpu->r[30] + 0x00000020u;
|
|
/* 0239C978 */ cpu->r[11] = rbrew_read32(cpu->mem, _t68);
|
|
/* 0239C97C */ _t69 = cpu->r[11] + 0x00000014u;
|
|
/* 0239C97C */ cpu->r[12] = rbrew_read32(cpu->mem, _t69);
|
|
/* 0239C980 */ cpu->r[25] = cpu->r[30] + 0x0000001Cu;
|
|
/* 0239C984 */ cpu->ctr = cpu->r[12];
|
|
/* 0239C988 */ cpu->r[3] = cpu->r[25];
|
|
/* 0239C98C */ cpu->r[0] = 0x00000001u;
|
|
/* 0239C990 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0239C994 */ _t70 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0239C994 */ cpu->r[10] = rbrew_read32(cpu->mem, _t70);
|
|
/* 0239C998 */ _t71 = cpu->r[10] + 0x00000000u;
|
|
/* 0239C998 */ cpu->r[4] = rbrew_read8(cpu->mem, _t71);
|
|
/* 0239C99C */ cpu->r[30] = 0x00000000u;
|
|
/* 0239C9A0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[31]);
|
|
/* 0239C9A4 */ cpu->r[0] = 0x00080000u;
|
|
/* 0239C9A8 */ _t72 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239C9A8 */ _t73 = _t72 & 0x00000001u;
|
|
/* 0239C9A8 */ if (_t73) goto L_0239C9AC; else goto L_0239CA00;
|
|
L_0239C9AC: ; // 0x239c9ac
|
|
/* 0239C9AC */ goto L_0239CA24;
|
|
L_0239C9B0: ; // 0x239c9b0
|
|
/* 0239C9B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[22], 0xFFFFFFFFu);
|
|
/* 0239C9B4 */ _t74 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239C9B4 */ _t75 = _t74 & 0x00000001u;
|
|
/* 0239C9B4 */ if (_t75) goto L_0239C9B8; else goto L_0239CB48;
|
|
L_0239C9B8: ; // 0x239c9b8
|
|
/* 0239C9B8 */ cpu->r[0] = 0x10080000u;
|
|
/* 0239C9BC */ _t76 = cpu->r[1] + 0x00000024u;
|
|
/* 0239C9BC */ rbrew_write32(cpu->mem, _t76, cpu->r[28]);
|
|
/* 0239C9C0 */ cpu->r[0] = cpu->r[0] + 0x0000709Cu;
|
|
/* 0239C9C4 */ _t77 = cpu->r[25] + 0x00000000u;
|
|
/* 0239C9C4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t77);
|
|
/* 0239C9C8 */ _t78 = cpu->r[1] + 0x00000020u;
|
|
/* 0239C9C8 */ rbrew_write32(cpu->mem, _t78, cpu->r[0]);
|
|
/* 0239C9CC */ _t79 = cpu->r[30] + 0x00000020u;
|
|
/* 0239C9CC */ cpu->r[11] = rbrew_read32(cpu->mem, _t79);
|
|
/* 0239C9D0 */ _t80 = cpu->r[11] + 0x00000014u;
|
|
/* 0239C9D0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t80);
|
|
/* 0239C9D4 */ cpu->r[25] = cpu->r[30] + 0x0000001Cu;
|
|
/* 0239C9D8 */ cpu->ctr = cpu->r[12];
|
|
/* 0239C9DC */ cpu->r[3] = cpu->r[25];
|
|
/* 0239C9E0 */ cpu->r[0] = 0x00000001u;
|
|
/* 0239C9E4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0239C9E8 */ _t81 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0239C9E8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t81);
|
|
/* 0239C9EC */ _t82 = cpu->r[10] + 0x00000000u;
|
|
/* 0239C9EC */ cpu->r[4] = rbrew_read8(cpu->mem, _t82);
|
|
/* 0239C9F0 */ cpu->r[30] = 0x00000000u;
|
|
/* 0239C9F4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[31]);
|
|
/* 0239C9F8 */ cpu->r[0] = 0x00080000u;
|
|
/* 0239C9FC */ _t83 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239C9FC */ _t84 = _t83 & 0x00000001u;
|
|
/* 0239C9FC */ if (_t84) goto L_0239CA24; else goto L_0239CA00;
|
|
L_0239CA00: ; // 0x239ca00
|
|
/* 0239CA00 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 0239CA04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[0]);
|
|
/* 0239CA08 */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 0239CA0C */ _t85 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0239CA0C */ _t86 = _t85 & 0x00000001u;
|
|
/* 0239CA0C */ if (_t86) goto L_0239CA20; else goto L_0239CA10;
|
|
L_0239CA10: ; // 0x239ca10
|
|
/* 0239CA10 */ _t87 = cpu->r[10] + 0x00000000u;
|
|
/* 0239CA10 */ cpu->r[5] = rbrew_read8(cpu->mem, _t87);
|
|
/* 0239CA14 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[31]);
|
|
/* 0239CA18 */ _t88 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239CA18 */ _t89 = _t88 & 0x00000001u;
|
|
/* 0239CA18 */ if (_t89) goto L_0239CA1C; else goto L_0239CA00;
|
|
L_0239CA1C: ; // 0x239ca1c
|
|
/* 0239CA1C */ goto L_0239CA24;
|
|
L_0239CA20: ; // 0x239ca20
|
|
/* 0239CA20 */ cpu->r[30] = 0x00000000u;
|
|
L_0239CA24: ; // 0x239ca24
|
|
/* 0239CA24 */ _t90 = cpu->r[1] + 0x00000024u;
|
|
/* 0239CA24 */ cpu->r[6] = rbrew_read32(cpu->mem, _t90);
|
|
/* 0239CA28 */ _t91 = cpu->r[6] + 0x00000014u;
|
|
/* 0239CA28 */ cpu->r[7] = rbrew_read32(cpu->mem, _t91);
|
|
/* 0239CA2C */ cpu->ctr = cpu->r[7];
|
|
/* 0239CA30 */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 0239CA34 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0239CA38 */ _t92 = cpu->r[1] + 0x00000020u;
|
|
/* 0239CA38 */ cpu->r[7] = rbrew_read32(cpu->mem, _t92);
|
|
/* 0239CA3C */ _t93 = cpu->r[7] + 0x00000000u;
|
|
/* 0239CA3C */ cpu->r[8] = rbrew_read8(cpu->mem, _t93);
|
|
/* 0239CA40 */ cpu->r[9] = 0x00080000u;
|
|
/* 0239CA44 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[31]);
|
|
/* 0239CA48 */ cpu->r[29] = 0x00000000u;
|
|
/* 0239CA4C */ _t94 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239CA4C */ _t95 = _t94 & 0x00000001u;
|
|
/* 0239CA4C */ if (_t95) goto L_0239CA74; else goto L_0239CA50;
|
|
L_0239CA50: ; // 0x239ca50
|
|
/* 0239CA50 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 0239CA54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[9]);
|
|
/* 0239CA58 */ cpu->r[7] = cpu->r[7] + 0x00000001u;
|
|
/* 0239CA5C */ _t96 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0239CA5C */ _t97 = _t96 & 0x00000001u;
|
|
/* 0239CA5C */ if (_t97) goto L_0239CA70; else goto L_0239CA60;
|
|
L_0239CA60: ; // 0x239ca60
|
|
/* 0239CA60 */ _t98 = cpu->r[7] + 0x00000000u;
|
|
/* 0239CA60 */ cpu->r[0] = rbrew_read8(cpu->mem, _t98);
|
|
/* 0239CA64 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 0239CA68 */ _t99 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239CA68 */ _t100 = _t99 & 0x00000001u;
|
|
/* 0239CA68 */ if (_t100) goto L_0239CA6C; else goto L_0239CA50;
|
|
L_0239CA6C: ; // 0x239ca6c
|
|
/* 0239CA6C */ goto L_0239CA74;
|
|
L_0239CA70: ; // 0x239ca70
|
|
/* 0239CA70 */ cpu->r[29] = 0x00000000u;
|
|
L_0239CA74: ; // 0x239ca74
|
|
/* 0239CA74 */ cpu->r[30] = cpu->r[30] - cpu->r[29];
|
|
/* 0239CA74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0239CA78 */ cpu->r[23] = 0x00000000u;
|
|
/* 0239CA7C */ _t101 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0239CA7C */ _t102 = _t101 & 0x00000001u;
|
|
/* 0239CA7C */ if (_t102) goto L_0239CB4C; else goto L_0239CA80;
|
|
L_0239CA80: ; // 0x239ca80
|
|
/* 0239CA80 */ _t103 = cpu->r[25] + 0x00000000u;
|
|
/* 0239CA80 */ cpu->r[11] = rbrew_read32(cpu->mem, _t103);
|
|
/* 0239CA84 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 0239CA88 */ _t104 = cpu->r[1] + 0x00000014u;
|
|
/* 0239CA88 */ rbrew_write32(cpu->mem, _t104, cpu->r[28]);
|
|
/* 0239CA8C */ cpu->r[4] = cpu->r[11] + cpu->r[23];
|
|
/* 0239CA90 */ cpu->r[26] = cpu->r[29];
|
|
/* 0239CA94 */ _t105 = cpu->r[1] + 0x00000010u;
|
|
/* 0239CA94 */ rbrew_write32(cpu->mem, _t105, cpu->r[4]);
|
|
/* 0239CA98 */ Gambit_fn_023A2118(cpu);
|
|
/* 0239CA9C */ _t106 = cpu->r[1] + 0x00000014u;
|
|
/* 0239CA9C */ cpu->r[12] = rbrew_read32(cpu->mem, _t106);
|
|
/* 0239CAA0 */ _t107 = cpu->r[12] + 0x00000014u;
|
|
/* 0239CAA0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t107);
|
|
/* 0239CAA4 */ cpu->ctr = cpu->r[4];
|
|
/* 0239CAA8 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 0239CAAC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0239CAB0 */ _t108 = cpu->r[1] + 0x00000024u;
|
|
/* 0239CAB0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t108);
|
|
/* 0239CAB4 */ _t109 = cpu->r[5] + 0x00000014u;
|
|
/* 0239CAB4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t109);
|
|
/* 0239CAB8 */ cpu->ctr = cpu->r[6];
|
|
/* 0239CABC */ _t110 = cpu->r[1] + 0x00000010u;
|
|
/* 0239CABC */ cpu->r[24] = rbrew_read32(cpu->mem, _t110);
|
|
/* 0239CAC0 */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 0239CAC4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0239CAC8 */ _t111 = cpu->r[1] + 0x00000020u;
|
|
/* 0239CAC8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t111);
|
|
/* 0239CACC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[24], cpu->r[11]);
|
|
/* 0239CAD0 */ _t112 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239CAD0 */ _t113 = _t112 & 0x00000001u;
|
|
/* 0239CAD0 */ if (_t113) goto L_0239CB40; else goto L_0239CAD4;
|
|
L_0239CAD4: ; // 0x239cad4
|
|
/* 0239CAD4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 0239CAD8 */ _t114 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0239CAD8 */ _t115 = _t114 & 0x00000001u;
|
|
/* 0239CAD8 */ if (_t115) goto L_0239CADC; else goto L_0239CB40;
|
|
L_0239CADC: ; // 0x239cadc
|
|
/* 0239CADC */ cpu->ctr = cpu->r[26];
|
|
/* 0239CAE0 */ _t116 = cpu->r[1] + 0x00000010u;
|
|
/* 0239CAE0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t116);
|
|
L_0239CAE4: ; // 0x239cae4
|
|
/* 0239CAE4 */ _t117 = cpu->r[10] + 0x00000000u;
|
|
/* 0239CAE4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t117);
|
|
/* 0239CAE8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 0239CAEC */ _t118 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239CAEC */ _t119 = _t118 & 0x00000001u;
|
|
/* 0239CAEC */ if (_t119) goto L_0239CAF0; else goto L_0239CB00;
|
|
L_0239CAF0: ; // 0x239caf0
|
|
/* 0239CAF0 */ _t120 = cpu->r[11] + 0x00000000u;
|
|
/* 0239CAF0 */ cpu->r[8] = rbrew_read8(cpu->mem, _t120);
|
|
/* 0239CAF4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[31]);
|
|
/* 0239CAF8 */ _t121 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239CAF8 */ _t122 = _t121 & 0x00000001u;
|
|
/* 0239CAF8 */ if (_t122) goto L_0239CB40; else goto L_0239CAFC;
|
|
L_0239CAFC: ; // 0x239cafc
|
|
/* 0239CAFC */ goto L_0239CB2C;
|
|
L_0239CB00: ; // 0x239cb00
|
|
/* 0239CB00 */ _t123 = cpu->r[11] + 0x00000000u;
|
|
/* 0239CB00 */ cpu->r[12] = rbrew_read8(cpu->mem, _t123);
|
|
/* 0239CB04 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[31]);
|
|
/* 0239CB08 */ _t124 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239CB08 */ _t125 = _t124 & 0x00000001u;
|
|
/* 0239CB08 */ if (_t125) goto L_0239CB2C; else goto L_0239CB0C;
|
|
L_0239CB0C: ; // 0x239cb0c
|
|
/* 0239CB0C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[0]);
|
|
/* 0239CB10 */ _t126 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239CB10 */ _t127 = _t126 & 0x00000001u;
|
|
/* 0239CB10 */ if (_t127) goto L_0239CB14; else goto L_0239CB2C;
|
|
L_0239CB14: ; // 0x239cb14
|
|
/* 0239CB14 */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 0239CB18 */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 0239CB1C */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0239CB1C */ _t128 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0239CB1C */ _t129 = _t128 >> (0x00000002u & 31u);
|
|
/* 0239CB1C */ _t130 = _t129 & 0x00000001u;
|
|
/* 0239CB1C */ if (_t130) goto L_0239CAE4; else goto L_0239CB20;
|
|
L_0239CB20: ; // 0x239cb20
|
|
/* 0239CB20 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], 0xFFFFFFFFu);
|
|
/* 0239CB24 */ _t131 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239CB24 */ _t132 = _t131 & 0x00000001u;
|
|
/* 0239CB24 */ if (_t132) goto L_0239CB4C; else goto L_0239CB28;
|
|
L_0239CB28: ; // 0x239cb28
|
|
/* 0239CB28 */ goto L_0239CB48;
|
|
L_0239CB2C: ; // 0x239cb2c
|
|
/* 0239CB2C */ cpu->r[23] = cpu->r[23] + 0x00000001u;
|
|
/* 0239CB30 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], cpu->r[30]);
|
|
/* 0239CB34 */ _t133 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0239CB34 */ _t134 = _t133 & 0x00000001u;
|
|
/* 0239CB34 */ if (_t134) goto L_0239CB38; else goto L_0239CA80;
|
|
L_0239CB38: ; // 0x239cb38
|
|
/* 0239CB38 */ cpu->r[3] = rbrew_rlwinm(cpu->r[27], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 0239CB3C */ goto L_0239CB50;
|
|
L_0239CB40: ; // 0x239cb40
|
|
/* 0239CB40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], 0xFFFFFFFFu);
|
|
/* 0239CB44 */ _t135 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239CB44 */ _t136 = _t135 & 0x00000001u;
|
|
/* 0239CB44 */ if (_t136) goto L_0239CB4C; else goto L_0239CB48;
|
|
L_0239CB48: ; // 0x239cb48
|
|
/* 0239CB48 */ cpu->r[27] = 0x00000001u;
|
|
L_0239CB4C: ; // 0x239cb4c
|
|
/* 0239CB4C */ cpu->r[3] = rbrew_rlwinm(cpu->r[27], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
L_0239CB50: ; // 0x239cb50
|
|
/* 0239CB50 */ /* nop */
|
|
/* 0239CB54 */ _t137 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0239CB54 */ cpu->r[0] = rbrew_read32(cpu->mem, _t137);
|
|
/* 0239CB58 */ cpu->lr = cpu->r[0];
|
|
/* 0239CB5C */ cpu->r[1] = cpu->r[1] + 0x00000058u;
|
|
/* 0239CB60 */ return;
|
|
}
|
|
|
|
// fn_0239CB64 @ 0x239cb64
|
|
void Gambit_fn_0239CB64(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106, _t107, _t108, _t109, _t110, _t111, _t112, _t113, _t114, _t115, _t116, _t117, _t118, _t119, _t120, _t121, _t122, _t123, _t124, _t125, _t126, _t127, _t128, _t129, _t130, _t131, _t132, _t133, _t134, _t135, _t136, _t137, _t138, _t139, _t140, _t141, _t142;
|
|
|
|
L_0239CB64: ; // 0x239cb64
|
|
/* 0239CB64 */ _t0 = cpu->r[1] + 0xFFFFFE08u;
|
|
/* 0239CB64 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239CB64 */ cpu->r[1] = _t0;
|
|
/* 0239CB68 */ /* nop */
|
|
/* 0239CB6C */ cpu->r[0] = cpu->lr;
|
|
/* 0239CB70 */ cpu->r[26] = 0x10080000u;
|
|
/* 0239CB74 */ _t1 = cpu->r[1] + 0x000001FCu;
|
|
/* 0239CB74 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0239CB78 */ cpu->r[29] = cpu->r[4];
|
|
/* 0239CB7C */ cpu->r[26] = cpu->r[26] + 0x00006F7Cu;
|
|
/* 0239CB80 */ _t2 = cpu->r[1] + 0x00000034u;
|
|
/* 0239CB80 */ rbrew_write32(cpu->mem, _t2, cpu->r[26]);
|
|
/* 0239CB84 */ cpu->r[0] = 0x00000080u;
|
|
/* 0239CB88 */ _t3 = cpu->r[1] + 0x00000038u;
|
|
/* 0239CB88 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0239CB8C */ cpu->r[27] = 0x10080000u;
|
|
/* 0239CB90 */ cpu->r[9] = cpu->r[1] + 0x0000003Cu;
|
|
/* 0239CB94 */ _t4 = cpu->r[1] + 0x00000030u;
|
|
/* 0239CB94 */ rbrew_write32(cpu->mem, _t4, cpu->r[9]);
|
|
/* 0239CB98 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0239CB9C */ cpu->r[27] = cpu->r[27] + 0x00006F34u;
|
|
/* 0239CBA0 */ cpu->r[28] = cpu->r[3];
|
|
/* 0239CBA4 */ cpu->r[30] = 0x10110000u;
|
|
/* 0239CBA8 */ _t5 = cpu->r[30] + 0x00007399u;
|
|
/* 0239CBA8 */ cpu->r[30] = rbrew_read8(cpu->mem, _t5);
|
|
/* 0239CBAC */ _t6 = cpu->r[12] + 0x00006000u;
|
|
/* 0239CBAC */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0239CBB0 */ cpu->r[0] = 0x10080000u;
|
|
/* 0239CBB4 */ _t7 = cpu->r[1] + 0x000000BBu;
|
|
/* 0239CBB4 */ rbrew_write8(cpu->mem, _t7, (uint8_t)cpu->r[30]);
|
|
/* 0239CBB8 */ cpu->r[0] = cpu->r[0] + 0x000070ACu;
|
|
/* 0239CBBC */ cpu->r[25] = 0x10080000u;
|
|
/* 0239CBC0 */ _t8 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0239CBC0 */ rbrew_write8(cpu->mem, _t8, (uint8_t)cpu->r[30]);
|
|
/* 0239CBC4 */ _t9 = cpu->r[12] + 0x00000254u;
|
|
/* 0239CBC4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0239CBC8 */ cpu->r[25] = cpu->r[25] + 0x00006F64u;
|
|
/* 0239CBCC */ _t10 = cpu->r[1] + 0x00000020u;
|
|
/* 0239CBCC */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 0239CBD0 */ cpu->r[4] = cpu->r[1] + 0x00000020u;
|
|
/* 0239CBD4 */ _t11 = cpu->r[1] + 0x00000024u;
|
|
/* 0239CBD4 */ rbrew_write32(cpu->mem, _t11, cpu->r[27]);
|
|
/* 0239CBD8 */ Gambit_fn_020ECD78(cpu);
|
|
/* 0239CBDC */ _t12 = cpu->r[3] + 0x00000008u;
|
|
/* 0239CBDC */ cpu->r[5] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0239CBE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 0239CBE4 */ _t13 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0239CBE4 */ _t14 = _t13 & 0x00000001u;
|
|
/* 0239CBE4 */ if (_t14) goto L_0239CBE8; else goto L_0239CC1C;
|
|
L_0239CBE8: ; // 0x239cbe8
|
|
/* 0239CBE8 */ _t15 = cpu->r[3] + 0x00000004u;
|
|
/* 0239CBE8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0239CBEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0239CBF0 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239CBF0 */ _t17 = _t16 & 0x00000001u;
|
|
/* 0239CBF0 */ if (_t17) goto L_0239CC1C; else goto L_0239CBF4;
|
|
L_0239CBF4: ; // 0x239cbf4
|
|
/* 0239CBF4 */ _t18 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0239CBF4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0239CBF8 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239CBF8 */ rbrew_write32(cpu->mem, _t19, cpu->r[27]);
|
|
/* 0239CBFC */ cpu->r[12] = cpu->r[0] - cpu->r[6];
|
|
/* 0239CC00 */ _t20 = cpu->r[12] + 0x00000030u;
|
|
/* 0239CC00 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0239CC04 */ cpu->r[3] = cpu->r[28];
|
|
/* 0239CC08 */ _t21 = cpu->r[1] + 0x00000008u;
|
|
/* 0239CC08 */ rbrew_write32(cpu->mem, _t21, cpu->r[0]);
|
|
/* 0239CC0C */ Gambit_fn_0239C7A0(cpu);
|
|
/* 0239CC10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239CC14 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239CC14 */ _t23 = _t22 & 0x00000001u;
|
|
/* 0239CC14 */ if (_t23) goto L_0239CDD4; else goto L_0239CC18;
|
|
L_0239CC18: ; // 0x239cc18
|
|
/* 0239CC18 */ goto L_0239CC3C;
|
|
L_0239CC1C: ; // 0x239cc1c
|
|
/* 0239CC1C */ cpu->r[12] = 0x00000000u;
|
|
/* 0239CC20 */ _t24 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239CC20 */ rbrew_write32(cpu->mem, _t24, cpu->r[27]);
|
|
/* 0239CC24 */ _t25 = cpu->r[12] + 0x00000030u;
|
|
/* 0239CC24 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0239CC28 */ cpu->r[3] = cpu->r[28];
|
|
/* 0239CC2C */ _t26 = cpu->r[1] + 0x00000008u;
|
|
/* 0239CC2C */ rbrew_write32(cpu->mem, _t26, cpu->r[0]);
|
|
/* 0239CC30 */ Gambit_fn_0239C7A0(cpu);
|
|
/* 0239CC34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239CC38 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239CC38 */ _t28 = _t27 & 0x00000001u;
|
|
/* 0239CC38 */ if (_t28) goto L_0239CDD4; else goto L_0239CC3C;
|
|
L_0239CC3C: ; // 0x239cc3c
|
|
/* 0239CC3C */ _t29 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239CC3C */ cpu->r[8] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0239CC40 */ _t30 = cpu->r[8] + 0x00000014u;
|
|
/* 0239CC40 */ cpu->r[9] = rbrew_read32(cpu->mem, _t30);
|
|
/* 0239CC44 */ cpu->ctr = cpu->r[9];
|
|
/* 0239CC48 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0239CC4C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0239CC50 */ _t31 = cpu->r[1] + 0x00000008u;
|
|
/* 0239CC50 */ cpu->r[6] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0239CC54 */ cpu->r[7] = cpu->r[6];
|
|
/* 0239CC58 */ _t32 = cpu->r[7] + 0x00000000u;
|
|
/* 0239CC58 */ cpu->r[10] = rbrew_read8(cpu->mem, _t32);
|
|
/* 0239CC5C */ cpu->r[5] = 0x00000000u;
|
|
/* 0239CC60 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[30]);
|
|
/* 0239CC64 */ cpu->r[8] = 0x00080000u;
|
|
/* 0239CC68 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239CC68 */ _t34 = _t33 & 0x00000001u;
|
|
/* 0239CC68 */ if (_t34) goto L_0239CC88; else goto L_0239CC6C;
|
|
L_0239CC6C: ; // 0x239cc6c
|
|
/* 0239CC6C */ cpu->r[5] = cpu->r[5] + 0x00000001u;
|
|
/* 0239CC70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], cpu->r[8]);
|
|
/* 0239CC74 */ cpu->r[7] = cpu->r[7] + 0x00000001u;
|
|
/* 0239CC78 */ _t35 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0239CC78 */ _t36 = _t35 & 0x00000001u;
|
|
/* 0239CC78 */ if (_t36) goto L_0239CC90; else goto L_0239CC7C;
|
|
L_0239CC7C: ; // 0x239cc7c
|
|
/* 0239CC7C */ _t37 = cpu->r[7] + 0x00000000u;
|
|
/* 0239CC7C */ cpu->r[0] = rbrew_read8(cpu->mem, _t37);
|
|
/* 0239CC80 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]);
|
|
/* 0239CC84 */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239CC84 */ _t39 = _t38 & 0x00000001u;
|
|
/* 0239CC84 */ if (_t39) goto L_0239CC88; else goto L_0239CC6C;
|
|
L_0239CC88: ; // 0x239cc88
|
|
/* 0239CC88 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000004u);
|
|
/* 0239CC8C */ _t40 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0239CC8C */ _t41 = _t40 & 0x00000001u;
|
|
/* 0239CC8C */ if (_t41) goto L_0239CC90; else goto L_0239CD34;
|
|
L_0239CC90: ; // 0x239cc90
|
|
/* 0239CC90 */ cpu->r[11] = 0x101F0000u;
|
|
/* 0239CC94 */ _t42 = cpu->r[1] + 0x00000014u;
|
|
/* 0239CC94 */ rbrew_write32(cpu->mem, _t42, cpu->r[27]);
|
|
/* 0239CC98 */ _t43 = cpu->r[11] + 0x000066E8u;
|
|
/* 0239CC98 */ cpu->r[11] = rbrew_read32(cpu->mem, _t43);
|
|
/* 0239CC9C */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 0239CCA0 */ _t44 = cpu->r[1] + 0x00000010u;
|
|
/* 0239CCA0 */ rbrew_write32(cpu->mem, _t44, cpu->r[11]);
|
|
/* 0239CCA4 */ Gambit_fn_023A2118(cpu);
|
|
/* 0239CCA8 */ cpu->r[4] = 0x10080000u;
|
|
/* 0239CCAC */ _t45 = cpu->r[1] + 0x00000010u;
|
|
/* 0239CCAC */ cpu->r[5] = rbrew_read32(cpu->mem, _t45);
|
|
/* 0239CCB0 */ cpu->r[3] = cpu->r[1] + 0x00000030u;
|
|
/* 0239CCB4 */ cpu->r[4] = cpu->r[4] + 0x000070BCu;
|
|
/* 0239CCB8 */ _t46 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 0239CCB8 */ _t47 = _t46 & 0x00000001u;
|
|
/* 0239CCB8 */ if (_t47) goto L_0239CCBC; // else: addr-0 trap, fall-through
|
|
L_0239CCBC: ; // 0x239ccbc
|
|
/* 0239CCBC */ Gambit_fn_0282A5F4(cpu);
|
|
/* 0239CCC0 */ _t48 = cpu->r[1] + 0x00000034u;
|
|
/* 0239CCC0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t48);
|
|
/* 0239CCC4 */ _t49 = cpu->r[10] + 0x00000014u;
|
|
/* 0239CCC4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t49);
|
|
/* 0239CCC8 */ cpu->ctr = cpu->r[11];
|
|
/* 0239CCCC */ cpu->r[3] = cpu->r[1] + 0x00000030u;
|
|
/* 0239CCD0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0239CCD4 */ cpu->r[4] = 0x10080000u;
|
|
/* 0239CCD8 */ _t50 = cpu->r[1] + 0x00000030u;
|
|
/* 0239CCD8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t50);
|
|
/* 0239CCDC */ cpu->r[4] = cpu->r[4] + 0x000070C8u;
|
|
/* 0239CCE0 */ cpu->r[3] = cpu->r[1] + 0x00000148u;
|
|
/* 0239CCE4 */ _t51 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 0239CCE4 */ _t52 = _t51 & 0x00000001u;
|
|
/* 0239CCE4 */ if (_t52) goto L_0239CCE8; // else: addr-0 trap, fall-through
|
|
L_0239CCE8: ; // 0x239cce8
|
|
/* 0239CCE8 */ Gambit_fn_023A2174(cpu);
|
|
/* 0239CCEC */ _t53 = cpu->r[1] + 0x00000147u;
|
|
/* 0239CCEC */ rbrew_write8(cpu->mem, _t53, (uint8_t)cpu->r[30]);
|
|
/* 0239CCF0 */ cpu->r[24] = cpu->r[1] + 0x000000C8u;
|
|
/* 0239CCF4 */ _t54 = cpu->r[1] + 0x000000C0u;
|
|
/* 0239CCF4 */ rbrew_write32(cpu->mem, _t54, cpu->r[25]);
|
|
/* 0239CCF8 */ cpu->r[5] = 0x00000080u;
|
|
/* 0239CCFC */ _t55 = cpu->r[1] + 0x000000BCu;
|
|
/* 0239CCFC */ rbrew_write32(cpu->mem, _t55, cpu->r[24]);
|
|
/* 0239CD00 */ _t56 = cpu->r[1] + 0x000000C4u;
|
|
/* 0239CD00 */ rbrew_write32(cpu->mem, _t56, cpu->r[5]);
|
|
/* 0239CD04 */ _t57 = cpu->r[3] + 0x00000004u;
|
|
/* 0239CD04 */ cpu->r[6] = rbrew_read32(cpu->mem, _t57);
|
|
/* 0239CD08 */ _t58 = cpu->r[6] + 0x00000014u;
|
|
/* 0239CD08 */ cpu->r[7] = rbrew_read32(cpu->mem, _t58);
|
|
/* 0239CD0C */ cpu->ctr = cpu->r[7];
|
|
/* 0239CD10 */ cpu->r[25] = cpu->r[3];
|
|
/* 0239CD14 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0239CD18 */ _t59 = cpu->r[25] + 0x00000000u;
|
|
/* 0239CD18 */ cpu->r[11] = rbrew_read32(cpu->mem, _t59);
|
|
/* 0239CD1C */ _t60 = cpu->r[11] + 0x00000000u;
|
|
/* 0239CD1C */ cpu->r[8] = rbrew_read8(cpu->mem, _t60);
|
|
/* 0239CD20 */ cpu->r[31] = 0x00000000u;
|
|
/* 0239CD24 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[30]);
|
|
/* 0239CD28 */ cpu->r[0] = 0x00080000u;
|
|
/* 0239CD2C */ _t61 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239CD2C */ _t62 = _t61 & 0x00000001u;
|
|
/* 0239CD2C */ if (_t62) goto L_0239CD30; else goto L_0239CED4;
|
|
L_0239CD30: ; // 0x239cd30
|
|
/* 0239CD30 */ goto L_0239CEF8;
|
|
L_0239CD34: ; // 0x239cd34
|
|
/* 0239CD34 */ _t63 = cpu->r[1] + 0x00000014u;
|
|
/* 0239CD34 */ rbrew_write32(cpu->mem, _t63, cpu->r[27]);
|
|
/* 0239CD38 */ cpu->r[11] = cpu->r[6] + 0x00000004u;
|
|
/* 0239CD3C */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 0239CD40 */ _t64 = cpu->r[1] + 0x00000010u;
|
|
/* 0239CD40 */ rbrew_write32(cpu->mem, _t64, cpu->r[11]);
|
|
/* 0239CD44 */ Gambit_fn_023A2118(cpu);
|
|
/* 0239CD48 */ cpu->r[4] = 0x10080000u;
|
|
/* 0239CD4C */ _t65 = cpu->r[1] + 0x00000010u;
|
|
/* 0239CD4C */ cpu->r[5] = rbrew_read32(cpu->mem, _t65);
|
|
/* 0239CD50 */ cpu->r[3] = cpu->r[1] + 0x00000030u;
|
|
/* 0239CD54 */ cpu->r[4] = cpu->r[4] + 0x000070BCu;
|
|
/* 0239CD58 */ _t66 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 0239CD58 */ _t67 = _t66 & 0x00000001u;
|
|
/* 0239CD58 */ if (_t67) goto L_0239CD5C; // else: addr-0 trap, fall-through
|
|
L_0239CD5C: ; // 0x239cd5c
|
|
/* 0239CD5C */ Gambit_fn_0282A5F4(cpu);
|
|
/* 0239CD60 */ _t68 = cpu->r[1] + 0x00000034u;
|
|
/* 0239CD60 */ cpu->r[10] = rbrew_read32(cpu->mem, _t68);
|
|
/* 0239CD64 */ _t69 = cpu->r[10] + 0x00000014u;
|
|
/* 0239CD64 */ cpu->r[11] = rbrew_read32(cpu->mem, _t69);
|
|
/* 0239CD68 */ cpu->ctr = cpu->r[11];
|
|
/* 0239CD6C */ cpu->r[3] = cpu->r[1] + 0x00000030u;
|
|
/* 0239CD70 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0239CD74 */ cpu->r[4] = 0x10080000u;
|
|
/* 0239CD78 */ _t70 = cpu->r[1] + 0x00000030u;
|
|
/* 0239CD78 */ cpu->r[5] = rbrew_read32(cpu->mem, _t70);
|
|
/* 0239CD7C */ cpu->r[4] = cpu->r[4] + 0x000070C8u;
|
|
/* 0239CD80 */ cpu->r[3] = cpu->r[1] + 0x00000148u;
|
|
/* 0239CD84 */ _t71 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 0239CD84 */ _t72 = _t71 & 0x00000001u;
|
|
/* 0239CD84 */ if (_t72) goto L_0239CD88; // else: addr-0 trap, fall-through
|
|
L_0239CD88: ; // 0x239cd88
|
|
/* 0239CD88 */ Gambit_fn_023A2174(cpu);
|
|
/* 0239CD8C */ _t73 = cpu->r[1] + 0x00000147u;
|
|
/* 0239CD8C */ rbrew_write8(cpu->mem, _t73, (uint8_t)cpu->r[30]);
|
|
/* 0239CD90 */ cpu->r[24] = cpu->r[1] + 0x000000C8u;
|
|
/* 0239CD94 */ _t74 = cpu->r[1] + 0x000000C0u;
|
|
/* 0239CD94 */ rbrew_write32(cpu->mem, _t74, cpu->r[25]);
|
|
/* 0239CD98 */ cpu->r[5] = 0x00000080u;
|
|
/* 0239CD9C */ _t75 = cpu->r[1] + 0x000000BCu;
|
|
/* 0239CD9C */ rbrew_write32(cpu->mem, _t75, cpu->r[24]);
|
|
/* 0239CDA0 */ _t76 = cpu->r[1] + 0x000000C4u;
|
|
/* 0239CDA0 */ rbrew_write32(cpu->mem, _t76, cpu->r[5]);
|
|
/* 0239CDA4 */ _t77 = cpu->r[3] + 0x00000004u;
|
|
/* 0239CDA4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t77);
|
|
/* 0239CDA8 */ _t78 = cpu->r[6] + 0x00000014u;
|
|
/* 0239CDA8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t78);
|
|
/* 0239CDAC */ cpu->ctr = cpu->r[7];
|
|
/* 0239CDB0 */ cpu->r[25] = cpu->r[3];
|
|
/* 0239CDB4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0239CDB8 */ _t79 = cpu->r[25] + 0x00000000u;
|
|
/* 0239CDB8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t79);
|
|
/* 0239CDBC */ _t80 = cpu->r[11] + 0x00000000u;
|
|
/* 0239CDBC */ cpu->r[8] = rbrew_read8(cpu->mem, _t80);
|
|
/* 0239CDC0 */ cpu->r[31] = 0x00000000u;
|
|
/* 0239CDC4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[30]);
|
|
/* 0239CDC8 */ cpu->r[0] = 0x00080000u;
|
|
/* 0239CDCC */ _t81 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239CDCC */ _t82 = _t81 & 0x00000001u;
|
|
/* 0239CDCC */ if (_t82) goto L_0239CEF8; else goto L_0239CDD0;
|
|
L_0239CDD0: ; // 0x239cdd0
|
|
/* 0239CDD0 */ goto L_0239CED4;
|
|
L_0239CDD4: ; // 0x239cdd4
|
|
/* 0239CDD4 */ _t83 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239CDD4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t83);
|
|
/* 0239CDD8 */ _t84 = cpu->r[12] + 0x00000014u;
|
|
/* 0239CDD8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t84);
|
|
/* 0239CDDC */ cpu->ctr = cpu->r[5];
|
|
/* 0239CDE0 */ _t85 = cpu->r[1] + 0x00000030u;
|
|
/* 0239CDE0 */ cpu->r[24] = rbrew_read32(cpu->mem, _t85);
|
|
/* 0239CDE4 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0239CDE8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0239CDEC */ _t86 = cpu->r[1] + 0x00000008u;
|
|
/* 0239CDEC */ cpu->r[9] = rbrew_read32(cpu->mem, _t86);
|
|
/* 0239CDF0 */ _t87 = cpu->r[9] + 0x00000000u;
|
|
/* 0239CDF0 */ cpu->r[6] = rbrew_read8(cpu->mem, _t87);
|
|
/* 0239CDF4 */ cpu->r[31] = 0x00000000u;
|
|
/* 0239CDF8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[30]);
|
|
/* 0239CDFC */ cpu->r[10] = 0x00080000u;
|
|
/* 0239CE00 */ _t88 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239CE00 */ _t89 = _t88 & 0x00000001u;
|
|
/* 0239CE00 */ if (_t89) goto L_0239CE28; else goto L_0239CE04;
|
|
L_0239CE04: ; // 0x239ce04
|
|
/* 0239CE04 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 0239CE08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[10]);
|
|
/* 0239CE0C */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
/* 0239CE10 */ _t90 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0239CE10 */ _t91 = _t90 & 0x00000001u;
|
|
/* 0239CE10 */ if (_t91) goto L_0239CE24; else goto L_0239CE14;
|
|
L_0239CE14: ; // 0x239ce14
|
|
/* 0239CE14 */ _t92 = cpu->r[9] + 0x00000000u;
|
|
/* 0239CE14 */ cpu->r[7] = rbrew_read8(cpu->mem, _t92);
|
|
/* 0239CE18 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[30]);
|
|
/* 0239CE1C */ _t93 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239CE1C */ _t94 = _t93 & 0x00000001u;
|
|
/* 0239CE1C */ if (_t94) goto L_0239CE20; else goto L_0239CE04;
|
|
L_0239CE20: ; // 0x239ce20
|
|
/* 0239CE20 */ goto L_0239CE28;
|
|
L_0239CE24: ; // 0x239ce24
|
|
/* 0239CE24 */ cpu->r[31] = 0x00000000u;
|
|
L_0239CE28: ; // 0x239ce28
|
|
/* 0239CE28 */ _t95 = cpu->r[1] + 0x00000038u;
|
|
/* 0239CE28 */ cpu->r[12] = rbrew_read32(cpu->mem, _t95);
|
|
/* 0239CE2C */ _t96 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239CE2C */ cpu->r[8] = rbrew_read32(cpu->mem, _t96);
|
|
/* 0239CE30 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[12]);
|
|
/* 0239CE34 */ _t97 = cpu->r[8] + 0x00000014u;
|
|
/* 0239CE34 */ cpu->r[9] = rbrew_read32(cpu->mem, _t97);
|
|
/* 0239CE38 */ _t98 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0239CE38 */ _t99 = _t98 & 0x00000001u;
|
|
/* 0239CE38 */ if (_t99) goto L_0239CE40; else goto L_0239CE3C;
|
|
L_0239CE3C: ; // 0x239ce3c
|
|
/* 0239CE3C */ cpu->r[31] = cpu->r[12] + 0xFFFFFFFFu;
|
|
L_0239CE40: ; // 0x239ce40
|
|
/* 0239CE40 */ cpu->ctr = cpu->r[9];
|
|
/* 0239CE44 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0239CE48 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0239CE4C */ _t100 = cpu->r[1] + 0x00000008u;
|
|
/* 0239CE4C */ cpu->r[4] = rbrew_read32(cpu->mem, _t100);
|
|
/* 0239CE50 */ cpu->r[3] = cpu->r[24];
|
|
/* 0239CE54 */ cpu->r[5] = cpu->r[31];
|
|
/* 0239CE58 */ cpu->r[6] = 0x00000000u;
|
|
/* 0239CE5C */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0239CE60 */ _t101 = cpu->r[24] + cpu->r[31];
|
|
/* 0239CE60 */ rbrew_write8(cpu->mem, _t101, (uint8_t)cpu->r[30]);
|
|
/* 0239CE64 */ _t102 = cpu->r[1] + 0x00000034u;
|
|
/* 0239CE64 */ cpu->r[10] = rbrew_read32(cpu->mem, _t102);
|
|
/* 0239CE68 */ _t103 = cpu->r[10] + 0x00000014u;
|
|
/* 0239CE68 */ cpu->r[11] = rbrew_read32(cpu->mem, _t103);
|
|
/* 0239CE6C */ cpu->ctr = cpu->r[11];
|
|
/* 0239CE70 */ cpu->r[3] = cpu->r[1] + 0x00000030u;
|
|
/* 0239CE74 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0239CE78 */ cpu->r[4] = 0x10080000u;
|
|
/* 0239CE7C */ _t104 = cpu->r[1] + 0x00000030u;
|
|
/* 0239CE7C */ cpu->r[5] = rbrew_read32(cpu->mem, _t104);
|
|
/* 0239CE80 */ cpu->r[3] = cpu->r[1] + 0x00000148u;
|
|
/* 0239CE84 */ cpu->r[4] = cpu->r[4] + 0x000070C8u;
|
|
/* 0239CE88 */ _t105 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 0239CE88 */ _t106 = _t105 & 0x00000001u;
|
|
/* 0239CE88 */ if (_t106) goto L_0239CE8C; // else: addr-0 trap, fall-through
|
|
L_0239CE8C: ; // 0x239ce8c
|
|
/* 0239CE8C */ Gambit_fn_023A2174(cpu);
|
|
/* 0239CE90 */ _t107 = cpu->r[1] + 0x00000147u;
|
|
/* 0239CE90 */ rbrew_write8(cpu->mem, _t107, (uint8_t)cpu->r[30]);
|
|
/* 0239CE94 */ cpu->r[24] = cpu->r[1] + 0x000000C8u;
|
|
/* 0239CE98 */ _t108 = cpu->r[1] + 0x000000C0u;
|
|
/* 0239CE98 */ rbrew_write32(cpu->mem, _t108, cpu->r[25]);
|
|
/* 0239CE9C */ cpu->r[5] = 0x00000080u;
|
|
/* 0239CEA0 */ _t109 = cpu->r[1] + 0x000000BCu;
|
|
/* 0239CEA0 */ rbrew_write32(cpu->mem, _t109, cpu->r[24]);
|
|
/* 0239CEA4 */ _t110 = cpu->r[1] + 0x000000C4u;
|
|
/* 0239CEA4 */ rbrew_write32(cpu->mem, _t110, cpu->r[5]);
|
|
/* 0239CEA8 */ _t111 = cpu->r[3] + 0x00000004u;
|
|
/* 0239CEA8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t111);
|
|
/* 0239CEAC */ _t112 = cpu->r[6] + 0x00000014u;
|
|
/* 0239CEAC */ cpu->r[7] = rbrew_read32(cpu->mem, _t112);
|
|
/* 0239CEB0 */ cpu->ctr = cpu->r[7];
|
|
/* 0239CEB4 */ cpu->r[25] = cpu->r[3];
|
|
/* 0239CEB8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0239CEBC */ _t113 = cpu->r[25] + 0x00000000u;
|
|
/* 0239CEBC */ cpu->r[11] = rbrew_read32(cpu->mem, _t113);
|
|
/* 0239CEC0 */ _t114 = cpu->r[11] + 0x00000000u;
|
|
/* 0239CEC0 */ cpu->r[8] = rbrew_read8(cpu->mem, _t114);
|
|
/* 0239CEC4 */ cpu->r[31] = 0x00000000u;
|
|
/* 0239CEC8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[30]);
|
|
/* 0239CECC */ cpu->r[0] = 0x00080000u;
|
|
/* 0239CED0 */ _t115 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239CED0 */ _t116 = _t115 & 0x00000001u;
|
|
/* 0239CED0 */ if (_t116) goto L_0239CEF8; else goto L_0239CED4;
|
|
L_0239CED4: ; // 0x239ced4
|
|
/* 0239CED4 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 0239CED8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[0]);
|
|
/* 0239CEDC */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 0239CEE0 */ _t117 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0239CEE0 */ _t118 = _t117 & 0x00000001u;
|
|
/* 0239CEE0 */ if (_t118) goto L_0239CEF4; else goto L_0239CEE4;
|
|
L_0239CEE4: ; // 0x239cee4
|
|
/* 0239CEE4 */ _t119 = cpu->r[11] + 0x00000000u;
|
|
/* 0239CEE4 */ cpu->r[9] = rbrew_read8(cpu->mem, _t119);
|
|
/* 0239CEE8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[30]);
|
|
/* 0239CEEC */ _t120 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239CEEC */ _t121 = _t120 & 0x00000001u;
|
|
/* 0239CEEC */ if (_t121) goto L_0239CEF0; else goto L_0239CED4;
|
|
L_0239CEF0: ; // 0x239cef0
|
|
/* 0239CEF0 */ goto L_0239CEF8;
|
|
L_0239CEF4: ; // 0x239cef4
|
|
/* 0239CEF4 */ cpu->r[31] = 0x00000000u;
|
|
L_0239CEF8: ; // 0x239cef8
|
|
/* 0239CEF8 */ _t122 = cpu->r[1] + 0x000000C4u;
|
|
/* 0239CEF8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t122);
|
|
/* 0239CEFC */ _t123 = cpu->r[25] + 0x00000004u;
|
|
/* 0239CEFC */ cpu->r[10] = rbrew_read32(cpu->mem, _t123);
|
|
/* 0239CF00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[5]);
|
|
/* 0239CF04 */ _t124 = cpu->r[10] + 0x00000014u;
|
|
/* 0239CF04 */ cpu->r[12] = rbrew_read32(cpu->mem, _t124);
|
|
/* 0239CF08 */ _t125 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0239CF08 */ _t126 = _t125 & 0x00000001u;
|
|
/* 0239CF08 */ if (_t126) goto L_0239CF10; else goto L_0239CF0C;
|
|
L_0239CF0C: ; // 0x239cf0c
|
|
/* 0239CF0C */ cpu->r[31] = cpu->r[5] + 0xFFFFFFFFu;
|
|
L_0239CF10: ; // 0x239cf10
|
|
/* 0239CF10 */ cpu->ctr = cpu->r[12];
|
|
/* 0239CF14 */ cpu->r[3] = cpu->r[25];
|
|
/* 0239CF18 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0239CF1C */ _t127 = cpu->r[25] + 0x00000000u;
|
|
/* 0239CF1C */ cpu->r[4] = rbrew_read32(cpu->mem, _t127);
|
|
/* 0239CF20 */ cpu->r[6] = 0x00000000u;
|
|
/* 0239CF24 */ cpu->r[5] = cpu->r[31];
|
|
/* 0239CF28 */ cpu->r[3] = cpu->r[24];
|
|
/* 0239CF2C */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0239CF30 */ _t128 = cpu->r[24] + cpu->r[31];
|
|
/* 0239CF30 */ rbrew_write8(cpu->mem, _t128, (uint8_t)cpu->r[30]);
|
|
/* 0239CF34 */ cpu->r[3] = cpu->r[1] + 0x000000BCu;
|
|
/* 0239CF38 */ _t129 = cpu->r[1] + 0x000000C0u;
|
|
/* 0239CF38 */ rbrew_write32(cpu->mem, _t129, cpu->r[26]);
|
|
/* 0239CF3C */ Gambit_fn_027E2BBC(cpu);
|
|
/* 0239CF40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239CF44 */ _t130 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239CF44 */ _t131 = _t130 & 0x00000001u;
|
|
/* 0239CF44 */ if (_t131) goto L_0239CFBC; else goto L_0239CF48;
|
|
L_0239CF48: ; // 0x239cf48
|
|
/* 0239CF48 */ cpu->r[5] = 0x00000000u;
|
|
/* 0239CF4C */ cpu->r[3] = cpu->r[1] + 0x00000028u;
|
|
/* 0239CF50 */ cpu->r[4] = cpu->r[1] + 0x00000030u;
|
|
/* 0239CF54 */ cpu->r[6] = cpu->r[5];
|
|
/* 0239CF58 */ Gambit_fn_027C6980(cpu);
|
|
/* 0239CF5C */ _t132 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0239CF5C */ cpu->r[11] = rbrew_read32(cpu->mem, _t132);
|
|
/* 0239CF60 */ _t133 = cpu->r[11] + 0x0000001Cu;
|
|
/* 0239CF60 */ cpu->r[12] = rbrew_read32(cpu->mem, _t133);
|
|
/* 0239CF64 */ _t134 = cpu->r[12] + 0x00000024u;
|
|
/* 0239CF64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t134);
|
|
/* 0239CF68 */ cpu->r[3] = 0x00000000u;
|
|
/* 0239CF6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0239CF70 */ cpu->r[8] = cpu->r[12] + 0x00000024u;
|
|
/* 0239CF74 */ _t135 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239CF74 */ _t136 = _t135 & 0x00000001u;
|
|
/* 0239CF74 */ if (_t136) goto L_0239CF7C; else goto L_0239CF78;
|
|
L_0239CF78: ; // 0x239cf78
|
|
/* 0239CF78 */ cpu->r[3] = cpu->r[8] + cpu->r[0];
|
|
L_0239CF7C: ; // 0x239cf7c
|
|
/* 0239CF7C */ cpu->r[4] = 0x10080000u;
|
|
/* 0239CF80 */ cpu->r[4] = cpu->r[4] + 0x000070B4u;
|
|
/* 0239CF84 */ Gambit_fn_02C60464(cpu);
|
|
/* 0239CF88 */ cpu->r[31] = cpu->r[3];
|
|
/* 0239CF88 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0239CF8C */ _t137 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239CF8C */ _t138 = _t137 & 0x00000001u;
|
|
/* 0239CF8C */ if (_t138) goto L_0239CFBC; else goto L_0239CF90;
|
|
L_0239CF90: ; // 0x239cf90
|
|
/* 0239CF90 */ cpu->r[4] = cpu->r[31];
|
|
/* 0239CF94 */ cpu->r[3] = cpu->r[29];
|
|
/* 0239CF98 */ Gambit_fn_02928CCC(cpu);
|
|
/* 0239CF9C */ cpu->r[0] = 0x10080000u;
|
|
/* 0239CFA0 */ _t139 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239CFA0 */ rbrew_write32(cpu->mem, _t139, cpu->r[27]);
|
|
/* 0239CFA4 */ cpu->r[0] = cpu->r[0] + 0x000070A4u;
|
|
/* 0239CFA8 */ _t140 = cpu->r[28] + 0x00000008u;
|
|
/* 0239CFA8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t140);
|
|
/* 0239CFAC */ cpu->r[4] = cpu->r[31];
|
|
/* 0239CFB0 */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 0239CFB4 */ _t141 = cpu->r[1] + 0x00000018u;
|
|
/* 0239CFB4 */ rbrew_write32(cpu->mem, _t141, cpu->r[0]);
|
|
/* 0239CFB8 */ Gambit_fn_02980DDC(cpu);
|
|
L_0239CFBC: ; // 0x239cfbc
|
|
/* 0239CFBC */ /* nop */
|
|
/* 0239CFC0 */ _t142 = cpu->r[1] + 0x000001FCu;
|
|
/* 0239CFC0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t142);
|
|
/* 0239CFC4 */ cpu->lr = cpu->r[0];
|
|
/* 0239CFC8 */ cpu->r[1] = cpu->r[1] + 0x000001F8u;
|
|
/* 0239CFCC */ return;
|
|
}
|
|
|
|
// fn_0239CFD0 @ 0x239cfd0
|
|
void Gambit_fn_0239CFD0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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;
|
|
|
|
L_0239CFD0: ; // 0x239cfd0
|
|
/* 0239CFD0 */ cpu->r[0] = cpu->lr;
|
|
/* 0239CFD4 */ _t0 = cpu->r[1] + 0xFFFFFE28u;
|
|
/* 0239CFD4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239CFD4 */ cpu->r[1] = _t0;
|
|
/* 0239CFD8 */ _t1 = cpu->r[1] + 0x000001DCu;
|
|
/* 0239CFD8 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0239CFDC */ /* nop */
|
|
/* 0239CFE0 */ cpu->r[31] = cpu->r[3];
|
|
/* 0239CFE4 */ Gambit_fn_0239C750(cpu);
|
|
/* 0239CFE8 */ cpu->r[29] = 0x101C0000u;
|
|
/* 0239CFEC */ cpu->r[25] = 0x101D0000u;
|
|
/* 0239CFF0 */ cpu->r[28] = 0x101D0000u;
|
|
/* 0239CFF4 */ cpu->r[27] = 0x10080000u;
|
|
/* 0239CFF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239CFFC */ cpu->r[26] = 0x101D0000u;
|
|
/* 0239D000 */ cpu->r[27] = cpu->r[27] + 0x00006F34u;
|
|
/* 0239D004 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239D004 */ _t3 = _t2 & 0x00000001u;
|
|
/* 0239D004 */ if (_t3) goto L_0239D0FC; else goto L_0239D008;
|
|
L_0239D008: ; // 0x239d008
|
|
/* 0239D008 */ cpu->r[30] = 0x10080000u;
|
|
/* 0239D00C */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 0239D00C */ rbrew_write32(cpu->mem, _t4, cpu->r[27]);
|
|
/* 0239D010 */ cpu->r[5] = 0x00000000u;
|
|
/* 0239D014 */ cpu->r[30] = cpu->r[30] + 0x000070ECu;
|
|
/* 0239D018 */ cpu->r[3] = cpu->r[1] + 0x00000080u;
|
|
/* 0239D01C */ cpu->r[6] = cpu->r[5];
|
|
/* 0239D020 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 0239D024 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 0239D024 */ rbrew_write32(cpu->mem, _t5, cpu->r[30]);
|
|
/* 0239D028 */ Gambit_fn_027C6980(cpu);
|
|
/* 0239D02C */ cpu->r[3] = cpu->r[1] + 0x00000050u;
|
|
/* 0239D030 */ Gambit_fn_02982574(cpu);
|
|
/* 0239D034 */ _t6 = cpu->r[26] + 0xFFFF97D8u;
|
|
/* 0239D034 */ cpu->r[0] = rbrew_read8(cpu->mem, _t6);
|
|
/* 0239D038 */ cpu->r[7] = 0x101D0000u;
|
|
/* 0239D03C */ _t7 = cpu->r[28] + 0xFFFF97D4u;
|
|
/* 0239D03C */ cpu->r[10] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0239D040 */ _t8 = cpu->r[7] + 0xFFFF97D9u;
|
|
/* 0239D040 */ cpu->r[7] = rbrew_read8(cpu->mem, _t8);
|
|
/* 0239D044 */ _t9 = cpu->r[25] + 0xFFFF97D0u;
|
|
/* 0239D044 */ cpu->r[8] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0239D048 */ _t10 = cpu->r[1] + 0x00000054u;
|
|
/* 0239D048 */ rbrew_write32(cpu->mem, _t10, cpu->r[8]);
|
|
/* 0239D04C */ cpu->r[3] = cpu->r[1] + 0x00000088u;
|
|
/* 0239D050 */ _t11 = cpu->r[1] + 0x00000068u;
|
|
/* 0239D050 */ rbrew_write8(cpu->mem, _t11, (uint8_t)cpu->r[0]);
|
|
/* 0239D054 */ _t12 = cpu->r[1] + 0x00000064u;
|
|
/* 0239D054 */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 0239D058 */ _t13 = cpu->r[1] + 0x00000069u;
|
|
/* 0239D058 */ rbrew_write8(cpu->mem, _t13, (uint8_t)cpu->r[7]);
|
|
/* 0239D05C */ Gambit_fn_02984F3C(cpu);
|
|
/* 0239D060 */ cpu->r[0] = 0x00000006u;
|
|
/* 0239D064 */ _t14 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239D064 */ rbrew_write32(cpu->mem, _t14, cpu->r[27]);
|
|
/* 0239D068 */ cpu->r[4] = cpu->r[1] + 0x00000080u;
|
|
/* 0239D06C */ cpu->r[8] = 0x00000000u;
|
|
/* 0239D070 */ _t15 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0239D070 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 0239D074 */ cpu->r[3] = cpu->r[1] + 0x00000018u;
|
|
/* 0239D078 */ cpu->r[5] = cpu->r[1] + 0x00000050u;
|
|
/* 0239D07C */ _t16 = cpu->r[1] + 0x00000028u;
|
|
/* 0239D07C */ rbrew_write32(cpu->mem, _t16, cpu->r[8]);
|
|
/* 0239D080 */ cpu->r[6] = cpu->r[1] + 0x00000088u;
|
|
/* 0239D084 */ cpu->r[7] = cpu->r[1] + 0x00000028u;
|
|
/* 0239D088 */ _t17 = cpu->r[1] + 0x00000018u;
|
|
/* 0239D088 */ rbrew_write32(cpu->mem, _t17, cpu->r[30]);
|
|
/* 0239D08C */ Gambit_fn_023C9758(cpu);
|
|
/* 0239D090 */ _t18 = cpu->r[31] + 0x00000088u;
|
|
/* 0239D090 */ rbrew_write32(cpu->mem, _t18, cpu->r[3]);
|
|
/* 0239D094 */ _t19 = cpu->r[29] + 0x00006000u;
|
|
/* 0239D094 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0239D098 */ _t20 = cpu->r[11] + 0x0000025Cu;
|
|
/* 0239D098 */ cpu->r[7] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0239D09C */ _t21 = cpu->r[7] + 0x0000000Cu;
|
|
/* 0239D09C */ cpu->r[4] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0239D0A0 */ Gambit_fn_0297FD44(cpu);
|
|
/* 0239D0A4 */ _t22 = cpu->r[1] + 0x00000014u;
|
|
/* 0239D0A4 */ rbrew_write32(cpu->mem, _t22, cpu->r[27]);
|
|
/* 0239D0A8 */ cpu->r[12] = 0x10080000u;
|
|
/* 0239D0AC */ cpu->r[0] = 0x10080000u;
|
|
/* 0239D0B0 */ _t23 = cpu->r[31] + 0x00000088u;
|
|
/* 0239D0B0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0239D0B4 */ cpu->r[12] = cpu->r[12] + 0x00007108u;
|
|
/* 0239D0B8 */ cpu->r[0] = cpu->r[0] + 0x0000711Cu;
|
|
/* 0239D0BC */ _t24 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239D0BC */ rbrew_write32(cpu->mem, _t24, cpu->r[27]);
|
|
/* 0239D0C0 */ cpu->r[3] = cpu->r[30];
|
|
/* 0239D0C4 */ _t25 = cpu->r[1] + 0x00000018u;
|
|
/* 0239D0C4 */ rbrew_write32(cpu->mem, _t25, cpu->r[12]);
|
|
/* 0239D0C8 */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 0239D0CC */ _t26 = cpu->r[1] + 0x00000010u;
|
|
/* 0239D0CC */ rbrew_write32(cpu->mem, _t26, cpu->r[0]);
|
|
/* 0239D0D0 */ Gambit_fn_02980A18(cpu);
|
|
/* 0239D0D4 */ cpu->r[4] = cpu->r[1] + 0x0000002Cu;
|
|
/* 0239D0D8 */ _t27 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0239D0D8 */ rbrew_write32(cpu->mem, _t27, cpu->r[3]);
|
|
/* 0239D0DC */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 0239D0E0 */ _t28 = cpu->r[1] + 0x00000094u;
|
|
/* 0239D0E0 */ rbrew_write32(cpu->mem, _t28, cpu->r[3]);
|
|
/* 0239D0E4 */ cpu->r[3] = cpu->r[30];
|
|
/* 0239D0E8 */ Gambit_fn_02980AB0(cpu);
|
|
/* 0239D0EC */ _t29 = cpu->r[1] + 0x00000048u;
|
|
/* 0239D0EC */ rbrew_write32(cpu->mem, _t29, cpu->r[3]);
|
|
/* 0239D0F0 */ _t30 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0239D0F0 */ rbrew_write32(cpu->mem, _t30, cpu->r[4]);
|
|
/* 0239D0F4 */ _t31 = cpu->r[31] + 0x00000090u;
|
|
/* 0239D0F4 */ rbrew_write32(cpu->mem, _t31, cpu->r[3]);
|
|
/* 0239D0F8 */ _t32 = cpu->r[31] + 0x00000094u;
|
|
/* 0239D0F8 */ rbrew_write32(cpu->mem, _t32, cpu->r[4]);
|
|
L_0239D0FC: ; // 0x239d0fc
|
|
/* 0239D0FC */ cpu->r[30] = 0x10110000u;
|
|
/* 0239D100 */ _t33 = cpu->r[29] + 0x00006000u;
|
|
/* 0239D100 */ cpu->r[5] = rbrew_read32(cpu->mem, _t33);
|
|
/* 0239D104 */ cpu->r[11] = 0x00000080u;
|
|
/* 0239D108 */ _t34 = cpu->r[30] + 0x00007399u;
|
|
/* 0239D108 */ cpu->r[30] = rbrew_read8(cpu->mem, _t34);
|
|
/* 0239D10C */ cpu->r[6] = 0x10080000u;
|
|
/* 0239D110 */ _t35 = cpu->r[1] + 0x000000A0u;
|
|
/* 0239D110 */ rbrew_write32(cpu->mem, _t35, cpu->r[11]);
|
|
/* 0239D114 */ cpu->r[10] = cpu->r[1] + 0x000000A4u;
|
|
/* 0239D118 */ _t36 = cpu->r[1] + 0x00000123u;
|
|
/* 0239D118 */ rbrew_write8(cpu->mem, _t36, (uint8_t)cpu->r[30]);
|
|
/* 0239D11C */ cpu->r[0] = 0x10080000u;
|
|
/* 0239D120 */ _t37 = cpu->r[1] + 0x00000098u;
|
|
/* 0239D120 */ rbrew_write32(cpu->mem, _t37, cpu->r[10]);
|
|
/* 0239D124 */ cpu->r[0] = cpu->r[0] + 0x00006F7Cu;
|
|
/* 0239D128 */ _t38 = cpu->r[1] + 0x000000A4u;
|
|
/* 0239D128 */ rbrew_write8(cpu->mem, _t38, (uint8_t)cpu->r[30]);
|
|
/* 0239D12C */ cpu->r[6] = cpu->r[6] + 0x000070D8u;
|
|
/* 0239D130 */ _t39 = cpu->r[1] + 0x0000009Cu;
|
|
/* 0239D130 */ rbrew_write32(cpu->mem, _t39, cpu->r[0]);
|
|
/* 0239D134 */ _t40 = cpu->r[5] + 0x00000254u;
|
|
/* 0239D134 */ cpu->r[3] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0239D138 */ _t41 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0239D138 */ rbrew_write32(cpu->mem, _t41, cpu->r[6]);
|
|
/* 0239D13C */ cpu->r[4] = cpu->r[1] + 0x0000003Cu;
|
|
/* 0239D140 */ _t42 = cpu->r[1] + 0x00000040u;
|
|
/* 0239D140 */ rbrew_write32(cpu->mem, _t42, cpu->r[27]);
|
|
/* 0239D144 */ Gambit_fn_020ECD78(cpu);
|
|
/* 0239D148 */ _t43 = cpu->r[3] + 0x00000008u;
|
|
/* 0239D148 */ cpu->r[0] = rbrew_read32(cpu->mem, _t43);
|
|
/* 0239D14C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0239D150 */ _t44 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0239D150 */ _t45 = _t44 & 0x00000001u;
|
|
/* 0239D150 */ if (_t45) goto L_0239D154; else goto L_0239D19C;
|
|
L_0239D154: ; // 0x239d154
|
|
/* 0239D154 */ _t46 = cpu->r[3] + 0x00000004u;
|
|
/* 0239D154 */ cpu->r[8] = rbrew_read32(cpu->mem, _t46);
|
|
/* 0239D158 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0239D15C */ _t47 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239D15C */ _t48 = _t47 & 0x00000001u;
|
|
/* 0239D15C */ if (_t48) goto L_0239D19C; else goto L_0239D160;
|
|
L_0239D160: ; // 0x239d160
|
|
/* 0239D160 */ _t49 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0239D160 */ cpu->r[11] = rbrew_read32(cpu->mem, _t49);
|
|
/* 0239D164 */ _t50 = cpu->r[1] + 0x00000098u;
|
|
/* 0239D164 */ cpu->r[23] = rbrew_read32(cpu->mem, _t50);
|
|
/* 0239D168 */ cpu->r[5] = cpu->r[8] - cpu->r[11];
|
|
/* 0239D16C */ _t51 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239D16C */ rbrew_write32(cpu->mem, _t51, cpu->r[27]);
|
|
/* 0239D170 */ _t52 = cpu->r[5] + 0x00000030u;
|
|
/* 0239D170 */ cpu->r[12] = rbrew_read32(cpu->mem, _t52);
|
|
/* 0239D174 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0239D178 */ _t53 = cpu->r[1] + 0x00000008u;
|
|
/* 0239D178 */ rbrew_write32(cpu->mem, _t53, cpu->r[12]);
|
|
/* 0239D17C */ Gambit_fn_023A2118(cpu);
|
|
/* 0239D180 */ _t54 = cpu->r[1] + 0x00000008u;
|
|
/* 0239D180 */ cpu->r[8] = rbrew_read32(cpu->mem, _t54);
|
|
/* 0239D184 */ _t55 = cpu->r[8] + 0x00000000u;
|
|
/* 0239D184 */ cpu->r[0] = rbrew_read8(cpu->mem, _t55);
|
|
/* 0239D188 */ cpu->r[24] = 0x00000000u;
|
|
/* 0239D18C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]);
|
|
/* 0239D190 */ cpu->r[9] = 0x00080000u;
|
|
/* 0239D194 */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239D194 */ _t57 = _t56 & 0x00000001u;
|
|
/* 0239D194 */ if (_t57) goto L_0239D198; else goto L_0239D1D0;
|
|
L_0239D198: ; // 0x239d198
|
|
/* 0239D198 */ goto L_0239D1F4;
|
|
L_0239D19C: ; // 0x239d19c
|
|
/* 0239D19C */ cpu->r[5] = 0x00000000u;
|
|
/* 0239D1A0 */ _t58 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239D1A0 */ rbrew_write32(cpu->mem, _t58, cpu->r[27]);
|
|
/* 0239D1A4 */ _t59 = cpu->r[5] + 0x00000030u;
|
|
/* 0239D1A4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t59);
|
|
/* 0239D1A8 */ _t60 = cpu->r[1] + 0x00000098u;
|
|
/* 0239D1A8 */ cpu->r[23] = rbrew_read32(cpu->mem, _t60);
|
|
/* 0239D1AC */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0239D1B0 */ _t61 = cpu->r[1] + 0x00000008u;
|
|
/* 0239D1B0 */ rbrew_write32(cpu->mem, _t61, cpu->r[12]);
|
|
/* 0239D1B4 */ Gambit_fn_023A2118(cpu);
|
|
/* 0239D1B8 */ _t62 = cpu->r[1] + 0x00000008u;
|
|
/* 0239D1B8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t62);
|
|
/* 0239D1BC */ _t63 = cpu->r[8] + 0x00000000u;
|
|
/* 0239D1BC */ cpu->r[0] = rbrew_read8(cpu->mem, _t63);
|
|
/* 0239D1C0 */ cpu->r[24] = 0x00000000u;
|
|
/* 0239D1C4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]);
|
|
/* 0239D1C8 */ cpu->r[9] = 0x00080000u;
|
|
/* 0239D1CC */ _t64 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239D1CC */ _t65 = _t64 & 0x00000001u;
|
|
/* 0239D1CC */ if (_t65) goto L_0239D1F4; else goto L_0239D1D0;
|
|
L_0239D1D0: ; // 0x239d1d0
|
|
/* 0239D1D0 */ cpu->r[24] = cpu->r[24] + 0x00000001u;
|
|
/* 0239D1D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], cpu->r[9]);
|
|
/* 0239D1D8 */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 0239D1DC */ _t66 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0239D1DC */ _t67 = _t66 & 0x00000001u;
|
|
/* 0239D1DC */ if (_t67) goto L_0239D1F0; else goto L_0239D1E0;
|
|
L_0239D1E0: ; // 0x239d1e0
|
|
/* 0239D1E0 */ _t68 = cpu->r[8] + 0x00000000u;
|
|
/* 0239D1E0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t68);
|
|
/* 0239D1E4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]);
|
|
/* 0239D1E8 */ _t69 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239D1E8 */ _t70 = _t69 & 0x00000001u;
|
|
/* 0239D1E8 */ if (_t70) goto L_0239D1EC; else goto L_0239D1D0;
|
|
L_0239D1EC: ; // 0x239d1ec
|
|
/* 0239D1EC */ goto L_0239D1F4;
|
|
L_0239D1F0: ; // 0x239d1f0
|
|
/* 0239D1F0 */ cpu->r[24] = 0x00000000u;
|
|
L_0239D1F4: ; // 0x239d1f4
|
|
/* 0239D1F4 */ _t71 = cpu->r[1] + 0x000000A0u;
|
|
/* 0239D1F4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t71);
|
|
/* 0239D1F8 */ _t72 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239D1F8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t72);
|
|
/* 0239D1FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], cpu->r[5]);
|
|
/* 0239D200 */ _t73 = cpu->r[8] + 0x00000014u;
|
|
/* 0239D200 */ cpu->r[0] = rbrew_read32(cpu->mem, _t73);
|
|
/* 0239D204 */ _t74 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0239D204 */ _t75 = _t74 & 0x00000001u;
|
|
/* 0239D204 */ if (_t75) goto L_0239D20C; else goto L_0239D208;
|
|
L_0239D208: ; // 0x239d208
|
|
/* 0239D208 */ cpu->r[24] = cpu->r[5] + 0xFFFFFFFFu;
|
|
L_0239D20C: ; // 0x239d20c
|
|
/* 0239D20C */ cpu->ctr = cpu->r[0];
|
|
/* 0239D210 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0239D214 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0239D218 */ _t76 = cpu->r[1] + 0x00000008u;
|
|
/* 0239D218 */ cpu->r[4] = rbrew_read32(cpu->mem, _t76);
|
|
/* 0239D21C */ cpu->r[3] = cpu->r[23];
|
|
/* 0239D220 */ cpu->r[5] = cpu->r[24];
|
|
/* 0239D224 */ cpu->r[6] = 0x00000000u;
|
|
/* 0239D228 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0239D22C */ _t77 = cpu->r[23] + cpu->r[24];
|
|
/* 0239D22C */ rbrew_write8(cpu->mem, _t77, (uint8_t)cpu->r[30]);
|
|
/* 0239D230 */ _t78 = cpu->r[1] + 0x0000009Cu;
|
|
/* 0239D230 */ cpu->r[10] = rbrew_read32(cpu->mem, _t78);
|
|
/* 0239D234 */ _t79 = cpu->r[10] + 0x00000014u;
|
|
/* 0239D234 */ cpu->r[0] = rbrew_read32(cpu->mem, _t79);
|
|
/* 0239D238 */ cpu->ctr = cpu->r[0];
|
|
/* 0239D23C */ cpu->r[3] = cpu->r[1] + 0x00000098u;
|
|
/* 0239D240 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0239D244 */ cpu->r[4] = 0x10080000u;
|
|
/* 0239D248 */ _t80 = cpu->r[1] + 0x00000098u;
|
|
/* 0239D248 */ cpu->r[5] = rbrew_read32(cpu->mem, _t80);
|
|
/* 0239D24C */ cpu->r[3] = cpu->r[1] + 0x00000124u;
|
|
/* 0239D250 */ cpu->r[4] = cpu->r[4] + 0x000070FCu;
|
|
/* 0239D254 */ _t81 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 0239D254 */ _t82 = _t81 & 0x00000001u;
|
|
/* 0239D254 */ if (_t82) goto L_0239D258; // else: addr-0 trap, fall-through
|
|
L_0239D258: ; // 0x239d258
|
|
/* 0239D258 */ Gambit_fn_023A2174(cpu);
|
|
/* 0239D25C */ _t83 = cpu->r[1] + 0x00000014u;
|
|
/* 0239D25C */ rbrew_write32(cpu->mem, _t83, cpu->r[27]);
|
|
/* 0239D260 */ _t84 = cpu->r[3] + 0x00000000u;
|
|
/* 0239D260 */ cpu->r[12] = rbrew_read32(cpu->mem, _t84);
|
|
/* 0239D264 */ cpu->r[3] = cpu->r[1] + 0x00000018u;
|
|
/* 0239D268 */ _t85 = cpu->r[1] + 0x00000098u;
|
|
/* 0239D268 */ cpu->r[0] = rbrew_read32(cpu->mem, _t85);
|
|
/* 0239D26C */ _t86 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239D26C */ rbrew_write32(cpu->mem, _t86, cpu->r[27]);
|
|
/* 0239D270 */ cpu->r[30] = 0x00000000u;
|
|
/* 0239D274 */ _t87 = cpu->r[1] + 0x00000010u;
|
|
/* 0239D274 */ rbrew_write32(cpu->mem, _t87, cpu->r[12]);
|
|
/* 0239D278 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 0239D27C */ _t88 = cpu->r[1] + 0x00000018u;
|
|
/* 0239D27C */ rbrew_write32(cpu->mem, _t88, cpu->r[0]);
|
|
/* 0239D280 */ Gambit_fn_027C6C94(cpu);
|
|
/* 0239D284 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239D288 */ _t89 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239D288 */ _t90 = _t89 & 0x00000001u;
|
|
/* 0239D288 */ if (_t90) goto L_0239D2A0; else goto L_0239D28C;
|
|
L_0239D28C: ; // 0x239d28c
|
|
/* 0239D28C */ cpu->r[3] = cpu->r[31];
|
|
/* 0239D290 */ Gambit_fn_0239C7A0(cpu);
|
|
/* 0239D294 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239D298 */ _t91 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239D298 */ _t92 = _t91 & 0x00000001u;
|
|
/* 0239D298 */ if (_t92) goto L_0239D29C; else goto L_0239D2A0;
|
|
L_0239D29C: ; // 0x239d29c
|
|
/* 0239D29C */ cpu->r[30] = 0x00000001u;
|
|
L_0239D2A0: ; // 0x239d2a0
|
|
/* 0239D2A0 */ cpu->r[5] = 0x00000000u;
|
|
/* 0239D2A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0239D2A8 */ cpu->r[6] = cpu->r[5];
|
|
/* 0239D2AC */ _t93 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239D2AC */ _t94 = _t93 & 0x00000001u;
|
|
/* 0239D2AC */ if (_t94) goto L_0239D384; else goto L_0239D2B0;
|
|
L_0239D2B0: ; // 0x239d2b0
|
|
/* 0239D2B0 */ cpu->r[3] = cpu->r[1] + 0x00000060u;
|
|
/* 0239D2B4 */ cpu->r[4] = cpu->r[1] + 0x00000098u;
|
|
/* 0239D2B8 */ Gambit_fn_027C6980(cpu);
|
|
/* 0239D2BC */ cpu->r[3] = cpu->r[1] + 0x00000044u;
|
|
/* 0239D2C0 */ Gambit_fn_02982574(cpu);
|
|
/* 0239D2C4 */ _t95 = cpu->r[26] + 0xFFFF97D8u;
|
|
/* 0239D2C4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t95);
|
|
/* 0239D2C8 */ _t96 = cpu->r[25] + 0xFFFF97D0u;
|
|
/* 0239D2C8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t96);
|
|
/* 0239D2CC */ _t97 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0239D2CC */ rbrew_write8(cpu->mem, _t97, (uint8_t)cpu->r[0]);
|
|
/* 0239D2D0 */ _t98 = cpu->r[1] + 0x00000048u;
|
|
/* 0239D2D0 */ rbrew_write32(cpu->mem, _t98, cpu->r[5]);
|
|
/* 0239D2D4 */ cpu->r[11] = 0x101D0000u;
|
|
/* 0239D2D8 */ _t99 = cpu->r[28] + 0xFFFF97D4u;
|
|
/* 0239D2D8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t99);
|
|
/* 0239D2DC */ _t100 = cpu->r[11] + 0xFFFF97D9u;
|
|
/* 0239D2DC */ cpu->r[0] = rbrew_read8(cpu->mem, _t100);
|
|
/* 0239D2E0 */ _t101 = cpu->r[1] + 0x00000058u;
|
|
/* 0239D2E0 */ rbrew_write32(cpu->mem, _t101, cpu->r[6]);
|
|
/* 0239D2E4 */ cpu->r[3] = cpu->r[1] + 0x00000080u;
|
|
/* 0239D2E8 */ _t102 = cpu->r[1] + 0x0000005Du;
|
|
/* 0239D2E8 */ rbrew_write8(cpu->mem, _t102, (uint8_t)cpu->r[0]);
|
|
/* 0239D2EC */ Gambit_fn_02984F3C(cpu);
|
|
/* 0239D2F0 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 0239D2F4 */ cpu->r[5] = cpu->r[1] + 0x00000060u;
|
|
/* 0239D2F8 */ cpu->r[7] = 0x00000006u;
|
|
/* 0239D2FC */ cpu->r[4] = cpu->r[3];
|
|
/* 0239D300 */ cpu->r[6] = cpu->r[1] + 0x00000044u;
|
|
/* 0239D304 */ _t103 = cpu->r[1] + 0x00000084u;
|
|
/* 0239D304 */ rbrew_write32(cpu->mem, _t103, cpu->r[7]);
|
|
/* 0239D308 */ cpu->r[7] = cpu->r[1] + 0x00000080u;
|
|
/* 0239D30C */ cpu->r[8] = 0x00000000u;
|
|
/* 0239D310 */ Gambit_fn_027F50B0(cpu);
|
|
/* 0239D314 */ _t104 = cpu->r[31] + 0x00000008u;
|
|
/* 0239D314 */ rbrew_write32(cpu->mem, _t104, cpu->r[3]);
|
|
/* 0239D318 */ _t105 = cpu->r[29] + 0x00006000u;
|
|
/* 0239D318 */ cpu->r[6] = rbrew_read32(cpu->mem, _t105);
|
|
/* 0239D31C */ _t106 = cpu->r[6] + 0x0000025Cu;
|
|
/* 0239D31C */ cpu->r[7] = rbrew_read32(cpu->mem, _t106);
|
|
/* 0239D320 */ _t107 = cpu->r[7] + 0x0000000Cu;
|
|
/* 0239D320 */ cpu->r[4] = rbrew_read32(cpu->mem, _t107);
|
|
/* 0239D324 */ Gambit_fn_0297FD44(cpu);
|
|
/* 0239D328 */ cpu->r[3] = cpu->r[31];
|
|
/* 0239D32C */ cpu->r[4] = cpu->r[31] + 0x000001A0u;
|
|
/* 0239D330 */ Gambit_fn_0239CB64(cpu);
|
|
/* 0239D334 */ cpu->r[3] = 0x00000000u;
|
|
/* 0239D338 */ Gambit_fn_02043B8C(cpu);
|
|
/* 0239D33C */ _t108 = cpu->r[31] + 0x00000224u;
|
|
/* 0239D33C */ rbrew_write32(cpu->mem, _t108, cpu->r[3]);
|
|
/* 0239D340 */ cpu->r[3] = cpu->r[1] + 0x00000070u;
|
|
/* 0239D344 */ Gambit_fn_024238C8(cpu);
|
|
/* 0239D348 */ cpu->r[8] = 0x00000006u;
|
|
/* 0239D34C */ cpu->r[9] = 0x00000008u;
|
|
/* 0239D350 */ cpu->r[3] = 0x00000000u;
|
|
/* 0239D354 */ _t109 = cpu->r[1] + 0x00000070u;
|
|
/* 0239D354 */ rbrew_write32(cpu->mem, _t109, cpu->r[8]);
|
|
/* 0239D358 */ cpu->r[4] = cpu->r[1] + 0x00000070u;
|
|
/* 0239D35C */ _t110 = cpu->r[1] + 0x00000074u;
|
|
/* 0239D35C */ rbrew_write32(cpu->mem, _t110, cpu->r[9]);
|
|
/* 0239D360 */ Gambit_fn_02423658(cpu);
|
|
/* 0239D364 */ cpu->r[4] = cpu->r[3];
|
|
/* 0239D364 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 0239D368 */ cpu->r[11] = 0x101C0000u;
|
|
/* 0239D36C */ _t111 = cpu->r[29] + 0x00006000u;
|
|
/* 0239D36C */ cpu->r[10] = rbrew_read32(cpu->mem, _t111);
|
|
/* 0239D370 */ _t112 = cpu->r[11] + 0x00005C08u;
|
|
/* 0239D370 */ rbrew_write32(cpu->mem, _t112, cpu->r[4]);
|
|
/* 0239D374 */ _t113 = cpu->r[10] + 0x00000250u;
|
|
/* 0239D374 */ cpu->r[12] = rbrew_read32(cpu->mem, _t113);
|
|
/* 0239D378 */ _t114 = cpu->r[12] + 0x00000250u;
|
|
/* 0239D378 */ cpu->r[3] = rbrew_read32(cpu->mem, _t114);
|
|
/* 0239D37C */ _t115 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239D37C */ _t116 = _t115 & 0x00000001u;
|
|
/* 0239D37C */ if (_t116) goto L_0239D46C; else goto L_0239D380;
|
|
L_0239D380: ; // 0x239d380
|
|
/* 0239D380 */ goto L_0239D468;
|
|
L_0239D384: ; // 0x239d384
|
|
/* 0239D384 */ cpu->r[30] = 0x10080000u;
|
|
/* 0239D388 */ _t117 = cpu->r[1] + 0x00000048u;
|
|
/* 0239D388 */ rbrew_write32(cpu->mem, _t117, cpu->r[27]);
|
|
/* 0239D38C */ cpu->r[3] = cpu->r[1] + 0x00000080u;
|
|
/* 0239D390 */ cpu->r[30] = cpu->r[30] + 0x000070E0u;
|
|
/* 0239D394 */ cpu->r[4] = cpu->r[1] + 0x00000044u;
|
|
/* 0239D398 */ _t118 = cpu->r[1] + 0x00000044u;
|
|
/* 0239D398 */ rbrew_write32(cpu->mem, _t118, cpu->r[30]);
|
|
/* 0239D39C */ Gambit_fn_027C6980(cpu);
|
|
/* 0239D3A0 */ cpu->r[3] = cpu->r[1] + 0x00000054u;
|
|
/* 0239D3A4 */ Gambit_fn_02982574(cpu);
|
|
/* 0239D3A8 */ _t119 = cpu->r[26] + 0xFFFF97D8u;
|
|
/* 0239D3A8 */ cpu->r[6] = rbrew_read8(cpu->mem, _t119);
|
|
/* 0239D3AC */ cpu->r[12] = 0x101D0000u;
|
|
/* 0239D3B0 */ _t120 = cpu->r[25] + 0xFFFF97D0u;
|
|
/* 0239D3B0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t120);
|
|
/* 0239D3B4 */ _t121 = cpu->r[12] + 0xFFFF97D9u;
|
|
/* 0239D3B4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t121);
|
|
/* 0239D3B8 */ _t122 = cpu->r[1] + 0x00000058u;
|
|
/* 0239D3B8 */ rbrew_write32(cpu->mem, _t122, cpu->r[9]);
|
|
/* 0239D3BC */ _t123 = cpu->r[28] + 0xFFFF97D4u;
|
|
/* 0239D3BC */ cpu->r[11] = rbrew_read32(cpu->mem, _t123);
|
|
/* 0239D3C0 */ _t124 = cpu->r[1] + 0x0000006Cu;
|
|
/* 0239D3C0 */ rbrew_write8(cpu->mem, _t124, (uint8_t)cpu->r[6]);
|
|
/* 0239D3C4 */ _t125 = cpu->r[1] + 0x00000068u;
|
|
/* 0239D3C4 */ rbrew_write32(cpu->mem, _t125, cpu->r[11]);
|
|
/* 0239D3C8 */ cpu->r[3] = cpu->r[1] + 0x00000088u;
|
|
/* 0239D3CC */ _t126 = cpu->r[1] + 0x0000006Du;
|
|
/* 0239D3CC */ rbrew_write8(cpu->mem, _t126, (uint8_t)cpu->r[0]);
|
|
/* 0239D3D0 */ Gambit_fn_02984F3C(cpu);
|
|
/* 0239D3D4 */ cpu->r[3] = cpu->r[1] + 0x0000004Cu;
|
|
/* 0239D3D8 */ cpu->r[12] = 0x00000006u;
|
|
/* 0239D3DC */ _t127 = cpu->r[1] + 0x00000050u;
|
|
/* 0239D3DC */ rbrew_write32(cpu->mem, _t127, cpu->r[27]);
|
|
/* 0239D3E0 */ cpu->r[5] = cpu->r[1] + 0x00000054u;
|
|
/* 0239D3E4 */ cpu->r[7] = 0x00000000u;
|
|
/* 0239D3E8 */ _t128 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0239D3E8 */ rbrew_write32(cpu->mem, _t128, cpu->r[12]);
|
|
/* 0239D3EC */ cpu->r[6] = cpu->r[1] + 0x00000088u;
|
|
/* 0239D3F0 */ cpu->r[4] = cpu->r[1] + 0x00000080u;
|
|
/* 0239D3F4 */ _t129 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0239D3F4 */ rbrew_write32(cpu->mem, _t129, cpu->r[30]);
|
|
/* 0239D3F8 */ Gambit_fn_027F4F78(cpu);
|
|
/* 0239D3FC */ _t130 = cpu->r[31] + 0x00000008u;
|
|
/* 0239D3FC */ rbrew_write32(cpu->mem, _t130, cpu->r[3]);
|
|
/* 0239D400 */ _t131 = cpu->r[29] + 0x00006000u;
|
|
/* 0239D400 */ cpu->r[6] = rbrew_read32(cpu->mem, _t131);
|
|
/* 0239D404 */ _t132 = cpu->r[6] + 0x0000025Cu;
|
|
/* 0239D404 */ cpu->r[7] = rbrew_read32(cpu->mem, _t132);
|
|
/* 0239D408 */ _t133 = cpu->r[7] + 0x0000000Cu;
|
|
/* 0239D408 */ cpu->r[4] = rbrew_read32(cpu->mem, _t133);
|
|
/* 0239D40C */ Gambit_fn_0297FD44(cpu);
|
|
/* 0239D410 */ cpu->r[4] = cpu->r[31] + 0x000001A0u;
|
|
/* 0239D414 */ cpu->r[3] = cpu->r[31];
|
|
/* 0239D418 */ Gambit_fn_0239CB64(cpu);
|
|
/* 0239D41C */ cpu->r[3] = 0x00000000u;
|
|
/* 0239D420 */ Gambit_fn_02043B8C(cpu);
|
|
/* 0239D424 */ _t134 = cpu->r[31] + 0x00000224u;
|
|
/* 0239D424 */ rbrew_write32(cpu->mem, _t134, cpu->r[3]);
|
|
/* 0239D428 */ cpu->r[3] = cpu->r[1] + 0x00000070u;
|
|
/* 0239D42C */ Gambit_fn_024238C8(cpu);
|
|
/* 0239D430 */ cpu->r[8] = 0x00000006u;
|
|
/* 0239D434 */ cpu->r[9] = 0x00000008u;
|
|
/* 0239D438 */ cpu->r[4] = cpu->r[1] + 0x00000070u;
|
|
/* 0239D43C */ _t135 = cpu->r[1] + 0x00000070u;
|
|
/* 0239D43C */ rbrew_write32(cpu->mem, _t135, cpu->r[8]);
|
|
/* 0239D440 */ cpu->r[3] = 0x00000000u;
|
|
/* 0239D444 */ _t136 = cpu->r[1] + 0x00000074u;
|
|
/* 0239D444 */ rbrew_write32(cpu->mem, _t136, cpu->r[9]);
|
|
/* 0239D448 */ Gambit_fn_02423658(cpu);
|
|
/* 0239D44C */ cpu->r[4] = cpu->r[3];
|
|
/* 0239D44C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 0239D450 */ cpu->r[11] = 0x101C0000u;
|
|
/* 0239D454 */ _t137 = cpu->r[29] + 0x00006000u;
|
|
/* 0239D454 */ cpu->r[10] = rbrew_read32(cpu->mem, _t137);
|
|
/* 0239D458 */ _t138 = cpu->r[11] + 0x00005C08u;
|
|
/* 0239D458 */ rbrew_write32(cpu->mem, _t138, cpu->r[4]);
|
|
/* 0239D45C */ _t139 = cpu->r[10] + 0x00000250u;
|
|
/* 0239D45C */ cpu->r[12] = rbrew_read32(cpu->mem, _t139);
|
|
/* 0239D460 */ _t140 = cpu->r[12] + 0x00000250u;
|
|
/* 0239D460 */ cpu->r[3] = rbrew_read32(cpu->mem, _t140);
|
|
/* 0239D464 */ _t141 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239D464 */ _t142 = _t141 & 0x00000001u;
|
|
/* 0239D464 */ if (_t142) goto L_0239D46C; else goto L_0239D468;
|
|
L_0239D468: ; // 0x239d468
|
|
/* 0239D468 */ cpu->r[4] = cpu->r[4] + 0x00000010u;
|
|
L_0239D46C: ; // 0x239d46c
|
|
/* 0239D46C */ cpu->r[5] = 0x00000000u;
|
|
/* 0239D470 */ Gambit_fn_027EFC10(cpu);
|
|
/* 0239D474 */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 0239D478 */ Gambit_fn_02019890(cpu);
|
|
/* 0239D47C */ _t143 = cpu->r[1] + 0x00000020u;
|
|
/* 0239D47C */ cpu->r[5] = rbrew_read32(cpu->mem, _t143);
|
|
/* 0239D480 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 0239D484 */ _t144 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239D484 */ _t145 = _t144 & 0x00000001u;
|
|
/* 0239D484 */ if (_t145) goto L_0239D488; else goto L_0239D4B4;
|
|
L_0239D488: ; // 0x239d488
|
|
/* 0239D488 */ cpu->r[9] = 0x101D0000u;
|
|
/* 0239D48C */ _t146 = cpu->r[9] + 0xFFFF80F4u;
|
|
/* 0239D48C */ cpu->r[9] = rbrew_read32(cpu->mem, _t146);
|
|
/* 0239D490 */ cpu->r[10] = 0x00000001u;
|
|
/* 0239D494 */ _t147 = cpu->r[9] + 0x000002D8u;
|
|
/* 0239D494 */ cpu->r[6] = rbrew_read32(cpu->mem, _t147);
|
|
/* 0239D498 */ _t148 = cpu->r[1] + 0x00000024u;
|
|
/* 0239D498 */ rbrew_write32(cpu->mem, _t148, cpu->r[10]);
|
|
/* 0239D49C */ cpu->r[3] = 0x00000000u;
|
|
/* 0239D4A0 */ cpu->r[4] = cpu->r[1] + 0x00000024u;
|
|
/* 0239D4A4 */ _t149 = cpu->r[31] + 0x00000184u;
|
|
/* 0239D4A4 */ rbrew_write32(cpu->mem, _t149, cpu->r[6]);
|
|
/* 0239D4A8 */ Gambit_fn_026B8E54(cpu);
|
|
/* 0239D4AC */ _t150 = cpu->r[31] + 0x000002C4u;
|
|
/* 0239D4AC */ rbrew_write32(cpu->mem, _t150, cpu->r[3]);
|
|
/* 0239D4B0 */ goto L_0239D570;
|
|
L_0239D4B4: ; // 0x239d4b4
|
|
/* 0239D4B4 */ cpu->r[3] = cpu->r[1] + 0x00000030u;
|
|
/* 0239D4B8 */ Gambit_fn_02019890(cpu);
|
|
/* 0239D4BC */ _t151 = cpu->r[1] + 0x00000030u;
|
|
/* 0239D4BC */ cpu->r[7] = rbrew_read32(cpu->mem, _t151);
|
|
/* 0239D4C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x0000000Eu);
|
|
/* 0239D4C4 */ _t152 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239D4C4 */ _t153 = _t152 & 0x00000001u;
|
|
/* 0239D4C4 */ if (_t153) goto L_0239D4C8; else goto L_0239D4F4;
|
|
L_0239D4C8: ; // 0x239d4c8
|
|
/* 0239D4C8 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0239D4CC */ _t154 = cpu->r[12] + 0x00005B60u;
|
|
/* 0239D4CC */ cpu->r[12] = rbrew_read32(cpu->mem, _t154);
|
|
/* 0239D4D0 */ cpu->r[10] = 0x00000001u;
|
|
/* 0239D4D4 */ _t155 = cpu->r[12] + 0x000002DCu;
|
|
/* 0239D4D4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t155);
|
|
/* 0239D4D8 */ _t156 = cpu->r[1] + 0x00000024u;
|
|
/* 0239D4D8 */ rbrew_write32(cpu->mem, _t156, cpu->r[10]);
|
|
/* 0239D4DC */ cpu->r[3] = 0x00000000u;
|
|
/* 0239D4E0 */ cpu->r[4] = cpu->r[1] + 0x00000024u;
|
|
/* 0239D4E4 */ _t157 = cpu->r[31] + 0x00000184u;
|
|
/* 0239D4E4 */ rbrew_write32(cpu->mem, _t157, cpu->r[8]);
|
|
/* 0239D4E8 */ Gambit_fn_026B8E54(cpu);
|
|
/* 0239D4EC */ _t158 = cpu->r[31] + 0x000002C4u;
|
|
/* 0239D4EC */ rbrew_write32(cpu->mem, _t158, cpu->r[3]);
|
|
/* 0239D4F0 */ goto L_0239D570;
|
|
L_0239D4F4: ; // 0x239d4f4
|
|
/* 0239D4F4 */ cpu->r[3] = cpu->r[1] + 0x00000034u;
|
|
/* 0239D4F8 */ Gambit_fn_02019890(cpu);
|
|
/* 0239D4FC */ _t159 = cpu->r[1] + 0x00000034u;
|
|
/* 0239D4FC */ cpu->r[10] = rbrew_read32(cpu->mem, _t159);
|
|
/* 0239D500 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000009u);
|
|
/* 0239D504 */ _t160 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239D504 */ _t161 = _t160 & 0x00000001u;
|
|
/* 0239D504 */ if (_t161) goto L_0239D508; else goto L_0239D534;
|
|
L_0239D508: ; // 0x239d508
|
|
/* 0239D508 */ cpu->r[11] = 0x101D0000u;
|
|
/* 0239D50C */ _t162 = cpu->r[11] + 0xFFFF8130u;
|
|
/* 0239D50C */ cpu->r[11] = rbrew_read32(cpu->mem, _t162);
|
|
/* 0239D510 */ cpu->r[10] = 0x00000001u;
|
|
/* 0239D514 */ _t163 = cpu->r[11] + 0x000002D8u;
|
|
/* 0239D514 */ cpu->r[0] = rbrew_read32(cpu->mem, _t163);
|
|
/* 0239D518 */ _t164 = cpu->r[1] + 0x00000024u;
|
|
/* 0239D518 */ rbrew_write32(cpu->mem, _t164, cpu->r[10]);
|
|
/* 0239D51C */ cpu->r[3] = 0x00000000u;
|
|
/* 0239D520 */ cpu->r[4] = cpu->r[1] + 0x00000024u;
|
|
/* 0239D524 */ _t165 = cpu->r[31] + 0x00000184u;
|
|
/* 0239D524 */ rbrew_write32(cpu->mem, _t165, cpu->r[0]);
|
|
/* 0239D528 */ Gambit_fn_026B8E54(cpu);
|
|
/* 0239D52C */ _t166 = cpu->r[31] + 0x000002C4u;
|
|
/* 0239D52C */ rbrew_write32(cpu->mem, _t166, cpu->r[3]);
|
|
/* 0239D530 */ goto L_0239D570;
|
|
L_0239D534: ; // 0x239d534
|
|
/* 0239D534 */ cpu->r[3] = cpu->r[1] + 0x00000038u;
|
|
/* 0239D538 */ Gambit_fn_02019890(cpu);
|
|
/* 0239D53C */ _t167 = cpu->r[1] + 0x00000038u;
|
|
/* 0239D53C */ cpu->r[7] = rbrew_read32(cpu->mem, _t167);
|
|
/* 0239D540 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000003u);
|
|
/* 0239D544 */ _t168 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239D544 */ _t169 = _t168 & 0x00000001u;
|
|
/* 0239D544 */ if (_t169) goto L_0239D548; else goto L_0239D558;
|
|
L_0239D548: ; // 0x239d548
|
|
/* 0239D548 */ cpu->r[10] = 0x101D0000u;
|
|
/* 0239D54C */ _t170 = cpu->r[10] + 0xFFFF85A8u;
|
|
/* 0239D54C */ cpu->r[10] = rbrew_read32(cpu->mem, _t170);
|
|
/* 0239D550 */ _t171 = cpu->r[10] + 0x000002DCu;
|
|
/* 0239D550 */ cpu->r[12] = rbrew_read32(cpu->mem, _t171);
|
|
/* 0239D554 */ _t172 = cpu->r[31] + 0x00000188u;
|
|
/* 0239D554 */ rbrew_write32(cpu->mem, _t172, cpu->r[12]);
|
|
L_0239D558: ; // 0x239d558
|
|
/* 0239D558 */ cpu->r[10] = 0x00000001u;
|
|
/* 0239D55C */ cpu->r[3] = 0x00000000u;
|
|
/* 0239D560 */ cpu->r[4] = cpu->r[1] + 0x00000024u;
|
|
/* 0239D564 */ _t173 = cpu->r[1] + 0x00000024u;
|
|
/* 0239D564 */ rbrew_write32(cpu->mem, _t173, cpu->r[10]);
|
|
/* 0239D568 */ Gambit_fn_026B8E54(cpu);
|
|
/* 0239D56C */ _t174 = cpu->r[31] + 0x000002C4u;
|
|
/* 0239D56C */ rbrew_write32(cpu->mem, _t174, cpu->r[3]);
|
|
L_0239D570: ; // 0x239d570
|
|
/* 0239D570 */ /* nop */
|
|
/* 0239D574 */ _t175 = cpu->r[1] + 0x000001DCu;
|
|
/* 0239D574 */ cpu->r[0] = rbrew_read32(cpu->mem, _t175);
|
|
/* 0239D578 */ cpu->lr = cpu->r[0];
|
|
/* 0239D57C */ cpu->r[1] = cpu->r[1] + 0x000001D8u;
|
|
/* 0239D580 */ return;
|
|
}
|
|
|
|
// fn_0239CFD4 @ 0x239cfd4
|
|
void Gambit_fn_0239CFD4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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;
|
|
|
|
L_0239CFD4: ; // 0x239cfd4
|
|
/* 0239CFD4 */ _t0 = cpu->r[1] + 0xFFFFFE28u;
|
|
/* 0239CFD4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239CFD4 */ cpu->r[1] = _t0;
|
|
/* 0239CFD8 */ _t1 = cpu->r[1] + 0x000001DCu;
|
|
/* 0239CFD8 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0239CFDC */ /* nop */
|
|
/* 0239CFE0 */ cpu->r[31] = cpu->r[3];
|
|
/* 0239CFE4 */ Gambit_fn_0239C750(cpu);
|
|
/* 0239CFE8 */ cpu->r[29] = 0x101C0000u;
|
|
/* 0239CFEC */ cpu->r[25] = 0x101D0000u;
|
|
/* 0239CFF0 */ cpu->r[28] = 0x101D0000u;
|
|
/* 0239CFF4 */ cpu->r[27] = 0x10080000u;
|
|
/* 0239CFF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239CFFC */ cpu->r[26] = 0x101D0000u;
|
|
/* 0239D000 */ cpu->r[27] = cpu->r[27] + 0x00006F34u;
|
|
/* 0239D004 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239D004 */ _t3 = _t2 & 0x00000001u;
|
|
/* 0239D004 */ if (_t3) goto L_0239D0FC; else goto L_0239D008;
|
|
L_0239D008: ; // 0x239d008
|
|
/* 0239D008 */ cpu->r[30] = 0x10080000u;
|
|
/* 0239D00C */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 0239D00C */ rbrew_write32(cpu->mem, _t4, cpu->r[27]);
|
|
/* 0239D010 */ cpu->r[5] = 0x00000000u;
|
|
/* 0239D014 */ cpu->r[30] = cpu->r[30] + 0x000070ECu;
|
|
/* 0239D018 */ cpu->r[3] = cpu->r[1] + 0x00000080u;
|
|
/* 0239D01C */ cpu->r[6] = cpu->r[5];
|
|
/* 0239D020 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 0239D024 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 0239D024 */ rbrew_write32(cpu->mem, _t5, cpu->r[30]);
|
|
/* 0239D028 */ Gambit_fn_027C6980(cpu);
|
|
/* 0239D02C */ cpu->r[3] = cpu->r[1] + 0x00000050u;
|
|
/* 0239D030 */ Gambit_fn_02982574(cpu);
|
|
/* 0239D034 */ _t6 = cpu->r[26] + 0xFFFF97D8u;
|
|
/* 0239D034 */ cpu->r[0] = rbrew_read8(cpu->mem, _t6);
|
|
/* 0239D038 */ cpu->r[7] = 0x101D0000u;
|
|
/* 0239D03C */ _t7 = cpu->r[28] + 0xFFFF97D4u;
|
|
/* 0239D03C */ cpu->r[10] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0239D040 */ _t8 = cpu->r[7] + 0xFFFF97D9u;
|
|
/* 0239D040 */ cpu->r[7] = rbrew_read8(cpu->mem, _t8);
|
|
/* 0239D044 */ _t9 = cpu->r[25] + 0xFFFF97D0u;
|
|
/* 0239D044 */ cpu->r[8] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0239D048 */ _t10 = cpu->r[1] + 0x00000054u;
|
|
/* 0239D048 */ rbrew_write32(cpu->mem, _t10, cpu->r[8]);
|
|
/* 0239D04C */ cpu->r[3] = cpu->r[1] + 0x00000088u;
|
|
/* 0239D050 */ _t11 = cpu->r[1] + 0x00000068u;
|
|
/* 0239D050 */ rbrew_write8(cpu->mem, _t11, (uint8_t)cpu->r[0]);
|
|
/* 0239D054 */ _t12 = cpu->r[1] + 0x00000064u;
|
|
/* 0239D054 */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 0239D058 */ _t13 = cpu->r[1] + 0x00000069u;
|
|
/* 0239D058 */ rbrew_write8(cpu->mem, _t13, (uint8_t)cpu->r[7]);
|
|
/* 0239D05C */ Gambit_fn_02984F3C(cpu);
|
|
/* 0239D060 */ cpu->r[0] = 0x00000006u;
|
|
/* 0239D064 */ _t14 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239D064 */ rbrew_write32(cpu->mem, _t14, cpu->r[27]);
|
|
/* 0239D068 */ cpu->r[4] = cpu->r[1] + 0x00000080u;
|
|
/* 0239D06C */ cpu->r[8] = 0x00000000u;
|
|
/* 0239D070 */ _t15 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0239D070 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 0239D074 */ cpu->r[3] = cpu->r[1] + 0x00000018u;
|
|
/* 0239D078 */ cpu->r[5] = cpu->r[1] + 0x00000050u;
|
|
/* 0239D07C */ _t16 = cpu->r[1] + 0x00000028u;
|
|
/* 0239D07C */ rbrew_write32(cpu->mem, _t16, cpu->r[8]);
|
|
/* 0239D080 */ cpu->r[6] = cpu->r[1] + 0x00000088u;
|
|
/* 0239D084 */ cpu->r[7] = cpu->r[1] + 0x00000028u;
|
|
/* 0239D088 */ _t17 = cpu->r[1] + 0x00000018u;
|
|
/* 0239D088 */ rbrew_write32(cpu->mem, _t17, cpu->r[30]);
|
|
/* 0239D08C */ Gambit_fn_023C9758(cpu);
|
|
/* 0239D090 */ _t18 = cpu->r[31] + 0x00000088u;
|
|
/* 0239D090 */ rbrew_write32(cpu->mem, _t18, cpu->r[3]);
|
|
/* 0239D094 */ _t19 = cpu->r[29] + 0x00006000u;
|
|
/* 0239D094 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0239D098 */ _t20 = cpu->r[11] + 0x0000025Cu;
|
|
/* 0239D098 */ cpu->r[7] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0239D09C */ _t21 = cpu->r[7] + 0x0000000Cu;
|
|
/* 0239D09C */ cpu->r[4] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0239D0A0 */ Gambit_fn_0297FD44(cpu);
|
|
/* 0239D0A4 */ _t22 = cpu->r[1] + 0x00000014u;
|
|
/* 0239D0A4 */ rbrew_write32(cpu->mem, _t22, cpu->r[27]);
|
|
/* 0239D0A8 */ cpu->r[12] = 0x10080000u;
|
|
/* 0239D0AC */ cpu->r[0] = 0x10080000u;
|
|
/* 0239D0B0 */ _t23 = cpu->r[31] + 0x00000088u;
|
|
/* 0239D0B0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0239D0B4 */ cpu->r[12] = cpu->r[12] + 0x00007108u;
|
|
/* 0239D0B8 */ cpu->r[0] = cpu->r[0] + 0x0000711Cu;
|
|
/* 0239D0BC */ _t24 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239D0BC */ rbrew_write32(cpu->mem, _t24, cpu->r[27]);
|
|
/* 0239D0C0 */ cpu->r[3] = cpu->r[30];
|
|
/* 0239D0C4 */ _t25 = cpu->r[1] + 0x00000018u;
|
|
/* 0239D0C4 */ rbrew_write32(cpu->mem, _t25, cpu->r[12]);
|
|
/* 0239D0C8 */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 0239D0CC */ _t26 = cpu->r[1] + 0x00000010u;
|
|
/* 0239D0CC */ rbrew_write32(cpu->mem, _t26, cpu->r[0]);
|
|
/* 0239D0D0 */ Gambit_fn_02980A18(cpu);
|
|
/* 0239D0D4 */ cpu->r[4] = cpu->r[1] + 0x0000002Cu;
|
|
/* 0239D0D8 */ _t27 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0239D0D8 */ rbrew_write32(cpu->mem, _t27, cpu->r[3]);
|
|
/* 0239D0DC */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 0239D0E0 */ _t28 = cpu->r[1] + 0x00000094u;
|
|
/* 0239D0E0 */ rbrew_write32(cpu->mem, _t28, cpu->r[3]);
|
|
/* 0239D0E4 */ cpu->r[3] = cpu->r[30];
|
|
/* 0239D0E8 */ Gambit_fn_02980AB0(cpu);
|
|
/* 0239D0EC */ _t29 = cpu->r[1] + 0x00000048u;
|
|
/* 0239D0EC */ rbrew_write32(cpu->mem, _t29, cpu->r[3]);
|
|
/* 0239D0F0 */ _t30 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0239D0F0 */ rbrew_write32(cpu->mem, _t30, cpu->r[4]);
|
|
/* 0239D0F4 */ _t31 = cpu->r[31] + 0x00000090u;
|
|
/* 0239D0F4 */ rbrew_write32(cpu->mem, _t31, cpu->r[3]);
|
|
/* 0239D0F8 */ _t32 = cpu->r[31] + 0x00000094u;
|
|
/* 0239D0F8 */ rbrew_write32(cpu->mem, _t32, cpu->r[4]);
|
|
L_0239D0FC: ; // 0x239d0fc
|
|
/* 0239D0FC */ cpu->r[30] = 0x10110000u;
|
|
/* 0239D100 */ _t33 = cpu->r[29] + 0x00006000u;
|
|
/* 0239D100 */ cpu->r[5] = rbrew_read32(cpu->mem, _t33);
|
|
/* 0239D104 */ cpu->r[11] = 0x00000080u;
|
|
/* 0239D108 */ _t34 = cpu->r[30] + 0x00007399u;
|
|
/* 0239D108 */ cpu->r[30] = rbrew_read8(cpu->mem, _t34);
|
|
/* 0239D10C */ cpu->r[6] = 0x10080000u;
|
|
/* 0239D110 */ _t35 = cpu->r[1] + 0x000000A0u;
|
|
/* 0239D110 */ rbrew_write32(cpu->mem, _t35, cpu->r[11]);
|
|
/* 0239D114 */ cpu->r[10] = cpu->r[1] + 0x000000A4u;
|
|
/* 0239D118 */ _t36 = cpu->r[1] + 0x00000123u;
|
|
/* 0239D118 */ rbrew_write8(cpu->mem, _t36, (uint8_t)cpu->r[30]);
|
|
/* 0239D11C */ cpu->r[0] = 0x10080000u;
|
|
/* 0239D120 */ _t37 = cpu->r[1] + 0x00000098u;
|
|
/* 0239D120 */ rbrew_write32(cpu->mem, _t37, cpu->r[10]);
|
|
/* 0239D124 */ cpu->r[0] = cpu->r[0] + 0x00006F7Cu;
|
|
/* 0239D128 */ _t38 = cpu->r[1] + 0x000000A4u;
|
|
/* 0239D128 */ rbrew_write8(cpu->mem, _t38, (uint8_t)cpu->r[30]);
|
|
/* 0239D12C */ cpu->r[6] = cpu->r[6] + 0x000070D8u;
|
|
/* 0239D130 */ _t39 = cpu->r[1] + 0x0000009Cu;
|
|
/* 0239D130 */ rbrew_write32(cpu->mem, _t39, cpu->r[0]);
|
|
/* 0239D134 */ _t40 = cpu->r[5] + 0x00000254u;
|
|
/* 0239D134 */ cpu->r[3] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0239D138 */ _t41 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0239D138 */ rbrew_write32(cpu->mem, _t41, cpu->r[6]);
|
|
/* 0239D13C */ cpu->r[4] = cpu->r[1] + 0x0000003Cu;
|
|
/* 0239D140 */ _t42 = cpu->r[1] + 0x00000040u;
|
|
/* 0239D140 */ rbrew_write32(cpu->mem, _t42, cpu->r[27]);
|
|
/* 0239D144 */ Gambit_fn_020ECD78(cpu);
|
|
/* 0239D148 */ _t43 = cpu->r[3] + 0x00000008u;
|
|
/* 0239D148 */ cpu->r[0] = rbrew_read32(cpu->mem, _t43);
|
|
/* 0239D14C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0239D150 */ _t44 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0239D150 */ _t45 = _t44 & 0x00000001u;
|
|
/* 0239D150 */ if (_t45) goto L_0239D154; else goto L_0239D19C;
|
|
L_0239D154: ; // 0x239d154
|
|
/* 0239D154 */ _t46 = cpu->r[3] + 0x00000004u;
|
|
/* 0239D154 */ cpu->r[8] = rbrew_read32(cpu->mem, _t46);
|
|
/* 0239D158 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0239D15C */ _t47 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239D15C */ _t48 = _t47 & 0x00000001u;
|
|
/* 0239D15C */ if (_t48) goto L_0239D19C; else goto L_0239D160;
|
|
L_0239D160: ; // 0x239d160
|
|
/* 0239D160 */ _t49 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0239D160 */ cpu->r[11] = rbrew_read32(cpu->mem, _t49);
|
|
/* 0239D164 */ _t50 = cpu->r[1] + 0x00000098u;
|
|
/* 0239D164 */ cpu->r[23] = rbrew_read32(cpu->mem, _t50);
|
|
/* 0239D168 */ cpu->r[5] = cpu->r[8] - cpu->r[11];
|
|
/* 0239D16C */ _t51 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239D16C */ rbrew_write32(cpu->mem, _t51, cpu->r[27]);
|
|
/* 0239D170 */ _t52 = cpu->r[5] + 0x00000030u;
|
|
/* 0239D170 */ cpu->r[12] = rbrew_read32(cpu->mem, _t52);
|
|
/* 0239D174 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0239D178 */ _t53 = cpu->r[1] + 0x00000008u;
|
|
/* 0239D178 */ rbrew_write32(cpu->mem, _t53, cpu->r[12]);
|
|
/* 0239D17C */ Gambit_fn_023A2118(cpu);
|
|
/* 0239D180 */ _t54 = cpu->r[1] + 0x00000008u;
|
|
/* 0239D180 */ cpu->r[8] = rbrew_read32(cpu->mem, _t54);
|
|
/* 0239D184 */ _t55 = cpu->r[8] + 0x00000000u;
|
|
/* 0239D184 */ cpu->r[0] = rbrew_read8(cpu->mem, _t55);
|
|
/* 0239D188 */ cpu->r[24] = 0x00000000u;
|
|
/* 0239D18C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]);
|
|
/* 0239D190 */ cpu->r[9] = 0x00080000u;
|
|
/* 0239D194 */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239D194 */ _t57 = _t56 & 0x00000001u;
|
|
/* 0239D194 */ if (_t57) goto L_0239D198; else goto L_0239D1D0;
|
|
L_0239D198: ; // 0x239d198
|
|
/* 0239D198 */ goto L_0239D1F4;
|
|
L_0239D19C: ; // 0x239d19c
|
|
/* 0239D19C */ cpu->r[5] = 0x00000000u;
|
|
/* 0239D1A0 */ _t58 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239D1A0 */ rbrew_write32(cpu->mem, _t58, cpu->r[27]);
|
|
/* 0239D1A4 */ _t59 = cpu->r[5] + 0x00000030u;
|
|
/* 0239D1A4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t59);
|
|
/* 0239D1A8 */ _t60 = cpu->r[1] + 0x00000098u;
|
|
/* 0239D1A8 */ cpu->r[23] = rbrew_read32(cpu->mem, _t60);
|
|
/* 0239D1AC */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0239D1B0 */ _t61 = cpu->r[1] + 0x00000008u;
|
|
/* 0239D1B0 */ rbrew_write32(cpu->mem, _t61, cpu->r[12]);
|
|
/* 0239D1B4 */ Gambit_fn_023A2118(cpu);
|
|
/* 0239D1B8 */ _t62 = cpu->r[1] + 0x00000008u;
|
|
/* 0239D1B8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t62);
|
|
/* 0239D1BC */ _t63 = cpu->r[8] + 0x00000000u;
|
|
/* 0239D1BC */ cpu->r[0] = rbrew_read8(cpu->mem, _t63);
|
|
/* 0239D1C0 */ cpu->r[24] = 0x00000000u;
|
|
/* 0239D1C4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]);
|
|
/* 0239D1C8 */ cpu->r[9] = 0x00080000u;
|
|
/* 0239D1CC */ _t64 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239D1CC */ _t65 = _t64 & 0x00000001u;
|
|
/* 0239D1CC */ if (_t65) goto L_0239D1F4; else goto L_0239D1D0;
|
|
L_0239D1D0: ; // 0x239d1d0
|
|
/* 0239D1D0 */ cpu->r[24] = cpu->r[24] + 0x00000001u;
|
|
/* 0239D1D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], cpu->r[9]);
|
|
/* 0239D1D8 */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 0239D1DC */ _t66 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0239D1DC */ _t67 = _t66 & 0x00000001u;
|
|
/* 0239D1DC */ if (_t67) goto L_0239D1F0; else goto L_0239D1E0;
|
|
L_0239D1E0: ; // 0x239d1e0
|
|
/* 0239D1E0 */ _t68 = cpu->r[8] + 0x00000000u;
|
|
/* 0239D1E0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t68);
|
|
/* 0239D1E4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]);
|
|
/* 0239D1E8 */ _t69 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239D1E8 */ _t70 = _t69 & 0x00000001u;
|
|
/* 0239D1E8 */ if (_t70) goto L_0239D1EC; else goto L_0239D1D0;
|
|
L_0239D1EC: ; // 0x239d1ec
|
|
/* 0239D1EC */ goto L_0239D1F4;
|
|
L_0239D1F0: ; // 0x239d1f0
|
|
/* 0239D1F0 */ cpu->r[24] = 0x00000000u;
|
|
L_0239D1F4: ; // 0x239d1f4
|
|
/* 0239D1F4 */ _t71 = cpu->r[1] + 0x000000A0u;
|
|
/* 0239D1F4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t71);
|
|
/* 0239D1F8 */ _t72 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239D1F8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t72);
|
|
/* 0239D1FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], cpu->r[5]);
|
|
/* 0239D200 */ _t73 = cpu->r[8] + 0x00000014u;
|
|
/* 0239D200 */ cpu->r[0] = rbrew_read32(cpu->mem, _t73);
|
|
/* 0239D204 */ _t74 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0239D204 */ _t75 = _t74 & 0x00000001u;
|
|
/* 0239D204 */ if (_t75) goto L_0239D20C; else goto L_0239D208;
|
|
L_0239D208: ; // 0x239d208
|
|
/* 0239D208 */ cpu->r[24] = cpu->r[5] + 0xFFFFFFFFu;
|
|
L_0239D20C: ; // 0x239d20c
|
|
/* 0239D20C */ cpu->ctr = cpu->r[0];
|
|
/* 0239D210 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0239D214 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0239D218 */ _t76 = cpu->r[1] + 0x00000008u;
|
|
/* 0239D218 */ cpu->r[4] = rbrew_read32(cpu->mem, _t76);
|
|
/* 0239D21C */ cpu->r[3] = cpu->r[23];
|
|
/* 0239D220 */ cpu->r[5] = cpu->r[24];
|
|
/* 0239D224 */ cpu->r[6] = 0x00000000u;
|
|
/* 0239D228 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0239D22C */ _t77 = cpu->r[23] + cpu->r[24];
|
|
/* 0239D22C */ rbrew_write8(cpu->mem, _t77, (uint8_t)cpu->r[30]);
|
|
/* 0239D230 */ _t78 = cpu->r[1] + 0x0000009Cu;
|
|
/* 0239D230 */ cpu->r[10] = rbrew_read32(cpu->mem, _t78);
|
|
/* 0239D234 */ _t79 = cpu->r[10] + 0x00000014u;
|
|
/* 0239D234 */ cpu->r[0] = rbrew_read32(cpu->mem, _t79);
|
|
/* 0239D238 */ cpu->ctr = cpu->r[0];
|
|
/* 0239D23C */ cpu->r[3] = cpu->r[1] + 0x00000098u;
|
|
/* 0239D240 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0239D244 */ cpu->r[4] = 0x10080000u;
|
|
/* 0239D248 */ _t80 = cpu->r[1] + 0x00000098u;
|
|
/* 0239D248 */ cpu->r[5] = rbrew_read32(cpu->mem, _t80);
|
|
/* 0239D24C */ cpu->r[3] = cpu->r[1] + 0x00000124u;
|
|
/* 0239D250 */ cpu->r[4] = cpu->r[4] + 0x000070FCu;
|
|
/* 0239D254 */ _t81 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 0239D254 */ _t82 = _t81 & 0x00000001u;
|
|
/* 0239D254 */ if (_t82) goto L_0239D258; // else: addr-0 trap, fall-through
|
|
L_0239D258: ; // 0x239d258
|
|
/* 0239D258 */ Gambit_fn_023A2174(cpu);
|
|
/* 0239D25C */ _t83 = cpu->r[1] + 0x00000014u;
|
|
/* 0239D25C */ rbrew_write32(cpu->mem, _t83, cpu->r[27]);
|
|
/* 0239D260 */ _t84 = cpu->r[3] + 0x00000000u;
|
|
/* 0239D260 */ cpu->r[12] = rbrew_read32(cpu->mem, _t84);
|
|
/* 0239D264 */ cpu->r[3] = cpu->r[1] + 0x00000018u;
|
|
/* 0239D268 */ _t85 = cpu->r[1] + 0x00000098u;
|
|
/* 0239D268 */ cpu->r[0] = rbrew_read32(cpu->mem, _t85);
|
|
/* 0239D26C */ _t86 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239D26C */ rbrew_write32(cpu->mem, _t86, cpu->r[27]);
|
|
/* 0239D270 */ cpu->r[30] = 0x00000000u;
|
|
/* 0239D274 */ _t87 = cpu->r[1] + 0x00000010u;
|
|
/* 0239D274 */ rbrew_write32(cpu->mem, _t87, cpu->r[12]);
|
|
/* 0239D278 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 0239D27C */ _t88 = cpu->r[1] + 0x00000018u;
|
|
/* 0239D27C */ rbrew_write32(cpu->mem, _t88, cpu->r[0]);
|
|
/* 0239D280 */ Gambit_fn_027C6C94(cpu);
|
|
/* 0239D284 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239D288 */ _t89 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239D288 */ _t90 = _t89 & 0x00000001u;
|
|
/* 0239D288 */ if (_t90) goto L_0239D2A0; else goto L_0239D28C;
|
|
L_0239D28C: ; // 0x239d28c
|
|
/* 0239D28C */ cpu->r[3] = cpu->r[31];
|
|
/* 0239D290 */ Gambit_fn_0239C7A0(cpu);
|
|
/* 0239D294 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239D298 */ _t91 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239D298 */ _t92 = _t91 & 0x00000001u;
|
|
/* 0239D298 */ if (_t92) goto L_0239D29C; else goto L_0239D2A0;
|
|
L_0239D29C: ; // 0x239d29c
|
|
/* 0239D29C */ cpu->r[30] = 0x00000001u;
|
|
L_0239D2A0: ; // 0x239d2a0
|
|
/* 0239D2A0 */ cpu->r[5] = 0x00000000u;
|
|
/* 0239D2A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0239D2A8 */ cpu->r[6] = cpu->r[5];
|
|
/* 0239D2AC */ _t93 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239D2AC */ _t94 = _t93 & 0x00000001u;
|
|
/* 0239D2AC */ if (_t94) goto L_0239D384; else goto L_0239D2B0;
|
|
L_0239D2B0: ; // 0x239d2b0
|
|
/* 0239D2B0 */ cpu->r[3] = cpu->r[1] + 0x00000060u;
|
|
/* 0239D2B4 */ cpu->r[4] = cpu->r[1] + 0x00000098u;
|
|
/* 0239D2B8 */ Gambit_fn_027C6980(cpu);
|
|
/* 0239D2BC */ cpu->r[3] = cpu->r[1] + 0x00000044u;
|
|
/* 0239D2C0 */ Gambit_fn_02982574(cpu);
|
|
/* 0239D2C4 */ _t95 = cpu->r[26] + 0xFFFF97D8u;
|
|
/* 0239D2C4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t95);
|
|
/* 0239D2C8 */ _t96 = cpu->r[25] + 0xFFFF97D0u;
|
|
/* 0239D2C8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t96);
|
|
/* 0239D2CC */ _t97 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0239D2CC */ rbrew_write8(cpu->mem, _t97, (uint8_t)cpu->r[0]);
|
|
/* 0239D2D0 */ _t98 = cpu->r[1] + 0x00000048u;
|
|
/* 0239D2D0 */ rbrew_write32(cpu->mem, _t98, cpu->r[5]);
|
|
/* 0239D2D4 */ cpu->r[11] = 0x101D0000u;
|
|
/* 0239D2D8 */ _t99 = cpu->r[28] + 0xFFFF97D4u;
|
|
/* 0239D2D8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t99);
|
|
/* 0239D2DC */ _t100 = cpu->r[11] + 0xFFFF97D9u;
|
|
/* 0239D2DC */ cpu->r[0] = rbrew_read8(cpu->mem, _t100);
|
|
/* 0239D2E0 */ _t101 = cpu->r[1] + 0x00000058u;
|
|
/* 0239D2E0 */ rbrew_write32(cpu->mem, _t101, cpu->r[6]);
|
|
/* 0239D2E4 */ cpu->r[3] = cpu->r[1] + 0x00000080u;
|
|
/* 0239D2E8 */ _t102 = cpu->r[1] + 0x0000005Du;
|
|
/* 0239D2E8 */ rbrew_write8(cpu->mem, _t102, (uint8_t)cpu->r[0]);
|
|
/* 0239D2EC */ Gambit_fn_02984F3C(cpu);
|
|
/* 0239D2F0 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 0239D2F4 */ cpu->r[5] = cpu->r[1] + 0x00000060u;
|
|
/* 0239D2F8 */ cpu->r[7] = 0x00000006u;
|
|
/* 0239D2FC */ cpu->r[4] = cpu->r[3];
|
|
/* 0239D300 */ cpu->r[6] = cpu->r[1] + 0x00000044u;
|
|
/* 0239D304 */ _t103 = cpu->r[1] + 0x00000084u;
|
|
/* 0239D304 */ rbrew_write32(cpu->mem, _t103, cpu->r[7]);
|
|
/* 0239D308 */ cpu->r[7] = cpu->r[1] + 0x00000080u;
|
|
/* 0239D30C */ cpu->r[8] = 0x00000000u;
|
|
/* 0239D310 */ Gambit_fn_027F50B0(cpu);
|
|
/* 0239D314 */ _t104 = cpu->r[31] + 0x00000008u;
|
|
/* 0239D314 */ rbrew_write32(cpu->mem, _t104, cpu->r[3]);
|
|
/* 0239D318 */ _t105 = cpu->r[29] + 0x00006000u;
|
|
/* 0239D318 */ cpu->r[6] = rbrew_read32(cpu->mem, _t105);
|
|
/* 0239D31C */ _t106 = cpu->r[6] + 0x0000025Cu;
|
|
/* 0239D31C */ cpu->r[7] = rbrew_read32(cpu->mem, _t106);
|
|
/* 0239D320 */ _t107 = cpu->r[7] + 0x0000000Cu;
|
|
/* 0239D320 */ cpu->r[4] = rbrew_read32(cpu->mem, _t107);
|
|
/* 0239D324 */ Gambit_fn_0297FD44(cpu);
|
|
/* 0239D328 */ cpu->r[3] = cpu->r[31];
|
|
/* 0239D32C */ cpu->r[4] = cpu->r[31] + 0x000001A0u;
|
|
/* 0239D330 */ Gambit_fn_0239CB64(cpu);
|
|
/* 0239D334 */ cpu->r[3] = 0x00000000u;
|
|
/* 0239D338 */ Gambit_fn_02043B8C(cpu);
|
|
/* 0239D33C */ _t108 = cpu->r[31] + 0x00000224u;
|
|
/* 0239D33C */ rbrew_write32(cpu->mem, _t108, cpu->r[3]);
|
|
/* 0239D340 */ cpu->r[3] = cpu->r[1] + 0x00000070u;
|
|
/* 0239D344 */ Gambit_fn_024238C8(cpu);
|
|
/* 0239D348 */ cpu->r[8] = 0x00000006u;
|
|
/* 0239D34C */ cpu->r[9] = 0x00000008u;
|
|
/* 0239D350 */ cpu->r[3] = 0x00000000u;
|
|
/* 0239D354 */ _t109 = cpu->r[1] + 0x00000070u;
|
|
/* 0239D354 */ rbrew_write32(cpu->mem, _t109, cpu->r[8]);
|
|
/* 0239D358 */ cpu->r[4] = cpu->r[1] + 0x00000070u;
|
|
/* 0239D35C */ _t110 = cpu->r[1] + 0x00000074u;
|
|
/* 0239D35C */ rbrew_write32(cpu->mem, _t110, cpu->r[9]);
|
|
/* 0239D360 */ Gambit_fn_02423658(cpu);
|
|
/* 0239D364 */ cpu->r[4] = cpu->r[3];
|
|
/* 0239D364 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 0239D368 */ cpu->r[11] = 0x101C0000u;
|
|
/* 0239D36C */ _t111 = cpu->r[29] + 0x00006000u;
|
|
/* 0239D36C */ cpu->r[10] = rbrew_read32(cpu->mem, _t111);
|
|
/* 0239D370 */ _t112 = cpu->r[11] + 0x00005C08u;
|
|
/* 0239D370 */ rbrew_write32(cpu->mem, _t112, cpu->r[4]);
|
|
/* 0239D374 */ _t113 = cpu->r[10] + 0x00000250u;
|
|
/* 0239D374 */ cpu->r[12] = rbrew_read32(cpu->mem, _t113);
|
|
/* 0239D378 */ _t114 = cpu->r[12] + 0x00000250u;
|
|
/* 0239D378 */ cpu->r[3] = rbrew_read32(cpu->mem, _t114);
|
|
/* 0239D37C */ _t115 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239D37C */ _t116 = _t115 & 0x00000001u;
|
|
/* 0239D37C */ if (_t116) goto L_0239D46C; else goto L_0239D380;
|
|
L_0239D380: ; // 0x239d380
|
|
/* 0239D380 */ goto L_0239D468;
|
|
L_0239D384: ; // 0x239d384
|
|
/* 0239D384 */ cpu->r[30] = 0x10080000u;
|
|
/* 0239D388 */ _t117 = cpu->r[1] + 0x00000048u;
|
|
/* 0239D388 */ rbrew_write32(cpu->mem, _t117, cpu->r[27]);
|
|
/* 0239D38C */ cpu->r[3] = cpu->r[1] + 0x00000080u;
|
|
/* 0239D390 */ cpu->r[30] = cpu->r[30] + 0x000070E0u;
|
|
/* 0239D394 */ cpu->r[4] = cpu->r[1] + 0x00000044u;
|
|
/* 0239D398 */ _t118 = cpu->r[1] + 0x00000044u;
|
|
/* 0239D398 */ rbrew_write32(cpu->mem, _t118, cpu->r[30]);
|
|
/* 0239D39C */ Gambit_fn_027C6980(cpu);
|
|
/* 0239D3A0 */ cpu->r[3] = cpu->r[1] + 0x00000054u;
|
|
/* 0239D3A4 */ Gambit_fn_02982574(cpu);
|
|
/* 0239D3A8 */ _t119 = cpu->r[26] + 0xFFFF97D8u;
|
|
/* 0239D3A8 */ cpu->r[6] = rbrew_read8(cpu->mem, _t119);
|
|
/* 0239D3AC */ cpu->r[12] = 0x101D0000u;
|
|
/* 0239D3B0 */ _t120 = cpu->r[25] + 0xFFFF97D0u;
|
|
/* 0239D3B0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t120);
|
|
/* 0239D3B4 */ _t121 = cpu->r[12] + 0xFFFF97D9u;
|
|
/* 0239D3B4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t121);
|
|
/* 0239D3B8 */ _t122 = cpu->r[1] + 0x00000058u;
|
|
/* 0239D3B8 */ rbrew_write32(cpu->mem, _t122, cpu->r[9]);
|
|
/* 0239D3BC */ _t123 = cpu->r[28] + 0xFFFF97D4u;
|
|
/* 0239D3BC */ cpu->r[11] = rbrew_read32(cpu->mem, _t123);
|
|
/* 0239D3C0 */ _t124 = cpu->r[1] + 0x0000006Cu;
|
|
/* 0239D3C0 */ rbrew_write8(cpu->mem, _t124, (uint8_t)cpu->r[6]);
|
|
/* 0239D3C4 */ _t125 = cpu->r[1] + 0x00000068u;
|
|
/* 0239D3C4 */ rbrew_write32(cpu->mem, _t125, cpu->r[11]);
|
|
/* 0239D3C8 */ cpu->r[3] = cpu->r[1] + 0x00000088u;
|
|
/* 0239D3CC */ _t126 = cpu->r[1] + 0x0000006Du;
|
|
/* 0239D3CC */ rbrew_write8(cpu->mem, _t126, (uint8_t)cpu->r[0]);
|
|
/* 0239D3D0 */ Gambit_fn_02984F3C(cpu);
|
|
/* 0239D3D4 */ cpu->r[3] = cpu->r[1] + 0x0000004Cu;
|
|
/* 0239D3D8 */ cpu->r[12] = 0x00000006u;
|
|
/* 0239D3DC */ _t127 = cpu->r[1] + 0x00000050u;
|
|
/* 0239D3DC */ rbrew_write32(cpu->mem, _t127, cpu->r[27]);
|
|
/* 0239D3E0 */ cpu->r[5] = cpu->r[1] + 0x00000054u;
|
|
/* 0239D3E4 */ cpu->r[7] = 0x00000000u;
|
|
/* 0239D3E8 */ _t128 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0239D3E8 */ rbrew_write32(cpu->mem, _t128, cpu->r[12]);
|
|
/* 0239D3EC */ cpu->r[6] = cpu->r[1] + 0x00000088u;
|
|
/* 0239D3F0 */ cpu->r[4] = cpu->r[1] + 0x00000080u;
|
|
/* 0239D3F4 */ _t129 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0239D3F4 */ rbrew_write32(cpu->mem, _t129, cpu->r[30]);
|
|
/* 0239D3F8 */ Gambit_fn_027F4F78(cpu);
|
|
/* 0239D3FC */ _t130 = cpu->r[31] + 0x00000008u;
|
|
/* 0239D3FC */ rbrew_write32(cpu->mem, _t130, cpu->r[3]);
|
|
/* 0239D400 */ _t131 = cpu->r[29] + 0x00006000u;
|
|
/* 0239D400 */ cpu->r[6] = rbrew_read32(cpu->mem, _t131);
|
|
/* 0239D404 */ _t132 = cpu->r[6] + 0x0000025Cu;
|
|
/* 0239D404 */ cpu->r[7] = rbrew_read32(cpu->mem, _t132);
|
|
/* 0239D408 */ _t133 = cpu->r[7] + 0x0000000Cu;
|
|
/* 0239D408 */ cpu->r[4] = rbrew_read32(cpu->mem, _t133);
|
|
/* 0239D40C */ Gambit_fn_0297FD44(cpu);
|
|
/* 0239D410 */ cpu->r[4] = cpu->r[31] + 0x000001A0u;
|
|
/* 0239D414 */ cpu->r[3] = cpu->r[31];
|
|
/* 0239D418 */ Gambit_fn_0239CB64(cpu);
|
|
/* 0239D41C */ cpu->r[3] = 0x00000000u;
|
|
/* 0239D420 */ Gambit_fn_02043B8C(cpu);
|
|
/* 0239D424 */ _t134 = cpu->r[31] + 0x00000224u;
|
|
/* 0239D424 */ rbrew_write32(cpu->mem, _t134, cpu->r[3]);
|
|
/* 0239D428 */ cpu->r[3] = cpu->r[1] + 0x00000070u;
|
|
/* 0239D42C */ Gambit_fn_024238C8(cpu);
|
|
/* 0239D430 */ cpu->r[8] = 0x00000006u;
|
|
/* 0239D434 */ cpu->r[9] = 0x00000008u;
|
|
/* 0239D438 */ cpu->r[4] = cpu->r[1] + 0x00000070u;
|
|
/* 0239D43C */ _t135 = cpu->r[1] + 0x00000070u;
|
|
/* 0239D43C */ rbrew_write32(cpu->mem, _t135, cpu->r[8]);
|
|
/* 0239D440 */ cpu->r[3] = 0x00000000u;
|
|
/* 0239D444 */ _t136 = cpu->r[1] + 0x00000074u;
|
|
/* 0239D444 */ rbrew_write32(cpu->mem, _t136, cpu->r[9]);
|
|
/* 0239D448 */ Gambit_fn_02423658(cpu);
|
|
/* 0239D44C */ cpu->r[4] = cpu->r[3];
|
|
/* 0239D44C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 0239D450 */ cpu->r[11] = 0x101C0000u;
|
|
/* 0239D454 */ _t137 = cpu->r[29] + 0x00006000u;
|
|
/* 0239D454 */ cpu->r[10] = rbrew_read32(cpu->mem, _t137);
|
|
/* 0239D458 */ _t138 = cpu->r[11] + 0x00005C08u;
|
|
/* 0239D458 */ rbrew_write32(cpu->mem, _t138, cpu->r[4]);
|
|
/* 0239D45C */ _t139 = cpu->r[10] + 0x00000250u;
|
|
/* 0239D45C */ cpu->r[12] = rbrew_read32(cpu->mem, _t139);
|
|
/* 0239D460 */ _t140 = cpu->r[12] + 0x00000250u;
|
|
/* 0239D460 */ cpu->r[3] = rbrew_read32(cpu->mem, _t140);
|
|
/* 0239D464 */ _t141 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239D464 */ _t142 = _t141 & 0x00000001u;
|
|
/* 0239D464 */ if (_t142) goto L_0239D46C; else goto L_0239D468;
|
|
L_0239D468: ; // 0x239d468
|
|
/* 0239D468 */ cpu->r[4] = cpu->r[4] + 0x00000010u;
|
|
L_0239D46C: ; // 0x239d46c
|
|
/* 0239D46C */ cpu->r[5] = 0x00000000u;
|
|
/* 0239D470 */ Gambit_fn_027EFC10(cpu);
|
|
/* 0239D474 */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 0239D478 */ Gambit_fn_02019890(cpu);
|
|
/* 0239D47C */ _t143 = cpu->r[1] + 0x00000020u;
|
|
/* 0239D47C */ cpu->r[5] = rbrew_read32(cpu->mem, _t143);
|
|
/* 0239D480 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 0239D484 */ _t144 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239D484 */ _t145 = _t144 & 0x00000001u;
|
|
/* 0239D484 */ if (_t145) goto L_0239D488; else goto L_0239D4B4;
|
|
L_0239D488: ; // 0x239d488
|
|
/* 0239D488 */ cpu->r[9] = 0x101D0000u;
|
|
/* 0239D48C */ _t146 = cpu->r[9] + 0xFFFF80F4u;
|
|
/* 0239D48C */ cpu->r[9] = rbrew_read32(cpu->mem, _t146);
|
|
/* 0239D490 */ cpu->r[10] = 0x00000001u;
|
|
/* 0239D494 */ _t147 = cpu->r[9] + 0x000002D8u;
|
|
/* 0239D494 */ cpu->r[6] = rbrew_read32(cpu->mem, _t147);
|
|
/* 0239D498 */ _t148 = cpu->r[1] + 0x00000024u;
|
|
/* 0239D498 */ rbrew_write32(cpu->mem, _t148, cpu->r[10]);
|
|
/* 0239D49C */ cpu->r[3] = 0x00000000u;
|
|
/* 0239D4A0 */ cpu->r[4] = cpu->r[1] + 0x00000024u;
|
|
/* 0239D4A4 */ _t149 = cpu->r[31] + 0x00000184u;
|
|
/* 0239D4A4 */ rbrew_write32(cpu->mem, _t149, cpu->r[6]);
|
|
/* 0239D4A8 */ Gambit_fn_026B8E54(cpu);
|
|
/* 0239D4AC */ _t150 = cpu->r[31] + 0x000002C4u;
|
|
/* 0239D4AC */ rbrew_write32(cpu->mem, _t150, cpu->r[3]);
|
|
/* 0239D4B0 */ goto L_0239D570;
|
|
L_0239D4B4: ; // 0x239d4b4
|
|
/* 0239D4B4 */ cpu->r[3] = cpu->r[1] + 0x00000030u;
|
|
/* 0239D4B8 */ Gambit_fn_02019890(cpu);
|
|
/* 0239D4BC */ _t151 = cpu->r[1] + 0x00000030u;
|
|
/* 0239D4BC */ cpu->r[7] = rbrew_read32(cpu->mem, _t151);
|
|
/* 0239D4C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x0000000Eu);
|
|
/* 0239D4C4 */ _t152 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239D4C4 */ _t153 = _t152 & 0x00000001u;
|
|
/* 0239D4C4 */ if (_t153) goto L_0239D4C8; else goto L_0239D4F4;
|
|
L_0239D4C8: ; // 0x239d4c8
|
|
/* 0239D4C8 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0239D4CC */ _t154 = cpu->r[12] + 0x00005B60u;
|
|
/* 0239D4CC */ cpu->r[12] = rbrew_read32(cpu->mem, _t154);
|
|
/* 0239D4D0 */ cpu->r[10] = 0x00000001u;
|
|
/* 0239D4D4 */ _t155 = cpu->r[12] + 0x000002DCu;
|
|
/* 0239D4D4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t155);
|
|
/* 0239D4D8 */ _t156 = cpu->r[1] + 0x00000024u;
|
|
/* 0239D4D8 */ rbrew_write32(cpu->mem, _t156, cpu->r[10]);
|
|
/* 0239D4DC */ cpu->r[3] = 0x00000000u;
|
|
/* 0239D4E0 */ cpu->r[4] = cpu->r[1] + 0x00000024u;
|
|
/* 0239D4E4 */ _t157 = cpu->r[31] + 0x00000184u;
|
|
/* 0239D4E4 */ rbrew_write32(cpu->mem, _t157, cpu->r[8]);
|
|
/* 0239D4E8 */ Gambit_fn_026B8E54(cpu);
|
|
/* 0239D4EC */ _t158 = cpu->r[31] + 0x000002C4u;
|
|
/* 0239D4EC */ rbrew_write32(cpu->mem, _t158, cpu->r[3]);
|
|
/* 0239D4F0 */ goto L_0239D570;
|
|
L_0239D4F4: ; // 0x239d4f4
|
|
/* 0239D4F4 */ cpu->r[3] = cpu->r[1] + 0x00000034u;
|
|
/* 0239D4F8 */ Gambit_fn_02019890(cpu);
|
|
/* 0239D4FC */ _t159 = cpu->r[1] + 0x00000034u;
|
|
/* 0239D4FC */ cpu->r[10] = rbrew_read32(cpu->mem, _t159);
|
|
/* 0239D500 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000009u);
|
|
/* 0239D504 */ _t160 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239D504 */ _t161 = _t160 & 0x00000001u;
|
|
/* 0239D504 */ if (_t161) goto L_0239D508; else goto L_0239D534;
|
|
L_0239D508: ; // 0x239d508
|
|
/* 0239D508 */ cpu->r[11] = 0x101D0000u;
|
|
/* 0239D50C */ _t162 = cpu->r[11] + 0xFFFF8130u;
|
|
/* 0239D50C */ cpu->r[11] = rbrew_read32(cpu->mem, _t162);
|
|
/* 0239D510 */ cpu->r[10] = 0x00000001u;
|
|
/* 0239D514 */ _t163 = cpu->r[11] + 0x000002D8u;
|
|
/* 0239D514 */ cpu->r[0] = rbrew_read32(cpu->mem, _t163);
|
|
/* 0239D518 */ _t164 = cpu->r[1] + 0x00000024u;
|
|
/* 0239D518 */ rbrew_write32(cpu->mem, _t164, cpu->r[10]);
|
|
/* 0239D51C */ cpu->r[3] = 0x00000000u;
|
|
/* 0239D520 */ cpu->r[4] = cpu->r[1] + 0x00000024u;
|
|
/* 0239D524 */ _t165 = cpu->r[31] + 0x00000184u;
|
|
/* 0239D524 */ rbrew_write32(cpu->mem, _t165, cpu->r[0]);
|
|
/* 0239D528 */ Gambit_fn_026B8E54(cpu);
|
|
/* 0239D52C */ _t166 = cpu->r[31] + 0x000002C4u;
|
|
/* 0239D52C */ rbrew_write32(cpu->mem, _t166, cpu->r[3]);
|
|
/* 0239D530 */ goto L_0239D570;
|
|
L_0239D534: ; // 0x239d534
|
|
/* 0239D534 */ cpu->r[3] = cpu->r[1] + 0x00000038u;
|
|
/* 0239D538 */ Gambit_fn_02019890(cpu);
|
|
/* 0239D53C */ _t167 = cpu->r[1] + 0x00000038u;
|
|
/* 0239D53C */ cpu->r[7] = rbrew_read32(cpu->mem, _t167);
|
|
/* 0239D540 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000003u);
|
|
/* 0239D544 */ _t168 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239D544 */ _t169 = _t168 & 0x00000001u;
|
|
/* 0239D544 */ if (_t169) goto L_0239D548; else goto L_0239D558;
|
|
L_0239D548: ; // 0x239d548
|
|
/* 0239D548 */ cpu->r[10] = 0x101D0000u;
|
|
/* 0239D54C */ _t170 = cpu->r[10] + 0xFFFF85A8u;
|
|
/* 0239D54C */ cpu->r[10] = rbrew_read32(cpu->mem, _t170);
|
|
/* 0239D550 */ _t171 = cpu->r[10] + 0x000002DCu;
|
|
/* 0239D550 */ cpu->r[12] = rbrew_read32(cpu->mem, _t171);
|
|
/* 0239D554 */ _t172 = cpu->r[31] + 0x00000188u;
|
|
/* 0239D554 */ rbrew_write32(cpu->mem, _t172, cpu->r[12]);
|
|
L_0239D558: ; // 0x239d558
|
|
/* 0239D558 */ cpu->r[10] = 0x00000001u;
|
|
/* 0239D55C */ cpu->r[3] = 0x00000000u;
|
|
/* 0239D560 */ cpu->r[4] = cpu->r[1] + 0x00000024u;
|
|
/* 0239D564 */ _t173 = cpu->r[1] + 0x00000024u;
|
|
/* 0239D564 */ rbrew_write32(cpu->mem, _t173, cpu->r[10]);
|
|
/* 0239D568 */ Gambit_fn_026B8E54(cpu);
|
|
/* 0239D56C */ _t174 = cpu->r[31] + 0x000002C4u;
|
|
/* 0239D56C */ rbrew_write32(cpu->mem, _t174, cpu->r[3]);
|
|
L_0239D570: ; // 0x239d570
|
|
/* 0239D570 */ /* nop */
|
|
/* 0239D574 */ _t175 = cpu->r[1] + 0x000001DCu;
|
|
/* 0239D574 */ cpu->r[0] = rbrew_read32(cpu->mem, _t175);
|
|
/* 0239D578 */ cpu->lr = cpu->r[0];
|
|
/* 0239D57C */ cpu->r[1] = cpu->r[1] + 0x000001D8u;
|
|
/* 0239D580 */ return;
|
|
}
|
|
|
|
// fn_0239D584 @ 0x239d584
|
|
void Gambit_fn_0239D584(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95;
|
|
|
|
L_0239D584: ; // 0x239d584
|
|
/* 0239D584 */ cpu->r[0] = cpu->lr;
|
|
/* 0239D588 */ cpu->r[12] = 0x00000003u;
|
|
/* 0239D58C */ _t0 = cpu->r[1] + 0xFFFFFFB0u;
|
|
/* 0239D58C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239D58C */ cpu->r[1] = _t0;
|
|
/* 0239D590 */ cpu->ctr = cpu->r[12];
|
|
/* 0239D594 */ _t1 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0239D594 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0239D598 */ cpu->r[11] = cpu->r[1] + 0x00000004u;
|
|
/* 0239D59C */ cpu->r[10] = cpu->r[3] + 0x00000094u;
|
|
/* 0239D5A0 */ _t2 = cpu->r[1] + 0x00000048u;
|
|
/* 0239D5A0 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0239D5A4 */ _t3 = cpu->r[1] + 0x00000054u;
|
|
/* 0239D5A4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
L_0239D5A8: ; // 0x239d5a8
|
|
/* 0239D5A8 */ _t4 = cpu->r[10] + 0x00000004u;
|
|
/* 0239D5A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0239D5AC */ _t5 = cpu->r[11] + 0x00000004u;
|
|
/* 0239D5AC */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0239D5B0 */ _t6 = cpu->r[10] + 0x00000008u;
|
|
/* 0239D5B0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0239D5B4 */ _t7 = cpu->r[11] + 0x00000008u;
|
|
/* 0239D5B4 */ rbrew_write32(cpu->mem, _t7, cpu->r[4]);
|
|
/* 0239D5B8 */ _t8 = cpu->r[10] + 0x0000000Cu;
|
|
/* 0239D5B8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0239D5B8 */ cpu->r[10] = _t8;
|
|
/* 0239D5BC */ _t9 = cpu->r[11] + 0x0000000Cu;
|
|
/* 0239D5BC */ rbrew_write32(cpu->mem, _t9, cpu->r[6]);
|
|
/* 0239D5BC */ cpu->r[11] = _t9;
|
|
/* 0239D5C0 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0239D5C0 */ _t10 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0239D5C0 */ _t11 = _t10 >> (0x00000002u & 31u);
|
|
/* 0239D5C0 */ _t12 = _t11 & 0x00000001u;
|
|
/* 0239D5C0 */ if (_t12) goto L_0239D5A8; else goto L_0239D5C4;
|
|
L_0239D5C4: ; // 0x239d5c4
|
|
/* 0239D5C4 */ cpu->r[31] = 0x101C0000u;
|
|
/* 0239D5C8 */ _t13 = cpu->r[31] + 0x00006000u;
|
|
/* 0239D5C8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0239D5CC */ _t14 = cpu->r[7] + 0x00000268u;
|
|
/* 0239D5CC */ cpu->r[30] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0239D5D0 */ cpu->r[3] = cpu->r[30];
|
|
/* 0239D5D4 */ Gambit_fn_0261F774(cpu);
|
|
/* 0239D5D8 */ cpu->r[4] = cpu->r[3];
|
|
/* 0239D5DC */ cpu->r[3] = cpu->r[30];
|
|
/* 0239D5E0 */ Gambit_fn_0261F55C(cpu);
|
|
/* 0239D5E4 */ _t15 = cpu->r[31] + 0x00006000u;
|
|
/* 0239D5E4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0239D5E8 */ _t16 = cpu->r[8] + 0x00000264u;
|
|
/* 0239D5E8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0239D5EC */ _t17 = cpu->r[5] + 0x00000030u;
|
|
/* 0239D5EC */ cpu->r[9] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0239D5F0 */ _t18 = cpu->r[9] + 0x00000018u;
|
|
/* 0239D5F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0239D5F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0239D5F8 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239D5F8 */ _t20 = _t19 & 0x00000001u;
|
|
/* 0239D5F8 */ if (_t20) goto L_0239D704; else goto L_0239D5FC;
|
|
L_0239D5FC: ; // 0x239d5fc
|
|
/* 0239D5FC */ cpu->r[11] = 0x101C0000u;
|
|
/* 0239D600 */ _t21 = cpu->r[11] + 0x000068D8u;
|
|
/* 0239D600 */ cpu->r[11] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0239D604 */ cpu->r[11] = cpu->r[5] + cpu->r[11];
|
|
/* 0239D608 */ _t22 = cpu->r[11] + 0x00000104u;
|
|
/* 0239D608 */ cpu->r[4] = rbrew_read8(cpu->mem, _t22);
|
|
/* 0239D60C */ _t23 = cpu->r[5] + 0x00000030u;
|
|
/* 0239D60C */ cpu->r[5] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0239D610 */ cpu->r[12] = rbrew_rlwinm(cpu->r[4], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239D614 */ _t24 = cpu->r[12] + cpu->r[5];
|
|
/* 0239D614 */ cpu->r[6] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0239D618 */ _t25 = cpu->r[6] + 0x00000008u;
|
|
/* 0239D618 */ cpu->r[4] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0239D61C */ _t26 = cpu->r[4] + 0x0000000Cu;
|
|
/* 0239D61C */ cpu->r[0] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0239D620 */ _t27 = cpu->r[4] + 0x00000004u;
|
|
/* 0239D620 */ cpu->r[7] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0239D624 */ cpu->r[12] = cpu->r[4] - cpu->r[0];
|
|
/* 0239D628 */ cpu->r[5] = cpu->r[7] - cpu->r[0];
|
|
/* 0239D62C */ goto L_0239D63C;
|
|
L_0239D630: ; // 0x239d630
|
|
/* 0239D630 */ cpu->r[5] = cpu->r[5] + cpu->r[0];
|
|
/* 0239D634 */ _t28 = cpu->r[5] + 0x00000004u;
|
|
/* 0239D634 */ cpu->r[8] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0239D638 */ cpu->r[5] = cpu->r[8] - cpu->r[0];
|
|
L_0239D63C: ; // 0x239d63c
|
|
/* 0239D63C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[12]);
|
|
/* 0239D640 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239D640 */ _t30 = _t29 & 0x00000001u;
|
|
/* 0239D640 */ if (_t30) goto L_0239D658; else goto L_0239D644;
|
|
L_0239D644: ; // 0x239d644
|
|
/* 0239D644 */ _t31 = cpu->r[5] + 0x0000001Cu;
|
|
/* 0239D644 */ cpu->r[4] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0239D648 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000002u);
|
|
/* 0239D64C */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239D64C */ _t33 = _t32 & 0x00000001u;
|
|
/* 0239D64C */ if (_t33) goto L_0239D658; else goto L_0239D650;
|
|
L_0239D650: ; // 0x239d650
|
|
/* 0239D650 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000003u);
|
|
/* 0239D654 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239D654 */ _t35 = _t34 & 0x00000001u;
|
|
/* 0239D654 */ if (_t35) goto L_0239D658; else goto L_0239D630;
|
|
L_0239D658: ; // 0x239d658
|
|
/* 0239D658 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[12]);
|
|
/* 0239D65C */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239D65C */ _t37 = _t36 & 0x00000001u;
|
|
/* 0239D65C */ if (_t37) goto L_0239D704; else goto L_0239D660;
|
|
L_0239D660: ; // 0x239d660
|
|
/* 0239D660 */ cpu->r[9] = cpu->r[0];
|
|
/* 0239D664 */ cpu->r[10] = cpu->r[12];
|
|
L_0239D668: ; // 0x239d668
|
|
/* 0239D668 */ _t38 = cpu->r[5] + 0x0000002Cu;
|
|
/* 0239D668 */ cpu->r[8] = rbrew_read32(cpu->mem, _t38);
|
|
/* 0239D66C */ _t39 = cpu->r[3] + 0x0000002Cu;
|
|
/* 0239D66C */ cpu->r[6] = rbrew_read32(cpu->mem, _t39);
|
|
/* 0239D670 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[6]);
|
|
/* 0239D674 */ _t40 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239D674 */ _t41 = _t40 & 0x00000001u;
|
|
/* 0239D674 */ if (_t41) goto L_0239D678; else goto L_0239D6D0;
|
|
L_0239D678: ; // 0x239d678
|
|
/* 0239D678 */ _t42 = cpu->r[5] + 0x00000054u;
|
|
/* 0239D678 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 0239D67C */ _t43 = cpu->r[1] + 0x00000008u;
|
|
/* 0239D67C */ rbrew_write_f32(cpu->mem, _t43, cpu->f[9]);
|
|
/* 0239D680 */ _t44 = cpu->r[5] + 0x00000058u;
|
|
/* 0239D680 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 0239D684 */ _t45 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239D684 */ rbrew_write_f32(cpu->mem, _t45, cpu->f[12]);
|
|
/* 0239D688 */ _t46 = cpu->r[5] + 0x0000005Cu;
|
|
/* 0239D688 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t46);
|
|
/* 0239D68C */ _t47 = cpu->r[1] + 0x00000010u;
|
|
/* 0239D68C */ rbrew_write_f32(cpu->mem, _t47, cpu->f[0]);
|
|
/* 0239D690 */ _t48 = cpu->r[5] + 0x00000060u;
|
|
/* 0239D690 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 0239D694 */ _t49 = cpu->r[1] + 0x00000014u;
|
|
/* 0239D694 */ rbrew_write_f32(cpu->mem, _t49, cpu->f[12]);
|
|
/* 0239D698 */ _t50 = cpu->r[5] + 0x00000064u;
|
|
/* 0239D698 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t50);
|
|
/* 0239D69C */ _t51 = cpu->r[1] + 0x00000018u;
|
|
/* 0239D69C */ rbrew_write_f32(cpu->mem, _t51, cpu->f[13]);
|
|
/* 0239D6A0 */ _t52 = cpu->r[5] + 0x00000068u;
|
|
/* 0239D6A0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 0239D6A4 */ _t53 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239D6A4 */ rbrew_write_f32(cpu->mem, _t53, cpu->f[0]);
|
|
/* 0239D6A8 */ _t54 = cpu->r[5] + 0x0000006Cu;
|
|
/* 0239D6A8 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 0239D6AC */ _t55 = cpu->r[1] + 0x00000020u;
|
|
/* 0239D6AC */ rbrew_write_f32(cpu->mem, _t55, cpu->f[6]);
|
|
/* 0239D6B0 */ _t56 = cpu->r[5] + 0x00000070u;
|
|
/* 0239D6B0 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 0239D6B4 */ _t57 = cpu->r[1] + 0x00000024u;
|
|
/* 0239D6B4 */ rbrew_write_f32(cpu->mem, _t57, cpu->f[7]);
|
|
/* 0239D6B8 */ _t58 = cpu->r[5] + 0x00000074u;
|
|
/* 0239D6B8 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 0239D6BC */ _t59 = cpu->r[1] + 0x00000028u;
|
|
/* 0239D6BC */ rbrew_write_f32(cpu->mem, _t59, cpu->f[8]);
|
|
/* 0239D6C0 */ _t60 = cpu->r[3] + 0x0000002Cu;
|
|
/* 0239D6C0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t60);
|
|
/* 0239D6C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000001u);
|
|
/* 0239D6C8 */ _t61 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239D6C8 */ _t62 = _t61 & 0x00000001u;
|
|
/* 0239D6C8 */ if (_t62) goto L_0239D6CC; else goto L_0239D720;
|
|
L_0239D6CC: ; // 0x239d6cc
|
|
/* 0239D6CC */ goto L_0239D710;
|
|
L_0239D6D0: ; // 0x239d6d0
|
|
/* 0239D6D0 */ cpu->r[5] = cpu->r[5] + cpu->r[9];
|
|
/* 0239D6D4 */ _t63 = cpu->r[5] + 0x00000004u;
|
|
/* 0239D6D4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t63);
|
|
/* 0239D6D8 */ cpu->r[5] = cpu->r[11] - cpu->r[9];
|
|
/* 0239D6DC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[10]);
|
|
/* 0239D6E0 */ _t64 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239D6E0 */ _t65 = _t64 & 0x00000001u;
|
|
/* 0239D6E0 */ if (_t65) goto L_0239D704; else goto L_0239D6E4;
|
|
L_0239D6E4: ; // 0x239d6e4
|
|
/* 0239D6E4 */ _t66 = cpu->r[5] + 0x0000001Cu;
|
|
/* 0239D6E4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t66);
|
|
/* 0239D6E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000002u);
|
|
/* 0239D6EC */ _t67 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239D6EC */ _t68 = _t67 & 0x00000001u;
|
|
/* 0239D6EC */ if (_t68) goto L_0239D6FC; else goto L_0239D6F0;
|
|
L_0239D6F0: ; // 0x239d6f0
|
|
/* 0239D6F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000003u);
|
|
/* 0239D6F4 */ _t69 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239D6F4 */ _t70 = _t69 & 0x00000001u;
|
|
/* 0239D6F4 */ if (_t70) goto L_0239D6F8; else goto L_0239D6D0;
|
|
L_0239D6F8: ; // 0x239d6f8
|
|
/* 0239D6F8 */ goto L_0239D658;
|
|
L_0239D6FC: ; // 0x239d6fc
|
|
/* 0239D6FC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[10]);
|
|
/* 0239D700 */ _t71 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239D700 */ _t72 = _t71 & 0x00000001u;
|
|
/* 0239D700 */ if (_t72) goto L_0239D704; else goto L_0239D668;
|
|
L_0239D704: ; // 0x239d704
|
|
/* 0239D704 */ _t73 = cpu->r[3] + 0x0000002Cu;
|
|
/* 0239D704 */ cpu->r[11] = rbrew_read32(cpu->mem, _t73);
|
|
/* 0239D708 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000001u);
|
|
/* 0239D70C */ _t74 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239D70C */ _t75 = _t74 & 0x00000001u;
|
|
/* 0239D70C */ if (_t75) goto L_0239D710; else goto L_0239D720;
|
|
L_0239D710: ; // 0x239d710
|
|
/* 0239D710 */ cpu->r[7] = 0x10080000u;
|
|
/* 0239D714 */ _t76 = cpu->r[7] + 0x00007128u;
|
|
/* 0239D714 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t76);
|
|
/* 0239D718 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0239D71C */ Gambit_fn_0204E43C(cpu);
|
|
L_0239D720: ; // 0x239d720
|
|
/* 0239D720 */ cpu->r[9] = 0x101F0000u;
|
|
/* 0239D724 */ _t77 = cpu->r[9] + 0x0000635Cu;
|
|
/* 0239D724 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t77);
|
|
/* 0239D724 */ cpu->r[9] = _t77;
|
|
/* 0239D728 */ _t78 = cpu->r[9] + 0x00000008u;
|
|
/* 0239D728 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t78);
|
|
/* 0239D72C */ cpu->f[9] = -cpu->f[10];
|
|
/* 0239D730 */ _t79 = cpu->r[9] + 0x00000004u;
|
|
/* 0239D730 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t79);
|
|
/* 0239D734 */ cpu->f[13] = -cpu->f[0];
|
|
/* 0239D738 */ _t80 = cpu->r[1] + 0x00000028u;
|
|
/* 0239D738 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t80);
|
|
/* 0239D73C */ _t81 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0239D73C */ rbrew_write_f32(cpu->mem, _t81, cpu->f[9]);
|
|
/* 0239D740 */ _t82 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0239D740 */ cpu->r[12] = rbrew_read32(cpu->mem, _t82);
|
|
/* 0239D744 */ _t83 = cpu->r[1] + 0x00000034u;
|
|
/* 0239D744 */ rbrew_write_f32(cpu->mem, _t83, cpu->f[13]);
|
|
/* 0239D748 */ _t84 = cpu->r[1] + 0x00000034u;
|
|
/* 0239D748 */ cpu->r[0] = rbrew_read32(cpu->mem, _t84);
|
|
/* 0239D74C */ cpu->f[11] = -cpu->f[12];
|
|
/* 0239D750 */ _t85 = cpu->r[1] + 0x00000038u;
|
|
/* 0239D750 */ rbrew_write32(cpu->mem, _t85, cpu->r[12]);
|
|
/* 0239D754 */ _t86 = cpu->r[1] + 0x00000038u;
|
|
/* 0239D754 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t86);
|
|
/* 0239D758 */ _t87 = cpu->r[1] + 0x00000030u;
|
|
/* 0239D758 */ rbrew_write_f32(cpu->mem, _t87, cpu->f[11]);
|
|
/* 0239D75C */ cpu->f[10] = cpu->f[8] * cpu->f[6];
|
|
/* 0239D760 */ _t88 = cpu->r[1] + 0x00000040u;
|
|
/* 0239D760 */ rbrew_write32(cpu->mem, _t88, cpu->r[0]);
|
|
/* 0239D764 */ _t89 = cpu->r[1] + 0x00000040u;
|
|
/* 0239D764 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t89);
|
|
/* 0239D768 */ _t90 = cpu->r[1] + 0x00000020u;
|
|
/* 0239D768 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t90);
|
|
/* 0239D76C */ cpu->f[13] = cpu->f[7] * cpu->f[6];
|
|
/* 0239D770 */ cpu->f[1] = fma(cpu->f[7], cpu->f[11], -(cpu->f[10]));
|
|
/* 0239D774 */ _t91 = cpu->r[1] + 0x00000030u;
|
|
/* 0239D774 */ cpu->r[0] = rbrew_read32(cpu->mem, _t91);
|
|
/* 0239D778 */ cpu->f[2] = fma(cpu->f[8], cpu->f[11], cpu->f[13]);
|
|
/* 0239D77C */ _t92 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0239D77C */ rbrew_write32(cpu->mem, _t92, cpu->r[0]);
|
|
/* 0239D780 */ Gambit_fn_02C89074(cpu);
|
|
/* 0239D784 */ _t93 = cpu->r[1] + 0x00000054u;
|
|
/* 0239D784 */ cpu->r[0] = rbrew_read32(cpu->mem, _t93);
|
|
/* 0239D788 */ _t94 = cpu->r[1] + 0x00000048u;
|
|
/* 0239D788 */ cpu->r[30] = rbrew_read32(cpu->mem, _t94);
|
|
/* 0239D78C */ cpu->lr = cpu->r[0];
|
|
/* 0239D790 */ _t95 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0239D790 */ cpu->r[31] = rbrew_read32(cpu->mem, _t95);
|
|
/* 0239D794 */ cpu->r[1] = cpu->r[1] + 0x00000050u;
|
|
/* 0239D798 */ cpu->f[1] = -cpu->f[1];
|
|
/* 0239D79C */ return;
|
|
}
|
|
|
|
// fn_0239D58C @ 0x239d58c
|
|
void Gambit_fn_0239D58C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95;
|
|
|
|
L_0239D58C: ; // 0x239d58c
|
|
/* 0239D58C */ _t0 = cpu->r[1] + 0xFFFFFFB0u;
|
|
/* 0239D58C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239D58C */ cpu->r[1] = _t0;
|
|
/* 0239D590 */ cpu->ctr = cpu->r[12];
|
|
/* 0239D594 */ _t1 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0239D594 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0239D598 */ cpu->r[11] = cpu->r[1] + 0x00000004u;
|
|
/* 0239D59C */ cpu->r[10] = cpu->r[3] + 0x00000094u;
|
|
/* 0239D5A0 */ _t2 = cpu->r[1] + 0x00000048u;
|
|
/* 0239D5A0 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0239D5A4 */ _t3 = cpu->r[1] + 0x00000054u;
|
|
/* 0239D5A4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
L_0239D5A8: ; // 0x239d5a8
|
|
/* 0239D5A8 */ _t4 = cpu->r[10] + 0x00000004u;
|
|
/* 0239D5A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0239D5AC */ _t5 = cpu->r[11] + 0x00000004u;
|
|
/* 0239D5AC */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0239D5B0 */ _t6 = cpu->r[10] + 0x00000008u;
|
|
/* 0239D5B0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0239D5B4 */ _t7 = cpu->r[11] + 0x00000008u;
|
|
/* 0239D5B4 */ rbrew_write32(cpu->mem, _t7, cpu->r[4]);
|
|
/* 0239D5B8 */ _t8 = cpu->r[10] + 0x0000000Cu;
|
|
/* 0239D5B8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0239D5B8 */ cpu->r[10] = _t8;
|
|
/* 0239D5BC */ _t9 = cpu->r[11] + 0x0000000Cu;
|
|
/* 0239D5BC */ rbrew_write32(cpu->mem, _t9, cpu->r[6]);
|
|
/* 0239D5BC */ cpu->r[11] = _t9;
|
|
/* 0239D5C0 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0239D5C0 */ _t10 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0239D5C0 */ _t11 = _t10 >> (0x00000002u & 31u);
|
|
/* 0239D5C0 */ _t12 = _t11 & 0x00000001u;
|
|
/* 0239D5C0 */ if (_t12) goto L_0239D5A8; else goto L_0239D5C4;
|
|
L_0239D5C4: ; // 0x239d5c4
|
|
/* 0239D5C4 */ cpu->r[31] = 0x101C0000u;
|
|
/* 0239D5C8 */ _t13 = cpu->r[31] + 0x00006000u;
|
|
/* 0239D5C8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0239D5CC */ _t14 = cpu->r[7] + 0x00000268u;
|
|
/* 0239D5CC */ cpu->r[30] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0239D5D0 */ cpu->r[3] = cpu->r[30];
|
|
/* 0239D5D4 */ Gambit_fn_0261F774(cpu);
|
|
/* 0239D5D8 */ cpu->r[4] = cpu->r[3];
|
|
/* 0239D5DC */ cpu->r[3] = cpu->r[30];
|
|
/* 0239D5E0 */ Gambit_fn_0261F55C(cpu);
|
|
/* 0239D5E4 */ _t15 = cpu->r[31] + 0x00006000u;
|
|
/* 0239D5E4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0239D5E8 */ _t16 = cpu->r[8] + 0x00000264u;
|
|
/* 0239D5E8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0239D5EC */ _t17 = cpu->r[5] + 0x00000030u;
|
|
/* 0239D5EC */ cpu->r[9] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0239D5F0 */ _t18 = cpu->r[9] + 0x00000018u;
|
|
/* 0239D5F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0239D5F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0239D5F8 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239D5F8 */ _t20 = _t19 & 0x00000001u;
|
|
/* 0239D5F8 */ if (_t20) goto L_0239D704; else goto L_0239D5FC;
|
|
L_0239D5FC: ; // 0x239d5fc
|
|
/* 0239D5FC */ cpu->r[11] = 0x101C0000u;
|
|
/* 0239D600 */ _t21 = cpu->r[11] + 0x000068D8u;
|
|
/* 0239D600 */ cpu->r[11] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0239D604 */ cpu->r[11] = cpu->r[5] + cpu->r[11];
|
|
/* 0239D608 */ _t22 = cpu->r[11] + 0x00000104u;
|
|
/* 0239D608 */ cpu->r[4] = rbrew_read8(cpu->mem, _t22);
|
|
/* 0239D60C */ _t23 = cpu->r[5] + 0x00000030u;
|
|
/* 0239D60C */ cpu->r[5] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0239D610 */ cpu->r[12] = rbrew_rlwinm(cpu->r[4], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239D614 */ _t24 = cpu->r[12] + cpu->r[5];
|
|
/* 0239D614 */ cpu->r[6] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0239D618 */ _t25 = cpu->r[6] + 0x00000008u;
|
|
/* 0239D618 */ cpu->r[4] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0239D61C */ _t26 = cpu->r[4] + 0x0000000Cu;
|
|
/* 0239D61C */ cpu->r[0] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0239D620 */ _t27 = cpu->r[4] + 0x00000004u;
|
|
/* 0239D620 */ cpu->r[7] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0239D624 */ cpu->r[12] = cpu->r[4] - cpu->r[0];
|
|
/* 0239D628 */ cpu->r[5] = cpu->r[7] - cpu->r[0];
|
|
/* 0239D62C */ goto L_0239D63C;
|
|
L_0239D630: ; // 0x239d630
|
|
/* 0239D630 */ cpu->r[5] = cpu->r[5] + cpu->r[0];
|
|
/* 0239D634 */ _t28 = cpu->r[5] + 0x00000004u;
|
|
/* 0239D634 */ cpu->r[8] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0239D638 */ cpu->r[5] = cpu->r[8] - cpu->r[0];
|
|
L_0239D63C: ; // 0x239d63c
|
|
/* 0239D63C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[12]);
|
|
/* 0239D640 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239D640 */ _t30 = _t29 & 0x00000001u;
|
|
/* 0239D640 */ if (_t30) goto L_0239D658; else goto L_0239D644;
|
|
L_0239D644: ; // 0x239d644
|
|
/* 0239D644 */ _t31 = cpu->r[5] + 0x0000001Cu;
|
|
/* 0239D644 */ cpu->r[4] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0239D648 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000002u);
|
|
/* 0239D64C */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239D64C */ _t33 = _t32 & 0x00000001u;
|
|
/* 0239D64C */ if (_t33) goto L_0239D658; else goto L_0239D650;
|
|
L_0239D650: ; // 0x239d650
|
|
/* 0239D650 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000003u);
|
|
/* 0239D654 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239D654 */ _t35 = _t34 & 0x00000001u;
|
|
/* 0239D654 */ if (_t35) goto L_0239D658; else goto L_0239D630;
|
|
L_0239D658: ; // 0x239d658
|
|
/* 0239D658 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[12]);
|
|
/* 0239D65C */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239D65C */ _t37 = _t36 & 0x00000001u;
|
|
/* 0239D65C */ if (_t37) goto L_0239D704; else goto L_0239D660;
|
|
L_0239D660: ; // 0x239d660
|
|
/* 0239D660 */ cpu->r[9] = cpu->r[0];
|
|
/* 0239D664 */ cpu->r[10] = cpu->r[12];
|
|
L_0239D668: ; // 0x239d668
|
|
/* 0239D668 */ _t38 = cpu->r[5] + 0x0000002Cu;
|
|
/* 0239D668 */ cpu->r[8] = rbrew_read32(cpu->mem, _t38);
|
|
/* 0239D66C */ _t39 = cpu->r[3] + 0x0000002Cu;
|
|
/* 0239D66C */ cpu->r[6] = rbrew_read32(cpu->mem, _t39);
|
|
/* 0239D670 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[6]);
|
|
/* 0239D674 */ _t40 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239D674 */ _t41 = _t40 & 0x00000001u;
|
|
/* 0239D674 */ if (_t41) goto L_0239D678; else goto L_0239D6D0;
|
|
L_0239D678: ; // 0x239d678
|
|
/* 0239D678 */ _t42 = cpu->r[5] + 0x00000054u;
|
|
/* 0239D678 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 0239D67C */ _t43 = cpu->r[1] + 0x00000008u;
|
|
/* 0239D67C */ rbrew_write_f32(cpu->mem, _t43, cpu->f[9]);
|
|
/* 0239D680 */ _t44 = cpu->r[5] + 0x00000058u;
|
|
/* 0239D680 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 0239D684 */ _t45 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239D684 */ rbrew_write_f32(cpu->mem, _t45, cpu->f[12]);
|
|
/* 0239D688 */ _t46 = cpu->r[5] + 0x0000005Cu;
|
|
/* 0239D688 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t46);
|
|
/* 0239D68C */ _t47 = cpu->r[1] + 0x00000010u;
|
|
/* 0239D68C */ rbrew_write_f32(cpu->mem, _t47, cpu->f[0]);
|
|
/* 0239D690 */ _t48 = cpu->r[5] + 0x00000060u;
|
|
/* 0239D690 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 0239D694 */ _t49 = cpu->r[1] + 0x00000014u;
|
|
/* 0239D694 */ rbrew_write_f32(cpu->mem, _t49, cpu->f[12]);
|
|
/* 0239D698 */ _t50 = cpu->r[5] + 0x00000064u;
|
|
/* 0239D698 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t50);
|
|
/* 0239D69C */ _t51 = cpu->r[1] + 0x00000018u;
|
|
/* 0239D69C */ rbrew_write_f32(cpu->mem, _t51, cpu->f[13]);
|
|
/* 0239D6A0 */ _t52 = cpu->r[5] + 0x00000068u;
|
|
/* 0239D6A0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 0239D6A4 */ _t53 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239D6A4 */ rbrew_write_f32(cpu->mem, _t53, cpu->f[0]);
|
|
/* 0239D6A8 */ _t54 = cpu->r[5] + 0x0000006Cu;
|
|
/* 0239D6A8 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 0239D6AC */ _t55 = cpu->r[1] + 0x00000020u;
|
|
/* 0239D6AC */ rbrew_write_f32(cpu->mem, _t55, cpu->f[6]);
|
|
/* 0239D6B0 */ _t56 = cpu->r[5] + 0x00000070u;
|
|
/* 0239D6B0 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 0239D6B4 */ _t57 = cpu->r[1] + 0x00000024u;
|
|
/* 0239D6B4 */ rbrew_write_f32(cpu->mem, _t57, cpu->f[7]);
|
|
/* 0239D6B8 */ _t58 = cpu->r[5] + 0x00000074u;
|
|
/* 0239D6B8 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 0239D6BC */ _t59 = cpu->r[1] + 0x00000028u;
|
|
/* 0239D6BC */ rbrew_write_f32(cpu->mem, _t59, cpu->f[8]);
|
|
/* 0239D6C0 */ _t60 = cpu->r[3] + 0x0000002Cu;
|
|
/* 0239D6C0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t60);
|
|
/* 0239D6C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000001u);
|
|
/* 0239D6C8 */ _t61 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239D6C8 */ _t62 = _t61 & 0x00000001u;
|
|
/* 0239D6C8 */ if (_t62) goto L_0239D6CC; else goto L_0239D720;
|
|
L_0239D6CC: ; // 0x239d6cc
|
|
/* 0239D6CC */ goto L_0239D710;
|
|
L_0239D6D0: ; // 0x239d6d0
|
|
/* 0239D6D0 */ cpu->r[5] = cpu->r[5] + cpu->r[9];
|
|
/* 0239D6D4 */ _t63 = cpu->r[5] + 0x00000004u;
|
|
/* 0239D6D4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t63);
|
|
/* 0239D6D8 */ cpu->r[5] = cpu->r[11] - cpu->r[9];
|
|
/* 0239D6DC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[10]);
|
|
/* 0239D6E0 */ _t64 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239D6E0 */ _t65 = _t64 & 0x00000001u;
|
|
/* 0239D6E0 */ if (_t65) goto L_0239D704; else goto L_0239D6E4;
|
|
L_0239D6E4: ; // 0x239d6e4
|
|
/* 0239D6E4 */ _t66 = cpu->r[5] + 0x0000001Cu;
|
|
/* 0239D6E4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t66);
|
|
/* 0239D6E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000002u);
|
|
/* 0239D6EC */ _t67 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239D6EC */ _t68 = _t67 & 0x00000001u;
|
|
/* 0239D6EC */ if (_t68) goto L_0239D6FC; else goto L_0239D6F0;
|
|
L_0239D6F0: ; // 0x239d6f0
|
|
/* 0239D6F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000003u);
|
|
/* 0239D6F4 */ _t69 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239D6F4 */ _t70 = _t69 & 0x00000001u;
|
|
/* 0239D6F4 */ if (_t70) goto L_0239D6F8; else goto L_0239D6D0;
|
|
L_0239D6F8: ; // 0x239d6f8
|
|
/* 0239D6F8 */ goto L_0239D658;
|
|
L_0239D6FC: ; // 0x239d6fc
|
|
/* 0239D6FC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[10]);
|
|
/* 0239D700 */ _t71 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239D700 */ _t72 = _t71 & 0x00000001u;
|
|
/* 0239D700 */ if (_t72) goto L_0239D704; else goto L_0239D668;
|
|
L_0239D704: ; // 0x239d704
|
|
/* 0239D704 */ _t73 = cpu->r[3] + 0x0000002Cu;
|
|
/* 0239D704 */ cpu->r[11] = rbrew_read32(cpu->mem, _t73);
|
|
/* 0239D708 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000001u);
|
|
/* 0239D70C */ _t74 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239D70C */ _t75 = _t74 & 0x00000001u;
|
|
/* 0239D70C */ if (_t75) goto L_0239D710; else goto L_0239D720;
|
|
L_0239D710: ; // 0x239d710
|
|
/* 0239D710 */ cpu->r[7] = 0x10080000u;
|
|
/* 0239D714 */ _t76 = cpu->r[7] + 0x00007128u;
|
|
/* 0239D714 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t76);
|
|
/* 0239D718 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0239D71C */ Gambit_fn_0204E43C(cpu);
|
|
L_0239D720: ; // 0x239d720
|
|
/* 0239D720 */ cpu->r[9] = 0x101F0000u;
|
|
/* 0239D724 */ _t77 = cpu->r[9] + 0x0000635Cu;
|
|
/* 0239D724 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t77);
|
|
/* 0239D724 */ cpu->r[9] = _t77;
|
|
/* 0239D728 */ _t78 = cpu->r[9] + 0x00000008u;
|
|
/* 0239D728 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t78);
|
|
/* 0239D72C */ cpu->f[9] = -cpu->f[10];
|
|
/* 0239D730 */ _t79 = cpu->r[9] + 0x00000004u;
|
|
/* 0239D730 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t79);
|
|
/* 0239D734 */ cpu->f[13] = -cpu->f[0];
|
|
/* 0239D738 */ _t80 = cpu->r[1] + 0x00000028u;
|
|
/* 0239D738 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t80);
|
|
/* 0239D73C */ _t81 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0239D73C */ rbrew_write_f32(cpu->mem, _t81, cpu->f[9]);
|
|
/* 0239D740 */ _t82 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0239D740 */ cpu->r[12] = rbrew_read32(cpu->mem, _t82);
|
|
/* 0239D744 */ _t83 = cpu->r[1] + 0x00000034u;
|
|
/* 0239D744 */ rbrew_write_f32(cpu->mem, _t83, cpu->f[13]);
|
|
/* 0239D748 */ _t84 = cpu->r[1] + 0x00000034u;
|
|
/* 0239D748 */ cpu->r[0] = rbrew_read32(cpu->mem, _t84);
|
|
/* 0239D74C */ cpu->f[11] = -cpu->f[12];
|
|
/* 0239D750 */ _t85 = cpu->r[1] + 0x00000038u;
|
|
/* 0239D750 */ rbrew_write32(cpu->mem, _t85, cpu->r[12]);
|
|
/* 0239D754 */ _t86 = cpu->r[1] + 0x00000038u;
|
|
/* 0239D754 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t86);
|
|
/* 0239D758 */ _t87 = cpu->r[1] + 0x00000030u;
|
|
/* 0239D758 */ rbrew_write_f32(cpu->mem, _t87, cpu->f[11]);
|
|
/* 0239D75C */ cpu->f[10] = cpu->f[8] * cpu->f[6];
|
|
/* 0239D760 */ _t88 = cpu->r[1] + 0x00000040u;
|
|
/* 0239D760 */ rbrew_write32(cpu->mem, _t88, cpu->r[0]);
|
|
/* 0239D764 */ _t89 = cpu->r[1] + 0x00000040u;
|
|
/* 0239D764 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t89);
|
|
/* 0239D768 */ _t90 = cpu->r[1] + 0x00000020u;
|
|
/* 0239D768 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t90);
|
|
/* 0239D76C */ cpu->f[13] = cpu->f[7] * cpu->f[6];
|
|
/* 0239D770 */ cpu->f[1] = fma(cpu->f[7], cpu->f[11], -(cpu->f[10]));
|
|
/* 0239D774 */ _t91 = cpu->r[1] + 0x00000030u;
|
|
/* 0239D774 */ cpu->r[0] = rbrew_read32(cpu->mem, _t91);
|
|
/* 0239D778 */ cpu->f[2] = fma(cpu->f[8], cpu->f[11], cpu->f[13]);
|
|
/* 0239D77C */ _t92 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0239D77C */ rbrew_write32(cpu->mem, _t92, cpu->r[0]);
|
|
/* 0239D780 */ Gambit_fn_02C89074(cpu);
|
|
/* 0239D784 */ _t93 = cpu->r[1] + 0x00000054u;
|
|
/* 0239D784 */ cpu->r[0] = rbrew_read32(cpu->mem, _t93);
|
|
/* 0239D788 */ _t94 = cpu->r[1] + 0x00000048u;
|
|
/* 0239D788 */ cpu->r[30] = rbrew_read32(cpu->mem, _t94);
|
|
/* 0239D78C */ cpu->lr = cpu->r[0];
|
|
/* 0239D790 */ _t95 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0239D790 */ cpu->r[31] = rbrew_read32(cpu->mem, _t95);
|
|
/* 0239D794 */ cpu->r[1] = cpu->r[1] + 0x00000050u;
|
|
/* 0239D798 */ cpu->f[1] = -cpu->f[1];
|
|
/* 0239D79C */ return;
|
|
}
|
|
|
|
// fn_0239D7A0 @ 0x239d7a0
|
|
void Gambit_fn_0239D7A0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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_0239D7A0: ; // 0x239d7a0
|
|
/* 0239D7A0 */ cpu->r[0] = cpu->lr;
|
|
/* 0239D7A4 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 0239D7A4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239D7A4 */ cpu->r[1] = _t0;
|
|
/* 0239D7A8 */ _t1 = cpu->r[1] + 0x00000030u;
|
|
/* 0239D7A8 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0239D7AC */ /* nop */
|
|
/* 0239D7B0 */ _t2 = cpu->r[1] + 0x00000020u;
|
|
/* 0239D7B0 */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 0239D7B4 */ _t3 = cpu->r[1] + 0x00000024u;
|
|
/* 0239D7B4 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 0239D7B8 */ _t4 = cpu->r[1] + 0x00000028u;
|
|
/* 0239D7B8 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 0239D7BC */ _t5 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0239D7BC */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 0239D7C0 */ _t6 = cpu->r[1] + 0x00000044u;
|
|
/* 0239D7C0 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0239D7C4 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0239D7C8 */ _t7 = cpu->r[1] + 0x00000038u;
|
|
/* 0239D7C8 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[31]);
|
|
/* 0239D7CC */ _t8 = cpu->r[12] + 0x00006000u;
|
|
/* 0239D7CC */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0239D7D0 */ cpu->r[29] = cpu->r[3];
|
|
/* 0239D7D4 */ _t9 = cpu->r[12] + 0x00000268u;
|
|
/* 0239D7D4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0239D7D8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0239D7DC */ Gambit_fn_0261F774(cpu);
|
|
/* 0239D7E0 */ cpu->r[4] = cpu->r[3];
|
|
/* 0239D7E4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0239D7E8 */ Gambit_fn_0261F55C(cpu);
|
|
/* 0239D7EC */ _t10 = cpu->r[3] + 0x0000002Cu;
|
|
/* 0239D7EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0239D7F0 */ cpu->r[3] = cpu->r[29];
|
|
/* 0239D7F4 */ _t11 = cpu->r[29] + 0x0000002Cu;
|
|
/* 0239D7F4 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 0239D7F8 */ Gambit_fn_0239C750(cpu);
|
|
/* 0239D7FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239D800 */ cpu->r[28] = 0x00000000u;
|
|
/* 0239D804 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239D804 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0239D804 */ if (_t13) goto L_0239D8C8; else goto L_0239D808;
|
|
L_0239D808: ; // 0x239d808
|
|
/* 0239D808 */ _t14 = cpu->r[29] + 0x00000088u;
|
|
/* 0239D808 */ cpu->r[30] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0239D80C */ _t15 = cpu->r[29] + 0x00000090u;
|
|
/* 0239D80C */ cpu->r[31] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 0239D810 */ cpu->r[3] = cpu->r[30];
|
|
/* 0239D814 */ cpu->r[4] = cpu->r[31];
|
|
/* 0239D818 */ Gambit_fn_0297FC7C(cpu);
|
|
/* 0239D81C */ _t16 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0239D81C */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0239D820 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]);
|
|
/* 0239D824 */ cpu->r[12] = 0x00000000u;
|
|
/* 0239D828 */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0239D828 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0239D828 */ if (_t18) goto L_0239D82C; else goto L_0239D838;
|
|
L_0239D82C: ; // 0x239d82c
|
|
/* 0239D82C */ _t19 = cpu->r[30] + 0x00000024u;
|
|
/* 0239D82C */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0239D830 */ cpu->r[12] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239D834 */ _t20 = cpu->r[12] + cpu->r[0];
|
|
/* 0239D834 */ cpu->r[12] = rbrew_read32(cpu->mem, _t20);
|
|
L_0239D838: ; // 0x239d838
|
|
/* 0239D838 */ _t21 = cpu->r[12] + 0x00000000u;
|
|
/* 0239D838 */ cpu->r[3] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0239D83C */ _t22 = cpu->r[3] + 0x00000088u;
|
|
/* 0239D83C */ cpu->r[8] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0239D840 */ _t23 = cpu->r[8] + 0x0000016Cu;
|
|
/* 0239D840 */ cpu->r[9] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0239D844 */ _t24 = cpu->r[29] + 0x00000094u;
|
|
/* 0239D844 */ cpu->r[5] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t24);
|
|
/* 0239D848 */ cpu->ctr = cpu->r[9];
|
|
/* 0239D84C */ _t25 = cpu->r[29] + 0x00000092u;
|
|
/* 0239D84C */ cpu->r[4] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t25);
|
|
/* 0239D850 */ cpu->r[8] = cpu->r[1] + 0x00000014u;
|
|
/* 0239D854 */ cpu->r[6] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239D858 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 0239D85C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0239D860 */ cpu->r[3] = cpu->r[29];
|
|
/* 0239D864 */ Gambit_fn_0239D584(cpu);
|
|
/* 0239D868 */ _t26 = cpu->r[29] + 0x00000090u;
|
|
/* 0239D868 */ cpu->r[31] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t26);
|
|
/* 0239D86C */ _t27 = cpu->r[29] + 0x00000088u;
|
|
/* 0239D86C */ cpu->r[30] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0239D870 */ cpu->r[4] = cpu->r[31];
|
|
/* 0239D874 */ cpu->f[31] = cpu->f[1];
|
|
/* 0239D878 */ cpu->r[3] = cpu->r[30];
|
|
/* 0239D87C */ _t28 = cpu->r[1] + 0x00000008u;
|
|
/* 0239D87C */ rbrew_write_f32(cpu->mem, _t28, cpu->f[1]);
|
|
/* 0239D880 */ Gambit_fn_0297FC7C(cpu);
|
|
/* 0239D884 */ _t29 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0239D884 */ cpu->r[0] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0239D888 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]);
|
|
/* 0239D88C */ cpu->r[11] = 0x00000000u;
|
|
/* 0239D890 */ _t30 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0239D890 */ _t31 = _t30 & 0x00000001u;
|
|
/* 0239D890 */ if (_t31) goto L_0239D894; else goto L_0239D8A0;
|
|
L_0239D894: ; // 0x239d894
|
|
/* 0239D894 */ _t32 = cpu->r[30] + 0x00000024u;
|
|
/* 0239D894 */ cpu->r[0] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0239D898 */ cpu->r[9] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239D89C */ _t33 = cpu->r[9] + cpu->r[0];
|
|
/* 0239D89C */ cpu->r[11] = rbrew_read32(cpu->mem, _t33);
|
|
L_0239D8A0: ; // 0x239d8a0
|
|
/* 0239D8A0 */ _t34 = cpu->r[11] + 0x00000000u;
|
|
/* 0239D8A0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t34);
|
|
/* 0239D8A4 */ _t35 = cpu->r[3] + 0x00000088u;
|
|
/* 0239D8A4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t35);
|
|
/* 0239D8A8 */ _t36 = cpu->r[11] + 0x00000174u;
|
|
/* 0239D8A8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t36);
|
|
/* 0239D8AC */ cpu->f[1] = cpu->f[31];
|
|
/* 0239D8B0 */ _t37 = cpu->r[29] + 0x00000092u;
|
|
/* 0239D8B0 */ cpu->r[4] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t37);
|
|
/* 0239D8B4 */ cpu->ctr = cpu->r[8];
|
|
/* 0239D8B8 */ _t38 = cpu->r[29] + 0x00000094u;
|
|
/* 0239D8B8 */ cpu->r[5] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t38);
|
|
/* 0239D8BC */ cpu->r[6] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239D8C0 */ cpu->r[7] = cpu->r[1] + 0x00000014u;
|
|
/* 0239D8C4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0239D8C8: ; // 0x239d8c8
|
|
/* 0239D8C8 */ _t39 = cpu->r[29] + 0x00000180u;
|
|
/* 0239D8C8 */ rbrew_write8(cpu->mem, _t39, (uint8_t)cpu->r[28]);
|
|
/* 0239D8CC */ cpu->r[9] = 0x10080000u;
|
|
/* 0239D8D0 */ _t40 = cpu->r[29] + 0x0000018Cu;
|
|
/* 0239D8D0 */ rbrew_write8(cpu->mem, _t40, (uint8_t)cpu->r[28]);
|
|
/* 0239D8D4 */ _t41 = cpu->r[9] + 0x0000704Cu;
|
|
/* 0239D8D4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 0239D8D8 */ _t42 = cpu->r[29] + 0x00000128u;
|
|
/* 0239D8D8 */ rbrew_write8(cpu->mem, _t42, (uint8_t)cpu->r[28]);
|
|
/* 0239D8DC */ _t43 = cpu->r[29] + 0x00000194u;
|
|
/* 0239D8DC */ rbrew_write_f32(cpu->mem, _t43, cpu->f[0]);
|
|
/* 0239D8E0 */ _t44 = cpu->r[29] + 0x00000198u;
|
|
/* 0239D8E0 */ rbrew_write_f32(cpu->mem, _t44, cpu->f[0]);
|
|
/* 0239D8E4 */ _t45 = cpu->r[29] + 0x00000190u;
|
|
/* 0239D8E4 */ rbrew_write_f32(cpu->mem, _t45, cpu->f[0]);
|
|
/* 0239D8E8 */ _t46 = cpu->r[29] + 0x0000015Cu;
|
|
/* 0239D8E8 */ rbrew_write32(cpu->mem, _t46, cpu->r[28]);
|
|
/* 0239D8EC */ cpu->r[11] = cpu->r[29] + 0x00000284u;
|
|
/* 0239D8F0 */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 0239D8F4 */ _t47 = cpu->r[29] + 0x00000158u;
|
|
/* 0239D8F4 */ rbrew_write32(cpu->mem, _t47, cpu->r[28]);
|
|
/* 0239D8F8 */ cpu->r[10] = 0x00000008u;
|
|
/* 0239D8FC */ _t48 = cpu->r[29] + 0x00000130u;
|
|
/* 0239D8FC */ rbrew_write32(cpu->mem, _t48, cpu->r[0]);
|
|
/* 0239D900 */ _t49 = cpu->r[29] + 0x0000019Cu;
|
|
/* 0239D900 */ rbrew_write8(cpu->mem, _t49, (uint8_t)cpu->r[28]);
|
|
/* 0239D904 */ cpu->r[12] = 0x00000000u;
|
|
/* 0239D908 */ _t50 = cpu->r[29] + 0x0000012Cu;
|
|
/* 0239D908 */ rbrew_write32(cpu->mem, _t50, cpu->r[28]);
|
|
/* 0239D90C */ cpu->ctr = cpu->r[10];
|
|
/* 0239D910 */ _t51 = cpu->r[29] + 0x0000019Du;
|
|
/* 0239D910 */ rbrew_write8(cpu->mem, _t51, (uint8_t)cpu->r[28]);
|
|
L_0239D914: ; // 0x239d914
|
|
/* 0239D914 */ _t52 = cpu->r[11] + 0x00000004u;
|
|
/* 0239D914 */ rbrew_write32(cpu->mem, _t52, cpu->r[12]);
|
|
/* 0239D914 */ cpu->r[11] = _t52;
|
|
/* 0239D918 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0239D918 */ _t53 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0239D918 */ _t54 = _t53 >> (0x00000002u & 31u);
|
|
/* 0239D918 */ _t55 = _t54 & 0x00000001u;
|
|
/* 0239D918 */ if (_t55) goto L_0239D914; else goto L_0239D91C;
|
|
L_0239D91C: ; // 0x239d91c
|
|
/* 0239D91C */ _t56 = cpu->r[29] + 0x000002D4u;
|
|
/* 0239D91C */ rbrew_write8(cpu->mem, _t56, (uint8_t)cpu->r[28]);
|
|
/* 0239D920 */ _t57 = cpu->r[29] + 0x000002C0u;
|
|
/* 0239D920 */ rbrew_write8(cpu->mem, _t57, (uint8_t)cpu->r[28]);
|
|
/* 0239D924 */ _t58 = cpu->r[1] + 0x00000020u;
|
|
/* 0239D924 */ cpu->r[28] = rbrew_read32(cpu->mem, _t58);
|
|
/* 0239D928 */ _t59 = cpu->r[1] + 0x00000024u;
|
|
/* 0239D928 */ cpu->r[29] = rbrew_read32(cpu->mem, _t59);
|
|
/* 0239D92C */ _t60 = cpu->r[1] + 0x00000038u;
|
|
/* 0239D92C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t60);
|
|
/* 0239D930 */ _t61 = cpu->r[1] + 0x00000028u;
|
|
/* 0239D930 */ cpu->r[30] = rbrew_read32(cpu->mem, _t61);
|
|
/* 0239D934 */ _t62 = cpu->r[1] + 0x00000030u;
|
|
/* 0239D934 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t62);
|
|
/* 0239D938 */ _t63 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0239D938 */ cpu->r[31] = rbrew_read32(cpu->mem, _t63);
|
|
/* 0239D93C */ _t64 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0239D93C */ _t65 = _t64 & 0x00000001u;
|
|
/* 0239D93C */ if (_t65) goto L_0239D940; // else: addr-0 trap, fall-through
|
|
L_0239D940: ; // 0x239d940
|
|
/* 0239D940 */ _t66 = cpu->r[1] + 0x00000044u;
|
|
/* 0239D940 */ cpu->r[0] = rbrew_read32(cpu->mem, _t66);
|
|
/* 0239D944 */ cpu->lr = cpu->r[0];
|
|
/* 0239D948 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 0239D94C */ return;
|
|
}
|
|
|
|
// fn_0239D7A4 @ 0x239d7a4
|
|
void Gambit_fn_0239D7A4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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_0239D7A4: ; // 0x239d7a4
|
|
/* 0239D7A4 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 0239D7A4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239D7A4 */ cpu->r[1] = _t0;
|
|
/* 0239D7A8 */ _t1 = cpu->r[1] + 0x00000030u;
|
|
/* 0239D7A8 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0239D7AC */ /* nop */
|
|
/* 0239D7B0 */ _t2 = cpu->r[1] + 0x00000020u;
|
|
/* 0239D7B0 */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 0239D7B4 */ _t3 = cpu->r[1] + 0x00000024u;
|
|
/* 0239D7B4 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 0239D7B8 */ _t4 = cpu->r[1] + 0x00000028u;
|
|
/* 0239D7B8 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 0239D7BC */ _t5 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0239D7BC */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 0239D7C0 */ _t6 = cpu->r[1] + 0x00000044u;
|
|
/* 0239D7C0 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0239D7C4 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0239D7C8 */ _t7 = cpu->r[1] + 0x00000038u;
|
|
/* 0239D7C8 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[31]);
|
|
/* 0239D7CC */ _t8 = cpu->r[12] + 0x00006000u;
|
|
/* 0239D7CC */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0239D7D0 */ cpu->r[29] = cpu->r[3];
|
|
/* 0239D7D4 */ _t9 = cpu->r[12] + 0x00000268u;
|
|
/* 0239D7D4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0239D7D8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0239D7DC */ Gambit_fn_0261F774(cpu);
|
|
/* 0239D7E0 */ cpu->r[4] = cpu->r[3];
|
|
/* 0239D7E4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0239D7E8 */ Gambit_fn_0261F55C(cpu);
|
|
/* 0239D7EC */ _t10 = cpu->r[3] + 0x0000002Cu;
|
|
/* 0239D7EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0239D7F0 */ cpu->r[3] = cpu->r[29];
|
|
/* 0239D7F4 */ _t11 = cpu->r[29] + 0x0000002Cu;
|
|
/* 0239D7F4 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 0239D7F8 */ Gambit_fn_0239C750(cpu);
|
|
/* 0239D7FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239D800 */ cpu->r[28] = 0x00000000u;
|
|
/* 0239D804 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239D804 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0239D804 */ if (_t13) goto L_0239D8C8; else goto L_0239D808;
|
|
L_0239D808: ; // 0x239d808
|
|
/* 0239D808 */ _t14 = cpu->r[29] + 0x00000088u;
|
|
/* 0239D808 */ cpu->r[30] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0239D80C */ _t15 = cpu->r[29] + 0x00000090u;
|
|
/* 0239D80C */ cpu->r[31] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 0239D810 */ cpu->r[3] = cpu->r[30];
|
|
/* 0239D814 */ cpu->r[4] = cpu->r[31];
|
|
/* 0239D818 */ Gambit_fn_0297FC7C(cpu);
|
|
/* 0239D81C */ _t16 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0239D81C */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0239D820 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]);
|
|
/* 0239D824 */ cpu->r[12] = 0x00000000u;
|
|
/* 0239D828 */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0239D828 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0239D828 */ if (_t18) goto L_0239D82C; else goto L_0239D838;
|
|
L_0239D82C: ; // 0x239d82c
|
|
/* 0239D82C */ _t19 = cpu->r[30] + 0x00000024u;
|
|
/* 0239D82C */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0239D830 */ cpu->r[12] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239D834 */ _t20 = cpu->r[12] + cpu->r[0];
|
|
/* 0239D834 */ cpu->r[12] = rbrew_read32(cpu->mem, _t20);
|
|
L_0239D838: ; // 0x239d838
|
|
/* 0239D838 */ _t21 = cpu->r[12] + 0x00000000u;
|
|
/* 0239D838 */ cpu->r[3] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0239D83C */ _t22 = cpu->r[3] + 0x00000088u;
|
|
/* 0239D83C */ cpu->r[8] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0239D840 */ _t23 = cpu->r[8] + 0x0000016Cu;
|
|
/* 0239D840 */ cpu->r[9] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0239D844 */ _t24 = cpu->r[29] + 0x00000094u;
|
|
/* 0239D844 */ cpu->r[5] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t24);
|
|
/* 0239D848 */ cpu->ctr = cpu->r[9];
|
|
/* 0239D84C */ _t25 = cpu->r[29] + 0x00000092u;
|
|
/* 0239D84C */ cpu->r[4] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t25);
|
|
/* 0239D850 */ cpu->r[8] = cpu->r[1] + 0x00000014u;
|
|
/* 0239D854 */ cpu->r[6] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239D858 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 0239D85C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0239D860 */ cpu->r[3] = cpu->r[29];
|
|
/* 0239D864 */ Gambit_fn_0239D584(cpu);
|
|
/* 0239D868 */ _t26 = cpu->r[29] + 0x00000090u;
|
|
/* 0239D868 */ cpu->r[31] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t26);
|
|
/* 0239D86C */ _t27 = cpu->r[29] + 0x00000088u;
|
|
/* 0239D86C */ cpu->r[30] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0239D870 */ cpu->r[4] = cpu->r[31];
|
|
/* 0239D874 */ cpu->f[31] = cpu->f[1];
|
|
/* 0239D878 */ cpu->r[3] = cpu->r[30];
|
|
/* 0239D87C */ _t28 = cpu->r[1] + 0x00000008u;
|
|
/* 0239D87C */ rbrew_write_f32(cpu->mem, _t28, cpu->f[1]);
|
|
/* 0239D880 */ Gambit_fn_0297FC7C(cpu);
|
|
/* 0239D884 */ _t29 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0239D884 */ cpu->r[0] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0239D888 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]);
|
|
/* 0239D88C */ cpu->r[11] = 0x00000000u;
|
|
/* 0239D890 */ _t30 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0239D890 */ _t31 = _t30 & 0x00000001u;
|
|
/* 0239D890 */ if (_t31) goto L_0239D894; else goto L_0239D8A0;
|
|
L_0239D894: ; // 0x239d894
|
|
/* 0239D894 */ _t32 = cpu->r[30] + 0x00000024u;
|
|
/* 0239D894 */ cpu->r[0] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0239D898 */ cpu->r[9] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239D89C */ _t33 = cpu->r[9] + cpu->r[0];
|
|
/* 0239D89C */ cpu->r[11] = rbrew_read32(cpu->mem, _t33);
|
|
L_0239D8A0: ; // 0x239d8a0
|
|
/* 0239D8A0 */ _t34 = cpu->r[11] + 0x00000000u;
|
|
/* 0239D8A0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t34);
|
|
/* 0239D8A4 */ _t35 = cpu->r[3] + 0x00000088u;
|
|
/* 0239D8A4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t35);
|
|
/* 0239D8A8 */ _t36 = cpu->r[11] + 0x00000174u;
|
|
/* 0239D8A8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t36);
|
|
/* 0239D8AC */ cpu->f[1] = cpu->f[31];
|
|
/* 0239D8B0 */ _t37 = cpu->r[29] + 0x00000092u;
|
|
/* 0239D8B0 */ cpu->r[4] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t37);
|
|
/* 0239D8B4 */ cpu->ctr = cpu->r[8];
|
|
/* 0239D8B8 */ _t38 = cpu->r[29] + 0x00000094u;
|
|
/* 0239D8B8 */ cpu->r[5] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t38);
|
|
/* 0239D8BC */ cpu->r[6] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239D8C0 */ cpu->r[7] = cpu->r[1] + 0x00000014u;
|
|
/* 0239D8C4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0239D8C8: ; // 0x239d8c8
|
|
/* 0239D8C8 */ _t39 = cpu->r[29] + 0x00000180u;
|
|
/* 0239D8C8 */ rbrew_write8(cpu->mem, _t39, (uint8_t)cpu->r[28]);
|
|
/* 0239D8CC */ cpu->r[9] = 0x10080000u;
|
|
/* 0239D8D0 */ _t40 = cpu->r[29] + 0x0000018Cu;
|
|
/* 0239D8D0 */ rbrew_write8(cpu->mem, _t40, (uint8_t)cpu->r[28]);
|
|
/* 0239D8D4 */ _t41 = cpu->r[9] + 0x0000704Cu;
|
|
/* 0239D8D4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 0239D8D8 */ _t42 = cpu->r[29] + 0x00000128u;
|
|
/* 0239D8D8 */ rbrew_write8(cpu->mem, _t42, (uint8_t)cpu->r[28]);
|
|
/* 0239D8DC */ _t43 = cpu->r[29] + 0x00000194u;
|
|
/* 0239D8DC */ rbrew_write_f32(cpu->mem, _t43, cpu->f[0]);
|
|
/* 0239D8E0 */ _t44 = cpu->r[29] + 0x00000198u;
|
|
/* 0239D8E0 */ rbrew_write_f32(cpu->mem, _t44, cpu->f[0]);
|
|
/* 0239D8E4 */ _t45 = cpu->r[29] + 0x00000190u;
|
|
/* 0239D8E4 */ rbrew_write_f32(cpu->mem, _t45, cpu->f[0]);
|
|
/* 0239D8E8 */ _t46 = cpu->r[29] + 0x0000015Cu;
|
|
/* 0239D8E8 */ rbrew_write32(cpu->mem, _t46, cpu->r[28]);
|
|
/* 0239D8EC */ cpu->r[11] = cpu->r[29] + 0x00000284u;
|
|
/* 0239D8F0 */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 0239D8F4 */ _t47 = cpu->r[29] + 0x00000158u;
|
|
/* 0239D8F4 */ rbrew_write32(cpu->mem, _t47, cpu->r[28]);
|
|
/* 0239D8F8 */ cpu->r[10] = 0x00000008u;
|
|
/* 0239D8FC */ _t48 = cpu->r[29] + 0x00000130u;
|
|
/* 0239D8FC */ rbrew_write32(cpu->mem, _t48, cpu->r[0]);
|
|
/* 0239D900 */ _t49 = cpu->r[29] + 0x0000019Cu;
|
|
/* 0239D900 */ rbrew_write8(cpu->mem, _t49, (uint8_t)cpu->r[28]);
|
|
/* 0239D904 */ cpu->r[12] = 0x00000000u;
|
|
/* 0239D908 */ _t50 = cpu->r[29] + 0x0000012Cu;
|
|
/* 0239D908 */ rbrew_write32(cpu->mem, _t50, cpu->r[28]);
|
|
/* 0239D90C */ cpu->ctr = cpu->r[10];
|
|
/* 0239D910 */ _t51 = cpu->r[29] + 0x0000019Du;
|
|
/* 0239D910 */ rbrew_write8(cpu->mem, _t51, (uint8_t)cpu->r[28]);
|
|
L_0239D914: ; // 0x239d914
|
|
/* 0239D914 */ _t52 = cpu->r[11] + 0x00000004u;
|
|
/* 0239D914 */ rbrew_write32(cpu->mem, _t52, cpu->r[12]);
|
|
/* 0239D914 */ cpu->r[11] = _t52;
|
|
/* 0239D918 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0239D918 */ _t53 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0239D918 */ _t54 = _t53 >> (0x00000002u & 31u);
|
|
/* 0239D918 */ _t55 = _t54 & 0x00000001u;
|
|
/* 0239D918 */ if (_t55) goto L_0239D914; else goto L_0239D91C;
|
|
L_0239D91C: ; // 0x239d91c
|
|
/* 0239D91C */ _t56 = cpu->r[29] + 0x000002D4u;
|
|
/* 0239D91C */ rbrew_write8(cpu->mem, _t56, (uint8_t)cpu->r[28]);
|
|
/* 0239D920 */ _t57 = cpu->r[29] + 0x000002C0u;
|
|
/* 0239D920 */ rbrew_write8(cpu->mem, _t57, (uint8_t)cpu->r[28]);
|
|
/* 0239D924 */ _t58 = cpu->r[1] + 0x00000020u;
|
|
/* 0239D924 */ cpu->r[28] = rbrew_read32(cpu->mem, _t58);
|
|
/* 0239D928 */ _t59 = cpu->r[1] + 0x00000024u;
|
|
/* 0239D928 */ cpu->r[29] = rbrew_read32(cpu->mem, _t59);
|
|
/* 0239D92C */ _t60 = cpu->r[1] + 0x00000038u;
|
|
/* 0239D92C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t60);
|
|
/* 0239D930 */ _t61 = cpu->r[1] + 0x00000028u;
|
|
/* 0239D930 */ cpu->r[30] = rbrew_read32(cpu->mem, _t61);
|
|
/* 0239D934 */ _t62 = cpu->r[1] + 0x00000030u;
|
|
/* 0239D934 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t62);
|
|
/* 0239D938 */ _t63 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0239D938 */ cpu->r[31] = rbrew_read32(cpu->mem, _t63);
|
|
/* 0239D93C */ _t64 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0239D93C */ _t65 = _t64 & 0x00000001u;
|
|
/* 0239D93C */ if (_t65) goto L_0239D940; // else: addr-0 trap, fall-through
|
|
L_0239D940: ; // 0x239d940
|
|
/* 0239D940 */ _t66 = cpu->r[1] + 0x00000044u;
|
|
/* 0239D940 */ cpu->r[0] = rbrew_read32(cpu->mem, _t66);
|
|
/* 0239D944 */ cpu->lr = cpu->r[0];
|
|
/* 0239D948 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 0239D94C */ return;
|
|
}
|
|
|
|
// fn_0239D950 @ 0x239d950
|
|
void Gambit_fn_0239D950(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_0239D950: ; // 0x239d950
|
|
/* 0239D950 */ cpu->r[0] = cpu->lr;
|
|
/* 0239D954 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0239D954 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239D954 */ cpu->r[1] = _t0;
|
|
/* 0239D958 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239D958 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0239D95C */ cpu->r[31] = cpu->r[3];
|
|
/* 0239D960 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0239D960 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0239D964 */ _t3 = cpu->r[31] + 0x00000184u;
|
|
/* 0239D964 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0239D968 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239D96C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239D96C */ _t5 = _t4 & 0x00000001u;
|
|
/* 0239D96C */ if (_t5) goto L_0239D974; else goto L_0239D970;
|
|
L_0239D970: ; // 0x239d970
|
|
/* 0239D970 */ Gambit_fn_02466B50(cpu);
|
|
L_0239D974: ; // 0x239d974
|
|
/* 0239D974 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0239D978 */ _t6 = cpu->r[3] + 0x00000E14u;
|
|
/* 0239D978 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0239D97C */ cpu->r[4] = 0x00000001u;
|
|
/* 0239D980 */ Gambit_fn_0200CBD8(cpu);
|
|
/* 0239D984 */ cpu->r[5] = 0x0000001Eu;
|
|
/* 0239D988 */ cpu->r[4] = 0x00000002u;
|
|
/* 0239D98C */ Gambit_fn_02014758(cpu);
|
|
/* 0239D990 */ _t7 = cpu->r[31] + 0x000002C4u;
|
|
/* 0239D990 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0239D994 */ cpu->r[4] = 0x00000001u;
|
|
/* 0239D998 */ Gambit_fn_0200EC2C(cpu);
|
|
/* 0239D99C */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 0239D99C */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0239D9A0 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239D9A0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0239D9A4 */ cpu->lr = cpu->r[0];
|
|
/* 0239D9A8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0239D9AC */ return;
|
|
}
|
|
|
|
// fn_0239D954 @ 0x239d954
|
|
void Gambit_fn_0239D954(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_0239D954: ; // 0x239d954
|
|
/* 0239D954 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0239D954 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239D954 */ cpu->r[1] = _t0;
|
|
/* 0239D958 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239D958 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0239D95C */ cpu->r[31] = cpu->r[3];
|
|
/* 0239D960 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0239D960 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0239D964 */ _t3 = cpu->r[31] + 0x00000184u;
|
|
/* 0239D964 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0239D968 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239D96C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239D96C */ _t5 = _t4 & 0x00000001u;
|
|
/* 0239D96C */ if (_t5) goto L_0239D974; else goto L_0239D970;
|
|
L_0239D970: ; // 0x239d970
|
|
/* 0239D970 */ Gambit_fn_02466B50(cpu);
|
|
L_0239D974: ; // 0x239d974
|
|
/* 0239D974 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0239D978 */ _t6 = cpu->r[3] + 0x00000E14u;
|
|
/* 0239D978 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0239D97C */ cpu->r[4] = 0x00000001u;
|
|
/* 0239D980 */ Gambit_fn_0200CBD8(cpu);
|
|
/* 0239D984 */ cpu->r[5] = 0x0000001Eu;
|
|
/* 0239D988 */ cpu->r[4] = 0x00000002u;
|
|
/* 0239D98C */ Gambit_fn_02014758(cpu);
|
|
/* 0239D990 */ _t7 = cpu->r[31] + 0x000002C4u;
|
|
/* 0239D990 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0239D994 */ cpu->r[4] = 0x00000001u;
|
|
/* 0239D998 */ Gambit_fn_0200EC2C(cpu);
|
|
/* 0239D99C */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 0239D99C */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0239D9A0 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239D9A0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0239D9A4 */ cpu->lr = cpu->r[0];
|
|
/* 0239D9A8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0239D9AC */ return;
|
|
}
|
|
|
|
// fn_0239D9B0 @ 0x239d9b0
|
|
void Gambit_fn_0239D9B0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29;
|
|
|
|
L_0239D9B0: ; // 0x239d9b0
|
|
/* 0239D9B0 */ cpu->r[0] = cpu->lr;
|
|
/* 0239D9B4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0239D9B4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239D9B4 */ cpu->r[1] = _t0;
|
|
/* 0239D9B8 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0239D9B8 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0239D9BC */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239D9BC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0239D9C0 */ cpu->r[30] = cpu->r[3];
|
|
/* 0239D9C4 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0239D9C4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0239D9C8 */ _t4 = cpu->r[30] + 0x00000184u;
|
|
/* 0239D9C8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0239D9CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239D9D0 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239D9D0 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0239D9D0 */ if (_t6) goto L_0239D9D8; else goto L_0239D9D4;
|
|
L_0239D9D4: ; // 0x239d9d4
|
|
/* 0239D9D4 */ Gambit_fn_02466AC0(cpu);
|
|
L_0239D9D8: ; // 0x239d9d8
|
|
/* 0239D9D8 */ _t7 = cpu->r[30] + 0x000002C4u;
|
|
/* 0239D9D8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0239D9DC */ Gambit_fn_0200ED24(cpu);
|
|
/* 0239D9E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239D9E4 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239D9E4 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0239D9E4 */ if (_t9) goto L_0239D9F0; else goto L_0239D9E8;
|
|
L_0239D9E8: ; // 0x239d9e8
|
|
/* 0239D9E8 */ _t10 = cpu->r[30] + 0x000002C4u;
|
|
/* 0239D9E8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0239D9EC */ Gambit_fn_0200ED0C(cpu);
|
|
L_0239D9F0: ; // 0x239d9f0
|
|
/* 0239D9F0 */ _t11 = cpu->r[30] + 0x000002C8u;
|
|
/* 0239D9F0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0239D9F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0239D9F8 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239D9F8 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0239D9F8 */ if (_t13) goto L_0239DA40; else goto L_0239D9FC;
|
|
L_0239D9FC: ; // 0x239d9fc
|
|
/* 0239D9FC */ _t14 = cpu->r[30] + 0x000002CCu;
|
|
/* 0239D9FC */ cpu->r[12] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0239DA00 */ _t15 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0239DA00 */ cpu->r[11] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0239DA04 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[12]);
|
|
/* 0239DA08 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DA08 */ _t17 = _t16 & 0x00000001u;
|
|
/* 0239DA08 */ if (_t17) goto L_0239DA0C; else goto L_0239DA40;
|
|
L_0239DA0C: ; // 0x239da0c
|
|
/* 0239DA0C */ _t18 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0239DA0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0239DA10 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[12]);
|
|
/* 0239DA14 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DA14 */ _t20 = _t19 & 0x00000001u;
|
|
/* 0239DA14 */ if (_t20) goto L_0239DA18; else goto L_0239DA40;
|
|
L_0239DA18: ; // 0x239da18
|
|
/* 0239DA18 */ _t21 = cpu->r[31] + 0x00000028u;
|
|
/* 0239DA18 */ cpu->r[3] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0239DA1C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239DA20 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DA20 */ _t23 = _t22 & 0x00000001u;
|
|
/* 0239DA20 */ if (_t23) goto L_0239DA38; else goto L_0239DA24;
|
|
L_0239DA24: ; // 0x239da24
|
|
/* 0239DA24 */ _t24 = cpu->r[3] + 0x00000050u;
|
|
/* 0239DA24 */ cpu->r[12] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0239DA28 */ _t25 = cpu->r[12] + 0x00000024u;
|
|
/* 0239DA28 */ cpu->r[9] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0239DA2C */ cpu->ctr = cpu->r[9];
|
|
/* 0239DA30 */ cpu->r[4] = 0xFFFFFFFFu;
|
|
/* 0239DA34 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0239DA38: ; // 0x239da38
|
|
/* 0239DA38 */ cpu->r[10] = 0x00000001u;
|
|
/* 0239DA3C */ _t26 = cpu->r[31] + 0x0000004Cu;
|
|
/* 0239DA3C */ rbrew_write8(cpu->mem, _t26, (uint8_t)cpu->r[10]);
|
|
L_0239DA40: ; // 0x239da40
|
|
/* 0239DA40 */ _t27 = cpu->r[1] + 0x00000014u;
|
|
/* 0239DA40 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0239DA44 */ _t28 = cpu->r[1] + 0x00000008u;
|
|
/* 0239DA44 */ cpu->r[30] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0239DA48 */ cpu->lr = cpu->r[0];
|
|
/* 0239DA4C */ _t29 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239DA4C */ cpu->r[31] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0239DA50 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0239DA54 */ return;
|
|
}
|
|
|
|
// fn_0239D9B4 @ 0x239d9b4
|
|
void Gambit_fn_0239D9B4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29;
|
|
|
|
L_0239D9B4: ; // 0x239d9b4
|
|
/* 0239D9B4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0239D9B4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239D9B4 */ cpu->r[1] = _t0;
|
|
/* 0239D9B8 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0239D9B8 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0239D9BC */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239D9BC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0239D9C0 */ cpu->r[30] = cpu->r[3];
|
|
/* 0239D9C4 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0239D9C4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0239D9C8 */ _t4 = cpu->r[30] + 0x00000184u;
|
|
/* 0239D9C8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0239D9CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239D9D0 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239D9D0 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0239D9D0 */ if (_t6) goto L_0239D9D8; else goto L_0239D9D4;
|
|
L_0239D9D4: ; // 0x239d9d4
|
|
/* 0239D9D4 */ Gambit_fn_02466AC0(cpu);
|
|
L_0239D9D8: ; // 0x239d9d8
|
|
/* 0239D9D8 */ _t7 = cpu->r[30] + 0x000002C4u;
|
|
/* 0239D9D8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0239D9DC */ Gambit_fn_0200ED24(cpu);
|
|
/* 0239D9E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239D9E4 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239D9E4 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0239D9E4 */ if (_t9) goto L_0239D9F0; else goto L_0239D9E8;
|
|
L_0239D9E8: ; // 0x239d9e8
|
|
/* 0239D9E8 */ _t10 = cpu->r[30] + 0x000002C4u;
|
|
/* 0239D9E8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0239D9EC */ Gambit_fn_0200ED0C(cpu);
|
|
L_0239D9F0: ; // 0x239d9f0
|
|
/* 0239D9F0 */ _t11 = cpu->r[30] + 0x000002C8u;
|
|
/* 0239D9F0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0239D9F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0239D9F8 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239D9F8 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0239D9F8 */ if (_t13) goto L_0239DA40; else goto L_0239D9FC;
|
|
L_0239D9FC: ; // 0x239d9fc
|
|
/* 0239D9FC */ _t14 = cpu->r[30] + 0x000002CCu;
|
|
/* 0239D9FC */ cpu->r[12] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0239DA00 */ _t15 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0239DA00 */ cpu->r[11] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0239DA04 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[12]);
|
|
/* 0239DA08 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DA08 */ _t17 = _t16 & 0x00000001u;
|
|
/* 0239DA08 */ if (_t17) goto L_0239DA0C; else goto L_0239DA40;
|
|
L_0239DA0C: ; // 0x239da0c
|
|
/* 0239DA0C */ _t18 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0239DA0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0239DA10 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[12]);
|
|
/* 0239DA14 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DA14 */ _t20 = _t19 & 0x00000001u;
|
|
/* 0239DA14 */ if (_t20) goto L_0239DA18; else goto L_0239DA40;
|
|
L_0239DA18: ; // 0x239da18
|
|
/* 0239DA18 */ _t21 = cpu->r[31] + 0x00000028u;
|
|
/* 0239DA18 */ cpu->r[3] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0239DA1C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239DA20 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DA20 */ _t23 = _t22 & 0x00000001u;
|
|
/* 0239DA20 */ if (_t23) goto L_0239DA38; else goto L_0239DA24;
|
|
L_0239DA24: ; // 0x239da24
|
|
/* 0239DA24 */ _t24 = cpu->r[3] + 0x00000050u;
|
|
/* 0239DA24 */ cpu->r[12] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0239DA28 */ _t25 = cpu->r[12] + 0x00000024u;
|
|
/* 0239DA28 */ cpu->r[9] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0239DA2C */ cpu->ctr = cpu->r[9];
|
|
/* 0239DA30 */ cpu->r[4] = 0xFFFFFFFFu;
|
|
/* 0239DA34 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0239DA38: ; // 0x239da38
|
|
/* 0239DA38 */ cpu->r[10] = 0x00000001u;
|
|
/* 0239DA3C */ _t26 = cpu->r[31] + 0x0000004Cu;
|
|
/* 0239DA3C */ rbrew_write8(cpu->mem, _t26, (uint8_t)cpu->r[10]);
|
|
L_0239DA40: ; // 0x239da40
|
|
/* 0239DA40 */ _t27 = cpu->r[1] + 0x00000014u;
|
|
/* 0239DA40 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0239DA44 */ _t28 = cpu->r[1] + 0x00000008u;
|
|
/* 0239DA44 */ cpu->r[30] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0239DA48 */ cpu->lr = cpu->r[0];
|
|
/* 0239DA4C */ _t29 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239DA4C */ cpu->r[31] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0239DA50 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0239DA54 */ return;
|
|
}
|
|
|
|
// fn_0239DA58 @ 0x239da58
|
|
void Gambit_fn_0239DA58(CPUState* cpu) {
|
|
uint32_t _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_0239DA58: ; // 0x239da58
|
|
/* 0239DA58 */ cpu->r[0] = cpu->lr;
|
|
/* 0239DA5C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0239DA5C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239DA5C */ cpu->r[1] = _t0;
|
|
/* 0239DA60 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239DA60 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0239DA64 */ cpu->r[31] = cpu->r[3];
|
|
/* 0239DA68 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0239DA68 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0239DA6C */ cpu->r[12] = 0x00000000u;
|
|
/* 0239DA70 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0239DA70 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0239DA74 */ _t4 = cpu->r[31] + 0x000002D4u;
|
|
/* 0239DA74 */ cpu->r[0] = rbrew_read8(cpu->mem, _t4);
|
|
/* 0239DA78 */ _t5 = cpu->r[31] + 0x0000019Du;
|
|
/* 0239DA78 */ rbrew_write8(cpu->mem, _t5, (uint8_t)cpu->r[12]);
|
|
/* 0239DA7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0239DA80 */ _t6 = cpu->r[31] + 0x00000180u;
|
|
/* 0239DA80 */ rbrew_write8(cpu->mem, _t6, (uint8_t)cpu->r[12]);
|
|
/* 0239DA84 */ _t7 = cpu->r[31] + 0x0000018Cu;
|
|
/* 0239DA84 */ rbrew_write8(cpu->mem, _t7, (uint8_t)cpu->r[12]);
|
|
/* 0239DA88 */ _t8 = cpu->r[31] + 0x00000160u;
|
|
/* 0239DA88 */ rbrew_write8(cpu->mem, _t8, (uint8_t)cpu->r[12]);
|
|
/* 0239DA8C */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DA8C */ _t10 = _t9 & 0x00000001u;
|
|
/* 0239DA8C */ if (_t10) goto L_0239DA90; else goto L_0239DB00;
|
|
L_0239DA90: ; // 0x239da90
|
|
/* 0239DA90 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0239DA94 */ _t11 = cpu->r[12] + 0x00006000u;
|
|
/* 0239DA94 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0239DA98 */ _t12 = cpu->r[12] + 0x00000268u;
|
|
/* 0239DA98 */ cpu->r[30] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0239DA9C */ cpu->r[3] = cpu->r[30];
|
|
/* 0239DAA0 */ Gambit_fn_0261F774(cpu);
|
|
/* 0239DAA4 */ cpu->r[4] = cpu->r[3];
|
|
/* 0239DAA8 */ cpu->r[3] = cpu->r[30];
|
|
/* 0239DAAC */ Gambit_fn_0261F55C(cpu);
|
|
/* 0239DAB0 */ Gambit_fn_025A5CC0(cpu);
|
|
/* 0239DAB4 */ _t13 = cpu->r[31] + 0x000002C0u;
|
|
/* 0239DAB4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t13);
|
|
/* 0239DAB8 */ cpu->r[8] = cpu->r[3];
|
|
/* 0239DABC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[0]);
|
|
/* 0239DAC0 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DAC0 */ _t15 = _t14 & 0x00000001u;
|
|
/* 0239DAC0 */ if (_t15) goto L_0239DB00; else goto L_0239DAC4;
|
|
L_0239DAC4: ; // 0x239dac4
|
|
/* 0239DAC4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0239DAC8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0239DACC */ _t16 = cpu->r[31] + 0x000002C0u;
|
|
/* 0239DACC */ rbrew_write8(cpu->mem, _t16, (uint8_t)cpu->r[8]);
|
|
/* 0239DAD0 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DAD0 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0239DAD0 */ if (_t18) goto L_0239DAEC; else goto L_0239DAD4;
|
|
L_0239DAD4: ; // 0x239dad4
|
|
/* 0239DAD4 */ Gambit_fn_0239D950(cpu);
|
|
/* 0239DAD8 */ cpu->r[4] = 0x101E0000u;
|
|
/* 0239DADC */ _t19 = cpu->r[31] + 0x00000030u;
|
|
/* 0239DADC */ cpu->r[3] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0239DAE0 */ cpu->r[4] = cpu->r[4] + 0x00004BBCu;
|
|
/* 0239DAE4 */ Gambit_fn_027B70F0(cpu);
|
|
/* 0239DAE8 */ goto L_0239DB00;
|
|
L_0239DAEC: ; // 0x239daec
|
|
/* 0239DAEC */ Gambit_fn_0239D9B0(cpu);
|
|
/* 0239DAF0 */ cpu->r[4] = 0x101E0000u;
|
|
/* 0239DAF4 */ _t20 = cpu->r[31] + 0x00000030u;
|
|
/* 0239DAF4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0239DAF8 */ cpu->r[4] = cpu->r[4] + 0x00004BC4u;
|
|
/* 0239DAFC */ Gambit_fn_027B70F0(cpu);
|
|
L_0239DB00: ; // 0x239db00
|
|
/* 0239DB00 */ _t21 = cpu->r[1] + 0x00000014u;
|
|
/* 0239DB00 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0239DB04 */ _t22 = cpu->r[1] + 0x00000008u;
|
|
/* 0239DB04 */ cpu->r[30] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0239DB08 */ cpu->lr = cpu->r[0];
|
|
/* 0239DB0C */ _t23 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239DB0C */ cpu->r[31] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0239DB10 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0239DB14 */ return;
|
|
}
|
|
|
|
// fn_0239DA5C @ 0x239da5c
|
|
void Gambit_fn_0239DA5C(CPUState* cpu) {
|
|
uint32_t _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_0239DA5C: ; // 0x239da5c
|
|
/* 0239DA5C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0239DA5C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239DA5C */ cpu->r[1] = _t0;
|
|
/* 0239DA60 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239DA60 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0239DA64 */ cpu->r[31] = cpu->r[3];
|
|
/* 0239DA68 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0239DA68 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0239DA6C */ cpu->r[12] = 0x00000000u;
|
|
/* 0239DA70 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0239DA70 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0239DA74 */ _t4 = cpu->r[31] + 0x000002D4u;
|
|
/* 0239DA74 */ cpu->r[0] = rbrew_read8(cpu->mem, _t4);
|
|
/* 0239DA78 */ _t5 = cpu->r[31] + 0x0000019Du;
|
|
/* 0239DA78 */ rbrew_write8(cpu->mem, _t5, (uint8_t)cpu->r[12]);
|
|
/* 0239DA7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0239DA80 */ _t6 = cpu->r[31] + 0x00000180u;
|
|
/* 0239DA80 */ rbrew_write8(cpu->mem, _t6, (uint8_t)cpu->r[12]);
|
|
/* 0239DA84 */ _t7 = cpu->r[31] + 0x0000018Cu;
|
|
/* 0239DA84 */ rbrew_write8(cpu->mem, _t7, (uint8_t)cpu->r[12]);
|
|
/* 0239DA88 */ _t8 = cpu->r[31] + 0x00000160u;
|
|
/* 0239DA88 */ rbrew_write8(cpu->mem, _t8, (uint8_t)cpu->r[12]);
|
|
/* 0239DA8C */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DA8C */ _t10 = _t9 & 0x00000001u;
|
|
/* 0239DA8C */ if (_t10) goto L_0239DA90; else goto L_0239DB00;
|
|
L_0239DA90: ; // 0x239da90
|
|
/* 0239DA90 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0239DA94 */ _t11 = cpu->r[12] + 0x00006000u;
|
|
/* 0239DA94 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0239DA98 */ _t12 = cpu->r[12] + 0x00000268u;
|
|
/* 0239DA98 */ cpu->r[30] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0239DA9C */ cpu->r[3] = cpu->r[30];
|
|
/* 0239DAA0 */ Gambit_fn_0261F774(cpu);
|
|
/* 0239DAA4 */ cpu->r[4] = cpu->r[3];
|
|
/* 0239DAA8 */ cpu->r[3] = cpu->r[30];
|
|
/* 0239DAAC */ Gambit_fn_0261F55C(cpu);
|
|
/* 0239DAB0 */ Gambit_fn_025A5CC0(cpu);
|
|
/* 0239DAB4 */ _t13 = cpu->r[31] + 0x000002C0u;
|
|
/* 0239DAB4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t13);
|
|
/* 0239DAB8 */ cpu->r[8] = cpu->r[3];
|
|
/* 0239DABC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[0]);
|
|
/* 0239DAC0 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DAC0 */ _t15 = _t14 & 0x00000001u;
|
|
/* 0239DAC0 */ if (_t15) goto L_0239DB00; else goto L_0239DAC4;
|
|
L_0239DAC4: ; // 0x239dac4
|
|
/* 0239DAC4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0239DAC8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0239DACC */ _t16 = cpu->r[31] + 0x000002C0u;
|
|
/* 0239DACC */ rbrew_write8(cpu->mem, _t16, (uint8_t)cpu->r[8]);
|
|
/* 0239DAD0 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DAD0 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0239DAD0 */ if (_t18) goto L_0239DAEC; else goto L_0239DAD4;
|
|
L_0239DAD4: ; // 0x239dad4
|
|
/* 0239DAD4 */ Gambit_fn_0239D950(cpu);
|
|
/* 0239DAD8 */ cpu->r[4] = 0x101E0000u;
|
|
/* 0239DADC */ _t19 = cpu->r[31] + 0x00000030u;
|
|
/* 0239DADC */ cpu->r[3] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0239DAE0 */ cpu->r[4] = cpu->r[4] + 0x00004BBCu;
|
|
/* 0239DAE4 */ Gambit_fn_027B70F0(cpu);
|
|
/* 0239DAE8 */ goto L_0239DB00;
|
|
L_0239DAEC: ; // 0x239daec
|
|
/* 0239DAEC */ Gambit_fn_0239D9B0(cpu);
|
|
/* 0239DAF0 */ cpu->r[4] = 0x101E0000u;
|
|
/* 0239DAF4 */ _t20 = cpu->r[31] + 0x00000030u;
|
|
/* 0239DAF4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0239DAF8 */ cpu->r[4] = cpu->r[4] + 0x00004BC4u;
|
|
/* 0239DAFC */ Gambit_fn_027B70F0(cpu);
|
|
L_0239DB00: ; // 0x239db00
|
|
/* 0239DB00 */ _t21 = cpu->r[1] + 0x00000014u;
|
|
/* 0239DB00 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0239DB04 */ _t22 = cpu->r[1] + 0x00000008u;
|
|
/* 0239DB04 */ cpu->r[30] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0239DB08 */ cpu->lr = cpu->r[0];
|
|
/* 0239DB0C */ _t23 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239DB0C */ cpu->r[31] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0239DB10 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0239DB14 */ return;
|
|
}
|
|
|
|
// fn_0239DB18 @ 0x239db18
|
|
void Gambit_fn_0239DB18(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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;
|
|
|
|
L_0239DB18: ; // 0x239db18
|
|
/* 0239DB18 */ cpu->r[0] = cpu->lr;
|
|
/* 0239DB1C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0239DB1C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239DB1C */ cpu->r[1] = _t0;
|
|
/* 0239DB20 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0239DB20 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0239DB24 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 0239DB24 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0239DB28 */ cpu->r[30] = 0x101C0000u;
|
|
/* 0239DB2C */ cpu->r[31] = cpu->r[3];
|
|
/* 0239DB30 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239DB30 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0239DB34 */ _t4 = cpu->r[30] + 0x00006000u;
|
|
/* 0239DB34 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0239DB34 */ cpu->r[30] = _t4;
|
|
/* 0239DB38 */ _t5 = cpu->r[3] + 0x00000004u;
|
|
/* 0239DB38 */ cpu->r[11] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0239DB3C */ _t6 = cpu->r[11] + 0x00000154u;
|
|
/* 0239DB3C */ cpu->r[10] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0239DB40 */ cpu->ctr = cpu->r[10];
|
|
/* 0239DB44 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0239DB48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000002u);
|
|
/* 0239DB4C */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DB4C */ _t8 = _t7 & 0x00000001u;
|
|
/* 0239DB4C */ if (_t8) goto L_0239DCC0; else goto L_0239DB50;
|
|
L_0239DB50: ; // 0x239db50
|
|
/* 0239DB50 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000003u);
|
|
/* 0239DB54 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DB54 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0239DB54 */ if (_t10) goto L_0239DCC0; else goto L_0239DB58;
|
|
L_0239DB58: ; // 0x239db58
|
|
/* 0239DB58 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000008u);
|
|
/* 0239DB5C */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DB5C */ _t12 = _t11 & 0x00000001u;
|
|
/* 0239DB5C */ if (_t12) goto L_0239DCC0; else goto L_0239DB60;
|
|
L_0239DB60: ; // 0x239db60
|
|
/* 0239DB60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000004u);
|
|
/* 0239DB64 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DB64 */ _t14 = _t13 & 0x00000001u;
|
|
/* 0239DB64 */ if (_t14) goto L_0239DCC0; else goto L_0239DB68;
|
|
L_0239DB68: ; // 0x239db68
|
|
/* 0239DB68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000001u);
|
|
/* 0239DB6C */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DB6C */ _t16 = _t15 & 0x00000001u;
|
|
/* 0239DB6C */ if (_t16) goto L_0239DCC0; else goto L_0239DB70;
|
|
L_0239DB70: ; // 0x239db70
|
|
/* 0239DB70 */ _t17 = cpu->r[31] + 0x000002D4u;
|
|
/* 0239DB70 */ cpu->r[8] = rbrew_read8(cpu->mem, _t17);
|
|
/* 0239DB74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0239DB78 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DB78 */ _t19 = _t18 & 0x00000001u;
|
|
/* 0239DB78 */ if (_t19) goto L_0239DB7C; else goto L_0239DCC0;
|
|
L_0239DB7C: ; // 0x239db7c
|
|
/* 0239DB7C */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0239DB80 */ Gambit_fn_02019890(cpu);
|
|
/* 0239DB84 */ _t20 = cpu->r[1] + 0x00000008u;
|
|
/* 0239DB84 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0239DB88 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], 0x00000004u);
|
|
/* 0239DB8C */ _t21 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0239DB8C */ _t22 = _t21 & 0x00000001u;
|
|
/* 0239DB8C */ if (_t22) goto L_0239DB90; else goto L_0239DBA8;
|
|
L_0239DB90: ; // 0x239db90
|
|
/* 0239DB90 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], 0x00000000u);
|
|
/* 0239DB94 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DB94 */ _t24 = _t23 & 0x00000001u;
|
|
/* 0239DB94 */ if (_t24) goto L_0239DC54; else goto L_0239DB98;
|
|
L_0239DB98: ; // 0x239db98
|
|
/* 0239DB98 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], 0x00000003u);
|
|
/* 0239DB9C */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DB9C */ _t26 = _t25 & 0x00000001u;
|
|
/* 0239DB9C */ if (_t26) goto L_0239DBC8; else goto L_0239DBA0;
|
|
L_0239DBA0: ; // 0x239dba0
|
|
/* 0239DBA0 */ cpu->r[3] = 0x00000001u;
|
|
/* 0239DBA4 */ goto L_0239DCE0;
|
|
L_0239DBA8: ; // 0x239dba8
|
|
/* 0239DBA8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], 0x00000004u);
|
|
/* 0239DBAC */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DBAC */ _t28 = _t27 & 0x00000001u;
|
|
/* 0239DBAC */ if (_t28) goto L_0239DCC0; else goto L_0239DBB0;
|
|
L_0239DBB0: ; // 0x239dbb0
|
|
/* 0239DBB0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], 0x00000008u);
|
|
/* 0239DBB4 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DBB4 */ _t30 = _t29 & 0x00000001u;
|
|
/* 0239DBB4 */ if (_t30) goto L_0239DC38; else goto L_0239DBB8;
|
|
L_0239DBB8: ; // 0x239dbb8
|
|
/* 0239DBB8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], 0x0000000Au);
|
|
/* 0239DBBC */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DBBC */ _t32 = _t31 & 0x00000001u;
|
|
/* 0239DBBC */ if (_t32) goto L_0239DCC0; else goto L_0239DBC0;
|
|
L_0239DBC0: ; // 0x239dbc0
|
|
/* 0239DBC0 */ cpu->r[3] = 0x00000001u;
|
|
/* 0239DBC4 */ goto L_0239DCE0;
|
|
L_0239DBC8: ; // 0x239dbc8
|
|
/* 0239DBC8 */ cpu->r[10] = 0x101D0000u;
|
|
/* 0239DBCC */ _t33 = cpu->r[10] + 0xFFFF85A8u;
|
|
/* 0239DBCC */ cpu->r[10] = rbrew_read32(cpu->mem, _t33);
|
|
/* 0239DBD0 */ _t34 = cpu->r[10] + 0x000002DCu;
|
|
/* 0239DBD0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t34);
|
|
/* 0239DBD4 */ _t35 = cpu->r[12] + 0x00001ED9u;
|
|
/* 0239DBD4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t35);
|
|
/* 0239DBD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0239DBDC */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DBDC */ _t37 = _t36 & 0x00000001u;
|
|
/* 0239DBDC */ if (_t37) goto L_0239DBE0; else goto L_0239DCC0;
|
|
L_0239DBE0: ; // 0x239dbe0
|
|
/* 0239DBE0 */ _t38 = cpu->r[12] + 0x00001EDAu;
|
|
/* 0239DBE0 */ cpu->r[8] = rbrew_read8(cpu->mem, _t38);
|
|
/* 0239DBE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0239DBE8 */ _t39 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DBE8 */ _t40 = _t39 & 0x00000001u;
|
|
/* 0239DBE8 */ if (_t40) goto L_0239DBEC; else goto L_0239DCC0;
|
|
L_0239DBEC: ; // 0x239dbec
|
|
/* 0239DBEC */ _t41 = cpu->r[30] + 0x00000000u;
|
|
/* 0239DBEC */ cpu->r[11] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0239DBF0 */ _t42 = cpu->r[11] + 0x00000264u;
|
|
/* 0239DBF0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t42);
|
|
/* 0239DBF4 */ _t43 = cpu->r[8] + 0x00000030u;
|
|
/* 0239DBF4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t43);
|
|
/* 0239DBF8 */ _t44 = cpu->r[9] + 0x0000017Cu;
|
|
/* 0239DBF8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t44);
|
|
/* 0239DBFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0239DC00 */ _t45 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DC00 */ _t46 = _t45 & 0x00000001u;
|
|
/* 0239DC00 */ if (_t46) goto L_0239DCDC; else goto L_0239DC04;
|
|
L_0239DC04: ; // 0x239dc04
|
|
/* 0239DC04 */ cpu->r[11] = 0x101C0000u;
|
|
/* 0239DC08 */ _t47 = cpu->r[11] + 0x00006A04u;
|
|
/* 0239DC08 */ cpu->r[11] = rbrew_read32(cpu->mem, _t47);
|
|
/* 0239DC0C */ cpu->r[11] = cpu->r[8] + cpu->r[11];
|
|
/* 0239DC10 */ _t48 = cpu->r[11] + 0x00000104u;
|
|
/* 0239DC10 */ cpu->r[9] = rbrew_read8(cpu->mem, _t48);
|
|
/* 0239DC14 */ _t49 = cpu->r[8] + 0x00000030u;
|
|
/* 0239DC14 */ cpu->r[8] = rbrew_read32(cpu->mem, _t49);
|
|
/* 0239DC18 */ cpu->r[12] = rbrew_rlwinm(cpu->r[9], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239DC1C */ _t50 = cpu->r[12] + cpu->r[8];
|
|
/* 0239DC1C */ cpu->r[9] = rbrew_read32(cpu->mem, _t50);
|
|
/* 0239DC20 */ _t51 = cpu->r[9] + 0x00000004u;
|
|
/* 0239DC20 */ cpu->r[10] = rbrew_read32(cpu->mem, _t51);
|
|
/* 0239DC24 */ _t52 = cpu->r[10] + 0x00000000u;
|
|
/* 0239DC24 */ cpu->r[12] = rbrew_read32(cpu->mem, _t52);
|
|
/* 0239DC28 */ _t53 = cpu->r[12] + 0x000001ECu;
|
|
/* 0239DC28 */ cpu->r[11] = rbrew_read8(cpu->mem, _t53);
|
|
/* 0239DC2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0239DC30 */ _t54 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DC30 */ _t55 = _t54 & 0x00000001u;
|
|
/* 0239DC30 */ if (_t55) goto L_0239DCDC; else goto L_0239DC34;
|
|
L_0239DC34: ; // 0x239dc34
|
|
/* 0239DC34 */ goto L_0239DCC0;
|
|
L_0239DC38: ; // 0x239dc38
|
|
/* 0239DC38 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0239DC3C */ _t56 = cpu->r[12] + 0xFFFF8058u;
|
|
/* 0239DC3C */ cpu->r[12] = rbrew_read32(cpu->mem, _t56);
|
|
/* 0239DC40 */ _t57 = cpu->r[12] + 0x000002D8u;
|
|
/* 0239DC40 */ cpu->r[3] = rbrew_read32(cpu->mem, _t57);
|
|
/* 0239DC44 */ Gambit_fn_02450E68(cpu);
|
|
/* 0239DC48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239DC4C */ _t58 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DC4C */ _t59 = _t58 & 0x00000001u;
|
|
/* 0239DC4C */ if (_t59) goto L_0239DCC0; else goto L_0239DC50;
|
|
L_0239DC50: ; // 0x239dc50
|
|
/* 0239DC50 */ goto L_0239DCDC;
|
|
L_0239DC54: ; // 0x239dc54
|
|
/* 0239DC54 */ cpu->r[9] = 0x101D0000u;
|
|
/* 0239DC58 */ _t60 = cpu->r[30] + 0x00000000u;
|
|
/* 0239DC58 */ cpu->r[12] = rbrew_read32(cpu->mem, _t60);
|
|
/* 0239DC5C */ _t61 = cpu->r[9] + 0xFFFFDD64u;
|
|
/* 0239DC5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t61);
|
|
/* 0239DC5C */ cpu->r[9] = _t61;
|
|
/* 0239DC60 */ cpu->r[4] = 0x101D0000u;
|
|
/* 0239DC64 */ _t62 = cpu->r[12] + 0x000002A4u;
|
|
/* 0239DC64 */ cpu->r[31] = rbrew_read32(cpu->mem, _t62);
|
|
/* 0239DC68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0239DC6C */ cpu->r[4] = cpu->r[4] + 0xFFFFDD68u;
|
|
/* 0239DC70 */ _t63 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DC70 */ _t64 = _t63 & 0x00000001u;
|
|
/* 0239DC70 */ if (_t64) goto L_0239DC74; else goto L_0239DC88;
|
|
L_0239DC74: ; // 0x239dc74
|
|
/* 0239DC74 */ cpu->r[12] = 0x10080000u;
|
|
/* 0239DC78 */ cpu->r[0] = 0x00000001u;
|
|
/* 0239DC7C */ cpu->r[12] = cpu->r[12] + 0x00007024u;
|
|
/* 0239DC80 */ _t65 = cpu->r[9] + 0x00000000u;
|
|
/* 0239DC80 */ rbrew_write32(cpu->mem, _t65, cpu->r[0]);
|
|
/* 0239DC84 */ _t66 = cpu->r[4] + 0x00000000u;
|
|
/* 0239DC84 */ rbrew_write32(cpu->mem, _t66, cpu->r[12]);
|
|
L_0239DC88: ; // 0x239dc88
|
|
/* 0239DC88 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0239DC8C */ _t67 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DC8C */ _t68 = _t67 & 0x00000001u;
|
|
/* 0239DC8C */ if (_t68) goto L_0239DCDC; else goto L_0239DC90;
|
|
L_0239DC90: ; // 0x239dc90
|
|
/* 0239DC90 */ _t69 = cpu->r[31] + 0x00000004u;
|
|
/* 0239DC90 */ cpu->r[8] = rbrew_read32(cpu->mem, _t69);
|
|
/* 0239DC94 */ _t70 = cpu->r[8] + 0x00000014u;
|
|
/* 0239DC94 */ cpu->r[0] = rbrew_read32(cpu->mem, _t70);
|
|
/* 0239DC98 */ cpu->ctr = cpu->r[0];
|
|
/* 0239DC9C */ cpu->r[3] = cpu->r[31];
|
|
/* 0239DCA0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0239DCA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239DCA8 */ _t71 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DCA8 */ _t72 = _t71 & 0x00000001u;
|
|
/* 0239DCA8 */ if (_t72) goto L_0239DCDC; else goto L_0239DCAC;
|
|
L_0239DCAC: ; // 0x239dcac
|
|
/* 0239DCAC */ cpu->r[3] = cpu->r[31];
|
|
/* 0239DCAC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239DCB0 */ _t73 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DCB0 */ _t74 = _t73 & 0x00000001u;
|
|
/* 0239DCB0 */ if (_t74) goto L_0239DCDC; else goto L_0239DCB4;
|
|
L_0239DCB4: ; // 0x239dcb4
|
|
/* 0239DCB4 */ Gambit_fn_026A7794(cpu);
|
|
/* 0239DCB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239DCBC */ _t75 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DCBC */ _t76 = _t75 & 0x00000001u;
|
|
/* 0239DCBC */ if (_t76) goto L_0239DCDC; else goto L_0239DCC0;
|
|
L_0239DCC0: ; // 0x239dcc0
|
|
/* 0239DCC0 */ _t77 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239DCC0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t77);
|
|
/* 0239DCC4 */ _t78 = cpu->r[1] + 0x00000010u;
|
|
/* 0239DCC4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t78);
|
|
/* 0239DCC8 */ cpu->lr = cpu->r[0];
|
|
/* 0239DCCC */ _t79 = cpu->r[1] + 0x00000014u;
|
|
/* 0239DCCC */ cpu->r[31] = rbrew_read32(cpu->mem, _t79);
|
|
/* 0239DCD0 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0239DCD4 */ cpu->r[3] = 0x00000000u;
|
|
/* 0239DCD8 */ return;
|
|
L_0239DCDC: ; // 0x239dcdc
|
|
/* 0239DCDC */ cpu->r[3] = 0x00000001u;
|
|
L_0239DCE0: ; // 0x239dce0
|
|
/* 0239DCE0 */ _t80 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239DCE0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t80);
|
|
/* 0239DCE4 */ _t81 = cpu->r[1] + 0x00000010u;
|
|
/* 0239DCE4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t81);
|
|
/* 0239DCE8 */ cpu->lr = cpu->r[0];
|
|
/* 0239DCEC */ _t82 = cpu->r[1] + 0x00000014u;
|
|
/* 0239DCEC */ cpu->r[31] = rbrew_read32(cpu->mem, _t82);
|
|
/* 0239DCF0 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0239DCF4 */ return;
|
|
}
|
|
|
|
// fn_0239DB1C @ 0x239db1c
|
|
void Gambit_fn_0239DB1C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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;
|
|
|
|
L_0239DB1C: ; // 0x239db1c
|
|
/* 0239DB1C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0239DB1C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239DB1C */ cpu->r[1] = _t0;
|
|
/* 0239DB20 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0239DB20 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0239DB24 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 0239DB24 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0239DB28 */ cpu->r[30] = 0x101C0000u;
|
|
/* 0239DB2C */ cpu->r[31] = cpu->r[3];
|
|
/* 0239DB30 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239DB30 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0239DB34 */ _t4 = cpu->r[30] + 0x00006000u;
|
|
/* 0239DB34 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0239DB34 */ cpu->r[30] = _t4;
|
|
/* 0239DB38 */ _t5 = cpu->r[3] + 0x00000004u;
|
|
/* 0239DB38 */ cpu->r[11] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0239DB3C */ _t6 = cpu->r[11] + 0x00000154u;
|
|
/* 0239DB3C */ cpu->r[10] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0239DB40 */ cpu->ctr = cpu->r[10];
|
|
/* 0239DB44 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0239DB48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000002u);
|
|
/* 0239DB4C */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DB4C */ _t8 = _t7 & 0x00000001u;
|
|
/* 0239DB4C */ if (_t8) goto L_0239DCC0; else goto L_0239DB50;
|
|
L_0239DB50: ; // 0x239db50
|
|
/* 0239DB50 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000003u);
|
|
/* 0239DB54 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DB54 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0239DB54 */ if (_t10) goto L_0239DCC0; else goto L_0239DB58;
|
|
L_0239DB58: ; // 0x239db58
|
|
/* 0239DB58 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000008u);
|
|
/* 0239DB5C */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DB5C */ _t12 = _t11 & 0x00000001u;
|
|
/* 0239DB5C */ if (_t12) goto L_0239DCC0; else goto L_0239DB60;
|
|
L_0239DB60: ; // 0x239db60
|
|
/* 0239DB60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000004u);
|
|
/* 0239DB64 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DB64 */ _t14 = _t13 & 0x00000001u;
|
|
/* 0239DB64 */ if (_t14) goto L_0239DCC0; else goto L_0239DB68;
|
|
L_0239DB68: ; // 0x239db68
|
|
/* 0239DB68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000001u);
|
|
/* 0239DB6C */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DB6C */ _t16 = _t15 & 0x00000001u;
|
|
/* 0239DB6C */ if (_t16) goto L_0239DCC0; else goto L_0239DB70;
|
|
L_0239DB70: ; // 0x239db70
|
|
/* 0239DB70 */ _t17 = cpu->r[31] + 0x000002D4u;
|
|
/* 0239DB70 */ cpu->r[8] = rbrew_read8(cpu->mem, _t17);
|
|
/* 0239DB74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0239DB78 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DB78 */ _t19 = _t18 & 0x00000001u;
|
|
/* 0239DB78 */ if (_t19) goto L_0239DB7C; else goto L_0239DCC0;
|
|
L_0239DB7C: ; // 0x239db7c
|
|
/* 0239DB7C */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0239DB80 */ Gambit_fn_02019890(cpu);
|
|
/* 0239DB84 */ _t20 = cpu->r[1] + 0x00000008u;
|
|
/* 0239DB84 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0239DB88 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], 0x00000004u);
|
|
/* 0239DB8C */ _t21 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0239DB8C */ _t22 = _t21 & 0x00000001u;
|
|
/* 0239DB8C */ if (_t22) goto L_0239DB90; else goto L_0239DBA8;
|
|
L_0239DB90: ; // 0x239db90
|
|
/* 0239DB90 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], 0x00000000u);
|
|
/* 0239DB94 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DB94 */ _t24 = _t23 & 0x00000001u;
|
|
/* 0239DB94 */ if (_t24) goto L_0239DC54; else goto L_0239DB98;
|
|
L_0239DB98: ; // 0x239db98
|
|
/* 0239DB98 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], 0x00000003u);
|
|
/* 0239DB9C */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DB9C */ _t26 = _t25 & 0x00000001u;
|
|
/* 0239DB9C */ if (_t26) goto L_0239DBC8; else goto L_0239DBA0;
|
|
L_0239DBA0: ; // 0x239dba0
|
|
/* 0239DBA0 */ cpu->r[3] = 0x00000001u;
|
|
/* 0239DBA4 */ goto L_0239DCE0;
|
|
L_0239DBA8: ; // 0x239dba8
|
|
/* 0239DBA8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], 0x00000004u);
|
|
/* 0239DBAC */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DBAC */ _t28 = _t27 & 0x00000001u;
|
|
/* 0239DBAC */ if (_t28) goto L_0239DCC0; else goto L_0239DBB0;
|
|
L_0239DBB0: ; // 0x239dbb0
|
|
/* 0239DBB0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], 0x00000008u);
|
|
/* 0239DBB4 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DBB4 */ _t30 = _t29 & 0x00000001u;
|
|
/* 0239DBB4 */ if (_t30) goto L_0239DC38; else goto L_0239DBB8;
|
|
L_0239DBB8: ; // 0x239dbb8
|
|
/* 0239DBB8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], 0x0000000Au);
|
|
/* 0239DBBC */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DBBC */ _t32 = _t31 & 0x00000001u;
|
|
/* 0239DBBC */ if (_t32) goto L_0239DCC0; else goto L_0239DBC0;
|
|
L_0239DBC0: ; // 0x239dbc0
|
|
/* 0239DBC0 */ cpu->r[3] = 0x00000001u;
|
|
/* 0239DBC4 */ goto L_0239DCE0;
|
|
L_0239DBC8: ; // 0x239dbc8
|
|
/* 0239DBC8 */ cpu->r[10] = 0x101D0000u;
|
|
/* 0239DBCC */ _t33 = cpu->r[10] + 0xFFFF85A8u;
|
|
/* 0239DBCC */ cpu->r[10] = rbrew_read32(cpu->mem, _t33);
|
|
/* 0239DBD0 */ _t34 = cpu->r[10] + 0x000002DCu;
|
|
/* 0239DBD0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t34);
|
|
/* 0239DBD4 */ _t35 = cpu->r[12] + 0x00001ED9u;
|
|
/* 0239DBD4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t35);
|
|
/* 0239DBD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0239DBDC */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DBDC */ _t37 = _t36 & 0x00000001u;
|
|
/* 0239DBDC */ if (_t37) goto L_0239DBE0; else goto L_0239DCC0;
|
|
L_0239DBE0: ; // 0x239dbe0
|
|
/* 0239DBE0 */ _t38 = cpu->r[12] + 0x00001EDAu;
|
|
/* 0239DBE0 */ cpu->r[8] = rbrew_read8(cpu->mem, _t38);
|
|
/* 0239DBE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0239DBE8 */ _t39 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DBE8 */ _t40 = _t39 & 0x00000001u;
|
|
/* 0239DBE8 */ if (_t40) goto L_0239DBEC; else goto L_0239DCC0;
|
|
L_0239DBEC: ; // 0x239dbec
|
|
/* 0239DBEC */ _t41 = cpu->r[30] + 0x00000000u;
|
|
/* 0239DBEC */ cpu->r[11] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0239DBF0 */ _t42 = cpu->r[11] + 0x00000264u;
|
|
/* 0239DBF0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t42);
|
|
/* 0239DBF4 */ _t43 = cpu->r[8] + 0x00000030u;
|
|
/* 0239DBF4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t43);
|
|
/* 0239DBF8 */ _t44 = cpu->r[9] + 0x0000017Cu;
|
|
/* 0239DBF8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t44);
|
|
/* 0239DBFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0239DC00 */ _t45 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DC00 */ _t46 = _t45 & 0x00000001u;
|
|
/* 0239DC00 */ if (_t46) goto L_0239DCDC; else goto L_0239DC04;
|
|
L_0239DC04: ; // 0x239dc04
|
|
/* 0239DC04 */ cpu->r[11] = 0x101C0000u;
|
|
/* 0239DC08 */ _t47 = cpu->r[11] + 0x00006A04u;
|
|
/* 0239DC08 */ cpu->r[11] = rbrew_read32(cpu->mem, _t47);
|
|
/* 0239DC0C */ cpu->r[11] = cpu->r[8] + cpu->r[11];
|
|
/* 0239DC10 */ _t48 = cpu->r[11] + 0x00000104u;
|
|
/* 0239DC10 */ cpu->r[9] = rbrew_read8(cpu->mem, _t48);
|
|
/* 0239DC14 */ _t49 = cpu->r[8] + 0x00000030u;
|
|
/* 0239DC14 */ cpu->r[8] = rbrew_read32(cpu->mem, _t49);
|
|
/* 0239DC18 */ cpu->r[12] = rbrew_rlwinm(cpu->r[9], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239DC1C */ _t50 = cpu->r[12] + cpu->r[8];
|
|
/* 0239DC1C */ cpu->r[9] = rbrew_read32(cpu->mem, _t50);
|
|
/* 0239DC20 */ _t51 = cpu->r[9] + 0x00000004u;
|
|
/* 0239DC20 */ cpu->r[10] = rbrew_read32(cpu->mem, _t51);
|
|
/* 0239DC24 */ _t52 = cpu->r[10] + 0x00000000u;
|
|
/* 0239DC24 */ cpu->r[12] = rbrew_read32(cpu->mem, _t52);
|
|
/* 0239DC28 */ _t53 = cpu->r[12] + 0x000001ECu;
|
|
/* 0239DC28 */ cpu->r[11] = rbrew_read8(cpu->mem, _t53);
|
|
/* 0239DC2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0239DC30 */ _t54 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DC30 */ _t55 = _t54 & 0x00000001u;
|
|
/* 0239DC30 */ if (_t55) goto L_0239DCDC; else goto L_0239DC34;
|
|
L_0239DC34: ; // 0x239dc34
|
|
/* 0239DC34 */ goto L_0239DCC0;
|
|
L_0239DC38: ; // 0x239dc38
|
|
/* 0239DC38 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0239DC3C */ _t56 = cpu->r[12] + 0xFFFF8058u;
|
|
/* 0239DC3C */ cpu->r[12] = rbrew_read32(cpu->mem, _t56);
|
|
/* 0239DC40 */ _t57 = cpu->r[12] + 0x000002D8u;
|
|
/* 0239DC40 */ cpu->r[3] = rbrew_read32(cpu->mem, _t57);
|
|
/* 0239DC44 */ Gambit_fn_02450E68(cpu);
|
|
/* 0239DC48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239DC4C */ _t58 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DC4C */ _t59 = _t58 & 0x00000001u;
|
|
/* 0239DC4C */ if (_t59) goto L_0239DCC0; else goto L_0239DC50;
|
|
L_0239DC50: ; // 0x239dc50
|
|
/* 0239DC50 */ goto L_0239DCDC;
|
|
L_0239DC54: ; // 0x239dc54
|
|
/* 0239DC54 */ cpu->r[9] = 0x101D0000u;
|
|
/* 0239DC58 */ _t60 = cpu->r[30] + 0x00000000u;
|
|
/* 0239DC58 */ cpu->r[12] = rbrew_read32(cpu->mem, _t60);
|
|
/* 0239DC5C */ _t61 = cpu->r[9] + 0xFFFFDD64u;
|
|
/* 0239DC5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t61);
|
|
/* 0239DC5C */ cpu->r[9] = _t61;
|
|
/* 0239DC60 */ cpu->r[4] = 0x101D0000u;
|
|
/* 0239DC64 */ _t62 = cpu->r[12] + 0x000002A4u;
|
|
/* 0239DC64 */ cpu->r[31] = rbrew_read32(cpu->mem, _t62);
|
|
/* 0239DC68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0239DC6C */ cpu->r[4] = cpu->r[4] + 0xFFFFDD68u;
|
|
/* 0239DC70 */ _t63 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DC70 */ _t64 = _t63 & 0x00000001u;
|
|
/* 0239DC70 */ if (_t64) goto L_0239DC74; else goto L_0239DC88;
|
|
L_0239DC74: ; // 0x239dc74
|
|
/* 0239DC74 */ cpu->r[12] = 0x10080000u;
|
|
/* 0239DC78 */ cpu->r[0] = 0x00000001u;
|
|
/* 0239DC7C */ cpu->r[12] = cpu->r[12] + 0x00007024u;
|
|
/* 0239DC80 */ _t65 = cpu->r[9] + 0x00000000u;
|
|
/* 0239DC80 */ rbrew_write32(cpu->mem, _t65, cpu->r[0]);
|
|
/* 0239DC84 */ _t66 = cpu->r[4] + 0x00000000u;
|
|
/* 0239DC84 */ rbrew_write32(cpu->mem, _t66, cpu->r[12]);
|
|
L_0239DC88: ; // 0x239dc88
|
|
/* 0239DC88 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0239DC8C */ _t67 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DC8C */ _t68 = _t67 & 0x00000001u;
|
|
/* 0239DC8C */ if (_t68) goto L_0239DCDC; else goto L_0239DC90;
|
|
L_0239DC90: ; // 0x239dc90
|
|
/* 0239DC90 */ _t69 = cpu->r[31] + 0x00000004u;
|
|
/* 0239DC90 */ cpu->r[8] = rbrew_read32(cpu->mem, _t69);
|
|
/* 0239DC94 */ _t70 = cpu->r[8] + 0x00000014u;
|
|
/* 0239DC94 */ cpu->r[0] = rbrew_read32(cpu->mem, _t70);
|
|
/* 0239DC98 */ cpu->ctr = cpu->r[0];
|
|
/* 0239DC9C */ cpu->r[3] = cpu->r[31];
|
|
/* 0239DCA0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0239DCA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239DCA8 */ _t71 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DCA8 */ _t72 = _t71 & 0x00000001u;
|
|
/* 0239DCA8 */ if (_t72) goto L_0239DCDC; else goto L_0239DCAC;
|
|
L_0239DCAC: ; // 0x239dcac
|
|
/* 0239DCAC */ cpu->r[3] = cpu->r[31];
|
|
/* 0239DCAC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239DCB0 */ _t73 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DCB0 */ _t74 = _t73 & 0x00000001u;
|
|
/* 0239DCB0 */ if (_t74) goto L_0239DCDC; else goto L_0239DCB4;
|
|
L_0239DCB4: ; // 0x239dcb4
|
|
/* 0239DCB4 */ Gambit_fn_026A7794(cpu);
|
|
/* 0239DCB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239DCBC */ _t75 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DCBC */ _t76 = _t75 & 0x00000001u;
|
|
/* 0239DCBC */ if (_t76) goto L_0239DCDC; else goto L_0239DCC0;
|
|
L_0239DCC0: ; // 0x239dcc0
|
|
/* 0239DCC0 */ _t77 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239DCC0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t77);
|
|
/* 0239DCC4 */ _t78 = cpu->r[1] + 0x00000010u;
|
|
/* 0239DCC4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t78);
|
|
/* 0239DCC8 */ cpu->lr = cpu->r[0];
|
|
/* 0239DCCC */ _t79 = cpu->r[1] + 0x00000014u;
|
|
/* 0239DCCC */ cpu->r[31] = rbrew_read32(cpu->mem, _t79);
|
|
/* 0239DCD0 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0239DCD4 */ cpu->r[3] = 0x00000000u;
|
|
/* 0239DCD8 */ return;
|
|
L_0239DCDC: ; // 0x239dcdc
|
|
/* 0239DCDC */ cpu->r[3] = 0x00000001u;
|
|
L_0239DCE0: ; // 0x239dce0
|
|
/* 0239DCE0 */ _t80 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239DCE0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t80);
|
|
/* 0239DCE4 */ _t81 = cpu->r[1] + 0x00000010u;
|
|
/* 0239DCE4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t81);
|
|
/* 0239DCE8 */ cpu->lr = cpu->r[0];
|
|
/* 0239DCEC */ _t82 = cpu->r[1] + 0x00000014u;
|
|
/* 0239DCEC */ cpu->r[31] = rbrew_read32(cpu->mem, _t82);
|
|
/* 0239DCF0 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0239DCF4 */ return;
|
|
}
|
|
|
|
// fn_0239DCF8 @ 0x239dcf8
|
|
void Gambit_fn_0239DCF8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_0239DCF8: ; // 0x239dcf8
|
|
/* 0239DCF8 */ _t0 = cpu->r[3] + 0x0000011Cu;
|
|
/* 0239DCF8 */ cpu->r[12] = rbrew_read8(cpu->mem, _t0);
|
|
/* 0239DCFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0239DD00 */ cpu->r[0] = 0x00000000u;
|
|
/* 0239DD04 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DD04 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0239DD04 */ if (_t2) goto L_0239DD1C; else goto L_0239DD08;
|
|
L_0239DD08: ; // 0x239dd08
|
|
/* 0239DD08 */ _t3 = cpu->r[3] + 0x0000011Cu;
|
|
/* 0239DD08 */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[0]);
|
|
/* 0239DD0C */ _t4 = cpu->r[3] + 0x0000011Du;
|
|
/* 0239DD0C */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[0]);
|
|
/* 0239DD10 */ _t5 = cpu->r[3] + 0x00000124u;
|
|
/* 0239DD10 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0239DD14 */ _t6 = cpu->r[3] + 0x0000011Eu;
|
|
/* 0239DD14 */ rbrew_write8(cpu->mem, _t6, (uint8_t)cpu->r[0]);
|
|
/* 0239DD18 */ return;
|
|
L_0239DD1C: ; // 0x239dd1c
|
|
/* 0239DD1C */ _t7 = cpu->r[3] + 0x00000124u;
|
|
/* 0239DD1C */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0239DD20 */ _t8 = cpu->r[3] + 0x0000011Du;
|
|
/* 0239DD20 */ rbrew_write8(cpu->mem, _t8, (uint8_t)cpu->r[0]);
|
|
/* 0239DD24 */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 0239DD28 */ _t9 = cpu->r[3] + 0x0000011Cu;
|
|
/* 0239DD28 */ rbrew_write8(cpu->mem, _t9, (uint8_t)cpu->r[0]);
|
|
/* 0239DD2C */ _t10 = cpu->r[3] + 0x00000124u;
|
|
/* 0239DD2C */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 0239DD30 */ _t11 = cpu->r[3] + 0x0000011Eu;
|
|
/* 0239DD30 */ rbrew_write8(cpu->mem, _t11, (uint8_t)cpu->r[0]);
|
|
/* 0239DD34 */ return;
|
|
}
|
|
|
|
// fn_0239DD38 @ 0x239dd38
|
|
void Gambit_fn_0239DD38(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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;
|
|
|
|
L_0239DD38: ; // 0x239dd38
|
|
/* 0239DD38 */ cpu->r[0] = cpu->lr;
|
|
/* 0239DD3C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0239DD3C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239DD3C */ cpu->r[1] = _t0;
|
|
/* 0239DD40 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0239DD40 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0239DD44 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239DD44 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 0239DD48 */ cpu->r[31] = cpu->r[3];
|
|
/* 0239DD4C */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 0239DD4C */ rbrew_write32(cpu->mem, _t3, cpu->r[28]);
|
|
/* 0239DD50 */ _t4 = cpu->r[1] + 0x00000010u;
|
|
/* 0239DD50 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 0239DD54 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239DD54 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0239DD58 */ Gambit_fn_027DF9A0(cpu);
|
|
/* 0239DD5C */ _t6 = cpu->r[31] + 0x00000188u;
|
|
/* 0239DD5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0239DD60 */ cpu->r[29] = cpu->r[3];
|
|
/* 0239DD64 */ cpu->r[30] = 0x00000000u;
|
|
/* 0239DD68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0239DD6C */ cpu->r[28] = 0x00000001u;
|
|
/* 0239DD70 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DD70 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0239DD70 */ if (_t8) goto L_0239DDE4; else goto L_0239DD74;
|
|
L_0239DD74: ; // 0x239dd74
|
|
/* 0239DD74 */ cpu->r[3] = cpu->r[0];
|
|
/* 0239DD78 */ Gambit_fn_02484F20(cpu);
|
|
/* 0239DD7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239DD80 */ _t9 = cpu->r[31] + 0x00000188u;
|
|
/* 0239DD80 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0239DD84 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DD84 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0239DD84 */ if (_t11) goto L_0239DD8C; else goto L_0239DD88;
|
|
L_0239DD88: ; // 0x239dd88
|
|
/* 0239DD88 */ cpu->r[28] = 0x00000000u;
|
|
L_0239DD8C: ; // 0x239dd8c
|
|
/* 0239DD8C */ Gambit_fn_02484F70(cpu);
|
|
/* 0239DD90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239DD94 */ _t12 = cpu->r[29] + 0x00000688u;
|
|
/* 0239DD94 */ cpu->r[11] = rbrew_read8(cpu->mem, _t12);
|
|
/* 0239DD98 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DD98 */ _t14 = _t13 & 0x00000001u;
|
|
/* 0239DD98 */ if (_t14) goto L_0239DDA0; else goto L_0239DD9C;
|
|
L_0239DD9C: ; // 0x239dd9c
|
|
/* 0239DD9C */ cpu->r[28] = 0x00000000u;
|
|
L_0239DDA0: ; // 0x239dda0
|
|
/* 0239DDA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0239DDA4 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DDA4 */ _t16 = _t15 & 0x00000001u;
|
|
/* 0239DDA4 */ if (_t16) goto L_0239DDC0; else goto L_0239DDA8;
|
|
L_0239DDA8: ; // 0x239dda8
|
|
/* 0239DDA8 */ _t17 = cpu->r[31] + 0x00000188u;
|
|
/* 0239DDA8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0239DDAC */ cpu->r[4] = cpu->r[29] + 0x0000068Cu;
|
|
/* 0239DDB0 */ Gambit_fn_02485108(cpu);
|
|
/* 0239DDB4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239DDB8 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DDB8 */ _t19 = _t18 & 0x00000001u;
|
|
/* 0239DDB8 */ if (_t19) goto L_0239DDC0; else goto L_0239DDBC;
|
|
L_0239DDBC: ; // 0x239ddbc
|
|
/* 0239DDBC */ cpu->r[28] = 0x00000000u;
|
|
L_0239DDC0: ; // 0x239ddc0
|
|
/* 0239DDC0 */ _t20 = cpu->r[29] + 0x0000068Au;
|
|
/* 0239DDC0 */ cpu->r[12] = rbrew_read8(cpu->mem, _t20);
|
|
/* 0239DDC4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0239DDC8 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DDC8 */ _t22 = _t21 & 0x00000001u;
|
|
/* 0239DDC8 */ if (_t22) goto L_0239DE48; else goto L_0239DDCC;
|
|
L_0239DDCC: ; // 0x239ddcc
|
|
/* 0239DDCC */ _t23 = cpu->r[31] + 0x00000188u;
|
|
/* 0239DDCC */ cpu->r[3] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0239DDD0 */ cpu->r[4] = cpu->r[29] + 0x0000069Cu;
|
|
/* 0239DDD4 */ Gambit_fn_02485108(cpu);
|
|
/* 0239DDD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239DDDC */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DDDC */ _t25 = _t24 & 0x00000001u;
|
|
/* 0239DDDC */ if (_t25) goto L_0239DE48; else goto L_0239DDE0;
|
|
L_0239DDE0: ; // 0x239dde0
|
|
/* 0239DDE0 */ goto L_0239DE50;
|
|
L_0239DDE4: ; // 0x239dde4
|
|
/* 0239DDE4 */ _t26 = cpu->r[31] + 0x00000184u;
|
|
/* 0239DDE4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0239DDE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239DDEC */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DDEC */ _t28 = _t27 & 0x00000001u;
|
|
/* 0239DDEC */ if (_t28) goto L_0239DE94; else goto L_0239DDF0;
|
|
L_0239DDF0: ; // 0x239ddf0
|
|
/* 0239DDF0 */ _t29 = cpu->r[29] + 0x00000688u;
|
|
/* 0239DDF0 */ cpu->r[9] = rbrew_read8(cpu->mem, _t29);
|
|
/* 0239DDF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0239DDF8 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DDF8 */ _t31 = _t30 & 0x00000001u;
|
|
/* 0239DDF8 */ if (_t31) goto L_0239DE1C; else goto L_0239DDFC;
|
|
L_0239DDFC: ; // 0x239ddfc
|
|
/* 0239DDFC */ cpu->r[4] = cpu->r[29] + 0x0000068Cu;
|
|
/* 0239DE00 */ Gambit_fn_02467028(cpu);
|
|
/* 0239DE04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239DE08 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DE08 */ _t33 = _t32 & 0x00000001u;
|
|
/* 0239DE08 */ if (_t33) goto L_0239DE1C; else goto L_0239DE0C;
|
|
L_0239DE0C: ; // 0x239de0c
|
|
/* 0239DE0C */ _t34 = cpu->r[31] + 0x000002C0u;
|
|
/* 0239DE0C */ cpu->r[0] = rbrew_read8(cpu->mem, _t34);
|
|
/* 0239DE10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0239DE14 */ _t35 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DE14 */ _t36 = _t35 & 0x00000001u;
|
|
/* 0239DE14 */ if (_t36) goto L_0239DE18; else goto L_0239DE1C;
|
|
L_0239DE18: ; // 0x239de18
|
|
/* 0239DE18 */ cpu->r[28] = 0x00000000u;
|
|
L_0239DE1C: ; // 0x239de1c
|
|
/* 0239DE1C */ _t37 = cpu->r[29] + 0x0000068Au;
|
|
/* 0239DE1C */ cpu->r[0] = rbrew_read8(cpu->mem, _t37);
|
|
/* 0239DE20 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0239DE24 */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DE24 */ _t39 = _t38 & 0x00000001u;
|
|
/* 0239DE24 */ if (_t39) goto L_0239DE48; else goto L_0239DE28;
|
|
L_0239DE28: ; // 0x239de28
|
|
/* 0239DE28 */ _t40 = cpu->r[31] + 0x00000184u;
|
|
/* 0239DE28 */ cpu->r[3] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0239DE2C */ cpu->r[4] = cpu->r[29] + 0x0000069Cu;
|
|
/* 0239DE30 */ Gambit_fn_02467028(cpu);
|
|
/* 0239DE34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239DE38 */ _t41 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DE38 */ _t42 = _t41 & 0x00000001u;
|
|
/* 0239DE38 */ if (_t42) goto L_0239DE48; else goto L_0239DE3C;
|
|
L_0239DE3C: ; // 0x239de3c
|
|
/* 0239DE3C */ _t43 = cpu->r[31] + 0x000002C0u;
|
|
/* 0239DE3C */ cpu->r[8] = rbrew_read8(cpu->mem, _t43);
|
|
/* 0239DE40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0239DE44 */ _t44 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DE44 */ _t45 = _t44 & 0x00000001u;
|
|
/* 0239DE44 */ if (_t45) goto L_0239DE50; else goto L_0239DE48;
|
|
L_0239DE48: ; // 0x239de48
|
|
/* 0239DE48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 0239DE4C */ _t46 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DE4C */ _t47 = _t46 & 0x00000001u;
|
|
/* 0239DE4C */ if (_t47) goto L_0239DE50; else goto L_0239DE94;
|
|
L_0239DE50: ; // 0x239de50
|
|
/* 0239DE50 */ _t48 = cpu->r[31] + 0x0000011Eu;
|
|
/* 0239DE50 */ rbrew_write8(cpu->mem, _t48, (uint8_t)cpu->r[30]);
|
|
/* 0239DE54 */ _t49 = cpu->r[31] + 0x0000011Eu;
|
|
/* 0239DE54 */ cpu->r[0] = rbrew_read8(cpu->mem, _t49);
|
|
/* 0239DE58 */ _t50 = cpu->r[31] + 0x0000011Du;
|
|
/* 0239DE58 */ rbrew_write8(cpu->mem, _t50, (uint8_t)cpu->r[30]);
|
|
/* 0239DE5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0239DE60 */ _t51 = cpu->r[31] + 0x0000011Cu;
|
|
/* 0239DE60 */ rbrew_write8(cpu->mem, _t51, (uint8_t)cpu->r[30]);
|
|
/* 0239DE64 */ _t52 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DE64 */ _t53 = _t52 & 0x00000001u;
|
|
/* 0239DE64 */ if (_t53) goto L_0239DE68; else goto L_0239DF1C;
|
|
L_0239DE68: ; // 0x239de68
|
|
/* 0239DE68 */ _t54 = cpu->r[31] + 0x00000124u;
|
|
/* 0239DE68 */ cpu->r[12] = rbrew_read32(cpu->mem, _t54);
|
|
/* 0239DE6C */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 0239DE70 */ _t55 = cpu->r[31] + 0x00000124u;
|
|
/* 0239DE70 */ rbrew_write32(cpu->mem, _t55, cpu->r[12]);
|
|
/* 0239DE74 */ _t56 = cpu->r[1] + 0x00000008u;
|
|
/* 0239DE74 */ cpu->r[28] = rbrew_read32(cpu->mem, _t56);
|
|
/* 0239DE78 */ _t57 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239DE78 */ cpu->r[29] = rbrew_read32(cpu->mem, _t57);
|
|
/* 0239DE7C */ _t58 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239DE7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t58);
|
|
/* 0239DE80 */ _t59 = cpu->r[1] + 0x00000010u;
|
|
/* 0239DE80 */ cpu->r[30] = rbrew_read32(cpu->mem, _t59);
|
|
/* 0239DE84 */ cpu->lr = cpu->r[0];
|
|
/* 0239DE88 */ _t60 = cpu->r[1] + 0x00000014u;
|
|
/* 0239DE88 */ cpu->r[31] = rbrew_read32(cpu->mem, _t60);
|
|
/* 0239DE8C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0239DE90 */ return;
|
|
L_0239DE94: ; // 0x239de94
|
|
/* 0239DE94 */ _t61 = cpu->r[29] + 0x00000688u;
|
|
/* 0239DE94 */ cpu->r[9] = rbrew_read8(cpu->mem, _t61);
|
|
/* 0239DE98 */ _t62 = cpu->r[31] + 0x0000011Cu;
|
|
/* 0239DE98 */ rbrew_write8(cpu->mem, _t62, (uint8_t)cpu->r[9]);
|
|
/* 0239DE9C */ _t63 = cpu->r[29] + 0x00000689u;
|
|
/* 0239DE9C */ cpu->r[0] = rbrew_read8(cpu->mem, _t63);
|
|
/* 0239DEA0 */ _t64 = cpu->r[31] + 0x0000011Du;
|
|
/* 0239DEA0 */ rbrew_write8(cpu->mem, _t64, (uint8_t)cpu->r[0]);
|
|
/* 0239DEA4 */ _t65 = cpu->r[29] + 0x0000068Au;
|
|
/* 0239DEA4 */ cpu->r[10] = rbrew_read8(cpu->mem, _t65);
|
|
/* 0239DEA8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 0239DEA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0239DEAC */ _t66 = cpu->r[31] + 0x0000011Eu;
|
|
/* 0239DEAC */ rbrew_write8(cpu->mem, _t66, (uint8_t)cpu->r[10]);
|
|
/* 0239DEB0 */ _t67 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DEB0 */ _t68 = _t67 & 0x00000001u;
|
|
/* 0239DEB0 */ if (_t68) goto L_0239DEC8; else goto L_0239DEB4;
|
|
L_0239DEB4: ; // 0x239deb4
|
|
/* 0239DEB4 */ _t69 = cpu->r[29] + 0x0000068Cu;
|
|
/* 0239DEB4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t69);
|
|
/* 0239DEB8 */ _t70 = cpu->r[31] + 0x00000114u;
|
|
/* 0239DEB8 */ rbrew_write_f32(cpu->mem, _t70, cpu->f[0]);
|
|
/* 0239DEBC */ _t71 = cpu->r[29] + 0x00000690u;
|
|
/* 0239DEBC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t71);
|
|
/* 0239DEC0 */ _t72 = cpu->r[31] + 0x00000120u;
|
|
/* 0239DEC0 */ rbrew_write32(cpu->mem, _t72, cpu->r[30]);
|
|
/* 0239DEC4 */ _t73 = cpu->r[31] + 0x00000118u;
|
|
/* 0239DEC4 */ rbrew_write_f32(cpu->mem, _t73, cpu->f[0]);
|
|
L_0239DEC8: ; // 0x239dec8
|
|
/* 0239DEC8 */ _t74 = cpu->r[31] + 0x0000011Cu;
|
|
/* 0239DEC8 */ cpu->r[12] = rbrew_read8(cpu->mem, _t74);
|
|
/* 0239DECC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0239DED0 */ _t75 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DED0 */ _t76 = _t75 & 0x00000001u;
|
|
/* 0239DED0 */ if (_t76) goto L_0239DF10; else goto L_0239DED4;
|
|
L_0239DED4: ; // 0x239ded4
|
|
/* 0239DED4 */ _t77 = cpu->r[29] + 0x0000068Cu;
|
|
/* 0239DED4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t77);
|
|
/* 0239DED8 */ _t78 = cpu->r[31] + 0x00000120u;
|
|
/* 0239DED8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t78);
|
|
/* 0239DEDC */ _t79 = cpu->r[31] + 0x00000114u;
|
|
/* 0239DEDC */ rbrew_write_f32(cpu->mem, _t79, cpu->f[0]);
|
|
/* 0239DEE0 */ _t80 = cpu->r[29] + 0x00000690u;
|
|
/* 0239DEE0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t80);
|
|
/* 0239DEE4 */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 0239DEE8 */ _t81 = cpu->r[31] + 0x00000120u;
|
|
/* 0239DEE8 */ rbrew_write32(cpu->mem, _t81, cpu->r[8]);
|
|
/* 0239DEEC */ _t82 = cpu->r[31] + 0x00000118u;
|
|
/* 0239DEEC */ rbrew_write_f32(cpu->mem, _t82, cpu->f[0]);
|
|
/* 0239DEF0 */ _t83 = cpu->r[1] + 0x00000008u;
|
|
/* 0239DEF0 */ cpu->r[28] = rbrew_read32(cpu->mem, _t83);
|
|
/* 0239DEF4 */ _t84 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239DEF4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t84);
|
|
/* 0239DEF8 */ _t85 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239DEF8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t85);
|
|
/* 0239DEFC */ _t86 = cpu->r[1] + 0x00000010u;
|
|
/* 0239DEFC */ cpu->r[30] = rbrew_read32(cpu->mem, _t86);
|
|
/* 0239DF00 */ cpu->lr = cpu->r[0];
|
|
/* 0239DF04 */ _t87 = cpu->r[1] + 0x00000014u;
|
|
/* 0239DF04 */ cpu->r[31] = rbrew_read32(cpu->mem, _t87);
|
|
/* 0239DF08 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0239DF0C */ return;
|
|
L_0239DF10: ; // 0x239df10
|
|
/* 0239DF10 */ _t88 = cpu->r[31] + 0x0000011Eu;
|
|
/* 0239DF10 */ cpu->r[0] = rbrew_read8(cpu->mem, _t88);
|
|
/* 0239DF14 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0239DF18 */ _t89 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DF18 */ _t90 = _t89 & 0x00000001u;
|
|
/* 0239DF18 */ if (_t90) goto L_0239DE68; else goto L_0239DF1C;
|
|
L_0239DF1C: ; // 0x239df1c
|
|
/* 0239DF1C */ _t91 = cpu->r[29] + 0x0000069Cu;
|
|
/* 0239DF1C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t91);
|
|
/* 0239DF20 */ _t92 = cpu->r[31] + 0x00000114u;
|
|
/* 0239DF20 */ rbrew_write_f32(cpu->mem, _t92, cpu->f[0]);
|
|
/* 0239DF24 */ _t93 = cpu->r[29] + 0x000006A0u;
|
|
/* 0239DF24 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t93);
|
|
/* 0239DF28 */ _t94 = cpu->r[31] + 0x00000124u;
|
|
/* 0239DF28 */ rbrew_write32(cpu->mem, _t94, cpu->r[30]);
|
|
/* 0239DF2C */ _t95 = cpu->r[31] + 0x00000118u;
|
|
/* 0239DF2C */ rbrew_write_f32(cpu->mem, _t95, cpu->f[0]);
|
|
/* 0239DF30 */ _t96 = cpu->r[1] + 0x00000008u;
|
|
/* 0239DF30 */ cpu->r[28] = rbrew_read32(cpu->mem, _t96);
|
|
/* 0239DF34 */ _t97 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239DF34 */ cpu->r[29] = rbrew_read32(cpu->mem, _t97);
|
|
/* 0239DF38 */ _t98 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239DF38 */ cpu->r[0] = rbrew_read32(cpu->mem, _t98);
|
|
/* 0239DF3C */ _t99 = cpu->r[1] + 0x00000010u;
|
|
/* 0239DF3C */ cpu->r[30] = rbrew_read32(cpu->mem, _t99);
|
|
/* 0239DF40 */ cpu->lr = cpu->r[0];
|
|
/* 0239DF44 */ _t100 = cpu->r[1] + 0x00000014u;
|
|
/* 0239DF44 */ cpu->r[31] = rbrew_read32(cpu->mem, _t100);
|
|
/* 0239DF48 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0239DF4C */ return;
|
|
}
|
|
|
|
// fn_0239DD3C @ 0x239dd3c
|
|
void Gambit_fn_0239DD3C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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;
|
|
|
|
L_0239DD3C: ; // 0x239dd3c
|
|
/* 0239DD3C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0239DD3C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239DD3C */ cpu->r[1] = _t0;
|
|
/* 0239DD40 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0239DD40 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0239DD44 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239DD44 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 0239DD48 */ cpu->r[31] = cpu->r[3];
|
|
/* 0239DD4C */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 0239DD4C */ rbrew_write32(cpu->mem, _t3, cpu->r[28]);
|
|
/* 0239DD50 */ _t4 = cpu->r[1] + 0x00000010u;
|
|
/* 0239DD50 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 0239DD54 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239DD54 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0239DD58 */ Gambit_fn_027DF9A0(cpu);
|
|
/* 0239DD5C */ _t6 = cpu->r[31] + 0x00000188u;
|
|
/* 0239DD5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0239DD60 */ cpu->r[29] = cpu->r[3];
|
|
/* 0239DD64 */ cpu->r[30] = 0x00000000u;
|
|
/* 0239DD68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0239DD6C */ cpu->r[28] = 0x00000001u;
|
|
/* 0239DD70 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DD70 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0239DD70 */ if (_t8) goto L_0239DDE4; else goto L_0239DD74;
|
|
L_0239DD74: ; // 0x239dd74
|
|
/* 0239DD74 */ cpu->r[3] = cpu->r[0];
|
|
/* 0239DD78 */ Gambit_fn_02484F20(cpu);
|
|
/* 0239DD7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239DD80 */ _t9 = cpu->r[31] + 0x00000188u;
|
|
/* 0239DD80 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0239DD84 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DD84 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0239DD84 */ if (_t11) goto L_0239DD8C; else goto L_0239DD88;
|
|
L_0239DD88: ; // 0x239dd88
|
|
/* 0239DD88 */ cpu->r[28] = 0x00000000u;
|
|
L_0239DD8C: ; // 0x239dd8c
|
|
/* 0239DD8C */ Gambit_fn_02484F70(cpu);
|
|
/* 0239DD90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239DD94 */ _t12 = cpu->r[29] + 0x00000688u;
|
|
/* 0239DD94 */ cpu->r[11] = rbrew_read8(cpu->mem, _t12);
|
|
/* 0239DD98 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DD98 */ _t14 = _t13 & 0x00000001u;
|
|
/* 0239DD98 */ if (_t14) goto L_0239DDA0; else goto L_0239DD9C;
|
|
L_0239DD9C: ; // 0x239dd9c
|
|
/* 0239DD9C */ cpu->r[28] = 0x00000000u;
|
|
L_0239DDA0: ; // 0x239dda0
|
|
/* 0239DDA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0239DDA4 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DDA4 */ _t16 = _t15 & 0x00000001u;
|
|
/* 0239DDA4 */ if (_t16) goto L_0239DDC0; else goto L_0239DDA8;
|
|
L_0239DDA8: ; // 0x239dda8
|
|
/* 0239DDA8 */ _t17 = cpu->r[31] + 0x00000188u;
|
|
/* 0239DDA8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0239DDAC */ cpu->r[4] = cpu->r[29] + 0x0000068Cu;
|
|
/* 0239DDB0 */ Gambit_fn_02485108(cpu);
|
|
/* 0239DDB4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239DDB8 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DDB8 */ _t19 = _t18 & 0x00000001u;
|
|
/* 0239DDB8 */ if (_t19) goto L_0239DDC0; else goto L_0239DDBC;
|
|
L_0239DDBC: ; // 0x239ddbc
|
|
/* 0239DDBC */ cpu->r[28] = 0x00000000u;
|
|
L_0239DDC0: ; // 0x239ddc0
|
|
/* 0239DDC0 */ _t20 = cpu->r[29] + 0x0000068Au;
|
|
/* 0239DDC0 */ cpu->r[12] = rbrew_read8(cpu->mem, _t20);
|
|
/* 0239DDC4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0239DDC8 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DDC8 */ _t22 = _t21 & 0x00000001u;
|
|
/* 0239DDC8 */ if (_t22) goto L_0239DE48; else goto L_0239DDCC;
|
|
L_0239DDCC: ; // 0x239ddcc
|
|
/* 0239DDCC */ _t23 = cpu->r[31] + 0x00000188u;
|
|
/* 0239DDCC */ cpu->r[3] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0239DDD0 */ cpu->r[4] = cpu->r[29] + 0x0000069Cu;
|
|
/* 0239DDD4 */ Gambit_fn_02485108(cpu);
|
|
/* 0239DDD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239DDDC */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DDDC */ _t25 = _t24 & 0x00000001u;
|
|
/* 0239DDDC */ if (_t25) goto L_0239DE48; else goto L_0239DDE0;
|
|
L_0239DDE0: ; // 0x239dde0
|
|
/* 0239DDE0 */ goto L_0239DE50;
|
|
L_0239DDE4: ; // 0x239dde4
|
|
/* 0239DDE4 */ _t26 = cpu->r[31] + 0x00000184u;
|
|
/* 0239DDE4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0239DDE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239DDEC */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DDEC */ _t28 = _t27 & 0x00000001u;
|
|
/* 0239DDEC */ if (_t28) goto L_0239DE94; else goto L_0239DDF0;
|
|
L_0239DDF0: ; // 0x239ddf0
|
|
/* 0239DDF0 */ _t29 = cpu->r[29] + 0x00000688u;
|
|
/* 0239DDF0 */ cpu->r[9] = rbrew_read8(cpu->mem, _t29);
|
|
/* 0239DDF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0239DDF8 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DDF8 */ _t31 = _t30 & 0x00000001u;
|
|
/* 0239DDF8 */ if (_t31) goto L_0239DE1C; else goto L_0239DDFC;
|
|
L_0239DDFC: ; // 0x239ddfc
|
|
/* 0239DDFC */ cpu->r[4] = cpu->r[29] + 0x0000068Cu;
|
|
/* 0239DE00 */ Gambit_fn_02467028(cpu);
|
|
/* 0239DE04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239DE08 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DE08 */ _t33 = _t32 & 0x00000001u;
|
|
/* 0239DE08 */ if (_t33) goto L_0239DE1C; else goto L_0239DE0C;
|
|
L_0239DE0C: ; // 0x239de0c
|
|
/* 0239DE0C */ _t34 = cpu->r[31] + 0x000002C0u;
|
|
/* 0239DE0C */ cpu->r[0] = rbrew_read8(cpu->mem, _t34);
|
|
/* 0239DE10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0239DE14 */ _t35 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DE14 */ _t36 = _t35 & 0x00000001u;
|
|
/* 0239DE14 */ if (_t36) goto L_0239DE18; else goto L_0239DE1C;
|
|
L_0239DE18: ; // 0x239de18
|
|
/* 0239DE18 */ cpu->r[28] = 0x00000000u;
|
|
L_0239DE1C: ; // 0x239de1c
|
|
/* 0239DE1C */ _t37 = cpu->r[29] + 0x0000068Au;
|
|
/* 0239DE1C */ cpu->r[0] = rbrew_read8(cpu->mem, _t37);
|
|
/* 0239DE20 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0239DE24 */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DE24 */ _t39 = _t38 & 0x00000001u;
|
|
/* 0239DE24 */ if (_t39) goto L_0239DE48; else goto L_0239DE28;
|
|
L_0239DE28: ; // 0x239de28
|
|
/* 0239DE28 */ _t40 = cpu->r[31] + 0x00000184u;
|
|
/* 0239DE28 */ cpu->r[3] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0239DE2C */ cpu->r[4] = cpu->r[29] + 0x0000069Cu;
|
|
/* 0239DE30 */ Gambit_fn_02467028(cpu);
|
|
/* 0239DE34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239DE38 */ _t41 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DE38 */ _t42 = _t41 & 0x00000001u;
|
|
/* 0239DE38 */ if (_t42) goto L_0239DE48; else goto L_0239DE3C;
|
|
L_0239DE3C: ; // 0x239de3c
|
|
/* 0239DE3C */ _t43 = cpu->r[31] + 0x000002C0u;
|
|
/* 0239DE3C */ cpu->r[8] = rbrew_read8(cpu->mem, _t43);
|
|
/* 0239DE40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0239DE44 */ _t44 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DE44 */ _t45 = _t44 & 0x00000001u;
|
|
/* 0239DE44 */ if (_t45) goto L_0239DE50; else goto L_0239DE48;
|
|
L_0239DE48: ; // 0x239de48
|
|
/* 0239DE48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 0239DE4C */ _t46 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DE4C */ _t47 = _t46 & 0x00000001u;
|
|
/* 0239DE4C */ if (_t47) goto L_0239DE50; else goto L_0239DE94;
|
|
L_0239DE50: ; // 0x239de50
|
|
/* 0239DE50 */ _t48 = cpu->r[31] + 0x0000011Eu;
|
|
/* 0239DE50 */ rbrew_write8(cpu->mem, _t48, (uint8_t)cpu->r[30]);
|
|
/* 0239DE54 */ _t49 = cpu->r[31] + 0x0000011Eu;
|
|
/* 0239DE54 */ cpu->r[0] = rbrew_read8(cpu->mem, _t49);
|
|
/* 0239DE58 */ _t50 = cpu->r[31] + 0x0000011Du;
|
|
/* 0239DE58 */ rbrew_write8(cpu->mem, _t50, (uint8_t)cpu->r[30]);
|
|
/* 0239DE5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0239DE60 */ _t51 = cpu->r[31] + 0x0000011Cu;
|
|
/* 0239DE60 */ rbrew_write8(cpu->mem, _t51, (uint8_t)cpu->r[30]);
|
|
/* 0239DE64 */ _t52 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DE64 */ _t53 = _t52 & 0x00000001u;
|
|
/* 0239DE64 */ if (_t53) goto L_0239DE68; else goto L_0239DF1C;
|
|
L_0239DE68: ; // 0x239de68
|
|
/* 0239DE68 */ _t54 = cpu->r[31] + 0x00000124u;
|
|
/* 0239DE68 */ cpu->r[12] = rbrew_read32(cpu->mem, _t54);
|
|
/* 0239DE6C */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 0239DE70 */ _t55 = cpu->r[31] + 0x00000124u;
|
|
/* 0239DE70 */ rbrew_write32(cpu->mem, _t55, cpu->r[12]);
|
|
/* 0239DE74 */ _t56 = cpu->r[1] + 0x00000008u;
|
|
/* 0239DE74 */ cpu->r[28] = rbrew_read32(cpu->mem, _t56);
|
|
/* 0239DE78 */ _t57 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239DE78 */ cpu->r[29] = rbrew_read32(cpu->mem, _t57);
|
|
/* 0239DE7C */ _t58 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239DE7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t58);
|
|
/* 0239DE80 */ _t59 = cpu->r[1] + 0x00000010u;
|
|
/* 0239DE80 */ cpu->r[30] = rbrew_read32(cpu->mem, _t59);
|
|
/* 0239DE84 */ cpu->lr = cpu->r[0];
|
|
/* 0239DE88 */ _t60 = cpu->r[1] + 0x00000014u;
|
|
/* 0239DE88 */ cpu->r[31] = rbrew_read32(cpu->mem, _t60);
|
|
/* 0239DE8C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0239DE90 */ return;
|
|
L_0239DE94: ; // 0x239de94
|
|
/* 0239DE94 */ _t61 = cpu->r[29] + 0x00000688u;
|
|
/* 0239DE94 */ cpu->r[9] = rbrew_read8(cpu->mem, _t61);
|
|
/* 0239DE98 */ _t62 = cpu->r[31] + 0x0000011Cu;
|
|
/* 0239DE98 */ rbrew_write8(cpu->mem, _t62, (uint8_t)cpu->r[9]);
|
|
/* 0239DE9C */ _t63 = cpu->r[29] + 0x00000689u;
|
|
/* 0239DE9C */ cpu->r[0] = rbrew_read8(cpu->mem, _t63);
|
|
/* 0239DEA0 */ _t64 = cpu->r[31] + 0x0000011Du;
|
|
/* 0239DEA0 */ rbrew_write8(cpu->mem, _t64, (uint8_t)cpu->r[0]);
|
|
/* 0239DEA4 */ _t65 = cpu->r[29] + 0x0000068Au;
|
|
/* 0239DEA4 */ cpu->r[10] = rbrew_read8(cpu->mem, _t65);
|
|
/* 0239DEA8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 0239DEA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0239DEAC */ _t66 = cpu->r[31] + 0x0000011Eu;
|
|
/* 0239DEAC */ rbrew_write8(cpu->mem, _t66, (uint8_t)cpu->r[10]);
|
|
/* 0239DEB0 */ _t67 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DEB0 */ _t68 = _t67 & 0x00000001u;
|
|
/* 0239DEB0 */ if (_t68) goto L_0239DEC8; else goto L_0239DEB4;
|
|
L_0239DEB4: ; // 0x239deb4
|
|
/* 0239DEB4 */ _t69 = cpu->r[29] + 0x0000068Cu;
|
|
/* 0239DEB4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t69);
|
|
/* 0239DEB8 */ _t70 = cpu->r[31] + 0x00000114u;
|
|
/* 0239DEB8 */ rbrew_write_f32(cpu->mem, _t70, cpu->f[0]);
|
|
/* 0239DEBC */ _t71 = cpu->r[29] + 0x00000690u;
|
|
/* 0239DEBC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t71);
|
|
/* 0239DEC0 */ _t72 = cpu->r[31] + 0x00000120u;
|
|
/* 0239DEC0 */ rbrew_write32(cpu->mem, _t72, cpu->r[30]);
|
|
/* 0239DEC4 */ _t73 = cpu->r[31] + 0x00000118u;
|
|
/* 0239DEC4 */ rbrew_write_f32(cpu->mem, _t73, cpu->f[0]);
|
|
L_0239DEC8: ; // 0x239dec8
|
|
/* 0239DEC8 */ _t74 = cpu->r[31] + 0x0000011Cu;
|
|
/* 0239DEC8 */ cpu->r[12] = rbrew_read8(cpu->mem, _t74);
|
|
/* 0239DECC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0239DED0 */ _t75 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DED0 */ _t76 = _t75 & 0x00000001u;
|
|
/* 0239DED0 */ if (_t76) goto L_0239DF10; else goto L_0239DED4;
|
|
L_0239DED4: ; // 0x239ded4
|
|
/* 0239DED4 */ _t77 = cpu->r[29] + 0x0000068Cu;
|
|
/* 0239DED4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t77);
|
|
/* 0239DED8 */ _t78 = cpu->r[31] + 0x00000120u;
|
|
/* 0239DED8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t78);
|
|
/* 0239DEDC */ _t79 = cpu->r[31] + 0x00000114u;
|
|
/* 0239DEDC */ rbrew_write_f32(cpu->mem, _t79, cpu->f[0]);
|
|
/* 0239DEE0 */ _t80 = cpu->r[29] + 0x00000690u;
|
|
/* 0239DEE0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t80);
|
|
/* 0239DEE4 */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 0239DEE8 */ _t81 = cpu->r[31] + 0x00000120u;
|
|
/* 0239DEE8 */ rbrew_write32(cpu->mem, _t81, cpu->r[8]);
|
|
/* 0239DEEC */ _t82 = cpu->r[31] + 0x00000118u;
|
|
/* 0239DEEC */ rbrew_write_f32(cpu->mem, _t82, cpu->f[0]);
|
|
/* 0239DEF0 */ _t83 = cpu->r[1] + 0x00000008u;
|
|
/* 0239DEF0 */ cpu->r[28] = rbrew_read32(cpu->mem, _t83);
|
|
/* 0239DEF4 */ _t84 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239DEF4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t84);
|
|
/* 0239DEF8 */ _t85 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239DEF8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t85);
|
|
/* 0239DEFC */ _t86 = cpu->r[1] + 0x00000010u;
|
|
/* 0239DEFC */ cpu->r[30] = rbrew_read32(cpu->mem, _t86);
|
|
/* 0239DF00 */ cpu->lr = cpu->r[0];
|
|
/* 0239DF04 */ _t87 = cpu->r[1] + 0x00000014u;
|
|
/* 0239DF04 */ cpu->r[31] = rbrew_read32(cpu->mem, _t87);
|
|
/* 0239DF08 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0239DF0C */ return;
|
|
L_0239DF10: ; // 0x239df10
|
|
/* 0239DF10 */ _t88 = cpu->r[31] + 0x0000011Eu;
|
|
/* 0239DF10 */ cpu->r[0] = rbrew_read8(cpu->mem, _t88);
|
|
/* 0239DF14 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0239DF18 */ _t89 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DF18 */ _t90 = _t89 & 0x00000001u;
|
|
/* 0239DF18 */ if (_t90) goto L_0239DE68; else goto L_0239DF1C;
|
|
L_0239DF1C: ; // 0x239df1c
|
|
/* 0239DF1C */ _t91 = cpu->r[29] + 0x0000069Cu;
|
|
/* 0239DF1C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t91);
|
|
/* 0239DF20 */ _t92 = cpu->r[31] + 0x00000114u;
|
|
/* 0239DF20 */ rbrew_write_f32(cpu->mem, _t92, cpu->f[0]);
|
|
/* 0239DF24 */ _t93 = cpu->r[29] + 0x000006A0u;
|
|
/* 0239DF24 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t93);
|
|
/* 0239DF28 */ _t94 = cpu->r[31] + 0x00000124u;
|
|
/* 0239DF28 */ rbrew_write32(cpu->mem, _t94, cpu->r[30]);
|
|
/* 0239DF2C */ _t95 = cpu->r[31] + 0x00000118u;
|
|
/* 0239DF2C */ rbrew_write_f32(cpu->mem, _t95, cpu->f[0]);
|
|
/* 0239DF30 */ _t96 = cpu->r[1] + 0x00000008u;
|
|
/* 0239DF30 */ cpu->r[28] = rbrew_read32(cpu->mem, _t96);
|
|
/* 0239DF34 */ _t97 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239DF34 */ cpu->r[29] = rbrew_read32(cpu->mem, _t97);
|
|
/* 0239DF38 */ _t98 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239DF38 */ cpu->r[0] = rbrew_read32(cpu->mem, _t98);
|
|
/* 0239DF3C */ _t99 = cpu->r[1] + 0x00000010u;
|
|
/* 0239DF3C */ cpu->r[30] = rbrew_read32(cpu->mem, _t99);
|
|
/* 0239DF40 */ cpu->lr = cpu->r[0];
|
|
/* 0239DF44 */ _t100 = cpu->r[1] + 0x00000014u;
|
|
/* 0239DF44 */ cpu->r[31] = rbrew_read32(cpu->mem, _t100);
|
|
/* 0239DF48 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0239DF4C */ return;
|
|
}
|
|
|
|
// fn_0239DF50 @ 0x239df50
|
|
void Gambit_fn_0239DF50(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39;
|
|
|
|
L_0239DF50: ; // 0x239df50
|
|
/* 0239DF50 */ _t0 = cpu->r[3] + 0x0000005Cu;
|
|
/* 0239DF50 */ cpu->r[12] = rbrew_read8(cpu->mem, _t0);
|
|
/* 0239DF54 */ /* nop */
|
|
/* 0239DF58 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], 0x00000001u);
|
|
/* 0239DF5C */ _t1 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0239DF5C */ _t2 = _t1 & 0x00000001u;
|
|
/* 0239DF5C */ if (_t2) goto L_0239DF74; else goto L_0239DF60;
|
|
L_0239DF60: ; // 0x239df60
|
|
/* 0239DF60 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DF60 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0239DF60 */ if (_t4) goto L_0239DF98; else goto L_0239DF64;
|
|
L_0239DF64: ; // 0x239df64
|
|
/* 0239DF64 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], 0x00000003u);
|
|
/* 0239DF68 */ _t5 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0239DF68 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0239DF68 */ if (_t6) goto L_0239DFB0; else goto L_0239DF6C;
|
|
L_0239DF6C: ; // 0x239df6c
|
|
/* 0239DF6C */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DF6C */ _t8 = _t7 & 0x00000001u;
|
|
/* 0239DF6C */ if (_t8) goto L_0239DFD4; else goto L_0239DF70;
|
|
L_0239DF70: ; // 0x239df70
|
|
/* 0239DF70 */ return;
|
|
L_0239DF74: ; // 0x239df74
|
|
/* 0239DF74 */ _t9 = cpu->r[3] + 0x0000011Cu;
|
|
/* 0239DF74 */ cpu->r[0] = rbrew_read8(cpu->mem, _t9);
|
|
/* 0239DF78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0239DF7C */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DF7C */ _t11 = _t10 & 0x00000001u;
|
|
/* 0239DF7C */ if (_t11) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0239DF7C */ goto L_0239DF80;
|
|
L_0239DF80: ; // 0x239df80
|
|
/* 0239DF80 */ _t12 = cpu->r[3] + 0x00000120u;
|
|
/* 0239DF80 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0239DF84 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x0000001Eu);
|
|
/* 0239DF88 */ _t13 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0239DF88 */ _t14 = _t13 & 0x00000001u;
|
|
/* 0239DF88 */ if (_t14) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0239DF88 */ goto L_0239DF8C;
|
|
L_0239DF8C: ; // 0x239df8c
|
|
/* 0239DF8C */ cpu->r[3] = cpu->r[3] + 0x00000050u;
|
|
/* 0239DF90 */ cpu->r[4] = 0x00000001u;
|
|
/* 0239DF94 */ goto L_023A2C74;
|
|
L_0239DF98: ; // 0x239df98
|
|
/* 0239DF98 */ _t15 = cpu->r[3] + 0x00000058u;
|
|
/* 0239DF98 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0239DF9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000008u);
|
|
/* 0239DFA0 */ _t16 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0239DFA0 */ _t17 = _t16 & 0x00000001u;
|
|
/* 0239DFA0 */ if (_t17) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0239DFA0 */ goto L_0239DFA4;
|
|
L_0239DFA4: ; // 0x239dfa4
|
|
/* 0239DFA4 */ cpu->r[3] = cpu->r[3] + 0x00000050u;
|
|
/* 0239DFA8 */ cpu->r[4] = 0x00000002u;
|
|
/* 0239DFAC */ goto L_023A2C74;
|
|
L_0239DFB0: ; // 0x239dfb0
|
|
/* 0239DFB0 */ _t18 = cpu->r[3] + 0x0000011Cu;
|
|
/* 0239DFB0 */ cpu->r[12] = rbrew_read8(cpu->mem, _t18);
|
|
/* 0239DFB4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0239DFB8 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DFB8 */ _t20 = _t19 & 0x00000001u;
|
|
/* 0239DFB8 */ _t21 = _t20 ^ 0x00000001u;
|
|
/* 0239DFB8 */ if (_t21) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0239DFB8 */ goto L_0239DFBC;
|
|
L_0239DFBC: ; // 0x239dfbc
|
|
/* 0239DFBC */ _t22 = cpu->r[3] + 0x00000124u;
|
|
/* 0239DFBC */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0239DFC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0239DFC4 */ _t23 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0239DFC4 */ _t24 = _t23 & 0x00000001u;
|
|
/* 0239DFC4 */ if (_t24) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0239DFC4 */ goto L_0239DFC8;
|
|
L_0239DFC8: ; // 0x239dfc8
|
|
/* 0239DFC8 */ cpu->r[3] = cpu->r[3] + 0x00000050u;
|
|
/* 0239DFCC */ cpu->r[4] = 0x00000003u;
|
|
/* 0239DFD0 */ goto L_023A2C74;
|
|
L_0239DFD4: ; // 0x239dfd4
|
|
/* 0239DFD4 */ _t25 = cpu->r[3] + 0x00000058u;
|
|
/* 0239DFD4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0239DFD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000000Fu);
|
|
/* 0239DFDC */ _t26 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0239DFDC */ _t27 = _t26 & 0x00000001u;
|
|
/* 0239DFDC */ if (_t27) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0239DFDC */ goto L_0239DFE0;
|
|
L_0239DFE0: ; // 0x239dfe0
|
|
/* 0239DFE0 */ cpu->r[3] = cpu->r[3] + 0x00000050u;
|
|
/* 0239DFE4 */ cpu->r[4] = 0x00000000u;
|
|
/* 0239DFE8 */ goto L_023A2C74;
|
|
L_023A2C74: ; // 0x23a2c74
|
|
/* 023A2C74 */ cpu->r[0] = cpu->lr;
|
|
/* 023A2C78 */ _t28 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 023A2C78 */ rbrew_write32(cpu->mem, _t28, cpu->r[1]);
|
|
/* 023A2C78 */ cpu->r[1] = _t28;
|
|
/* 023A2C7C */ _t29 = cpu->r[1] + 0x00000008u;
|
|
/* 023A2C7C */ rbrew_write32(cpu->mem, _t29, cpu->r[30]);
|
|
/* 023A2C80 */ _t30 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023A2C80 */ rbrew_write32(cpu->mem, _t30, cpu->r[31]);
|
|
/* 023A2C84 */ cpu->r[30] = cpu->r[3];
|
|
/* 023A2C88 */ _t31 = cpu->r[1] + 0x00000014u;
|
|
/* 023A2C88 */ rbrew_write32(cpu->mem, _t31, cpu->r[0]);
|
|
/* 023A2C8C */ _t32 = cpu->r[30] + 0x0000000Cu;
|
|
/* 023A2C8C */ cpu->r[12] = rbrew_read8(cpu->mem, _t32);
|
|
/* 023A2C90 */ /* nop */
|
|
/* 023A2C94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0xFFFFFFFFu);
|
|
/* 023A2C98 */ cpu->r[31] = cpu->r[4];
|
|
/* 023A2C9C */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A2C9C */ _t34 = _t33 & 0x00000001u;
|
|
/* 023A2C9C */ if (_t34) goto L_023A2CA0; else goto L_023A2CB4;
|
|
L_023A2CA0: ; // 0x23a2ca0
|
|
/* 023A2CA0 */ _t35 = cpu->r[30] + 0x00000004u;
|
|
/* 023A2CA0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t35);
|
|
/* 023A2CA4 */ _t36 = cpu->r[11] + 0x00000014u;
|
|
/* 023A2CA4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t36);
|
|
/* 023A2CA8 */ cpu->ctr = cpu->r[0];
|
|
/* 023A2CAC */ cpu->r[3] = cpu->r[30];
|
|
/* 023A2CB0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_023A2CB4: ; // 0x23a2cb4
|
|
/* 023A2CB4 */ cpu->r[3] = cpu->r[30];
|
|
/* 023A2CB8 */ cpu->r[4] = cpu->r[31];
|
|
/* 023A2CBC */ Gambit_fn_023A2B64(cpu);
|
|
/* 023A2CC0 */ cpu->r[3] = cpu->r[30];
|
|
/* 023A2CC4 */ /* nop */
|
|
/* 023A2CC8 */ Gambit_fn_027FC35C(cpu);
|
|
/* 023A2CCC */ cpu->r[3] = cpu->r[30];
|
|
/* 023A2CD0 */ Gambit_fn_023A2BEC(cpu);
|
|
/* 023A2CD4 */ _t37 = cpu->r[1] + 0x00000014u;
|
|
/* 023A2CD4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t37);
|
|
/* 023A2CD8 */ _t38 = cpu->r[1] + 0x00000008u;
|
|
/* 023A2CD8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t38);
|
|
/* 023A2CDC */ cpu->lr = cpu->r[0];
|
|
/* 023A2CE0 */ _t39 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023A2CE0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t39);
|
|
/* 023A2CE4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 023A2CE8 */ return;
|
|
}
|
|
|
|
// fn_0239DFEC @ 0x239dfec
|
|
void Gambit_fn_0239DFEC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0239DFEC: ; // 0x239dfec
|
|
/* 0239DFEC */ _t0 = cpu->r[3] + 0x0000011Cu;
|
|
/* 0239DFEC */ cpu->r[12] = rbrew_read8(cpu->mem, _t0);
|
|
/* 0239DFF0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0239DFF4 */ cpu->r[0] = 0x00000000u;
|
|
/* 0239DFF8 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239DFF8 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0239DFF8 */ if (_t2) goto L_0239E00C; else goto L_0239DFFC;
|
|
L_0239DFFC: ; // 0x239dffc
|
|
/* 0239DFFC */ _t3 = cpu->r[3] + 0x000002C0u;
|
|
/* 0239DFFC */ cpu->r[12] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0239E000 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0239E004 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239E004 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0239E004 */ if (_t5) goto L_0239E008; else goto L_0239E00C;
|
|
L_0239E008: ; // 0x239e008
|
|
/* 0239E008 */ cpu->r[0] = 0x00000001u;
|
|
L_0239E00C: ; // 0x239e00c
|
|
/* 0239E00C */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 0239E010 */ return;
|
|
}
|
|
|
|
// fn_0239E014 @ 0x239e014
|
|
void Gambit_fn_0239E014(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0239E014: ; // 0x239e014
|
|
/* 0239E014 */ cpu->r[0] = cpu->lr;
|
|
/* 0239E018 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0239E018 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239E018 */ cpu->r[1] = _t0;
|
|
/* 0239E01C */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0239E01C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0239E020 */ cpu->r[31] = 0x00000001u;
|
|
/* 0239E024 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0239E028 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239E028 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0239E02C */ Gambit_fn_02019890(cpu);
|
|
/* 0239E030 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 0239E030 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0239E034 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000001u);
|
|
/* 0239E038 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239E038 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0239E038 */ if (_t5) goto L_0239E054; else goto L_0239E03C;
|
|
L_0239E03C: ; // 0x239e03c
|
|
/* 0239E03C */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239E040 */ Gambit_fn_02019890(cpu);
|
|
/* 0239E044 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239E044 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0239E048 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000003u);
|
|
/* 0239E04C */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239E04C */ _t8 = _t7 & 0x00000001u;
|
|
/* 0239E04C */ if (_t8) goto L_0239E054; else goto L_0239E050;
|
|
L_0239E050: ; // 0x239e050
|
|
/* 0239E050 */ cpu->r[31] = 0x00000000u;
|
|
L_0239E054: ; // 0x239e054
|
|
/* 0239E054 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239E054 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0239E058 */ cpu->r[3] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 0239E05C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0239E05C */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0239E060 */ cpu->lr = cpu->r[0];
|
|
/* 0239E064 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0239E068 */ return;
|
|
}
|
|
|
|
// fn_0239E018 @ 0x239e018
|
|
void Gambit_fn_0239E018(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0239E018: ; // 0x239e018
|
|
/* 0239E018 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0239E018 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239E018 */ cpu->r[1] = _t0;
|
|
/* 0239E01C */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0239E01C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0239E020 */ cpu->r[31] = 0x00000001u;
|
|
/* 0239E024 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0239E028 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239E028 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0239E02C */ Gambit_fn_02019890(cpu);
|
|
/* 0239E030 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 0239E030 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0239E034 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000001u);
|
|
/* 0239E038 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239E038 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0239E038 */ if (_t5) goto L_0239E054; else goto L_0239E03C;
|
|
L_0239E03C: ; // 0x239e03c
|
|
/* 0239E03C */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239E040 */ Gambit_fn_02019890(cpu);
|
|
/* 0239E044 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239E044 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0239E048 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000003u);
|
|
/* 0239E04C */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239E04C */ _t8 = _t7 & 0x00000001u;
|
|
/* 0239E04C */ if (_t8) goto L_0239E054; else goto L_0239E050;
|
|
L_0239E050: ; // 0x239e050
|
|
/* 0239E050 */ cpu->r[31] = 0x00000000u;
|
|
L_0239E054: ; // 0x239e054
|
|
/* 0239E054 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239E054 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0239E058 */ cpu->r[3] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 0239E05C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0239E05C */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0239E060 */ cpu->lr = cpu->r[0];
|
|
/* 0239E064 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0239E068 */ return;
|
|
}
|
|
|
|
// fn_0239E06C @ 0x239e06c
|
|
void Gambit_fn_0239E06C(CPUState* cpu) {
|
|
uint32_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_0239E06C: ; // 0x239e06c
|
|
/* 0239E06C */ cpu->r[0] = cpu->lr;
|
|
/* 0239E070 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 0239E070 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239E070 */ cpu->r[1] = _t0;
|
|
/* 0239E074 */ _t1 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0239E074 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0239E078 */ _t2 = cpu->r[1] + 0x00000044u;
|
|
/* 0239E078 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0239E07C */ _t3 = cpu->r[3] + 0x00000008u;
|
|
/* 0239E07C */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0239E080 */ _t4 = cpu->r[3] + 0x00000000u;
|
|
/* 0239E080 */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0239E084 */ _t5 = cpu->r[3] + 0x00000004u;
|
|
/* 0239E084 */ cpu->r[10] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0239E088 */ _t6 = cpu->r[1] + 0x00000010u;
|
|
/* 0239E088 */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 0239E08C */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 0239E08C */ rbrew_write32(cpu->mem, _t7, cpu->r[10]);
|
|
/* 0239E090 */ _t8 = cpu->r[1] + 0x00000018u;
|
|
/* 0239E090 */ rbrew_write32(cpu->mem, _t8, cpu->r[12]);
|
|
/* 0239E094 */ Gambit_fn_0239E014(cpu);
|
|
/* 0239E098 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239E09C */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239E09C */ _t10 = _t9 & 0x00000001u;
|
|
/* 0239E09C */ if (_t10) goto L_0239E0AC; else goto L_0239E0A0;
|
|
L_0239E0A0: ; // 0x239e0a0
|
|
/* 0239E0A0 */ cpu->r[10] = 0x10080000u;
|
|
/* 0239E0A4 */ _t11 = cpu->r[10] + 0x0000704Cu;
|
|
/* 0239E0A4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 0239E0A8 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0239E0A8 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[0]);
|
|
L_0239E0AC: ; // 0x239e0ac
|
|
/* 0239E0AC */ cpu->r[3] = 0x00000007u;
|
|
/* 0239E0B0 */ Gambit_fn_027E6EEC(cpu);
|
|
/* 0239E0B4 */ cpu->r[31] = cpu->r[3];
|
|
/* 0239E0B8 */ cpu->r[4] = cpu->r[1] + 0x00000024u;
|
|
/* 0239E0BC */ _t13 = cpu->r[31] + 0x00000048u;
|
|
/* 0239E0BC */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0239E0C0 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 0239E0C4 */ Gambit_fn_0281A9D0(cpu);
|
|
/* 0239E0C8 */ _t14 = cpu->r[31] + 0x0000004Cu;
|
|
/* 0239E0C8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0239E0CC */ cpu->r[4] = cpu->r[1] + 0x00000030u;
|
|
/* 0239E0D0 */ cpu->r[5] = cpu->r[1] + 0x00000024u;
|
|
/* 0239E0D4 */ Gambit_fn_0281BCA8(cpu);
|
|
/* 0239E0D8 */ cpu->r[3] = cpu->r[31] + 0x00000018u;
|
|
/* 0239E0DC */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239E0E0 */ cpu->r[5] = cpu->r[1] + 0x00000030u;
|
|
/* 0239E0E4 */ Gambit_fn_0281DE48(cpu);
|
|
/* 0239E0E8 */ _t15 = cpu->r[1] + 0x00000020u;
|
|
/* 0239E0E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0239E0EC */ _t16 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0239E0EC */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0239E0F0 */ _t17 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239E0F0 */ rbrew_write32(cpu->mem, _t17, cpu->r[0]);
|
|
/* 0239E0F4 */ _t18 = cpu->r[1] + 0x00000044u;
|
|
/* 0239E0F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0239E0F8 */ _t19 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239E0F8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0239E0FC */ cpu->lr = cpu->r[0];
|
|
/* 0239E100 */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239E100 */ cpu->r[4] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0239E104 */ _t21 = cpu->r[1] + 0x00000008u;
|
|
/* 0239E104 */ rbrew_write32(cpu->mem, _t21, cpu->r[11]);
|
|
/* 0239E108 */ _t22 = cpu->r[1] + 0x00000008u;
|
|
/* 0239E108 */ cpu->r[3] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0239E10C */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 0239E110 */ return;
|
|
}
|
|
|
|
// fn_0239E070 @ 0x239e070
|
|
void Gambit_fn_0239E070(CPUState* cpu) {
|
|
uint32_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_0239E070: ; // 0x239e070
|
|
/* 0239E070 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 0239E070 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239E070 */ cpu->r[1] = _t0;
|
|
/* 0239E074 */ _t1 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0239E074 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0239E078 */ _t2 = cpu->r[1] + 0x00000044u;
|
|
/* 0239E078 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0239E07C */ _t3 = cpu->r[3] + 0x00000008u;
|
|
/* 0239E07C */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0239E080 */ _t4 = cpu->r[3] + 0x00000000u;
|
|
/* 0239E080 */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0239E084 */ _t5 = cpu->r[3] + 0x00000004u;
|
|
/* 0239E084 */ cpu->r[10] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0239E088 */ _t6 = cpu->r[1] + 0x00000010u;
|
|
/* 0239E088 */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 0239E08C */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 0239E08C */ rbrew_write32(cpu->mem, _t7, cpu->r[10]);
|
|
/* 0239E090 */ _t8 = cpu->r[1] + 0x00000018u;
|
|
/* 0239E090 */ rbrew_write32(cpu->mem, _t8, cpu->r[12]);
|
|
/* 0239E094 */ Gambit_fn_0239E014(cpu);
|
|
/* 0239E098 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239E09C */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239E09C */ _t10 = _t9 & 0x00000001u;
|
|
/* 0239E09C */ if (_t10) goto L_0239E0AC; else goto L_0239E0A0;
|
|
L_0239E0A0: ; // 0x239e0a0
|
|
/* 0239E0A0 */ cpu->r[10] = 0x10080000u;
|
|
/* 0239E0A4 */ _t11 = cpu->r[10] + 0x0000704Cu;
|
|
/* 0239E0A4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 0239E0A8 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0239E0A8 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[0]);
|
|
L_0239E0AC: ; // 0x239e0ac
|
|
/* 0239E0AC */ cpu->r[3] = 0x00000007u;
|
|
/* 0239E0B0 */ Gambit_fn_027E6EEC(cpu);
|
|
/* 0239E0B4 */ cpu->r[31] = cpu->r[3];
|
|
/* 0239E0B8 */ cpu->r[4] = cpu->r[1] + 0x00000024u;
|
|
/* 0239E0BC */ _t13 = cpu->r[31] + 0x00000048u;
|
|
/* 0239E0BC */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0239E0C0 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 0239E0C4 */ Gambit_fn_0281A9D0(cpu);
|
|
/* 0239E0C8 */ _t14 = cpu->r[31] + 0x0000004Cu;
|
|
/* 0239E0C8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0239E0CC */ cpu->r[4] = cpu->r[1] + 0x00000030u;
|
|
/* 0239E0D0 */ cpu->r[5] = cpu->r[1] + 0x00000024u;
|
|
/* 0239E0D4 */ Gambit_fn_0281BCA8(cpu);
|
|
/* 0239E0D8 */ cpu->r[3] = cpu->r[31] + 0x00000018u;
|
|
/* 0239E0DC */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239E0E0 */ cpu->r[5] = cpu->r[1] + 0x00000030u;
|
|
/* 0239E0E4 */ Gambit_fn_0281DE48(cpu);
|
|
/* 0239E0E8 */ _t15 = cpu->r[1] + 0x00000020u;
|
|
/* 0239E0E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0239E0EC */ _t16 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0239E0EC */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0239E0F0 */ _t17 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239E0F0 */ rbrew_write32(cpu->mem, _t17, cpu->r[0]);
|
|
/* 0239E0F4 */ _t18 = cpu->r[1] + 0x00000044u;
|
|
/* 0239E0F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0239E0F8 */ _t19 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239E0F8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0239E0FC */ cpu->lr = cpu->r[0];
|
|
/* 0239E100 */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239E100 */ cpu->r[4] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0239E104 */ _t21 = cpu->r[1] + 0x00000008u;
|
|
/* 0239E104 */ rbrew_write32(cpu->mem, _t21, cpu->r[11]);
|
|
/* 0239E108 */ _t22 = cpu->r[1] + 0x00000008u;
|
|
/* 0239E108 */ cpu->r[3] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0239E10C */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 0239E110 */ return;
|
|
}
|
|
|
|
// fn_0239E114 @ 0x239e114
|
|
void Gambit_fn_0239E114(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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, _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, _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, _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, _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, _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, _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, _t647, _t648, _t649, _t650, _t651, _t652, _t653, _t654, _t655, _t656, _t657, _t658, _t659, _t660, _t661, _t662, _t663, _t664, _t665, _t666, _t667, _t668, _t669, _t670, _t671, _t672, _t673, _t674, _t675, _t676, _t677, _t678, _t679, _t680, _t681, _t682, _t683, _t684, _t685, _t686, _t687, _t688, _t689, _t690, _t691, _t692, _t693, _t694, _t695, _t696, _t697, _t698, _t699, _t700, _t701, _t702, _t703, _t704, _t705, _t706, _t707, _t708, _t709, _t710, _t711, _t712, _t713, _t714, _t715, _t716, _t717, _t718, _t719, _t720, _t721, _t722, _t723, _t724, _t725, _t726, _t727, _t728, _t731, _t732, _t733, _t734, _t735, _t736, _t737, _t738, _t739, _t740, _t741, _t742, _t743, _t744, _t745, _t746, _t747, _t748, _t749, _t750, _t751, _t752, _t753, _t754, _t755, _t756, _t757, _t758, _t759, _t760, _t761, _t762, _t763, _t764, _t765, _t766, _t767, _t768, _t769, _t770, _t771, _t772, _t773, _t774, _t775, _t776, _t777, _t778, _t779, _t780, _t781, _t782, _t783, _t784, _t785, _t786, _t787, _t788, _t789, _t790, _t791;
|
|
double _ft75, _ft76, _ft218, _ft219, _ft306, _ft307, _ft393, _ft394, _ft477, _ft478, _ft561, _ft562, _ft645, _ft646, _ft729, _ft730;
|
|
|
|
L_0239E114: ; // 0x239e114
|
|
/* 0239E114 */ _t0 = cpu->r[1] + 0xFFFFFDB0u;
|
|
/* 0239E114 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239E114 */ cpu->r[1] = _t0;
|
|
/* 0239E118 */ _t1 = cpu->r[1] + 0x00000210u;
|
|
/* 0239E118 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[28]);
|
|
/* 0239E11C */ /* nop */
|
|
/* 0239E120 */ _t2 = cpu->r[1] + 0x000001C0u;
|
|
/* 0239E120 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[23]);
|
|
/* 0239E124 */ _t3 = cpu->r[1] + 0x00000240u;
|
|
/* 0239E124 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[31]);
|
|
/* 0239E128 */ /* nop */
|
|
/* 0239E12C */ _t4 = cpu->r[1] + 0x00000230u;
|
|
/* 0239E12C */ rbrew_write_f64(cpu->mem, _t4, cpu->f[30]);
|
|
/* 0239E130 */ /* nop */
|
|
/* 0239E134 */ _t5 = cpu->r[1] + 0x000001C8u;
|
|
/* 0239E134 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[23]);
|
|
/* 0239E138 */ /* nop */
|
|
/* 0239E13C */ _t6 = cpu->r[1] + 0x000001D0u;
|
|
/* 0239E13C */ rbrew_write_f64(cpu->mem, _t6, cpu->f[24]);
|
|
/* 0239E140 */ _t7 = cpu->r[1] + 0x00000220u;
|
|
/* 0239E140 */ rbrew_write_f64(cpu->mem, _t7, cpu->f[29]);
|
|
/* 0239E144 */ /* nop */
|
|
/* 0239E148 */ _t8 = cpu->r[1] + 0x00000218u;
|
|
/* 0239E148 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[28]);
|
|
/* 0239E14C */ /* nop */
|
|
/* 0239E150 */ _t9 = cpu->r[1] + 0x00000248u;
|
|
/* 0239E150 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[31]);
|
|
/* 0239E154 */ _t10 = cpu->r[1] + 0x000001D8u;
|
|
/* 0239E154 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[24]);
|
|
/* 0239E158 */ _t11 = cpu->r[1] + 0x000001E0u;
|
|
/* 0239E158 */ rbrew_write_f64(cpu->mem, _t11, cpu->f[25]);
|
|
/* 0239E15C */ _t12 = cpu->r[1] + 0x00000200u;
|
|
/* 0239E15C */ rbrew_write_f64(cpu->mem, _t12, cpu->f[27]);
|
|
/* 0239E160 */ /* nop */
|
|
/* 0239E164 */ _t13 = cpu->r[1] + 0x00000228u;
|
|
/* 0239E164 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[29]);
|
|
/* 0239E168 */ /* nop */
|
|
/* 0239E16C */ _t14 = cpu->r[1] + 0x000001E8u;
|
|
/* 0239E16C */ rbrew_write_f32(cpu->mem, _t14, cpu->f[25]);
|
|
/* 0239E170 */ _t15 = cpu->r[1] + 0x00000208u;
|
|
/* 0239E170 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[27]);
|
|
/* 0239E174 */ _t16 = cpu->r[1] + 0x000001F0u;
|
|
/* 0239E174 */ rbrew_write_f64(cpu->mem, _t16, cpu->f[26]);
|
|
/* 0239E178 */ _t17 = cpu->r[1] + 0x000001B0u;
|
|
/* 0239E178 */ rbrew_write_f64(cpu->mem, _t17, cpu->f[22]);
|
|
/* 0239E17C */ /* nop */
|
|
/* 0239E180 */ _t18 = cpu->r[1] + 0x00000238u;
|
|
/* 0239E180 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[30]);
|
|
/* 0239E184 */ /* nop */
|
|
/* 0239E188 */ _t19 = cpu->r[1] + 0x000001F8u;
|
|
/* 0239E188 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[26]);
|
|
/* 0239E18C */ cpu->r[0] = cpu->lr;
|
|
/* 0239E190 */ _t20 = cpu->r[1] + 0x000001B8u;
|
|
/* 0239E190 */ rbrew_write_f32(cpu->mem, _t20, cpu->f[22]);
|
|
/* 0239E194 */ _t21 = cpu->r[1] + 0x00000254u;
|
|
/* 0239E194 */ rbrew_write32(cpu->mem, _t21, cpu->r[0]);
|
|
/* 0239E198 */ /* nop */
|
|
/* 0239E19C */ cpu->r[29] = cpu->r[3];
|
|
/* 0239E1A0 */ _t22 = cpu->r[29] + 0x00000158u;
|
|
/* 0239E1A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0239E1A4 */ cpu->r[28] = 0x101C0000u;
|
|
/* 0239E1A8 */ _t23 = cpu->r[29] + 0x0000015Cu;
|
|
/* 0239E1A8 */ rbrew_write32(cpu->mem, _t23, cpu->r[0]);
|
|
/* 0239E1AC */ cpu->r[10] = 0x10080000u;
|
|
/* 0239E1B0 */ _t24 = cpu->r[10] + 0x0000712Cu;
|
|
/* 0239E1B0 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 0239E1B4 */ _t25 = cpu->r[28] + 0x00006000u;
|
|
/* 0239E1B4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0239E1B8 */ _t26 = cpu->r[5] + 0x00000268u;
|
|
/* 0239E1B8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0239E1BC */ cpu->r[3] = cpu->r[31];
|
|
/* 0239E1C0 */ Gambit_fn_0261F774(cpu);
|
|
/* 0239E1C4 */ cpu->r[4] = cpu->r[3];
|
|
/* 0239E1C8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0239E1CC */ Gambit_fn_0261F55C(cpu);
|
|
/* 0239E1D0 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0239E1D4 */ _t27 = cpu->r[28] + 0x00006000u;
|
|
/* 0239E1D4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0239E1D4 */ cpu->r[28] = _t27;
|
|
/* 0239E1D8 */ _t28 = cpu->r[12] + 0x00007228u;
|
|
/* 0239E1D8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0239E1DC */ _t29 = cpu->r[10] + 0x00000268u;
|
|
/* 0239E1DC */ cpu->r[7] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0239E1E0 */ cpu->r[11] = cpu->r[7] + cpu->r[12];
|
|
/* 0239E1E4 */ _t30 = cpu->r[11] + 0x00000104u;
|
|
/* 0239E1E4 */ cpu->r[5] = rbrew_read8(cpu->mem, _t30);
|
|
/* 0239E1E8 */ _t31 = cpu->r[7] + 0x00000030u;
|
|
/* 0239E1E8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0239E1EC */ cpu->r[4] = rbrew_rlwinm(cpu->r[5], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239E1F0 */ _t32 = cpu->r[4] + cpu->r[6];
|
|
/* 0239E1F0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0239E1F4 */ _t33 = cpu->r[7] + 0x00000008u;
|
|
/* 0239E1F4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t33);
|
|
/* 0239E1F8 */ _t34 = cpu->r[9] + 0x00000004u;
|
|
/* 0239E1F8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t34);
|
|
/* 0239E1FC */ _t35 = cpu->r[9] + 0x0000000Cu;
|
|
/* 0239E1FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t35);
|
|
/* 0239E200 */ cpu->r[26] = cpu->r[8] - cpu->r[0];
|
|
/* 0239E204 */ _t36 = cpu->r[1] + 0x0000010Cu;
|
|
/* 0239E204 */ rbrew_write32(cpu->mem, _t36, cpu->r[26]);
|
|
/* 0239E208 */ _t37 = cpu->r[9] + 0x0000000Cu;
|
|
/* 0239E208 */ cpu->r[30] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0239E20C */ _t38 = cpu->r[1] + 0x0000010Cu;
|
|
/* 0239E20C */ cpu->r[6] = rbrew_read32(cpu->mem, _t38);
|
|
/* 0239E210 */ _t39 = cpu->r[1] + 0x00000110u;
|
|
/* 0239E210 */ rbrew_write32(cpu->mem, _t39, cpu->r[30]);
|
|
/* 0239E214 */ _t40 = cpu->r[1] + 0x00000110u;
|
|
/* 0239E214 */ cpu->r[7] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0239E218 */ _t41 = cpu->r[1] + 0x00000048u;
|
|
/* 0239E218 */ rbrew_write32(cpu->mem, _t41, cpu->r[6]);
|
|
/* 0239E21C */ _t42 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0239E21C */ rbrew_write32(cpu->mem, _t42, cpu->r[7]);
|
|
/* 0239E220 */ _t43 = cpu->r[9] + 0x0000000Cu;
|
|
/* 0239E220 */ cpu->r[8] = rbrew_read32(cpu->mem, _t43);
|
|
/* 0239E224 */ cpu->r[31] = cpu->r[9] - cpu->r[8];
|
|
/* 0239E228 */ _t44 = cpu->r[1] + 0x0000014Cu;
|
|
/* 0239E228 */ rbrew_write32(cpu->mem, _t44, cpu->r[31]);
|
|
/* 0239E22C */ _t45 = cpu->r[9] + 0x0000000Cu;
|
|
/* 0239E22C */ cpu->r[0] = rbrew_read32(cpu->mem, _t45);
|
|
/* 0239E230 */ _t46 = cpu->r[1] + 0x00000058u;
|
|
/* 0239E230 */ rbrew_write32(cpu->mem, _t46, cpu->r[26]);
|
|
/* 0239E234 */ _t47 = cpu->r[1] + 0x00000054u;
|
|
/* 0239E234 */ rbrew_write32(cpu->mem, _t47, cpu->r[0]);
|
|
/* 0239E238 */ _t48 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0239E238 */ rbrew_write32(cpu->mem, _t48, cpu->r[30]);
|
|
/* 0239E23C */ _t49 = cpu->r[1] + 0x00000150u;
|
|
/* 0239E23C */ rbrew_write32(cpu->mem, _t49, cpu->r[0]);
|
|
/* 0239E240 */ cpu->r[27] = cpu->r[3];
|
|
/* 0239E244 */ _t50 = cpu->r[1] + 0x00000050u;
|
|
/* 0239E244 */ rbrew_write32(cpu->mem, _t50, cpu->r[31]);
|
|
/* 0239E248 */ goto L_0239E25C;
|
|
L_0239E24C: ; // 0x239e24c
|
|
/* 0239E24C */ cpu->r[8] = cpu->r[26] + cpu->r[30];
|
|
/* 0239E250 */ _t51 = cpu->r[8] + 0x00000004u;
|
|
/* 0239E250 */ cpu->r[7] = rbrew_read32(cpu->mem, _t51);
|
|
/* 0239E254 */ cpu->r[26] = cpu->r[7] - cpu->r[30];
|
|
/* 0239E258 */ _t52 = cpu->r[1] + 0x00000058u;
|
|
/* 0239E258 */ rbrew_write32(cpu->mem, _t52, cpu->r[26]);
|
|
L_0239E25C: ; // 0x239e25c
|
|
/* 0239E25C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], cpu->r[31]);
|
|
/* 0239E260 */ _t53 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239E260 */ _t54 = _t53 & 0x00000001u;
|
|
/* 0239E260 */ if (_t54) goto L_0239E278; else goto L_0239E264;
|
|
L_0239E264: ; // 0x239e264
|
|
/* 0239E264 */ _t55 = cpu->r[26] + 0x0000001Cu;
|
|
/* 0239E264 */ cpu->r[7] = rbrew_read32(cpu->mem, _t55);
|
|
/* 0239E268 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000002u);
|
|
/* 0239E26C */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239E26C */ _t57 = _t56 & 0x00000001u;
|
|
/* 0239E26C */ if (_t57) goto L_0239E278; else goto L_0239E270;
|
|
L_0239E270: ; // 0x239e270
|
|
/* 0239E270 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000003u);
|
|
/* 0239E274 */ _t58 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239E274 */ _t59 = _t58 & 0x00000001u;
|
|
/* 0239E274 */ if (_t59) goto L_0239E278; else goto L_0239E24C;
|
|
L_0239E278: ; // 0x239e278
|
|
/* 0239E278 */ cpu->r[7] = 0x10080000u;
|
|
/* 0239E27C */ cpu->r[5] = 0x10080000u;
|
|
/* 0239E280 */ _t60 = cpu->r[7] + 0x0000704Cu;
|
|
/* 0239E280 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t60);
|
|
/* 0239E284 */ cpu->r[11] = 0x10080000u;
|
|
/* 0239E288 */ _t61 = cpu->r[5] + 0x00007130u;
|
|
/* 0239E288 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t61);
|
|
/* 0239E28C */ cpu->f[27] = cpu->f[29];
|
|
/* 0239E290 */ _t62 = cpu->r[11] + 0x00007134u;
|
|
/* 0239E290 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t62);
|
|
L_0239E294: ; // 0x239e294
|
|
/* 0239E294 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], cpu->r[31]);
|
|
/* 0239E298 */ _t63 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239E298 */ _t64 = _t63 & 0x00000001u;
|
|
/* 0239E298 */ if (_t64) goto L_0239E4A0; else goto L_0239E29C;
|
|
L_0239E29C: ; // 0x239e29c
|
|
/* 0239E29C */ cpu->f[26] = cpu->f[27];
|
|
/* 0239E2A0 */ cpu->r[25] = 0x00000001u;
|
|
L_0239E2A4: ; // 0x239e2a4
|
|
/* 0239E2A4 */ cpu->r[3] = cpu->r[26] + 0x00000244u;
|
|
/* 0239E2A8 */ Gambit_fn_0239E06C(cpu);
|
|
/* 0239E2AC */ _t65 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239E2AC */ rbrew_write32(cpu->mem, _t65, cpu->r[4]);
|
|
/* 0239E2B0 */ _t66 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239E2B0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t66);
|
|
/* 0239E2B4 */ _t67 = cpu->r[1] + 0x00000008u;
|
|
/* 0239E2B4 */ rbrew_write32(cpu->mem, _t67, cpu->r[3]);
|
|
/* 0239E2B8 */ _t68 = cpu->r[29] + 0x00000118u;
|
|
/* 0239E2B8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t68);
|
|
/* 0239E2BC */ _t69 = cpu->r[29] + 0x00000114u;
|
|
/* 0239E2BC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t69);
|
|
/* 0239E2C0 */ cpu->f[12] = cpu->f[12] - cpu->f[13];
|
|
/* 0239E2C4 */ _t70 = cpu->r[1] + 0x00000008u;
|
|
/* 0239E2C4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t70);
|
|
/* 0239E2C8 */ cpu->f[9] = cpu->f[10] - cpu->f[11];
|
|
/* 0239E2CC */ cpu->f[0] = cpu->f[12] * cpu->f[12];
|
|
/* 0239E2D0 */ cpu->f[6] = fma(cpu->f[9], cpu->f[9], cpu->f[0]);
|
|
/* 0239E2D4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[6], cpu->f[26]);
|
|
/* 0239E2D8 */ _t71 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0239E2D8 */ _t72 = _t71 & 0x00000001u;
|
|
/* 0239E2D8 */ if (_t72) goto L_0239E2EC; else goto L_0239E2DC;
|
|
L_0239E2DC: ; // 0x239e2dc
|
|
/* 0239E2DC */ cpu->f[22] = cpu->f[26] * cpu->f[6];
|
|
/* 0239E2E0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[22], cpu->f[28]);
|
|
/* 0239E2E4 */ _t73 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0239E2E4 */ _t74 = _t73 & 0x00000001u;
|
|
/* 0239E2E4 */ if (_t74) goto L_0239E444; else goto L_0239E2E8;
|
|
L_0239E2E8: ; // 0x239e2e8
|
|
/* 0239E2E8 */ goto L_0239E318;
|
|
L_0239E2EC: ; // 0x239e2ec
|
|
/* 0239E2EC */ _ft75 = sqrt(cpu->f[6]);
|
|
/* 0239E2EC */ _ft76 = (double)(int32_t)0x00000001u;
|
|
/* 0239E2EC */ cpu->f[23] = _ft76 / _ft75;
|
|
/* 0239E2F0 */ cpu->f[24] = cpu->f[23] * cpu->f[23];
|
|
/* 0239E2F4 */ cpu->f[25] = cpu->f[23] * cpu->f[30];
|
|
/* 0239E2F8 */ cpu->f[24] = -fma(cpu->f[24], cpu->f[6], -(cpu->f[31]));
|
|
/* 0239E2FC */ cpu->f[23] = cpu->f[24] * cpu->f[25];
|
|
/* 0239E300 */ cpu->f[22] = cpu->f[23] * cpu->f[6];
|
|
/* 0239E304 */ _t77 = cpu->r[1] + 0x00000058u;
|
|
/* 0239E304 */ cpu->r[26] = rbrew_read32(cpu->mem, _t77);
|
|
/* 0239E308 */ _t78 = cpu->r[1] + 0x00000050u;
|
|
/* 0239E308 */ cpu->r[31] = rbrew_read32(cpu->mem, _t78);
|
|
/* 0239E30C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[22], cpu->f[28]);
|
|
/* 0239E310 */ _t79 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0239E310 */ cpu->r[30] = rbrew_read32(cpu->mem, _t79);
|
|
/* 0239E314 */ _t80 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0239E314 */ _t81 = _t80 & 0x00000001u;
|
|
/* 0239E314 */ if (_t81) goto L_0239E444; else goto L_0239E318;
|
|
L_0239E318: ; // 0x239e318
|
|
/* 0239E318 */ _t82 = cpu->r[26] + 0x00000058u;
|
|
/* 0239E318 */ cpu->r[8] = rbrew_read32(cpu->mem, _t82);
|
|
/* 0239E31C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0239E320 */ _t83 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239E320 */ _t84 = _t83 & 0x00000001u;
|
|
/* 0239E320 */ if (_t84) goto L_0239E324; else goto L_0239E36C;
|
|
L_0239E324: ; // 0x239e324
|
|
/* 0239E324 */ _t85 = cpu->r[29] + 0x00000160u;
|
|
/* 0239E324 */ rbrew_write8(cpu->mem, _t85, (uint8_t)cpu->r[25]);
|
|
/* 0239E328 */ cpu->r[10] = 0x00000001u;
|
|
/* 0239E32C */ _t86 = cpu->r[29] + 0x00000158u;
|
|
/* 0239E32C */ rbrew_write32(cpu->mem, _t86, cpu->r[26]);
|
|
/* 0239E330 */ _t87 = cpu->r[29] + 0x00000164u;
|
|
/* 0239E330 */ rbrew_write32(cpu->mem, _t87, cpu->r[10]);
|
|
/* 0239E334 */ _t88 = cpu->r[26] + 0x00000098u;
|
|
/* 0239E334 */ cpu->r[0] = rbrew_read32(cpu->mem, _t88);
|
|
/* 0239E338 */ _t89 = cpu->r[1] + 0x00000008u;
|
|
/* 0239E338 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t89);
|
|
/* 0239E33C */ _t90 = cpu->r[29] + 0x00000168u;
|
|
/* 0239E33C */ rbrew_write32(cpu->mem, _t90, cpu->r[0]);
|
|
/* 0239E340 */ _t91 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239E340 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t91);
|
|
/* 0239E344 */ _t92 = cpu->r[29] + 0x0000016Cu;
|
|
/* 0239E344 */ rbrew_write_f32(cpu->mem, _t92, cpu->f[13]);
|
|
/* 0239E348 */ _t93 = cpu->r[29] + 0x00000170u;
|
|
/* 0239E348 */ rbrew_write_f32(cpu->mem, _t93, cpu->f[8]);
|
|
/* 0239E34C */ _t94 = cpu->r[26] + 0x00000244u;
|
|
/* 0239E34C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t94);
|
|
/* 0239E350 */ _t95 = cpu->r[29] + 0x00000174u;
|
|
/* 0239E350 */ rbrew_write_f32(cpu->mem, _t95, cpu->f[11]);
|
|
/* 0239E354 */ _t96 = cpu->r[26] + 0x00000248u;
|
|
/* 0239E354 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t96);
|
|
/* 0239E358 */ _t97 = cpu->r[29] + 0x00000178u;
|
|
/* 0239E358 */ rbrew_write_f32(cpu->mem, _t97, cpu->f[13]);
|
|
/* 0239E35C */ _t98 = cpu->r[26] + 0x0000024Cu;
|
|
/* 0239E35C */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t98);
|
|
/* 0239E360 */ cpu->f[28] = cpu->f[22];
|
|
/* 0239E364 */ _t99 = cpu->r[29] + 0x0000017Cu;
|
|
/* 0239E364 */ rbrew_write_f32(cpu->mem, _t99, cpu->f[6]);
|
|
/* 0239E368 */ goto L_0239E444;
|
|
L_0239E36C: ; // 0x239e36c
|
|
/* 0239E36C */ _t100 = cpu->r[26] + 0x0000002Cu;
|
|
/* 0239E36C */ cpu->r[10] = rbrew_read32(cpu->mem, _t100);
|
|
/* 0239E370 */ _t101 = cpu->r[27] + 0x0000002Cu;
|
|
/* 0239E370 */ cpu->r[9] = rbrew_read32(cpu->mem, _t101);
|
|
/* 0239E374 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[9]);
|
|
/* 0239E378 */ _t102 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239E378 */ _t103 = _t102 & 0x00000001u;
|
|
/* 0239E378 */ if (_t103) goto L_0239E37C; else goto L_0239E3D4;
|
|
L_0239E37C: ; // 0x239e37c
|
|
/* 0239E37C */ cpu->r[3] = cpu->r[26];
|
|
/* 0239E380 */ Gambit_fn_025C7F78(cpu);
|
|
/* 0239E384 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239E388 */ _t104 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239E388 */ _t105 = _t104 & 0x00000001u;
|
|
/* 0239E388 */ if (_t105) goto L_0239E444; else goto L_0239E38C;
|
|
L_0239E38C: ; // 0x239e38c
|
|
/* 0239E38C */ _t106 = cpu->r[29] + 0x00000160u;
|
|
/* 0239E38C */ rbrew_write8(cpu->mem, _t106, (uint8_t)cpu->r[25]);
|
|
/* 0239E390 */ cpu->r[10] = 0x00000002u;
|
|
/* 0239E394 */ _t107 = cpu->r[29] + 0x00000158u;
|
|
/* 0239E394 */ rbrew_write32(cpu->mem, _t107, cpu->r[26]);
|
|
/* 0239E398 */ _t108 = cpu->r[29] + 0x00000164u;
|
|
/* 0239E398 */ rbrew_write32(cpu->mem, _t108, cpu->r[10]);
|
|
/* 0239E39C */ _t109 = cpu->r[26] + 0x00000098u;
|
|
/* 0239E39C */ cpu->r[0] = rbrew_read32(cpu->mem, _t109);
|
|
/* 0239E3A0 */ _t110 = cpu->r[1] + 0x00000008u;
|
|
/* 0239E3A0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t110);
|
|
/* 0239E3A4 */ _t111 = cpu->r[29] + 0x00000168u;
|
|
/* 0239E3A4 */ rbrew_write32(cpu->mem, _t111, cpu->r[0]);
|
|
/* 0239E3A8 */ _t112 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239E3A8 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t112);
|
|
/* 0239E3AC */ _t113 = cpu->r[29] + 0x0000016Cu;
|
|
/* 0239E3AC */ rbrew_write_f32(cpu->mem, _t113, cpu->f[13]);
|
|
/* 0239E3B0 */ _t114 = cpu->r[29] + 0x00000170u;
|
|
/* 0239E3B0 */ rbrew_write_f32(cpu->mem, _t114, cpu->f[8]);
|
|
/* 0239E3B4 */ _t115 = cpu->r[26] + 0x00000244u;
|
|
/* 0239E3B4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t115);
|
|
/* 0239E3B8 */ _t116 = cpu->r[29] + 0x00000174u;
|
|
/* 0239E3B8 */ rbrew_write_f32(cpu->mem, _t116, cpu->f[11]);
|
|
/* 0239E3BC */ _t117 = cpu->r[26] + 0x00000248u;
|
|
/* 0239E3BC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t117);
|
|
/* 0239E3C0 */ _t118 = cpu->r[29] + 0x00000178u;
|
|
/* 0239E3C0 */ rbrew_write_f32(cpu->mem, _t118, cpu->f[13]);
|
|
/* 0239E3C4 */ _t119 = cpu->r[26] + 0x0000024Cu;
|
|
/* 0239E3C4 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t119);
|
|
/* 0239E3C8 */ cpu->f[28] = cpu->f[22];
|
|
/* 0239E3CC */ _t120 = cpu->r[29] + 0x0000017Cu;
|
|
/* 0239E3CC */ rbrew_write_f32(cpu->mem, _t120, cpu->f[6]);
|
|
/* 0239E3D0 */ goto L_0239E444;
|
|
L_0239E3D4: ; // 0x239e3d4
|
|
/* 0239E3D4 */ cpu->r[3] = cpu->r[26];
|
|
/* 0239E3D8 */ _t121 = cpu->r[3] + 0x000007DCu;
|
|
/* 0239E3D8 */ cpu->r[10] = rbrew_read8(cpu->mem, _t121);
|
|
/* 0239E3DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0239E3E0 */ _t122 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239E3E0 */ _t123 = _t122 & 0x00000001u;
|
|
/* 0239E3E0 */ if (_t123) goto L_0239E3E4; else goto L_0239E3F0;
|
|
L_0239E3E4: ; // 0x239e3e4
|
|
/* 0239E3E4 */ Gambit_fn_025C8334(cpu);
|
|
/* 0239E3E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239E3EC */ _t124 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239E3EC */ _t125 = _t124 & 0x00000001u;
|
|
/* 0239E3EC */ if (_t125) goto L_0239E444; else goto L_0239E3F0;
|
|
L_0239E3F0: ; // 0x239e3f0
|
|
/* 0239E3F0 */ cpu->r[3] = cpu->r[26];
|
|
/* 0239E3F4 */ Gambit_fn_025C7F78(cpu);
|
|
/* 0239E3F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239E3FC */ _t126 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239E3FC */ _t127 = _t126 & 0x00000001u;
|
|
/* 0239E3FC */ if (_t127) goto L_0239E444; else goto L_0239E400;
|
|
L_0239E400: ; // 0x239e400
|
|
/* 0239E400 */ _t128 = cpu->r[29] + 0x00000160u;
|
|
/* 0239E400 */ rbrew_write8(cpu->mem, _t128, (uint8_t)cpu->r[25]);
|
|
/* 0239E404 */ cpu->r[10] = 0x00000003u;
|
|
/* 0239E408 */ _t129 = cpu->r[29] + 0x00000158u;
|
|
/* 0239E408 */ rbrew_write32(cpu->mem, _t129, cpu->r[26]);
|
|
/* 0239E40C */ _t130 = cpu->r[29] + 0x00000164u;
|
|
/* 0239E40C */ rbrew_write32(cpu->mem, _t130, cpu->r[10]);
|
|
/* 0239E410 */ _t131 = cpu->r[26] + 0x00000098u;
|
|
/* 0239E410 */ cpu->r[0] = rbrew_read32(cpu->mem, _t131);
|
|
/* 0239E414 */ _t132 = cpu->r[1] + 0x00000008u;
|
|
/* 0239E414 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t132);
|
|
/* 0239E418 */ _t133 = cpu->r[29] + 0x00000168u;
|
|
/* 0239E418 */ rbrew_write32(cpu->mem, _t133, cpu->r[0]);
|
|
/* 0239E41C */ _t134 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239E41C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t134);
|
|
/* 0239E420 */ _t135 = cpu->r[29] + 0x0000016Cu;
|
|
/* 0239E420 */ rbrew_write_f32(cpu->mem, _t135, cpu->f[13]);
|
|
/* 0239E424 */ _t136 = cpu->r[29] + 0x00000170u;
|
|
/* 0239E424 */ rbrew_write_f32(cpu->mem, _t136, cpu->f[8]);
|
|
/* 0239E428 */ _t137 = cpu->r[26] + 0x00000244u;
|
|
/* 0239E428 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t137);
|
|
/* 0239E42C */ _t138 = cpu->r[29] + 0x00000174u;
|
|
/* 0239E42C */ rbrew_write_f32(cpu->mem, _t138, cpu->f[11]);
|
|
/* 0239E430 */ _t139 = cpu->r[26] + 0x00000248u;
|
|
/* 0239E430 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t139);
|
|
/* 0239E434 */ _t140 = cpu->r[29] + 0x00000178u;
|
|
/* 0239E434 */ rbrew_write_f32(cpu->mem, _t140, cpu->f[13]);
|
|
/* 0239E438 */ _t141 = cpu->r[26] + 0x0000024Cu;
|
|
/* 0239E438 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t141);
|
|
/* 0239E43C */ cpu->f[28] = cpu->f[22];
|
|
/* 0239E440 */ _t142 = cpu->r[29] + 0x0000017Cu;
|
|
/* 0239E440 */ rbrew_write_f32(cpu->mem, _t142, cpu->f[6]);
|
|
L_0239E444: ; // 0x239e444
|
|
/* 0239E444 */ cpu->r[6] = cpu->r[26] + cpu->r[30];
|
|
/* 0239E448 */ _t143 = cpu->r[6] + 0x00000004u;
|
|
/* 0239E448 */ cpu->r[5] = rbrew_read32(cpu->mem, _t143);
|
|
/* 0239E44C */ cpu->r[26] = cpu->r[5] - cpu->r[30];
|
|
/* 0239E450 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], cpu->r[31]);
|
|
/* 0239E454 */ _t144 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239E454 */ _t145 = _t144 & 0x00000001u;
|
|
/* 0239E454 */ if (_t145) goto L_0239E458; else goto L_0239E478;
|
|
L_0239E458: ; // 0x239e458
|
|
/* 0239E458 */ _t146 = cpu->r[28] + 0x00000000u;
|
|
/* 0239E458 */ cpu->r[8] = rbrew_read32(cpu->mem, _t146);
|
|
/* 0239E45C */ _t147 = cpu->r[1] + 0x00000058u;
|
|
/* 0239E45C */ rbrew_write32(cpu->mem, _t147, cpu->r[26]);
|
|
/* 0239E460 */ _t148 = cpu->r[8] + 0x00000264u;
|
|
/* 0239E460 */ cpu->r[7] = rbrew_read32(cpu->mem, _t148);
|
|
/* 0239E464 */ _t149 = cpu->r[7] + 0x00000030u;
|
|
/* 0239E464 */ cpu->r[6] = rbrew_read32(cpu->mem, _t149);
|
|
/* 0239E468 */ _t150 = cpu->r[6] + 0x00000018u;
|
|
/* 0239E468 */ cpu->r[8] = rbrew_read32(cpu->mem, _t150);
|
|
/* 0239E46C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0239E470 */ _t151 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239E470 */ _t152 = _t151 & 0x00000001u;
|
|
/* 0239E470 */ if (_t152) goto L_0239E698; else goto L_0239E474;
|
|
L_0239E474: ; // 0x239e474
|
|
/* 0239E474 */ goto L_0239E4B8;
|
|
L_0239E478: ; // 0x239e478
|
|
/* 0239E478 */ _t153 = cpu->r[26] + 0x0000001Cu;
|
|
/* 0239E478 */ cpu->r[8] = rbrew_read32(cpu->mem, _t153);
|
|
/* 0239E47C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000002u);
|
|
/* 0239E480 */ _t154 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239E480 */ _t155 = _t154 & 0x00000001u;
|
|
/* 0239E480 */ if (_t155) goto L_0239E494; else goto L_0239E484;
|
|
L_0239E484: ; // 0x239e484
|
|
/* 0239E484 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000003u);
|
|
/* 0239E488 */ _t156 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239E488 */ _t157 = _t156 & 0x00000001u;
|
|
/* 0239E488 */ if (_t157) goto L_0239E48C; else goto L_0239E444;
|
|
L_0239E48C: ; // 0x239e48c
|
|
/* 0239E48C */ _t158 = cpu->r[1] + 0x00000058u;
|
|
/* 0239E48C */ rbrew_write32(cpu->mem, _t158, cpu->r[26]);
|
|
/* 0239E490 */ goto L_0239E294;
|
|
L_0239E494: ; // 0x239e494
|
|
/* 0239E494 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], cpu->r[31]);
|
|
/* 0239E498 */ _t159 = cpu->r[1] + 0x00000058u;
|
|
/* 0239E498 */ rbrew_write32(cpu->mem, _t159, cpu->r[26]);
|
|
/* 0239E49C */ _t160 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239E49C */ _t161 = _t160 & 0x00000001u;
|
|
/* 0239E49C */ if (_t161) goto L_0239E4A0; else goto L_0239E2A4;
|
|
L_0239E4A0: ; // 0x239e4a0
|
|
/* 0239E4A0 */ _t162 = cpu->r[28] + 0x00000000u;
|
|
/* 0239E4A0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t162);
|
|
/* 0239E4A4 */ _t163 = cpu->r[8] + 0x00000264u;
|
|
/* 0239E4A4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t163);
|
|
/* 0239E4A8 */ _t164 = cpu->r[7] + 0x00000030u;
|
|
/* 0239E4A8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t164);
|
|
/* 0239E4AC */ _t165 = cpu->r[6] + 0x00000018u;
|
|
/* 0239E4AC */ cpu->r[8] = rbrew_read32(cpu->mem, _t165);
|
|
/* 0239E4B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0239E4B4 */ _t166 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239E4B4 */ _t167 = _t166 & 0x00000001u;
|
|
/* 0239E4B4 */ if (_t167) goto L_0239E698; else goto L_0239E4B8;
|
|
L_0239E4B8: ; // 0x239e4b8
|
|
/* 0239E4B8 */ cpu->r[3] = cpu->r[1] + 0x00000108u;
|
|
/* 0239E4BC */ Gambit_fn_02019890(cpu);
|
|
/* 0239E4C0 */ _t168 = cpu->r[1] + 0x00000108u;
|
|
/* 0239E4C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t168);
|
|
/* 0239E4C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000001u);
|
|
/* 0239E4C8 */ _t169 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239E4C8 */ _t170 = _t169 & 0x00000001u;
|
|
/* 0239E4C8 */ if (_t170) goto L_0239E690; else goto L_0239E4CC;
|
|
L_0239E4CC: ; // 0x239e4cc
|
|
/* 0239E4CC */ cpu->r[12] = 0x101C0000u;
|
|
/* 0239E4D0 */ _t171 = cpu->r[28] + 0x00000000u;
|
|
/* 0239E4D0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t171);
|
|
/* 0239E4D4 */ _t172 = cpu->r[12] + 0x000068D8u;
|
|
/* 0239E4D4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t172);
|
|
/* 0239E4D8 */ _t173 = cpu->r[10] + 0x00000264u;
|
|
/* 0239E4D8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t173);
|
|
/* 0239E4DC */ cpu->r[11] = cpu->r[7] + cpu->r[12];
|
|
/* 0239E4E0 */ _t174 = cpu->r[11] + 0x00000104u;
|
|
/* 0239E4E0 */ cpu->r[5] = rbrew_read8(cpu->mem, _t174);
|
|
/* 0239E4E4 */ _t175 = cpu->r[7] + 0x00000030u;
|
|
/* 0239E4E4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t175);
|
|
/* 0239E4E8 */ cpu->r[4] = rbrew_rlwinm(cpu->r[5], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239E4EC */ _t176 = cpu->r[4] + cpu->r[6];
|
|
/* 0239E4EC */ cpu->r[7] = rbrew_read32(cpu->mem, _t176);
|
|
/* 0239E4F0 */ _t177 = cpu->r[7] + 0x00000008u;
|
|
/* 0239E4F0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t177);
|
|
/* 0239E4F4 */ _t178 = cpu->r[10] + 0x00000004u;
|
|
/* 0239E4F4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t178);
|
|
/* 0239E4F8 */ _t179 = cpu->r[10] + 0x0000000Cu;
|
|
/* 0239E4F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t179);
|
|
/* 0239E4FC */ cpu->r[26] = cpu->r[8] - cpu->r[0];
|
|
/* 0239E500 */ _t180 = cpu->r[1] + 0x00000114u;
|
|
/* 0239E500 */ rbrew_write32(cpu->mem, _t180, cpu->r[26]);
|
|
/* 0239E504 */ _t181 = cpu->r[10] + 0x0000000Cu;
|
|
/* 0239E504 */ cpu->r[30] = rbrew_read32(cpu->mem, _t181);
|
|
/* 0239E508 */ _t182 = cpu->r[1] + 0x00000060u;
|
|
/* 0239E508 */ rbrew_write32(cpu->mem, _t182, cpu->r[26]);
|
|
/* 0239E50C */ _t183 = cpu->r[1] + 0x00000118u;
|
|
/* 0239E50C */ rbrew_write32(cpu->mem, _t183, cpu->r[30]);
|
|
/* 0239E510 */ _t184 = cpu->r[1] + 0x00000064u;
|
|
/* 0239E510 */ rbrew_write32(cpu->mem, _t184, cpu->r[30]);
|
|
/* 0239E514 */ _t185 = cpu->r[10] + 0x0000000Cu;
|
|
/* 0239E514 */ cpu->r[7] = rbrew_read32(cpu->mem, _t185);
|
|
/* 0239E518 */ cpu->r[31] = cpu->r[10] - cpu->r[7];
|
|
/* 0239E51C */ _t186 = cpu->r[1] + 0x00000154u;
|
|
/* 0239E51C */ rbrew_write32(cpu->mem, _t186, cpu->r[31]);
|
|
/* 0239E520 */ _t187 = cpu->r[10] + 0x0000000Cu;
|
|
/* 0239E520 */ cpu->r[8] = rbrew_read32(cpu->mem, _t187);
|
|
/* 0239E524 */ _t188 = cpu->r[1] + 0x00000074u;
|
|
/* 0239E524 */ rbrew_write32(cpu->mem, _t188, cpu->r[30]);
|
|
/* 0239E528 */ _t189 = cpu->r[1] + 0x0000006Cu;
|
|
/* 0239E528 */ rbrew_write32(cpu->mem, _t189, cpu->r[8]);
|
|
/* 0239E52C */ _t190 = cpu->r[1] + 0x00000068u;
|
|
/* 0239E52C */ rbrew_write32(cpu->mem, _t190, cpu->r[31]);
|
|
/* 0239E530 */ _t191 = cpu->r[1] + 0x00000158u;
|
|
/* 0239E530 */ rbrew_write32(cpu->mem, _t191, cpu->r[8]);
|
|
/* 0239E534 */ _t192 = cpu->r[1] + 0x00000070u;
|
|
/* 0239E534 */ rbrew_write32(cpu->mem, _t192, cpu->r[26]);
|
|
/* 0239E538 */ goto L_0239E54C;
|
|
L_0239E53C: ; // 0x239e53c
|
|
/* 0239E53C */ cpu->r[8] = cpu->r[26] + cpu->r[30];
|
|
/* 0239E540 */ _t193 = cpu->r[8] + 0x00000004u;
|
|
/* 0239E540 */ cpu->r[4] = rbrew_read32(cpu->mem, _t193);
|
|
/* 0239E544 */ cpu->r[26] = cpu->r[4] - cpu->r[30];
|
|
/* 0239E548 */ _t194 = cpu->r[1] + 0x00000070u;
|
|
/* 0239E548 */ rbrew_write32(cpu->mem, _t194, cpu->r[26]);
|
|
L_0239E54C: ; // 0x239e54c
|
|
/* 0239E54C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], cpu->r[31]);
|
|
/* 0239E550 */ _t195 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239E550 */ _t196 = _t195 & 0x00000001u;
|
|
/* 0239E550 */ if (_t196) goto L_0239E568; else goto L_0239E554;
|
|
L_0239E554: ; // 0x239e554
|
|
/* 0239E554 */ _t197 = cpu->r[26] + 0x0000001Cu;
|
|
/* 0239E554 */ cpu->r[9] = rbrew_read32(cpu->mem, _t197);
|
|
/* 0239E558 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000002u);
|
|
/* 0239E55C */ _t198 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239E55C */ _t199 = _t198 & 0x00000001u;
|
|
/* 0239E55C */ if (_t199) goto L_0239E568; else goto L_0239E560;
|
|
L_0239E560: ; // 0x239e560
|
|
/* 0239E560 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000003u);
|
|
/* 0239E564 */ _t200 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239E564 */ _t201 = _t200 & 0x00000001u;
|
|
/* 0239E564 */ if (_t201) goto L_0239E568; else goto L_0239E53C;
|
|
L_0239E568: ; // 0x239e568
|
|
/* 0239E568 */ cpu->f[24] = cpu->f[29];
|
|
L_0239E56C: ; // 0x239e56c
|
|
/* 0239E56C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], cpu->r[31]);
|
|
/* 0239E570 */ _t202 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239E570 */ _t203 = _t202 & 0x00000001u;
|
|
/* 0239E570 */ if (_t203) goto L_0239E690; else goto L_0239E574;
|
|
L_0239E574: ; // 0x239e574
|
|
/* 0239E574 */ cpu->f[23] = cpu->f[24];
|
|
/* 0239E578 */ cpu->r[25] = 0x00000004u;
|
|
/* 0239E57C */ cpu->r[24] = 0x00000001u;
|
|
L_0239E580: ; // 0x239e580
|
|
/* 0239E580 */ _t204 = cpu->r[26] + 0x0000002Cu;
|
|
/* 0239E580 */ cpu->r[0] = rbrew_read32(cpu->mem, _t204);
|
|
/* 0239E584 */ _t205 = cpu->r[27] + 0x0000002Cu;
|
|
/* 0239E584 */ cpu->r[11] = rbrew_read32(cpu->mem, _t205);
|
|
/* 0239E588 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[11]);
|
|
/* 0239E58C */ _t206 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239E58C */ _t207 = _t206 & 0x00000001u;
|
|
/* 0239E58C */ if (_t207) goto L_0239E590; else goto L_0239E644;
|
|
L_0239E590: ; // 0x239e590
|
|
/* 0239E590 */ cpu->r[3] = cpu->r[26] + 0x00000078u;
|
|
/* 0239E594 */ Gambit_fn_0239E06C(cpu);
|
|
/* 0239E598 */ _t208 = cpu->r[1] + 0x00000014u;
|
|
/* 0239E598 */ rbrew_write32(cpu->mem, _t208, cpu->r[4]);
|
|
/* 0239E59C */ _t209 = cpu->r[1] + 0x00000014u;
|
|
/* 0239E59C */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t209);
|
|
/* 0239E5A0 */ _t210 = cpu->r[1] + 0x00000010u;
|
|
/* 0239E5A0 */ rbrew_write32(cpu->mem, _t210, cpu->r[3]);
|
|
/* 0239E5A4 */ _t211 = cpu->r[29] + 0x00000118u;
|
|
/* 0239E5A4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t211);
|
|
/* 0239E5A8 */ _t212 = cpu->r[1] + 0x00000010u;
|
|
/* 0239E5A8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t212);
|
|
/* 0239E5AC */ cpu->f[8] = cpu->f[13] - cpu->f[6];
|
|
/* 0239E5B0 */ _t213 = cpu->r[29] + 0x00000114u;
|
|
/* 0239E5B0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t213);
|
|
/* 0239E5B4 */ cpu->f[7] = cpu->f[11] - cpu->f[12];
|
|
/* 0239E5B8 */ cpu->f[11] = cpu->f[8] * cpu->f[8];
|
|
/* 0239E5BC */ cpu->f[6] = fma(cpu->f[7], cpu->f[7], cpu->f[11]);
|
|
/* 0239E5C0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[6], cpu->f[23]);
|
|
/* 0239E5C4 */ _t214 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0239E5C4 */ _t215 = _t214 & 0x00000001u;
|
|
/* 0239E5C4 */ if (_t215) goto L_0239E5D8; else goto L_0239E5C8;
|
|
L_0239E5C8: ; // 0x239e5c8
|
|
/* 0239E5C8 */ cpu->f[9] = cpu->f[23] * cpu->f[6];
|
|
/* 0239E5CC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[28]);
|
|
/* 0239E5D0 */ _t216 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0239E5D0 */ _t217 = _t216 & 0x00000001u;
|
|
/* 0239E5D0 */ if (_t217) goto L_0239E644; else goto L_0239E5D4;
|
|
L_0239E5D4: ; // 0x239e5d4
|
|
/* 0239E5D4 */ goto L_0239E604;
|
|
L_0239E5D8: ; // 0x239e5d8
|
|
/* 0239E5D8 */ _ft218 = sqrt(cpu->f[6]);
|
|
/* 0239E5D8 */ _ft219 = (double)(int32_t)0x00000001u;
|
|
/* 0239E5D8 */ cpu->f[25] = _ft219 / _ft218;
|
|
/* 0239E5DC */ cpu->f[26] = cpu->f[25] * cpu->f[25];
|
|
/* 0239E5E0 */ cpu->f[27] = cpu->f[25] * cpu->f[30];
|
|
/* 0239E5E4 */ cpu->f[26] = -fma(cpu->f[26], cpu->f[6], -(cpu->f[31]));
|
|
/* 0239E5E8 */ cpu->f[25] = cpu->f[26] * cpu->f[27];
|
|
/* 0239E5EC */ cpu->f[9] = cpu->f[25] * cpu->f[6];
|
|
/* 0239E5F0 */ _t220 = cpu->r[1] + 0x00000070u;
|
|
/* 0239E5F0 */ cpu->r[26] = rbrew_read32(cpu->mem, _t220);
|
|
/* 0239E5F4 */ _t221 = cpu->r[1] + 0x00000068u;
|
|
/* 0239E5F4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t221);
|
|
/* 0239E5F8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[28]);
|
|
/* 0239E5FC */ _t222 = cpu->r[1] + 0x00000074u;
|
|
/* 0239E5FC */ cpu->r[30] = rbrew_read32(cpu->mem, _t222);
|
|
/* 0239E600 */ _t223 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0239E600 */ _t224 = _t223 & 0x00000001u;
|
|
/* 0239E600 */ if (_t224) goto L_0239E644; else goto L_0239E604;
|
|
L_0239E604: ; // 0x239e604
|
|
/* 0239E604 */ _t225 = cpu->r[29] + 0x00000158u;
|
|
/* 0239E604 */ rbrew_write32(cpu->mem, _t225, cpu->r[26]);
|
|
/* 0239E608 */ _t226 = cpu->r[29] + 0x00000160u;
|
|
/* 0239E608 */ rbrew_write8(cpu->mem, _t226, (uint8_t)cpu->r[24]);
|
|
/* 0239E60C */ _t227 = cpu->r[29] + 0x00000164u;
|
|
/* 0239E60C */ rbrew_write32(cpu->mem, _t227, cpu->r[25]);
|
|
/* 0239E610 */ _t228 = cpu->r[26] + 0x00000024u;
|
|
/* 0239E610 */ cpu->r[6] = rbrew_read32(cpu->mem, _t228);
|
|
/* 0239E614 */ _t229 = cpu->r[1] + 0x00000010u;
|
|
/* 0239E614 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t229);
|
|
/* 0239E618 */ _t230 = cpu->r[29] + 0x00000168u;
|
|
/* 0239E618 */ rbrew_write32(cpu->mem, _t230, cpu->r[6]);
|
|
/* 0239E61C */ _t231 = cpu->r[1] + 0x00000014u;
|
|
/* 0239E61C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t231);
|
|
/* 0239E620 */ _t232 = cpu->r[29] + 0x0000016Cu;
|
|
/* 0239E620 */ rbrew_write_f32(cpu->mem, _t232, cpu->f[6]);
|
|
/* 0239E624 */ _t233 = cpu->r[29] + 0x00000170u;
|
|
/* 0239E624 */ rbrew_write_f32(cpu->mem, _t233, cpu->f[8]);
|
|
/* 0239E628 */ _t234 = cpu->r[26] + 0x00000078u;
|
|
/* 0239E628 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t234);
|
|
/* 0239E62C */ _t235 = cpu->r[29] + 0x00000174u;
|
|
/* 0239E62C */ rbrew_write_f32(cpu->mem, _t235, cpu->f[13]);
|
|
/* 0239E630 */ _t236 = cpu->r[26] + 0x0000007Cu;
|
|
/* 0239E630 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t236);
|
|
/* 0239E634 */ _t237 = cpu->r[29] + 0x00000178u;
|
|
/* 0239E634 */ rbrew_write_f32(cpu->mem, _t237, cpu->f[6]);
|
|
/* 0239E638 */ _t238 = cpu->r[26] + 0x00000080u;
|
|
/* 0239E638 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t238);
|
|
/* 0239E63C */ cpu->f[28] = cpu->f[9];
|
|
/* 0239E640 */ _t239 = cpu->r[29] + 0x0000017Cu;
|
|
/* 0239E640 */ rbrew_write_f32(cpu->mem, _t239, cpu->f[10]);
|
|
L_0239E644: ; // 0x239e644
|
|
/* 0239E644 */ cpu->r[9] = cpu->r[26] + cpu->r[30];
|
|
/* 0239E648 */ _t240 = cpu->r[9] + 0x00000004u;
|
|
/* 0239E648 */ cpu->r[7] = rbrew_read32(cpu->mem, _t240);
|
|
/* 0239E64C */ cpu->r[26] = cpu->r[7] - cpu->r[30];
|
|
/* 0239E650 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], cpu->r[31]);
|
|
/* 0239E654 */ _t241 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239E654 */ _t242 = _t241 & 0x00000001u;
|
|
/* 0239E654 */ if (_t242) goto L_0239E658; else goto L_0239E668;
|
|
L_0239E658: ; // 0x239e658
|
|
/* 0239E658 */ _t243 = cpu->r[28] + 0x00000000u;
|
|
/* 0239E658 */ cpu->r[8] = rbrew_read32(cpu->mem, _t243);
|
|
/* 0239E65C */ _t244 = cpu->r[1] + 0x00000070u;
|
|
/* 0239E65C */ rbrew_write32(cpu->mem, _t244, cpu->r[26]);
|
|
/* 0239E660 */ _t245 = cpu->r[8] + 0x00000264u;
|
|
/* 0239E660 */ cpu->r[7] = rbrew_read32(cpu->mem, _t245);
|
|
/* 0239E664 */ goto L_0239E698;
|
|
L_0239E668: ; // 0x239e668
|
|
/* 0239E668 */ _t246 = cpu->r[26] + 0x0000001Cu;
|
|
/* 0239E668 */ cpu->r[10] = rbrew_read32(cpu->mem, _t246);
|
|
/* 0239E66C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000002u);
|
|
/* 0239E670 */ _t247 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239E670 */ _t248 = _t247 & 0x00000001u;
|
|
/* 0239E670 */ if (_t248) goto L_0239E684; else goto L_0239E674;
|
|
L_0239E674: ; // 0x239e674
|
|
/* 0239E674 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000003u);
|
|
/* 0239E678 */ _t249 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239E678 */ _t250 = _t249 & 0x00000001u;
|
|
/* 0239E678 */ if (_t250) goto L_0239E67C; else goto L_0239E644;
|
|
L_0239E67C: ; // 0x239e67c
|
|
/* 0239E67C */ _t251 = cpu->r[1] + 0x00000070u;
|
|
/* 0239E67C */ rbrew_write32(cpu->mem, _t251, cpu->r[26]);
|
|
/* 0239E680 */ goto L_0239E56C;
|
|
L_0239E684: ; // 0x239e684
|
|
/* 0239E684 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], cpu->r[31]);
|
|
/* 0239E688 */ _t252 = cpu->r[1] + 0x00000070u;
|
|
/* 0239E688 */ rbrew_write32(cpu->mem, _t252, cpu->r[26]);
|
|
/* 0239E68C */ _t253 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239E68C */ _t254 = _t253 & 0x00000001u;
|
|
/* 0239E68C */ if (_t254) goto L_0239E690; else goto L_0239E580;
|
|
L_0239E690: ; // 0x239e690
|
|
/* 0239E690 */ _t255 = cpu->r[28] + 0x00000000u;
|
|
/* 0239E690 */ cpu->r[8] = rbrew_read32(cpu->mem, _t255);
|
|
/* 0239E694 */ _t256 = cpu->r[8] + 0x00000264u;
|
|
/* 0239E694 */ cpu->r[7] = rbrew_read32(cpu->mem, _t256);
|
|
L_0239E698: ; // 0x239e698
|
|
/* 0239E698 */ _t257 = cpu->r[7] + 0x00000030u;
|
|
/* 0239E698 */ cpu->r[8] = rbrew_read32(cpu->mem, _t257);
|
|
/* 0239E69C */ _t258 = cpu->r[8] + 0x00000048u;
|
|
/* 0239E69C */ cpu->r[0] = rbrew_read32(cpu->mem, _t258);
|
|
/* 0239E6A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0239E6A4 */ _t259 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239E6A4 */ _t260 = _t259 & 0x00000001u;
|
|
/* 0239E6A4 */ if (_t260) goto L_0239E86C; else goto L_0239E6A8;
|
|
L_0239E6A8: ; // 0x239e6a8
|
|
/* 0239E6A8 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0239E6AC */ _t261 = cpu->r[12] + 0x000065BCu;
|
|
/* 0239E6AC */ cpu->r[12] = rbrew_read32(cpu->mem, _t261);
|
|
/* 0239E6B0 */ cpu->r[10] = cpu->r[7] + cpu->r[12];
|
|
/* 0239E6B4 */ _t262 = cpu->r[10] + 0x00000104u;
|
|
/* 0239E6B4 */ cpu->r[4] = rbrew_read8(cpu->mem, _t262);
|
|
/* 0239E6B8 */ _t263 = cpu->r[7] + 0x00000030u;
|
|
/* 0239E6B8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t263);
|
|
/* 0239E6BC */ cpu->r[11] = rbrew_rlwinm(cpu->r[4], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239E6C0 */ _t264 = cpu->r[11] + cpu->r[5];
|
|
/* 0239E6C0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t264);
|
|
/* 0239E6C4 */ _t265 = cpu->r[6] + 0x00000008u;
|
|
/* 0239E6C4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t265);
|
|
/* 0239E6C8 */ _t266 = cpu->r[11] + 0x00000004u;
|
|
/* 0239E6C8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t266);
|
|
/* 0239E6CC */ _t267 = cpu->r[11] + 0x0000000Cu;
|
|
/* 0239E6CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t267);
|
|
/* 0239E6D0 */ cpu->r[26] = cpu->r[8] - cpu->r[0];
|
|
/* 0239E6D4 */ _t268 = cpu->r[1] + 0x0000011Cu;
|
|
/* 0239E6D4 */ rbrew_write32(cpu->mem, _t268, cpu->r[26]);
|
|
/* 0239E6D8 */ _t269 = cpu->r[11] + 0x0000000Cu;
|
|
/* 0239E6D8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t269);
|
|
/* 0239E6DC */ _t270 = cpu->r[1] + 0x00000078u;
|
|
/* 0239E6DC */ rbrew_write32(cpu->mem, _t270, cpu->r[26]);
|
|
/* 0239E6E0 */ _t271 = cpu->r[1] + 0x00000120u;
|
|
/* 0239E6E0 */ rbrew_write32(cpu->mem, _t271, cpu->r[30]);
|
|
/* 0239E6E4 */ _t272 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0239E6E4 */ rbrew_write32(cpu->mem, _t272, cpu->r[30]);
|
|
/* 0239E6E8 */ _t273 = cpu->r[11] + 0x0000000Cu;
|
|
/* 0239E6E8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t273);
|
|
/* 0239E6EC */ cpu->r[31] = cpu->r[11] - cpu->r[7];
|
|
/* 0239E6F0 */ _t274 = cpu->r[1] + 0x0000015Cu;
|
|
/* 0239E6F0 */ rbrew_write32(cpu->mem, _t274, cpu->r[31]);
|
|
/* 0239E6F4 */ _t275 = cpu->r[11] + 0x0000000Cu;
|
|
/* 0239E6F4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t275);
|
|
/* 0239E6F8 */ _t276 = cpu->r[1] + 0x00000080u;
|
|
/* 0239E6F8 */ rbrew_write32(cpu->mem, _t276, cpu->r[31]);
|
|
/* 0239E6FC */ _t277 = cpu->r[1] + 0x00000160u;
|
|
/* 0239E6FC */ rbrew_write32(cpu->mem, _t277, cpu->r[8]);
|
|
/* 0239E700 */ _t278 = cpu->r[1] + 0x00000088u;
|
|
/* 0239E700 */ rbrew_write32(cpu->mem, _t278, cpu->r[26]);
|
|
/* 0239E704 */ _t279 = cpu->r[1] + 0x00000084u;
|
|
/* 0239E704 */ rbrew_write32(cpu->mem, _t279, cpu->r[8]);
|
|
/* 0239E708 */ _t280 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0239E708 */ rbrew_write32(cpu->mem, _t280, cpu->r[30]);
|
|
/* 0239E70C */ goto L_0239E720;
|
|
L_0239E710: ; // 0x239e710
|
|
/* 0239E710 */ cpu->r[11] = cpu->r[26] + cpu->r[30];
|
|
/* 0239E714 */ _t281 = cpu->r[11] + 0x00000004u;
|
|
/* 0239E714 */ cpu->r[5] = rbrew_read32(cpu->mem, _t281);
|
|
/* 0239E718 */ cpu->r[26] = cpu->r[5] - cpu->r[30];
|
|
/* 0239E71C */ _t282 = cpu->r[1] + 0x00000088u;
|
|
/* 0239E71C */ rbrew_write32(cpu->mem, _t282, cpu->r[26]);
|
|
L_0239E720: ; // 0x239e720
|
|
/* 0239E720 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], cpu->r[31]);
|
|
/* 0239E724 */ _t283 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239E724 */ _t284 = _t283 & 0x00000001u;
|
|
/* 0239E724 */ if (_t284) goto L_0239E73C; else goto L_0239E728;
|
|
L_0239E728: ; // 0x239e728
|
|
/* 0239E728 */ _t285 = cpu->r[26] + 0x0000001Cu;
|
|
/* 0239E728 */ cpu->r[11] = rbrew_read32(cpu->mem, _t285);
|
|
/* 0239E72C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000002u);
|
|
/* 0239E730 */ _t286 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239E730 */ _t287 = _t286 & 0x00000001u;
|
|
/* 0239E730 */ if (_t287) goto L_0239E73C; else goto L_0239E734;
|
|
L_0239E734: ; // 0x239e734
|
|
/* 0239E734 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 0239E738 */ _t288 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239E738 */ _t289 = _t288 & 0x00000001u;
|
|
/* 0239E738 */ if (_t289) goto L_0239E73C; else goto L_0239E710;
|
|
L_0239E73C: ; // 0x239e73c
|
|
/* 0239E73C */ cpu->f[27] = cpu->f[29];
|
|
L_0239E740: ; // 0x239e740
|
|
/* 0239E740 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], cpu->r[31]);
|
|
/* 0239E744 */ _t290 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239E744 */ _t291 = _t290 & 0x00000001u;
|
|
/* 0239E744 */ if (_t291) goto L_0239E864; else goto L_0239E748;
|
|
L_0239E748: ; // 0x239e748
|
|
/* 0239E748 */ cpu->f[26] = cpu->f[27];
|
|
/* 0239E74C */ cpu->r[25] = 0x00000005u;
|
|
/* 0239E750 */ cpu->r[24] = 0x00000001u;
|
|
L_0239E754: ; // 0x239e754
|
|
/* 0239E754 */ _t292 = cpu->r[26] + 0x0000002Cu;
|
|
/* 0239E754 */ cpu->r[0] = rbrew_read32(cpu->mem, _t292);
|
|
/* 0239E758 */ _t293 = cpu->r[27] + 0x0000002Cu;
|
|
/* 0239E758 */ cpu->r[5] = rbrew_read32(cpu->mem, _t293);
|
|
/* 0239E75C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[5]);
|
|
/* 0239E760 */ _t294 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239E760 */ _t295 = _t294 & 0x00000001u;
|
|
/* 0239E760 */ if (_t295) goto L_0239E764; else goto L_0239E818;
|
|
L_0239E764: ; // 0x239e764
|
|
/* 0239E764 */ cpu->r[3] = cpu->r[26] + 0x00000078u;
|
|
/* 0239E768 */ Gambit_fn_0239E06C(cpu);
|
|
/* 0239E76C */ _t296 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239E76C */ rbrew_write32(cpu->mem, _t296, cpu->r[4]);
|
|
/* 0239E770 */ _t297 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239E770 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t297);
|
|
/* 0239E774 */ _t298 = cpu->r[1] + 0x00000018u;
|
|
/* 0239E774 */ rbrew_write32(cpu->mem, _t298, cpu->r[3]);
|
|
/* 0239E778 */ _t299 = cpu->r[29] + 0x00000118u;
|
|
/* 0239E778 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t299);
|
|
/* 0239E77C */ _t300 = cpu->r[29] + 0x00000114u;
|
|
/* 0239E77C */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t300);
|
|
/* 0239E780 */ cpu->f[8] = cpu->f[8] - cpu->f[10];
|
|
/* 0239E784 */ _t301 = cpu->r[1] + 0x00000018u;
|
|
/* 0239E784 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t301);
|
|
/* 0239E788 */ cpu->f[7] = cpu->f[6] - cpu->f[7];
|
|
/* 0239E78C */ cpu->f[0] = cpu->f[8] * cpu->f[8];
|
|
/* 0239E790 */ cpu->f[6] = fma(cpu->f[7], cpu->f[7], cpu->f[0]);
|
|
/* 0239E794 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[6], cpu->f[26]);
|
|
/* 0239E798 */ _t302 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0239E798 */ _t303 = _t302 & 0x00000001u;
|
|
/* 0239E798 */ if (_t303) goto L_0239E7AC; else goto L_0239E79C;
|
|
L_0239E79C: ; // 0x239e79c
|
|
/* 0239E79C */ cpu->f[9] = cpu->f[26] * cpu->f[6];
|
|
/* 0239E7A0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[28]);
|
|
/* 0239E7A4 */ _t304 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0239E7A4 */ _t305 = _t304 & 0x00000001u;
|
|
/* 0239E7A4 */ if (_t305) goto L_0239E818; else goto L_0239E7A8;
|
|
L_0239E7A8: ; // 0x239e7a8
|
|
/* 0239E7A8 */ goto L_0239E7D8;
|
|
L_0239E7AC: ; // 0x239e7ac
|
|
/* 0239E7AC */ _ft306 = sqrt(cpu->f[6]);
|
|
/* 0239E7AC */ _ft307 = (double)(int32_t)0x00000001u;
|
|
/* 0239E7AC */ cpu->f[23] = _ft307 / _ft306;
|
|
/* 0239E7B0 */ cpu->f[24] = cpu->f[23] * cpu->f[23];
|
|
/* 0239E7B4 */ cpu->f[25] = cpu->f[23] * cpu->f[30];
|
|
/* 0239E7B8 */ cpu->f[24] = -fma(cpu->f[24], cpu->f[6], -(cpu->f[31]));
|
|
/* 0239E7BC */ cpu->f[23] = cpu->f[24] * cpu->f[25];
|
|
/* 0239E7C0 */ cpu->f[9] = cpu->f[23] * cpu->f[6];
|
|
/* 0239E7C4 */ _t308 = cpu->r[1] + 0x00000088u;
|
|
/* 0239E7C4 */ cpu->r[26] = rbrew_read32(cpu->mem, _t308);
|
|
/* 0239E7C8 */ _t309 = cpu->r[1] + 0x00000080u;
|
|
/* 0239E7C8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t309);
|
|
/* 0239E7CC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[28]);
|
|
/* 0239E7D0 */ _t310 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0239E7D0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t310);
|
|
/* 0239E7D4 */ _t311 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0239E7D4 */ _t312 = _t311 & 0x00000001u;
|
|
/* 0239E7D4 */ if (_t312) goto L_0239E818; else goto L_0239E7D8;
|
|
L_0239E7D8: ; // 0x239e7d8
|
|
/* 0239E7D8 */ _t313 = cpu->r[29] + 0x00000158u;
|
|
/* 0239E7D8 */ rbrew_write32(cpu->mem, _t313, cpu->r[26]);
|
|
/* 0239E7DC */ _t314 = cpu->r[29] + 0x00000160u;
|
|
/* 0239E7DC */ rbrew_write8(cpu->mem, _t314, (uint8_t)cpu->r[24]);
|
|
/* 0239E7E0 */ _t315 = cpu->r[29] + 0x00000164u;
|
|
/* 0239E7E0 */ rbrew_write32(cpu->mem, _t315, cpu->r[25]);
|
|
/* 0239E7E4 */ _t316 = cpu->r[26] + 0x00000024u;
|
|
/* 0239E7E4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t316);
|
|
/* 0239E7E8 */ _t317 = cpu->r[1] + 0x00000018u;
|
|
/* 0239E7E8 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t317);
|
|
/* 0239E7EC */ _t318 = cpu->r[29] + 0x00000168u;
|
|
/* 0239E7EC */ rbrew_write32(cpu->mem, _t318, cpu->r[7]);
|
|
/* 0239E7F0 */ _t319 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239E7F0 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t319);
|
|
/* 0239E7F4 */ _t320 = cpu->r[29] + 0x0000016Cu;
|
|
/* 0239E7F4 */ rbrew_write_f32(cpu->mem, _t320, cpu->f[7]);
|
|
/* 0239E7F8 */ _t321 = cpu->r[29] + 0x00000170u;
|
|
/* 0239E7F8 */ rbrew_write_f32(cpu->mem, _t321, cpu->f[8]);
|
|
/* 0239E7FC */ _t322 = cpu->r[26] + 0x00000078u;
|
|
/* 0239E7FC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t322);
|
|
/* 0239E800 */ _t323 = cpu->r[29] + 0x00000174u;
|
|
/* 0239E800 */ rbrew_write_f32(cpu->mem, _t323, cpu->f[10]);
|
|
/* 0239E804 */ _t324 = cpu->r[26] + 0x0000007Cu;
|
|
/* 0239E804 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t324);
|
|
/* 0239E808 */ _t325 = cpu->r[29] + 0x00000178u;
|
|
/* 0239E808 */ rbrew_write_f32(cpu->mem, _t325, cpu->f[12]);
|
|
/* 0239E80C */ _t326 = cpu->r[26] + 0x00000080u;
|
|
/* 0239E80C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t326);
|
|
/* 0239E810 */ cpu->f[28] = cpu->f[9];
|
|
/* 0239E814 */ _t327 = cpu->r[29] + 0x0000017Cu;
|
|
/* 0239E814 */ rbrew_write_f32(cpu->mem, _t327, cpu->f[0]);
|
|
L_0239E818: ; // 0x239e818
|
|
/* 0239E818 */ cpu->r[4] = cpu->r[26] + cpu->r[30];
|
|
/* 0239E81C */ _t328 = cpu->r[4] + 0x00000004u;
|
|
/* 0239E81C */ cpu->r[8] = rbrew_read32(cpu->mem, _t328);
|
|
/* 0239E820 */ cpu->r[26] = cpu->r[8] - cpu->r[30];
|
|
/* 0239E824 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], cpu->r[31]);
|
|
/* 0239E828 */ _t329 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239E828 */ _t330 = _t329 & 0x00000001u;
|
|
/* 0239E828 */ if (_t330) goto L_0239E82C; else goto L_0239E83C;
|
|
L_0239E82C: ; // 0x239e82c
|
|
/* 0239E82C */ _t331 = cpu->r[28] + 0x00000000u;
|
|
/* 0239E82C */ cpu->r[8] = rbrew_read32(cpu->mem, _t331);
|
|
/* 0239E830 */ _t332 = cpu->r[1] + 0x00000088u;
|
|
/* 0239E830 */ rbrew_write32(cpu->mem, _t332, cpu->r[26]);
|
|
/* 0239E834 */ _t333 = cpu->r[8] + 0x00000264u;
|
|
/* 0239E834 */ cpu->r[7] = rbrew_read32(cpu->mem, _t333);
|
|
/* 0239E838 */ goto L_0239E86C;
|
|
L_0239E83C: ; // 0x239e83c
|
|
/* 0239E83C */ _t334 = cpu->r[26] + 0x0000001Cu;
|
|
/* 0239E83C */ cpu->r[0] = rbrew_read32(cpu->mem, _t334);
|
|
/* 0239E840 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000002u);
|
|
/* 0239E844 */ _t335 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239E844 */ _t336 = _t335 & 0x00000001u;
|
|
/* 0239E844 */ if (_t336) goto L_0239E858; else goto L_0239E848;
|
|
L_0239E848: ; // 0x239e848
|
|
/* 0239E848 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000003u);
|
|
/* 0239E84C */ _t337 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239E84C */ _t338 = _t337 & 0x00000001u;
|
|
/* 0239E84C */ if (_t338) goto L_0239E850; else goto L_0239E818;
|
|
L_0239E850: ; // 0x239e850
|
|
/* 0239E850 */ _t339 = cpu->r[1] + 0x00000088u;
|
|
/* 0239E850 */ rbrew_write32(cpu->mem, _t339, cpu->r[26]);
|
|
/* 0239E854 */ goto L_0239E740;
|
|
L_0239E858: ; // 0x239e858
|
|
/* 0239E858 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], cpu->r[31]);
|
|
/* 0239E85C */ _t340 = cpu->r[1] + 0x00000088u;
|
|
/* 0239E85C */ rbrew_write32(cpu->mem, _t340, cpu->r[26]);
|
|
/* 0239E860 */ _t341 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239E860 */ _t342 = _t341 & 0x00000001u;
|
|
/* 0239E860 */ if (_t342) goto L_0239E864; else goto L_0239E754;
|
|
L_0239E864: ; // 0x239e864
|
|
/* 0239E864 */ _t343 = cpu->r[28] + 0x00000000u;
|
|
/* 0239E864 */ cpu->r[8] = rbrew_read32(cpu->mem, _t343);
|
|
/* 0239E868 */ _t344 = cpu->r[8] + 0x00000264u;
|
|
/* 0239E868 */ cpu->r[7] = rbrew_read32(cpu->mem, _t344);
|
|
L_0239E86C: ; // 0x239e86c
|
|
/* 0239E86C */ _t345 = cpu->r[7] + 0x00000030u;
|
|
/* 0239E86C */ cpu->r[9] = rbrew_read32(cpu->mem, _t345);
|
|
/* 0239E870 */ _t346 = cpu->r[9] + 0x00000060u;
|
|
/* 0239E870 */ cpu->r[0] = rbrew_read32(cpu->mem, _t346);
|
|
/* 0239E874 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0239E878 */ _t347 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239E878 */ _t348 = _t347 & 0x00000001u;
|
|
/* 0239E878 */ if (_t348) goto L_0239EA40; else goto L_0239E87C;
|
|
L_0239E87C: ; // 0x239e87c
|
|
/* 0239E87C */ cpu->r[12] = 0x101C0000u;
|
|
/* 0239E880 */ _t349 = cpu->r[12] + 0x000064A4u;
|
|
/* 0239E880 */ cpu->r[12] = rbrew_read32(cpu->mem, _t349);
|
|
/* 0239E884 */ cpu->r[11] = cpu->r[7] + cpu->r[12];
|
|
/* 0239E888 */ _t350 = cpu->r[11] + 0x00000104u;
|
|
/* 0239E888 */ cpu->r[5] = rbrew_read8(cpu->mem, _t350);
|
|
/* 0239E88C */ _t351 = cpu->r[7] + 0x00000030u;
|
|
/* 0239E88C */ cpu->r[6] = rbrew_read32(cpu->mem, _t351);
|
|
/* 0239E890 */ cpu->r[4] = rbrew_rlwinm(cpu->r[5], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239E894 */ _t352 = cpu->r[4] + cpu->r[6];
|
|
/* 0239E894 */ cpu->r[8] = rbrew_read32(cpu->mem, _t352);
|
|
/* 0239E898 */ _t353 = cpu->r[8] + 0x00000008u;
|
|
/* 0239E898 */ cpu->r[4] = rbrew_read32(cpu->mem, _t353);
|
|
/* 0239E89C */ _t354 = cpu->r[4] + 0x00000004u;
|
|
/* 0239E89C */ cpu->r[9] = rbrew_read32(cpu->mem, _t354);
|
|
/* 0239E8A0 */ _t355 = cpu->r[4] + 0x0000000Cu;
|
|
/* 0239E8A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t355);
|
|
/* 0239E8A4 */ cpu->r[27] = cpu->r[9] - cpu->r[0];
|
|
/* 0239E8A8 */ _t356 = cpu->r[1] + 0x00000124u;
|
|
/* 0239E8A8 */ rbrew_write32(cpu->mem, _t356, cpu->r[27]);
|
|
/* 0239E8AC */ _t357 = cpu->r[4] + 0x0000000Cu;
|
|
/* 0239E8AC */ cpu->r[30] = rbrew_read32(cpu->mem, _t357);
|
|
/* 0239E8B0 */ _t358 = cpu->r[1] + 0x00000090u;
|
|
/* 0239E8B0 */ rbrew_write32(cpu->mem, _t358, cpu->r[27]);
|
|
/* 0239E8B4 */ _t359 = cpu->r[1] + 0x00000128u;
|
|
/* 0239E8B4 */ rbrew_write32(cpu->mem, _t359, cpu->r[30]);
|
|
/* 0239E8B8 */ _t360 = cpu->r[1] + 0x00000094u;
|
|
/* 0239E8B8 */ rbrew_write32(cpu->mem, _t360, cpu->r[30]);
|
|
/* 0239E8BC */ _t361 = cpu->r[4] + 0x0000000Cu;
|
|
/* 0239E8BC */ cpu->r[8] = rbrew_read32(cpu->mem, _t361);
|
|
/* 0239E8C0 */ cpu->r[31] = cpu->r[4] - cpu->r[8];
|
|
/* 0239E8C4 */ _t362 = cpu->r[1] + 0x00000164u;
|
|
/* 0239E8C4 */ rbrew_write32(cpu->mem, _t362, cpu->r[31]);
|
|
/* 0239E8C8 */ _t363 = cpu->r[4] + 0x0000000Cu;
|
|
/* 0239E8C8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t363);
|
|
/* 0239E8CC */ _t364 = cpu->r[1] + 0x00000098u;
|
|
/* 0239E8CC */ rbrew_write32(cpu->mem, _t364, cpu->r[31]);
|
|
/* 0239E8D0 */ _t365 = cpu->r[1] + 0x00000168u;
|
|
/* 0239E8D0 */ rbrew_write32(cpu->mem, _t365, cpu->r[9]);
|
|
/* 0239E8D4 */ _t366 = cpu->r[1] + 0x000000A0u;
|
|
/* 0239E8D4 */ rbrew_write32(cpu->mem, _t366, cpu->r[27]);
|
|
/* 0239E8D8 */ _t367 = cpu->r[1] + 0x0000009Cu;
|
|
/* 0239E8D8 */ rbrew_write32(cpu->mem, _t367, cpu->r[9]);
|
|
/* 0239E8DC */ _t368 = cpu->r[1] + 0x000000A4u;
|
|
/* 0239E8DC */ rbrew_write32(cpu->mem, _t368, cpu->r[30]);
|
|
/* 0239E8E0 */ goto L_0239E8F4;
|
|
L_0239E8E4: ; // 0x239e8e4
|
|
/* 0239E8E4 */ cpu->r[9] = cpu->r[27] + cpu->r[30];
|
|
/* 0239E8E8 */ _t369 = cpu->r[9] + 0x00000004u;
|
|
/* 0239E8E8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t369);
|
|
/* 0239E8EC */ cpu->r[27] = cpu->r[6] - cpu->r[30];
|
|
/* 0239E8F0 */ _t370 = cpu->r[1] + 0x000000A0u;
|
|
/* 0239E8F0 */ rbrew_write32(cpu->mem, _t370, cpu->r[27]);
|
|
L_0239E8F4: ; // 0x239e8f4
|
|
/* 0239E8F4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], cpu->r[31]);
|
|
/* 0239E8F8 */ _t371 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239E8F8 */ _t372 = _t371 & 0x00000001u;
|
|
/* 0239E8F8 */ if (_t372) goto L_0239E910; else goto L_0239E8FC;
|
|
L_0239E8FC: ; // 0x239e8fc
|
|
/* 0239E8FC */ _t373 = cpu->r[27] + 0x0000001Cu;
|
|
/* 0239E8FC */ cpu->r[4] = rbrew_read32(cpu->mem, _t373);
|
|
/* 0239E900 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000002u);
|
|
/* 0239E904 */ _t374 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239E904 */ _t375 = _t374 & 0x00000001u;
|
|
/* 0239E904 */ if (_t375) goto L_0239E910; else goto L_0239E908;
|
|
L_0239E908: ; // 0x239e908
|
|
/* 0239E908 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000003u);
|
|
/* 0239E90C */ _t376 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239E90C */ _t377 = _t376 & 0x00000001u;
|
|
/* 0239E90C */ if (_t377) goto L_0239E910; else goto L_0239E8E4;
|
|
L_0239E910: ; // 0x239e910
|
|
/* 0239E910 */ cpu->f[24] = cpu->f[29];
|
|
L_0239E914: ; // 0x239e914
|
|
/* 0239E914 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], cpu->r[31]);
|
|
/* 0239E918 */ _t378 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239E918 */ _t379 = _t378 & 0x00000001u;
|
|
/* 0239E918 */ if (_t379) goto L_0239EA38; else goto L_0239E91C;
|
|
L_0239E91C: ; // 0x239e91c
|
|
/* 0239E91C */ cpu->f[23] = cpu->f[24];
|
|
/* 0239E920 */ cpu->r[26] = 0x00000006u;
|
|
/* 0239E924 */ cpu->r[25] = 0x00000001u;
|
|
L_0239E928: ; // 0x239e928
|
|
/* 0239E928 */ _t380 = cpu->r[27] + 0x00000510u;
|
|
/* 0239E928 */ cpu->r[8] = rbrew_read8(cpu->mem, _t380);
|
|
/* 0239E92C */ /* nop */
|
|
/* 0239E930 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000002u);
|
|
/* 0239E934 */ _t381 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239E934 */ _t382 = _t381 & 0x00000001u;
|
|
/* 0239E934 */ if (_t382) goto L_0239E938; else goto L_0239E9EC;
|
|
L_0239E938: ; // 0x239e938
|
|
/* 0239E938 */ cpu->r[3] = cpu->r[27] + 0x00000078u;
|
|
/* 0239E93C */ Gambit_fn_0239E06C(cpu);
|
|
/* 0239E940 */ _t383 = cpu->r[1] + 0x00000024u;
|
|
/* 0239E940 */ rbrew_write32(cpu->mem, _t383, cpu->r[4]);
|
|
/* 0239E944 */ _t384 = cpu->r[1] + 0x00000024u;
|
|
/* 0239E944 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t384);
|
|
/* 0239E948 */ _t385 = cpu->r[1] + 0x00000020u;
|
|
/* 0239E948 */ rbrew_write32(cpu->mem, _t385, cpu->r[3]);
|
|
/* 0239E94C */ _t386 = cpu->r[29] + 0x00000118u;
|
|
/* 0239E94C */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t386);
|
|
/* 0239E950 */ _t387 = cpu->r[29] + 0x00000114u;
|
|
/* 0239E950 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t387);
|
|
/* 0239E954 */ cpu->f[9] = cpu->f[6] - cpu->f[10];
|
|
/* 0239E958 */ _t388 = cpu->r[1] + 0x00000020u;
|
|
/* 0239E958 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t388);
|
|
/* 0239E95C */ cpu->f[8] = cpu->f[7] - cpu->f[11];
|
|
/* 0239E960 */ cpu->f[0] = cpu->f[9] * cpu->f[9];
|
|
/* 0239E964 */ cpu->f[7] = fma(cpu->f[8], cpu->f[8], cpu->f[0]);
|
|
/* 0239E968 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[7], cpu->f[23]);
|
|
/* 0239E96C */ _t389 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0239E96C */ _t390 = _t389 & 0x00000001u;
|
|
/* 0239E96C */ if (_t390) goto L_0239E980; else goto L_0239E970;
|
|
L_0239E970: ; // 0x239e970
|
|
/* 0239E970 */ cpu->f[6] = cpu->f[23] * cpu->f[7];
|
|
/* 0239E974 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[6], cpu->f[28]);
|
|
/* 0239E978 */ _t391 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0239E978 */ _t392 = _t391 & 0x00000001u;
|
|
/* 0239E978 */ if (_t392) goto L_0239E9EC; else goto L_0239E97C;
|
|
L_0239E97C: ; // 0x239e97c
|
|
/* 0239E97C */ goto L_0239E9AC;
|
|
L_0239E980: ; // 0x239e980
|
|
/* 0239E980 */ _ft393 = sqrt(cpu->f[7]);
|
|
/* 0239E980 */ _ft394 = (double)(int32_t)0x00000001u;
|
|
/* 0239E980 */ cpu->f[25] = _ft394 / _ft393;
|
|
/* 0239E984 */ cpu->f[26] = cpu->f[25] * cpu->f[25];
|
|
/* 0239E988 */ cpu->f[27] = cpu->f[25] * cpu->f[30];
|
|
/* 0239E98C */ cpu->f[26] = -fma(cpu->f[26], cpu->f[7], -(cpu->f[31]));
|
|
/* 0239E990 */ cpu->f[25] = cpu->f[26] * cpu->f[27];
|
|
/* 0239E994 */ cpu->f[6] = cpu->f[25] * cpu->f[7];
|
|
/* 0239E998 */ _t395 = cpu->r[1] + 0x000000A0u;
|
|
/* 0239E998 */ cpu->r[27] = rbrew_read32(cpu->mem, _t395);
|
|
/* 0239E99C */ _t396 = cpu->r[1] + 0x00000098u;
|
|
/* 0239E99C */ cpu->r[31] = rbrew_read32(cpu->mem, _t396);
|
|
/* 0239E9A0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[6], cpu->f[28]);
|
|
/* 0239E9A4 */ _t397 = cpu->r[1] + 0x000000A4u;
|
|
/* 0239E9A4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t397);
|
|
/* 0239E9A8 */ _t398 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0239E9A8 */ _t399 = _t398 & 0x00000001u;
|
|
/* 0239E9A8 */ if (_t399) goto L_0239E9EC; else goto L_0239E9AC;
|
|
L_0239E9AC: ; // 0x239e9ac
|
|
/* 0239E9AC */ _t400 = cpu->r[29] + 0x00000158u;
|
|
/* 0239E9AC */ rbrew_write32(cpu->mem, _t400, cpu->r[27]);
|
|
/* 0239E9B0 */ _t401 = cpu->r[29] + 0x00000160u;
|
|
/* 0239E9B0 */ rbrew_write8(cpu->mem, _t401, (uint8_t)cpu->r[25]);
|
|
/* 0239E9B4 */ _t402 = cpu->r[29] + 0x00000164u;
|
|
/* 0239E9B4 */ rbrew_write32(cpu->mem, _t402, cpu->r[26]);
|
|
/* 0239E9B8 */ _t403 = cpu->r[27] + 0x00000024u;
|
|
/* 0239E9B8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t403);
|
|
/* 0239E9BC */ _t404 = cpu->r[1] + 0x00000020u;
|
|
/* 0239E9BC */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t404);
|
|
/* 0239E9C0 */ _t405 = cpu->r[29] + 0x00000168u;
|
|
/* 0239E9C0 */ rbrew_write32(cpu->mem, _t405, cpu->r[9]);
|
|
/* 0239E9C4 */ _t406 = cpu->r[1] + 0x00000024u;
|
|
/* 0239E9C4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t406);
|
|
/* 0239E9C8 */ _t407 = cpu->r[29] + 0x0000016Cu;
|
|
/* 0239E9C8 */ rbrew_write_f32(cpu->mem, _t407, cpu->f[8]);
|
|
/* 0239E9CC */ _t408 = cpu->r[29] + 0x00000170u;
|
|
/* 0239E9CC */ rbrew_write_f32(cpu->mem, _t408, cpu->f[10]);
|
|
/* 0239E9D0 */ _t409 = cpu->r[27] + 0x00000078u;
|
|
/* 0239E9D0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t409);
|
|
/* 0239E9D4 */ _t410 = cpu->r[29] + 0x00000174u;
|
|
/* 0239E9D4 */ rbrew_write_f32(cpu->mem, _t410, cpu->f[12]);
|
|
/* 0239E9D8 */ _t411 = cpu->r[27] + 0x0000007Cu;
|
|
/* 0239E9D8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t411);
|
|
/* 0239E9DC */ _t412 = cpu->r[29] + 0x00000178u;
|
|
/* 0239E9DC */ rbrew_write_f32(cpu->mem, _t412, cpu->f[0]);
|
|
/* 0239E9E0 */ _t413 = cpu->r[27] + 0x00000080u;
|
|
/* 0239E9E0 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t413);
|
|
/* 0239E9E4 */ cpu->f[28] = cpu->f[6];
|
|
/* 0239E9E8 */ _t414 = cpu->r[29] + 0x0000017Cu;
|
|
/* 0239E9E8 */ rbrew_write_f32(cpu->mem, _t414, cpu->f[8]);
|
|
L_0239E9EC: ; // 0x239e9ec
|
|
/* 0239E9EC */ cpu->r[5] = cpu->r[27] + cpu->r[30];
|
|
/* 0239E9F0 */ _t415 = cpu->r[5] + 0x00000004u;
|
|
/* 0239E9F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t415);
|
|
/* 0239E9F4 */ cpu->r[27] = cpu->r[0] - cpu->r[30];
|
|
/* 0239E9F8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], cpu->r[31]);
|
|
/* 0239E9FC */ _t416 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239E9FC */ _t417 = _t416 & 0x00000001u;
|
|
/* 0239E9FC */ if (_t417) goto L_0239EA00; else goto L_0239EA10;
|
|
L_0239EA00: ; // 0x239ea00
|
|
/* 0239EA00 */ _t418 = cpu->r[28] + 0x00000000u;
|
|
/* 0239EA00 */ cpu->r[8] = rbrew_read32(cpu->mem, _t418);
|
|
/* 0239EA04 */ _t419 = cpu->r[1] + 0x000000A0u;
|
|
/* 0239EA04 */ rbrew_write32(cpu->mem, _t419, cpu->r[27]);
|
|
/* 0239EA08 */ _t420 = cpu->r[8] + 0x00000264u;
|
|
/* 0239EA08 */ cpu->r[7] = rbrew_read32(cpu->mem, _t420);
|
|
/* 0239EA0C */ goto L_0239EA40;
|
|
L_0239EA10: ; // 0x239ea10
|
|
/* 0239EA10 */ _t421 = cpu->r[27] + 0x0000001Cu;
|
|
/* 0239EA10 */ cpu->r[5] = rbrew_read32(cpu->mem, _t421);
|
|
/* 0239EA14 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000002u);
|
|
/* 0239EA18 */ _t422 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239EA18 */ _t423 = _t422 & 0x00000001u;
|
|
/* 0239EA18 */ if (_t423) goto L_0239EA2C; else goto L_0239EA1C;
|
|
L_0239EA1C: ; // 0x239ea1c
|
|
/* 0239EA1C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000003u);
|
|
/* 0239EA20 */ _t424 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239EA20 */ _t425 = _t424 & 0x00000001u;
|
|
/* 0239EA20 */ if (_t425) goto L_0239EA24; else goto L_0239E9EC;
|
|
L_0239EA24: ; // 0x239ea24
|
|
/* 0239EA24 */ _t426 = cpu->r[1] + 0x000000A0u;
|
|
/* 0239EA24 */ rbrew_write32(cpu->mem, _t426, cpu->r[27]);
|
|
/* 0239EA28 */ goto L_0239E914;
|
|
L_0239EA2C: ; // 0x239ea2c
|
|
/* 0239EA2C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], cpu->r[31]);
|
|
/* 0239EA30 */ _t427 = cpu->r[1] + 0x000000A0u;
|
|
/* 0239EA30 */ rbrew_write32(cpu->mem, _t427, cpu->r[27]);
|
|
/* 0239EA34 */ _t428 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239EA34 */ _t429 = _t428 & 0x00000001u;
|
|
/* 0239EA34 */ if (_t429) goto L_0239EA38; else goto L_0239E928;
|
|
L_0239EA38: ; // 0x239ea38
|
|
/* 0239EA38 */ _t430 = cpu->r[28] + 0x00000000u;
|
|
/* 0239EA38 */ cpu->r[8] = rbrew_read32(cpu->mem, _t430);
|
|
/* 0239EA3C */ _t431 = cpu->r[8] + 0x00000264u;
|
|
/* 0239EA3C */ cpu->r[7] = rbrew_read32(cpu->mem, _t431);
|
|
L_0239EA40: ; // 0x239ea40
|
|
/* 0239EA40 */ _t432 = cpu->r[7] + 0x00000030u;
|
|
/* 0239EA40 */ cpu->r[11] = rbrew_read32(cpu->mem, _t432);
|
|
/* 0239EA44 */ _t433 = cpu->r[11] + 0x00000064u;
|
|
/* 0239EA44 */ cpu->r[4] = rbrew_read32(cpu->mem, _t433);
|
|
/* 0239EA48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 0239EA4C */ _t434 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239EA4C */ _t435 = _t434 & 0x00000001u;
|
|
/* 0239EA4C */ if (_t435) goto L_0239EC04; else goto L_0239EA50;
|
|
L_0239EA50: ; // 0x239ea50
|
|
/* 0239EA50 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0239EA54 */ _t436 = cpu->r[12] + 0x00006490u;
|
|
/* 0239EA54 */ cpu->r[12] = rbrew_read32(cpu->mem, _t436);
|
|
/* 0239EA58 */ cpu->r[5] = cpu->r[7] + cpu->r[12];
|
|
/* 0239EA5C */ _t437 = cpu->r[5] + 0x00000104u;
|
|
/* 0239EA5C */ cpu->r[8] = rbrew_read8(cpu->mem, _t437);
|
|
/* 0239EA60 */ _t438 = cpu->r[7] + 0x00000030u;
|
|
/* 0239EA60 */ cpu->r[9] = rbrew_read32(cpu->mem, _t438);
|
|
/* 0239EA64 */ cpu->r[7] = rbrew_rlwinm(cpu->r[8], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239EA68 */ _t439 = cpu->r[7] + cpu->r[9];
|
|
/* 0239EA68 */ cpu->r[10] = rbrew_read32(cpu->mem, _t439);
|
|
/* 0239EA6C */ _t440 = cpu->r[10] + 0x00000008u;
|
|
/* 0239EA6C */ cpu->r[5] = rbrew_read32(cpu->mem, _t440);
|
|
/* 0239EA70 */ _t441 = cpu->r[5] + 0x00000004u;
|
|
/* 0239EA70 */ cpu->r[11] = rbrew_read32(cpu->mem, _t441);
|
|
/* 0239EA74 */ _t442 = cpu->r[5] + 0x0000000Cu;
|
|
/* 0239EA74 */ cpu->r[0] = rbrew_read32(cpu->mem, _t442);
|
|
/* 0239EA78 */ cpu->r[27] = cpu->r[11] - cpu->r[0];
|
|
/* 0239EA7C */ _t443 = cpu->r[1] + 0x0000012Cu;
|
|
/* 0239EA7C */ rbrew_write32(cpu->mem, _t443, cpu->r[27]);
|
|
/* 0239EA80 */ _t444 = cpu->r[5] + 0x0000000Cu;
|
|
/* 0239EA80 */ cpu->r[30] = rbrew_read32(cpu->mem, _t444);
|
|
/* 0239EA84 */ _t445 = cpu->r[1] + 0x000000A8u;
|
|
/* 0239EA84 */ rbrew_write32(cpu->mem, _t445, cpu->r[27]);
|
|
/* 0239EA88 */ _t446 = cpu->r[1] + 0x00000130u;
|
|
/* 0239EA88 */ rbrew_write32(cpu->mem, _t446, cpu->r[30]);
|
|
/* 0239EA8C */ _t447 = cpu->r[1] + 0x000000ACu;
|
|
/* 0239EA8C */ rbrew_write32(cpu->mem, _t447, cpu->r[30]);
|
|
/* 0239EA90 */ _t448 = cpu->r[5] + 0x0000000Cu;
|
|
/* 0239EA90 */ cpu->r[9] = rbrew_read32(cpu->mem, _t448);
|
|
/* 0239EA94 */ cpu->r[31] = cpu->r[5] - cpu->r[9];
|
|
/* 0239EA98 */ _t449 = cpu->r[1] + 0x0000016Cu;
|
|
/* 0239EA98 */ rbrew_write32(cpu->mem, _t449, cpu->r[31]);
|
|
/* 0239EA9C */ _t450 = cpu->r[5] + 0x0000000Cu;
|
|
/* 0239EA9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t450);
|
|
/* 0239EAA0 */ _t451 = cpu->r[1] + 0x000000B0u;
|
|
/* 0239EAA0 */ rbrew_write32(cpu->mem, _t451, cpu->r[31]);
|
|
/* 0239EAA4 */ _t452 = cpu->r[1] + 0x00000170u;
|
|
/* 0239EAA4 */ rbrew_write32(cpu->mem, _t452, cpu->r[0]);
|
|
/* 0239EAA8 */ _t453 = cpu->r[1] + 0x000000B8u;
|
|
/* 0239EAA8 */ rbrew_write32(cpu->mem, _t453, cpu->r[27]);
|
|
/* 0239EAAC */ _t454 = cpu->r[1] + 0x000000B4u;
|
|
/* 0239EAAC */ rbrew_write32(cpu->mem, _t454, cpu->r[0]);
|
|
/* 0239EAB0 */ _t455 = cpu->r[1] + 0x000000BCu;
|
|
/* 0239EAB0 */ rbrew_write32(cpu->mem, _t455, cpu->r[30]);
|
|
/* 0239EAB4 */ goto L_0239EAC8;
|
|
L_0239EAB8: ; // 0x239eab8
|
|
/* 0239EAB8 */ cpu->r[7] = cpu->r[27] + cpu->r[30];
|
|
/* 0239EABC */ _t456 = cpu->r[7] + 0x00000004u;
|
|
/* 0239EABC */ cpu->r[8] = rbrew_read32(cpu->mem, _t456);
|
|
/* 0239EAC0 */ cpu->r[27] = cpu->r[8] - cpu->r[30];
|
|
/* 0239EAC4 */ _t457 = cpu->r[1] + 0x000000B8u;
|
|
/* 0239EAC4 */ rbrew_write32(cpu->mem, _t457, cpu->r[27]);
|
|
L_0239EAC8: ; // 0x239eac8
|
|
/* 0239EAC8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], cpu->r[31]);
|
|
/* 0239EACC */ _t458 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239EACC */ _t459 = _t458 & 0x00000001u;
|
|
/* 0239EACC */ if (_t459) goto L_0239EAE4; else goto L_0239EAD0;
|
|
L_0239EAD0: ; // 0x239ead0
|
|
/* 0239EAD0 */ _t460 = cpu->r[27] + 0x0000001Cu;
|
|
/* 0239EAD0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t460);
|
|
/* 0239EAD4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000002u);
|
|
/* 0239EAD8 */ _t461 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239EAD8 */ _t462 = _t461 & 0x00000001u;
|
|
/* 0239EAD8 */ if (_t462) goto L_0239EAE4; else goto L_0239EADC;
|
|
L_0239EADC: ; // 0x239eadc
|
|
/* 0239EADC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000003u);
|
|
/* 0239EAE0 */ _t463 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239EAE0 */ _t464 = _t463 & 0x00000001u;
|
|
/* 0239EAE0 */ if (_t464) goto L_0239EAE4; else goto L_0239EAB8;
|
|
L_0239EAE4: ; // 0x239eae4
|
|
/* 0239EAE4 */ cpu->f[24] = cpu->f[29];
|
|
L_0239EAE8: ; // 0x239eae8
|
|
/* 0239EAE8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], cpu->r[31]);
|
|
/* 0239EAEC */ _t465 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239EAEC */ _t466 = _t465 & 0x00000001u;
|
|
/* 0239EAEC */ if (_t466) goto L_0239EBFC; else goto L_0239EAF0;
|
|
L_0239EAF0: ; // 0x239eaf0
|
|
/* 0239EAF0 */ cpu->f[23] = cpu->f[24];
|
|
/* 0239EAF4 */ cpu->r[26] = 0x00000007u;
|
|
/* 0239EAF8 */ cpu->r[25] = 0x00000001u;
|
|
L_0239EAFC: ; // 0x239eafc
|
|
/* 0239EAFC */ cpu->r[3] = cpu->r[27] + 0x00000078u;
|
|
/* 0239EB00 */ Gambit_fn_0239E06C(cpu);
|
|
/* 0239EB04 */ _t467 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0239EB04 */ rbrew_write32(cpu->mem, _t467, cpu->r[4]);
|
|
/* 0239EB08 */ _t468 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0239EB08 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t468);
|
|
/* 0239EB0C */ _t469 = cpu->r[1] + 0x00000028u;
|
|
/* 0239EB0C */ rbrew_write32(cpu->mem, _t469, cpu->r[3]);
|
|
/* 0239EB10 */ _t470 = cpu->r[29] + 0x00000118u;
|
|
/* 0239EB10 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t470);
|
|
/* 0239EB14 */ _t471 = cpu->r[29] + 0x00000114u;
|
|
/* 0239EB14 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t471);
|
|
/* 0239EB18 */ cpu->f[13] = cpu->f[10] - cpu->f[13];
|
|
/* 0239EB1C */ _t472 = cpu->r[1] + 0x00000028u;
|
|
/* 0239EB1C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t472);
|
|
/* 0239EB20 */ cpu->f[12] = cpu->f[0] - cpu->f[8];
|
|
/* 0239EB24 */ cpu->f[7] = cpu->f[13] * cpu->f[13];
|
|
/* 0239EB28 */ cpu->f[11] = fma(cpu->f[12], cpu->f[12], cpu->f[7]);
|
|
/* 0239EB2C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[23]);
|
|
/* 0239EB30 */ _t473 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0239EB30 */ _t474 = _t473 & 0x00000001u;
|
|
/* 0239EB30 */ if (_t474) goto L_0239EB44; else goto L_0239EB34;
|
|
L_0239EB34: ; // 0x239eb34
|
|
/* 0239EB34 */ cpu->f[9] = cpu->f[23] * cpu->f[11];
|
|
/* 0239EB38 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[28]);
|
|
/* 0239EB3C */ _t475 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0239EB3C */ _t476 = _t475 & 0x00000001u;
|
|
/* 0239EB3C */ if (_t476) goto L_0239EBB0; else goto L_0239EB40;
|
|
L_0239EB40: ; // 0x239eb40
|
|
/* 0239EB40 */ goto L_0239EB70;
|
|
L_0239EB44: ; // 0x239eb44
|
|
/* 0239EB44 */ _ft477 = sqrt(cpu->f[11]);
|
|
/* 0239EB44 */ _ft478 = (double)(int32_t)0x00000001u;
|
|
/* 0239EB44 */ cpu->f[25] = _ft478 / _ft477;
|
|
/* 0239EB48 */ cpu->f[26] = cpu->f[25] * cpu->f[25];
|
|
/* 0239EB4C */ cpu->f[27] = cpu->f[25] * cpu->f[30];
|
|
/* 0239EB50 */ cpu->f[26] = -fma(cpu->f[26], cpu->f[11], -(cpu->f[31]));
|
|
/* 0239EB54 */ cpu->f[25] = cpu->f[26] * cpu->f[27];
|
|
/* 0239EB58 */ cpu->f[9] = cpu->f[25] * cpu->f[11];
|
|
/* 0239EB5C */ _t479 = cpu->r[1] + 0x000000B8u;
|
|
/* 0239EB5C */ cpu->r[27] = rbrew_read32(cpu->mem, _t479);
|
|
/* 0239EB60 */ _t480 = cpu->r[1] + 0x000000B0u;
|
|
/* 0239EB60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t480);
|
|
/* 0239EB64 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[28]);
|
|
/* 0239EB68 */ _t481 = cpu->r[1] + 0x000000BCu;
|
|
/* 0239EB68 */ cpu->r[30] = rbrew_read32(cpu->mem, _t481);
|
|
/* 0239EB6C */ _t482 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0239EB6C */ _t483 = _t482 & 0x00000001u;
|
|
/* 0239EB6C */ if (_t483) goto L_0239EBB0; else goto L_0239EB70;
|
|
L_0239EB70: ; // 0x239eb70
|
|
/* 0239EB70 */ _t484 = cpu->r[29] + 0x00000158u;
|
|
/* 0239EB70 */ rbrew_write32(cpu->mem, _t484, cpu->r[27]);
|
|
/* 0239EB74 */ _t485 = cpu->r[29] + 0x00000160u;
|
|
/* 0239EB74 */ rbrew_write8(cpu->mem, _t485, (uint8_t)cpu->r[25]);
|
|
/* 0239EB78 */ _t486 = cpu->r[29] + 0x00000164u;
|
|
/* 0239EB78 */ rbrew_write32(cpu->mem, _t486, cpu->r[26]);
|
|
/* 0239EB7C */ _t487 = cpu->r[27] + 0x00000024u;
|
|
/* 0239EB7C */ cpu->r[9] = rbrew_read32(cpu->mem, _t487);
|
|
/* 0239EB80 */ _t488 = cpu->r[1] + 0x00000028u;
|
|
/* 0239EB80 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t488);
|
|
/* 0239EB84 */ _t489 = cpu->r[29] + 0x00000168u;
|
|
/* 0239EB84 */ rbrew_write32(cpu->mem, _t489, cpu->r[9]);
|
|
/* 0239EB88 */ _t490 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0239EB88 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t490);
|
|
/* 0239EB8C */ _t491 = cpu->r[29] + 0x0000016Cu;
|
|
/* 0239EB8C */ rbrew_write_f32(cpu->mem, _t491, cpu->f[0]);
|
|
/* 0239EB90 */ _t492 = cpu->r[29] + 0x00000170u;
|
|
/* 0239EB90 */ rbrew_write_f32(cpu->mem, _t492, cpu->f[8]);
|
|
/* 0239EB94 */ _t493 = cpu->r[27] + 0x00000078u;
|
|
/* 0239EB94 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t493);
|
|
/* 0239EB98 */ _t494 = cpu->r[29] + 0x00000174u;
|
|
/* 0239EB98 */ rbrew_write_f32(cpu->mem, _t494, cpu->f[12]);
|
|
/* 0239EB9C */ _t495 = cpu->r[27] + 0x0000007Cu;
|
|
/* 0239EB9C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t495);
|
|
/* 0239EBA0 */ _t496 = cpu->r[29] + 0x00000178u;
|
|
/* 0239EBA0 */ rbrew_write_f32(cpu->mem, _t496, cpu->f[0]);
|
|
/* 0239EBA4 */ _t497 = cpu->r[27] + 0x00000080u;
|
|
/* 0239EBA4 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t497);
|
|
/* 0239EBA8 */ cpu->f[28] = cpu->f[9];
|
|
/* 0239EBAC */ _t498 = cpu->r[29] + 0x0000017Cu;
|
|
/* 0239EBAC */ rbrew_write_f32(cpu->mem, _t498, cpu->f[7]);
|
|
L_0239EBB0: ; // 0x239ebb0
|
|
/* 0239EBB0 */ cpu->r[6] = cpu->r[27] + cpu->r[30];
|
|
/* 0239EBB4 */ _t499 = cpu->r[6] + 0x00000004u;
|
|
/* 0239EBB4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t499);
|
|
/* 0239EBB8 */ cpu->r[27] = cpu->r[0] - cpu->r[30];
|
|
/* 0239EBBC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], cpu->r[31]);
|
|
/* 0239EBC0 */ _t500 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239EBC0 */ _t501 = _t500 & 0x00000001u;
|
|
/* 0239EBC0 */ if (_t501) goto L_0239EBC4; else goto L_0239EBD4;
|
|
L_0239EBC4: ; // 0x239ebc4
|
|
/* 0239EBC4 */ _t502 = cpu->r[28] + 0x00000000u;
|
|
/* 0239EBC4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t502);
|
|
/* 0239EBC8 */ _t503 = cpu->r[1] + 0x000000B8u;
|
|
/* 0239EBC8 */ rbrew_write32(cpu->mem, _t503, cpu->r[27]);
|
|
/* 0239EBCC */ _t504 = cpu->r[8] + 0x00000264u;
|
|
/* 0239EBCC */ cpu->r[7] = rbrew_read32(cpu->mem, _t504);
|
|
/* 0239EBD0 */ goto L_0239EC04;
|
|
L_0239EBD4: ; // 0x239ebd4
|
|
/* 0239EBD4 */ _t505 = cpu->r[27] + 0x0000001Cu;
|
|
/* 0239EBD4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t505);
|
|
/* 0239EBD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000002u);
|
|
/* 0239EBDC */ _t506 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239EBDC */ _t507 = _t506 & 0x00000001u;
|
|
/* 0239EBDC */ if (_t507) goto L_0239EBF0; else goto L_0239EBE0;
|
|
L_0239EBE0: ; // 0x239ebe0
|
|
/* 0239EBE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000003u);
|
|
/* 0239EBE4 */ _t508 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239EBE4 */ _t509 = _t508 & 0x00000001u;
|
|
/* 0239EBE4 */ if (_t509) goto L_0239EBE8; else goto L_0239EBB0;
|
|
L_0239EBE8: ; // 0x239ebe8
|
|
/* 0239EBE8 */ _t510 = cpu->r[1] + 0x000000B8u;
|
|
/* 0239EBE8 */ rbrew_write32(cpu->mem, _t510, cpu->r[27]);
|
|
/* 0239EBEC */ goto L_0239EAE8;
|
|
L_0239EBF0: ; // 0x239ebf0
|
|
/* 0239EBF0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], cpu->r[31]);
|
|
/* 0239EBF4 */ _t511 = cpu->r[1] + 0x000000B8u;
|
|
/* 0239EBF4 */ rbrew_write32(cpu->mem, _t511, cpu->r[27]);
|
|
/* 0239EBF8 */ _t512 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239EBF8 */ _t513 = _t512 & 0x00000001u;
|
|
/* 0239EBF8 */ if (_t513) goto L_0239EBFC; else goto L_0239EAFC;
|
|
L_0239EBFC: ; // 0x239ebfc
|
|
/* 0239EBFC */ _t514 = cpu->r[28] + 0x00000000u;
|
|
/* 0239EBFC */ cpu->r[8] = rbrew_read32(cpu->mem, _t514);
|
|
/* 0239EC00 */ _t515 = cpu->r[8] + 0x00000264u;
|
|
/* 0239EC00 */ cpu->r[7] = rbrew_read32(cpu->mem, _t515);
|
|
L_0239EC04: ; // 0x239ec04
|
|
/* 0239EC04 */ _t516 = cpu->r[7] + 0x00000030u;
|
|
/* 0239EC04 */ cpu->r[4] = rbrew_read32(cpu->mem, _t516);
|
|
/* 0239EC08 */ _t517 = cpu->r[4] + 0x000000E4u;
|
|
/* 0239EC08 */ cpu->r[5] = rbrew_read32(cpu->mem, _t517);
|
|
/* 0239EC0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 0239EC10 */ _t518 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239EC10 */ _t519 = _t518 & 0x00000001u;
|
|
/* 0239EC10 */ if (_t519) goto L_0239EDC8; else goto L_0239EC14;
|
|
L_0239EC14: ; // 0x239ec14
|
|
/* 0239EC14 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0239EC18 */ _t520 = cpu->r[12] + 0x0000647Cu;
|
|
/* 0239EC18 */ cpu->r[12] = rbrew_read32(cpu->mem, _t520);
|
|
/* 0239EC1C */ cpu->r[6] = cpu->r[7] + cpu->r[12];
|
|
/* 0239EC20 */ _t521 = cpu->r[6] + 0x00000104u;
|
|
/* 0239EC20 */ cpu->r[8] = rbrew_read8(cpu->mem, _t521);
|
|
/* 0239EC24 */ _t522 = cpu->r[7] + 0x00000030u;
|
|
/* 0239EC24 */ cpu->r[9] = rbrew_read32(cpu->mem, _t522);
|
|
/* 0239EC28 */ cpu->r[7] = rbrew_rlwinm(cpu->r[8], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239EC2C */ _t523 = cpu->r[7] + cpu->r[9];
|
|
/* 0239EC2C */ cpu->r[10] = rbrew_read32(cpu->mem, _t523);
|
|
/* 0239EC30 */ _t524 = cpu->r[10] + 0x00000008u;
|
|
/* 0239EC30 */ cpu->r[6] = rbrew_read32(cpu->mem, _t524);
|
|
/* 0239EC34 */ _t525 = cpu->r[6] + 0x00000004u;
|
|
/* 0239EC34 */ cpu->r[11] = rbrew_read32(cpu->mem, _t525);
|
|
/* 0239EC38 */ _t526 = cpu->r[6] + 0x0000000Cu;
|
|
/* 0239EC38 */ cpu->r[0] = rbrew_read32(cpu->mem, _t526);
|
|
/* 0239EC3C */ cpu->r[27] = cpu->r[11] - cpu->r[0];
|
|
/* 0239EC40 */ _t527 = cpu->r[1] + 0x00000134u;
|
|
/* 0239EC40 */ rbrew_write32(cpu->mem, _t527, cpu->r[27]);
|
|
/* 0239EC44 */ _t528 = cpu->r[6] + 0x0000000Cu;
|
|
/* 0239EC44 */ cpu->r[30] = rbrew_read32(cpu->mem, _t528);
|
|
/* 0239EC48 */ _t529 = cpu->r[1] + 0x000000C0u;
|
|
/* 0239EC48 */ rbrew_write32(cpu->mem, _t529, cpu->r[27]);
|
|
/* 0239EC4C */ _t530 = cpu->r[1] + 0x00000138u;
|
|
/* 0239EC4C */ rbrew_write32(cpu->mem, _t530, cpu->r[30]);
|
|
/* 0239EC50 */ _t531 = cpu->r[1] + 0x000000C4u;
|
|
/* 0239EC50 */ rbrew_write32(cpu->mem, _t531, cpu->r[30]);
|
|
/* 0239EC54 */ _t532 = cpu->r[6] + 0x0000000Cu;
|
|
/* 0239EC54 */ cpu->r[9] = rbrew_read32(cpu->mem, _t532);
|
|
/* 0239EC58 */ cpu->r[31] = cpu->r[6] - cpu->r[9];
|
|
/* 0239EC5C */ _t533 = cpu->r[1] + 0x00000174u;
|
|
/* 0239EC5C */ rbrew_write32(cpu->mem, _t533, cpu->r[31]);
|
|
/* 0239EC60 */ _t534 = cpu->r[6] + 0x0000000Cu;
|
|
/* 0239EC60 */ cpu->r[0] = rbrew_read32(cpu->mem, _t534);
|
|
/* 0239EC64 */ _t535 = cpu->r[1] + 0x000000C8u;
|
|
/* 0239EC64 */ rbrew_write32(cpu->mem, _t535, cpu->r[31]);
|
|
/* 0239EC68 */ _t536 = cpu->r[1] + 0x00000178u;
|
|
/* 0239EC68 */ rbrew_write32(cpu->mem, _t536, cpu->r[0]);
|
|
/* 0239EC6C */ _t537 = cpu->r[1] + 0x000000D0u;
|
|
/* 0239EC6C */ rbrew_write32(cpu->mem, _t537, cpu->r[27]);
|
|
/* 0239EC70 */ _t538 = cpu->r[1] + 0x000000CCu;
|
|
/* 0239EC70 */ rbrew_write32(cpu->mem, _t538, cpu->r[0]);
|
|
/* 0239EC74 */ _t539 = cpu->r[1] + 0x000000D4u;
|
|
/* 0239EC74 */ rbrew_write32(cpu->mem, _t539, cpu->r[30]);
|
|
/* 0239EC78 */ goto L_0239EC8C;
|
|
L_0239EC7C: ; // 0x239ec7c
|
|
/* 0239EC7C */ cpu->r[7] = cpu->r[27] + cpu->r[30];
|
|
/* 0239EC80 */ _t540 = cpu->r[7] + 0x00000004u;
|
|
/* 0239EC80 */ cpu->r[9] = rbrew_read32(cpu->mem, _t540);
|
|
/* 0239EC84 */ cpu->r[27] = cpu->r[9] - cpu->r[30];
|
|
/* 0239EC88 */ _t541 = cpu->r[1] + 0x000000D0u;
|
|
/* 0239EC88 */ rbrew_write32(cpu->mem, _t541, cpu->r[27]);
|
|
L_0239EC8C: ; // 0x239ec8c
|
|
/* 0239EC8C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], cpu->r[31]);
|
|
/* 0239EC90 */ _t542 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239EC90 */ _t543 = _t542 & 0x00000001u;
|
|
/* 0239EC90 */ if (_t543) goto L_0239ECA8; else goto L_0239EC94;
|
|
L_0239EC94: ; // 0x239ec94
|
|
/* 0239EC94 */ _t544 = cpu->r[27] + 0x0000001Cu;
|
|
/* 0239EC94 */ cpu->r[9] = rbrew_read32(cpu->mem, _t544);
|
|
/* 0239EC98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000002u);
|
|
/* 0239EC9C */ _t545 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239EC9C */ _t546 = _t545 & 0x00000001u;
|
|
/* 0239EC9C */ if (_t546) goto L_0239ECA8; else goto L_0239ECA0;
|
|
L_0239ECA0: ; // 0x239eca0
|
|
/* 0239ECA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000003u);
|
|
/* 0239ECA4 */ _t547 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239ECA4 */ _t548 = _t547 & 0x00000001u;
|
|
/* 0239ECA4 */ if (_t548) goto L_0239ECA8; else goto L_0239EC7C;
|
|
L_0239ECA8: ; // 0x239eca8
|
|
/* 0239ECA8 */ cpu->f[27] = cpu->f[29];
|
|
L_0239ECAC: ; // 0x239ecac
|
|
/* 0239ECAC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], cpu->r[31]);
|
|
/* 0239ECB0 */ _t549 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239ECB0 */ _t550 = _t549 & 0x00000001u;
|
|
/* 0239ECB0 */ if (_t550) goto L_0239EDC0; else goto L_0239ECB4;
|
|
L_0239ECB4: ; // 0x239ecb4
|
|
/* 0239ECB4 */ cpu->f[26] = cpu->f[27];
|
|
/* 0239ECB8 */ cpu->r[26] = 0x00000008u;
|
|
/* 0239ECBC */ cpu->r[25] = 0x00000001u;
|
|
L_0239ECC0: ; // 0x239ecc0
|
|
/* 0239ECC0 */ cpu->r[3] = cpu->r[27] + 0x00000078u;
|
|
/* 0239ECC4 */ Gambit_fn_0239E06C(cpu);
|
|
/* 0239ECC8 */ _t551 = cpu->r[1] + 0x00000034u;
|
|
/* 0239ECC8 */ rbrew_write32(cpu->mem, _t551, cpu->r[4]);
|
|
/* 0239ECCC */ _t552 = cpu->r[1] + 0x00000034u;
|
|
/* 0239ECCC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t552);
|
|
/* 0239ECD0 */ _t553 = cpu->r[1] + 0x00000030u;
|
|
/* 0239ECD0 */ rbrew_write32(cpu->mem, _t553, cpu->r[3]);
|
|
/* 0239ECD4 */ _t554 = cpu->r[29] + 0x00000118u;
|
|
/* 0239ECD4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t554);
|
|
/* 0239ECD8 */ _t555 = cpu->r[29] + 0x00000114u;
|
|
/* 0239ECD8 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t555);
|
|
/* 0239ECDC */ cpu->f[13] = cpu->f[12] - cpu->f[13];
|
|
/* 0239ECE0 */ _t556 = cpu->r[1] + 0x00000030u;
|
|
/* 0239ECE0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t556);
|
|
/* 0239ECE4 */ cpu->f[12] = cpu->f[9] - cpu->f[11];
|
|
/* 0239ECE8 */ cpu->f[6] = cpu->f[13] * cpu->f[13];
|
|
/* 0239ECEC */ cpu->f[11] = fma(cpu->f[12], cpu->f[12], cpu->f[6]);
|
|
/* 0239ECF0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[26]);
|
|
/* 0239ECF4 */ _t557 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0239ECF4 */ _t558 = _t557 & 0x00000001u;
|
|
/* 0239ECF4 */ if (_t558) goto L_0239ED08; else goto L_0239ECF8;
|
|
L_0239ECF8: ; // 0x239ecf8
|
|
/* 0239ECF8 */ cpu->f[10] = cpu->f[26] * cpu->f[11];
|
|
/* 0239ECFC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[28]);
|
|
/* 0239ED00 */ _t559 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0239ED00 */ _t560 = _t559 & 0x00000001u;
|
|
/* 0239ED00 */ if (_t560) goto L_0239ED74; else goto L_0239ED04;
|
|
L_0239ED04: ; // 0x239ed04
|
|
/* 0239ED04 */ goto L_0239ED34;
|
|
L_0239ED08: ; // 0x239ed08
|
|
/* 0239ED08 */ _ft561 = sqrt(cpu->f[11]);
|
|
/* 0239ED08 */ _ft562 = (double)(int32_t)0x00000001u;
|
|
/* 0239ED08 */ cpu->f[23] = _ft562 / _ft561;
|
|
/* 0239ED0C */ cpu->f[24] = cpu->f[23] * cpu->f[23];
|
|
/* 0239ED10 */ cpu->f[25] = cpu->f[23] * cpu->f[30];
|
|
/* 0239ED14 */ cpu->f[24] = -fma(cpu->f[24], cpu->f[11], -(cpu->f[31]));
|
|
/* 0239ED18 */ cpu->f[23] = cpu->f[24] * cpu->f[25];
|
|
/* 0239ED1C */ cpu->f[10] = cpu->f[23] * cpu->f[11];
|
|
/* 0239ED20 */ _t563 = cpu->r[1] + 0x000000D0u;
|
|
/* 0239ED20 */ cpu->r[27] = rbrew_read32(cpu->mem, _t563);
|
|
/* 0239ED24 */ _t564 = cpu->r[1] + 0x000000C8u;
|
|
/* 0239ED24 */ cpu->r[31] = rbrew_read32(cpu->mem, _t564);
|
|
/* 0239ED28 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[28]);
|
|
/* 0239ED2C */ _t565 = cpu->r[1] + 0x000000D4u;
|
|
/* 0239ED2C */ cpu->r[30] = rbrew_read32(cpu->mem, _t565);
|
|
/* 0239ED30 */ _t566 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0239ED30 */ _t567 = _t566 & 0x00000001u;
|
|
/* 0239ED30 */ if (_t567) goto L_0239ED74; else goto L_0239ED34;
|
|
L_0239ED34: ; // 0x239ed34
|
|
/* 0239ED34 */ _t568 = cpu->r[29] + 0x00000158u;
|
|
/* 0239ED34 */ rbrew_write32(cpu->mem, _t568, cpu->r[27]);
|
|
/* 0239ED38 */ _t569 = cpu->r[29] + 0x00000160u;
|
|
/* 0239ED38 */ rbrew_write8(cpu->mem, _t569, (uint8_t)cpu->r[25]);
|
|
/* 0239ED3C */ _t570 = cpu->r[29] + 0x00000164u;
|
|
/* 0239ED3C */ rbrew_write32(cpu->mem, _t570, cpu->r[26]);
|
|
/* 0239ED40 */ _t571 = cpu->r[27] + 0x00000024u;
|
|
/* 0239ED40 */ cpu->r[0] = rbrew_read32(cpu->mem, _t571);
|
|
/* 0239ED44 */ _t572 = cpu->r[1] + 0x00000030u;
|
|
/* 0239ED44 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t572);
|
|
/* 0239ED48 */ _t573 = cpu->r[29] + 0x00000168u;
|
|
/* 0239ED48 */ rbrew_write32(cpu->mem, _t573, cpu->r[0]);
|
|
/* 0239ED4C */ _t574 = cpu->r[1] + 0x00000034u;
|
|
/* 0239ED4C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t574);
|
|
/* 0239ED50 */ _t575 = cpu->r[29] + 0x0000016Cu;
|
|
/* 0239ED50 */ rbrew_write_f32(cpu->mem, _t575, cpu->f[9]);
|
|
/* 0239ED54 */ _t576 = cpu->r[29] + 0x00000170u;
|
|
/* 0239ED54 */ rbrew_write_f32(cpu->mem, _t576, cpu->f[11]);
|
|
/* 0239ED58 */ _t577 = cpu->r[27] + 0x00000078u;
|
|
/* 0239ED58 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t577);
|
|
/* 0239ED5C */ _t578 = cpu->r[29] + 0x00000174u;
|
|
/* 0239ED5C */ rbrew_write_f32(cpu->mem, _t578, cpu->f[13]);
|
|
/* 0239ED60 */ _t579 = cpu->r[27] + 0x0000007Cu;
|
|
/* 0239ED60 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t579);
|
|
/* 0239ED64 */ _t580 = cpu->r[29] + 0x00000178u;
|
|
/* 0239ED64 */ rbrew_write_f32(cpu->mem, _t580, cpu->f[7]);
|
|
/* 0239ED68 */ _t581 = cpu->r[27] + 0x00000080u;
|
|
/* 0239ED68 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t581);
|
|
/* 0239ED6C */ cpu->f[28] = cpu->f[10];
|
|
/* 0239ED70 */ _t582 = cpu->r[29] + 0x0000017Cu;
|
|
/* 0239ED70 */ rbrew_write_f32(cpu->mem, _t582, cpu->f[8]);
|
|
L_0239ED74: ; // 0x239ed74
|
|
/* 0239ED74 */ cpu->r[7] = cpu->r[27] + cpu->r[30];
|
|
/* 0239ED78 */ _t583 = cpu->r[7] + 0x00000004u;
|
|
/* 0239ED78 */ cpu->r[0] = rbrew_read32(cpu->mem, _t583);
|
|
/* 0239ED7C */ cpu->r[27] = cpu->r[0] - cpu->r[30];
|
|
/* 0239ED80 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], cpu->r[31]);
|
|
/* 0239ED84 */ _t584 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239ED84 */ _t585 = _t584 & 0x00000001u;
|
|
/* 0239ED84 */ if (_t585) goto L_0239ED88; else goto L_0239ED98;
|
|
L_0239ED88: ; // 0x239ed88
|
|
/* 0239ED88 */ _t586 = cpu->r[28] + 0x00000000u;
|
|
/* 0239ED88 */ cpu->r[8] = rbrew_read32(cpu->mem, _t586);
|
|
/* 0239ED8C */ _t587 = cpu->r[1] + 0x000000D0u;
|
|
/* 0239ED8C */ rbrew_write32(cpu->mem, _t587, cpu->r[27]);
|
|
/* 0239ED90 */ _t588 = cpu->r[8] + 0x00000264u;
|
|
/* 0239ED90 */ cpu->r[7] = rbrew_read32(cpu->mem, _t588);
|
|
/* 0239ED94 */ goto L_0239EDC8;
|
|
L_0239ED98: ; // 0x239ed98
|
|
/* 0239ED98 */ _t589 = cpu->r[27] + 0x0000001Cu;
|
|
/* 0239ED98 */ cpu->r[10] = rbrew_read32(cpu->mem, _t589);
|
|
/* 0239ED9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000002u);
|
|
/* 0239EDA0 */ _t590 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239EDA0 */ _t591 = _t590 & 0x00000001u;
|
|
/* 0239EDA0 */ if (_t591) goto L_0239EDB4; else goto L_0239EDA4;
|
|
L_0239EDA4: ; // 0x239eda4
|
|
/* 0239EDA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000003u);
|
|
/* 0239EDA8 */ _t592 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239EDA8 */ _t593 = _t592 & 0x00000001u;
|
|
/* 0239EDA8 */ if (_t593) goto L_0239EDAC; else goto L_0239ED74;
|
|
L_0239EDAC: ; // 0x239edac
|
|
/* 0239EDAC */ _t594 = cpu->r[1] + 0x000000D0u;
|
|
/* 0239EDAC */ rbrew_write32(cpu->mem, _t594, cpu->r[27]);
|
|
/* 0239EDB0 */ goto L_0239ECAC;
|
|
L_0239EDB4: ; // 0x239edb4
|
|
/* 0239EDB4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], cpu->r[31]);
|
|
/* 0239EDB8 */ _t595 = cpu->r[1] + 0x000000D0u;
|
|
/* 0239EDB8 */ rbrew_write32(cpu->mem, _t595, cpu->r[27]);
|
|
/* 0239EDBC */ _t596 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239EDBC */ _t597 = _t596 & 0x00000001u;
|
|
/* 0239EDBC */ if (_t597) goto L_0239EDC0; else goto L_0239ECC0;
|
|
L_0239EDC0: ; // 0x239edc0
|
|
/* 0239EDC0 */ _t598 = cpu->r[28] + 0x00000000u;
|
|
/* 0239EDC0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t598);
|
|
/* 0239EDC4 */ _t599 = cpu->r[8] + 0x00000264u;
|
|
/* 0239EDC4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t599);
|
|
L_0239EDC8: ; // 0x239edc8
|
|
/* 0239EDC8 */ _t600 = cpu->r[7] + 0x00000030u;
|
|
/* 0239EDC8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t600);
|
|
/* 0239EDCC */ _t601 = cpu->r[4] + 0x000000D0u;
|
|
/* 0239EDCC */ cpu->r[5] = rbrew_read32(cpu->mem, _t601);
|
|
/* 0239EDD0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 0239EDD4 */ _t602 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239EDD4 */ _t603 = _t602 & 0x00000001u;
|
|
/* 0239EDD4 */ if (_t603) goto L_0239EF8C; else goto L_0239EDD8;
|
|
L_0239EDD8: ; // 0x239edd8
|
|
/* 0239EDD8 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0239EDDC */ _t604 = cpu->r[12] + 0x00006898u;
|
|
/* 0239EDDC */ cpu->r[12] = rbrew_read32(cpu->mem, _t604);
|
|
/* 0239EDE0 */ cpu->r[6] = cpu->r[7] + cpu->r[12];
|
|
/* 0239EDE4 */ _t605 = cpu->r[6] + 0x00000104u;
|
|
/* 0239EDE4 */ cpu->r[8] = rbrew_read8(cpu->mem, _t605);
|
|
/* 0239EDE8 */ _t606 = cpu->r[7] + 0x00000030u;
|
|
/* 0239EDE8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t606);
|
|
/* 0239EDEC */ cpu->r[7] = rbrew_rlwinm(cpu->r[8], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239EDF0 */ _t607 = cpu->r[7] + cpu->r[0];
|
|
/* 0239EDF0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t607);
|
|
/* 0239EDF4 */ _t608 = cpu->r[10] + 0x00000008u;
|
|
/* 0239EDF4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t608);
|
|
/* 0239EDF8 */ _t609 = cpu->r[7] + 0x00000004u;
|
|
/* 0239EDF8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t609);
|
|
/* 0239EDFC */ _t610 = cpu->r[7] + 0x0000000Cu;
|
|
/* 0239EDFC */ cpu->r[0] = rbrew_read32(cpu->mem, _t610);
|
|
/* 0239EE00 */ cpu->r[27] = cpu->r[11] - cpu->r[0];
|
|
/* 0239EE04 */ _t611 = cpu->r[1] + 0x0000013Cu;
|
|
/* 0239EE04 */ rbrew_write32(cpu->mem, _t611, cpu->r[27]);
|
|
/* 0239EE08 */ _t612 = cpu->r[7] + 0x0000000Cu;
|
|
/* 0239EE08 */ cpu->r[30] = rbrew_read32(cpu->mem, _t612);
|
|
/* 0239EE0C */ _t613 = cpu->r[1] + 0x000000D8u;
|
|
/* 0239EE0C */ rbrew_write32(cpu->mem, _t613, cpu->r[27]);
|
|
/* 0239EE10 */ _t614 = cpu->r[1] + 0x00000140u;
|
|
/* 0239EE10 */ rbrew_write32(cpu->mem, _t614, cpu->r[30]);
|
|
/* 0239EE14 */ _t615 = cpu->r[1] + 0x000000DCu;
|
|
/* 0239EE14 */ rbrew_write32(cpu->mem, _t615, cpu->r[30]);
|
|
/* 0239EE18 */ _t616 = cpu->r[7] + 0x0000000Cu;
|
|
/* 0239EE18 */ cpu->r[9] = rbrew_read32(cpu->mem, _t616);
|
|
/* 0239EE1C */ cpu->r[31] = cpu->r[7] - cpu->r[9];
|
|
/* 0239EE20 */ _t617 = cpu->r[1] + 0x0000017Cu;
|
|
/* 0239EE20 */ rbrew_write32(cpu->mem, _t617, cpu->r[31]);
|
|
/* 0239EE24 */ _t618 = cpu->r[7] + 0x0000000Cu;
|
|
/* 0239EE24 */ cpu->r[0] = rbrew_read32(cpu->mem, _t618);
|
|
/* 0239EE28 */ _t619 = cpu->r[1] + 0x000000E0u;
|
|
/* 0239EE28 */ rbrew_write32(cpu->mem, _t619, cpu->r[31]);
|
|
/* 0239EE2C */ _t620 = cpu->r[1] + 0x00000180u;
|
|
/* 0239EE2C */ rbrew_write32(cpu->mem, _t620, cpu->r[0]);
|
|
/* 0239EE30 */ _t621 = cpu->r[1] + 0x000000E8u;
|
|
/* 0239EE30 */ rbrew_write32(cpu->mem, _t621, cpu->r[27]);
|
|
/* 0239EE34 */ _t622 = cpu->r[1] + 0x000000E4u;
|
|
/* 0239EE34 */ rbrew_write32(cpu->mem, _t622, cpu->r[0]);
|
|
/* 0239EE38 */ _t623 = cpu->r[1] + 0x000000ECu;
|
|
/* 0239EE38 */ rbrew_write32(cpu->mem, _t623, cpu->r[30]);
|
|
/* 0239EE3C */ goto L_0239EE50;
|
|
L_0239EE40: ; // 0x239ee40
|
|
/* 0239EE40 */ cpu->r[6] = cpu->r[27] + cpu->r[30];
|
|
/* 0239EE44 */ _t624 = cpu->r[6] + 0x00000004u;
|
|
/* 0239EE44 */ cpu->r[0] = rbrew_read32(cpu->mem, _t624);
|
|
/* 0239EE48 */ cpu->r[27] = cpu->r[0] - cpu->r[30];
|
|
/* 0239EE4C */ _t625 = cpu->r[1] + 0x000000E8u;
|
|
/* 0239EE4C */ rbrew_write32(cpu->mem, _t625, cpu->r[27]);
|
|
L_0239EE50: ; // 0x239ee50
|
|
/* 0239EE50 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], cpu->r[31]);
|
|
/* 0239EE54 */ _t626 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239EE54 */ _t627 = _t626 & 0x00000001u;
|
|
/* 0239EE54 */ if (_t627) goto L_0239EE6C; else goto L_0239EE58;
|
|
L_0239EE58: ; // 0x239ee58
|
|
/* 0239EE58 */ _t628 = cpu->r[27] + 0x0000001Cu;
|
|
/* 0239EE58 */ cpu->r[0] = rbrew_read32(cpu->mem, _t628);
|
|
/* 0239EE5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000002u);
|
|
/* 0239EE60 */ _t629 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239EE60 */ _t630 = _t629 & 0x00000001u;
|
|
/* 0239EE60 */ if (_t630) goto L_0239EE6C; else goto L_0239EE64;
|
|
L_0239EE64: ; // 0x239ee64
|
|
/* 0239EE64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000003u);
|
|
/* 0239EE68 */ _t631 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239EE68 */ _t632 = _t631 & 0x00000001u;
|
|
/* 0239EE68 */ if (_t632) goto L_0239EE6C; else goto L_0239EE40;
|
|
L_0239EE6C: ; // 0x239ee6c
|
|
/* 0239EE6C */ cpu->f[24] = cpu->f[29];
|
|
L_0239EE70: ; // 0x239ee70
|
|
/* 0239EE70 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], cpu->r[31]);
|
|
/* 0239EE74 */ _t633 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239EE74 */ _t634 = _t633 & 0x00000001u;
|
|
/* 0239EE74 */ if (_t634) goto L_0239EF84; else goto L_0239EE78;
|
|
L_0239EE78: ; // 0x239ee78
|
|
/* 0239EE78 */ cpu->f[23] = cpu->f[24];
|
|
/* 0239EE7C */ cpu->r[26] = 0x0000000Au;
|
|
/* 0239EE80 */ cpu->r[25] = 0x00000001u;
|
|
L_0239EE84: ; // 0x239ee84
|
|
/* 0239EE84 */ cpu->r[3] = cpu->r[27] + 0x00000078u;
|
|
/* 0239EE88 */ Gambit_fn_0239E06C(cpu);
|
|
/* 0239EE8C */ _t635 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0239EE8C */ rbrew_write32(cpu->mem, _t635, cpu->r[4]);
|
|
/* 0239EE90 */ _t636 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0239EE90 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t636);
|
|
/* 0239EE94 */ _t637 = cpu->r[1] + 0x00000038u;
|
|
/* 0239EE94 */ rbrew_write32(cpu->mem, _t637, cpu->r[3]);
|
|
/* 0239EE98 */ _t638 = cpu->r[29] + 0x00000118u;
|
|
/* 0239EE98 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t638);
|
|
/* 0239EE9C */ _t639 = cpu->r[29] + 0x00000114u;
|
|
/* 0239EE9C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t639);
|
|
/* 0239EEA0 */ cpu->f[13] = cpu->f[9] - cpu->f[12];
|
|
/* 0239EEA4 */ _t640 = cpu->r[1] + 0x00000038u;
|
|
/* 0239EEA4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t640);
|
|
/* 0239EEA8 */ cpu->f[12] = cpu->f[10] - cpu->f[0];
|
|
/* 0239EEAC */ cpu->f[7] = cpu->f[13] * cpu->f[13];
|
|
/* 0239EEB0 */ cpu->f[11] = fma(cpu->f[12], cpu->f[12], cpu->f[7]);
|
|
/* 0239EEB4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[23]);
|
|
/* 0239EEB8 */ _t641 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0239EEB8 */ _t642 = _t641 & 0x00000001u;
|
|
/* 0239EEB8 */ if (_t642) goto L_0239EECC; else goto L_0239EEBC;
|
|
L_0239EEBC: ; // 0x239eebc
|
|
/* 0239EEBC */ cpu->f[10] = cpu->f[23] * cpu->f[11];
|
|
/* 0239EEC0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[28]);
|
|
/* 0239EEC4 */ _t643 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0239EEC4 */ _t644 = _t643 & 0x00000001u;
|
|
/* 0239EEC4 */ if (_t644) goto L_0239EF38; else goto L_0239EEC8;
|
|
L_0239EEC8: ; // 0x239eec8
|
|
/* 0239EEC8 */ goto L_0239EEF8;
|
|
L_0239EECC: ; // 0x239eecc
|
|
/* 0239EECC */ _ft645 = sqrt(cpu->f[11]);
|
|
/* 0239EECC */ _ft646 = (double)(int32_t)0x00000001u;
|
|
/* 0239EECC */ cpu->f[25] = _ft646 / _ft645;
|
|
/* 0239EED0 */ cpu->f[26] = cpu->f[25] * cpu->f[25];
|
|
/* 0239EED4 */ cpu->f[27] = cpu->f[25] * cpu->f[30];
|
|
/* 0239EED8 */ cpu->f[26] = -fma(cpu->f[26], cpu->f[11], -(cpu->f[31]));
|
|
/* 0239EEDC */ cpu->f[25] = cpu->f[26] * cpu->f[27];
|
|
/* 0239EEE0 */ cpu->f[10] = cpu->f[25] * cpu->f[11];
|
|
/* 0239EEE4 */ _t647 = cpu->r[1] + 0x000000E8u;
|
|
/* 0239EEE4 */ cpu->r[27] = rbrew_read32(cpu->mem, _t647);
|
|
/* 0239EEE8 */ _t648 = cpu->r[1] + 0x000000E0u;
|
|
/* 0239EEE8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t648);
|
|
/* 0239EEEC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[28]);
|
|
/* 0239EEF0 */ _t649 = cpu->r[1] + 0x000000ECu;
|
|
/* 0239EEF0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t649);
|
|
/* 0239EEF4 */ _t650 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0239EEF4 */ _t651 = _t650 & 0x00000001u;
|
|
/* 0239EEF4 */ if (_t651) goto L_0239EF38; else goto L_0239EEF8;
|
|
L_0239EEF8: ; // 0x239eef8
|
|
/* 0239EEF8 */ _t652 = cpu->r[29] + 0x00000158u;
|
|
/* 0239EEF8 */ rbrew_write32(cpu->mem, _t652, cpu->r[27]);
|
|
/* 0239EEFC */ _t653 = cpu->r[29] + 0x00000160u;
|
|
/* 0239EEFC */ rbrew_write8(cpu->mem, _t653, (uint8_t)cpu->r[25]);
|
|
/* 0239EF00 */ _t654 = cpu->r[29] + 0x00000164u;
|
|
/* 0239EF00 */ rbrew_write32(cpu->mem, _t654, cpu->r[26]);
|
|
/* 0239EF04 */ _t655 = cpu->r[27] + 0x00000024u;
|
|
/* 0239EF04 */ cpu->r[9] = rbrew_read32(cpu->mem, _t655);
|
|
/* 0239EF08 */ _t656 = cpu->r[1] + 0x00000038u;
|
|
/* 0239EF08 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t656);
|
|
/* 0239EF0C */ _t657 = cpu->r[29] + 0x00000168u;
|
|
/* 0239EF0C */ rbrew_write32(cpu->mem, _t657, cpu->r[9]);
|
|
/* 0239EF10 */ _t658 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0239EF10 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t658);
|
|
/* 0239EF14 */ _t659 = cpu->r[29] + 0x0000016Cu;
|
|
/* 0239EF14 */ rbrew_write_f32(cpu->mem, _t659, cpu->f[9]);
|
|
/* 0239EF18 */ _t660 = cpu->r[29] + 0x00000170u;
|
|
/* 0239EF18 */ rbrew_write_f32(cpu->mem, _t660, cpu->f[11]);
|
|
/* 0239EF1C */ _t661 = cpu->r[27] + 0x00000078u;
|
|
/* 0239EF1C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t661);
|
|
/* 0239EF20 */ _t662 = cpu->r[29] + 0x00000174u;
|
|
/* 0239EF20 */ rbrew_write_f32(cpu->mem, _t662, cpu->f[13]);
|
|
/* 0239EF24 */ _t663 = cpu->r[27] + 0x0000007Cu;
|
|
/* 0239EF24 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t663);
|
|
/* 0239EF28 */ _t664 = cpu->r[29] + 0x00000178u;
|
|
/* 0239EF28 */ rbrew_write_f32(cpu->mem, _t664, cpu->f[7]);
|
|
/* 0239EF2C */ _t665 = cpu->r[27] + 0x00000080u;
|
|
/* 0239EF2C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t665);
|
|
/* 0239EF30 */ cpu->f[28] = cpu->f[10];
|
|
/* 0239EF34 */ _t666 = cpu->r[29] + 0x0000017Cu;
|
|
/* 0239EF34 */ rbrew_write_f32(cpu->mem, _t666, cpu->f[9]);
|
|
L_0239EF38: ; // 0x239ef38
|
|
/* 0239EF38 */ cpu->r[5] = cpu->r[27] + cpu->r[30];
|
|
/* 0239EF3C */ _t667 = cpu->r[5] + 0x00000004u;
|
|
/* 0239EF3C */ cpu->r[10] = rbrew_read32(cpu->mem, _t667);
|
|
/* 0239EF40 */ cpu->r[27] = cpu->r[10] - cpu->r[30];
|
|
/* 0239EF44 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], cpu->r[31]);
|
|
/* 0239EF48 */ _t668 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239EF48 */ _t669 = _t668 & 0x00000001u;
|
|
/* 0239EF48 */ if (_t669) goto L_0239EF4C; else goto L_0239EF5C;
|
|
L_0239EF4C: ; // 0x239ef4c
|
|
/* 0239EF4C */ _t670 = cpu->r[28] + 0x00000000u;
|
|
/* 0239EF4C */ cpu->r[8] = rbrew_read32(cpu->mem, _t670);
|
|
/* 0239EF50 */ _t671 = cpu->r[1] + 0x000000E8u;
|
|
/* 0239EF50 */ rbrew_write32(cpu->mem, _t671, cpu->r[27]);
|
|
/* 0239EF54 */ _t672 = cpu->r[8] + 0x00000264u;
|
|
/* 0239EF54 */ cpu->r[7] = rbrew_read32(cpu->mem, _t672);
|
|
/* 0239EF58 */ goto L_0239EF8C;
|
|
L_0239EF5C: ; // 0x239ef5c
|
|
/* 0239EF5C */ _t673 = cpu->r[27] + 0x0000001Cu;
|
|
/* 0239EF5C */ cpu->r[4] = rbrew_read32(cpu->mem, _t673);
|
|
/* 0239EF60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000002u);
|
|
/* 0239EF64 */ _t674 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239EF64 */ _t675 = _t674 & 0x00000001u;
|
|
/* 0239EF64 */ if (_t675) goto L_0239EF78; else goto L_0239EF68;
|
|
L_0239EF68: ; // 0x239ef68
|
|
/* 0239EF68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000003u);
|
|
/* 0239EF6C */ _t676 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239EF6C */ _t677 = _t676 & 0x00000001u;
|
|
/* 0239EF6C */ if (_t677) goto L_0239EF70; else goto L_0239EF38;
|
|
L_0239EF70: ; // 0x239ef70
|
|
/* 0239EF70 */ _t678 = cpu->r[1] + 0x000000E8u;
|
|
/* 0239EF70 */ rbrew_write32(cpu->mem, _t678, cpu->r[27]);
|
|
/* 0239EF74 */ goto L_0239EE70;
|
|
L_0239EF78: ; // 0x239ef78
|
|
/* 0239EF78 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], cpu->r[31]);
|
|
/* 0239EF7C */ _t679 = cpu->r[1] + 0x000000E8u;
|
|
/* 0239EF7C */ rbrew_write32(cpu->mem, _t679, cpu->r[27]);
|
|
/* 0239EF80 */ _t680 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239EF80 */ _t681 = _t680 & 0x00000001u;
|
|
/* 0239EF80 */ if (_t681) goto L_0239EF84; else goto L_0239EE84;
|
|
L_0239EF84: ; // 0x239ef84
|
|
/* 0239EF84 */ _t682 = cpu->r[28] + 0x00000000u;
|
|
/* 0239EF84 */ cpu->r[8] = rbrew_read32(cpu->mem, _t682);
|
|
/* 0239EF88 */ _t683 = cpu->r[8] + 0x00000264u;
|
|
/* 0239EF88 */ cpu->r[7] = rbrew_read32(cpu->mem, _t683);
|
|
L_0239EF8C: ; // 0x239ef8c
|
|
/* 0239EF8C */ _t684 = cpu->r[7] + 0x00000030u;
|
|
/* 0239EF8C */ cpu->r[11] = rbrew_read32(cpu->mem, _t684);
|
|
/* 0239EF90 */ _t685 = cpu->r[11] + 0x000000D4u;
|
|
/* 0239EF90 */ cpu->r[0] = rbrew_read32(cpu->mem, _t685);
|
|
/* 0239EF94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0239EF98 */ _t686 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239EF98 */ _t687 = _t686 & 0x00000001u;
|
|
/* 0239EF98 */ if (_t687) goto L_0239F14C; else goto L_0239EF9C;
|
|
L_0239EF9C: ; // 0x239ef9c
|
|
/* 0239EF9C */ cpu->r[12] = 0x101C0000u;
|
|
/* 0239EFA0 */ _t688 = cpu->r[12] + 0x000068B0u;
|
|
/* 0239EFA0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t688);
|
|
/* 0239EFA4 */ cpu->r[4] = cpu->r[7] + cpu->r[12];
|
|
/* 0239EFA8 */ _t689 = cpu->r[4] + 0x00000104u;
|
|
/* 0239EFA8 */ cpu->r[6] = rbrew_read8(cpu->mem, _t689);
|
|
/* 0239EFAC */ _t690 = cpu->r[7] + 0x00000030u;
|
|
/* 0239EFAC */ cpu->r[7] = rbrew_read32(cpu->mem, _t690);
|
|
/* 0239EFB0 */ cpu->r[5] = rbrew_rlwinm(cpu->r[6], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239EFB4 */ _t691 = cpu->r[5] + cpu->r[7];
|
|
/* 0239EFB4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t691);
|
|
/* 0239EFB8 */ _t692 = cpu->r[8] + 0x00000008u;
|
|
/* 0239EFB8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t692);
|
|
/* 0239EFBC */ _t693 = cpu->r[8] + 0x00000004u;
|
|
/* 0239EFBC */ cpu->r[9] = rbrew_read32(cpu->mem, _t693);
|
|
/* 0239EFC0 */ _t694 = cpu->r[8] + 0x0000000Cu;
|
|
/* 0239EFC0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t694);
|
|
/* 0239EFC4 */ cpu->r[28] = cpu->r[9] - cpu->r[0];
|
|
/* 0239EFC8 */ _t695 = cpu->r[1] + 0x00000144u;
|
|
/* 0239EFC8 */ rbrew_write32(cpu->mem, _t695, cpu->r[28]);
|
|
/* 0239EFCC */ _t696 = cpu->r[8] + 0x0000000Cu;
|
|
/* 0239EFCC */ cpu->r[30] = rbrew_read32(cpu->mem, _t696);
|
|
/* 0239EFD0 */ _t697 = cpu->r[1] + 0x000000F0u;
|
|
/* 0239EFD0 */ rbrew_write32(cpu->mem, _t697, cpu->r[28]);
|
|
/* 0239EFD4 */ _t698 = cpu->r[1] + 0x00000148u;
|
|
/* 0239EFD4 */ rbrew_write32(cpu->mem, _t698, cpu->r[30]);
|
|
/* 0239EFD8 */ _t699 = cpu->r[1] + 0x000000F4u;
|
|
/* 0239EFD8 */ rbrew_write32(cpu->mem, _t699, cpu->r[30]);
|
|
/* 0239EFDC */ _t700 = cpu->r[8] + 0x0000000Cu;
|
|
/* 0239EFDC */ cpu->r[7] = rbrew_read32(cpu->mem, _t700);
|
|
/* 0239EFE0 */ cpu->r[31] = cpu->r[8] - cpu->r[7];
|
|
/* 0239EFE4 */ _t701 = cpu->r[1] + 0x00000184u;
|
|
/* 0239EFE4 */ rbrew_write32(cpu->mem, _t701, cpu->r[31]);
|
|
/* 0239EFE8 */ _t702 = cpu->r[8] + 0x0000000Cu;
|
|
/* 0239EFE8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t702);
|
|
/* 0239EFEC */ _t703 = cpu->r[1] + 0x000000F8u;
|
|
/* 0239EFEC */ rbrew_write32(cpu->mem, _t703, cpu->r[31]);
|
|
/* 0239EFF0 */ _t704 = cpu->r[1] + 0x00000188u;
|
|
/* 0239EFF0 */ rbrew_write32(cpu->mem, _t704, cpu->r[8]);
|
|
/* 0239EFF4 */ _t705 = cpu->r[1] + 0x00000100u;
|
|
/* 0239EFF4 */ rbrew_write32(cpu->mem, _t705, cpu->r[28]);
|
|
/* 0239EFF8 */ _t706 = cpu->r[1] + 0x000000FCu;
|
|
/* 0239EFF8 */ rbrew_write32(cpu->mem, _t706, cpu->r[8]);
|
|
/* 0239EFFC */ _t707 = cpu->r[1] + 0x00000104u;
|
|
/* 0239EFFC */ rbrew_write32(cpu->mem, _t707, cpu->r[30]);
|
|
/* 0239F000 */ goto L_0239F014;
|
|
L_0239F004: ; // 0x239f004
|
|
/* 0239F004 */ cpu->r[11] = cpu->r[28] + cpu->r[30];
|
|
/* 0239F008 */ _t708 = cpu->r[11] + 0x00000004u;
|
|
/* 0239F008 */ cpu->r[4] = rbrew_read32(cpu->mem, _t708);
|
|
/* 0239F00C */ cpu->r[28] = cpu->r[4] - cpu->r[30];
|
|
/* 0239F010 */ _t709 = cpu->r[1] + 0x00000100u;
|
|
/* 0239F010 */ rbrew_write32(cpu->mem, _t709, cpu->r[28]);
|
|
L_0239F014: ; // 0x239f014
|
|
/* 0239F014 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], cpu->r[31]);
|
|
/* 0239F018 */ _t710 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239F018 */ _t711 = _t710 & 0x00000001u;
|
|
/* 0239F018 */ if (_t711) goto L_0239F030; else goto L_0239F01C;
|
|
L_0239F01C: ; // 0x239f01c
|
|
/* 0239F01C */ _t712 = cpu->r[28] + 0x0000001Cu;
|
|
/* 0239F01C */ cpu->r[6] = rbrew_read32(cpu->mem, _t712);
|
|
/* 0239F020 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000002u);
|
|
/* 0239F024 */ _t713 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239F024 */ _t714 = _t713 & 0x00000001u;
|
|
/* 0239F024 */ if (_t714) goto L_0239F030; else goto L_0239F028;
|
|
L_0239F028: ; // 0x239f028
|
|
/* 0239F028 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000003u);
|
|
/* 0239F02C */ _t715 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239F02C */ _t716 = _t715 & 0x00000001u;
|
|
/* 0239F02C */ if (_t716) goto L_0239F030; else goto L_0239F004;
|
|
L_0239F030: ; // 0x239f030
|
|
/* 0239F030 */ cpu->f[23] = cpu->f[29];
|
|
L_0239F034: ; // 0x239f034
|
|
/* 0239F034 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], cpu->r[31]);
|
|
/* 0239F038 */ _t717 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239F038 */ _t718 = _t717 & 0x00000001u;
|
|
/* 0239F038 */ if (_t718) goto L_0239F14C; else goto L_0239F03C;
|
|
L_0239F03C: ; // 0x239f03c
|
|
/* 0239F03C */ cpu->f[27] = cpu->f[23];
|
|
/* 0239F040 */ cpu->r[27] = 0x0000000Bu;
|
|
/* 0239F044 */ cpu->r[26] = 0x00000001u;
|
|
L_0239F048: ; // 0x239f048
|
|
/* 0239F048 */ cpu->r[3] = cpu->r[28] + 0x00000078u;
|
|
/* 0239F04C */ Gambit_fn_0239E06C(cpu);
|
|
/* 0239F050 */ _t719 = cpu->r[1] + 0x00000044u;
|
|
/* 0239F050 */ rbrew_write32(cpu->mem, _t719, cpu->r[4]);
|
|
/* 0239F054 */ _t720 = cpu->r[1] + 0x00000044u;
|
|
/* 0239F054 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t720);
|
|
/* 0239F058 */ _t721 = cpu->r[1] + 0x00000040u;
|
|
/* 0239F058 */ rbrew_write32(cpu->mem, _t721, cpu->r[3]);
|
|
/* 0239F05C */ _t722 = cpu->r[29] + 0x00000118u;
|
|
/* 0239F05C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t722);
|
|
/* 0239F060 */ _t723 = cpu->r[29] + 0x00000114u;
|
|
/* 0239F060 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t723);
|
|
/* 0239F064 */ cpu->f[13] = cpu->f[12] - cpu->f[0];
|
|
/* 0239F068 */ _t724 = cpu->r[1] + 0x00000040u;
|
|
/* 0239F068 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t724);
|
|
/* 0239F06C */ cpu->f[12] = cpu->f[7] - cpu->f[9];
|
|
/* 0239F070 */ cpu->f[10] = cpu->f[13] * cpu->f[13];
|
|
/* 0239F074 */ cpu->f[11] = fma(cpu->f[12], cpu->f[12], cpu->f[10]);
|
|
/* 0239F078 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[27]);
|
|
/* 0239F07C */ _t725 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0239F07C */ _t726 = _t725 & 0x00000001u;
|
|
/* 0239F07C */ if (_t726) goto L_0239F090; else goto L_0239F080;
|
|
L_0239F080: ; // 0x239f080
|
|
/* 0239F080 */ cpu->f[10] = cpu->f[27] * cpu->f[11];
|
|
/* 0239F084 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[28]);
|
|
/* 0239F088 */ _t727 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0239F088 */ _t728 = _t727 & 0x00000001u;
|
|
/* 0239F088 */ if (_t728) goto L_0239F0FC; else goto L_0239F08C;
|
|
L_0239F08C: ; // 0x239f08c
|
|
/* 0239F08C */ goto L_0239F0BC;
|
|
L_0239F090: ; // 0x239f090
|
|
/* 0239F090 */ _ft729 = sqrt(cpu->f[11]);
|
|
/* 0239F090 */ _ft730 = (double)(int32_t)0x00000001u;
|
|
/* 0239F090 */ cpu->f[24] = _ft730 / _ft729;
|
|
/* 0239F094 */ cpu->f[25] = cpu->f[24] * cpu->f[24];
|
|
/* 0239F098 */ cpu->f[26] = cpu->f[24] * cpu->f[30];
|
|
/* 0239F09C */ cpu->f[25] = -fma(cpu->f[25], cpu->f[11], -(cpu->f[31]));
|
|
/* 0239F0A0 */ cpu->f[24] = cpu->f[25] * cpu->f[26];
|
|
/* 0239F0A4 */ cpu->f[10] = cpu->f[24] * cpu->f[11];
|
|
/* 0239F0A8 */ _t731 = cpu->r[1] + 0x00000100u;
|
|
/* 0239F0A8 */ cpu->r[28] = rbrew_read32(cpu->mem, _t731);
|
|
/* 0239F0AC */ _t732 = cpu->r[1] + 0x000000F8u;
|
|
/* 0239F0AC */ cpu->r[31] = rbrew_read32(cpu->mem, _t732);
|
|
/* 0239F0B0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[28]);
|
|
/* 0239F0B4 */ _t733 = cpu->r[1] + 0x00000104u;
|
|
/* 0239F0B4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t733);
|
|
/* 0239F0B8 */ _t734 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0239F0B8 */ _t735 = _t734 & 0x00000001u;
|
|
/* 0239F0B8 */ if (_t735) goto L_0239F0FC; else goto L_0239F0BC;
|
|
L_0239F0BC: ; // 0x239f0bc
|
|
/* 0239F0BC */ _t736 = cpu->r[29] + 0x00000158u;
|
|
/* 0239F0BC */ rbrew_write32(cpu->mem, _t736, cpu->r[28]);
|
|
/* 0239F0C0 */ _t737 = cpu->r[29] + 0x00000160u;
|
|
/* 0239F0C0 */ rbrew_write8(cpu->mem, _t737, (uint8_t)cpu->r[26]);
|
|
/* 0239F0C4 */ _t738 = cpu->r[29] + 0x00000164u;
|
|
/* 0239F0C4 */ rbrew_write32(cpu->mem, _t738, cpu->r[27]);
|
|
/* 0239F0C8 */ _t739 = cpu->r[28] + 0x00000024u;
|
|
/* 0239F0C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t739);
|
|
/* 0239F0CC */ _t740 = cpu->r[1] + 0x00000040u;
|
|
/* 0239F0CC */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t740);
|
|
/* 0239F0D0 */ _t741 = cpu->r[29] + 0x00000168u;
|
|
/* 0239F0D0 */ rbrew_write32(cpu->mem, _t741, cpu->r[0]);
|
|
/* 0239F0D4 */ _t742 = cpu->r[1] + 0x00000044u;
|
|
/* 0239F0D4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t742);
|
|
/* 0239F0D8 */ _t743 = cpu->r[29] + 0x0000016Cu;
|
|
/* 0239F0D8 */ rbrew_write_f32(cpu->mem, _t743, cpu->f[7]);
|
|
/* 0239F0DC */ _t744 = cpu->r[29] + 0x00000170u;
|
|
/* 0239F0DC */ rbrew_write_f32(cpu->mem, _t744, cpu->f[11]);
|
|
/* 0239F0E0 */ _t745 = cpu->r[28] + 0x00000078u;
|
|
/* 0239F0E0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t745);
|
|
/* 0239F0E4 */ _t746 = cpu->r[29] + 0x00000174u;
|
|
/* 0239F0E4 */ rbrew_write_f32(cpu->mem, _t746, cpu->f[13]);
|
|
/* 0239F0E8 */ _t747 = cpu->r[28] + 0x0000007Cu;
|
|
/* 0239F0E8 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t747);
|
|
/* 0239F0EC */ _t748 = cpu->r[29] + 0x00000178u;
|
|
/* 0239F0EC */ rbrew_write_f32(cpu->mem, _t748, cpu->f[6]);
|
|
/* 0239F0F0 */ _t749 = cpu->r[28] + 0x00000080u;
|
|
/* 0239F0F0 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t749);
|
|
/* 0239F0F4 */ cpu->f[28] = cpu->f[10];
|
|
/* 0239F0F8 */ _t750 = cpu->r[29] + 0x0000017Cu;
|
|
/* 0239F0F8 */ rbrew_write_f32(cpu->mem, _t750, cpu->f[8]);
|
|
L_0239F0FC: ; // 0x239f0fc
|
|
/* 0239F0FC */ cpu->r[11] = cpu->r[28] + cpu->r[30];
|
|
/* 0239F100 */ _t751 = cpu->r[11] + 0x00000004u;
|
|
/* 0239F100 */ cpu->r[0] = rbrew_read32(cpu->mem, _t751);
|
|
/* 0239F104 */ cpu->r[28] = cpu->r[0] - cpu->r[30];
|
|
/* 0239F108 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], cpu->r[31]);
|
|
/* 0239F10C */ _t752 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239F10C */ _t753 = _t752 & 0x00000001u;
|
|
/* 0239F10C */ if (_t753) goto L_0239F110; else goto L_0239F124;
|
|
L_0239F110: ; // 0x239f110
|
|
/* 0239F110 */ _t754 = cpu->r[1] + 0x00000100u;
|
|
/* 0239F110 */ rbrew_write32(cpu->mem, _t754, cpu->r[28]);
|
|
/* 0239F114 */ Gambit_fn_0239E014(cpu);
|
|
/* 0239F118 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239F11C */ _t755 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239F11C */ _t756 = _t755 & 0x00000001u;
|
|
/* 0239F11C */ if (_t756) goto L_0239F15C; else goto L_0239F120;
|
|
L_0239F120: ; // 0x239f120
|
|
/* 0239F120 */ goto L_0239F158;
|
|
L_0239F124: ; // 0x239f124
|
|
/* 0239F124 */ _t757 = cpu->r[28] + 0x0000001Cu;
|
|
/* 0239F124 */ cpu->r[0] = rbrew_read32(cpu->mem, _t757);
|
|
/* 0239F128 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000002u);
|
|
/* 0239F12C */ _t758 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239F12C */ _t759 = _t758 & 0x00000001u;
|
|
/* 0239F12C */ if (_t759) goto L_0239F140; else goto L_0239F130;
|
|
L_0239F130: ; // 0x239f130
|
|
/* 0239F130 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000003u);
|
|
/* 0239F134 */ _t760 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239F134 */ _t761 = _t760 & 0x00000001u;
|
|
/* 0239F134 */ if (_t761) goto L_0239F138; else goto L_0239F0FC;
|
|
L_0239F138: ; // 0x239f138
|
|
/* 0239F138 */ _t762 = cpu->r[1] + 0x00000100u;
|
|
/* 0239F138 */ rbrew_write32(cpu->mem, _t762, cpu->r[28]);
|
|
/* 0239F13C */ goto L_0239F034;
|
|
L_0239F140: ; // 0x239f140
|
|
/* 0239F140 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], cpu->r[31]);
|
|
/* 0239F144 */ _t763 = cpu->r[1] + 0x00000100u;
|
|
/* 0239F144 */ rbrew_write32(cpu->mem, _t763, cpu->r[28]);
|
|
/* 0239F148 */ _t764 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239F148 */ _t765 = _t764 & 0x00000001u;
|
|
/* 0239F148 */ if (_t765) goto L_0239F14C; else goto L_0239F048;
|
|
L_0239F14C: ; // 0x239f14c
|
|
/* 0239F14C */ Gambit_fn_0239E014(cpu);
|
|
/* 0239F150 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239F154 */ _t766 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239F154 */ _t767 = _t766 & 0x00000001u;
|
|
/* 0239F154 */ if (_t767) goto L_0239F15C; else goto L_0239F158;
|
|
L_0239F158: ; // 0x239f158
|
|
/* 0239F158 */ _t768 = cpu->r[29] + 0x00000178u;
|
|
/* 0239F158 */ rbrew_write_f32(cpu->mem, _t768, cpu->f[29]);
|
|
L_0239F15C: ; // 0x239f15c
|
|
/* 0239F15C */ /* nop */
|
|
/* 0239F160 */ _t769 = cpu->r[1] + 0x000001F8u;
|
|
/* 0239F160 */ cpu->f[26] = rbrew_read_f32(cpu->mem, _t769);
|
|
/* 0239F164 */ _t770 = cpu->r[1] + 0x000001D8u;
|
|
/* 0239F164 */ cpu->f[24] = rbrew_read_f32(cpu->mem, _t770);
|
|
/* 0239F168 */ _t771 = cpu->r[1] + 0x000001F0u;
|
|
/* 0239F168 */ cpu->f[26] = rbrew_read_f64(cpu->mem, _t771);
|
|
/* 0239F16C */ _t772 = cpu->r[1] + 0x000001D0u;
|
|
/* 0239F16C */ cpu->f[24] = rbrew_read_f64(cpu->mem, _t772);
|
|
/* 0239F170 */ _t773 = cpu->r[1] + 0x00000218u;
|
|
/* 0239F170 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t773);
|
|
/* 0239F174 */ _t774 = cpu->r[1] + 0x000001E8u;
|
|
/* 0239F174 */ cpu->f[25] = rbrew_read_f32(cpu->mem, _t774);
|
|
/* 0239F178 */ _t775 = cpu->r[1] + 0x00000210u;
|
|
/* 0239F178 */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t775);
|
|
/* 0239F17C */ _t776 = cpu->r[1] + 0x000001E0u;
|
|
/* 0239F17C */ cpu->f[25] = rbrew_read_f64(cpu->mem, _t776);
|
|
/* 0239F180 */ _t777 = cpu->r[1] + 0x00000238u;
|
|
/* 0239F180 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t777);
|
|
/* 0239F184 */ _t778 = cpu->r[1] + 0x00000208u;
|
|
/* 0239F184 */ cpu->f[27] = rbrew_read_f32(cpu->mem, _t778);
|
|
/* 0239F188 */ _t779 = cpu->r[1] + 0x00000230u;
|
|
/* 0239F188 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t779);
|
|
/* 0239F18C */ _t780 = cpu->r[1] + 0x00000200u;
|
|
/* 0239F18C */ cpu->f[27] = rbrew_read_f64(cpu->mem, _t780);
|
|
/* 0239F190 */ _t781 = cpu->r[1] + 0x000001C8u;
|
|
/* 0239F190 */ cpu->f[23] = rbrew_read_f32(cpu->mem, _t781);
|
|
/* 0239F194 */ _t782 = cpu->r[1] + 0x00000228u;
|
|
/* 0239F194 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t782);
|
|
/* 0239F198 */ _t783 = cpu->r[1] + 0x000001C0u;
|
|
/* 0239F198 */ cpu->f[23] = rbrew_read_f64(cpu->mem, _t783);
|
|
/* 0239F19C */ _t784 = cpu->r[1] + 0x00000220u;
|
|
/* 0239F19C */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t784);
|
|
/* 0239F1A0 */ _t785 = cpu->r[1] + 0x000001B8u;
|
|
/* 0239F1A0 */ cpu->f[22] = rbrew_read_f32(cpu->mem, _t785);
|
|
/* 0239F1A4 */ _t786 = cpu->r[1] + 0x00000248u;
|
|
/* 0239F1A4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t786);
|
|
/* 0239F1A8 */ _t787 = cpu->r[1] + 0x000001B0u;
|
|
/* 0239F1A8 */ cpu->f[22] = rbrew_read_f64(cpu->mem, _t787);
|
|
/* 0239F1AC */ _t788 = cpu->r[1] + 0x00000240u;
|
|
/* 0239F1AC */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t788);
|
|
/* 0239F1B0 */ _t789 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0239F1B0 */ _t790 = _t789 & 0x00000001u;
|
|
/* 0239F1B0 */ if (_t790) goto L_0239F1B4; // else: addr-0 trap, fall-through
|
|
L_0239F1B4: ; // 0x239f1b4
|
|
/* 0239F1B4 */ _t791 = cpu->r[1] + 0x00000254u;
|
|
/* 0239F1B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t791);
|
|
/* 0239F1B8 */ cpu->lr = cpu->r[0];
|
|
/* 0239F1BC */ cpu->r[1] = cpu->r[1] + 0x00000250u;
|
|
/* 0239F1C0 */ return;
|
|
}
|
|
|
|
// fn_0239F1C4 @ 0x239f1c4
|
|
void Gambit_fn_0239F1C4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0239F1C4: ; // 0x239f1c4
|
|
/* 0239F1C4 */ _t0 = cpu->r[3] + 0x0000011Cu;
|
|
/* 0239F1C4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 0239F1C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0239F1CC */ cpu->r[12] = 0x00000001u;
|
|
/* 0239F1D0 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239F1D0 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0239F1D0 */ if (_t2) goto L_0239F1D4; else goto L_0239F1E4;
|
|
L_0239F1D4: ; // 0x239f1d4
|
|
/* 0239F1D4 */ _t3 = cpu->r[3] + 0x0000011Eu;
|
|
/* 0239F1D4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0239F1D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0239F1DC */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239F1DC */ _t5 = _t4 & 0x00000001u;
|
|
/* 0239F1DC */ if (_t5) goto L_0239F1E0; else goto L_0239F1E4;
|
|
L_0239F1E0: ; // 0x239f1e0
|
|
/* 0239F1E0 */ cpu->r[12] = 0x00000000u;
|
|
L_0239F1E4: ; // 0x239f1e4
|
|
/* 0239F1E4 */ cpu->r[3] = rbrew_rlwinm(cpu->r[12], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 0239F1E8 */ return;
|
|
}
|
|
|
|
// fn_0239F1EC @ 0x239f1ec
|
|
void Gambit_fn_0239F1EC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_0239F1EC: ; // 0x239f1ec
|
|
/* 0239F1EC */ cpu->r[0] = cpu->lr;
|
|
/* 0239F1F0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0239F1F0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239F1F0 */ cpu->r[1] = _t0;
|
|
/* 0239F1F4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239F1F4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0239F1F8 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0239F1FC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0239F1FC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0239F200 */ _t3 = cpu->r[12] + 0x00006000u;
|
|
/* 0239F200 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0239F204 */ _t4 = cpu->r[12] + 0x00000268u;
|
|
/* 0239F204 */ cpu->r[31] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0239F208 */ cpu->r[3] = cpu->r[31];
|
|
/* 0239F20C */ Gambit_fn_0261F774(cpu);
|
|
/* 0239F210 */ cpu->r[4] = cpu->r[3];
|
|
/* 0239F214 */ cpu->r[3] = cpu->r[31];
|
|
/* 0239F218 */ Gambit_fn_0261F55C(cpu);
|
|
/* 0239F21C */ Gambit_fn_025C7FF0(cpu);
|
|
/* 0239F220 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 0239F220 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0239F224 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239F224 */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0239F228 */ cpu->lr = cpu->r[0];
|
|
/* 0239F22C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0239F230 */ return;
|
|
}
|
|
|
|
// fn_0239F1F0 @ 0x239f1f0
|
|
void Gambit_fn_0239F1F0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_0239F1F0: ; // 0x239f1f0
|
|
/* 0239F1F0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0239F1F0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239F1F0 */ cpu->r[1] = _t0;
|
|
/* 0239F1F4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239F1F4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0239F1F8 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0239F1FC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0239F1FC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0239F200 */ _t3 = cpu->r[12] + 0x00006000u;
|
|
/* 0239F200 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0239F204 */ _t4 = cpu->r[12] + 0x00000268u;
|
|
/* 0239F204 */ cpu->r[31] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0239F208 */ cpu->r[3] = cpu->r[31];
|
|
/* 0239F20C */ Gambit_fn_0261F774(cpu);
|
|
/* 0239F210 */ cpu->r[4] = cpu->r[3];
|
|
/* 0239F214 */ cpu->r[3] = cpu->r[31];
|
|
/* 0239F218 */ Gambit_fn_0261F55C(cpu);
|
|
/* 0239F21C */ Gambit_fn_025C7FF0(cpu);
|
|
/* 0239F220 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 0239F220 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0239F224 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239F224 */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0239F228 */ cpu->lr = cpu->r[0];
|
|
/* 0239F22C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0239F230 */ return;
|
|
}
|
|
|
|
// fn_0239F234 @ 0x239f234
|
|
void Gambit_fn_0239F234(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_0239F234: ; // 0x239f234
|
|
/* 0239F234 */ cpu->r[0] = cpu->lr;
|
|
/* 0239F238 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0239F238 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239F238 */ cpu->r[1] = _t0;
|
|
/* 0239F23C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239F23C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0239F240 */ cpu->r[31] = cpu->r[3];
|
|
/* 0239F244 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0239F244 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0239F248 */ Gambit_fn_0239F1EC(cpu);
|
|
/* 0239F24C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239F250 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239F250 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0239F250 */ if (_t4) goto L_0239F424; else goto L_0239F254;
|
|
L_0239F254: ; // 0x239f254
|
|
/* 0239F254 */ _t5 = cpu->r[31] + 0x00000164u;
|
|
/* 0239F254 */ cpu->r[5] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0239F258 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], 0x0000000Bu);
|
|
/* 0239F25C */ cpu->r[12] = 0x101C0000u;
|
|
/* 0239F260 */ _t6 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0239F260 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0239F260 */ if (_t7) goto L_0239F424; else goto L_0239F264;
|
|
L_0239F264: ; // 0x239f264
|
|
/* 0239F264 */ cpu->r[5] = rbrew_rlwinm(cpu->r[5], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239F268 */ cpu->r[6] = cpu->r[5] + 0x023A0000u;
|
|
/* 0239F26C */ cpu->r[6] = cpu->r[6] + 0xFFFFF278u;
|
|
/* 0239F270 */ cpu->ctr = cpu->r[6];
|
|
/* 0239F274 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
L_0239F424: ; // 0x239f424
|
|
/* 0239F424 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 0239F424 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0239F428 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239F428 */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0239F42C */ cpu->lr = cpu->r[0];
|
|
/* 0239F430 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0239F434 */ cpu->r[3] = 0x00000000u;
|
|
/* 0239F438 */ return;
|
|
}
|
|
|
|
// fn_0239F238 @ 0x239f238
|
|
void Gambit_fn_0239F238(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_0239F238: ; // 0x239f238
|
|
/* 0239F238 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0239F238 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239F238 */ cpu->r[1] = _t0;
|
|
/* 0239F23C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239F23C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0239F240 */ cpu->r[31] = cpu->r[3];
|
|
/* 0239F244 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0239F244 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0239F248 */ Gambit_fn_0239F1EC(cpu);
|
|
/* 0239F24C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239F250 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239F250 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0239F250 */ if (_t4) goto L_0239F424; else goto L_0239F254;
|
|
L_0239F254: ; // 0x239f254
|
|
/* 0239F254 */ _t5 = cpu->r[31] + 0x00000164u;
|
|
/* 0239F254 */ cpu->r[5] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0239F258 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], 0x0000000Bu);
|
|
/* 0239F25C */ cpu->r[12] = 0x101C0000u;
|
|
/* 0239F260 */ _t6 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0239F260 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0239F260 */ if (_t7) goto L_0239F424; else goto L_0239F264;
|
|
L_0239F264: ; // 0x239f264
|
|
/* 0239F264 */ cpu->r[5] = rbrew_rlwinm(cpu->r[5], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239F268 */ cpu->r[6] = cpu->r[5] + 0x023A0000u;
|
|
/* 0239F26C */ cpu->r[6] = cpu->r[6] + 0xFFFFF278u;
|
|
/* 0239F270 */ cpu->ctr = cpu->r[6];
|
|
/* 0239F274 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
L_0239F424: ; // 0x239f424
|
|
/* 0239F424 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 0239F424 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0239F428 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239F428 */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0239F42C */ cpu->lr = cpu->r[0];
|
|
/* 0239F430 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0239F434 */ cpu->r[3] = 0x00000000u;
|
|
/* 0239F438 */ return;
|
|
}
|
|
|
|
// fn_0239F43C @ 0x239f43c
|
|
void Gambit_fn_0239F43C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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;
|
|
|
|
L_0239F43C: ; // 0x239f43c
|
|
/* 0239F43C */ cpu->r[0] = cpu->lr;
|
|
/* 0239F440 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0239F440 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239F440 */ cpu->r[1] = _t0;
|
|
/* 0239F444 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239F444 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 0239F448 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0239F448 */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 0239F44C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0239F44C */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 0239F450 */ _t4 = cpu->r[1] + 0x00000010u;
|
|
/* 0239F450 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 0239F454 */ cpu->r[31] = cpu->r[3];
|
|
/* 0239F458 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239F458 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0239F45C */ _t6 = cpu->r[31] + 0x0000011Eu;
|
|
/* 0239F45C */ cpu->r[0] = rbrew_read8(cpu->mem, _t6);
|
|
/* 0239F460 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0239F464 */ cpu->r[29] = 0x101C0000u;
|
|
/* 0239F468 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239F468 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0239F468 */ if (_t8) goto L_0239F558; else goto L_0239F46C;
|
|
L_0239F46C: ; // 0x239f46c
|
|
/* 0239F46C */ _t9 = cpu->r[29] + 0x00005C08u;
|
|
/* 0239F46C */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0239F470 */ Gambit_fn_02423720(cpu);
|
|
/* 0239F474 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239F478 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239F478 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0239F478 */ if (_t11) goto L_0239F47C; else goto L_0239F7EC;
|
|
L_0239F47C: ; // 0x239f47c
|
|
/* 0239F47C */ cpu->r[3] = cpu->r[31];
|
|
/* 0239F480 */ Gambit_fn_0239F234(cpu);
|
|
/* 0239F484 */ cpu->r[30] = cpu->r[3];
|
|
/* 0239F488 */ _t12 = cpu->r[29] + 0x00005C08u;
|
|
/* 0239F488 */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0239F48C */ cpu->r[4] = cpu->r[30];
|
|
/* 0239F490 */ Gambit_fn_0242382C(cpu);
|
|
/* 0239F494 */ _t13 = cpu->r[31] + 0x00000030u;
|
|
/* 0239F494 */ cpu->r[10] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0239F498 */ _t14 = cpu->r[10] + 0x000000E0u;
|
|
/* 0239F498 */ cpu->r[11] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0239F49C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0239F4A0 */ cpu->r[29] = cpu->r[11] + 0x00000030u;
|
|
/* 0239F4A4 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239F4A4 */ _t16 = _t15 & 0x00000001u;
|
|
/* 0239F4A4 */ if (_t16) goto L_0239F500; else goto L_0239F4A8;
|
|
L_0239F4A8: ; // 0x239f4a8
|
|
/* 0239F4A8 */ cpu->r[30] = 0x101E0000u;
|
|
/* 0239F4AC */ cpu->r[30] = cpu->r[30] + 0x00004BE4u;
|
|
/* 0239F4B0 */ _t17 = cpu->r[30] + 0x00000004u;
|
|
/* 0239F4B0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0239F4B4 */ _t18 = cpu->r[12] + 0x00000014u;
|
|
/* 0239F4B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0239F4B8 */ cpu->ctr = cpu->r[0];
|
|
/* 0239F4BC */ cpu->r[3] = cpu->r[30];
|
|
/* 0239F4C0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0239F4C4 */ _t19 = cpu->r[29] + 0x00000004u;
|
|
/* 0239F4C4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0239F4C8 */ _t20 = cpu->r[31] + 0x00000030u;
|
|
/* 0239F4C8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0239F4CC */ cpu->ctr = cpu->r[7];
|
|
/* 0239F4D0 */ _t21 = cpu->r[30] + 0x00000000u;
|
|
/* 0239F4D0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0239F4D4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0239F4D8 */ cpu->r[8] = 0x00000001u;
|
|
/* 0239F4DC */ _t22 = cpu->r[31] + 0x00000180u;
|
|
/* 0239F4DC */ rbrew_write8(cpu->mem, _t22, (uint8_t)cpu->r[8]);
|
|
/* 0239F4E0 */ _t23 = cpu->r[1] + 0x00000008u;
|
|
/* 0239F4E0 */ cpu->r[28] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0239F4E4 */ _t24 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239F4E4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0239F4E8 */ _t25 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239F4E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0239F4EC */ _t26 = cpu->r[1] + 0x00000010u;
|
|
/* 0239F4EC */ cpu->r[30] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0239F4F0 */ cpu->lr = cpu->r[0];
|
|
/* 0239F4F4 */ _t27 = cpu->r[1] + 0x00000014u;
|
|
/* 0239F4F4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0239F4F8 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0239F4FC */ return;
|
|
L_0239F500: ; // 0x239f500
|
|
/* 0239F500 */ cpu->r[30] = 0x101E0000u;
|
|
/* 0239F504 */ cpu->r[30] = cpu->r[30] + 0x00004BECu;
|
|
/* 0239F508 */ _t28 = cpu->r[30] + 0x00000004u;
|
|
/* 0239F508 */ cpu->r[5] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0239F50C */ _t29 = cpu->r[5] + 0x00000014u;
|
|
/* 0239F50C */ cpu->r[6] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0239F510 */ cpu->ctr = cpu->r[6];
|
|
/* 0239F514 */ cpu->r[3] = cpu->r[30];
|
|
/* 0239F518 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0239F51C */ _t30 = cpu->r[29] + 0x00000004u;
|
|
/* 0239F51C */ cpu->r[7] = rbrew_read32(cpu->mem, _t30);
|
|
/* 0239F520 */ _t31 = cpu->r[31] + 0x00000030u;
|
|
/* 0239F520 */ cpu->r[3] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0239F524 */ cpu->ctr = cpu->r[7];
|
|
/* 0239F528 */ _t32 = cpu->r[30] + 0x00000000u;
|
|
/* 0239F528 */ cpu->r[4] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0239F52C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0239F530 */ cpu->r[8] = 0x00000001u;
|
|
/* 0239F534 */ _t33 = cpu->r[31] + 0x00000180u;
|
|
/* 0239F534 */ rbrew_write8(cpu->mem, _t33, (uint8_t)cpu->r[8]);
|
|
/* 0239F538 */ _t34 = cpu->r[1] + 0x00000008u;
|
|
/* 0239F538 */ cpu->r[28] = rbrew_read32(cpu->mem, _t34);
|
|
/* 0239F53C */ _t35 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239F53C */ cpu->r[29] = rbrew_read32(cpu->mem, _t35);
|
|
/* 0239F540 */ _t36 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239F540 */ cpu->r[0] = rbrew_read32(cpu->mem, _t36);
|
|
/* 0239F544 */ _t37 = cpu->r[1] + 0x00000010u;
|
|
/* 0239F544 */ cpu->r[30] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0239F548 */ cpu->lr = cpu->r[0];
|
|
/* 0239F54C */ _t38 = cpu->r[1] + 0x00000014u;
|
|
/* 0239F54C */ cpu->r[31] = rbrew_read32(cpu->mem, _t38);
|
|
/* 0239F550 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0239F554 */ return;
|
|
L_0239F558: ; // 0x239f558
|
|
/* 0239F558 */ _t39 = cpu->r[31] + 0x00000160u;
|
|
/* 0239F558 */ cpu->r[0] = rbrew_read8(cpu->mem, _t39);
|
|
/* 0239F55C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0239F560 */ _t40 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239F560 */ _t41 = _t40 & 0x00000001u;
|
|
/* 0239F560 */ if (_t41) goto L_0239F784; else goto L_0239F564;
|
|
L_0239F564: ; // 0x239f564
|
|
/* 0239F564 */ cpu->r[3] = cpu->r[31];
|
|
/* 0239F568 */ Gambit_fn_0239F234(cpu);
|
|
/* 0239F56C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239F570 */ _t42 = cpu->r[31] + 0x00000164u;
|
|
/* 0239F570 */ cpu->r[0] = rbrew_read32(cpu->mem, _t42);
|
|
/* 0239F574 */ _t43 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239F574 */ _t44 = _t43 & 0x00000001u;
|
|
/* 0239F574 */ if (_t44) goto L_0239F5AC; else goto L_0239F578;
|
|
L_0239F578: ; // 0x239f578
|
|
/* 0239F578 */ cpu->r[10] = cpu->r[0];
|
|
/* 0239F57C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], 0x00000001u);
|
|
/* 0239F580 */ _t45 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0239F580 */ _t46 = _t45 & 0x00000001u;
|
|
/* 0239F580 */ if (_t46) goto L_0239F5B0; else goto L_0239F584;
|
|
L_0239F584: ; // 0x239f584
|
|
/* 0239F584 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], 0x0000000Bu);
|
|
/* 0239F588 */ _t47 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0239F588 */ _t48 = _t47 & 0x00000001u;
|
|
/* 0239F588 */ if (_t48) goto L_0239F5B0; else goto L_0239F58C;
|
|
L_0239F58C: ; // 0x239f58c
|
|
/* 0239F58C */ cpu->r[5] = 0x10080000u;
|
|
/* 0239F590 */ cpu->r[30] = 0x101C0000u;
|
|
/* 0239F594 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000006u);
|
|
/* 0239F598 */ cpu->r[5] = cpu->r[5] + 0x00007137u;
|
|
/* 0239F59C */ cpu->r[30] = cpu->r[30] + 0x00006000u;
|
|
/* 0239F5A0 */ _t49 = cpu->r[5] + cpu->r[0];
|
|
/* 0239F5A0 */ cpu->r[28] = rbrew_read8(cpu->mem, _t49);
|
|
/* 0239F5A4 */ _t50 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239F5A4 */ _t51 = _t50 & 0x00000001u;
|
|
/* 0239F5A4 */ if (_t51) goto L_0239F5A8; else goto L_0239F604;
|
|
L_0239F5A8: ; // 0x239f5a8
|
|
/* 0239F5A8 */ goto L_0239F5C0;
|
|
L_0239F5AC: ; // 0x239f5ac
|
|
/* 0239F5AC */ cpu->r[28] = 0x00000007u;
|
|
L_0239F5B0: ; // 0x239f5b0
|
|
/* 0239F5B0 */ cpu->r[30] = 0x101C0000u;
|
|
/* 0239F5B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000006u);
|
|
/* 0239F5B8 */ cpu->r[30] = cpu->r[30] + 0x00006000u;
|
|
/* 0239F5BC */ _t52 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239F5BC */ _t53 = _t52 & 0x00000001u;
|
|
/* 0239F5BC */ if (_t53) goto L_0239F5C0; else goto L_0239F604;
|
|
L_0239F5C0: ; // 0x239f5c0
|
|
/* 0239F5C0 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0239F5C4 */ _t54 = cpu->r[30] + 0x00000000u;
|
|
/* 0239F5C4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t54);
|
|
/* 0239F5C8 */ _t55 = cpu->r[12] + 0x000064A4u;
|
|
/* 0239F5C8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t55);
|
|
/* 0239F5CC */ _t56 = cpu->r[6] + 0x00000264u;
|
|
/* 0239F5CC */ cpu->r[5] = rbrew_read32(cpu->mem, _t56);
|
|
/* 0239F5D0 */ _t57 = cpu->r[31] + 0x00000168u;
|
|
/* 0239F5D0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t57);
|
|
/* 0239F5D4 */ cpu->r[7] = cpu->r[5] + cpu->r[12];
|
|
/* 0239F5D8 */ _t58 = cpu->r[7] + 0x00000104u;
|
|
/* 0239F5D8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t58);
|
|
/* 0239F5DC */ _t59 = cpu->r[5] + 0x00000030u;
|
|
/* 0239F5DC */ cpu->r[10] = rbrew_read32(cpu->mem, _t59);
|
|
/* 0239F5E0 */ cpu->r[9] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239F5E4 */ _t60 = cpu->r[9] + cpu->r[10];
|
|
/* 0239F5E4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t60);
|
|
/* 0239F5E8 */ _t61 = cpu->r[11] + 0x00000004u;
|
|
/* 0239F5E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t61);
|
|
/* 0239F5EC */ cpu->r[8] = rbrew_rlwinm(cpu->r[6], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239F5F0 */ _t62 = cpu->r[8] + cpu->r[0];
|
|
/* 0239F5F0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t62);
|
|
/* 0239F5F4 */ _t63 = cpu->r[29] + 0x00005C08u;
|
|
/* 0239F5F4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t63);
|
|
/* 0239F5F8 */ cpu->r[4] = cpu->r[12] + 0x000001B8u;
|
|
/* 0239F5FC */ Gambit_fn_02423840(cpu);
|
|
/* 0239F600 */ _t64 = cpu->r[31] + 0x00000164u;
|
|
/* 0239F600 */ cpu->r[0] = rbrew_read32(cpu->mem, _t64);
|
|
L_0239F604: ; // 0x239f604
|
|
/* 0239F604 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000007u);
|
|
/* 0239F608 */ _t65 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239F608 */ _t66 = _t65 & 0x00000001u;
|
|
/* 0239F608 */ if (_t66) goto L_0239F60C; else goto L_0239F64C;
|
|
L_0239F60C: ; // 0x239f60c
|
|
/* 0239F60C */ cpu->r[9] = 0x101C0000u;
|
|
/* 0239F610 */ _t67 = cpu->r[30] + 0x00000000u;
|
|
/* 0239F610 */ cpu->r[7] = rbrew_read32(cpu->mem, _t67);
|
|
/* 0239F614 */ _t68 = cpu->r[9] + 0x00006490u;
|
|
/* 0239F614 */ cpu->r[9] = rbrew_read32(cpu->mem, _t68);
|
|
/* 0239F618 */ _t69 = cpu->r[7] + 0x00000264u;
|
|
/* 0239F618 */ cpu->r[11] = rbrew_read32(cpu->mem, _t69);
|
|
/* 0239F61C */ _t70 = cpu->r[31] + 0x00000168u;
|
|
/* 0239F61C */ cpu->r[0] = rbrew_read32(cpu->mem, _t70);
|
|
/* 0239F620 */ cpu->r[9] = cpu->r[11] + cpu->r[9];
|
|
/* 0239F624 */ _t71 = cpu->r[9] + 0x00000104u;
|
|
/* 0239F624 */ cpu->r[7] = rbrew_read8(cpu->mem, _t71);
|
|
/* 0239F628 */ _t72 = cpu->r[11] + 0x00000030u;
|
|
/* 0239F628 */ cpu->r[8] = rbrew_read32(cpu->mem, _t72);
|
|
/* 0239F62C */ cpu->r[6] = rbrew_rlwinm(cpu->r[7], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239F630 */ _t73 = cpu->r[6] + cpu->r[8];
|
|
/* 0239F630 */ cpu->r[9] = rbrew_read32(cpu->mem, _t73);
|
|
/* 0239F634 */ _t74 = cpu->r[9] + 0x00000004u;
|
|
/* 0239F634 */ cpu->r[10] = rbrew_read32(cpu->mem, _t74);
|
|
/* 0239F638 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239F63C */ _t75 = cpu->r[12] + cpu->r[10];
|
|
/* 0239F63C */ cpu->r[10] = rbrew_read32(cpu->mem, _t75);
|
|
/* 0239F640 */ _t76 = cpu->r[29] + 0x00005C08u;
|
|
/* 0239F640 */ cpu->r[3] = rbrew_read32(cpu->mem, _t76);
|
|
/* 0239F644 */ cpu->r[4] = cpu->r[10] + 0x000001B8u;
|
|
/* 0239F648 */ Gambit_fn_02423840(cpu);
|
|
L_0239F64C: ; // 0x239f64c
|
|
/* 0239F64C */ _t77 = cpu->r[29] + 0x00005C08u;
|
|
/* 0239F64C */ cpu->r[3] = rbrew_read32(cpu->mem, _t77);
|
|
/* 0239F650 */ Gambit_fn_02423720(cpu);
|
|
/* 0239F654 */ cpu->r[30] = 0x101E0000u;
|
|
/* 0239F658 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239F65C */ cpu->r[30] = cpu->r[30] + 0x00004BCCu;
|
|
/* 0239F660 */ _t78 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239F660 */ _t79 = _t78 & 0x00000001u;
|
|
/* 0239F660 */ if (_t79) goto L_0239F6D0; else goto L_0239F664;
|
|
L_0239F664: ; // 0x239f664
|
|
/* 0239F664 */ _t80 = cpu->r[31] + 0x00000128u;
|
|
/* 0239F664 */ cpu->r[0] = rbrew_read8(cpu->mem, _t80);
|
|
/* 0239F668 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0239F66C */ _t81 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239F66C */ _t82 = _t81 & 0x00000001u;
|
|
/* 0239F66C */ if (_t82) goto L_0239F670; else goto L_0239F7EC;
|
|
L_0239F670: ; // 0x239f670
|
|
/* 0239F670 */ _t83 = cpu->r[29] + 0x00005C08u;
|
|
/* 0239F670 */ cpu->r[3] = rbrew_read32(cpu->mem, _t83);
|
|
/* 0239F674 */ cpu->r[5] = cpu->r[28];
|
|
/* 0239F678 */ cpu->r[4] = cpu->r[31] + 0x0000016Cu;
|
|
/* 0239F67C */ Gambit_fn_02423864(cpu);
|
|
/* 0239F680 */ _t84 = cpu->r[30] + 0x00000004u;
|
|
/* 0239F680 */ cpu->r[5] = rbrew_read32(cpu->mem, _t84);
|
|
/* 0239F684 */ _t85 = cpu->r[5] + 0x00000014u;
|
|
/* 0239F684 */ cpu->r[6] = rbrew_read32(cpu->mem, _t85);
|
|
/* 0239F688 */ _t86 = cpu->r[31] + 0x00000030u;
|
|
/* 0239F688 */ cpu->r[12] = rbrew_read32(cpu->mem, _t86);
|
|
/* 0239F68C */ cpu->ctr = cpu->r[6];
|
|
/* 0239F690 */ _t87 = cpu->r[12] + 0x000000E0u;
|
|
/* 0239F690 */ cpu->r[29] = rbrew_read32(cpu->mem, _t87);
|
|
/* 0239F694 */ cpu->r[3] = cpu->r[30];
|
|
/* 0239F698 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0239F69C */ _t88 = cpu->r[29] + 0x00000034u;
|
|
/* 0239F69C */ cpu->r[7] = rbrew_read32(cpu->mem, _t88);
|
|
/* 0239F6A0 */ _t89 = cpu->r[30] + 0x00000000u;
|
|
/* 0239F6A0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t89);
|
|
/* 0239F6A4 */ cpu->ctr = cpu->r[7];
|
|
/* 0239F6A8 */ _t90 = cpu->r[31] + 0x00000030u;
|
|
/* 0239F6A8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t90);
|
|
/* 0239F6AC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0239F6B0 */ _t91 = cpu->r[1] + 0x00000008u;
|
|
/* 0239F6B0 */ cpu->r[28] = rbrew_read32(cpu->mem, _t91);
|
|
/* 0239F6B4 */ _t92 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239F6B4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t92);
|
|
/* 0239F6B8 */ _t93 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239F6B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t93);
|
|
/* 0239F6BC */ _t94 = cpu->r[1] + 0x00000010u;
|
|
/* 0239F6BC */ cpu->r[30] = rbrew_read32(cpu->mem, _t94);
|
|
/* 0239F6C0 */ cpu->lr = cpu->r[0];
|
|
/* 0239F6C4 */ _t95 = cpu->r[1] + 0x00000014u;
|
|
/* 0239F6C4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t95);
|
|
/* 0239F6C8 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0239F6CC */ return;
|
|
L_0239F6D0: ; // 0x239f6d0
|
|
/* 0239F6D0 */ _t96 = cpu->r[31] + 0x00000158u;
|
|
/* 0239F6D0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t96);
|
|
/* 0239F6D4 */ _t97 = cpu->r[31] + 0x0000015Cu;
|
|
/* 0239F6D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t97);
|
|
/* 0239F6D8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[0]);
|
|
/* 0239F6DC */ _t98 = cpu->r[29] + 0x00005C08u;
|
|
/* 0239F6DC */ cpu->r[3] = rbrew_read32(cpu->mem, _t98);
|
|
/* 0239F6E0 */ _t99 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239F6E0 */ _t100 = _t99 & 0x00000001u;
|
|
/* 0239F6E0 */ if (_t100) goto L_0239F6E4; else goto L_0239F728;
|
|
L_0239F6E4: ; // 0x239f6e4
|
|
/* 0239F6E4 */ Gambit_fn_02423858(cpu);
|
|
/* 0239F6E8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], cpu->r[3]);
|
|
/* 0239F6EC */ _t101 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239F6EC */ _t102 = _t101 & 0x00000001u;
|
|
/* 0239F6EC */ if (_t102) goto L_0239F6FC; else goto L_0239F6F0;
|
|
L_0239F6F0: ; // 0x239f6f0
|
|
/* 0239F6F0 */ _t103 = cpu->r[29] + 0x00005C08u;
|
|
/* 0239F6F0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t103);
|
|
/* 0239F6F4 */ cpu->r[4] = cpu->r[28];
|
|
/* 0239F6F8 */ Gambit_fn_02423850(cpu);
|
|
L_0239F6FC: ; // 0x239f6fc
|
|
/* 0239F6FC */ _t104 = cpu->r[29] + 0x00005C08u;
|
|
/* 0239F6FC */ cpu->r[3] = rbrew_read32(cpu->mem, _t104);
|
|
/* 0239F700 */ cpu->r[4] = cpu->r[31] + 0x0000016Cu;
|
|
/* 0239F704 */ Gambit_fn_02423848(cpu);
|
|
/* 0239F708 */ _t105 = cpu->r[1] + 0x00000008u;
|
|
/* 0239F708 */ cpu->r[28] = rbrew_read32(cpu->mem, _t105);
|
|
/* 0239F70C */ _t106 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239F70C */ cpu->r[29] = rbrew_read32(cpu->mem, _t106);
|
|
/* 0239F710 */ _t107 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239F710 */ cpu->r[0] = rbrew_read32(cpu->mem, _t107);
|
|
/* 0239F714 */ _t108 = cpu->r[1] + 0x00000010u;
|
|
/* 0239F714 */ cpu->r[30] = rbrew_read32(cpu->mem, _t108);
|
|
/* 0239F718 */ cpu->lr = cpu->r[0];
|
|
/* 0239F71C */ _t109 = cpu->r[1] + 0x00000014u;
|
|
/* 0239F71C */ cpu->r[31] = rbrew_read32(cpu->mem, _t109);
|
|
/* 0239F720 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0239F724 */ return;
|
|
L_0239F728: ; // 0x239f728
|
|
/* 0239F728 */ cpu->r[5] = cpu->r[28];
|
|
/* 0239F72C */ cpu->r[4] = cpu->r[31] + 0x0000016Cu;
|
|
/* 0239F730 */ Gambit_fn_02423864(cpu);
|
|
/* 0239F734 */ _t110 = cpu->r[30] + 0x00000004u;
|
|
/* 0239F734 */ cpu->r[11] = rbrew_read32(cpu->mem, _t110);
|
|
/* 0239F738 */ _t111 = cpu->r[11] + 0x00000014u;
|
|
/* 0239F738 */ cpu->r[0] = rbrew_read32(cpu->mem, _t111);
|
|
/* 0239F73C */ _t112 = cpu->r[31] + 0x00000030u;
|
|
/* 0239F73C */ cpu->r[10] = rbrew_read32(cpu->mem, _t112);
|
|
/* 0239F740 */ cpu->ctr = cpu->r[0];
|
|
/* 0239F744 */ _t113 = cpu->r[10] + 0x000000E0u;
|
|
/* 0239F744 */ cpu->r[29] = rbrew_read32(cpu->mem, _t113);
|
|
/* 0239F748 */ cpu->r[3] = cpu->r[30];
|
|
/* 0239F74C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0239F750 */ _t114 = cpu->r[29] + 0x00000034u;
|
|
/* 0239F750 */ cpu->r[0] = rbrew_read32(cpu->mem, _t114);
|
|
/* 0239F754 */ _t115 = cpu->r[30] + 0x00000000u;
|
|
/* 0239F754 */ cpu->r[4] = rbrew_read32(cpu->mem, _t115);
|
|
/* 0239F758 */ cpu->ctr = cpu->r[0];
|
|
/* 0239F75C */ _t116 = cpu->r[31] + 0x00000030u;
|
|
/* 0239F75C */ cpu->r[3] = rbrew_read32(cpu->mem, _t116);
|
|
/* 0239F760 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0239F764 */ _t117 = cpu->r[1] + 0x00000008u;
|
|
/* 0239F764 */ cpu->r[28] = rbrew_read32(cpu->mem, _t117);
|
|
/* 0239F768 */ _t118 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239F768 */ cpu->r[29] = rbrew_read32(cpu->mem, _t118);
|
|
/* 0239F76C */ _t119 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239F76C */ cpu->r[0] = rbrew_read32(cpu->mem, _t119);
|
|
/* 0239F770 */ _t120 = cpu->r[1] + 0x00000010u;
|
|
/* 0239F770 */ cpu->r[30] = rbrew_read32(cpu->mem, _t120);
|
|
/* 0239F774 */ cpu->lr = cpu->r[0];
|
|
/* 0239F778 */ _t121 = cpu->r[1] + 0x00000014u;
|
|
/* 0239F778 */ cpu->r[31] = rbrew_read32(cpu->mem, _t121);
|
|
/* 0239F77C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0239F780 */ return;
|
|
L_0239F784: ; // 0x239f784
|
|
/* 0239F784 */ _t122 = cpu->r[29] + 0x00005C08u;
|
|
/* 0239F784 */ cpu->r[3] = rbrew_read32(cpu->mem, _t122);
|
|
/* 0239F788 */ Gambit_fn_02423790(cpu);
|
|
/* 0239F78C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239F790 */ _t123 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239F790 */ _t124 = _t123 & 0x00000001u;
|
|
/* 0239F790 */ if (_t124) goto L_0239F7D4; else goto L_0239F794;
|
|
L_0239F794: ; // 0x239f794
|
|
/* 0239F794 */ _t125 = cpu->r[29] + 0x00005C08u;
|
|
/* 0239F794 */ cpu->r[3] = rbrew_read32(cpu->mem, _t125);
|
|
/* 0239F798 */ Gambit_fn_024237B0(cpu);
|
|
/* 0239F79C */ cpu->r[28] = 0x101E0000u;
|
|
/* 0239F7A0 */ cpu->r[28] = cpu->r[28] + 0x00004BD4u;
|
|
/* 0239F7A4 */ _t126 = cpu->r[28] + 0x00000004u;
|
|
/* 0239F7A4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t126);
|
|
/* 0239F7A8 */ _t127 = cpu->r[6] + 0x00000014u;
|
|
/* 0239F7A8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t127);
|
|
/* 0239F7AC */ _t128 = cpu->r[31] + 0x00000030u;
|
|
/* 0239F7AC */ cpu->r[5] = rbrew_read32(cpu->mem, _t128);
|
|
/* 0239F7B0 */ cpu->ctr = cpu->r[7];
|
|
/* 0239F7B4 */ _t129 = cpu->r[5] + 0x000000E0u;
|
|
/* 0239F7B4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t129);
|
|
/* 0239F7B8 */ cpu->r[3] = cpu->r[28];
|
|
/* 0239F7BC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0239F7C0 */ _t130 = cpu->r[30] + 0x00000034u;
|
|
/* 0239F7C0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t130);
|
|
/* 0239F7C4 */ _t131 = cpu->r[28] + 0x00000000u;
|
|
/* 0239F7C4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t131);
|
|
/* 0239F7C8 */ cpu->ctr = cpu->r[8];
|
|
/* 0239F7CC */ _t132 = cpu->r[31] + 0x00000030u;
|
|
/* 0239F7CC */ cpu->r[3] = rbrew_read32(cpu->mem, _t132);
|
|
/* 0239F7D0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0239F7D4: ; // 0x239f7d4
|
|
/* 0239F7D4 */ _t133 = cpu->r[29] + 0x00005C08u;
|
|
/* 0239F7D4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t133);
|
|
/* 0239F7D8 */ Gambit_fn_024237A4(cpu);
|
|
/* 0239F7DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239F7E0 */ _t134 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239F7E0 */ _t135 = _t134 & 0x00000001u;
|
|
/* 0239F7E0 */ if (_t135) goto L_0239F7EC; else goto L_0239F7E4;
|
|
L_0239F7E4: ; // 0x239f7e4
|
|
/* 0239F7E4 */ _t136 = cpu->r[29] + 0x00005C08u;
|
|
/* 0239F7E4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t136);
|
|
/* 0239F7E8 */ Gambit_fn_02423818(cpu);
|
|
L_0239F7EC: ; // 0x239f7ec
|
|
/* 0239F7EC */ _t137 = cpu->r[1] + 0x00000008u;
|
|
/* 0239F7EC */ cpu->r[28] = rbrew_read32(cpu->mem, _t137);
|
|
/* 0239F7F0 */ _t138 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239F7F0 */ cpu->r[29] = rbrew_read32(cpu->mem, _t138);
|
|
/* 0239F7F4 */ _t139 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239F7F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t139);
|
|
/* 0239F7F8 */ _t140 = cpu->r[1] + 0x00000010u;
|
|
/* 0239F7F8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t140);
|
|
/* 0239F7FC */ cpu->lr = cpu->r[0];
|
|
/* 0239F800 */ _t141 = cpu->r[1] + 0x00000014u;
|
|
/* 0239F800 */ cpu->r[31] = rbrew_read32(cpu->mem, _t141);
|
|
/* 0239F804 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0239F808 */ return;
|
|
}
|
|
|
|
// fn_0239F440 @ 0x239f440
|
|
void Gambit_fn_0239F440(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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;
|
|
|
|
L_0239F440: ; // 0x239f440
|
|
/* 0239F440 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0239F440 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239F440 */ cpu->r[1] = _t0;
|
|
/* 0239F444 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239F444 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 0239F448 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0239F448 */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 0239F44C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0239F44C */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 0239F450 */ _t4 = cpu->r[1] + 0x00000010u;
|
|
/* 0239F450 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 0239F454 */ cpu->r[31] = cpu->r[3];
|
|
/* 0239F458 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239F458 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0239F45C */ _t6 = cpu->r[31] + 0x0000011Eu;
|
|
/* 0239F45C */ cpu->r[0] = rbrew_read8(cpu->mem, _t6);
|
|
/* 0239F460 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0239F464 */ cpu->r[29] = 0x101C0000u;
|
|
/* 0239F468 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239F468 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0239F468 */ if (_t8) goto L_0239F558; else goto L_0239F46C;
|
|
L_0239F46C: ; // 0x239f46c
|
|
/* 0239F46C */ _t9 = cpu->r[29] + 0x00005C08u;
|
|
/* 0239F46C */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0239F470 */ Gambit_fn_02423720(cpu);
|
|
/* 0239F474 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239F478 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239F478 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0239F478 */ if (_t11) goto L_0239F47C; else goto L_0239F7EC;
|
|
L_0239F47C: ; // 0x239f47c
|
|
/* 0239F47C */ cpu->r[3] = cpu->r[31];
|
|
/* 0239F480 */ Gambit_fn_0239F234(cpu);
|
|
/* 0239F484 */ cpu->r[30] = cpu->r[3];
|
|
/* 0239F488 */ _t12 = cpu->r[29] + 0x00005C08u;
|
|
/* 0239F488 */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0239F48C */ cpu->r[4] = cpu->r[30];
|
|
/* 0239F490 */ Gambit_fn_0242382C(cpu);
|
|
/* 0239F494 */ _t13 = cpu->r[31] + 0x00000030u;
|
|
/* 0239F494 */ cpu->r[10] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0239F498 */ _t14 = cpu->r[10] + 0x000000E0u;
|
|
/* 0239F498 */ cpu->r[11] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0239F49C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0239F4A0 */ cpu->r[29] = cpu->r[11] + 0x00000030u;
|
|
/* 0239F4A4 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239F4A4 */ _t16 = _t15 & 0x00000001u;
|
|
/* 0239F4A4 */ if (_t16) goto L_0239F500; else goto L_0239F4A8;
|
|
L_0239F4A8: ; // 0x239f4a8
|
|
/* 0239F4A8 */ cpu->r[30] = 0x101E0000u;
|
|
/* 0239F4AC */ cpu->r[30] = cpu->r[30] + 0x00004BE4u;
|
|
/* 0239F4B0 */ _t17 = cpu->r[30] + 0x00000004u;
|
|
/* 0239F4B0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0239F4B4 */ _t18 = cpu->r[12] + 0x00000014u;
|
|
/* 0239F4B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0239F4B8 */ cpu->ctr = cpu->r[0];
|
|
/* 0239F4BC */ cpu->r[3] = cpu->r[30];
|
|
/* 0239F4C0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0239F4C4 */ _t19 = cpu->r[29] + 0x00000004u;
|
|
/* 0239F4C4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0239F4C8 */ _t20 = cpu->r[31] + 0x00000030u;
|
|
/* 0239F4C8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0239F4CC */ cpu->ctr = cpu->r[7];
|
|
/* 0239F4D0 */ _t21 = cpu->r[30] + 0x00000000u;
|
|
/* 0239F4D0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0239F4D4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0239F4D8 */ cpu->r[8] = 0x00000001u;
|
|
/* 0239F4DC */ _t22 = cpu->r[31] + 0x00000180u;
|
|
/* 0239F4DC */ rbrew_write8(cpu->mem, _t22, (uint8_t)cpu->r[8]);
|
|
/* 0239F4E0 */ _t23 = cpu->r[1] + 0x00000008u;
|
|
/* 0239F4E0 */ cpu->r[28] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0239F4E4 */ _t24 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239F4E4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0239F4E8 */ _t25 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239F4E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0239F4EC */ _t26 = cpu->r[1] + 0x00000010u;
|
|
/* 0239F4EC */ cpu->r[30] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0239F4F0 */ cpu->lr = cpu->r[0];
|
|
/* 0239F4F4 */ _t27 = cpu->r[1] + 0x00000014u;
|
|
/* 0239F4F4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0239F4F8 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0239F4FC */ return;
|
|
L_0239F500: ; // 0x239f500
|
|
/* 0239F500 */ cpu->r[30] = 0x101E0000u;
|
|
/* 0239F504 */ cpu->r[30] = cpu->r[30] + 0x00004BECu;
|
|
/* 0239F508 */ _t28 = cpu->r[30] + 0x00000004u;
|
|
/* 0239F508 */ cpu->r[5] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0239F50C */ _t29 = cpu->r[5] + 0x00000014u;
|
|
/* 0239F50C */ cpu->r[6] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0239F510 */ cpu->ctr = cpu->r[6];
|
|
/* 0239F514 */ cpu->r[3] = cpu->r[30];
|
|
/* 0239F518 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0239F51C */ _t30 = cpu->r[29] + 0x00000004u;
|
|
/* 0239F51C */ cpu->r[7] = rbrew_read32(cpu->mem, _t30);
|
|
/* 0239F520 */ _t31 = cpu->r[31] + 0x00000030u;
|
|
/* 0239F520 */ cpu->r[3] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0239F524 */ cpu->ctr = cpu->r[7];
|
|
/* 0239F528 */ _t32 = cpu->r[30] + 0x00000000u;
|
|
/* 0239F528 */ cpu->r[4] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0239F52C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0239F530 */ cpu->r[8] = 0x00000001u;
|
|
/* 0239F534 */ _t33 = cpu->r[31] + 0x00000180u;
|
|
/* 0239F534 */ rbrew_write8(cpu->mem, _t33, (uint8_t)cpu->r[8]);
|
|
/* 0239F538 */ _t34 = cpu->r[1] + 0x00000008u;
|
|
/* 0239F538 */ cpu->r[28] = rbrew_read32(cpu->mem, _t34);
|
|
/* 0239F53C */ _t35 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239F53C */ cpu->r[29] = rbrew_read32(cpu->mem, _t35);
|
|
/* 0239F540 */ _t36 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239F540 */ cpu->r[0] = rbrew_read32(cpu->mem, _t36);
|
|
/* 0239F544 */ _t37 = cpu->r[1] + 0x00000010u;
|
|
/* 0239F544 */ cpu->r[30] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0239F548 */ cpu->lr = cpu->r[0];
|
|
/* 0239F54C */ _t38 = cpu->r[1] + 0x00000014u;
|
|
/* 0239F54C */ cpu->r[31] = rbrew_read32(cpu->mem, _t38);
|
|
/* 0239F550 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0239F554 */ return;
|
|
L_0239F558: ; // 0x239f558
|
|
/* 0239F558 */ _t39 = cpu->r[31] + 0x00000160u;
|
|
/* 0239F558 */ cpu->r[0] = rbrew_read8(cpu->mem, _t39);
|
|
/* 0239F55C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0239F560 */ _t40 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239F560 */ _t41 = _t40 & 0x00000001u;
|
|
/* 0239F560 */ if (_t41) goto L_0239F784; else goto L_0239F564;
|
|
L_0239F564: ; // 0x239f564
|
|
/* 0239F564 */ cpu->r[3] = cpu->r[31];
|
|
/* 0239F568 */ Gambit_fn_0239F234(cpu);
|
|
/* 0239F56C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239F570 */ _t42 = cpu->r[31] + 0x00000164u;
|
|
/* 0239F570 */ cpu->r[0] = rbrew_read32(cpu->mem, _t42);
|
|
/* 0239F574 */ _t43 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239F574 */ _t44 = _t43 & 0x00000001u;
|
|
/* 0239F574 */ if (_t44) goto L_0239F5AC; else goto L_0239F578;
|
|
L_0239F578: ; // 0x239f578
|
|
/* 0239F578 */ cpu->r[10] = cpu->r[0];
|
|
/* 0239F57C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], 0x00000001u);
|
|
/* 0239F580 */ _t45 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0239F580 */ _t46 = _t45 & 0x00000001u;
|
|
/* 0239F580 */ if (_t46) goto L_0239F5B0; else goto L_0239F584;
|
|
L_0239F584: ; // 0x239f584
|
|
/* 0239F584 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], 0x0000000Bu);
|
|
/* 0239F588 */ _t47 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0239F588 */ _t48 = _t47 & 0x00000001u;
|
|
/* 0239F588 */ if (_t48) goto L_0239F5B0; else goto L_0239F58C;
|
|
L_0239F58C: ; // 0x239f58c
|
|
/* 0239F58C */ cpu->r[5] = 0x10080000u;
|
|
/* 0239F590 */ cpu->r[30] = 0x101C0000u;
|
|
/* 0239F594 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000006u);
|
|
/* 0239F598 */ cpu->r[5] = cpu->r[5] + 0x00007137u;
|
|
/* 0239F59C */ cpu->r[30] = cpu->r[30] + 0x00006000u;
|
|
/* 0239F5A0 */ _t49 = cpu->r[5] + cpu->r[0];
|
|
/* 0239F5A0 */ cpu->r[28] = rbrew_read8(cpu->mem, _t49);
|
|
/* 0239F5A4 */ _t50 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239F5A4 */ _t51 = _t50 & 0x00000001u;
|
|
/* 0239F5A4 */ if (_t51) goto L_0239F5A8; else goto L_0239F604;
|
|
L_0239F5A8: ; // 0x239f5a8
|
|
/* 0239F5A8 */ goto L_0239F5C0;
|
|
L_0239F5AC: ; // 0x239f5ac
|
|
/* 0239F5AC */ cpu->r[28] = 0x00000007u;
|
|
L_0239F5B0: ; // 0x239f5b0
|
|
/* 0239F5B0 */ cpu->r[30] = 0x101C0000u;
|
|
/* 0239F5B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000006u);
|
|
/* 0239F5B8 */ cpu->r[30] = cpu->r[30] + 0x00006000u;
|
|
/* 0239F5BC */ _t52 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239F5BC */ _t53 = _t52 & 0x00000001u;
|
|
/* 0239F5BC */ if (_t53) goto L_0239F5C0; else goto L_0239F604;
|
|
L_0239F5C0: ; // 0x239f5c0
|
|
/* 0239F5C0 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0239F5C4 */ _t54 = cpu->r[30] + 0x00000000u;
|
|
/* 0239F5C4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t54);
|
|
/* 0239F5C8 */ _t55 = cpu->r[12] + 0x000064A4u;
|
|
/* 0239F5C8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t55);
|
|
/* 0239F5CC */ _t56 = cpu->r[6] + 0x00000264u;
|
|
/* 0239F5CC */ cpu->r[5] = rbrew_read32(cpu->mem, _t56);
|
|
/* 0239F5D0 */ _t57 = cpu->r[31] + 0x00000168u;
|
|
/* 0239F5D0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t57);
|
|
/* 0239F5D4 */ cpu->r[7] = cpu->r[5] + cpu->r[12];
|
|
/* 0239F5D8 */ _t58 = cpu->r[7] + 0x00000104u;
|
|
/* 0239F5D8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t58);
|
|
/* 0239F5DC */ _t59 = cpu->r[5] + 0x00000030u;
|
|
/* 0239F5DC */ cpu->r[10] = rbrew_read32(cpu->mem, _t59);
|
|
/* 0239F5E0 */ cpu->r[9] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239F5E4 */ _t60 = cpu->r[9] + cpu->r[10];
|
|
/* 0239F5E4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t60);
|
|
/* 0239F5E8 */ _t61 = cpu->r[11] + 0x00000004u;
|
|
/* 0239F5E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t61);
|
|
/* 0239F5EC */ cpu->r[8] = rbrew_rlwinm(cpu->r[6], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239F5F0 */ _t62 = cpu->r[8] + cpu->r[0];
|
|
/* 0239F5F0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t62);
|
|
/* 0239F5F4 */ _t63 = cpu->r[29] + 0x00005C08u;
|
|
/* 0239F5F4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t63);
|
|
/* 0239F5F8 */ cpu->r[4] = cpu->r[12] + 0x000001B8u;
|
|
/* 0239F5FC */ Gambit_fn_02423840(cpu);
|
|
/* 0239F600 */ _t64 = cpu->r[31] + 0x00000164u;
|
|
/* 0239F600 */ cpu->r[0] = rbrew_read32(cpu->mem, _t64);
|
|
L_0239F604: ; // 0x239f604
|
|
/* 0239F604 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000007u);
|
|
/* 0239F608 */ _t65 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239F608 */ _t66 = _t65 & 0x00000001u;
|
|
/* 0239F608 */ if (_t66) goto L_0239F60C; else goto L_0239F64C;
|
|
L_0239F60C: ; // 0x239f60c
|
|
/* 0239F60C */ cpu->r[9] = 0x101C0000u;
|
|
/* 0239F610 */ _t67 = cpu->r[30] + 0x00000000u;
|
|
/* 0239F610 */ cpu->r[7] = rbrew_read32(cpu->mem, _t67);
|
|
/* 0239F614 */ _t68 = cpu->r[9] + 0x00006490u;
|
|
/* 0239F614 */ cpu->r[9] = rbrew_read32(cpu->mem, _t68);
|
|
/* 0239F618 */ _t69 = cpu->r[7] + 0x00000264u;
|
|
/* 0239F618 */ cpu->r[11] = rbrew_read32(cpu->mem, _t69);
|
|
/* 0239F61C */ _t70 = cpu->r[31] + 0x00000168u;
|
|
/* 0239F61C */ cpu->r[0] = rbrew_read32(cpu->mem, _t70);
|
|
/* 0239F620 */ cpu->r[9] = cpu->r[11] + cpu->r[9];
|
|
/* 0239F624 */ _t71 = cpu->r[9] + 0x00000104u;
|
|
/* 0239F624 */ cpu->r[7] = rbrew_read8(cpu->mem, _t71);
|
|
/* 0239F628 */ _t72 = cpu->r[11] + 0x00000030u;
|
|
/* 0239F628 */ cpu->r[8] = rbrew_read32(cpu->mem, _t72);
|
|
/* 0239F62C */ cpu->r[6] = rbrew_rlwinm(cpu->r[7], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239F630 */ _t73 = cpu->r[6] + cpu->r[8];
|
|
/* 0239F630 */ cpu->r[9] = rbrew_read32(cpu->mem, _t73);
|
|
/* 0239F634 */ _t74 = cpu->r[9] + 0x00000004u;
|
|
/* 0239F634 */ cpu->r[10] = rbrew_read32(cpu->mem, _t74);
|
|
/* 0239F638 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239F63C */ _t75 = cpu->r[12] + cpu->r[10];
|
|
/* 0239F63C */ cpu->r[10] = rbrew_read32(cpu->mem, _t75);
|
|
/* 0239F640 */ _t76 = cpu->r[29] + 0x00005C08u;
|
|
/* 0239F640 */ cpu->r[3] = rbrew_read32(cpu->mem, _t76);
|
|
/* 0239F644 */ cpu->r[4] = cpu->r[10] + 0x000001B8u;
|
|
/* 0239F648 */ Gambit_fn_02423840(cpu);
|
|
L_0239F64C: ; // 0x239f64c
|
|
/* 0239F64C */ _t77 = cpu->r[29] + 0x00005C08u;
|
|
/* 0239F64C */ cpu->r[3] = rbrew_read32(cpu->mem, _t77);
|
|
/* 0239F650 */ Gambit_fn_02423720(cpu);
|
|
/* 0239F654 */ cpu->r[30] = 0x101E0000u;
|
|
/* 0239F658 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239F65C */ cpu->r[30] = cpu->r[30] + 0x00004BCCu;
|
|
/* 0239F660 */ _t78 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239F660 */ _t79 = _t78 & 0x00000001u;
|
|
/* 0239F660 */ if (_t79) goto L_0239F6D0; else goto L_0239F664;
|
|
L_0239F664: ; // 0x239f664
|
|
/* 0239F664 */ _t80 = cpu->r[31] + 0x00000128u;
|
|
/* 0239F664 */ cpu->r[0] = rbrew_read8(cpu->mem, _t80);
|
|
/* 0239F668 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0239F66C */ _t81 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239F66C */ _t82 = _t81 & 0x00000001u;
|
|
/* 0239F66C */ if (_t82) goto L_0239F670; else goto L_0239F7EC;
|
|
L_0239F670: ; // 0x239f670
|
|
/* 0239F670 */ _t83 = cpu->r[29] + 0x00005C08u;
|
|
/* 0239F670 */ cpu->r[3] = rbrew_read32(cpu->mem, _t83);
|
|
/* 0239F674 */ cpu->r[5] = cpu->r[28];
|
|
/* 0239F678 */ cpu->r[4] = cpu->r[31] + 0x0000016Cu;
|
|
/* 0239F67C */ Gambit_fn_02423864(cpu);
|
|
/* 0239F680 */ _t84 = cpu->r[30] + 0x00000004u;
|
|
/* 0239F680 */ cpu->r[5] = rbrew_read32(cpu->mem, _t84);
|
|
/* 0239F684 */ _t85 = cpu->r[5] + 0x00000014u;
|
|
/* 0239F684 */ cpu->r[6] = rbrew_read32(cpu->mem, _t85);
|
|
/* 0239F688 */ _t86 = cpu->r[31] + 0x00000030u;
|
|
/* 0239F688 */ cpu->r[12] = rbrew_read32(cpu->mem, _t86);
|
|
/* 0239F68C */ cpu->ctr = cpu->r[6];
|
|
/* 0239F690 */ _t87 = cpu->r[12] + 0x000000E0u;
|
|
/* 0239F690 */ cpu->r[29] = rbrew_read32(cpu->mem, _t87);
|
|
/* 0239F694 */ cpu->r[3] = cpu->r[30];
|
|
/* 0239F698 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0239F69C */ _t88 = cpu->r[29] + 0x00000034u;
|
|
/* 0239F69C */ cpu->r[7] = rbrew_read32(cpu->mem, _t88);
|
|
/* 0239F6A0 */ _t89 = cpu->r[30] + 0x00000000u;
|
|
/* 0239F6A0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t89);
|
|
/* 0239F6A4 */ cpu->ctr = cpu->r[7];
|
|
/* 0239F6A8 */ _t90 = cpu->r[31] + 0x00000030u;
|
|
/* 0239F6A8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t90);
|
|
/* 0239F6AC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0239F6B0 */ _t91 = cpu->r[1] + 0x00000008u;
|
|
/* 0239F6B0 */ cpu->r[28] = rbrew_read32(cpu->mem, _t91);
|
|
/* 0239F6B4 */ _t92 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239F6B4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t92);
|
|
/* 0239F6B8 */ _t93 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239F6B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t93);
|
|
/* 0239F6BC */ _t94 = cpu->r[1] + 0x00000010u;
|
|
/* 0239F6BC */ cpu->r[30] = rbrew_read32(cpu->mem, _t94);
|
|
/* 0239F6C0 */ cpu->lr = cpu->r[0];
|
|
/* 0239F6C4 */ _t95 = cpu->r[1] + 0x00000014u;
|
|
/* 0239F6C4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t95);
|
|
/* 0239F6C8 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0239F6CC */ return;
|
|
L_0239F6D0: ; // 0x239f6d0
|
|
/* 0239F6D0 */ _t96 = cpu->r[31] + 0x00000158u;
|
|
/* 0239F6D0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t96);
|
|
/* 0239F6D4 */ _t97 = cpu->r[31] + 0x0000015Cu;
|
|
/* 0239F6D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t97);
|
|
/* 0239F6D8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[0]);
|
|
/* 0239F6DC */ _t98 = cpu->r[29] + 0x00005C08u;
|
|
/* 0239F6DC */ cpu->r[3] = rbrew_read32(cpu->mem, _t98);
|
|
/* 0239F6E0 */ _t99 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239F6E0 */ _t100 = _t99 & 0x00000001u;
|
|
/* 0239F6E0 */ if (_t100) goto L_0239F6E4; else goto L_0239F728;
|
|
L_0239F6E4: ; // 0x239f6e4
|
|
/* 0239F6E4 */ Gambit_fn_02423858(cpu);
|
|
/* 0239F6E8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], cpu->r[3]);
|
|
/* 0239F6EC */ _t101 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239F6EC */ _t102 = _t101 & 0x00000001u;
|
|
/* 0239F6EC */ if (_t102) goto L_0239F6FC; else goto L_0239F6F0;
|
|
L_0239F6F0: ; // 0x239f6f0
|
|
/* 0239F6F0 */ _t103 = cpu->r[29] + 0x00005C08u;
|
|
/* 0239F6F0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t103);
|
|
/* 0239F6F4 */ cpu->r[4] = cpu->r[28];
|
|
/* 0239F6F8 */ Gambit_fn_02423850(cpu);
|
|
L_0239F6FC: ; // 0x239f6fc
|
|
/* 0239F6FC */ _t104 = cpu->r[29] + 0x00005C08u;
|
|
/* 0239F6FC */ cpu->r[3] = rbrew_read32(cpu->mem, _t104);
|
|
/* 0239F700 */ cpu->r[4] = cpu->r[31] + 0x0000016Cu;
|
|
/* 0239F704 */ Gambit_fn_02423848(cpu);
|
|
/* 0239F708 */ _t105 = cpu->r[1] + 0x00000008u;
|
|
/* 0239F708 */ cpu->r[28] = rbrew_read32(cpu->mem, _t105);
|
|
/* 0239F70C */ _t106 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239F70C */ cpu->r[29] = rbrew_read32(cpu->mem, _t106);
|
|
/* 0239F710 */ _t107 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239F710 */ cpu->r[0] = rbrew_read32(cpu->mem, _t107);
|
|
/* 0239F714 */ _t108 = cpu->r[1] + 0x00000010u;
|
|
/* 0239F714 */ cpu->r[30] = rbrew_read32(cpu->mem, _t108);
|
|
/* 0239F718 */ cpu->lr = cpu->r[0];
|
|
/* 0239F71C */ _t109 = cpu->r[1] + 0x00000014u;
|
|
/* 0239F71C */ cpu->r[31] = rbrew_read32(cpu->mem, _t109);
|
|
/* 0239F720 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0239F724 */ return;
|
|
L_0239F728: ; // 0x239f728
|
|
/* 0239F728 */ cpu->r[5] = cpu->r[28];
|
|
/* 0239F72C */ cpu->r[4] = cpu->r[31] + 0x0000016Cu;
|
|
/* 0239F730 */ Gambit_fn_02423864(cpu);
|
|
/* 0239F734 */ _t110 = cpu->r[30] + 0x00000004u;
|
|
/* 0239F734 */ cpu->r[11] = rbrew_read32(cpu->mem, _t110);
|
|
/* 0239F738 */ _t111 = cpu->r[11] + 0x00000014u;
|
|
/* 0239F738 */ cpu->r[0] = rbrew_read32(cpu->mem, _t111);
|
|
/* 0239F73C */ _t112 = cpu->r[31] + 0x00000030u;
|
|
/* 0239F73C */ cpu->r[10] = rbrew_read32(cpu->mem, _t112);
|
|
/* 0239F740 */ cpu->ctr = cpu->r[0];
|
|
/* 0239F744 */ _t113 = cpu->r[10] + 0x000000E0u;
|
|
/* 0239F744 */ cpu->r[29] = rbrew_read32(cpu->mem, _t113);
|
|
/* 0239F748 */ cpu->r[3] = cpu->r[30];
|
|
/* 0239F74C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0239F750 */ _t114 = cpu->r[29] + 0x00000034u;
|
|
/* 0239F750 */ cpu->r[0] = rbrew_read32(cpu->mem, _t114);
|
|
/* 0239F754 */ _t115 = cpu->r[30] + 0x00000000u;
|
|
/* 0239F754 */ cpu->r[4] = rbrew_read32(cpu->mem, _t115);
|
|
/* 0239F758 */ cpu->ctr = cpu->r[0];
|
|
/* 0239F75C */ _t116 = cpu->r[31] + 0x00000030u;
|
|
/* 0239F75C */ cpu->r[3] = rbrew_read32(cpu->mem, _t116);
|
|
/* 0239F760 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0239F764 */ _t117 = cpu->r[1] + 0x00000008u;
|
|
/* 0239F764 */ cpu->r[28] = rbrew_read32(cpu->mem, _t117);
|
|
/* 0239F768 */ _t118 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239F768 */ cpu->r[29] = rbrew_read32(cpu->mem, _t118);
|
|
/* 0239F76C */ _t119 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239F76C */ cpu->r[0] = rbrew_read32(cpu->mem, _t119);
|
|
/* 0239F770 */ _t120 = cpu->r[1] + 0x00000010u;
|
|
/* 0239F770 */ cpu->r[30] = rbrew_read32(cpu->mem, _t120);
|
|
/* 0239F774 */ cpu->lr = cpu->r[0];
|
|
/* 0239F778 */ _t121 = cpu->r[1] + 0x00000014u;
|
|
/* 0239F778 */ cpu->r[31] = rbrew_read32(cpu->mem, _t121);
|
|
/* 0239F77C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0239F780 */ return;
|
|
L_0239F784: ; // 0x239f784
|
|
/* 0239F784 */ _t122 = cpu->r[29] + 0x00005C08u;
|
|
/* 0239F784 */ cpu->r[3] = rbrew_read32(cpu->mem, _t122);
|
|
/* 0239F788 */ Gambit_fn_02423790(cpu);
|
|
/* 0239F78C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239F790 */ _t123 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239F790 */ _t124 = _t123 & 0x00000001u;
|
|
/* 0239F790 */ if (_t124) goto L_0239F7D4; else goto L_0239F794;
|
|
L_0239F794: ; // 0x239f794
|
|
/* 0239F794 */ _t125 = cpu->r[29] + 0x00005C08u;
|
|
/* 0239F794 */ cpu->r[3] = rbrew_read32(cpu->mem, _t125);
|
|
/* 0239F798 */ Gambit_fn_024237B0(cpu);
|
|
/* 0239F79C */ cpu->r[28] = 0x101E0000u;
|
|
/* 0239F7A0 */ cpu->r[28] = cpu->r[28] + 0x00004BD4u;
|
|
/* 0239F7A4 */ _t126 = cpu->r[28] + 0x00000004u;
|
|
/* 0239F7A4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t126);
|
|
/* 0239F7A8 */ _t127 = cpu->r[6] + 0x00000014u;
|
|
/* 0239F7A8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t127);
|
|
/* 0239F7AC */ _t128 = cpu->r[31] + 0x00000030u;
|
|
/* 0239F7AC */ cpu->r[5] = rbrew_read32(cpu->mem, _t128);
|
|
/* 0239F7B0 */ cpu->ctr = cpu->r[7];
|
|
/* 0239F7B4 */ _t129 = cpu->r[5] + 0x000000E0u;
|
|
/* 0239F7B4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t129);
|
|
/* 0239F7B8 */ cpu->r[3] = cpu->r[28];
|
|
/* 0239F7BC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0239F7C0 */ _t130 = cpu->r[30] + 0x00000034u;
|
|
/* 0239F7C0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t130);
|
|
/* 0239F7C4 */ _t131 = cpu->r[28] + 0x00000000u;
|
|
/* 0239F7C4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t131);
|
|
/* 0239F7C8 */ cpu->ctr = cpu->r[8];
|
|
/* 0239F7CC */ _t132 = cpu->r[31] + 0x00000030u;
|
|
/* 0239F7CC */ cpu->r[3] = rbrew_read32(cpu->mem, _t132);
|
|
/* 0239F7D0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0239F7D4: ; // 0x239f7d4
|
|
/* 0239F7D4 */ _t133 = cpu->r[29] + 0x00005C08u;
|
|
/* 0239F7D4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t133);
|
|
/* 0239F7D8 */ Gambit_fn_024237A4(cpu);
|
|
/* 0239F7DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239F7E0 */ _t134 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239F7E0 */ _t135 = _t134 & 0x00000001u;
|
|
/* 0239F7E0 */ if (_t135) goto L_0239F7EC; else goto L_0239F7E4;
|
|
L_0239F7E4: ; // 0x239f7e4
|
|
/* 0239F7E4 */ _t136 = cpu->r[29] + 0x00005C08u;
|
|
/* 0239F7E4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t136);
|
|
/* 0239F7E8 */ Gambit_fn_02423818(cpu);
|
|
L_0239F7EC: ; // 0x239f7ec
|
|
/* 0239F7EC */ _t137 = cpu->r[1] + 0x00000008u;
|
|
/* 0239F7EC */ cpu->r[28] = rbrew_read32(cpu->mem, _t137);
|
|
/* 0239F7F0 */ _t138 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239F7F0 */ cpu->r[29] = rbrew_read32(cpu->mem, _t138);
|
|
/* 0239F7F4 */ _t139 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239F7F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t139);
|
|
/* 0239F7F8 */ _t140 = cpu->r[1] + 0x00000010u;
|
|
/* 0239F7F8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t140);
|
|
/* 0239F7FC */ cpu->lr = cpu->r[0];
|
|
/* 0239F800 */ _t141 = cpu->r[1] + 0x00000014u;
|
|
/* 0239F800 */ cpu->r[31] = rbrew_read32(cpu->mem, _t141);
|
|
/* 0239F804 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0239F808 */ return;
|
|
}
|
|
|
|
// fn_0239F80C @ 0x239f80c
|
|
void Gambit_fn_0239F80C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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_0239F80C: ; // 0x239f80c
|
|
/* 0239F80C */ cpu->r[0] = cpu->lr;
|
|
/* 0239F810 */ _t0 = cpu->r[1] + 0xFFFFFFB8u;
|
|
/* 0239F810 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239F810 */ cpu->r[1] = _t0;
|
|
/* 0239F814 */ _t1 = cpu->r[1] + 0x00000038u;
|
|
/* 0239F814 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0239F818 */ _t2 = cpu->r[1] + 0x00000034u;
|
|
/* 0239F818 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0239F81C */ /* nop */
|
|
/* 0239F820 */ _t3 = cpu->r[1] + 0x00000040u;
|
|
/* 0239F820 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 0239F824 */ _t4 = cpu->r[1] + 0x00000030u;
|
|
/* 0239F824 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 0239F828 */ cpu->r[11] = 0x101F0000u;
|
|
/* 0239F82C */ _t5 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0239F82C */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0239F830 */ _t6 = cpu->r[11] + 0x00006338u;
|
|
/* 0239F830 */ cpu->r[9] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0239F830 */ cpu->r[11] = _t6;
|
|
/* 0239F834 */ cpu->r[7] = 0x101F0000u;
|
|
/* 0239F838 */ _t7 = cpu->r[11] + 0x00000004u;
|
|
/* 0239F838 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0239F83C */ _t8 = cpu->r[7] + 0x00006344u;
|
|
/* 0239F83C */ cpu->r[6] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0239F83C */ cpu->r[7] = _t8;
|
|
/* 0239F840 */ _t9 = cpu->r[1] + 0x00000018u;
|
|
/* 0239F840 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 0239F844 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0239F844 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 0239F848 */ _t11 = cpu->r[7] + 0x00000008u;
|
|
/* 0239F848 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0239F84C */ _t12 = cpu->r[1] + 0x00000020u;
|
|
/* 0239F84C */ rbrew_write32(cpu->mem, _t12, cpu->r[6]);
|
|
/* 0239F850 */ cpu->f[31] = cpu->f[1];
|
|
/* 0239F854 */ _t13 = cpu->r[7] + 0x00000004u;
|
|
/* 0239F854 */ cpu->r[8] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0239F858 */ _t14 = cpu->r[11] + 0x00000008u;
|
|
/* 0239F858 */ cpu->r[6] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0239F85C */ cpu->r[30] = cpu->r[3];
|
|
/* 0239F860 */ _t15 = cpu->r[1] + 0x00000028u;
|
|
/* 0239F860 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 0239F864 */ cpu->r[3] = 0x00000007u;
|
|
/* 0239F868 */ _t16 = cpu->r[1] + 0x00000024u;
|
|
/* 0239F868 */ rbrew_write32(cpu->mem, _t16, cpu->r[8]);
|
|
/* 0239F86C */ cpu->r[31] = cpu->r[4];
|
|
/* 0239F870 */ _t17 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239F870 */ rbrew_write32(cpu->mem, _t17, cpu->r[6]);
|
|
/* 0239F874 */ Gambit_fn_027E6EEC(cpu);
|
|
/* 0239F878 */ _t18 = cpu->r[3] + 0x0000004Cu;
|
|
/* 0239F878 */ cpu->r[6] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0239F87C */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 0239F880 */ _t19 = cpu->r[3] + 0x00000048u;
|
|
/* 0239F880 */ cpu->r[7] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0239F884 */ cpu->r[3] = cpu->r[3] + 0x00000018u;
|
|
/* 0239F888 */ cpu->r[5] = cpu->r[31];
|
|
/* 0239F88C */ Gambit_fn_0281DE8C(cpu);
|
|
/* 0239F890 */ _t20 = cpu->r[1] + 0x00000018u;
|
|
/* 0239F890 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 0239F894 */ _t21 = cpu->r[1] + 0x00000024u;
|
|
/* 0239F894 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 0239F898 */ cpu->f[0] = cpu->f[13] - cpu->f[31];
|
|
/* 0239F89C */ _t22 = cpu->r[1] + 0x00000014u;
|
|
/* 0239F89C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 0239F8A0 */ _t23 = cpu->r[1] + 0x00000020u;
|
|
/* 0239F8A0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 0239F8A4 */ cpu->f[0] = cpu->f[0] / cpu->f[10];
|
|
/* 0239F8A8 */ _t24 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239F8A8 */ rbrew_write_f32(cpu->mem, _t24, cpu->f[31]);
|
|
/* 0239F8AC */ cpu->f[10] = fabs(cpu->f[0]);
|
|
/* 0239F8B0 */ _t25 = cpu->r[1] + 0x00000028u;
|
|
/* 0239F8B0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 0239F8B4 */ _t26 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239F8B4 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 0239F8B8 */ cpu->f[12] = fma(cpu->f[11], cpu->f[10], cpu->f[13]);
|
|
/* 0239F8BC */ _t27 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239F8BC */ cpu->r[5] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0239F8C0 */ cpu->f[13] = fma(cpu->f[0], cpu->f[10], cpu->f[9]);
|
|
/* 0239F8C4 */ _t28 = cpu->r[1] + 0x00000008u;
|
|
/* 0239F8C4 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[12]);
|
|
/* 0239F8C8 */ _t29 = cpu->r[1] + 0x00000008u;
|
|
/* 0239F8C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0239F8CC */ _t30 = cpu->r[1] + 0x00000010u;
|
|
/* 0239F8CC */ rbrew_write_f32(cpu->mem, _t30, cpu->f[13]);
|
|
/* 0239F8D0 */ _t31 = cpu->r[1] + 0x00000010u;
|
|
/* 0239F8D0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0239F8D4 */ _t32 = cpu->r[30] + 0x00000000u;
|
|
/* 0239F8D4 */ rbrew_write32(cpu->mem, _t32, cpu->r[0]);
|
|
/* 0239F8D8 */ _t33 = cpu->r[30] + 0x00000004u;
|
|
/* 0239F8D8 */ rbrew_write32(cpu->mem, _t33, cpu->r[5]);
|
|
/* 0239F8DC */ _t34 = cpu->r[30] + 0x00000008u;
|
|
/* 0239F8DC */ rbrew_write32(cpu->mem, _t34, cpu->r[7]);
|
|
/* 0239F8E0 */ _t35 = cpu->r[1] + 0x00000040u;
|
|
/* 0239F8E0 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 0239F8E4 */ _t36 = cpu->r[1] + 0x00000030u;
|
|
/* 0239F8E4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t36);
|
|
/* 0239F8E8 */ _t37 = cpu->r[1] + 0x00000038u;
|
|
/* 0239F8E8 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t37);
|
|
/* 0239F8EC */ _t38 = cpu->r[1] + 0x00000034u;
|
|
/* 0239F8EC */ cpu->r[31] = rbrew_read32(cpu->mem, _t38);
|
|
/* 0239F8F0 */ _t39 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0239F8F0 */ _t40 = _t39 & 0x00000001u;
|
|
/* 0239F8F0 */ if (_t40) goto L_0239F8F4; // else: addr-0 trap, fall-through
|
|
L_0239F8F4: ; // 0x239f8f4
|
|
/* 0239F8F4 */ _t41 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0239F8F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0239F8F8 */ cpu->lr = cpu->r[0];
|
|
/* 0239F8FC */ cpu->r[1] = cpu->r[1] + 0x00000048u;
|
|
/* 0239F900 */ return;
|
|
}
|
|
|
|
// fn_0239F810 @ 0x239f810
|
|
void Gambit_fn_0239F810(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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_0239F810: ; // 0x239f810
|
|
/* 0239F810 */ _t0 = cpu->r[1] + 0xFFFFFFB8u;
|
|
/* 0239F810 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239F810 */ cpu->r[1] = _t0;
|
|
/* 0239F814 */ _t1 = cpu->r[1] + 0x00000038u;
|
|
/* 0239F814 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0239F818 */ _t2 = cpu->r[1] + 0x00000034u;
|
|
/* 0239F818 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0239F81C */ /* nop */
|
|
/* 0239F820 */ _t3 = cpu->r[1] + 0x00000040u;
|
|
/* 0239F820 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 0239F824 */ _t4 = cpu->r[1] + 0x00000030u;
|
|
/* 0239F824 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 0239F828 */ cpu->r[11] = 0x101F0000u;
|
|
/* 0239F82C */ _t5 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0239F82C */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0239F830 */ _t6 = cpu->r[11] + 0x00006338u;
|
|
/* 0239F830 */ cpu->r[9] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0239F830 */ cpu->r[11] = _t6;
|
|
/* 0239F834 */ cpu->r[7] = 0x101F0000u;
|
|
/* 0239F838 */ _t7 = cpu->r[11] + 0x00000004u;
|
|
/* 0239F838 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0239F83C */ _t8 = cpu->r[7] + 0x00006344u;
|
|
/* 0239F83C */ cpu->r[6] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0239F83C */ cpu->r[7] = _t8;
|
|
/* 0239F840 */ _t9 = cpu->r[1] + 0x00000018u;
|
|
/* 0239F840 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 0239F844 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0239F844 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 0239F848 */ _t11 = cpu->r[7] + 0x00000008u;
|
|
/* 0239F848 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0239F84C */ _t12 = cpu->r[1] + 0x00000020u;
|
|
/* 0239F84C */ rbrew_write32(cpu->mem, _t12, cpu->r[6]);
|
|
/* 0239F850 */ cpu->f[31] = cpu->f[1];
|
|
/* 0239F854 */ _t13 = cpu->r[7] + 0x00000004u;
|
|
/* 0239F854 */ cpu->r[8] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0239F858 */ _t14 = cpu->r[11] + 0x00000008u;
|
|
/* 0239F858 */ cpu->r[6] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0239F85C */ cpu->r[30] = cpu->r[3];
|
|
/* 0239F860 */ _t15 = cpu->r[1] + 0x00000028u;
|
|
/* 0239F860 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 0239F864 */ cpu->r[3] = 0x00000007u;
|
|
/* 0239F868 */ _t16 = cpu->r[1] + 0x00000024u;
|
|
/* 0239F868 */ rbrew_write32(cpu->mem, _t16, cpu->r[8]);
|
|
/* 0239F86C */ cpu->r[31] = cpu->r[4];
|
|
/* 0239F870 */ _t17 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239F870 */ rbrew_write32(cpu->mem, _t17, cpu->r[6]);
|
|
/* 0239F874 */ Gambit_fn_027E6EEC(cpu);
|
|
/* 0239F878 */ _t18 = cpu->r[3] + 0x0000004Cu;
|
|
/* 0239F878 */ cpu->r[6] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0239F87C */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 0239F880 */ _t19 = cpu->r[3] + 0x00000048u;
|
|
/* 0239F880 */ cpu->r[7] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0239F884 */ cpu->r[3] = cpu->r[3] + 0x00000018u;
|
|
/* 0239F888 */ cpu->r[5] = cpu->r[31];
|
|
/* 0239F88C */ Gambit_fn_0281DE8C(cpu);
|
|
/* 0239F890 */ _t20 = cpu->r[1] + 0x00000018u;
|
|
/* 0239F890 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 0239F894 */ _t21 = cpu->r[1] + 0x00000024u;
|
|
/* 0239F894 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 0239F898 */ cpu->f[0] = cpu->f[13] - cpu->f[31];
|
|
/* 0239F89C */ _t22 = cpu->r[1] + 0x00000014u;
|
|
/* 0239F89C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 0239F8A0 */ _t23 = cpu->r[1] + 0x00000020u;
|
|
/* 0239F8A0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 0239F8A4 */ cpu->f[0] = cpu->f[0] / cpu->f[10];
|
|
/* 0239F8A8 */ _t24 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239F8A8 */ rbrew_write_f32(cpu->mem, _t24, cpu->f[31]);
|
|
/* 0239F8AC */ cpu->f[10] = fabs(cpu->f[0]);
|
|
/* 0239F8B0 */ _t25 = cpu->r[1] + 0x00000028u;
|
|
/* 0239F8B0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 0239F8B4 */ _t26 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239F8B4 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 0239F8B8 */ cpu->f[12] = fma(cpu->f[11], cpu->f[10], cpu->f[13]);
|
|
/* 0239F8BC */ _t27 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239F8BC */ cpu->r[5] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0239F8C0 */ cpu->f[13] = fma(cpu->f[0], cpu->f[10], cpu->f[9]);
|
|
/* 0239F8C4 */ _t28 = cpu->r[1] + 0x00000008u;
|
|
/* 0239F8C4 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[12]);
|
|
/* 0239F8C8 */ _t29 = cpu->r[1] + 0x00000008u;
|
|
/* 0239F8C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0239F8CC */ _t30 = cpu->r[1] + 0x00000010u;
|
|
/* 0239F8CC */ rbrew_write_f32(cpu->mem, _t30, cpu->f[13]);
|
|
/* 0239F8D0 */ _t31 = cpu->r[1] + 0x00000010u;
|
|
/* 0239F8D0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0239F8D4 */ _t32 = cpu->r[30] + 0x00000000u;
|
|
/* 0239F8D4 */ rbrew_write32(cpu->mem, _t32, cpu->r[0]);
|
|
/* 0239F8D8 */ _t33 = cpu->r[30] + 0x00000004u;
|
|
/* 0239F8D8 */ rbrew_write32(cpu->mem, _t33, cpu->r[5]);
|
|
/* 0239F8DC */ _t34 = cpu->r[30] + 0x00000008u;
|
|
/* 0239F8DC */ rbrew_write32(cpu->mem, _t34, cpu->r[7]);
|
|
/* 0239F8E0 */ _t35 = cpu->r[1] + 0x00000040u;
|
|
/* 0239F8E0 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 0239F8E4 */ _t36 = cpu->r[1] + 0x00000030u;
|
|
/* 0239F8E4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t36);
|
|
/* 0239F8E8 */ _t37 = cpu->r[1] + 0x00000038u;
|
|
/* 0239F8E8 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t37);
|
|
/* 0239F8EC */ _t38 = cpu->r[1] + 0x00000034u;
|
|
/* 0239F8EC */ cpu->r[31] = rbrew_read32(cpu->mem, _t38);
|
|
/* 0239F8F0 */ _t39 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0239F8F0 */ _t40 = _t39 & 0x00000001u;
|
|
/* 0239F8F0 */ if (_t40) goto L_0239F8F4; // else: addr-0 trap, fall-through
|
|
L_0239F8F4: ; // 0x239f8f4
|
|
/* 0239F8F4 */ _t41 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0239F8F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0239F8F8 */ cpu->lr = cpu->r[0];
|
|
/* 0239F8FC */ cpu->r[1] = cpu->r[1] + 0x00000048u;
|
|
/* 0239F900 */ return;
|
|
}
|
|
|
|
// fn_0239F904 @ 0x239f904
|
|
void Gambit_fn_0239F904(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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;
|
|
|
|
L_0239F904: ; // 0x239f904
|
|
/* 0239F904 */ cpu->r[0] = cpu->lr;
|
|
/* 0239F908 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 0239F908 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239F908 */ cpu->r[1] = _t0;
|
|
/* 0239F90C */ _t1 = cpu->r[1] + 0x00000018u;
|
|
/* 0239F90C */ rbrew_write32(cpu->mem, _t1, cpu->r[28]);
|
|
/* 0239F910 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239F910 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 0239F914 */ _t3 = cpu->r[1] + 0x00000024u;
|
|
/* 0239F914 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 0239F918 */ _t4 = cpu->r[1] + 0x00000020u;
|
|
/* 0239F918 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 0239F91C */ cpu->r[31] = cpu->r[3];
|
|
/* 0239F920 */ _t5 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0239F920 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0239F924 */ _t6 = cpu->r[31] + 0x00000128u;
|
|
/* 0239F924 */ cpu->r[11] = rbrew_read8(cpu->mem, _t6);
|
|
/* 0239F928 */ cpu->r[28] = 0x101C0000u;
|
|
/* 0239F92C */ cpu->r[30] = 0x101C0000u;
|
|
/* 0239F930 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0239F934 */ cpu->r[29] = 0x101C0000u;
|
|
/* 0239F938 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239F938 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0239F938 */ if (_t8) goto L_0239FB4C; else goto L_0239F93C;
|
|
L_0239F93C: ; // 0x239f93c
|
|
/* 0239F93C */ cpu->r[7] = 0x10080000u;
|
|
/* 0239F940 */ cpu->r[4] = cpu->r[31] + 0x00000114u;
|
|
/* 0239F944 */ _t9 = cpu->r[7] + 0x0000704Cu;
|
|
/* 0239F944 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 0239F948 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0239F94C */ Gambit_fn_0239F80C(cpu);
|
|
/* 0239F950 */ _t10 = cpu->r[31] + 0x0000011Cu;
|
|
/* 0239F950 */ cpu->r[0] = rbrew_read8(cpu->mem, _t10);
|
|
/* 0239F954 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0239F958 */ _t11 = cpu->r[31] + 0x0000012Cu;
|
|
/* 0239F958 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0239F95C */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239F95C */ _t13 = _t12 & 0x00000001u;
|
|
/* 0239F95C */ if (_t13) goto L_0239FA48; else goto L_0239F960;
|
|
L_0239F960: ; // 0x239f960
|
|
/* 0239F960 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], 0x0000000Au);
|
|
/* 0239F964 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239F964 */ _t15 = _t14 & 0x00000001u;
|
|
/* 0239F964 */ if (_t15) goto L_0239F990; else goto L_0239F968;
|
|
L_0239F968: ; // 0x239f968
|
|
/* 0239F968 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], 0x0000000Bu);
|
|
/* 0239F96C */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239F96C */ _t17 = _t16 & 0x00000001u;
|
|
/* 0239F96C */ if (_t17) goto L_0239F9EC; else goto L_0239F970;
|
|
L_0239F970: ; // 0x239f970
|
|
/* 0239F970 */ _t18 = cpu->r[1] + 0x00000018u;
|
|
/* 0239F970 */ cpu->r[28] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0239F974 */ _t19 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239F974 */ cpu->r[29] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0239F978 */ _t20 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0239F978 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0239F97C */ _t21 = cpu->r[1] + 0x00000020u;
|
|
/* 0239F97C */ cpu->r[30] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0239F980 */ cpu->lr = cpu->r[0];
|
|
/* 0239F984 */ _t22 = cpu->r[1] + 0x00000024u;
|
|
/* 0239F984 */ cpu->r[31] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0239F988 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 0239F98C */ return;
|
|
L_0239F990: ; // 0x239f990
|
|
/* 0239F990 */ _t23 = cpu->r[28] + 0x00006000u;
|
|
/* 0239F990 */ cpu->r[9] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0239F994 */ _t24 = cpu->r[30] + 0x00006898u;
|
|
/* 0239F994 */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0239F998 */ _t25 = cpu->r[9] + 0x00000264u;
|
|
/* 0239F998 */ cpu->r[11] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0239F99C */ _t26 = cpu->r[31] + 0x00000130u;
|
|
/* 0239F99C */ cpu->r[12] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0239F9A0 */ cpu->r[10] = cpu->r[11] + cpu->r[0];
|
|
/* 0239F9A4 */ _t27 = cpu->r[10] + 0x00000104u;
|
|
/* 0239F9A4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t27);
|
|
/* 0239F9A8 */ _t28 = cpu->r[11] + 0x00000030u;
|
|
/* 0239F9A8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0239F9AC */ cpu->r[5] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239F9B0 */ _t29 = cpu->r[5] + cpu->r[6];
|
|
/* 0239F9B0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0239F9B4 */ _t30 = cpu->r[7] + 0x00000004u;
|
|
/* 0239F9B4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t30);
|
|
/* 0239F9B8 */ cpu->r[12] = rbrew_rlwinm(cpu->r[12], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239F9BC */ cpu->r[4] = cpu->r[31] + 0x00000114u;
|
|
/* 0239F9C0 */ _t31 = cpu->r[12] + cpu->r[8];
|
|
/* 0239F9C0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0239F9C4 */ cpu->r[5] = 0x00000000u;
|
|
/* 0239F9C8 */ Gambit_fn_02527570(cpu);
|
|
/* 0239F9CC */ _t32 = cpu->r[1] + 0x00000018u;
|
|
/* 0239F9CC */ cpu->r[28] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0239F9D0 */ _t33 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239F9D0 */ cpu->r[29] = rbrew_read32(cpu->mem, _t33);
|
|
/* 0239F9D4 */ _t34 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0239F9D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t34);
|
|
/* 0239F9D8 */ _t35 = cpu->r[1] + 0x00000024u;
|
|
/* 0239F9D8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t35);
|
|
/* 0239F9DC */ cpu->lr = cpu->r[0];
|
|
/* 0239F9E0 */ _t36 = cpu->r[1] + 0x00000020u;
|
|
/* 0239F9E0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t36);
|
|
/* 0239F9E4 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 0239F9E8 */ return;
|
|
L_0239F9EC: ; // 0x239f9ec
|
|
/* 0239F9EC */ _t37 = cpu->r[28] + 0x00006000u;
|
|
/* 0239F9EC */ cpu->r[9] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0239F9F0 */ _t38 = cpu->r[29] + 0x000068B0u;
|
|
/* 0239F9F0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t38);
|
|
/* 0239F9F4 */ _t39 = cpu->r[9] + 0x00000264u;
|
|
/* 0239F9F4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t39);
|
|
/* 0239F9F8 */ _t40 = cpu->r[31] + 0x00000130u;
|
|
/* 0239F9F8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0239F9FC */ cpu->r[10] = cpu->r[12] + cpu->r[11];
|
|
/* 0239FA00 */ _t41 = cpu->r[10] + 0x00000104u;
|
|
/* 0239FA00 */ cpu->r[0] = rbrew_read8(cpu->mem, _t41);
|
|
/* 0239FA04 */ _t42 = cpu->r[12] + 0x00000030u;
|
|
/* 0239FA04 */ cpu->r[8] = rbrew_read32(cpu->mem, _t42);
|
|
/* 0239FA08 */ cpu->r[6] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239FA0C */ _t43 = cpu->r[6] + cpu->r[8];
|
|
/* 0239FA0C */ cpu->r[9] = rbrew_read32(cpu->mem, _t43);
|
|
/* 0239FA10 */ _t44 = cpu->r[9] + 0x00000004u;
|
|
/* 0239FA10 */ cpu->r[0] = rbrew_read32(cpu->mem, _t44);
|
|
/* 0239FA14 */ cpu->r[5] = rbrew_rlwinm(cpu->r[7], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239FA18 */ cpu->r[4] = cpu->r[31] + 0x00000114u;
|
|
/* 0239FA1C */ _t45 = cpu->r[5] + cpu->r[0];
|
|
/* 0239FA1C */ cpu->r[3] = rbrew_read32(cpu->mem, _t45);
|
|
/* 0239FA20 */ cpu->r[5] = 0x00000000u;
|
|
/* 0239FA24 */ Gambit_fn_02529F04(cpu);
|
|
/* 0239FA28 */ _t46 = cpu->r[1] + 0x00000018u;
|
|
/* 0239FA28 */ cpu->r[28] = rbrew_read32(cpu->mem, _t46);
|
|
/* 0239FA2C */ _t47 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239FA2C */ cpu->r[29] = rbrew_read32(cpu->mem, _t47);
|
|
/* 0239FA30 */ _t48 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0239FA30 */ cpu->r[0] = rbrew_read32(cpu->mem, _t48);
|
|
/* 0239FA34 */ _t49 = cpu->r[1] + 0x00000024u;
|
|
/* 0239FA34 */ cpu->r[31] = rbrew_read32(cpu->mem, _t49);
|
|
/* 0239FA38 */ cpu->lr = cpu->r[0];
|
|
/* 0239FA3C */ _t50 = cpu->r[1] + 0x00000020u;
|
|
/* 0239FA3C */ cpu->r[30] = rbrew_read32(cpu->mem, _t50);
|
|
/* 0239FA40 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 0239FA44 */ return;
|
|
L_0239FA48: ; // 0x239fa48
|
|
/* 0239FA48 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], 0x0000000Au);
|
|
/* 0239FA4C */ _t51 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239FA4C */ _t52 = _t51 & 0x00000001u;
|
|
/* 0239FA4C */ if (_t52) goto L_0239FA80; else goto L_0239FA50;
|
|
L_0239FA50: ; // 0x239fa50
|
|
/* 0239FA50 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], 0x0000000Bu);
|
|
/* 0239FA54 */ _t53 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239FA54 */ _t54 = _t53 & 0x00000001u;
|
|
/* 0239FA54 */ if (_t54) goto L_0239FAF0; else goto L_0239FA58;
|
|
L_0239FA58: ; // 0x239fa58
|
|
/* 0239FA58 */ cpu->r[10] = 0x00000000u;
|
|
/* 0239FA5C */ _t55 = cpu->r[31] + 0x00000128u;
|
|
/* 0239FA5C */ rbrew_write8(cpu->mem, _t55, (uint8_t)cpu->r[10]);
|
|
/* 0239FA60 */ _t56 = cpu->r[1] + 0x00000018u;
|
|
/* 0239FA60 */ cpu->r[28] = rbrew_read32(cpu->mem, _t56);
|
|
/* 0239FA64 */ _t57 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239FA64 */ cpu->r[29] = rbrew_read32(cpu->mem, _t57);
|
|
/* 0239FA68 */ _t58 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0239FA68 */ cpu->r[0] = rbrew_read32(cpu->mem, _t58);
|
|
/* 0239FA6C */ _t59 = cpu->r[1] + 0x00000020u;
|
|
/* 0239FA6C */ cpu->r[30] = rbrew_read32(cpu->mem, _t59);
|
|
/* 0239FA70 */ cpu->lr = cpu->r[0];
|
|
/* 0239FA74 */ _t60 = cpu->r[1] + 0x00000024u;
|
|
/* 0239FA74 */ cpu->r[31] = rbrew_read32(cpu->mem, _t60);
|
|
/* 0239FA78 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 0239FA7C */ return;
|
|
L_0239FA80: ; // 0x239fa80
|
|
/* 0239FA80 */ _t61 = cpu->r[28] + 0x00006000u;
|
|
/* 0239FA80 */ cpu->r[10] = rbrew_read32(cpu->mem, _t61);
|
|
/* 0239FA84 */ _t62 = cpu->r[30] + 0x00006898u;
|
|
/* 0239FA84 */ cpu->r[5] = rbrew_read32(cpu->mem, _t62);
|
|
/* 0239FA88 */ _t63 = cpu->r[10] + 0x00000264u;
|
|
/* 0239FA88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t63);
|
|
/* 0239FA8C */ _t64 = cpu->r[31] + 0x00000130u;
|
|
/* 0239FA8C */ cpu->r[6] = rbrew_read32(cpu->mem, _t64);
|
|
/* 0239FA90 */ cpu->r[11] = cpu->r[12] + cpu->r[5];
|
|
/* 0239FA94 */ _t65 = cpu->r[11] + 0x00000104u;
|
|
/* 0239FA94 */ cpu->r[8] = rbrew_read8(cpu->mem, _t65);
|
|
/* 0239FA98 */ _t66 = cpu->r[12] + 0x00000030u;
|
|
/* 0239FA98 */ cpu->r[0] = rbrew_read32(cpu->mem, _t66);
|
|
/* 0239FA9C */ cpu->r[10] = rbrew_rlwinm(cpu->r[8], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239FAA0 */ _t67 = cpu->r[10] + cpu->r[0];
|
|
/* 0239FAA0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t67);
|
|
/* 0239FAA4 */ _t68 = cpu->r[5] + 0x00000004u;
|
|
/* 0239FAA4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t68);
|
|
/* 0239FAA8 */ cpu->r[8] = rbrew_rlwinm(cpu->r[6], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239FAAC */ _t69 = cpu->r[8] + cpu->r[7];
|
|
/* 0239FAAC */ cpu->r[30] = rbrew_read32(cpu->mem, _t69);
|
|
/* 0239FAB0 */ cpu->r[5] = 0x00000001u;
|
|
/* 0239FAB4 */ cpu->r[4] = cpu->r[31] + 0x00000114u;
|
|
/* 0239FAB8 */ cpu->r[3] = cpu->r[30];
|
|
/* 0239FABC */ Gambit_fn_02527570(cpu);
|
|
/* 0239FAC0 */ cpu->r[0] = 0x00000001u;
|
|
/* 0239FAC4 */ cpu->r[10] = 0x00000000u;
|
|
/* 0239FAC8 */ _t70 = cpu->r[30] + 0x000002B4u;
|
|
/* 0239FAC8 */ rbrew_write8(cpu->mem, _t70, (uint8_t)cpu->r[0]);
|
|
/* 0239FACC */ _t71 = cpu->r[31] + 0x00000128u;
|
|
/* 0239FACC */ rbrew_write8(cpu->mem, _t71, (uint8_t)cpu->r[10]);
|
|
/* 0239FAD0 */ _t72 = cpu->r[1] + 0x00000018u;
|
|
/* 0239FAD0 */ cpu->r[28] = rbrew_read32(cpu->mem, _t72);
|
|
/* 0239FAD4 */ _t73 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239FAD4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t73);
|
|
/* 0239FAD8 */ _t74 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0239FAD8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t74);
|
|
/* 0239FADC */ _t75 = cpu->r[1] + 0x00000024u;
|
|
/* 0239FADC */ cpu->r[31] = rbrew_read32(cpu->mem, _t75);
|
|
/* 0239FAE0 */ cpu->lr = cpu->r[0];
|
|
/* 0239FAE4 */ _t76 = cpu->r[1] + 0x00000020u;
|
|
/* 0239FAE4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t76);
|
|
/* 0239FAE8 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 0239FAEC */ return;
|
|
L_0239FAF0: ; // 0x239faf0
|
|
/* 0239FAF0 */ _t77 = cpu->r[28] + 0x00006000u;
|
|
/* 0239FAF0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t77);
|
|
/* 0239FAF4 */ _t78 = cpu->r[29] + 0x000068B0u;
|
|
/* 0239FAF4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t78);
|
|
/* 0239FAF8 */ _t79 = cpu->r[10] + 0x00000264u;
|
|
/* 0239FAF8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t79);
|
|
/* 0239FAFC */ _t80 = cpu->r[31] + 0x00000130u;
|
|
/* 0239FAFC */ cpu->r[5] = rbrew_read32(cpu->mem, _t80);
|
|
/* 0239FB00 */ cpu->r[12] = cpu->r[11] + cpu->r[6];
|
|
/* 0239FB04 */ _t81 = cpu->r[12] + 0x00000104u;
|
|
/* 0239FB04 */ cpu->r[7] = rbrew_read8(cpu->mem, _t81);
|
|
/* 0239FB08 */ _t82 = cpu->r[11] + 0x00000030u;
|
|
/* 0239FB08 */ cpu->r[0] = rbrew_read32(cpu->mem, _t82);
|
|
/* 0239FB0C */ cpu->r[9] = rbrew_rlwinm(cpu->r[7], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239FB10 */ _t83 = cpu->r[9] + cpu->r[0];
|
|
/* 0239FB10 */ cpu->r[7] = rbrew_read32(cpu->mem, _t83);
|
|
/* 0239FB14 */ _t84 = cpu->r[7] + 0x00000004u;
|
|
/* 0239FB14 */ cpu->r[9] = rbrew_read32(cpu->mem, _t84);
|
|
/* 0239FB18 */ cpu->r[8] = rbrew_rlwinm(cpu->r[5], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239FB1C */ _t85 = cpu->r[8] + cpu->r[9];
|
|
/* 0239FB1C */ cpu->r[3] = rbrew_read32(cpu->mem, _t85);
|
|
/* 0239FB20 */ Gambit_fn_0252A674(cpu);
|
|
/* 0239FB24 */ cpu->r[10] = 0x00000000u;
|
|
/* 0239FB28 */ _t86 = cpu->r[31] + 0x00000128u;
|
|
/* 0239FB28 */ rbrew_write8(cpu->mem, _t86, (uint8_t)cpu->r[10]);
|
|
/* 0239FB2C */ _t87 = cpu->r[1] + 0x00000018u;
|
|
/* 0239FB2C */ cpu->r[28] = rbrew_read32(cpu->mem, _t87);
|
|
/* 0239FB30 */ _t88 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239FB30 */ cpu->r[29] = rbrew_read32(cpu->mem, _t88);
|
|
/* 0239FB34 */ _t89 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0239FB34 */ cpu->r[0] = rbrew_read32(cpu->mem, _t89);
|
|
/* 0239FB38 */ _t90 = cpu->r[1] + 0x00000024u;
|
|
/* 0239FB38 */ cpu->r[31] = rbrew_read32(cpu->mem, _t90);
|
|
/* 0239FB3C */ cpu->lr = cpu->r[0];
|
|
/* 0239FB40 */ _t91 = cpu->r[1] + 0x00000020u;
|
|
/* 0239FB40 */ cpu->r[30] = rbrew_read32(cpu->mem, _t91);
|
|
/* 0239FB44 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 0239FB48 */ return;
|
|
L_0239FB4C: ; // 0x239fb4c
|
|
/* 0239FB4C */ _t92 = cpu->r[31] + 0x0000011Cu;
|
|
/* 0239FB4C */ cpu->r[0] = rbrew_read8(cpu->mem, _t92);
|
|
/* 0239FB50 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0239FB54 */ _t93 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239FB54 */ _t94 = _t93 & 0x00000001u;
|
|
/* 0239FB54 */ if (_t94) goto L_0239FC38; else goto L_0239FB58;
|
|
L_0239FB58: ; // 0x239fb58
|
|
/* 0239FB58 */ _t95 = cpu->r[31] + 0x00000160u;
|
|
/* 0239FB58 */ cpu->r[6] = rbrew_read8(cpu->mem, _t95);
|
|
/* 0239FB5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 0239FB60 */ _t96 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239FB60 */ _t97 = _t96 & 0x00000001u;
|
|
/* 0239FB60 */ if (_t97) goto L_0239FC38; else goto L_0239FB64;
|
|
L_0239FB64: ; // 0x239fb64
|
|
/* 0239FB64 */ _t98 = cpu->r[31] + 0x00000164u;
|
|
/* 0239FB64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t98);
|
|
/* 0239FB68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000000Au);
|
|
/* 0239FB6C */ _t99 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239FB6C */ _t100 = _t99 & 0x00000001u;
|
|
/* 0239FB6C */ if (_t100) goto L_0239FB78; else goto L_0239FB70;
|
|
L_0239FB70: ; // 0x239fb70
|
|
/* 0239FB70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000000Bu);
|
|
/* 0239FB74 */ _t101 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239FB74 */ _t102 = _t101 & 0x00000001u;
|
|
/* 0239FB74 */ if (_t102) goto L_0239FB78; else goto L_0239FC38;
|
|
L_0239FB78: ; // 0x239fb78
|
|
/* 0239FB78 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x0000000Au);
|
|
/* 0239FB7C */ _t103 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239FB7C */ _t104 = _t103 & 0x00000001u;
|
|
/* 0239FB7C */ if (_t104) goto L_0239FBA4; else goto L_0239FB80;
|
|
L_0239FB80: ; // 0x239fb80
|
|
/* 0239FB80 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x0000000Bu);
|
|
/* 0239FB84 */ _t105 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239FB84 */ _t106 = _t105 & 0x00000001u;
|
|
/* 0239FB84 */ if (_t106) goto L_0239FBE4; else goto L_0239FB88;
|
|
L_0239FB88: ; // 0x239fb88
|
|
/* 0239FB88 */ _t107 = cpu->r[31] + 0x00000164u;
|
|
/* 0239FB88 */ cpu->r[5] = rbrew_read32(cpu->mem, _t107);
|
|
/* 0239FB8C */ cpu->r[0] = 0x00000001u;
|
|
/* 0239FB90 */ _t108 = cpu->r[31] + 0x00000168u;
|
|
/* 0239FB90 */ cpu->r[6] = rbrew_read32(cpu->mem, _t108);
|
|
/* 0239FB94 */ _t109 = cpu->r[31] + 0x00000128u;
|
|
/* 0239FB94 */ rbrew_write8(cpu->mem, _t109, (uint8_t)cpu->r[0]);
|
|
/* 0239FB98 */ _t110 = cpu->r[31] + 0x00000130u;
|
|
/* 0239FB98 */ rbrew_write32(cpu->mem, _t110, cpu->r[6]);
|
|
/* 0239FB9C */ _t111 = cpu->r[31] + 0x0000012Cu;
|
|
/* 0239FB9C */ rbrew_write32(cpu->mem, _t111, cpu->r[5]);
|
|
/* 0239FBA0 */ goto L_0239FC38;
|
|
L_0239FBA4: ; // 0x239fba4
|
|
/* 0239FBA4 */ _t112 = cpu->r[28] + 0x00006000u;
|
|
/* 0239FBA4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t112);
|
|
/* 0239FBA8 */ _t113 = cpu->r[30] + 0x00006898u;
|
|
/* 0239FBA8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t113);
|
|
/* 0239FBAC */ _t114 = cpu->r[12] + 0x00000264u;
|
|
/* 0239FBAC */ cpu->r[10] = rbrew_read32(cpu->mem, _t114);
|
|
/* 0239FBB0 */ _t115 = cpu->r[31] + 0x00000168u;
|
|
/* 0239FBB0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t115);
|
|
/* 0239FBB4 */ cpu->r[5] = cpu->r[10] + cpu->r[6];
|
|
/* 0239FBB8 */ _t116 = cpu->r[5] + 0x00000104u;
|
|
/* 0239FBB8 */ cpu->r[8] = rbrew_read8(cpu->mem, _t116);
|
|
/* 0239FBBC */ _t117 = cpu->r[10] + 0x00000030u;
|
|
/* 0239FBBC */ cpu->r[9] = rbrew_read32(cpu->mem, _t117);
|
|
/* 0239FBC0 */ cpu->r[8] = rbrew_rlwinm(cpu->r[8], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239FBC4 */ _t118 = cpu->r[8] + cpu->r[9];
|
|
/* 0239FBC4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t118);
|
|
/* 0239FBC8 */ _t119 = cpu->r[10] + 0x00000004u;
|
|
/* 0239FBC8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t119);
|
|
/* 0239FBCC */ cpu->r[7] = rbrew_rlwinm(cpu->r[12], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239FBD0 */ _t120 = cpu->r[7] + cpu->r[0];
|
|
/* 0239FBD0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t120);
|
|
/* 0239FBD4 */ Gambit_fn_02527548(cpu);
|
|
/* 0239FBD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239FBDC */ _t121 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239FBDC */ _t122 = _t121 & 0x00000001u;
|
|
/* 0239FBDC */ if (_t122) goto L_0239FC38; else goto L_0239FBE0;
|
|
L_0239FBE0: ; // 0x239fbe0
|
|
/* 0239FBE0 */ goto L_0239FC20;
|
|
L_0239FBE4: ; // 0x239fbe4
|
|
/* 0239FBE4 */ _t123 = cpu->r[28] + 0x00006000u;
|
|
/* 0239FBE4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t123);
|
|
/* 0239FBE8 */ _t124 = cpu->r[29] + 0x000068B0u;
|
|
/* 0239FBE8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t124);
|
|
/* 0239FBEC */ _t125 = cpu->r[12] + 0x00000264u;
|
|
/* 0239FBEC */ cpu->r[12] = rbrew_read32(cpu->mem, _t125);
|
|
/* 0239FBF0 */ _t126 = cpu->r[31] + 0x00000168u;
|
|
/* 0239FBF0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t126);
|
|
/* 0239FBF4 */ cpu->r[5] = cpu->r[12] + cpu->r[0];
|
|
/* 0239FBF8 */ _t127 = cpu->r[5] + 0x00000104u;
|
|
/* 0239FBF8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t127);
|
|
/* 0239FBFC */ _t128 = cpu->r[12] + 0x00000030u;
|
|
/* 0239FBFC */ cpu->r[9] = rbrew_read32(cpu->mem, _t128);
|
|
/* 0239FC00 */ cpu->r[8] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239FC04 */ _t129 = cpu->r[8] + cpu->r[9];
|
|
/* 0239FC04 */ cpu->r[10] = rbrew_read32(cpu->mem, _t129);
|
|
/* 0239FC08 */ _t130 = cpu->r[10] + 0x00000004u;
|
|
/* 0239FC08 */ cpu->r[12] = rbrew_read32(cpu->mem, _t130);
|
|
/* 0239FC0C */ cpu->r[7] = rbrew_rlwinm(cpu->r[7], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239FC10 */ _t131 = cpu->r[7] + cpu->r[12];
|
|
/* 0239FC10 */ cpu->r[3] = rbrew_read32(cpu->mem, _t131);
|
|
/* 0239FC14 */ Gambit_fn_02529EE4(cpu);
|
|
/* 0239FC18 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239FC1C */ _t132 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239FC1C */ _t133 = _t132 & 0x00000001u;
|
|
/* 0239FC1C */ if (_t133) goto L_0239FC38; else goto L_0239FC20;
|
|
L_0239FC20: ; // 0x239fc20
|
|
/* 0239FC20 */ _t134 = cpu->r[31] + 0x00000164u;
|
|
/* 0239FC20 */ cpu->r[5] = rbrew_read32(cpu->mem, _t134);
|
|
/* 0239FC24 */ _t135 = cpu->r[31] + 0x00000168u;
|
|
/* 0239FC24 */ cpu->r[6] = rbrew_read32(cpu->mem, _t135);
|
|
/* 0239FC28 */ _t136 = cpu->r[31] + 0x0000012Cu;
|
|
/* 0239FC28 */ rbrew_write32(cpu->mem, _t136, cpu->r[5]);
|
|
/* 0239FC2C */ cpu->r[0] = 0x00000001u;
|
|
/* 0239FC30 */ _t137 = cpu->r[31] + 0x00000130u;
|
|
/* 0239FC30 */ rbrew_write32(cpu->mem, _t137, cpu->r[6]);
|
|
/* 0239FC34 */ _t138 = cpu->r[31] + 0x00000128u;
|
|
/* 0239FC34 */ rbrew_write8(cpu->mem, _t138, (uint8_t)cpu->r[0]);
|
|
L_0239FC38: ; // 0x239fc38
|
|
/* 0239FC38 */ _t139 = cpu->r[1] + 0x00000018u;
|
|
/* 0239FC38 */ cpu->r[28] = rbrew_read32(cpu->mem, _t139);
|
|
/* 0239FC3C */ _t140 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239FC3C */ cpu->r[29] = rbrew_read32(cpu->mem, _t140);
|
|
/* 0239FC40 */ _t141 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0239FC40 */ cpu->r[0] = rbrew_read32(cpu->mem, _t141);
|
|
/* 0239FC44 */ _t142 = cpu->r[1] + 0x00000020u;
|
|
/* 0239FC44 */ cpu->r[30] = rbrew_read32(cpu->mem, _t142);
|
|
/* 0239FC48 */ cpu->lr = cpu->r[0];
|
|
/* 0239FC4C */ _t143 = cpu->r[1] + 0x00000024u;
|
|
/* 0239FC4C */ cpu->r[31] = rbrew_read32(cpu->mem, _t143);
|
|
/* 0239FC50 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 0239FC54 */ return;
|
|
}
|
|
|
|
// fn_0239F908 @ 0x239f908
|
|
void Gambit_fn_0239F908(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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;
|
|
|
|
L_0239F908: ; // 0x239f908
|
|
/* 0239F908 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 0239F908 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239F908 */ cpu->r[1] = _t0;
|
|
/* 0239F90C */ _t1 = cpu->r[1] + 0x00000018u;
|
|
/* 0239F90C */ rbrew_write32(cpu->mem, _t1, cpu->r[28]);
|
|
/* 0239F910 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239F910 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 0239F914 */ _t3 = cpu->r[1] + 0x00000024u;
|
|
/* 0239F914 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 0239F918 */ _t4 = cpu->r[1] + 0x00000020u;
|
|
/* 0239F918 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 0239F91C */ cpu->r[31] = cpu->r[3];
|
|
/* 0239F920 */ _t5 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0239F920 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0239F924 */ _t6 = cpu->r[31] + 0x00000128u;
|
|
/* 0239F924 */ cpu->r[11] = rbrew_read8(cpu->mem, _t6);
|
|
/* 0239F928 */ cpu->r[28] = 0x101C0000u;
|
|
/* 0239F92C */ cpu->r[30] = 0x101C0000u;
|
|
/* 0239F930 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0239F934 */ cpu->r[29] = 0x101C0000u;
|
|
/* 0239F938 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239F938 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0239F938 */ if (_t8) goto L_0239FB4C; else goto L_0239F93C;
|
|
L_0239F93C: ; // 0x239f93c
|
|
/* 0239F93C */ cpu->r[7] = 0x10080000u;
|
|
/* 0239F940 */ cpu->r[4] = cpu->r[31] + 0x00000114u;
|
|
/* 0239F944 */ _t9 = cpu->r[7] + 0x0000704Cu;
|
|
/* 0239F944 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 0239F948 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0239F94C */ Gambit_fn_0239F80C(cpu);
|
|
/* 0239F950 */ _t10 = cpu->r[31] + 0x0000011Cu;
|
|
/* 0239F950 */ cpu->r[0] = rbrew_read8(cpu->mem, _t10);
|
|
/* 0239F954 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0239F958 */ _t11 = cpu->r[31] + 0x0000012Cu;
|
|
/* 0239F958 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0239F95C */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239F95C */ _t13 = _t12 & 0x00000001u;
|
|
/* 0239F95C */ if (_t13) goto L_0239FA48; else goto L_0239F960;
|
|
L_0239F960: ; // 0x239f960
|
|
/* 0239F960 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], 0x0000000Au);
|
|
/* 0239F964 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239F964 */ _t15 = _t14 & 0x00000001u;
|
|
/* 0239F964 */ if (_t15) goto L_0239F990; else goto L_0239F968;
|
|
L_0239F968: ; // 0x239f968
|
|
/* 0239F968 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], 0x0000000Bu);
|
|
/* 0239F96C */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239F96C */ _t17 = _t16 & 0x00000001u;
|
|
/* 0239F96C */ if (_t17) goto L_0239F9EC; else goto L_0239F970;
|
|
L_0239F970: ; // 0x239f970
|
|
/* 0239F970 */ _t18 = cpu->r[1] + 0x00000018u;
|
|
/* 0239F970 */ cpu->r[28] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0239F974 */ _t19 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239F974 */ cpu->r[29] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0239F978 */ _t20 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0239F978 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0239F97C */ _t21 = cpu->r[1] + 0x00000020u;
|
|
/* 0239F97C */ cpu->r[30] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0239F980 */ cpu->lr = cpu->r[0];
|
|
/* 0239F984 */ _t22 = cpu->r[1] + 0x00000024u;
|
|
/* 0239F984 */ cpu->r[31] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0239F988 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 0239F98C */ return;
|
|
L_0239F990: ; // 0x239f990
|
|
/* 0239F990 */ _t23 = cpu->r[28] + 0x00006000u;
|
|
/* 0239F990 */ cpu->r[9] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0239F994 */ _t24 = cpu->r[30] + 0x00006898u;
|
|
/* 0239F994 */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0239F998 */ _t25 = cpu->r[9] + 0x00000264u;
|
|
/* 0239F998 */ cpu->r[11] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0239F99C */ _t26 = cpu->r[31] + 0x00000130u;
|
|
/* 0239F99C */ cpu->r[12] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0239F9A0 */ cpu->r[10] = cpu->r[11] + cpu->r[0];
|
|
/* 0239F9A4 */ _t27 = cpu->r[10] + 0x00000104u;
|
|
/* 0239F9A4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t27);
|
|
/* 0239F9A8 */ _t28 = cpu->r[11] + 0x00000030u;
|
|
/* 0239F9A8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0239F9AC */ cpu->r[5] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239F9B0 */ _t29 = cpu->r[5] + cpu->r[6];
|
|
/* 0239F9B0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0239F9B4 */ _t30 = cpu->r[7] + 0x00000004u;
|
|
/* 0239F9B4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t30);
|
|
/* 0239F9B8 */ cpu->r[12] = rbrew_rlwinm(cpu->r[12], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239F9BC */ cpu->r[4] = cpu->r[31] + 0x00000114u;
|
|
/* 0239F9C0 */ _t31 = cpu->r[12] + cpu->r[8];
|
|
/* 0239F9C0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0239F9C4 */ cpu->r[5] = 0x00000000u;
|
|
/* 0239F9C8 */ Gambit_fn_02527570(cpu);
|
|
/* 0239F9CC */ _t32 = cpu->r[1] + 0x00000018u;
|
|
/* 0239F9CC */ cpu->r[28] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0239F9D0 */ _t33 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239F9D0 */ cpu->r[29] = rbrew_read32(cpu->mem, _t33);
|
|
/* 0239F9D4 */ _t34 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0239F9D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t34);
|
|
/* 0239F9D8 */ _t35 = cpu->r[1] + 0x00000024u;
|
|
/* 0239F9D8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t35);
|
|
/* 0239F9DC */ cpu->lr = cpu->r[0];
|
|
/* 0239F9E0 */ _t36 = cpu->r[1] + 0x00000020u;
|
|
/* 0239F9E0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t36);
|
|
/* 0239F9E4 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 0239F9E8 */ return;
|
|
L_0239F9EC: ; // 0x239f9ec
|
|
/* 0239F9EC */ _t37 = cpu->r[28] + 0x00006000u;
|
|
/* 0239F9EC */ cpu->r[9] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0239F9F0 */ _t38 = cpu->r[29] + 0x000068B0u;
|
|
/* 0239F9F0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t38);
|
|
/* 0239F9F4 */ _t39 = cpu->r[9] + 0x00000264u;
|
|
/* 0239F9F4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t39);
|
|
/* 0239F9F8 */ _t40 = cpu->r[31] + 0x00000130u;
|
|
/* 0239F9F8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0239F9FC */ cpu->r[10] = cpu->r[12] + cpu->r[11];
|
|
/* 0239FA00 */ _t41 = cpu->r[10] + 0x00000104u;
|
|
/* 0239FA00 */ cpu->r[0] = rbrew_read8(cpu->mem, _t41);
|
|
/* 0239FA04 */ _t42 = cpu->r[12] + 0x00000030u;
|
|
/* 0239FA04 */ cpu->r[8] = rbrew_read32(cpu->mem, _t42);
|
|
/* 0239FA08 */ cpu->r[6] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239FA0C */ _t43 = cpu->r[6] + cpu->r[8];
|
|
/* 0239FA0C */ cpu->r[9] = rbrew_read32(cpu->mem, _t43);
|
|
/* 0239FA10 */ _t44 = cpu->r[9] + 0x00000004u;
|
|
/* 0239FA10 */ cpu->r[0] = rbrew_read32(cpu->mem, _t44);
|
|
/* 0239FA14 */ cpu->r[5] = rbrew_rlwinm(cpu->r[7], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239FA18 */ cpu->r[4] = cpu->r[31] + 0x00000114u;
|
|
/* 0239FA1C */ _t45 = cpu->r[5] + cpu->r[0];
|
|
/* 0239FA1C */ cpu->r[3] = rbrew_read32(cpu->mem, _t45);
|
|
/* 0239FA20 */ cpu->r[5] = 0x00000000u;
|
|
/* 0239FA24 */ Gambit_fn_02529F04(cpu);
|
|
/* 0239FA28 */ _t46 = cpu->r[1] + 0x00000018u;
|
|
/* 0239FA28 */ cpu->r[28] = rbrew_read32(cpu->mem, _t46);
|
|
/* 0239FA2C */ _t47 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239FA2C */ cpu->r[29] = rbrew_read32(cpu->mem, _t47);
|
|
/* 0239FA30 */ _t48 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0239FA30 */ cpu->r[0] = rbrew_read32(cpu->mem, _t48);
|
|
/* 0239FA34 */ _t49 = cpu->r[1] + 0x00000024u;
|
|
/* 0239FA34 */ cpu->r[31] = rbrew_read32(cpu->mem, _t49);
|
|
/* 0239FA38 */ cpu->lr = cpu->r[0];
|
|
/* 0239FA3C */ _t50 = cpu->r[1] + 0x00000020u;
|
|
/* 0239FA3C */ cpu->r[30] = rbrew_read32(cpu->mem, _t50);
|
|
/* 0239FA40 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 0239FA44 */ return;
|
|
L_0239FA48: ; // 0x239fa48
|
|
/* 0239FA48 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], 0x0000000Au);
|
|
/* 0239FA4C */ _t51 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239FA4C */ _t52 = _t51 & 0x00000001u;
|
|
/* 0239FA4C */ if (_t52) goto L_0239FA80; else goto L_0239FA50;
|
|
L_0239FA50: ; // 0x239fa50
|
|
/* 0239FA50 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], 0x0000000Bu);
|
|
/* 0239FA54 */ _t53 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239FA54 */ _t54 = _t53 & 0x00000001u;
|
|
/* 0239FA54 */ if (_t54) goto L_0239FAF0; else goto L_0239FA58;
|
|
L_0239FA58: ; // 0x239fa58
|
|
/* 0239FA58 */ cpu->r[10] = 0x00000000u;
|
|
/* 0239FA5C */ _t55 = cpu->r[31] + 0x00000128u;
|
|
/* 0239FA5C */ rbrew_write8(cpu->mem, _t55, (uint8_t)cpu->r[10]);
|
|
/* 0239FA60 */ _t56 = cpu->r[1] + 0x00000018u;
|
|
/* 0239FA60 */ cpu->r[28] = rbrew_read32(cpu->mem, _t56);
|
|
/* 0239FA64 */ _t57 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239FA64 */ cpu->r[29] = rbrew_read32(cpu->mem, _t57);
|
|
/* 0239FA68 */ _t58 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0239FA68 */ cpu->r[0] = rbrew_read32(cpu->mem, _t58);
|
|
/* 0239FA6C */ _t59 = cpu->r[1] + 0x00000020u;
|
|
/* 0239FA6C */ cpu->r[30] = rbrew_read32(cpu->mem, _t59);
|
|
/* 0239FA70 */ cpu->lr = cpu->r[0];
|
|
/* 0239FA74 */ _t60 = cpu->r[1] + 0x00000024u;
|
|
/* 0239FA74 */ cpu->r[31] = rbrew_read32(cpu->mem, _t60);
|
|
/* 0239FA78 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 0239FA7C */ return;
|
|
L_0239FA80: ; // 0x239fa80
|
|
/* 0239FA80 */ _t61 = cpu->r[28] + 0x00006000u;
|
|
/* 0239FA80 */ cpu->r[10] = rbrew_read32(cpu->mem, _t61);
|
|
/* 0239FA84 */ _t62 = cpu->r[30] + 0x00006898u;
|
|
/* 0239FA84 */ cpu->r[5] = rbrew_read32(cpu->mem, _t62);
|
|
/* 0239FA88 */ _t63 = cpu->r[10] + 0x00000264u;
|
|
/* 0239FA88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t63);
|
|
/* 0239FA8C */ _t64 = cpu->r[31] + 0x00000130u;
|
|
/* 0239FA8C */ cpu->r[6] = rbrew_read32(cpu->mem, _t64);
|
|
/* 0239FA90 */ cpu->r[11] = cpu->r[12] + cpu->r[5];
|
|
/* 0239FA94 */ _t65 = cpu->r[11] + 0x00000104u;
|
|
/* 0239FA94 */ cpu->r[8] = rbrew_read8(cpu->mem, _t65);
|
|
/* 0239FA98 */ _t66 = cpu->r[12] + 0x00000030u;
|
|
/* 0239FA98 */ cpu->r[0] = rbrew_read32(cpu->mem, _t66);
|
|
/* 0239FA9C */ cpu->r[10] = rbrew_rlwinm(cpu->r[8], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239FAA0 */ _t67 = cpu->r[10] + cpu->r[0];
|
|
/* 0239FAA0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t67);
|
|
/* 0239FAA4 */ _t68 = cpu->r[5] + 0x00000004u;
|
|
/* 0239FAA4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t68);
|
|
/* 0239FAA8 */ cpu->r[8] = rbrew_rlwinm(cpu->r[6], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239FAAC */ _t69 = cpu->r[8] + cpu->r[7];
|
|
/* 0239FAAC */ cpu->r[30] = rbrew_read32(cpu->mem, _t69);
|
|
/* 0239FAB0 */ cpu->r[5] = 0x00000001u;
|
|
/* 0239FAB4 */ cpu->r[4] = cpu->r[31] + 0x00000114u;
|
|
/* 0239FAB8 */ cpu->r[3] = cpu->r[30];
|
|
/* 0239FABC */ Gambit_fn_02527570(cpu);
|
|
/* 0239FAC0 */ cpu->r[0] = 0x00000001u;
|
|
/* 0239FAC4 */ cpu->r[10] = 0x00000000u;
|
|
/* 0239FAC8 */ _t70 = cpu->r[30] + 0x000002B4u;
|
|
/* 0239FAC8 */ rbrew_write8(cpu->mem, _t70, (uint8_t)cpu->r[0]);
|
|
/* 0239FACC */ _t71 = cpu->r[31] + 0x00000128u;
|
|
/* 0239FACC */ rbrew_write8(cpu->mem, _t71, (uint8_t)cpu->r[10]);
|
|
/* 0239FAD0 */ _t72 = cpu->r[1] + 0x00000018u;
|
|
/* 0239FAD0 */ cpu->r[28] = rbrew_read32(cpu->mem, _t72);
|
|
/* 0239FAD4 */ _t73 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239FAD4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t73);
|
|
/* 0239FAD8 */ _t74 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0239FAD8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t74);
|
|
/* 0239FADC */ _t75 = cpu->r[1] + 0x00000024u;
|
|
/* 0239FADC */ cpu->r[31] = rbrew_read32(cpu->mem, _t75);
|
|
/* 0239FAE0 */ cpu->lr = cpu->r[0];
|
|
/* 0239FAE4 */ _t76 = cpu->r[1] + 0x00000020u;
|
|
/* 0239FAE4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t76);
|
|
/* 0239FAE8 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 0239FAEC */ return;
|
|
L_0239FAF0: ; // 0x239faf0
|
|
/* 0239FAF0 */ _t77 = cpu->r[28] + 0x00006000u;
|
|
/* 0239FAF0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t77);
|
|
/* 0239FAF4 */ _t78 = cpu->r[29] + 0x000068B0u;
|
|
/* 0239FAF4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t78);
|
|
/* 0239FAF8 */ _t79 = cpu->r[10] + 0x00000264u;
|
|
/* 0239FAF8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t79);
|
|
/* 0239FAFC */ _t80 = cpu->r[31] + 0x00000130u;
|
|
/* 0239FAFC */ cpu->r[5] = rbrew_read32(cpu->mem, _t80);
|
|
/* 0239FB00 */ cpu->r[12] = cpu->r[11] + cpu->r[6];
|
|
/* 0239FB04 */ _t81 = cpu->r[12] + 0x00000104u;
|
|
/* 0239FB04 */ cpu->r[7] = rbrew_read8(cpu->mem, _t81);
|
|
/* 0239FB08 */ _t82 = cpu->r[11] + 0x00000030u;
|
|
/* 0239FB08 */ cpu->r[0] = rbrew_read32(cpu->mem, _t82);
|
|
/* 0239FB0C */ cpu->r[9] = rbrew_rlwinm(cpu->r[7], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239FB10 */ _t83 = cpu->r[9] + cpu->r[0];
|
|
/* 0239FB10 */ cpu->r[7] = rbrew_read32(cpu->mem, _t83);
|
|
/* 0239FB14 */ _t84 = cpu->r[7] + 0x00000004u;
|
|
/* 0239FB14 */ cpu->r[9] = rbrew_read32(cpu->mem, _t84);
|
|
/* 0239FB18 */ cpu->r[8] = rbrew_rlwinm(cpu->r[5], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239FB1C */ _t85 = cpu->r[8] + cpu->r[9];
|
|
/* 0239FB1C */ cpu->r[3] = rbrew_read32(cpu->mem, _t85);
|
|
/* 0239FB20 */ Gambit_fn_0252A674(cpu);
|
|
/* 0239FB24 */ cpu->r[10] = 0x00000000u;
|
|
/* 0239FB28 */ _t86 = cpu->r[31] + 0x00000128u;
|
|
/* 0239FB28 */ rbrew_write8(cpu->mem, _t86, (uint8_t)cpu->r[10]);
|
|
/* 0239FB2C */ _t87 = cpu->r[1] + 0x00000018u;
|
|
/* 0239FB2C */ cpu->r[28] = rbrew_read32(cpu->mem, _t87);
|
|
/* 0239FB30 */ _t88 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239FB30 */ cpu->r[29] = rbrew_read32(cpu->mem, _t88);
|
|
/* 0239FB34 */ _t89 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0239FB34 */ cpu->r[0] = rbrew_read32(cpu->mem, _t89);
|
|
/* 0239FB38 */ _t90 = cpu->r[1] + 0x00000024u;
|
|
/* 0239FB38 */ cpu->r[31] = rbrew_read32(cpu->mem, _t90);
|
|
/* 0239FB3C */ cpu->lr = cpu->r[0];
|
|
/* 0239FB40 */ _t91 = cpu->r[1] + 0x00000020u;
|
|
/* 0239FB40 */ cpu->r[30] = rbrew_read32(cpu->mem, _t91);
|
|
/* 0239FB44 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 0239FB48 */ return;
|
|
L_0239FB4C: ; // 0x239fb4c
|
|
/* 0239FB4C */ _t92 = cpu->r[31] + 0x0000011Cu;
|
|
/* 0239FB4C */ cpu->r[0] = rbrew_read8(cpu->mem, _t92);
|
|
/* 0239FB50 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0239FB54 */ _t93 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239FB54 */ _t94 = _t93 & 0x00000001u;
|
|
/* 0239FB54 */ if (_t94) goto L_0239FC38; else goto L_0239FB58;
|
|
L_0239FB58: ; // 0x239fb58
|
|
/* 0239FB58 */ _t95 = cpu->r[31] + 0x00000160u;
|
|
/* 0239FB58 */ cpu->r[6] = rbrew_read8(cpu->mem, _t95);
|
|
/* 0239FB5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 0239FB60 */ _t96 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239FB60 */ _t97 = _t96 & 0x00000001u;
|
|
/* 0239FB60 */ if (_t97) goto L_0239FC38; else goto L_0239FB64;
|
|
L_0239FB64: ; // 0x239fb64
|
|
/* 0239FB64 */ _t98 = cpu->r[31] + 0x00000164u;
|
|
/* 0239FB64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t98);
|
|
/* 0239FB68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000000Au);
|
|
/* 0239FB6C */ _t99 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239FB6C */ _t100 = _t99 & 0x00000001u;
|
|
/* 0239FB6C */ if (_t100) goto L_0239FB78; else goto L_0239FB70;
|
|
L_0239FB70: ; // 0x239fb70
|
|
/* 0239FB70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000000Bu);
|
|
/* 0239FB74 */ _t101 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239FB74 */ _t102 = _t101 & 0x00000001u;
|
|
/* 0239FB74 */ if (_t102) goto L_0239FB78; else goto L_0239FC38;
|
|
L_0239FB78: ; // 0x239fb78
|
|
/* 0239FB78 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x0000000Au);
|
|
/* 0239FB7C */ _t103 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239FB7C */ _t104 = _t103 & 0x00000001u;
|
|
/* 0239FB7C */ if (_t104) goto L_0239FBA4; else goto L_0239FB80;
|
|
L_0239FB80: ; // 0x239fb80
|
|
/* 0239FB80 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x0000000Bu);
|
|
/* 0239FB84 */ _t105 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239FB84 */ _t106 = _t105 & 0x00000001u;
|
|
/* 0239FB84 */ if (_t106) goto L_0239FBE4; else goto L_0239FB88;
|
|
L_0239FB88: ; // 0x239fb88
|
|
/* 0239FB88 */ _t107 = cpu->r[31] + 0x00000164u;
|
|
/* 0239FB88 */ cpu->r[5] = rbrew_read32(cpu->mem, _t107);
|
|
/* 0239FB8C */ cpu->r[0] = 0x00000001u;
|
|
/* 0239FB90 */ _t108 = cpu->r[31] + 0x00000168u;
|
|
/* 0239FB90 */ cpu->r[6] = rbrew_read32(cpu->mem, _t108);
|
|
/* 0239FB94 */ _t109 = cpu->r[31] + 0x00000128u;
|
|
/* 0239FB94 */ rbrew_write8(cpu->mem, _t109, (uint8_t)cpu->r[0]);
|
|
/* 0239FB98 */ _t110 = cpu->r[31] + 0x00000130u;
|
|
/* 0239FB98 */ rbrew_write32(cpu->mem, _t110, cpu->r[6]);
|
|
/* 0239FB9C */ _t111 = cpu->r[31] + 0x0000012Cu;
|
|
/* 0239FB9C */ rbrew_write32(cpu->mem, _t111, cpu->r[5]);
|
|
/* 0239FBA0 */ goto L_0239FC38;
|
|
L_0239FBA4: ; // 0x239fba4
|
|
/* 0239FBA4 */ _t112 = cpu->r[28] + 0x00006000u;
|
|
/* 0239FBA4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t112);
|
|
/* 0239FBA8 */ _t113 = cpu->r[30] + 0x00006898u;
|
|
/* 0239FBA8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t113);
|
|
/* 0239FBAC */ _t114 = cpu->r[12] + 0x00000264u;
|
|
/* 0239FBAC */ cpu->r[10] = rbrew_read32(cpu->mem, _t114);
|
|
/* 0239FBB0 */ _t115 = cpu->r[31] + 0x00000168u;
|
|
/* 0239FBB0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t115);
|
|
/* 0239FBB4 */ cpu->r[5] = cpu->r[10] + cpu->r[6];
|
|
/* 0239FBB8 */ _t116 = cpu->r[5] + 0x00000104u;
|
|
/* 0239FBB8 */ cpu->r[8] = rbrew_read8(cpu->mem, _t116);
|
|
/* 0239FBBC */ _t117 = cpu->r[10] + 0x00000030u;
|
|
/* 0239FBBC */ cpu->r[9] = rbrew_read32(cpu->mem, _t117);
|
|
/* 0239FBC0 */ cpu->r[8] = rbrew_rlwinm(cpu->r[8], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239FBC4 */ _t118 = cpu->r[8] + cpu->r[9];
|
|
/* 0239FBC4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t118);
|
|
/* 0239FBC8 */ _t119 = cpu->r[10] + 0x00000004u;
|
|
/* 0239FBC8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t119);
|
|
/* 0239FBCC */ cpu->r[7] = rbrew_rlwinm(cpu->r[12], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239FBD0 */ _t120 = cpu->r[7] + cpu->r[0];
|
|
/* 0239FBD0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t120);
|
|
/* 0239FBD4 */ Gambit_fn_02527548(cpu);
|
|
/* 0239FBD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239FBDC */ _t121 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239FBDC */ _t122 = _t121 & 0x00000001u;
|
|
/* 0239FBDC */ if (_t122) goto L_0239FC38; else goto L_0239FBE0;
|
|
L_0239FBE0: ; // 0x239fbe0
|
|
/* 0239FBE0 */ goto L_0239FC20;
|
|
L_0239FBE4: ; // 0x239fbe4
|
|
/* 0239FBE4 */ _t123 = cpu->r[28] + 0x00006000u;
|
|
/* 0239FBE4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t123);
|
|
/* 0239FBE8 */ _t124 = cpu->r[29] + 0x000068B0u;
|
|
/* 0239FBE8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t124);
|
|
/* 0239FBEC */ _t125 = cpu->r[12] + 0x00000264u;
|
|
/* 0239FBEC */ cpu->r[12] = rbrew_read32(cpu->mem, _t125);
|
|
/* 0239FBF0 */ _t126 = cpu->r[31] + 0x00000168u;
|
|
/* 0239FBF0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t126);
|
|
/* 0239FBF4 */ cpu->r[5] = cpu->r[12] + cpu->r[0];
|
|
/* 0239FBF8 */ _t127 = cpu->r[5] + 0x00000104u;
|
|
/* 0239FBF8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t127);
|
|
/* 0239FBFC */ _t128 = cpu->r[12] + 0x00000030u;
|
|
/* 0239FBFC */ cpu->r[9] = rbrew_read32(cpu->mem, _t128);
|
|
/* 0239FC00 */ cpu->r[8] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239FC04 */ _t129 = cpu->r[8] + cpu->r[9];
|
|
/* 0239FC04 */ cpu->r[10] = rbrew_read32(cpu->mem, _t129);
|
|
/* 0239FC08 */ _t130 = cpu->r[10] + 0x00000004u;
|
|
/* 0239FC08 */ cpu->r[12] = rbrew_read32(cpu->mem, _t130);
|
|
/* 0239FC0C */ cpu->r[7] = rbrew_rlwinm(cpu->r[7], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239FC10 */ _t131 = cpu->r[7] + cpu->r[12];
|
|
/* 0239FC10 */ cpu->r[3] = rbrew_read32(cpu->mem, _t131);
|
|
/* 0239FC14 */ Gambit_fn_02529EE4(cpu);
|
|
/* 0239FC18 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239FC1C */ _t132 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239FC1C */ _t133 = _t132 & 0x00000001u;
|
|
/* 0239FC1C */ if (_t133) goto L_0239FC38; else goto L_0239FC20;
|
|
L_0239FC20: ; // 0x239fc20
|
|
/* 0239FC20 */ _t134 = cpu->r[31] + 0x00000164u;
|
|
/* 0239FC20 */ cpu->r[5] = rbrew_read32(cpu->mem, _t134);
|
|
/* 0239FC24 */ _t135 = cpu->r[31] + 0x00000168u;
|
|
/* 0239FC24 */ cpu->r[6] = rbrew_read32(cpu->mem, _t135);
|
|
/* 0239FC28 */ _t136 = cpu->r[31] + 0x0000012Cu;
|
|
/* 0239FC28 */ rbrew_write32(cpu->mem, _t136, cpu->r[5]);
|
|
/* 0239FC2C */ cpu->r[0] = 0x00000001u;
|
|
/* 0239FC30 */ _t137 = cpu->r[31] + 0x00000130u;
|
|
/* 0239FC30 */ rbrew_write32(cpu->mem, _t137, cpu->r[6]);
|
|
/* 0239FC34 */ _t138 = cpu->r[31] + 0x00000128u;
|
|
/* 0239FC34 */ rbrew_write8(cpu->mem, _t138, (uint8_t)cpu->r[0]);
|
|
L_0239FC38: ; // 0x239fc38
|
|
/* 0239FC38 */ _t139 = cpu->r[1] + 0x00000018u;
|
|
/* 0239FC38 */ cpu->r[28] = rbrew_read32(cpu->mem, _t139);
|
|
/* 0239FC3C */ _t140 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239FC3C */ cpu->r[29] = rbrew_read32(cpu->mem, _t140);
|
|
/* 0239FC40 */ _t141 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0239FC40 */ cpu->r[0] = rbrew_read32(cpu->mem, _t141);
|
|
/* 0239FC44 */ _t142 = cpu->r[1] + 0x00000020u;
|
|
/* 0239FC44 */ cpu->r[30] = rbrew_read32(cpu->mem, _t142);
|
|
/* 0239FC48 */ cpu->lr = cpu->r[0];
|
|
/* 0239FC4C */ _t143 = cpu->r[1] + 0x00000024u;
|
|
/* 0239FC4C */ cpu->r[31] = rbrew_read32(cpu->mem, _t143);
|
|
/* 0239FC50 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 0239FC54 */ return;
|
|
}
|
|
|
|
// fn_0239FC58 @ 0x239fc58
|
|
void Gambit_fn_0239FC58(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93;
|
|
|
|
L_0239FC58: ; // 0x239fc58
|
|
/* 0239FC58 */ _t0 = cpu->r[1] + 0xFFFFFF90u;
|
|
/* 0239FC58 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239FC58 */ cpu->r[1] = _t0;
|
|
/* 0239FC5C */ /* nop */
|
|
/* 0239FC60 */ cpu->r[0] = cpu->lr;
|
|
/* 0239FC64 */ _t1 = cpu->r[1] + 0x00000060u;
|
|
/* 0239FC64 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0239FC68 */ /* nop */
|
|
/* 0239FC6C */ _t2 = cpu->r[1] + 0x00000068u;
|
|
/* 0239FC6C */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 0239FC70 */ _t3 = cpu->r[1] + 0x00000074u;
|
|
/* 0239FC70 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0239FC74 */ cpu->r[29] = 0x101C0000u;
|
|
/* 0239FC78 */ _t4 = cpu->r[29] + 0x00006000u;
|
|
/* 0239FC78 */ cpu->r[7] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0239FC78 */ cpu->r[29] = _t4;
|
|
/* 0239FC7C */ _t5 = cpu->r[7] + 0x00000268u;
|
|
/* 0239FC7C */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0239FC80 */ cpu->r[27] = cpu->r[3];
|
|
/* 0239FC84 */ cpu->r[3] = cpu->r[31];
|
|
/* 0239FC88 */ Gambit_fn_0261F774(cpu);
|
|
/* 0239FC8C */ cpu->r[4] = cpu->r[3];
|
|
/* 0239FC90 */ cpu->r[3] = cpu->r[31];
|
|
/* 0239FC94 */ Gambit_fn_0261F55C(cpu);
|
|
/* 0239FC98 */ _t6 = cpu->r[27] + 0x0000011Cu;
|
|
/* 0239FC98 */ cpu->r[7] = rbrew_read8(cpu->mem, _t6);
|
|
/* 0239FC9C */ cpu->r[28] = cpu->r[3];
|
|
/* 0239FCA0 */ cpu->r[9] = 0x10080000u;
|
|
/* 0239FCA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 0239FCA8 */ _t7 = cpu->r[9] + 0x0000704Cu;
|
|
/* 0239FCA8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 0239FCAC */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239FCAC */ _t9 = _t8 & 0x00000001u;
|
|
/* 0239FCAC */ if (_t9) goto L_0239FE04; else goto L_0239FCB0;
|
|
L_0239FCB0: ; // 0x239fcb0
|
|
/* 0239FCB0 */ cpu->f[1] = cpu->f[31];
|
|
/* 0239FCB4 */ cpu->r[3] = cpu->r[1] + 0x00000024u;
|
|
/* 0239FCB8 */ cpu->r[4] = cpu->r[27] + 0x00000114u;
|
|
/* 0239FCBC */ Gambit_fn_0239F80C(cpu);
|
|
/* 0239FCC0 */ Gambit_fn_02233D0C(cpu);
|
|
/* 0239FCC4 */ cpu->r[31] = cpu->r[3];
|
|
/* 0239FCC8 */ Gambit_fn_02233D14(cpu);
|
|
/* 0239FCCC */ _t10 = cpu->r[27] + 0x00000224u;
|
|
/* 0239FCCC */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0239FCD0 */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 0239FCD4 */ cpu->r[6] = cpu->r[31];
|
|
/* 0239FCD8 */ cpu->r[4] = cpu->r[1] + 0x00000024u;
|
|
/* 0239FCDC */ Gambit_fn_027E499C(cpu);
|
|
/* 0239FCE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239FCE4 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239FCE4 */ _t12 = _t11 & 0x00000001u;
|
|
/* 0239FCE4 */ if (_t12) goto L_0239FDEC; else goto L_0239FCE8;
|
|
L_0239FCE8: ; // 0x239fce8
|
|
/* 0239FCE8 */ _t13 = cpu->r[27] + 0x000002C8u;
|
|
/* 0239FCE8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0239FCEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0239FCF0 */ cpu->r[30] = 0x10080000u;
|
|
/* 0239FCF4 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239FCF4 */ _t15 = _t14 & 0x00000001u;
|
|
/* 0239FCF4 */ if (_t15) goto L_0239FD18; else goto L_0239FCF8;
|
|
L_0239FCF8: ; // 0x239fcf8
|
|
/* 0239FCF8 */ _t16 = cpu->r[27] + 0x000002CCu;
|
|
/* 0239FCF8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0239FCFC */ _t17 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0239FCFC */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0239FD00 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[11]);
|
|
/* 0239FD04 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239FD04 */ _t19 = _t18 & 0x00000001u;
|
|
/* 0239FD04 */ if (_t19) goto L_0239FD08; else goto L_0239FD18;
|
|
L_0239FD08: ; // 0x239fd08
|
|
/* 0239FD08 */ _t20 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0239FD08 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0239FD0C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[11]);
|
|
/* 0239FD10 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239FD10 */ _t22 = _t21 & 0x00000001u;
|
|
/* 0239FD10 */ if (_t22) goto L_0239FD14; else goto L_0239FD98;
|
|
L_0239FD14: ; // 0x239fd14
|
|
/* 0239FD14 */ goto L_0239FD48;
|
|
L_0239FD18: ; // 0x239fd18
|
|
/* 0239FD18 */ _t23 = cpu->r[27] + 0x00000030u;
|
|
/* 0239FD18 */ cpu->r[3] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0239FD1C */ cpu->r[5] = cpu->r[30] + 0x00007144u;
|
|
/* 0239FD20 */ cpu->r[6] = 0x00000000u;
|
|
/* 0239FD24 */ cpu->r[4] = cpu->r[27] + 0x000002C8u;
|
|
/* 0239FD28 */ Gambit_fn_027B72F0(cpu);
|
|
/* 0239FD2C */ _t24 = cpu->r[27] + 0x000002C8u;
|
|
/* 0239FD2C */ cpu->r[31] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0239FD30 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0239FD34 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239FD34 */ _t26 = _t25 & 0x00000001u;
|
|
/* 0239FD34 */ if (_t26) goto L_0239FD98; else goto L_0239FD38;
|
|
L_0239FD38: ; // 0x239fd38
|
|
/* 0239FD38 */ _t27 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0239FD38 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0239FD3C */ _t28 = cpu->r[27] + 0x000002CCu;
|
|
/* 0239FD3C */ cpu->r[11] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0239FD40 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[11]);
|
|
/* 0239FD44 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239FD44 */ _t30 = _t29 & 0x00000001u;
|
|
/* 0239FD44 */ if (_t30) goto L_0239FD48; else goto L_0239FD98;
|
|
L_0239FD48: ; // 0x239fd48
|
|
/* 0239FD48 */ cpu->r[12] = 0x10080000u;
|
|
/* 0239FD4C */ _t31 = cpu->r[12] + 0x00007050u;
|
|
/* 0239FD4C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 0239FD50 */ _t32 = cpu->r[1] + 0x00000018u;
|
|
/* 0239FD50 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 0239FD54 */ _t33 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239FD54 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[0]);
|
|
/* 0239FD58 */ _t34 = cpu->r[1] + 0x00000010u;
|
|
/* 0239FD58 */ rbrew_write_f32(cpu->mem, _t34, cpu->f[0]);
|
|
/* 0239FD5C */ _t35 = cpu->r[1] + 0x00000014u;
|
|
/* 0239FD5C */ rbrew_write_f32(cpu->mem, _t35, cpu->f[0]);
|
|
/* 0239FD60 */ _t36 = cpu->r[31] + 0x00000064u;
|
|
/* 0239FD60 */ rbrew_write_f32(cpu->mem, _t36, cpu->f[13]);
|
|
/* 0239FD64 */ _t37 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0239FD64 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 0239FD68 */ _t38 = cpu->r[31] + 0x00000068u;
|
|
/* 0239FD68 */ rbrew_write_f32(cpu->mem, _t38, cpu->f[0]);
|
|
/* 0239FD6C */ _t39 = cpu->r[1] + 0x00000020u;
|
|
/* 0239FD6C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t39);
|
|
/* 0239FD70 */ _t40 = cpu->r[31] + 0x0000006Cu;
|
|
/* 0239FD70 */ rbrew_write_f32(cpu->mem, _t40, cpu->f[13]);
|
|
/* 0239FD74 */ _t41 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0239FD74 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 0239FD78 */ _t42 = cpu->r[31] + 0x0000012Cu;
|
|
/* 0239FD78 */ cpu->r[8] = rbrew_read32(cpu->mem, _t42);
|
|
/* 0239FD7C */ _t43 = cpu->r[31] + 0x00000070u;
|
|
/* 0239FD7C */ rbrew_write_f32(cpu->mem, _t43, cpu->f[0]);
|
|
/* 0239FD80 */ _t44 = cpu->r[1] + 0x00000010u;
|
|
/* 0239FD80 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 0239FD84 */ cpu->r[8] = cpu->r[8] | 0x00000004u;
|
|
/* 0239FD88 */ _t45 = cpu->r[31] + 0x00000074u;
|
|
/* 0239FD88 */ rbrew_write_f32(cpu->mem, _t45, cpu->f[13]);
|
|
/* 0239FD8C */ _t46 = cpu->r[1] + 0x00000014u;
|
|
/* 0239FD8C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t46);
|
|
/* 0239FD90 */ _t47 = cpu->r[31] + 0x0000012Cu;
|
|
/* 0239FD90 */ rbrew_write32(cpu->mem, _t47, cpu->r[8]);
|
|
/* 0239FD94 */ _t48 = cpu->r[31] + 0x00000078u;
|
|
/* 0239FD94 */ rbrew_write_f32(cpu->mem, _t48, cpu->f[0]);
|
|
L_0239FD98: ; // 0x239fd98
|
|
/* 0239FD98 */ _t49 = cpu->r[27] + 0x00000030u;
|
|
/* 0239FD98 */ cpu->r[3] = rbrew_read32(cpu->mem, _t49);
|
|
/* 0239FD9C */ cpu->r[9] = 0x00000000u;
|
|
/* 0239FDA0 */ _t50 = cpu->r[1] + 0x00000008u;
|
|
/* 0239FDA0 */ rbrew_write32(cpu->mem, _t50, cpu->r[9]);
|
|
/* 0239FDA4 */ _t51 = cpu->r[3] + 0x000000E0u;
|
|
/* 0239FDA4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t51);
|
|
/* 0239FDA8 */ _t52 = cpu->r[10] + 0x00000044u;
|
|
/* 0239FDA8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t52);
|
|
/* 0239FDAC */ cpu->ctr = cpu->r[0];
|
|
/* 0239FDB0 */ cpu->r[5] = cpu->r[30] + 0x00007144u;
|
|
/* 0239FDB4 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0239FDB8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0239FDBC */ _t53 = cpu->r[1] + 0x00000008u;
|
|
/* 0239FDBC */ cpu->r[3] = rbrew_read32(cpu->mem, _t53);
|
|
/* 0239FDC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239FDC4 */ _t54 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239FDC4 */ _t55 = _t54 & 0x00000001u;
|
|
/* 0239FDC4 */ if (_t55) goto L_0239FDD0; else goto L_0239FDC8;
|
|
L_0239FDC8: ; // 0x239fdc8
|
|
/* 0239FDC8 */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 0239FDCC */ Gambit_fn_028B30F0(cpu);
|
|
L_0239FDD0: ; // 0x239fdd0
|
|
/* 0239FDD0 */ cpu->r[3] = cpu->r[28];
|
|
/* 0239FDD4 */ cpu->r[4] = cpu->r[1] + 0x00000024u;
|
|
/* 0239FDD8 */ Gambit_fn_025CB0B0(cpu);
|
|
/* 0239FDDC */ _t56 = cpu->r[27] + 0x0000011Eu;
|
|
/* 0239FDDC */ cpu->r[0] = rbrew_read8(cpu->mem, _t56);
|
|
/* 0239FDE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0239FDE4 */ _t57 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239FDE4 */ _t58 = _t57 & 0x00000001u;
|
|
/* 0239FDE4 */ if (_t58) goto L_0239FEE4; else goto L_0239FDE8;
|
|
L_0239FDE8: ; // 0x239fde8
|
|
/* 0239FDE8 */ goto L_0239FE68;
|
|
L_0239FDEC: ; // 0x239fdec
|
|
/* 0239FDEC */ cpu->r[3] = cpu->r[28];
|
|
/* 0239FDF0 */ Gambit_fn_025CB0B8(cpu);
|
|
/* 0239FDF4 */ _t59 = cpu->r[27] + 0x000002C8u;
|
|
/* 0239FDF4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t59);
|
|
/* 0239FDF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0239FDFC */ _t60 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239FDFC */ _t61 = _t60 & 0x00000001u;
|
|
/* 0239FDFC */ if (_t61) goto L_0239FE00; else goto L_0239FE18;
|
|
L_0239FE00: ; // 0x239fe00
|
|
/* 0239FE00 */ goto L_0239FE5C;
|
|
L_0239FE04: ; // 0x239fe04
|
|
/* 0239FE04 */ cpu->r[3] = cpu->r[28];
|
|
/* 0239FE08 */ Gambit_fn_025CB0C0(cpu);
|
|
/* 0239FE0C */ _t62 = cpu->r[27] + 0x000002C8u;
|
|
/* 0239FE0C */ cpu->r[31] = rbrew_read32(cpu->mem, _t62);
|
|
/* 0239FE10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0239FE14 */ _t63 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239FE14 */ _t64 = _t63 & 0x00000001u;
|
|
/* 0239FE14 */ if (_t64) goto L_0239FE5C; else goto L_0239FE18;
|
|
L_0239FE18: ; // 0x239fe18
|
|
/* 0239FE18 */ _t65 = cpu->r[27] + 0x000002CCu;
|
|
/* 0239FE18 */ cpu->r[11] = rbrew_read32(cpu->mem, _t65);
|
|
/* 0239FE1C */ _t66 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0239FE1C */ cpu->r[8] = rbrew_read32(cpu->mem, _t66);
|
|
/* 0239FE20 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[11]);
|
|
/* 0239FE24 */ _t67 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239FE24 */ _t68 = _t67 & 0x00000001u;
|
|
/* 0239FE24 */ if (_t68) goto L_0239FE28; else goto L_0239FE5C;
|
|
L_0239FE28: ; // 0x239fe28
|
|
/* 0239FE28 */ _t69 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0239FE28 */ cpu->r[10] = rbrew_read32(cpu->mem, _t69);
|
|
/* 0239FE2C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[11]);
|
|
/* 0239FE30 */ _t70 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239FE30 */ _t71 = _t70 & 0x00000001u;
|
|
/* 0239FE30 */ if (_t71) goto L_0239FE34; else goto L_0239FE5C;
|
|
L_0239FE34: ; // 0x239fe34
|
|
/* 0239FE34 */ _t72 = cpu->r[31] + 0x00000028u;
|
|
/* 0239FE34 */ cpu->r[3] = rbrew_read32(cpu->mem, _t72);
|
|
/* 0239FE38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239FE3C */ _t73 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239FE3C */ _t74 = _t73 & 0x00000001u;
|
|
/* 0239FE3C */ if (_t74) goto L_0239FE54; else goto L_0239FE40;
|
|
L_0239FE40: ; // 0x239fe40
|
|
/* 0239FE40 */ _t75 = cpu->r[3] + 0x00000050u;
|
|
/* 0239FE40 */ cpu->r[12] = rbrew_read32(cpu->mem, _t75);
|
|
/* 0239FE44 */ _t76 = cpu->r[12] + 0x00000024u;
|
|
/* 0239FE44 */ cpu->r[0] = rbrew_read32(cpu->mem, _t76);
|
|
/* 0239FE48 */ cpu->ctr = cpu->r[0];
|
|
/* 0239FE4C */ cpu->r[4] = 0xFFFFFFFFu;
|
|
/* 0239FE50 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0239FE54: ; // 0x239fe54
|
|
/* 0239FE54 */ cpu->r[0] = 0x00000001u;
|
|
/* 0239FE58 */ _t77 = cpu->r[31] + 0x0000004Cu;
|
|
/* 0239FE58 */ rbrew_write8(cpu->mem, _t77, (uint8_t)cpu->r[0]);
|
|
L_0239FE5C: ; // 0x239fe5c
|
|
/* 0239FE5C */ _t78 = cpu->r[27] + 0x0000011Eu;
|
|
/* 0239FE5C */ cpu->r[0] = rbrew_read8(cpu->mem, _t78);
|
|
/* 0239FE60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0239FE64 */ _t79 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239FE64 */ _t80 = _t79 & 0x00000001u;
|
|
/* 0239FE64 */ if (_t80) goto L_0239FEE4; else goto L_0239FE68;
|
|
L_0239FE68: ; // 0x239fe68
|
|
/* 0239FE68 */ cpu->r[3] = cpu->r[28];
|
|
/* 0239FE6C */ cpu->r[4] = 0x00000000u;
|
|
/* 0239FE70 */ Gambit_fn_025A97C4(cpu);
|
|
/* 0239FE74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239FE78 */ _t81 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239FE78 */ _t82 = _t81 & 0x00000001u;
|
|
/* 0239FE78 */ if (_t82) goto L_0239FE7C; else goto L_0239FEE4;
|
|
L_0239FE7C: ; // 0x239fe7c
|
|
/* 0239FE7C */ cpu->f[1] = cpu->f[31];
|
|
/* 0239FE80 */ cpu->r[3] = cpu->r[1] + 0x00000030u;
|
|
/* 0239FE84 */ cpu->r[4] = cpu->r[27] + 0x00000114u;
|
|
/* 0239FE88 */ Gambit_fn_0239F80C(cpu);
|
|
/* 0239FE8C */ Gambit_fn_02233D0C(cpu);
|
|
/* 0239FE90 */ cpu->r[31] = cpu->r[3];
|
|
/* 0239FE94 */ Gambit_fn_02233D14(cpu);
|
|
/* 0239FE98 */ _t83 = cpu->r[27] + 0x00000224u;
|
|
/* 0239FE98 */ cpu->r[3] = rbrew_read32(cpu->mem, _t83);
|
|
/* 0239FE9C */ cpu->r[5] = cpu->r[1] + 0x0000003Cu;
|
|
/* 0239FEA0 */ cpu->r[6] = cpu->r[31];
|
|
/* 0239FEA4 */ cpu->r[4] = cpu->r[1] + 0x00000030u;
|
|
/* 0239FEA8 */ Gambit_fn_027E499C(cpu);
|
|
/* 0239FEAC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239FEB0 */ _t84 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239FEB0 */ _t85 = _t84 & 0x00000001u;
|
|
/* 0239FEB0 */ if (_t85) goto L_0239FEE4; else goto L_0239FEB4;
|
|
L_0239FEB4: ; // 0x239feb4
|
|
/* 0239FEB4 */ _t86 = cpu->r[29] + 0x00000000u;
|
|
/* 0239FEB4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t86);
|
|
/* 0239FEB8 */ _t87 = cpu->r[3] + 0x00000004u;
|
|
/* 0239FEB8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t87);
|
|
/* 0239FEBC */ _t88 = cpu->r[9] + 0x0000012Cu;
|
|
/* 0239FEBC */ cpu->r[10] = rbrew_read32(cpu->mem, _t88);
|
|
/* 0239FEC0 */ cpu->ctr = cpu->r[10];
|
|
/* 0239FEC4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0239FEC8 */ cpu->r[5] = cpu->r[3];
|
|
/* 0239FECC */ cpu->r[6] = 0x00000000u;
|
|
/* 0239FED0 */ cpu->r[4] = cpu->r[1] + 0x0000003Cu;
|
|
/* 0239FED4 */ cpu->r[3] = cpu->r[28];
|
|
/* 0239FED8 */ Gambit_fn_025AA2D0(cpu);
|
|
/* 0239FEDC */ cpu->r[3] = cpu->r[27];
|
|
/* 0239FEE0 */ Gambit_fn_0239D9B0(cpu);
|
|
L_0239FEE4: ; // 0x239fee4
|
|
/* 0239FEE4 */ /* nop */
|
|
/* 0239FEE8 */ _t89 = cpu->r[1] + 0x00000068u;
|
|
/* 0239FEE8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t89);
|
|
/* 0239FEEC */ _t90 = cpu->r[1] + 0x00000060u;
|
|
/* 0239FEEC */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t90);
|
|
/* 0239FEF0 */ _t91 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0239FEF0 */ _t92 = _t91 & 0x00000001u;
|
|
/* 0239FEF0 */ if (_t92) goto L_0239FEF4; // else: addr-0 trap, fall-through
|
|
L_0239FEF4: ; // 0x239fef4
|
|
/* 0239FEF4 */ _t93 = cpu->r[1] + 0x00000074u;
|
|
/* 0239FEF4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t93);
|
|
/* 0239FEF8 */ cpu->lr = cpu->r[0];
|
|
/* 0239FEFC */ cpu->r[1] = cpu->r[1] + 0x00000070u;
|
|
/* 0239FF00 */ return;
|
|
}
|
|
|
|
// fn_0239FF04 @ 0x239ff04
|
|
void Gambit_fn_0239FF04(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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;
|
|
|
|
L_0239FF04: ; // 0x239ff04
|
|
/* 0239FF04 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 0239FF04 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0239FF04 */ cpu->r[1] = _t0;
|
|
/* 0239FF08 */ /* nop */
|
|
/* 0239FF0C */ cpu->r[0] = cpu->lr;
|
|
/* 0239FF10 */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 0239FF10 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0239FF14 */ cpu->r[25] = 0x101C0000u;
|
|
/* 0239FF18 */ _t2 = cpu->r[25] + 0x00006000u;
|
|
/* 0239FF18 */ cpu->r[8] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0239FF1C */ cpu->r[29] = cpu->r[3];
|
|
/* 0239FF20 */ _t3 = cpu->r[8] + 0x00000268u;
|
|
/* 0239FF20 */ cpu->r[31] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0239FF24 */ cpu->r[3] = cpu->r[31];
|
|
/* 0239FF28 */ Gambit_fn_0261F774(cpu);
|
|
/* 0239FF2C */ cpu->r[4] = cpu->r[3];
|
|
/* 0239FF30 */ cpu->r[3] = cpu->r[31];
|
|
/* 0239FF34 */ Gambit_fn_0261F55C(cpu);
|
|
/* 0239FF38 */ cpu->r[11] = 0x101C0000u;
|
|
/* 0239FF3C */ _t4 = cpu->r[25] + 0x00006000u;
|
|
/* 0239FF3C */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0239FF3C */ cpu->r[25] = _t4;
|
|
/* 0239FF40 */ _t5 = cpu->r[11] + 0x00007228u;
|
|
/* 0239FF40 */ cpu->r[11] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0239FF44 */ _t6 = cpu->r[9] + 0x00000268u;
|
|
/* 0239FF44 */ cpu->r[5] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0239FF48 */ cpu->r[10] = cpu->r[5] + cpu->r[11];
|
|
/* 0239FF4C */ _t7 = cpu->r[10] + 0x00000104u;
|
|
/* 0239FF4C */ cpu->r[12] = rbrew_read8(cpu->mem, _t7);
|
|
/* 0239FF50 */ _t8 = cpu->r[5] + 0x00000030u;
|
|
/* 0239FF50 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0239FF54 */ cpu->r[11] = rbrew_rlwinm(cpu->r[12], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0239FF58 */ _t9 = cpu->r[11] + cpu->r[0];
|
|
/* 0239FF58 */ cpu->r[6] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0239FF5C */ _t10 = cpu->r[6] + 0x00000008u;
|
|
/* 0239FF5C */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0239FF60 */ _t11 = cpu->r[12] + 0x0000000Cu;
|
|
/* 0239FF60 */ cpu->r[30] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0239FF64 */ cpu->r[27] = 0x00000000u;
|
|
/* 0239FF68 */ _t12 = cpu->r[12] + 0x00000004u;
|
|
/* 0239FF68 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0239FF6C */ cpu->r[26] = cpu->r[3];
|
|
/* 0239FF70 */ cpu->r[31] = cpu->r[12] - cpu->r[30];
|
|
/* 0239FF74 */ cpu->r[28] = cpu->r[27];
|
|
/* 0239FF78 */ cpu->r[24] = cpu->r[0] - cpu->r[30];
|
|
/* 0239FF7C */ goto L_0239FF8C;
|
|
L_0239FF80: ; // 0x239ff80
|
|
/* 0239FF80 */ cpu->r[9] = cpu->r[24] + cpu->r[30];
|
|
/* 0239FF84 */ _t13 = cpu->r[9] + 0x00000004u;
|
|
/* 0239FF84 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0239FF88 */ cpu->r[24] = cpu->r[0] - cpu->r[30];
|
|
L_0239FF8C: ; // 0x239ff8c
|
|
/* 0239FF8C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[24], cpu->r[31]);
|
|
/* 0239FF90 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239FF90 */ _t15 = _t14 & 0x00000001u;
|
|
/* 0239FF90 */ if (_t15) goto L_0239FFA8; else goto L_0239FF94;
|
|
L_0239FF94: ; // 0x239ff94
|
|
/* 0239FF94 */ _t16 = cpu->r[24] + 0x0000001Cu;
|
|
/* 0239FF94 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0239FF98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000002u);
|
|
/* 0239FF9C */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239FF9C */ _t18 = _t17 & 0x00000001u;
|
|
/* 0239FF9C */ if (_t18) goto L_0239FFA8; else goto L_0239FFA0;
|
|
L_0239FFA0: ; // 0x239ffa0
|
|
/* 0239FFA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000003u);
|
|
/* 0239FFA4 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239FFA4 */ _t20 = _t19 & 0x00000001u;
|
|
/* 0239FFA4 */ if (_t20) goto L_0239FFA8; else goto L_0239FF80;
|
|
L_0239FFA8: ; // 0x239ffa8
|
|
/* 0239FFA8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[24], cpu->r[31]);
|
|
/* 0239FFAC */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239FFAC */ _t22 = _t21 & 0x00000001u;
|
|
/* 0239FFAC */ if (_t22) goto L_023A0080; else goto L_0239FFB0;
|
|
L_0239FFB0: ; // 0x239ffb0
|
|
/* 0239FFB0 */ cpu->r[23] = 0x00000001u;
|
|
L_0239FFB4: ; // 0x239ffb4
|
|
/* 0239FFB4 */ _t23 = cpu->r[29] + 0x00000184u;
|
|
/* 0239FFB4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0239FFB8 */ _t24 = cpu->r[24] + 0x00000098u;
|
|
/* 0239FFB8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0239FFBC */ Gambit_fn_02466FF0(cpu);
|
|
/* 0239FFC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239FFC4 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239FFC4 */ _t26 = _t25 & 0x00000001u;
|
|
/* 0239FFC4 */ if (_t26) goto L_023A0014; else goto L_0239FFC8;
|
|
L_0239FFC8: ; // 0x239ffc8
|
|
/* 0239FFC8 */ cpu->r[3] = cpu->r[24];
|
|
/* 0239FFCC */ Gambit_fn_025C7F78(cpu);
|
|
/* 0239FFD0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0239FFD4 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0239FFD4 */ _t28 = _t27 & 0x00000001u;
|
|
/* 0239FFD4 */ if (_t28) goto L_023A0054; else goto L_0239FFD8;
|
|
L_0239FFD8: ; // 0x239ffd8
|
|
/* 0239FFD8 */ _t29 = cpu->r[29] + 0x0000019Du;
|
|
/* 0239FFD8 */ rbrew_write8(cpu->mem, _t29, (uint8_t)cpu->r[23]);
|
|
/* 0239FFDC */ _t30 = cpu->r[29] + 0x00000158u;
|
|
/* 0239FFDC */ rbrew_write32(cpu->mem, _t30, cpu->r[24]);
|
|
/* 0239FFE0 */ _t31 = cpu->r[24] + 0x00000244u;
|
|
/* 0239FFE0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 0239FFE4 */ _t32 = cpu->r[29] + 0x00000190u;
|
|
/* 0239FFE4 */ rbrew_write_f32(cpu->mem, _t32, cpu->f[12]);
|
|
/* 0239FFE8 */ _t33 = cpu->r[24] + 0x00000248u;
|
|
/* 0239FFE8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 0239FFEC */ _t34 = cpu->r[29] + 0x00000194u;
|
|
/* 0239FFEC */ rbrew_write_f32(cpu->mem, _t34, cpu->f[13]);
|
|
/* 0239FFF0 */ _t35 = cpu->r[24] + 0x0000024Cu;
|
|
/* 0239FFF0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 0239FFF4 */ cpu->r[8] = cpu->r[24] + cpu->r[30];
|
|
/* 0239FFF8 */ _t36 = cpu->r[29] + 0x00000198u;
|
|
/* 0239FFF8 */ rbrew_write_f32(cpu->mem, _t36, cpu->f[0]);
|
|
/* 0239FFFC */ _t37 = cpu->r[8] + 0x00000004u;
|
|
/* 0239FFFC */ cpu->r[0] = rbrew_read32(cpu->mem, _t37);
|
|
/* 023A0000 */ cpu->r[24] = cpu->r[0] - cpu->r[30];
|
|
/* 023A0004 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[24], cpu->r[31]);
|
|
/* 023A0008 */ cpu->r[28] = 0x00000001u;
|
|
/* 023A000C */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A000C */ _t39 = _t38 & 0x00000001u;
|
|
/* 023A000C */ if (_t39) goto L_023A0010; else goto L_023A0068;
|
|
L_023A0010: ; // 0x23a0010
|
|
/* 023A0010 */ goto L_023A0080;
|
|
L_023A0014: ; // 0x23a0014
|
|
/* 023A0014 */ _t40 = cpu->r[29] + 0x00000184u;
|
|
/* 023A0014 */ cpu->r[3] = rbrew_read32(cpu->mem, _t40);
|
|
/* 023A0018 */ _t41 = cpu->r[24] + 0x00000098u;
|
|
/* 023A0018 */ cpu->r[4] = rbrew_read32(cpu->mem, _t41);
|
|
/* 023A001C */ Gambit_fn_02466FF8(cpu);
|
|
/* 023A0020 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023A0024 */ _t42 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0024 */ _t43 = _t42 & 0x00000001u;
|
|
/* 023A0024 */ if (_t43) goto L_023A0054; else goto L_023A0028;
|
|
L_023A0028: ; // 0x23a0028
|
|
/* 023A0028 */ _t44 = cpu->r[29] + 0x00000158u;
|
|
/* 023A0028 */ rbrew_write32(cpu->mem, _t44, cpu->r[24]);
|
|
/* 023A002C */ _t45 = cpu->r[24] + 0x00000244u;
|
|
/* 023A002C */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t45);
|
|
/* 023A0030 */ _t46 = cpu->r[29] + 0x00000190u;
|
|
/* 023A0030 */ rbrew_write_f32(cpu->mem, _t46, cpu->f[6]);
|
|
/* 023A0034 */ _t47 = cpu->r[24] + 0x00000248u;
|
|
/* 023A0034 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 023A0038 */ _t48 = cpu->r[29] + 0x00000194u;
|
|
/* 023A0038 */ rbrew_write_f32(cpu->mem, _t48, cpu->f[7]);
|
|
/* 023A003C */ _t49 = cpu->r[24] + 0x0000024Cu;
|
|
/* 023A003C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t49);
|
|
/* 023A0040 */ cpu->r[27] = 0x00000001u;
|
|
/* 023A0044 */ cpu->r[3] = cpu->r[24];
|
|
/* 023A0048 */ _t50 = cpu->r[29] + 0x00000198u;
|
|
/* 023A0048 */ rbrew_write_f32(cpu->mem, _t50, cpu->f[10]);
|
|
/* 023A004C */ Gambit_fn_025C7F78(cpu);
|
|
/* 023A0050 */ cpu->r[28] = cpu->r[3];
|
|
L_023A0054: ; // 0x23a0054
|
|
/* 023A0054 */ cpu->r[8] = cpu->r[24] + cpu->r[30];
|
|
/* 023A0058 */ _t51 = cpu->r[8] + 0x00000004u;
|
|
/* 023A0058 */ cpu->r[0] = rbrew_read32(cpu->mem, _t51);
|
|
/* 023A005C */ cpu->r[24] = cpu->r[0] - cpu->r[30];
|
|
/* 023A0060 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[24], cpu->r[31]);
|
|
/* 023A0064 */ _t52 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0064 */ _t53 = _t52 & 0x00000001u;
|
|
/* 023A0064 */ if (_t53) goto L_023A0080; else goto L_023A0068;
|
|
L_023A0068: ; // 0x23a0068
|
|
/* 023A0068 */ _t54 = cpu->r[24] + 0x0000001Cu;
|
|
/* 023A0068 */ cpu->r[0] = rbrew_read32(cpu->mem, _t54);
|
|
/* 023A006C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000002u);
|
|
/* 023A0070 */ _t55 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0070 */ _t56 = _t55 & 0x00000001u;
|
|
/* 023A0070 */ if (_t56) goto L_0239FFB4; else goto L_023A0074;
|
|
L_023A0074: ; // 0x23a0074
|
|
/* 023A0074 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000003u);
|
|
/* 023A0078 */ _t57 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0078 */ _t58 = _t57 & 0x00000001u;
|
|
/* 023A0078 */ if (_t58) goto L_0239FFB0; else goto L_023A007C;
|
|
L_023A007C: ; // 0x23a007c
|
|
/* 023A007C */ goto L_023A0054;
|
|
L_023A0080: ; // 0x23a0080
|
|
/* 023A0080 */ _t59 = cpu->r[25] + 0x00000000u;
|
|
/* 023A0080 */ cpu->r[11] = rbrew_read32(cpu->mem, _t59);
|
|
/* 023A0084 */ _t60 = cpu->r[11] + 0x00000264u;
|
|
/* 023A0084 */ cpu->r[8] = rbrew_read32(cpu->mem, _t60);
|
|
/* 023A0088 */ _t61 = cpu->r[8] + 0x00000030u;
|
|
/* 023A0088 */ cpu->r[12] = rbrew_read32(cpu->mem, _t61);
|
|
/* 023A008C */ _t62 = cpu->r[12] + 0x00000018u;
|
|
/* 023A008C */ cpu->r[4] = rbrew_read32(cpu->mem, _t62);
|
|
/* 023A0090 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 023A0094 */ _t63 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0094 */ _t64 = _t63 & 0x00000001u;
|
|
/* 023A0094 */ if (_t64) goto L_023A027C; else goto L_023A0098;
|
|
L_023A0098: ; // 0x23a0098
|
|
/* 023A0098 */ _t65 = cpu->r[29] + 0x00000184u;
|
|
/* 023A0098 */ cpu->r[3] = rbrew_read32(cpu->mem, _t65);
|
|
/* 023A009C */ Gambit_fn_02467010(cpu);
|
|
/* 023A00A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023A00A4 */ cpu->r[31] = 0x101C0000u;
|
|
/* 023A00A8 */ _t66 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A00A8 */ _t67 = _t66 & 0x00000001u;
|
|
/* 023A00A8 */ if (_t67) goto L_023A0194; else goto L_023A00AC;
|
|
L_023A00AC: ; // 0x23a00ac
|
|
/* 023A00AC */ _t68 = cpu->r[25] + 0x00000000u;
|
|
/* 023A00AC */ cpu->r[5] = rbrew_read32(cpu->mem, _t68);
|
|
/* 023A00B0 */ _t69 = cpu->r[31] + 0x000068D8u;
|
|
/* 023A00B0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t69);
|
|
/* 023A00B4 */ _t70 = cpu->r[5] + 0x00000264u;
|
|
/* 023A00B4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t70);
|
|
/* 023A00B8 */ cpu->r[6] = cpu->r[5] + cpu->r[7];
|
|
/* 023A00BC */ _t71 = cpu->r[6] + 0x00000104u;
|
|
/* 023A00BC */ cpu->r[9] = rbrew_read8(cpu->mem, _t71);
|
|
/* 023A00C0 */ _t72 = cpu->r[5] + 0x00000030u;
|
|
/* 023A00C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t72);
|
|
/* 023A00C4 */ cpu->r[8] = rbrew_rlwinm(cpu->r[9], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 023A00C8 */ _t73 = cpu->r[8] + cpu->r[0];
|
|
/* 023A00C8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t73);
|
|
/* 023A00CC */ _t74 = cpu->r[4] + 0x00000008u;
|
|
/* 023A00CC */ cpu->r[6] = rbrew_read32(cpu->mem, _t74);
|
|
/* 023A00D0 */ _t75 = cpu->r[6] + 0x0000000Cu;
|
|
/* 023A00D0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t75);
|
|
/* 023A00D4 */ _t76 = cpu->r[6] + 0x00000004u;
|
|
/* 023A00D4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t76);
|
|
/* 023A00D8 */ cpu->r[0] = cpu->r[6] - cpu->r[10];
|
|
/* 023A00DC */ cpu->r[6] = cpu->r[7] - cpu->r[10];
|
|
/* 023A00E0 */ goto L_023A00F0;
|
|
L_023A00E4: ; // 0x23a00e4
|
|
/* 023A00E4 */ cpu->r[12] = cpu->r[6] + cpu->r[10];
|
|
/* 023A00E8 */ _t77 = cpu->r[12] + 0x00000004u;
|
|
/* 023A00E8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t77);
|
|
/* 023A00EC */ cpu->r[6] = cpu->r[11] - cpu->r[10];
|
|
L_023A00F0: ; // 0x23a00f0
|
|
/* 023A00F0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[0]);
|
|
/* 023A00F4 */ _t78 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A00F4 */ _t79 = _t78 & 0x00000001u;
|
|
/* 023A00F4 */ if (_t79) goto L_023A010C; else goto L_023A00F8;
|
|
L_023A00F8: ; // 0x23a00f8
|
|
/* 023A00F8 */ _t80 = cpu->r[6] + 0x0000001Cu;
|
|
/* 023A00F8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t80);
|
|
/* 023A00FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000002u);
|
|
/* 023A0100 */ _t81 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0100 */ _t82 = _t81 & 0x00000001u;
|
|
/* 023A0100 */ if (_t82) goto L_023A010C; else goto L_023A0104;
|
|
L_023A0104: ; // 0x23a0104
|
|
/* 023A0104 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 023A0108 */ _t83 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0108 */ _t84 = _t83 & 0x00000001u;
|
|
/* 023A0108 */ if (_t84) goto L_023A010C; else goto L_023A00E4;
|
|
L_023A010C: ; // 0x23a010c
|
|
/* 023A010C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[0]);
|
|
/* 023A0110 */ _t85 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0110 */ _t86 = _t85 & 0x00000001u;
|
|
/* 023A0110 */ if (_t86) goto L_023A027C; else goto L_023A0114;
|
|
L_023A0114: ; // 0x23a0114
|
|
/* 023A0114 */ cpu->r[11] = 0x00000001u;
|
|
/* 023A0118 */ cpu->r[5] = cpu->r[10];
|
|
/* 023A011C */ cpu->r[8] = cpu->r[0];
|
|
L_023A0120: ; // 0x23a0120
|
|
/* 023A0120 */ _t87 = cpu->r[6] + 0x0000002Cu;
|
|
/* 023A0120 */ cpu->r[12] = rbrew_read32(cpu->mem, _t87);
|
|
/* 023A0124 */ _t88 = cpu->r[26] + 0x0000002Cu;
|
|
/* 023A0124 */ cpu->r[9] = rbrew_read32(cpu->mem, _t88);
|
|
/* 023A0128 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[9]);
|
|
/* 023A012C */ _t89 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A012C */ _t90 = _t89 & 0x00000001u;
|
|
/* 023A012C */ if (_t90) goto L_023A0130; else goto L_023A0154;
|
|
L_023A0130: ; // 0x23a0130
|
|
/* 023A0130 */ _t91 = cpu->r[29] + 0x0000019Du;
|
|
/* 023A0130 */ rbrew_write8(cpu->mem, _t91, (uint8_t)cpu->r[11]);
|
|
/* 023A0134 */ _t92 = cpu->r[29] + 0x00000158u;
|
|
/* 023A0134 */ rbrew_write32(cpu->mem, _t92, cpu->r[6]);
|
|
/* 023A0138 */ _t93 = cpu->r[6] + 0x00000078u;
|
|
/* 023A0138 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t93);
|
|
/* 023A013C */ _t94 = cpu->r[29] + 0x00000190u;
|
|
/* 023A013C */ rbrew_write_f32(cpu->mem, _t94, cpu->f[9]);
|
|
/* 023A0140 */ _t95 = cpu->r[6] + 0x0000007Cu;
|
|
/* 023A0140 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t95);
|
|
/* 023A0144 */ _t96 = cpu->r[29] + 0x00000194u;
|
|
/* 023A0144 */ rbrew_write_f32(cpu->mem, _t96, cpu->f[12]);
|
|
/* 023A0148 */ _t97 = cpu->r[6] + 0x00000080u;
|
|
/* 023A0148 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t97);
|
|
/* 023A014C */ cpu->r[28] = 0x00000001u;
|
|
/* 023A0150 */ _t98 = cpu->r[29] + 0x00000198u;
|
|
/* 023A0150 */ rbrew_write_f32(cpu->mem, _t98, cpu->f[13]);
|
|
L_023A0154: ; // 0x23a0154
|
|
/* 023A0154 */ cpu->r[9] = cpu->r[6] + cpu->r[5];
|
|
/* 023A0158 */ _t99 = cpu->r[9] + 0x00000004u;
|
|
/* 023A0158 */ cpu->r[7] = rbrew_read32(cpu->mem, _t99);
|
|
/* 023A015C */ cpu->r[6] = cpu->r[7] - cpu->r[5];
|
|
/* 023A0160 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[8]);
|
|
/* 023A0164 */ _t100 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0164 */ _t101 = _t100 & 0x00000001u;
|
|
/* 023A0164 */ if (_t101) goto L_023A027C; else goto L_023A0168;
|
|
L_023A0168: ; // 0x23a0168
|
|
/* 023A0168 */ _t102 = cpu->r[6] + 0x0000001Cu;
|
|
/* 023A0168 */ cpu->r[4] = rbrew_read32(cpu->mem, _t102);
|
|
/* 023A016C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000002u);
|
|
/* 023A0170 */ _t103 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0170 */ _t104 = _t103 & 0x00000001u;
|
|
/* 023A0170 */ if (_t104) goto L_023A0180; else goto L_023A0174;
|
|
L_023A0174: ; // 0x23a0174
|
|
/* 023A0174 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000003u);
|
|
/* 023A0178 */ _t105 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0178 */ _t106 = _t105 & 0x00000001u;
|
|
/* 023A0178 */ if (_t106) goto L_023A017C; else goto L_023A0154;
|
|
L_023A017C: ; // 0x23a017c
|
|
/* 023A017C */ goto L_023A010C;
|
|
L_023A0180: ; // 0x23a0180
|
|
/* 023A0180 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[8]);
|
|
/* 023A0184 */ _t107 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0184 */ _t108 = _t107 & 0x00000001u;
|
|
/* 023A0184 */ if (_t108) goto L_023A0188; else goto L_023A0120;
|
|
L_023A0188: ; // 0x23a0188
|
|
/* 023A0188 */ _t109 = cpu->r[29] + 0x0000018Cu;
|
|
/* 023A0188 */ rbrew_write8(cpu->mem, _t109, (uint8_t)cpu->r[27]);
|
|
/* 023A018C */ _t110 = cpu->r[29] + 0x0000019Cu;
|
|
/* 023A018C */ rbrew_write8(cpu->mem, _t110, (uint8_t)cpu->r[28]);
|
|
/* 023A0190 */ goto L_023A0284;
|
|
L_023A0194: ; // 0x23a0194
|
|
/* 023A0194 */ _t111 = cpu->r[29] + 0x00000184u;
|
|
/* 023A0194 */ cpu->r[3] = rbrew_read32(cpu->mem, _t111);
|
|
/* 023A0198 */ Gambit_fn_02467018(cpu);
|
|
/* 023A019C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023A01A0 */ _t112 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A01A0 */ _t113 = _t112 & 0x00000001u;
|
|
/* 023A01A0 */ if (_t113) goto L_023A027C; else goto L_023A01A4;
|
|
L_023A01A4: ; // 0x23a01a4
|
|
/* 023A01A4 */ _t114 = cpu->r[25] + 0x00000000u;
|
|
/* 023A01A4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t114);
|
|
/* 023A01A8 */ _t115 = cpu->r[31] + 0x000068D8u;
|
|
/* 023A01A8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t115);
|
|
/* 023A01AC */ _t116 = cpu->r[12] + 0x00000264u;
|
|
/* 023A01AC */ cpu->r[10] = rbrew_read32(cpu->mem, _t116);
|
|
/* 023A01B0 */ cpu->r[5] = cpu->r[10] + cpu->r[6];
|
|
/* 023A01B4 */ _t117 = cpu->r[5] + 0x00000104u;
|
|
/* 023A01B4 */ cpu->r[8] = rbrew_read8(cpu->mem, _t117);
|
|
/* 023A01B8 */ _t118 = cpu->r[10] + 0x00000030u;
|
|
/* 023A01B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t118);
|
|
/* 023A01BC */ cpu->r[7] = rbrew_rlwinm(cpu->r[8], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 023A01C0 */ _t119 = cpu->r[7] + cpu->r[0];
|
|
/* 023A01C0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t119);
|
|
/* 023A01C4 */ _t120 = cpu->r[10] + 0x00000008u;
|
|
/* 023A01C4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t120);
|
|
/* 023A01C8 */ _t121 = cpu->r[4] + 0x0000000Cu;
|
|
/* 023A01C8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t121);
|
|
/* 023A01CC */ _t122 = cpu->r[4] + 0x00000004u;
|
|
/* 023A01CC */ cpu->r[11] = rbrew_read32(cpu->mem, _t122);
|
|
/* 023A01D0 */ cpu->r[0] = cpu->r[4] - cpu->r[12];
|
|
/* 023A01D4 */ cpu->r[9] = cpu->r[11] - cpu->r[12];
|
|
/* 023A01D8 */ goto L_023A01E8;
|
|
L_023A01DC: ; // 0x23a01dc
|
|
/* 023A01DC */ cpu->r[11] = cpu->r[9] + cpu->r[12];
|
|
/* 023A01E0 */ _t123 = cpu->r[11] + 0x00000004u;
|
|
/* 023A01E0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t123);
|
|
/* 023A01E4 */ cpu->r[9] = cpu->r[4] - cpu->r[12];
|
|
L_023A01E8: ; // 0x23a01e8
|
|
/* 023A01E8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[0]);
|
|
/* 023A01EC */ _t124 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A01EC */ _t125 = _t124 & 0x00000001u;
|
|
/* 023A01EC */ if (_t125) goto L_023A0204; else goto L_023A01F0;
|
|
L_023A01F0: ; // 0x23a01f0
|
|
/* 023A01F0 */ _t126 = cpu->r[9] + 0x0000001Cu;
|
|
/* 023A01F0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t126);
|
|
/* 023A01F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000002u);
|
|
/* 023A01F8 */ _t127 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A01F8 */ _t128 = _t127 & 0x00000001u;
|
|
/* 023A01F8 */ if (_t128) goto L_023A0204; else goto L_023A01FC;
|
|
L_023A01FC: ; // 0x23a01fc
|
|
/* 023A01FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000003u);
|
|
/* 023A0200 */ _t129 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0200 */ _t130 = _t129 & 0x00000001u;
|
|
/* 023A0200 */ if (_t130) goto L_023A0204; else goto L_023A01DC;
|
|
L_023A0204: ; // 0x23a0204
|
|
/* 023A0204 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[0]);
|
|
/* 023A0208 */ _t131 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0208 */ _t132 = _t131 & 0x00000001u;
|
|
/* 023A0208 */ if (_t132) goto L_023A027C; else goto L_023A020C;
|
|
L_023A020C: ; // 0x23a020c
|
|
/* 023A020C */ cpu->r[6] = cpu->r[12];
|
|
/* 023A0210 */ cpu->r[7] = cpu->r[0];
|
|
L_023A0214: ; // 0x23a0214
|
|
/* 023A0214 */ _t133 = cpu->r[9] + 0x0000002Cu;
|
|
/* 023A0214 */ cpu->r[5] = rbrew_read32(cpu->mem, _t133);
|
|
/* 023A0218 */ _t134 = cpu->r[26] + 0x0000002Cu;
|
|
/* 023A0218 */ cpu->r[11] = rbrew_read32(cpu->mem, _t134);
|
|
/* 023A021C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[11]);
|
|
/* 023A0220 */ _t135 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0220 */ _t136 = _t135 & 0x00000001u;
|
|
/* 023A0220 */ if (_t136) goto L_023A0224; else goto L_023A0248;
|
|
L_023A0224: ; // 0x23a0224
|
|
/* 023A0224 */ _t137 = cpu->r[29] + 0x00000158u;
|
|
/* 023A0224 */ rbrew_write32(cpu->mem, _t137, cpu->r[9]);
|
|
/* 023A0228 */ _t138 = cpu->r[9] + 0x00000078u;
|
|
/* 023A0228 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t138);
|
|
/* 023A022C */ _t139 = cpu->r[29] + 0x00000190u;
|
|
/* 023A022C */ rbrew_write_f32(cpu->mem, _t139, cpu->f[8]);
|
|
/* 023A0230 */ _t140 = cpu->r[9] + 0x0000007Cu;
|
|
/* 023A0230 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t140);
|
|
/* 023A0234 */ cpu->r[27] = 0x00000001u;
|
|
/* 023A0238 */ _t141 = cpu->r[29] + 0x00000194u;
|
|
/* 023A0238 */ rbrew_write_f32(cpu->mem, _t141, cpu->f[11]);
|
|
/* 023A023C */ _t142 = cpu->r[9] + 0x00000080u;
|
|
/* 023A023C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t142);
|
|
/* 023A0240 */ cpu->r[28] = cpu->r[27];
|
|
/* 023A0244 */ _t143 = cpu->r[29] + 0x00000198u;
|
|
/* 023A0244 */ rbrew_write_f32(cpu->mem, _t143, cpu->f[0]);
|
|
L_023A0248: ; // 0x23a0248
|
|
/* 023A0248 */ cpu->r[4] = cpu->r[9] + cpu->r[6];
|
|
/* 023A024C */ _t144 = cpu->r[4] + 0x00000004u;
|
|
/* 023A024C */ cpu->r[5] = rbrew_read32(cpu->mem, _t144);
|
|
/* 023A0250 */ cpu->r[9] = cpu->r[5] - cpu->r[6];
|
|
/* 023A0254 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[7]);
|
|
/* 023A0258 */ _t145 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0258 */ _t146 = _t145 & 0x00000001u;
|
|
/* 023A0258 */ if (_t146) goto L_023A027C; else goto L_023A025C;
|
|
L_023A025C: ; // 0x23a025c
|
|
/* 023A025C */ _t147 = cpu->r[9] + 0x0000001Cu;
|
|
/* 023A025C */ cpu->r[10] = rbrew_read32(cpu->mem, _t147);
|
|
/* 023A0260 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000002u);
|
|
/* 023A0264 */ _t148 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0264 */ _t149 = _t148 & 0x00000001u;
|
|
/* 023A0264 */ if (_t149) goto L_023A0274; else goto L_023A0268;
|
|
L_023A0268: ; // 0x23a0268
|
|
/* 023A0268 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000003u);
|
|
/* 023A026C */ _t150 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A026C */ _t151 = _t150 & 0x00000001u;
|
|
/* 023A026C */ if (_t151) goto L_023A0270; else goto L_023A0248;
|
|
L_023A0270: ; // 0x23a0270
|
|
/* 023A0270 */ goto L_023A0204;
|
|
L_023A0274: ; // 0x23a0274
|
|
/* 023A0274 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[7]);
|
|
/* 023A0278 */ _t152 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0278 */ _t153 = _t152 & 0x00000001u;
|
|
/* 023A0278 */ if (_t153) goto L_023A027C; else goto L_023A0214;
|
|
L_023A027C: ; // 0x23a027c
|
|
/* 023A027C */ _t154 = cpu->r[29] + 0x0000019Cu;
|
|
/* 023A027C */ rbrew_write8(cpu->mem, _t154, (uint8_t)cpu->r[28]);
|
|
/* 023A0280 */ _t155 = cpu->r[29] + 0x0000018Cu;
|
|
/* 023A0280 */ rbrew_write8(cpu->mem, _t155, (uint8_t)cpu->r[27]);
|
|
L_023A0284: ; // 0x23a0284
|
|
/* 023A0284 */ /* nop */
|
|
/* 023A0288 */ _t156 = cpu->r[1] + 0x00000034u;
|
|
/* 023A0288 */ cpu->r[0] = rbrew_read32(cpu->mem, _t156);
|
|
/* 023A028C */ cpu->lr = cpu->r[0];
|
|
/* 023A0290 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 023A0294 */ return;
|
|
}
|
|
|
|
// fn_023A0298 @ 0x23a0298
|
|
void Gambit_fn_023A0298(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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;
|
|
|
|
L_023A0298: ; // 0x23a0298
|
|
/* 023A0298 */ cpu->r[0] = cpu->lr;
|
|
/* 023A029C */ _t0 = cpu->r[1] + 0xFFFFFF90u;
|
|
/* 023A029C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 023A029C */ cpu->r[1] = _t0;
|
|
/* 023A02A0 */ _t1 = cpu->r[1] + 0x00000060u;
|
|
/* 023A02A0 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 023A02A4 */ /* nop */
|
|
/* 023A02A8 */ _t2 = cpu->r[1] + 0x00000054u;
|
|
/* 023A02A8 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 023A02AC */ _t3 = cpu->r[1] + 0x00000068u;
|
|
/* 023A02AC */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 023A02B0 */ _t4 = cpu->r[1] + 0x00000058u;
|
|
/* 023A02B0 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 023A02B4 */ _t5 = cpu->r[1] + 0x0000005Cu;
|
|
/* 023A02B4 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 023A02B8 */ _t6 = cpu->r[1] + 0x00000074u;
|
|
/* 023A02B8 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 023A02BC */ cpu->r[29] = cpu->r[3];
|
|
/* 023A02C0 */ _t7 = cpu->r[29] + 0x00000160u;
|
|
/* 023A02C0 */ cpu->r[12] = rbrew_read8(cpu->mem, _t7);
|
|
/* 023A02C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 023A02C8 */ cpu->r[30] = 0x00000000u;
|
|
/* 023A02CC */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A02CC */ _t9 = _t8 & 0x00000001u;
|
|
/* 023A02CC */ if (_t9) goto L_023A02D0; else goto L_023A02DC;
|
|
L_023A02D0: ; // 0x23a02d0
|
|
/* 023A02D0 */ _t10 = cpu->r[29] + 0x00000180u;
|
|
/* 023A02D0 */ cpu->r[9] = rbrew_read8(cpu->mem, _t10);
|
|
/* 023A02D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 023A02D8 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A02D8 */ _t12 = _t11 & 0x00000001u;
|
|
/* 023A02D8 */ if (_t12) goto L_023A02F0; else goto L_023A02DC;
|
|
L_023A02DC: ; // 0x23a02dc
|
|
/* 023A02DC */ cpu->r[3] = cpu->r[29];
|
|
/* 023A02E0 */ Gambit_fn_0239F234(cpu);
|
|
/* 023A02E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023A02E8 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A02E8 */ _t14 = _t13 & 0x00000001u;
|
|
/* 023A02E8 */ if (_t14) goto L_023A02F0; else goto L_023A02EC;
|
|
L_023A02EC: ; // 0x23a02ec
|
|
/* 023A02EC */ cpu->r[30] = 0x00000001u;
|
|
L_023A02F0: ; // 0x23a02f0
|
|
/* 023A02F0 */ _t15 = cpu->r[29] + 0x0000018Cu;
|
|
/* 023A02F0 */ cpu->r[11] = rbrew_read8(cpu->mem, _t15);
|
|
/* 023A02F4 */ cpu->r[30] = rbrew_rlwinm(cpu->r[30], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 023A02F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 023A02FC */ cpu->r[31] = 0x00000000u;
|
|
/* 023A0300 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0300 */ _t17 = _t16 & 0x00000001u;
|
|
/* 023A0300 */ if (_t17) goto L_023A0304; else goto L_023A0310;
|
|
L_023A0304: ; // 0x23a0304
|
|
/* 023A0304 */ _t18 = cpu->r[29] + 0x0000019Du;
|
|
/* 023A0304 */ cpu->r[0] = rbrew_read8(cpu->mem, _t18);
|
|
/* 023A0308 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 023A030C */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A030C */ _t20 = _t19 & 0x00000001u;
|
|
/* 023A030C */ if (_t20) goto L_023A0330; else goto L_023A0310;
|
|
L_023A0310: ; // 0x23a0310
|
|
/* 023A0310 */ cpu->r[3] = cpu->r[29];
|
|
/* 023A0314 */ Gambit_fn_0239F1EC(cpu);
|
|
/* 023A0318 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023A031C */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A031C */ _t22 = _t21 & 0x00000001u;
|
|
/* 023A031C */ if (_t22) goto L_023A0330; else goto L_023A0320;
|
|
L_023A0320: ; // 0x23a0320
|
|
/* 023A0320 */ _t23 = cpu->r[29] + 0x0000019Cu;
|
|
/* 023A0320 */ cpu->r[9] = rbrew_read8(cpu->mem, _t23);
|
|
/* 023A0324 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 023A0328 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0328 */ _t25 = _t24 & 0x00000001u;
|
|
/* 023A0328 */ if (_t25) goto L_023A0330; else goto L_023A032C;
|
|
L_023A032C: ; // 0x23a032c
|
|
/* 023A032C */ cpu->r[31] = 0x00000001u;
|
|
L_023A0330: ; // 0x23a0330
|
|
/* 023A0330 */ cpu->r[31] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 023A0334 */ _t26 = cpu->r[29] + 0x00000160u;
|
|
/* 023A0334 */ cpu->r[12] = rbrew_read8(cpu->mem, _t26);
|
|
/* 023A0338 */ cpu->r[11] = cpu->r[30] | cpu->r[31];
|
|
/* 023A0338 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 023A033C */ cpu->r[30] = 0x00000001u;
|
|
/* 023A0340 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0340 */ _t28 = _t27 & 0x00000001u;
|
|
/* 023A0340 */ if (_t28) goto L_023A0344; else goto L_023A0348;
|
|
L_023A0344: ; // 0x23a0344
|
|
/* 023A0344 */ cpu->r[30] = cpu->r[31];
|
|
L_023A0348: ; // 0x23a0348
|
|
/* 023A0348 */ cpu->r[30] = rbrew_rlwinm(cpu->r[30], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 023A034C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 023A0350 */ cpu->r[0] = 0x00000001u;
|
|
/* 023A0354 */ _t29 = cpu->r[29] + 0x00000128u;
|
|
/* 023A0354 */ cpu->r[9] = rbrew_read8(cpu->mem, _t29);
|
|
/* 023A0358 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0358 */ _t31 = _t30 & 0x00000001u;
|
|
/* 023A0358 */ if (_t31) goto L_023A035C; else goto L_023A036C;
|
|
L_023A035C: ; // 0x23a035c
|
|
/* 023A035C */ _t32 = cpu->r[29] + 0x0000018Cu;
|
|
/* 023A035C */ cpu->r[7] = rbrew_read8(cpu->mem, _t32);
|
|
/* 023A0360 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 023A0364 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0364 */ _t34 = _t33 & 0x00000001u;
|
|
/* 023A0364 */ if (_t34) goto L_023A0368; else goto L_023A036C;
|
|
L_023A0368: ; // 0x23a0368
|
|
/* 023A0368 */ cpu->r[0] = 0x00000000u;
|
|
L_023A036C: ; // 0x23a036c
|
|
/* 023A036C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 023A0370 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 023A0374 */ _t35 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0374 */ _t36 = _t35 & 0x00000001u;
|
|
/* 023A0374 */ if (_t36) goto L_023A037C; else goto L_023A0378;
|
|
L_023A0378: ; // 0x23a0378
|
|
/* 023A0378 */ cpu->r[0] = 0x00000000u;
|
|
L_023A037C: ; // 0x23a037c
|
|
/* 023A037C */ _t37 = cpu->r[29] + 0x000002D4u;
|
|
/* 023A037C */ cpu->r[11] = rbrew_read8(cpu->mem, _t37);
|
|
/* 023A0380 */ cpu->r[10] = 0x10080000u;
|
|
/* 023A0384 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 023A0388 */ _t38 = cpu->r[10] + 0x00007050u;
|
|
/* 023A0388 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 023A038C */ _t39 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A038C */ _t40 = _t39 & 0x00000001u;
|
|
/* 023A038C */ if (_t40) goto L_023A0390; else goto L_023A05A4;
|
|
L_023A0390: ; // 0x23a0390
|
|
/* 023A0390 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 023A0394 */ _t41 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0394 */ _t42 = _t41 & 0x00000001u;
|
|
/* 023A0394 */ if (_t42) goto L_023A05A4; else goto L_023A0398;
|
|
L_023A0398: ; // 0x23a0398
|
|
/* 023A0398 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 023A039C */ _t43 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A039C */ _t44 = _t43 & 0x00000001u;
|
|
/* 023A039C */ if (_t44) goto L_023A03C4; else goto L_023A03A0;
|
|
L_023A03A0: ; // 0x23a03a0
|
|
/* 023A03A0 */ _t45 = cpu->r[29] + 0x00000174u;
|
|
/* 023A03A0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t45);
|
|
/* 023A03A4 */ _t46 = cpu->r[1] + 0x0000002Cu;
|
|
/* 023A03A4 */ rbrew_write32(cpu->mem, _t46, cpu->r[8]);
|
|
/* 023A03A8 */ _t47 = cpu->r[29] + 0x00000178u;
|
|
/* 023A03A8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t47);
|
|
/* 023A03AC */ _t48 = cpu->r[1] + 0x00000030u;
|
|
/* 023A03AC */ rbrew_write32(cpu->mem, _t48, cpu->r[9]);
|
|
/* 023A03B0 */ _t49 = cpu->r[29] + 0x0000017Cu;
|
|
/* 023A03B0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t49);
|
|
/* 023A03B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 023A03B8 */ _t50 = cpu->r[1] + 0x00000034u;
|
|
/* 023A03B8 */ rbrew_write32(cpu->mem, _t50, cpu->r[11]);
|
|
/* 023A03BC */ _t51 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A03BC */ _t52 = _t51 & 0x00000001u;
|
|
/* 023A03BC */ if (_t52) goto L_023A04C4; else goto L_023A03C0;
|
|
L_023A03C0: ; // 0x23a03c0
|
|
/* 023A03C0 */ goto L_023A03E4;
|
|
L_023A03C4: ; // 0x23a03c4
|
|
/* 023A03C4 */ _t53 = cpu->r[29] + 0x00000190u;
|
|
/* 023A03C4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t53);
|
|
/* 023A03C8 */ _t54 = cpu->r[1] + 0x0000002Cu;
|
|
/* 023A03C8 */ rbrew_write32(cpu->mem, _t54, cpu->r[8]);
|
|
/* 023A03CC */ _t55 = cpu->r[29] + 0x00000194u;
|
|
/* 023A03CC */ cpu->r[9] = rbrew_read32(cpu->mem, _t55);
|
|
/* 023A03D0 */ _t56 = cpu->r[1] + 0x00000030u;
|
|
/* 023A03D0 */ rbrew_write32(cpu->mem, _t56, cpu->r[9]);
|
|
/* 023A03D4 */ _t57 = cpu->r[29] + 0x00000198u;
|
|
/* 023A03D4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t57);
|
|
/* 023A03D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 023A03DC */ _t58 = cpu->r[1] + 0x00000034u;
|
|
/* 023A03DC */ rbrew_write32(cpu->mem, _t58, cpu->r[11]);
|
|
/* 023A03E0 */ _t59 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A03E0 */ _t60 = _t59 & 0x00000001u;
|
|
/* 023A03E0 */ if (_t60) goto L_023A04C4; else goto L_023A03E4;
|
|
L_023A03E4: ; // 0x23a03e4
|
|
/* 023A03E4 */ _t61 = cpu->r[29] + 0x000002A8u;
|
|
/* 023A03E4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t61);
|
|
/* 023A03E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 023A03EC */ _t62 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A03EC */ _t63 = _t62 & 0x00000001u;
|
|
/* 023A03EC */ if (_t63) goto L_023A0400; else goto L_023A03F0;
|
|
L_023A03F0: ; // 0x23a03f0
|
|
/* 023A03F0 */ _t64 = cpu->r[29] + 0x000002ACu;
|
|
/* 023A03F0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t64);
|
|
/* 023A03F4 */ _t65 = cpu->r[31] + 0x0000000Cu;
|
|
/* 023A03F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t65);
|
|
/* 023A03F8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]);
|
|
/* 023A03FC */ _t66 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A03FC */ _t67 = _t66 & 0x00000001u;
|
|
/* 023A03FC */ if (_t67) goto L_023A0428; else goto L_023A0400;
|
|
L_023A0400: ; // 0x23a0400
|
|
/* 023A0400 */ cpu->r[5] = 0x10080000u;
|
|
/* 023A0404 */ _t68 = cpu->r[29] + 0x00000030u;
|
|
/* 023A0404 */ cpu->r[3] = rbrew_read32(cpu->mem, _t68);
|
|
/* 023A0408 */ cpu->r[4] = cpu->r[29] + 0x000002A8u;
|
|
/* 023A040C */ cpu->r[5] = cpu->r[5] + 0x00007164u;
|
|
/* 023A0410 */ cpu->r[6] = 0x00000000u;
|
|
/* 023A0414 */ Gambit_fn_027B72F0(cpu);
|
|
/* 023A0418 */ _t69 = cpu->r[29] + 0x000002A8u;
|
|
/* 023A0418 */ cpu->r[31] = rbrew_read32(cpu->mem, _t69);
|
|
/* 023A041C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 023A0420 */ _t70 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0420 */ _t71 = _t70 & 0x00000001u;
|
|
/* 023A0420 */ if (_t71) goto L_023A047C; else goto L_023A0424;
|
|
L_023A0424: ; // 0x23a0424
|
|
/* 023A0424 */ _t72 = cpu->r[29] + 0x000002ACu;
|
|
/* 023A0424 */ cpu->r[7] = rbrew_read32(cpu->mem, _t72);
|
|
L_023A0428: ; // 0x23a0428
|
|
/* 023A0428 */ _t73 = cpu->r[31] + 0x0000000Cu;
|
|
/* 023A0428 */ cpu->r[0] = rbrew_read32(cpu->mem, _t73);
|
|
/* 023A042C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]);
|
|
/* 023A0430 */ _t74 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0430 */ _t75 = _t74 & 0x00000001u;
|
|
/* 023A0430 */ if (_t75) goto L_023A0434; else goto L_023A047C;
|
|
L_023A0434: ; // 0x23a0434
|
|
/* 023A0434 */ _t76 = cpu->r[1] + 0x00000010u;
|
|
/* 023A0434 */ rbrew_write_f32(cpu->mem, _t76, cpu->f[31]);
|
|
/* 023A0438 */ _t77 = cpu->r[1] + 0x00000008u;
|
|
/* 023A0438 */ rbrew_write_f32(cpu->mem, _t77, cpu->f[31]);
|
|
/* 023A043C */ _t78 = cpu->r[1] + 0x0000002Cu;
|
|
/* 023A043C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t78);
|
|
/* 023A0440 */ _t79 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023A0440 */ rbrew_write_f32(cpu->mem, _t79, cpu->f[31]);
|
|
/* 023A0444 */ _t80 = cpu->r[31] + 0x00000064u;
|
|
/* 023A0444 */ rbrew_write_f32(cpu->mem, _t80, cpu->f[0]);
|
|
/* 023A0448 */ _t81 = cpu->r[1] + 0x00000030u;
|
|
/* 023A0448 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t81);
|
|
/* 023A044C */ _t82 = cpu->r[31] + 0x00000068u;
|
|
/* 023A044C */ rbrew_write_f32(cpu->mem, _t82, cpu->f[0]);
|
|
/* 023A0450 */ _t83 = cpu->r[1] + 0x00000034u;
|
|
/* 023A0450 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t83);
|
|
/* 023A0454 */ _t84 = cpu->r[31] + 0x0000006Cu;
|
|
/* 023A0454 */ rbrew_write_f32(cpu->mem, _t84, cpu->f[0]);
|
|
/* 023A0458 */ _t85 = cpu->r[1] + 0x00000008u;
|
|
/* 023A0458 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t85);
|
|
/* 023A045C */ _t86 = cpu->r[31] + 0x0000012Cu;
|
|
/* 023A045C */ cpu->r[8] = rbrew_read32(cpu->mem, _t86);
|
|
/* 023A0460 */ _t87 = cpu->r[31] + 0x00000070u;
|
|
/* 023A0460 */ rbrew_write_f32(cpu->mem, _t87, cpu->f[0]);
|
|
/* 023A0464 */ _t88 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023A0464 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t88);
|
|
/* 023A0468 */ cpu->r[8] = cpu->r[8] | 0x00000004u;
|
|
/* 023A046C */ _t89 = cpu->r[31] + 0x00000074u;
|
|
/* 023A046C */ rbrew_write_f32(cpu->mem, _t89, cpu->f[0]);
|
|
/* 023A0470 */ _t90 = cpu->r[1] + 0x00000010u;
|
|
/* 023A0470 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t90);
|
|
/* 023A0474 */ _t91 = cpu->r[31] + 0x0000012Cu;
|
|
/* 023A0474 */ rbrew_write32(cpu->mem, _t91, cpu->r[8]);
|
|
/* 023A0478 */ _t92 = cpu->r[31] + 0x00000078u;
|
|
/* 023A0478 */ rbrew_write_f32(cpu->mem, _t92, cpu->f[0]);
|
|
L_023A047C: ; // 0x23a047c
|
|
/* 023A047C */ _t93 = cpu->r[29] + 0x000002B4u;
|
|
/* 023A047C */ cpu->r[31] = rbrew_read32(cpu->mem, _t93);
|
|
/* 023A0480 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 023A0484 */ _t94 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0484 */ _t95 = _t94 & 0x00000001u;
|
|
/* 023A0484 */ if (_t95) goto L_023A062C; else goto L_023A0488;
|
|
L_023A0488: ; // 0x23a0488
|
|
/* 023A0488 */ _t96 = cpu->r[31] + 0x0000000Cu;
|
|
/* 023A0488 */ cpu->r[9] = rbrew_read32(cpu->mem, _t96);
|
|
/* 023A048C */ _t97 = cpu->r[29] + 0x000002B8u;
|
|
/* 023A048C */ cpu->r[10] = rbrew_read32(cpu->mem, _t97);
|
|
/* 023A0490 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[10]);
|
|
/* 023A0494 */ _t98 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0494 */ _t99 = _t98 & 0x00000001u;
|
|
/* 023A0494 */ if (_t99) goto L_023A0498; else goto L_023A062C;
|
|
L_023A0498: ; // 0x23a0498
|
|
/* 023A0498 */ _t100 = cpu->r[31] + 0x00000028u;
|
|
/* 023A0498 */ cpu->r[3] = rbrew_read32(cpu->mem, _t100);
|
|
/* 023A049C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023A04A0 */ _t101 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A04A0 */ _t102 = _t101 & 0x00000001u;
|
|
/* 023A04A0 */ if (_t102) goto L_023A04B8; else goto L_023A04A4;
|
|
L_023A04A4: ; // 0x23a04a4
|
|
/* 023A04A4 */ _t103 = cpu->r[3] + 0x00000050u;
|
|
/* 023A04A4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t103);
|
|
/* 023A04A8 */ _t104 = cpu->r[11] + 0x00000024u;
|
|
/* 023A04A8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t104);
|
|
/* 023A04AC */ cpu->ctr = cpu->r[12];
|
|
/* 023A04B0 */ cpu->r[4] = 0xFFFFFFFFu;
|
|
/* 023A04B4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_023A04B8: ; // 0x23a04b8
|
|
/* 023A04B8 */ cpu->r[8] = 0x00000001u;
|
|
/* 023A04BC */ _t105 = cpu->r[31] + 0x0000004Cu;
|
|
/* 023A04BC */ rbrew_write8(cpu->mem, _t105, (uint8_t)cpu->r[8]);
|
|
/* 023A04C0 */ goto L_023A062C;
|
|
L_023A04C4: ; // 0x23a04c4
|
|
/* 023A04C4 */ _t106 = cpu->r[29] + 0x000002B4u;
|
|
/* 023A04C4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t106);
|
|
/* 023A04C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 023A04CC */ _t107 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A04CC */ _t108 = _t107 & 0x00000001u;
|
|
/* 023A04CC */ if (_t108) goto L_023A04E0; else goto L_023A04D0;
|
|
L_023A04D0: ; // 0x23a04d0
|
|
/* 023A04D0 */ _t109 = cpu->r[29] + 0x000002B8u;
|
|
/* 023A04D0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t109);
|
|
/* 023A04D4 */ _t110 = cpu->r[31] + 0x0000000Cu;
|
|
/* 023A04D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t110);
|
|
/* 023A04D8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[9]);
|
|
/* 023A04DC */ _t111 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A04DC */ _t112 = _t111 & 0x00000001u;
|
|
/* 023A04DC */ if (_t112) goto L_023A0508; else goto L_023A04E0;
|
|
L_023A04E0: ; // 0x23a04e0
|
|
/* 023A04E0 */ cpu->r[5] = 0x10080000u;
|
|
/* 023A04E4 */ _t113 = cpu->r[29] + 0x00000030u;
|
|
/* 023A04E4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t113);
|
|
/* 023A04E8 */ cpu->r[4] = cpu->r[29] + 0x000002B4u;
|
|
/* 023A04EC */ cpu->r[5] = cpu->r[5] + 0x00007154u;
|
|
/* 023A04F0 */ cpu->r[6] = 0x00000000u;
|
|
/* 023A04F4 */ Gambit_fn_027B72F0(cpu);
|
|
/* 023A04F8 */ _t114 = cpu->r[29] + 0x000002B4u;
|
|
/* 023A04F8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t114);
|
|
/* 023A04FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 023A0500 */ _t115 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0500 */ _t116 = _t115 & 0x00000001u;
|
|
/* 023A0500 */ if (_t116) goto L_023A055C; else goto L_023A0504;
|
|
L_023A0504: ; // 0x23a0504
|
|
/* 023A0504 */ _t117 = cpu->r[29] + 0x000002B8u;
|
|
/* 023A0504 */ cpu->r[9] = rbrew_read32(cpu->mem, _t117);
|
|
L_023A0508: ; // 0x23a0508
|
|
/* 023A0508 */ _t118 = cpu->r[31] + 0x0000000Cu;
|
|
/* 023A0508 */ cpu->r[7] = rbrew_read32(cpu->mem, _t118);
|
|
/* 023A050C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[9]);
|
|
/* 023A0510 */ _t119 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0510 */ _t120 = _t119 & 0x00000001u;
|
|
/* 023A0510 */ if (_t120) goto L_023A0514; else goto L_023A055C;
|
|
L_023A0514: ; // 0x23a0514
|
|
/* 023A0514 */ _t121 = cpu->r[1] + 0x0000001Cu;
|
|
/* 023A0514 */ rbrew_write_f32(cpu->mem, _t121, cpu->f[31]);
|
|
/* 023A0518 */ _t122 = cpu->r[1] + 0x00000014u;
|
|
/* 023A0518 */ rbrew_write_f32(cpu->mem, _t122, cpu->f[31]);
|
|
/* 023A051C */ _t123 = cpu->r[1] + 0x0000002Cu;
|
|
/* 023A051C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t123);
|
|
/* 023A0520 */ _t124 = cpu->r[1] + 0x00000018u;
|
|
/* 023A0520 */ rbrew_write_f32(cpu->mem, _t124, cpu->f[31]);
|
|
/* 023A0524 */ _t125 = cpu->r[31] + 0x00000064u;
|
|
/* 023A0524 */ rbrew_write_f32(cpu->mem, _t125, cpu->f[0]);
|
|
/* 023A0528 */ _t126 = cpu->r[1] + 0x00000030u;
|
|
/* 023A0528 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t126);
|
|
/* 023A052C */ _t127 = cpu->r[31] + 0x00000068u;
|
|
/* 023A052C */ rbrew_write_f32(cpu->mem, _t127, cpu->f[0]);
|
|
/* 023A0530 */ _t128 = cpu->r[1] + 0x00000034u;
|
|
/* 023A0530 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t128);
|
|
/* 023A0534 */ _t129 = cpu->r[31] + 0x0000006Cu;
|
|
/* 023A0534 */ rbrew_write_f32(cpu->mem, _t129, cpu->f[0]);
|
|
/* 023A0538 */ _t130 = cpu->r[1] + 0x00000014u;
|
|
/* 023A0538 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t130);
|
|
/* 023A053C */ _t131 = cpu->r[31] + 0x0000012Cu;
|
|
/* 023A053C */ cpu->r[8] = rbrew_read32(cpu->mem, _t131);
|
|
/* 023A0540 */ _t132 = cpu->r[31] + 0x00000070u;
|
|
/* 023A0540 */ rbrew_write_f32(cpu->mem, _t132, cpu->f[0]);
|
|
/* 023A0544 */ _t133 = cpu->r[1] + 0x00000018u;
|
|
/* 023A0544 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t133);
|
|
/* 023A0548 */ cpu->r[8] = cpu->r[8] | 0x00000004u;
|
|
/* 023A054C */ _t134 = cpu->r[31] + 0x00000074u;
|
|
/* 023A054C */ rbrew_write_f32(cpu->mem, _t134, cpu->f[0]);
|
|
/* 023A0550 */ _t135 = cpu->r[1] + 0x0000001Cu;
|
|
/* 023A0550 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t135);
|
|
/* 023A0554 */ _t136 = cpu->r[31] + 0x0000012Cu;
|
|
/* 023A0554 */ rbrew_write32(cpu->mem, _t136, cpu->r[8]);
|
|
/* 023A0558 */ _t137 = cpu->r[31] + 0x00000078u;
|
|
/* 023A0558 */ rbrew_write_f32(cpu->mem, _t137, cpu->f[0]);
|
|
L_023A055C: ; // 0x23a055c
|
|
/* 023A055C */ _t138 = cpu->r[29] + 0x000002A8u;
|
|
/* 023A055C */ cpu->r[31] = rbrew_read32(cpu->mem, _t138);
|
|
/* 023A0560 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 023A0564 */ _t139 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0564 */ _t140 = _t139 & 0x00000001u;
|
|
/* 023A0564 */ if (_t140) goto L_023A062C; else goto L_023A0568;
|
|
L_023A0568: ; // 0x23a0568
|
|
/* 023A0568 */ _t141 = cpu->r[31] + 0x0000000Cu;
|
|
/* 023A0568 */ cpu->r[9] = rbrew_read32(cpu->mem, _t141);
|
|
/* 023A056C */ _t142 = cpu->r[29] + 0x000002ACu;
|
|
/* 023A056C */ cpu->r[0] = rbrew_read32(cpu->mem, _t142);
|
|
/* 023A0570 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[0]);
|
|
/* 023A0574 */ _t143 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0574 */ _t144 = _t143 & 0x00000001u;
|
|
/* 023A0574 */ if (_t144) goto L_023A0578; else goto L_023A062C;
|
|
L_023A0578: ; // 0x23a0578
|
|
/* 023A0578 */ _t145 = cpu->r[31] + 0x00000028u;
|
|
/* 023A0578 */ cpu->r[3] = rbrew_read32(cpu->mem, _t145);
|
|
/* 023A057C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023A0580 */ _t146 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0580 */ _t147 = _t146 & 0x00000001u;
|
|
/* 023A0580 */ if (_t147) goto L_023A0598; else goto L_023A0584;
|
|
L_023A0584: ; // 0x23a0584
|
|
/* 023A0584 */ _t148 = cpu->r[3] + 0x00000050u;
|
|
/* 023A0584 */ cpu->r[12] = rbrew_read32(cpu->mem, _t148);
|
|
/* 023A0588 */ _t149 = cpu->r[12] + 0x00000024u;
|
|
/* 023A0588 */ cpu->r[8] = rbrew_read32(cpu->mem, _t149);
|
|
/* 023A058C */ cpu->ctr = cpu->r[8];
|
|
/* 023A0590 */ cpu->r[4] = 0xFFFFFFFFu;
|
|
/* 023A0594 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_023A0598: ; // 0x23a0598
|
|
/* 023A0598 */ cpu->r[8] = 0x00000001u;
|
|
/* 023A059C */ _t150 = cpu->r[31] + 0x0000004Cu;
|
|
/* 023A059C */ rbrew_write8(cpu->mem, _t150, (uint8_t)cpu->r[8]);
|
|
/* 023A05A0 */ goto L_023A062C;
|
|
L_023A05A4: ; // 0x23a05a4
|
|
/* 023A05A4 */ _t151 = cpu->r[29] + 0x000002A8u;
|
|
/* 023A05A4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t151);
|
|
/* 023A05A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 023A05AC */ _t152 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A05AC */ _t153 = _t152 & 0x00000001u;
|
|
/* 023A05AC */ if (_t153) goto L_023A05E8; else goto L_023A05B0;
|
|
L_023A05B0: ; // 0x23a05b0
|
|
/* 023A05B0 */ _t154 = cpu->r[31] + 0x0000000Cu;
|
|
/* 023A05B0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t154);
|
|
/* 023A05B4 */ _t155 = cpu->r[29] + 0x000002ACu;
|
|
/* 023A05B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t155);
|
|
/* 023A05B8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[0]);
|
|
/* 023A05BC */ _t156 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A05BC */ _t157 = _t156 & 0x00000001u;
|
|
/* 023A05BC */ if (_t157) goto L_023A05C0; else goto L_023A05E8;
|
|
L_023A05C0: ; // 0x23a05c0
|
|
/* 023A05C0 */ _t158 = cpu->r[31] + 0x00000028u;
|
|
/* 023A05C0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t158);
|
|
/* 023A05C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023A05C8 */ _t159 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A05C8 */ _t160 = _t159 & 0x00000001u;
|
|
/* 023A05C8 */ if (_t160) goto L_023A05E0; else goto L_023A05CC;
|
|
L_023A05CC: ; // 0x23a05cc
|
|
/* 023A05CC */ _t161 = cpu->r[3] + 0x00000050u;
|
|
/* 023A05CC */ cpu->r[12] = rbrew_read32(cpu->mem, _t161);
|
|
/* 023A05D0 */ _t162 = cpu->r[12] + 0x00000024u;
|
|
/* 023A05D0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t162);
|
|
/* 023A05D4 */ cpu->ctr = cpu->r[7];
|
|
/* 023A05D8 */ cpu->r[4] = 0xFFFFFFFFu;
|
|
/* 023A05DC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_023A05E0: ; // 0x23a05e0
|
|
/* 023A05E0 */ cpu->r[8] = 0x00000001u;
|
|
/* 023A05E4 */ _t163 = cpu->r[31] + 0x0000004Cu;
|
|
/* 023A05E4 */ rbrew_write8(cpu->mem, _t163, (uint8_t)cpu->r[8]);
|
|
L_023A05E8: ; // 0x23a05e8
|
|
/* 023A05E8 */ _t164 = cpu->r[29] + 0x000002B4u;
|
|
/* 023A05E8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t164);
|
|
/* 023A05EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 023A05F0 */ _t165 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A05F0 */ _t166 = _t165 & 0x00000001u;
|
|
/* 023A05F0 */ if (_t166) goto L_023A062C; else goto L_023A05F4;
|
|
L_023A05F4: ; // 0x23a05f4
|
|
/* 023A05F4 */ _t167 = cpu->r[31] + 0x0000000Cu;
|
|
/* 023A05F4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t167);
|
|
/* 023A05F8 */ _t168 = cpu->r[29] + 0x000002B8u;
|
|
/* 023A05F8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t168);
|
|
/* 023A05FC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[10]);
|
|
/* 023A0600 */ _t169 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0600 */ _t170 = _t169 & 0x00000001u;
|
|
/* 023A0600 */ if (_t170) goto L_023A0604; else goto L_023A062C;
|
|
L_023A0604: ; // 0x23a0604
|
|
/* 023A0604 */ _t171 = cpu->r[31] + 0x00000028u;
|
|
/* 023A0604 */ cpu->r[3] = rbrew_read32(cpu->mem, _t171);
|
|
/* 023A0608 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023A060C */ _t172 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A060C */ _t173 = _t172 & 0x00000001u;
|
|
/* 023A060C */ if (_t173) goto L_023A0624; else goto L_023A0610;
|
|
L_023A0610: ; // 0x23a0610
|
|
/* 023A0610 */ _t174 = cpu->r[3] + 0x00000050u;
|
|
/* 023A0610 */ cpu->r[11] = rbrew_read32(cpu->mem, _t174);
|
|
/* 023A0614 */ _t175 = cpu->r[11] + 0x00000024u;
|
|
/* 023A0614 */ cpu->r[0] = rbrew_read32(cpu->mem, _t175);
|
|
/* 023A0618 */ cpu->ctr = cpu->r[0];
|
|
/* 023A061C */ cpu->r[4] = 0xFFFFFFFFu;
|
|
/* 023A0620 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_023A0624: ; // 0x23a0624
|
|
/* 023A0624 */ cpu->r[8] = 0x00000001u;
|
|
/* 023A0628 */ _t176 = cpu->r[31] + 0x0000004Cu;
|
|
/* 023A0628 */ rbrew_write8(cpu->mem, _t176, (uint8_t)cpu->r[8]);
|
|
L_023A062C: ; // 0x23a062c
|
|
/* 023A062C */ _t177 = cpu->r[29] + 0x00000180u;
|
|
/* 023A062C */ cpu->r[10] = rbrew_read8(cpu->mem, _t177);
|
|
/* 023A0630 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 023A0634 */ _t178 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0634 */ _t179 = _t178 & 0x00000001u;
|
|
/* 023A0634 */ if (_t179) goto L_023A0638; else goto L_023A0644;
|
|
L_023A0638: ; // 0x23a0638
|
|
/* 023A0638 */ _t180 = cpu->r[29] + 0x0000019Du;
|
|
/* 023A0638 */ cpu->r[11] = rbrew_read8(cpu->mem, _t180);
|
|
/* 023A063C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 023A0640 */ _t181 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0640 */ _t182 = _t181 & 0x00000001u;
|
|
/* 023A0640 */ if (_t182) goto L_023A0794; else goto L_023A0644;
|
|
L_023A0644: ; // 0x23a0644
|
|
/* 023A0644 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 023A0648 */ _t183 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0648 */ _t184 = _t183 & 0x00000001u;
|
|
/* 023A0648 */ if (_t184) goto L_023A0750; else goto L_023A064C;
|
|
L_023A064C: ; // 0x23a064c
|
|
/* 023A064C */ _t185 = cpu->r[29] + 0x00000030u;
|
|
/* 023A064C */ cpu->r[3] = rbrew_read32(cpu->mem, _t185);
|
|
/* 023A0650 */ cpu->r[6] = 0x00000000u;
|
|
/* 023A0654 */ cpu->r[7] = 0x10080000u;
|
|
/* 023A0658 */ _t186 = cpu->r[1] + 0x0000003Cu;
|
|
/* 023A0658 */ rbrew_write32(cpu->mem, _t186, cpu->r[6]);
|
|
/* 023A065C */ cpu->r[7] = cpu->r[7] + 0x00006FE4u;
|
|
/* 023A0660 */ cpu->r[5] = 0x10080000u;
|
|
/* 023A0664 */ _t187 = cpu->r[1] + 0x00000038u;
|
|
/* 023A0664 */ rbrew_write32(cpu->mem, _t187, cpu->r[6]);
|
|
/* 023A0668 */ cpu->r[4] = cpu->r[1] + 0x00000038u;
|
|
/* 023A066C */ cpu->r[5] = cpu->r[5] + 0x00007170u;
|
|
/* 023A0670 */ _t188 = cpu->r[1] + 0x00000040u;
|
|
/* 023A0670 */ rbrew_write32(cpu->mem, _t188, cpu->r[7]);
|
|
/* 023A0674 */ Gambit_fn_027B72F0(cpu);
|
|
/* 023A0678 */ _t189 = cpu->r[29] + 0x00000180u;
|
|
/* 023A0678 */ cpu->r[8] = rbrew_read8(cpu->mem, _t189);
|
|
/* 023A067C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 023A0680 */ _t190 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0680 */ _t191 = _t190 & 0x00000001u;
|
|
/* 023A0680 */ if (_t191) goto L_023A06AC; else goto L_023A0684;
|
|
L_023A0684: ; // 0x23a0684
|
|
/* 023A0684 */ _t192 = cpu->r[29] + 0x00000174u;
|
|
/* 023A0684 */ cpu->r[12] = rbrew_read32(cpu->mem, _t192);
|
|
/* 023A0688 */ _t193 = cpu->r[1] + 0x00000044u;
|
|
/* 023A0688 */ rbrew_write32(cpu->mem, _t193, cpu->r[12]);
|
|
/* 023A068C */ _t194 = cpu->r[29] + 0x00000178u;
|
|
/* 023A068C */ cpu->r[7] = rbrew_read32(cpu->mem, _t194);
|
|
/* 023A0690 */ _t195 = cpu->r[1] + 0x00000038u;
|
|
/* 023A0690 */ cpu->r[11] = rbrew_read32(cpu->mem, _t195);
|
|
/* 023A0694 */ _t196 = cpu->r[1] + 0x00000048u;
|
|
/* 023A0694 */ rbrew_write32(cpu->mem, _t196, cpu->r[7]);
|
|
/* 023A0698 */ _t197 = cpu->r[29] + 0x0000017Cu;
|
|
/* 023A0698 */ cpu->r[8] = rbrew_read32(cpu->mem, _t197);
|
|
/* 023A069C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 023A06A0 */ _t198 = cpu->r[1] + 0x0000004Cu;
|
|
/* 023A06A0 */ rbrew_write32(cpu->mem, _t198, cpu->r[8]);
|
|
/* 023A06A4 */ _t199 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A06A4 */ _t200 = _t199 & 0x00000001u;
|
|
/* 023A06A4 */ if (_t200) goto L_023A0794; else goto L_023A06A8;
|
|
L_023A06A8: ; // 0x23a06a8
|
|
/* 023A06A8 */ goto L_023A06D0;
|
|
L_023A06AC: ; // 0x23a06ac
|
|
/* 023A06AC */ _t201 = cpu->r[29] + 0x00000190u;
|
|
/* 023A06AC */ cpu->r[12] = rbrew_read32(cpu->mem, _t201);
|
|
/* 023A06B0 */ _t202 = cpu->r[1] + 0x00000044u;
|
|
/* 023A06B0 */ rbrew_write32(cpu->mem, _t202, cpu->r[12]);
|
|
/* 023A06B4 */ _t203 = cpu->r[29] + 0x00000194u;
|
|
/* 023A06B4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t203);
|
|
/* 023A06B8 */ _t204 = cpu->r[1] + 0x00000038u;
|
|
/* 023A06B8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t204);
|
|
/* 023A06BC */ _t205 = cpu->r[1] + 0x00000048u;
|
|
/* 023A06BC */ rbrew_write32(cpu->mem, _t205, cpu->r[7]);
|
|
/* 023A06C0 */ _t206 = cpu->r[29] + 0x00000198u;
|
|
/* 023A06C0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t206);
|
|
/* 023A06C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 023A06C8 */ _t207 = cpu->r[1] + 0x0000004Cu;
|
|
/* 023A06C8 */ rbrew_write32(cpu->mem, _t207, cpu->r[8]);
|
|
/* 023A06CC */ _t208 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A06CC */ _t209 = _t208 & 0x00000001u;
|
|
/* 023A06CC */ if (_t209) goto L_023A0794; else goto L_023A06D0;
|
|
L_023A06D0: ; // 0x23a06d0
|
|
/* 023A06D0 */ _t210 = cpu->r[11] + 0x0000000Cu;
|
|
/* 023A06D0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t210);
|
|
/* 023A06D4 */ _t211 = cpu->r[1] + 0x0000003Cu;
|
|
/* 023A06D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t211);
|
|
/* 023A06D8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[0]);
|
|
/* 023A06DC */ _t212 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A06DC */ _t213 = _t212 & 0x00000001u;
|
|
/* 023A06DC */ if (_t213) goto L_023A06E0; else goto L_023A0794;
|
|
L_023A06E0: ; // 0x23a06e0
|
|
/* 023A06E0 */ _t214 = cpu->r[1] + 0x00000028u;
|
|
/* 023A06E0 */ rbrew_write_f32(cpu->mem, _t214, cpu->f[31]);
|
|
/* 023A06E4 */ _t215 = cpu->r[1] + 0x00000020u;
|
|
/* 023A06E4 */ rbrew_write_f32(cpu->mem, _t215, cpu->f[31]);
|
|
/* 023A06E8 */ _t216 = cpu->r[1] + 0x00000044u;
|
|
/* 023A06E8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t216);
|
|
/* 023A06EC */ _t217 = cpu->r[1] + 0x00000024u;
|
|
/* 023A06EC */ rbrew_write_f32(cpu->mem, _t217, cpu->f[31]);
|
|
/* 023A06F0 */ _t218 = cpu->r[11] + 0x00000064u;
|
|
/* 023A06F0 */ rbrew_write_f32(cpu->mem, _t218, cpu->f[0]);
|
|
/* 023A06F4 */ _t219 = cpu->r[1] + 0x00000048u;
|
|
/* 023A06F4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t219);
|
|
/* 023A06F8 */ _t220 = cpu->r[11] + 0x00000068u;
|
|
/* 023A06F8 */ rbrew_write_f32(cpu->mem, _t220, cpu->f[0]);
|
|
/* 023A06FC */ _t221 = cpu->r[1] + 0x0000004Cu;
|
|
/* 023A06FC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t221);
|
|
/* 023A0700 */ _t222 = cpu->r[11] + 0x0000006Cu;
|
|
/* 023A0700 */ rbrew_write_f32(cpu->mem, _t222, cpu->f[0]);
|
|
/* 023A0704 */ _t223 = cpu->r[1] + 0x00000020u;
|
|
/* 023A0704 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t223);
|
|
/* 023A0708 */ _t224 = cpu->r[11] + 0x0000012Cu;
|
|
/* 023A0708 */ cpu->r[10] = rbrew_read32(cpu->mem, _t224);
|
|
/* 023A070C */ _t225 = cpu->r[11] + 0x00000070u;
|
|
/* 023A070C */ rbrew_write_f32(cpu->mem, _t225, cpu->f[0]);
|
|
/* 023A0710 */ _t226 = cpu->r[1] + 0x00000024u;
|
|
/* 023A0710 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t226);
|
|
/* 023A0714 */ cpu->r[10] = cpu->r[10] | 0x00000004u;
|
|
/* 023A0718 */ _t227 = cpu->r[11] + 0x00000074u;
|
|
/* 023A0718 */ rbrew_write_f32(cpu->mem, _t227, cpu->f[0]);
|
|
/* 023A071C */ _t228 = cpu->r[1] + 0x00000028u;
|
|
/* 023A071C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t228);
|
|
/* 023A0720 */ _t229 = cpu->r[11] + 0x0000012Cu;
|
|
/* 023A0720 */ rbrew_write32(cpu->mem, _t229, cpu->r[10]);
|
|
/* 023A0724 */ _t230 = cpu->r[11] + 0x00000078u;
|
|
/* 023A0724 */ rbrew_write_f32(cpu->mem, _t230, cpu->f[0]);
|
|
/* 023A0728 */ _t231 = cpu->r[1] + 0x00000054u;
|
|
/* 023A0728 */ cpu->r[29] = rbrew_read32(cpu->mem, _t231);
|
|
/* 023A072C */ _t232 = cpu->r[1] + 0x00000068u;
|
|
/* 023A072C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t232);
|
|
/* 023A0730 */ _t233 = cpu->r[1] + 0x00000058u;
|
|
/* 023A0730 */ cpu->r[30] = rbrew_read32(cpu->mem, _t233);
|
|
/* 023A0734 */ _t234 = cpu->r[1] + 0x00000060u;
|
|
/* 023A0734 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t234);
|
|
/* 023A0738 */ _t235 = cpu->r[1] + 0x0000005Cu;
|
|
/* 023A0738 */ cpu->r[31] = rbrew_read32(cpu->mem, _t235);
|
|
/* 023A073C */ _t236 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 023A073C */ _t237 = _t236 & 0x00000001u;
|
|
/* 023A073C */ if (_t237) goto L_023A0740; // else: addr-0 trap, fall-through
|
|
L_023A0740: ; // 0x23a0740
|
|
/* 023A0740 */ _t238 = cpu->r[1] + 0x00000074u;
|
|
/* 023A0740 */ cpu->r[0] = rbrew_read32(cpu->mem, _t238);
|
|
/* 023A0744 */ cpu->lr = cpu->r[0];
|
|
/* 023A0748 */ cpu->r[1] = cpu->r[1] + 0x00000070u;
|
|
/* 023A074C */ return;
|
|
L_023A0750: ; // 0x23a0750
|
|
/* 023A0750 */ _t239 = cpu->r[29] + 0x000002B4u;
|
|
/* 023A0750 */ cpu->r[31] = rbrew_read32(cpu->mem, _t239);
|
|
/* 023A0754 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 023A0758 */ _t240 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0758 */ _t241 = _t240 & 0x00000001u;
|
|
/* 023A0758 */ if (_t241) goto L_023A0794; else goto L_023A075C;
|
|
L_023A075C: ; // 0x23a075c
|
|
/* 023A075C */ _t242 = cpu->r[31] + 0x0000000Cu;
|
|
/* 023A075C */ cpu->r[12] = rbrew_read32(cpu->mem, _t242);
|
|
/* 023A0760 */ _t243 = cpu->r[29] + 0x000002B8u;
|
|
/* 023A0760 */ cpu->r[7] = rbrew_read32(cpu->mem, _t243);
|
|
/* 023A0764 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[7]);
|
|
/* 023A0768 */ _t244 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0768 */ _t245 = _t244 & 0x00000001u;
|
|
/* 023A0768 */ if (_t245) goto L_023A076C; else goto L_023A0794;
|
|
L_023A076C: ; // 0x23a076c
|
|
/* 023A076C */ _t246 = cpu->r[31] + 0x00000028u;
|
|
/* 023A076C */ cpu->r[3] = rbrew_read32(cpu->mem, _t246);
|
|
/* 023A0770 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023A0774 */ _t247 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0774 */ _t248 = _t247 & 0x00000001u;
|
|
/* 023A0774 */ if (_t248) goto L_023A078C; else goto L_023A0778;
|
|
L_023A0778: ; // 0x23a0778
|
|
/* 023A0778 */ _t249 = cpu->r[3] + 0x00000050u;
|
|
/* 023A0778 */ cpu->r[9] = rbrew_read32(cpu->mem, _t249);
|
|
/* 023A077C */ _t250 = cpu->r[9] + 0x00000024u;
|
|
/* 023A077C */ cpu->r[10] = rbrew_read32(cpu->mem, _t250);
|
|
/* 023A0780 */ cpu->ctr = cpu->r[10];
|
|
/* 023A0784 */ cpu->r[4] = 0xFFFFFFFFu;
|
|
/* 023A0788 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_023A078C: ; // 0x23a078c
|
|
/* 023A078C */ cpu->r[12] = 0x00000001u;
|
|
/* 023A0790 */ _t251 = cpu->r[31] + 0x0000004Cu;
|
|
/* 023A0790 */ rbrew_write8(cpu->mem, _t251, (uint8_t)cpu->r[12]);
|
|
L_023A0794: ; // 0x23a0794
|
|
/* 023A0794 */ _t252 = cpu->r[1] + 0x00000054u;
|
|
/* 023A0794 */ cpu->r[29] = rbrew_read32(cpu->mem, _t252);
|
|
/* 023A0798 */ _t253 = cpu->r[1] + 0x00000068u;
|
|
/* 023A0798 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t253);
|
|
/* 023A079C */ _t254 = cpu->r[1] + 0x00000058u;
|
|
/* 023A079C */ cpu->r[30] = rbrew_read32(cpu->mem, _t254);
|
|
/* 023A07A0 */ _t255 = cpu->r[1] + 0x00000060u;
|
|
/* 023A07A0 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t255);
|
|
/* 023A07A4 */ _t256 = cpu->r[1] + 0x0000005Cu;
|
|
/* 023A07A4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t256);
|
|
/* 023A07A8 */ _t257 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 023A07A8 */ _t258 = _t257 & 0x00000001u;
|
|
/* 023A07A8 */ if (_t258) goto L_023A07AC; // else: addr-0 trap, fall-through
|
|
L_023A07AC: ; // 0x23a07ac
|
|
/* 023A07AC */ _t259 = cpu->r[1] + 0x00000074u;
|
|
/* 023A07AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t259);
|
|
/* 023A07B0 */ cpu->lr = cpu->r[0];
|
|
/* 023A07B4 */ cpu->r[1] = cpu->r[1] + 0x00000070u;
|
|
/* 023A07B8 */ return;
|
|
}
|
|
|
|
// fn_023A029C @ 0x23a029c
|
|
void Gambit_fn_023A029C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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;
|
|
|
|
L_023A029C: ; // 0x23a029c
|
|
/* 023A029C */ _t0 = cpu->r[1] + 0xFFFFFF90u;
|
|
/* 023A029C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 023A029C */ cpu->r[1] = _t0;
|
|
/* 023A02A0 */ _t1 = cpu->r[1] + 0x00000060u;
|
|
/* 023A02A0 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 023A02A4 */ /* nop */
|
|
/* 023A02A8 */ _t2 = cpu->r[1] + 0x00000054u;
|
|
/* 023A02A8 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 023A02AC */ _t3 = cpu->r[1] + 0x00000068u;
|
|
/* 023A02AC */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 023A02B0 */ _t4 = cpu->r[1] + 0x00000058u;
|
|
/* 023A02B0 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 023A02B4 */ _t5 = cpu->r[1] + 0x0000005Cu;
|
|
/* 023A02B4 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 023A02B8 */ _t6 = cpu->r[1] + 0x00000074u;
|
|
/* 023A02B8 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 023A02BC */ cpu->r[29] = cpu->r[3];
|
|
/* 023A02C0 */ _t7 = cpu->r[29] + 0x00000160u;
|
|
/* 023A02C0 */ cpu->r[12] = rbrew_read8(cpu->mem, _t7);
|
|
/* 023A02C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 023A02C8 */ cpu->r[30] = 0x00000000u;
|
|
/* 023A02CC */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A02CC */ _t9 = _t8 & 0x00000001u;
|
|
/* 023A02CC */ if (_t9) goto L_023A02D0; else goto L_023A02DC;
|
|
L_023A02D0: ; // 0x23a02d0
|
|
/* 023A02D0 */ _t10 = cpu->r[29] + 0x00000180u;
|
|
/* 023A02D0 */ cpu->r[9] = rbrew_read8(cpu->mem, _t10);
|
|
/* 023A02D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 023A02D8 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A02D8 */ _t12 = _t11 & 0x00000001u;
|
|
/* 023A02D8 */ if (_t12) goto L_023A02F0; else goto L_023A02DC;
|
|
L_023A02DC: ; // 0x23a02dc
|
|
/* 023A02DC */ cpu->r[3] = cpu->r[29];
|
|
/* 023A02E0 */ Gambit_fn_0239F234(cpu);
|
|
/* 023A02E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023A02E8 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A02E8 */ _t14 = _t13 & 0x00000001u;
|
|
/* 023A02E8 */ if (_t14) goto L_023A02F0; else goto L_023A02EC;
|
|
L_023A02EC: ; // 0x23a02ec
|
|
/* 023A02EC */ cpu->r[30] = 0x00000001u;
|
|
L_023A02F0: ; // 0x23a02f0
|
|
/* 023A02F0 */ _t15 = cpu->r[29] + 0x0000018Cu;
|
|
/* 023A02F0 */ cpu->r[11] = rbrew_read8(cpu->mem, _t15);
|
|
/* 023A02F4 */ cpu->r[30] = rbrew_rlwinm(cpu->r[30], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 023A02F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 023A02FC */ cpu->r[31] = 0x00000000u;
|
|
/* 023A0300 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0300 */ _t17 = _t16 & 0x00000001u;
|
|
/* 023A0300 */ if (_t17) goto L_023A0304; else goto L_023A0310;
|
|
L_023A0304: ; // 0x23a0304
|
|
/* 023A0304 */ _t18 = cpu->r[29] + 0x0000019Du;
|
|
/* 023A0304 */ cpu->r[0] = rbrew_read8(cpu->mem, _t18);
|
|
/* 023A0308 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 023A030C */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A030C */ _t20 = _t19 & 0x00000001u;
|
|
/* 023A030C */ if (_t20) goto L_023A0330; else goto L_023A0310;
|
|
L_023A0310: ; // 0x23a0310
|
|
/* 023A0310 */ cpu->r[3] = cpu->r[29];
|
|
/* 023A0314 */ Gambit_fn_0239F1EC(cpu);
|
|
/* 023A0318 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023A031C */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A031C */ _t22 = _t21 & 0x00000001u;
|
|
/* 023A031C */ if (_t22) goto L_023A0330; else goto L_023A0320;
|
|
L_023A0320: ; // 0x23a0320
|
|
/* 023A0320 */ _t23 = cpu->r[29] + 0x0000019Cu;
|
|
/* 023A0320 */ cpu->r[9] = rbrew_read8(cpu->mem, _t23);
|
|
/* 023A0324 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 023A0328 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0328 */ _t25 = _t24 & 0x00000001u;
|
|
/* 023A0328 */ if (_t25) goto L_023A0330; else goto L_023A032C;
|
|
L_023A032C: ; // 0x23a032c
|
|
/* 023A032C */ cpu->r[31] = 0x00000001u;
|
|
L_023A0330: ; // 0x23a0330
|
|
/* 023A0330 */ cpu->r[31] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 023A0334 */ _t26 = cpu->r[29] + 0x00000160u;
|
|
/* 023A0334 */ cpu->r[12] = rbrew_read8(cpu->mem, _t26);
|
|
/* 023A0338 */ cpu->r[11] = cpu->r[30] | cpu->r[31];
|
|
/* 023A0338 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 023A033C */ cpu->r[30] = 0x00000001u;
|
|
/* 023A0340 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0340 */ _t28 = _t27 & 0x00000001u;
|
|
/* 023A0340 */ if (_t28) goto L_023A0344; else goto L_023A0348;
|
|
L_023A0344: ; // 0x23a0344
|
|
/* 023A0344 */ cpu->r[30] = cpu->r[31];
|
|
L_023A0348: ; // 0x23a0348
|
|
/* 023A0348 */ cpu->r[30] = rbrew_rlwinm(cpu->r[30], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 023A034C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 023A0350 */ cpu->r[0] = 0x00000001u;
|
|
/* 023A0354 */ _t29 = cpu->r[29] + 0x00000128u;
|
|
/* 023A0354 */ cpu->r[9] = rbrew_read8(cpu->mem, _t29);
|
|
/* 023A0358 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0358 */ _t31 = _t30 & 0x00000001u;
|
|
/* 023A0358 */ if (_t31) goto L_023A035C; else goto L_023A036C;
|
|
L_023A035C: ; // 0x23a035c
|
|
/* 023A035C */ _t32 = cpu->r[29] + 0x0000018Cu;
|
|
/* 023A035C */ cpu->r[7] = rbrew_read8(cpu->mem, _t32);
|
|
/* 023A0360 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 023A0364 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0364 */ _t34 = _t33 & 0x00000001u;
|
|
/* 023A0364 */ if (_t34) goto L_023A0368; else goto L_023A036C;
|
|
L_023A0368: ; // 0x23a0368
|
|
/* 023A0368 */ cpu->r[0] = 0x00000000u;
|
|
L_023A036C: ; // 0x23a036c
|
|
/* 023A036C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 023A0370 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 023A0374 */ _t35 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0374 */ _t36 = _t35 & 0x00000001u;
|
|
/* 023A0374 */ if (_t36) goto L_023A037C; else goto L_023A0378;
|
|
L_023A0378: ; // 0x23a0378
|
|
/* 023A0378 */ cpu->r[0] = 0x00000000u;
|
|
L_023A037C: ; // 0x23a037c
|
|
/* 023A037C */ _t37 = cpu->r[29] + 0x000002D4u;
|
|
/* 023A037C */ cpu->r[11] = rbrew_read8(cpu->mem, _t37);
|
|
/* 023A0380 */ cpu->r[10] = 0x10080000u;
|
|
/* 023A0384 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 023A0388 */ _t38 = cpu->r[10] + 0x00007050u;
|
|
/* 023A0388 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 023A038C */ _t39 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A038C */ _t40 = _t39 & 0x00000001u;
|
|
/* 023A038C */ if (_t40) goto L_023A0390; else goto L_023A05A4;
|
|
L_023A0390: ; // 0x23a0390
|
|
/* 023A0390 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 023A0394 */ _t41 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0394 */ _t42 = _t41 & 0x00000001u;
|
|
/* 023A0394 */ if (_t42) goto L_023A05A4; else goto L_023A0398;
|
|
L_023A0398: ; // 0x23a0398
|
|
/* 023A0398 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 023A039C */ _t43 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A039C */ _t44 = _t43 & 0x00000001u;
|
|
/* 023A039C */ if (_t44) goto L_023A03C4; else goto L_023A03A0;
|
|
L_023A03A0: ; // 0x23a03a0
|
|
/* 023A03A0 */ _t45 = cpu->r[29] + 0x00000174u;
|
|
/* 023A03A0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t45);
|
|
/* 023A03A4 */ _t46 = cpu->r[1] + 0x0000002Cu;
|
|
/* 023A03A4 */ rbrew_write32(cpu->mem, _t46, cpu->r[8]);
|
|
/* 023A03A8 */ _t47 = cpu->r[29] + 0x00000178u;
|
|
/* 023A03A8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t47);
|
|
/* 023A03AC */ _t48 = cpu->r[1] + 0x00000030u;
|
|
/* 023A03AC */ rbrew_write32(cpu->mem, _t48, cpu->r[9]);
|
|
/* 023A03B0 */ _t49 = cpu->r[29] + 0x0000017Cu;
|
|
/* 023A03B0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t49);
|
|
/* 023A03B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 023A03B8 */ _t50 = cpu->r[1] + 0x00000034u;
|
|
/* 023A03B8 */ rbrew_write32(cpu->mem, _t50, cpu->r[11]);
|
|
/* 023A03BC */ _t51 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A03BC */ _t52 = _t51 & 0x00000001u;
|
|
/* 023A03BC */ if (_t52) goto L_023A04C4; else goto L_023A03C0;
|
|
L_023A03C0: ; // 0x23a03c0
|
|
/* 023A03C0 */ goto L_023A03E4;
|
|
L_023A03C4: ; // 0x23a03c4
|
|
/* 023A03C4 */ _t53 = cpu->r[29] + 0x00000190u;
|
|
/* 023A03C4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t53);
|
|
/* 023A03C8 */ _t54 = cpu->r[1] + 0x0000002Cu;
|
|
/* 023A03C8 */ rbrew_write32(cpu->mem, _t54, cpu->r[8]);
|
|
/* 023A03CC */ _t55 = cpu->r[29] + 0x00000194u;
|
|
/* 023A03CC */ cpu->r[9] = rbrew_read32(cpu->mem, _t55);
|
|
/* 023A03D0 */ _t56 = cpu->r[1] + 0x00000030u;
|
|
/* 023A03D0 */ rbrew_write32(cpu->mem, _t56, cpu->r[9]);
|
|
/* 023A03D4 */ _t57 = cpu->r[29] + 0x00000198u;
|
|
/* 023A03D4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t57);
|
|
/* 023A03D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 023A03DC */ _t58 = cpu->r[1] + 0x00000034u;
|
|
/* 023A03DC */ rbrew_write32(cpu->mem, _t58, cpu->r[11]);
|
|
/* 023A03E0 */ _t59 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A03E0 */ _t60 = _t59 & 0x00000001u;
|
|
/* 023A03E0 */ if (_t60) goto L_023A04C4; else goto L_023A03E4;
|
|
L_023A03E4: ; // 0x23a03e4
|
|
/* 023A03E4 */ _t61 = cpu->r[29] + 0x000002A8u;
|
|
/* 023A03E4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t61);
|
|
/* 023A03E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 023A03EC */ _t62 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A03EC */ _t63 = _t62 & 0x00000001u;
|
|
/* 023A03EC */ if (_t63) goto L_023A0400; else goto L_023A03F0;
|
|
L_023A03F0: ; // 0x23a03f0
|
|
/* 023A03F0 */ _t64 = cpu->r[29] + 0x000002ACu;
|
|
/* 023A03F0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t64);
|
|
/* 023A03F4 */ _t65 = cpu->r[31] + 0x0000000Cu;
|
|
/* 023A03F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t65);
|
|
/* 023A03F8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]);
|
|
/* 023A03FC */ _t66 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A03FC */ _t67 = _t66 & 0x00000001u;
|
|
/* 023A03FC */ if (_t67) goto L_023A0428; else goto L_023A0400;
|
|
L_023A0400: ; // 0x23a0400
|
|
/* 023A0400 */ cpu->r[5] = 0x10080000u;
|
|
/* 023A0404 */ _t68 = cpu->r[29] + 0x00000030u;
|
|
/* 023A0404 */ cpu->r[3] = rbrew_read32(cpu->mem, _t68);
|
|
/* 023A0408 */ cpu->r[4] = cpu->r[29] + 0x000002A8u;
|
|
/* 023A040C */ cpu->r[5] = cpu->r[5] + 0x00007164u;
|
|
/* 023A0410 */ cpu->r[6] = 0x00000000u;
|
|
/* 023A0414 */ Gambit_fn_027B72F0(cpu);
|
|
/* 023A0418 */ _t69 = cpu->r[29] + 0x000002A8u;
|
|
/* 023A0418 */ cpu->r[31] = rbrew_read32(cpu->mem, _t69);
|
|
/* 023A041C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 023A0420 */ _t70 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0420 */ _t71 = _t70 & 0x00000001u;
|
|
/* 023A0420 */ if (_t71) goto L_023A047C; else goto L_023A0424;
|
|
L_023A0424: ; // 0x23a0424
|
|
/* 023A0424 */ _t72 = cpu->r[29] + 0x000002ACu;
|
|
/* 023A0424 */ cpu->r[7] = rbrew_read32(cpu->mem, _t72);
|
|
L_023A0428: ; // 0x23a0428
|
|
/* 023A0428 */ _t73 = cpu->r[31] + 0x0000000Cu;
|
|
/* 023A0428 */ cpu->r[0] = rbrew_read32(cpu->mem, _t73);
|
|
/* 023A042C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]);
|
|
/* 023A0430 */ _t74 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0430 */ _t75 = _t74 & 0x00000001u;
|
|
/* 023A0430 */ if (_t75) goto L_023A0434; else goto L_023A047C;
|
|
L_023A0434: ; // 0x23a0434
|
|
/* 023A0434 */ _t76 = cpu->r[1] + 0x00000010u;
|
|
/* 023A0434 */ rbrew_write_f32(cpu->mem, _t76, cpu->f[31]);
|
|
/* 023A0438 */ _t77 = cpu->r[1] + 0x00000008u;
|
|
/* 023A0438 */ rbrew_write_f32(cpu->mem, _t77, cpu->f[31]);
|
|
/* 023A043C */ _t78 = cpu->r[1] + 0x0000002Cu;
|
|
/* 023A043C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t78);
|
|
/* 023A0440 */ _t79 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023A0440 */ rbrew_write_f32(cpu->mem, _t79, cpu->f[31]);
|
|
/* 023A0444 */ _t80 = cpu->r[31] + 0x00000064u;
|
|
/* 023A0444 */ rbrew_write_f32(cpu->mem, _t80, cpu->f[0]);
|
|
/* 023A0448 */ _t81 = cpu->r[1] + 0x00000030u;
|
|
/* 023A0448 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t81);
|
|
/* 023A044C */ _t82 = cpu->r[31] + 0x00000068u;
|
|
/* 023A044C */ rbrew_write_f32(cpu->mem, _t82, cpu->f[0]);
|
|
/* 023A0450 */ _t83 = cpu->r[1] + 0x00000034u;
|
|
/* 023A0450 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t83);
|
|
/* 023A0454 */ _t84 = cpu->r[31] + 0x0000006Cu;
|
|
/* 023A0454 */ rbrew_write_f32(cpu->mem, _t84, cpu->f[0]);
|
|
/* 023A0458 */ _t85 = cpu->r[1] + 0x00000008u;
|
|
/* 023A0458 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t85);
|
|
/* 023A045C */ _t86 = cpu->r[31] + 0x0000012Cu;
|
|
/* 023A045C */ cpu->r[8] = rbrew_read32(cpu->mem, _t86);
|
|
/* 023A0460 */ _t87 = cpu->r[31] + 0x00000070u;
|
|
/* 023A0460 */ rbrew_write_f32(cpu->mem, _t87, cpu->f[0]);
|
|
/* 023A0464 */ _t88 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023A0464 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t88);
|
|
/* 023A0468 */ cpu->r[8] = cpu->r[8] | 0x00000004u;
|
|
/* 023A046C */ _t89 = cpu->r[31] + 0x00000074u;
|
|
/* 023A046C */ rbrew_write_f32(cpu->mem, _t89, cpu->f[0]);
|
|
/* 023A0470 */ _t90 = cpu->r[1] + 0x00000010u;
|
|
/* 023A0470 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t90);
|
|
/* 023A0474 */ _t91 = cpu->r[31] + 0x0000012Cu;
|
|
/* 023A0474 */ rbrew_write32(cpu->mem, _t91, cpu->r[8]);
|
|
/* 023A0478 */ _t92 = cpu->r[31] + 0x00000078u;
|
|
/* 023A0478 */ rbrew_write_f32(cpu->mem, _t92, cpu->f[0]);
|
|
L_023A047C: ; // 0x23a047c
|
|
/* 023A047C */ _t93 = cpu->r[29] + 0x000002B4u;
|
|
/* 023A047C */ cpu->r[31] = rbrew_read32(cpu->mem, _t93);
|
|
/* 023A0480 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 023A0484 */ _t94 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0484 */ _t95 = _t94 & 0x00000001u;
|
|
/* 023A0484 */ if (_t95) goto L_023A062C; else goto L_023A0488;
|
|
L_023A0488: ; // 0x23a0488
|
|
/* 023A0488 */ _t96 = cpu->r[31] + 0x0000000Cu;
|
|
/* 023A0488 */ cpu->r[9] = rbrew_read32(cpu->mem, _t96);
|
|
/* 023A048C */ _t97 = cpu->r[29] + 0x000002B8u;
|
|
/* 023A048C */ cpu->r[10] = rbrew_read32(cpu->mem, _t97);
|
|
/* 023A0490 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[10]);
|
|
/* 023A0494 */ _t98 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0494 */ _t99 = _t98 & 0x00000001u;
|
|
/* 023A0494 */ if (_t99) goto L_023A0498; else goto L_023A062C;
|
|
L_023A0498: ; // 0x23a0498
|
|
/* 023A0498 */ _t100 = cpu->r[31] + 0x00000028u;
|
|
/* 023A0498 */ cpu->r[3] = rbrew_read32(cpu->mem, _t100);
|
|
/* 023A049C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023A04A0 */ _t101 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A04A0 */ _t102 = _t101 & 0x00000001u;
|
|
/* 023A04A0 */ if (_t102) goto L_023A04B8; else goto L_023A04A4;
|
|
L_023A04A4: ; // 0x23a04a4
|
|
/* 023A04A4 */ _t103 = cpu->r[3] + 0x00000050u;
|
|
/* 023A04A4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t103);
|
|
/* 023A04A8 */ _t104 = cpu->r[11] + 0x00000024u;
|
|
/* 023A04A8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t104);
|
|
/* 023A04AC */ cpu->ctr = cpu->r[12];
|
|
/* 023A04B0 */ cpu->r[4] = 0xFFFFFFFFu;
|
|
/* 023A04B4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_023A04B8: ; // 0x23a04b8
|
|
/* 023A04B8 */ cpu->r[8] = 0x00000001u;
|
|
/* 023A04BC */ _t105 = cpu->r[31] + 0x0000004Cu;
|
|
/* 023A04BC */ rbrew_write8(cpu->mem, _t105, (uint8_t)cpu->r[8]);
|
|
/* 023A04C0 */ goto L_023A062C;
|
|
L_023A04C4: ; // 0x23a04c4
|
|
/* 023A04C4 */ _t106 = cpu->r[29] + 0x000002B4u;
|
|
/* 023A04C4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t106);
|
|
/* 023A04C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 023A04CC */ _t107 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A04CC */ _t108 = _t107 & 0x00000001u;
|
|
/* 023A04CC */ if (_t108) goto L_023A04E0; else goto L_023A04D0;
|
|
L_023A04D0: ; // 0x23a04d0
|
|
/* 023A04D0 */ _t109 = cpu->r[29] + 0x000002B8u;
|
|
/* 023A04D0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t109);
|
|
/* 023A04D4 */ _t110 = cpu->r[31] + 0x0000000Cu;
|
|
/* 023A04D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t110);
|
|
/* 023A04D8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[9]);
|
|
/* 023A04DC */ _t111 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A04DC */ _t112 = _t111 & 0x00000001u;
|
|
/* 023A04DC */ if (_t112) goto L_023A0508; else goto L_023A04E0;
|
|
L_023A04E0: ; // 0x23a04e0
|
|
/* 023A04E0 */ cpu->r[5] = 0x10080000u;
|
|
/* 023A04E4 */ _t113 = cpu->r[29] + 0x00000030u;
|
|
/* 023A04E4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t113);
|
|
/* 023A04E8 */ cpu->r[4] = cpu->r[29] + 0x000002B4u;
|
|
/* 023A04EC */ cpu->r[5] = cpu->r[5] + 0x00007154u;
|
|
/* 023A04F0 */ cpu->r[6] = 0x00000000u;
|
|
/* 023A04F4 */ Gambit_fn_027B72F0(cpu);
|
|
/* 023A04F8 */ _t114 = cpu->r[29] + 0x000002B4u;
|
|
/* 023A04F8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t114);
|
|
/* 023A04FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 023A0500 */ _t115 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0500 */ _t116 = _t115 & 0x00000001u;
|
|
/* 023A0500 */ if (_t116) goto L_023A055C; else goto L_023A0504;
|
|
L_023A0504: ; // 0x23a0504
|
|
/* 023A0504 */ _t117 = cpu->r[29] + 0x000002B8u;
|
|
/* 023A0504 */ cpu->r[9] = rbrew_read32(cpu->mem, _t117);
|
|
L_023A0508: ; // 0x23a0508
|
|
/* 023A0508 */ _t118 = cpu->r[31] + 0x0000000Cu;
|
|
/* 023A0508 */ cpu->r[7] = rbrew_read32(cpu->mem, _t118);
|
|
/* 023A050C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[9]);
|
|
/* 023A0510 */ _t119 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0510 */ _t120 = _t119 & 0x00000001u;
|
|
/* 023A0510 */ if (_t120) goto L_023A0514; else goto L_023A055C;
|
|
L_023A0514: ; // 0x23a0514
|
|
/* 023A0514 */ _t121 = cpu->r[1] + 0x0000001Cu;
|
|
/* 023A0514 */ rbrew_write_f32(cpu->mem, _t121, cpu->f[31]);
|
|
/* 023A0518 */ _t122 = cpu->r[1] + 0x00000014u;
|
|
/* 023A0518 */ rbrew_write_f32(cpu->mem, _t122, cpu->f[31]);
|
|
/* 023A051C */ _t123 = cpu->r[1] + 0x0000002Cu;
|
|
/* 023A051C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t123);
|
|
/* 023A0520 */ _t124 = cpu->r[1] + 0x00000018u;
|
|
/* 023A0520 */ rbrew_write_f32(cpu->mem, _t124, cpu->f[31]);
|
|
/* 023A0524 */ _t125 = cpu->r[31] + 0x00000064u;
|
|
/* 023A0524 */ rbrew_write_f32(cpu->mem, _t125, cpu->f[0]);
|
|
/* 023A0528 */ _t126 = cpu->r[1] + 0x00000030u;
|
|
/* 023A0528 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t126);
|
|
/* 023A052C */ _t127 = cpu->r[31] + 0x00000068u;
|
|
/* 023A052C */ rbrew_write_f32(cpu->mem, _t127, cpu->f[0]);
|
|
/* 023A0530 */ _t128 = cpu->r[1] + 0x00000034u;
|
|
/* 023A0530 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t128);
|
|
/* 023A0534 */ _t129 = cpu->r[31] + 0x0000006Cu;
|
|
/* 023A0534 */ rbrew_write_f32(cpu->mem, _t129, cpu->f[0]);
|
|
/* 023A0538 */ _t130 = cpu->r[1] + 0x00000014u;
|
|
/* 023A0538 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t130);
|
|
/* 023A053C */ _t131 = cpu->r[31] + 0x0000012Cu;
|
|
/* 023A053C */ cpu->r[8] = rbrew_read32(cpu->mem, _t131);
|
|
/* 023A0540 */ _t132 = cpu->r[31] + 0x00000070u;
|
|
/* 023A0540 */ rbrew_write_f32(cpu->mem, _t132, cpu->f[0]);
|
|
/* 023A0544 */ _t133 = cpu->r[1] + 0x00000018u;
|
|
/* 023A0544 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t133);
|
|
/* 023A0548 */ cpu->r[8] = cpu->r[8] | 0x00000004u;
|
|
/* 023A054C */ _t134 = cpu->r[31] + 0x00000074u;
|
|
/* 023A054C */ rbrew_write_f32(cpu->mem, _t134, cpu->f[0]);
|
|
/* 023A0550 */ _t135 = cpu->r[1] + 0x0000001Cu;
|
|
/* 023A0550 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t135);
|
|
/* 023A0554 */ _t136 = cpu->r[31] + 0x0000012Cu;
|
|
/* 023A0554 */ rbrew_write32(cpu->mem, _t136, cpu->r[8]);
|
|
/* 023A0558 */ _t137 = cpu->r[31] + 0x00000078u;
|
|
/* 023A0558 */ rbrew_write_f32(cpu->mem, _t137, cpu->f[0]);
|
|
L_023A055C: ; // 0x23a055c
|
|
/* 023A055C */ _t138 = cpu->r[29] + 0x000002A8u;
|
|
/* 023A055C */ cpu->r[31] = rbrew_read32(cpu->mem, _t138);
|
|
/* 023A0560 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 023A0564 */ _t139 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0564 */ _t140 = _t139 & 0x00000001u;
|
|
/* 023A0564 */ if (_t140) goto L_023A062C; else goto L_023A0568;
|
|
L_023A0568: ; // 0x23a0568
|
|
/* 023A0568 */ _t141 = cpu->r[31] + 0x0000000Cu;
|
|
/* 023A0568 */ cpu->r[9] = rbrew_read32(cpu->mem, _t141);
|
|
/* 023A056C */ _t142 = cpu->r[29] + 0x000002ACu;
|
|
/* 023A056C */ cpu->r[0] = rbrew_read32(cpu->mem, _t142);
|
|
/* 023A0570 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[0]);
|
|
/* 023A0574 */ _t143 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0574 */ _t144 = _t143 & 0x00000001u;
|
|
/* 023A0574 */ if (_t144) goto L_023A0578; else goto L_023A062C;
|
|
L_023A0578: ; // 0x23a0578
|
|
/* 023A0578 */ _t145 = cpu->r[31] + 0x00000028u;
|
|
/* 023A0578 */ cpu->r[3] = rbrew_read32(cpu->mem, _t145);
|
|
/* 023A057C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023A0580 */ _t146 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0580 */ _t147 = _t146 & 0x00000001u;
|
|
/* 023A0580 */ if (_t147) goto L_023A0598; else goto L_023A0584;
|
|
L_023A0584: ; // 0x23a0584
|
|
/* 023A0584 */ _t148 = cpu->r[3] + 0x00000050u;
|
|
/* 023A0584 */ cpu->r[12] = rbrew_read32(cpu->mem, _t148);
|
|
/* 023A0588 */ _t149 = cpu->r[12] + 0x00000024u;
|
|
/* 023A0588 */ cpu->r[8] = rbrew_read32(cpu->mem, _t149);
|
|
/* 023A058C */ cpu->ctr = cpu->r[8];
|
|
/* 023A0590 */ cpu->r[4] = 0xFFFFFFFFu;
|
|
/* 023A0594 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_023A0598: ; // 0x23a0598
|
|
/* 023A0598 */ cpu->r[8] = 0x00000001u;
|
|
/* 023A059C */ _t150 = cpu->r[31] + 0x0000004Cu;
|
|
/* 023A059C */ rbrew_write8(cpu->mem, _t150, (uint8_t)cpu->r[8]);
|
|
/* 023A05A0 */ goto L_023A062C;
|
|
L_023A05A4: ; // 0x23a05a4
|
|
/* 023A05A4 */ _t151 = cpu->r[29] + 0x000002A8u;
|
|
/* 023A05A4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t151);
|
|
/* 023A05A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 023A05AC */ _t152 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A05AC */ _t153 = _t152 & 0x00000001u;
|
|
/* 023A05AC */ if (_t153) goto L_023A05E8; else goto L_023A05B0;
|
|
L_023A05B0: ; // 0x23a05b0
|
|
/* 023A05B0 */ _t154 = cpu->r[31] + 0x0000000Cu;
|
|
/* 023A05B0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t154);
|
|
/* 023A05B4 */ _t155 = cpu->r[29] + 0x000002ACu;
|
|
/* 023A05B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t155);
|
|
/* 023A05B8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[0]);
|
|
/* 023A05BC */ _t156 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A05BC */ _t157 = _t156 & 0x00000001u;
|
|
/* 023A05BC */ if (_t157) goto L_023A05C0; else goto L_023A05E8;
|
|
L_023A05C0: ; // 0x23a05c0
|
|
/* 023A05C0 */ _t158 = cpu->r[31] + 0x00000028u;
|
|
/* 023A05C0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t158);
|
|
/* 023A05C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023A05C8 */ _t159 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A05C8 */ _t160 = _t159 & 0x00000001u;
|
|
/* 023A05C8 */ if (_t160) goto L_023A05E0; else goto L_023A05CC;
|
|
L_023A05CC: ; // 0x23a05cc
|
|
/* 023A05CC */ _t161 = cpu->r[3] + 0x00000050u;
|
|
/* 023A05CC */ cpu->r[12] = rbrew_read32(cpu->mem, _t161);
|
|
/* 023A05D0 */ _t162 = cpu->r[12] + 0x00000024u;
|
|
/* 023A05D0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t162);
|
|
/* 023A05D4 */ cpu->ctr = cpu->r[7];
|
|
/* 023A05D8 */ cpu->r[4] = 0xFFFFFFFFu;
|
|
/* 023A05DC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_023A05E0: ; // 0x23a05e0
|
|
/* 023A05E0 */ cpu->r[8] = 0x00000001u;
|
|
/* 023A05E4 */ _t163 = cpu->r[31] + 0x0000004Cu;
|
|
/* 023A05E4 */ rbrew_write8(cpu->mem, _t163, (uint8_t)cpu->r[8]);
|
|
L_023A05E8: ; // 0x23a05e8
|
|
/* 023A05E8 */ _t164 = cpu->r[29] + 0x000002B4u;
|
|
/* 023A05E8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t164);
|
|
/* 023A05EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 023A05F0 */ _t165 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A05F0 */ _t166 = _t165 & 0x00000001u;
|
|
/* 023A05F0 */ if (_t166) goto L_023A062C; else goto L_023A05F4;
|
|
L_023A05F4: ; // 0x23a05f4
|
|
/* 023A05F4 */ _t167 = cpu->r[31] + 0x0000000Cu;
|
|
/* 023A05F4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t167);
|
|
/* 023A05F8 */ _t168 = cpu->r[29] + 0x000002B8u;
|
|
/* 023A05F8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t168);
|
|
/* 023A05FC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[10]);
|
|
/* 023A0600 */ _t169 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0600 */ _t170 = _t169 & 0x00000001u;
|
|
/* 023A0600 */ if (_t170) goto L_023A0604; else goto L_023A062C;
|
|
L_023A0604: ; // 0x23a0604
|
|
/* 023A0604 */ _t171 = cpu->r[31] + 0x00000028u;
|
|
/* 023A0604 */ cpu->r[3] = rbrew_read32(cpu->mem, _t171);
|
|
/* 023A0608 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023A060C */ _t172 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A060C */ _t173 = _t172 & 0x00000001u;
|
|
/* 023A060C */ if (_t173) goto L_023A0624; else goto L_023A0610;
|
|
L_023A0610: ; // 0x23a0610
|
|
/* 023A0610 */ _t174 = cpu->r[3] + 0x00000050u;
|
|
/* 023A0610 */ cpu->r[11] = rbrew_read32(cpu->mem, _t174);
|
|
/* 023A0614 */ _t175 = cpu->r[11] + 0x00000024u;
|
|
/* 023A0614 */ cpu->r[0] = rbrew_read32(cpu->mem, _t175);
|
|
/* 023A0618 */ cpu->ctr = cpu->r[0];
|
|
/* 023A061C */ cpu->r[4] = 0xFFFFFFFFu;
|
|
/* 023A0620 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_023A0624: ; // 0x23a0624
|
|
/* 023A0624 */ cpu->r[8] = 0x00000001u;
|
|
/* 023A0628 */ _t176 = cpu->r[31] + 0x0000004Cu;
|
|
/* 023A0628 */ rbrew_write8(cpu->mem, _t176, (uint8_t)cpu->r[8]);
|
|
L_023A062C: ; // 0x23a062c
|
|
/* 023A062C */ _t177 = cpu->r[29] + 0x00000180u;
|
|
/* 023A062C */ cpu->r[10] = rbrew_read8(cpu->mem, _t177);
|
|
/* 023A0630 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 023A0634 */ _t178 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0634 */ _t179 = _t178 & 0x00000001u;
|
|
/* 023A0634 */ if (_t179) goto L_023A0638; else goto L_023A0644;
|
|
L_023A0638: ; // 0x23a0638
|
|
/* 023A0638 */ _t180 = cpu->r[29] + 0x0000019Du;
|
|
/* 023A0638 */ cpu->r[11] = rbrew_read8(cpu->mem, _t180);
|
|
/* 023A063C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 023A0640 */ _t181 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0640 */ _t182 = _t181 & 0x00000001u;
|
|
/* 023A0640 */ if (_t182) goto L_023A0794; else goto L_023A0644;
|
|
L_023A0644: ; // 0x23a0644
|
|
/* 023A0644 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 023A0648 */ _t183 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0648 */ _t184 = _t183 & 0x00000001u;
|
|
/* 023A0648 */ if (_t184) goto L_023A0750; else goto L_023A064C;
|
|
L_023A064C: ; // 0x23a064c
|
|
/* 023A064C */ _t185 = cpu->r[29] + 0x00000030u;
|
|
/* 023A064C */ cpu->r[3] = rbrew_read32(cpu->mem, _t185);
|
|
/* 023A0650 */ cpu->r[6] = 0x00000000u;
|
|
/* 023A0654 */ cpu->r[7] = 0x10080000u;
|
|
/* 023A0658 */ _t186 = cpu->r[1] + 0x0000003Cu;
|
|
/* 023A0658 */ rbrew_write32(cpu->mem, _t186, cpu->r[6]);
|
|
/* 023A065C */ cpu->r[7] = cpu->r[7] + 0x00006FE4u;
|
|
/* 023A0660 */ cpu->r[5] = 0x10080000u;
|
|
/* 023A0664 */ _t187 = cpu->r[1] + 0x00000038u;
|
|
/* 023A0664 */ rbrew_write32(cpu->mem, _t187, cpu->r[6]);
|
|
/* 023A0668 */ cpu->r[4] = cpu->r[1] + 0x00000038u;
|
|
/* 023A066C */ cpu->r[5] = cpu->r[5] + 0x00007170u;
|
|
/* 023A0670 */ _t188 = cpu->r[1] + 0x00000040u;
|
|
/* 023A0670 */ rbrew_write32(cpu->mem, _t188, cpu->r[7]);
|
|
/* 023A0674 */ Gambit_fn_027B72F0(cpu);
|
|
/* 023A0678 */ _t189 = cpu->r[29] + 0x00000180u;
|
|
/* 023A0678 */ cpu->r[8] = rbrew_read8(cpu->mem, _t189);
|
|
/* 023A067C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 023A0680 */ _t190 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0680 */ _t191 = _t190 & 0x00000001u;
|
|
/* 023A0680 */ if (_t191) goto L_023A06AC; else goto L_023A0684;
|
|
L_023A0684: ; // 0x23a0684
|
|
/* 023A0684 */ _t192 = cpu->r[29] + 0x00000174u;
|
|
/* 023A0684 */ cpu->r[12] = rbrew_read32(cpu->mem, _t192);
|
|
/* 023A0688 */ _t193 = cpu->r[1] + 0x00000044u;
|
|
/* 023A0688 */ rbrew_write32(cpu->mem, _t193, cpu->r[12]);
|
|
/* 023A068C */ _t194 = cpu->r[29] + 0x00000178u;
|
|
/* 023A068C */ cpu->r[7] = rbrew_read32(cpu->mem, _t194);
|
|
/* 023A0690 */ _t195 = cpu->r[1] + 0x00000038u;
|
|
/* 023A0690 */ cpu->r[11] = rbrew_read32(cpu->mem, _t195);
|
|
/* 023A0694 */ _t196 = cpu->r[1] + 0x00000048u;
|
|
/* 023A0694 */ rbrew_write32(cpu->mem, _t196, cpu->r[7]);
|
|
/* 023A0698 */ _t197 = cpu->r[29] + 0x0000017Cu;
|
|
/* 023A0698 */ cpu->r[8] = rbrew_read32(cpu->mem, _t197);
|
|
/* 023A069C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 023A06A0 */ _t198 = cpu->r[1] + 0x0000004Cu;
|
|
/* 023A06A0 */ rbrew_write32(cpu->mem, _t198, cpu->r[8]);
|
|
/* 023A06A4 */ _t199 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A06A4 */ _t200 = _t199 & 0x00000001u;
|
|
/* 023A06A4 */ if (_t200) goto L_023A0794; else goto L_023A06A8;
|
|
L_023A06A8: ; // 0x23a06a8
|
|
/* 023A06A8 */ goto L_023A06D0;
|
|
L_023A06AC: ; // 0x23a06ac
|
|
/* 023A06AC */ _t201 = cpu->r[29] + 0x00000190u;
|
|
/* 023A06AC */ cpu->r[12] = rbrew_read32(cpu->mem, _t201);
|
|
/* 023A06B0 */ _t202 = cpu->r[1] + 0x00000044u;
|
|
/* 023A06B0 */ rbrew_write32(cpu->mem, _t202, cpu->r[12]);
|
|
/* 023A06B4 */ _t203 = cpu->r[29] + 0x00000194u;
|
|
/* 023A06B4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t203);
|
|
/* 023A06B8 */ _t204 = cpu->r[1] + 0x00000038u;
|
|
/* 023A06B8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t204);
|
|
/* 023A06BC */ _t205 = cpu->r[1] + 0x00000048u;
|
|
/* 023A06BC */ rbrew_write32(cpu->mem, _t205, cpu->r[7]);
|
|
/* 023A06C0 */ _t206 = cpu->r[29] + 0x00000198u;
|
|
/* 023A06C0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t206);
|
|
/* 023A06C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 023A06C8 */ _t207 = cpu->r[1] + 0x0000004Cu;
|
|
/* 023A06C8 */ rbrew_write32(cpu->mem, _t207, cpu->r[8]);
|
|
/* 023A06CC */ _t208 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A06CC */ _t209 = _t208 & 0x00000001u;
|
|
/* 023A06CC */ if (_t209) goto L_023A0794; else goto L_023A06D0;
|
|
L_023A06D0: ; // 0x23a06d0
|
|
/* 023A06D0 */ _t210 = cpu->r[11] + 0x0000000Cu;
|
|
/* 023A06D0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t210);
|
|
/* 023A06D4 */ _t211 = cpu->r[1] + 0x0000003Cu;
|
|
/* 023A06D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t211);
|
|
/* 023A06D8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[0]);
|
|
/* 023A06DC */ _t212 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A06DC */ _t213 = _t212 & 0x00000001u;
|
|
/* 023A06DC */ if (_t213) goto L_023A06E0; else goto L_023A0794;
|
|
L_023A06E0: ; // 0x23a06e0
|
|
/* 023A06E0 */ _t214 = cpu->r[1] + 0x00000028u;
|
|
/* 023A06E0 */ rbrew_write_f32(cpu->mem, _t214, cpu->f[31]);
|
|
/* 023A06E4 */ _t215 = cpu->r[1] + 0x00000020u;
|
|
/* 023A06E4 */ rbrew_write_f32(cpu->mem, _t215, cpu->f[31]);
|
|
/* 023A06E8 */ _t216 = cpu->r[1] + 0x00000044u;
|
|
/* 023A06E8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t216);
|
|
/* 023A06EC */ _t217 = cpu->r[1] + 0x00000024u;
|
|
/* 023A06EC */ rbrew_write_f32(cpu->mem, _t217, cpu->f[31]);
|
|
/* 023A06F0 */ _t218 = cpu->r[11] + 0x00000064u;
|
|
/* 023A06F0 */ rbrew_write_f32(cpu->mem, _t218, cpu->f[0]);
|
|
/* 023A06F4 */ _t219 = cpu->r[1] + 0x00000048u;
|
|
/* 023A06F4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t219);
|
|
/* 023A06F8 */ _t220 = cpu->r[11] + 0x00000068u;
|
|
/* 023A06F8 */ rbrew_write_f32(cpu->mem, _t220, cpu->f[0]);
|
|
/* 023A06FC */ _t221 = cpu->r[1] + 0x0000004Cu;
|
|
/* 023A06FC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t221);
|
|
/* 023A0700 */ _t222 = cpu->r[11] + 0x0000006Cu;
|
|
/* 023A0700 */ rbrew_write_f32(cpu->mem, _t222, cpu->f[0]);
|
|
/* 023A0704 */ _t223 = cpu->r[1] + 0x00000020u;
|
|
/* 023A0704 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t223);
|
|
/* 023A0708 */ _t224 = cpu->r[11] + 0x0000012Cu;
|
|
/* 023A0708 */ cpu->r[10] = rbrew_read32(cpu->mem, _t224);
|
|
/* 023A070C */ _t225 = cpu->r[11] + 0x00000070u;
|
|
/* 023A070C */ rbrew_write_f32(cpu->mem, _t225, cpu->f[0]);
|
|
/* 023A0710 */ _t226 = cpu->r[1] + 0x00000024u;
|
|
/* 023A0710 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t226);
|
|
/* 023A0714 */ cpu->r[10] = cpu->r[10] | 0x00000004u;
|
|
/* 023A0718 */ _t227 = cpu->r[11] + 0x00000074u;
|
|
/* 023A0718 */ rbrew_write_f32(cpu->mem, _t227, cpu->f[0]);
|
|
/* 023A071C */ _t228 = cpu->r[1] + 0x00000028u;
|
|
/* 023A071C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t228);
|
|
/* 023A0720 */ _t229 = cpu->r[11] + 0x0000012Cu;
|
|
/* 023A0720 */ rbrew_write32(cpu->mem, _t229, cpu->r[10]);
|
|
/* 023A0724 */ _t230 = cpu->r[11] + 0x00000078u;
|
|
/* 023A0724 */ rbrew_write_f32(cpu->mem, _t230, cpu->f[0]);
|
|
/* 023A0728 */ _t231 = cpu->r[1] + 0x00000054u;
|
|
/* 023A0728 */ cpu->r[29] = rbrew_read32(cpu->mem, _t231);
|
|
/* 023A072C */ _t232 = cpu->r[1] + 0x00000068u;
|
|
/* 023A072C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t232);
|
|
/* 023A0730 */ _t233 = cpu->r[1] + 0x00000058u;
|
|
/* 023A0730 */ cpu->r[30] = rbrew_read32(cpu->mem, _t233);
|
|
/* 023A0734 */ _t234 = cpu->r[1] + 0x00000060u;
|
|
/* 023A0734 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t234);
|
|
/* 023A0738 */ _t235 = cpu->r[1] + 0x0000005Cu;
|
|
/* 023A0738 */ cpu->r[31] = rbrew_read32(cpu->mem, _t235);
|
|
/* 023A073C */ _t236 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 023A073C */ _t237 = _t236 & 0x00000001u;
|
|
/* 023A073C */ if (_t237) goto L_023A0740; // else: addr-0 trap, fall-through
|
|
L_023A0740: ; // 0x23a0740
|
|
/* 023A0740 */ _t238 = cpu->r[1] + 0x00000074u;
|
|
/* 023A0740 */ cpu->r[0] = rbrew_read32(cpu->mem, _t238);
|
|
/* 023A0744 */ cpu->lr = cpu->r[0];
|
|
/* 023A0748 */ cpu->r[1] = cpu->r[1] + 0x00000070u;
|
|
/* 023A074C */ return;
|
|
L_023A0750: ; // 0x23a0750
|
|
/* 023A0750 */ _t239 = cpu->r[29] + 0x000002B4u;
|
|
/* 023A0750 */ cpu->r[31] = rbrew_read32(cpu->mem, _t239);
|
|
/* 023A0754 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 023A0758 */ _t240 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0758 */ _t241 = _t240 & 0x00000001u;
|
|
/* 023A0758 */ if (_t241) goto L_023A0794; else goto L_023A075C;
|
|
L_023A075C: ; // 0x23a075c
|
|
/* 023A075C */ _t242 = cpu->r[31] + 0x0000000Cu;
|
|
/* 023A075C */ cpu->r[12] = rbrew_read32(cpu->mem, _t242);
|
|
/* 023A0760 */ _t243 = cpu->r[29] + 0x000002B8u;
|
|
/* 023A0760 */ cpu->r[7] = rbrew_read32(cpu->mem, _t243);
|
|
/* 023A0764 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[7]);
|
|
/* 023A0768 */ _t244 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0768 */ _t245 = _t244 & 0x00000001u;
|
|
/* 023A0768 */ if (_t245) goto L_023A076C; else goto L_023A0794;
|
|
L_023A076C: ; // 0x23a076c
|
|
/* 023A076C */ _t246 = cpu->r[31] + 0x00000028u;
|
|
/* 023A076C */ cpu->r[3] = rbrew_read32(cpu->mem, _t246);
|
|
/* 023A0770 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023A0774 */ _t247 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0774 */ _t248 = _t247 & 0x00000001u;
|
|
/* 023A0774 */ if (_t248) goto L_023A078C; else goto L_023A0778;
|
|
L_023A0778: ; // 0x23a0778
|
|
/* 023A0778 */ _t249 = cpu->r[3] + 0x00000050u;
|
|
/* 023A0778 */ cpu->r[9] = rbrew_read32(cpu->mem, _t249);
|
|
/* 023A077C */ _t250 = cpu->r[9] + 0x00000024u;
|
|
/* 023A077C */ cpu->r[10] = rbrew_read32(cpu->mem, _t250);
|
|
/* 023A0780 */ cpu->ctr = cpu->r[10];
|
|
/* 023A0784 */ cpu->r[4] = 0xFFFFFFFFu;
|
|
/* 023A0788 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_023A078C: ; // 0x23a078c
|
|
/* 023A078C */ cpu->r[12] = 0x00000001u;
|
|
/* 023A0790 */ _t251 = cpu->r[31] + 0x0000004Cu;
|
|
/* 023A0790 */ rbrew_write8(cpu->mem, _t251, (uint8_t)cpu->r[12]);
|
|
L_023A0794: ; // 0x23a0794
|
|
/* 023A0794 */ _t252 = cpu->r[1] + 0x00000054u;
|
|
/* 023A0794 */ cpu->r[29] = rbrew_read32(cpu->mem, _t252);
|
|
/* 023A0798 */ _t253 = cpu->r[1] + 0x00000068u;
|
|
/* 023A0798 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t253);
|
|
/* 023A079C */ _t254 = cpu->r[1] + 0x00000058u;
|
|
/* 023A079C */ cpu->r[30] = rbrew_read32(cpu->mem, _t254);
|
|
/* 023A07A0 */ _t255 = cpu->r[1] + 0x00000060u;
|
|
/* 023A07A0 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t255);
|
|
/* 023A07A4 */ _t256 = cpu->r[1] + 0x0000005Cu;
|
|
/* 023A07A4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t256);
|
|
/* 023A07A8 */ _t257 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 023A07A8 */ _t258 = _t257 & 0x00000001u;
|
|
/* 023A07A8 */ if (_t258) goto L_023A07AC; // else: addr-0 trap, fall-through
|
|
L_023A07AC: ; // 0x23a07ac
|
|
/* 023A07AC */ _t259 = cpu->r[1] + 0x00000074u;
|
|
/* 023A07AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t259);
|
|
/* 023A07B0 */ cpu->lr = cpu->r[0];
|
|
/* 023A07B4 */ cpu->r[1] = cpu->r[1] + 0x00000070u;
|
|
/* 023A07B8 */ return;
|
|
}
|
|
|
|
// fn_023A07BC @ 0x23a07bc
|
|
void Gambit_fn_023A07BC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_023A07BC: ; // 0x23a07bc
|
|
/* 023A07BC */ cpu->r[0] = cpu->lr;
|
|
/* 023A07C0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 023A07C0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 023A07C0 */ cpu->r[1] = _t0;
|
|
/* 023A07C4 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 023A07C4 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 023A07C8 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023A07C8 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 023A07CC */ cpu->r[31] = 0x00000000u;
|
|
/* 023A07D0 */ cpu->r[30] = cpu->r[3];
|
|
/* 023A07D4 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 023A07D4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 023A07D8 */ Gambit_fn_0239DB18(cpu);
|
|
/* 023A07DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023A07E0 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A07E0 */ _t5 = _t4 & 0x00000001u;
|
|
/* 023A07E0 */ if (_t5) goto L_023A0800; else goto L_023A07E4;
|
|
L_023A07E4: ; // 0x23a07e4
|
|
/* 023A07E4 */ _t6 = cpu->r[30] + 0x0000011Eu;
|
|
/* 023A07E4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t6);
|
|
/* 023A07E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 023A07EC */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A07EC */ _t8 = _t7 & 0x00000001u;
|
|
/* 023A07EC */ if (_t8) goto L_023A07F0; else goto L_023A07FC;
|
|
L_023A07F0: ; // 0x23a07f0
|
|
/* 023A07F0 */ _t9 = cpu->r[30] + 0x0000019Du;
|
|
/* 023A07F0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t9);
|
|
/* 023A07F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 023A07F8 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A07F8 */ _t11 = _t10 & 0x00000001u;
|
|
/* 023A07F8 */ if (_t11) goto L_023A0800; else goto L_023A07FC;
|
|
L_023A07FC: ; // 0x23a07fc
|
|
/* 023A07FC */ cpu->r[31] = 0x00000001u;
|
|
L_023A0800: ; // 0x23a0800
|
|
/* 023A0800 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 023A0800 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 023A0804 */ cpu->r[3] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 023A0808 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023A0808 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 023A080C */ cpu->lr = cpu->r[0];
|
|
/* 023A0810 */ _t14 = cpu->r[1] + 0x00000008u;
|
|
/* 023A0810 */ cpu->r[30] = rbrew_read32(cpu->mem, _t14);
|
|
/* 023A0814 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 023A0818 */ return;
|
|
}
|
|
|
|
// fn_023A07C0 @ 0x23a07c0
|
|
void Gambit_fn_023A07C0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_023A07C0: ; // 0x23a07c0
|
|
/* 023A07C0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 023A07C0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 023A07C0 */ cpu->r[1] = _t0;
|
|
/* 023A07C4 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 023A07C4 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 023A07C8 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023A07C8 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 023A07CC */ cpu->r[31] = 0x00000000u;
|
|
/* 023A07D0 */ cpu->r[30] = cpu->r[3];
|
|
/* 023A07D4 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 023A07D4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 023A07D8 */ Gambit_fn_0239DB18(cpu);
|
|
/* 023A07DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023A07E0 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A07E0 */ _t5 = _t4 & 0x00000001u;
|
|
/* 023A07E0 */ if (_t5) goto L_023A0800; else goto L_023A07E4;
|
|
L_023A07E4: ; // 0x23a07e4
|
|
/* 023A07E4 */ _t6 = cpu->r[30] + 0x0000011Eu;
|
|
/* 023A07E4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t6);
|
|
/* 023A07E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 023A07EC */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A07EC */ _t8 = _t7 & 0x00000001u;
|
|
/* 023A07EC */ if (_t8) goto L_023A07F0; else goto L_023A07FC;
|
|
L_023A07F0: ; // 0x23a07f0
|
|
/* 023A07F0 */ _t9 = cpu->r[30] + 0x0000019Du;
|
|
/* 023A07F0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t9);
|
|
/* 023A07F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 023A07F8 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A07F8 */ _t11 = _t10 & 0x00000001u;
|
|
/* 023A07F8 */ if (_t11) goto L_023A0800; else goto L_023A07FC;
|
|
L_023A07FC: ; // 0x23a07fc
|
|
/* 023A07FC */ cpu->r[31] = 0x00000001u;
|
|
L_023A0800: ; // 0x23a0800
|
|
/* 023A0800 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 023A0800 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 023A0804 */ cpu->r[3] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 023A0808 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023A0808 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 023A080C */ cpu->lr = cpu->r[0];
|
|
/* 023A0810 */ _t14 = cpu->r[1] + 0x00000008u;
|
|
/* 023A0810 */ cpu->r[30] = rbrew_read32(cpu->mem, _t14);
|
|
/* 023A0814 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 023A0818 */ return;
|
|
}
|
|
|
|
// fn_023A081C @ 0x23a081c
|
|
void Gambit_fn_023A081C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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;
|
|
|
|
L_023A081C: ; // 0x23a081c
|
|
/* 023A081C */ _t0 = cpu->r[1] + 0xFFFFFF88u;
|
|
/* 023A081C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 023A081C */ cpu->r[1] = _t0;
|
|
/* 023A0820 */ /* nop */
|
|
/* 023A0824 */ cpu->r[0] = cpu->lr;
|
|
/* 023A0828 */ _t1 = cpu->r[1] + 0x0000007Cu;
|
|
/* 023A0828 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 023A082C */ cpu->r[26] = 0x101C0000u;
|
|
/* 023A0830 */ _t2 = cpu->r[26] + 0x00006000u;
|
|
/* 023A0830 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 023A0830 */ cpu->r[26] = _t2;
|
|
/* 023A0834 */ _t3 = cpu->r[12] + 0x00000268u;
|
|
/* 023A0834 */ cpu->r[31] = rbrew_read32(cpu->mem, _t3);
|
|
/* 023A0838 */ cpu->r[27] = cpu->r[3];
|
|
/* 023A083C */ cpu->r[3] = cpu->r[31];
|
|
/* 023A0840 */ Gambit_fn_0261F774(cpu);
|
|
/* 023A0844 */ cpu->r[4] = cpu->r[3];
|
|
/* 023A0848 */ cpu->r[3] = cpu->r[31];
|
|
/* 023A084C */ Gambit_fn_0261F55C(cpu);
|
|
/* 023A0850 */ _t4 = cpu->r[27] + 0x00000180u;
|
|
/* 023A0850 */ cpu->r[7] = rbrew_read8(cpu->mem, _t4);
|
|
/* 023A0854 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 023A0858 */ cpu->r[28] = cpu->r[3];
|
|
/* 023A085C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A085C */ _t6 = _t5 & 0x00000001u;
|
|
/* 023A085C */ if (_t6) goto L_023A0860; else goto L_023A086C;
|
|
L_023A0860: ; // 0x23a0860
|
|
/* 023A0860 */ _t7 = cpu->r[27] + 0x0000019Du;
|
|
/* 023A0860 */ cpu->r[6] = rbrew_read8(cpu->mem, _t7);
|
|
/* 023A0864 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 023A0868 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0868 */ _t9 = _t8 & 0x00000001u;
|
|
/* 023A0868 */ if (_t9) goto L_023A0D80; else goto L_023A086C;
|
|
L_023A086C: ; // 0x23a086c
|
|
/* 023A086C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 023A0870 */ cpu->r[29] = 0x00000000u;
|
|
/* 023A0874 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0874 */ _t11 = _t10 & 0x00000001u;
|
|
/* 023A0874 */ if (_t11) goto L_023A088C; else goto L_023A0878;
|
|
L_023A0878: ; // 0x23a0878
|
|
/* 023A0878 */ cpu->r[3] = cpu->r[27];
|
|
/* 023A087C */ Gambit_fn_0239F234(cpu);
|
|
/* 023A0880 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023A0884 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0884 */ _t13 = _t12 & 0x00000001u;
|
|
/* 023A0884 */ if (_t13) goto L_023A088C; else goto L_023A0888;
|
|
L_023A0888: ; // 0x23a0888
|
|
/* 023A0888 */ cpu->r[29] = 0x00000001u;
|
|
L_023A088C: ; // 0x23a088c
|
|
/* 023A088C */ _t14 = cpu->r[27] + 0x0000019Du;
|
|
/* 023A088C */ cpu->r[9] = rbrew_read8(cpu->mem, _t14);
|
|
/* 023A0890 */ cpu->r[29] = rbrew_rlwinm(cpu->r[29], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 023A0894 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 023A0898 */ cpu->r[30] = 0x00000000u;
|
|
/* 023A089C */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A089C */ _t16 = _t15 & 0x00000001u;
|
|
/* 023A089C */ if (_t16) goto L_023A08C0; else goto L_023A08A0;
|
|
L_023A08A0: ; // 0x23a08a0
|
|
/* 023A08A0 */ cpu->r[3] = cpu->r[27];
|
|
/* 023A08A4 */ Gambit_fn_0239F1EC(cpu);
|
|
/* 023A08A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023A08AC */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A08AC */ _t18 = _t17 & 0x00000001u;
|
|
/* 023A08AC */ if (_t18) goto L_023A08C0; else goto L_023A08B0;
|
|
L_023A08B0: ; // 0x23a08b0
|
|
/* 023A08B0 */ _t19 = cpu->r[27] + 0x0000019Cu;
|
|
/* 023A08B0 */ cpu->r[10] = rbrew_read8(cpu->mem, _t19);
|
|
/* 023A08B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 023A08B8 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A08B8 */ _t21 = _t20 & 0x00000001u;
|
|
/* 023A08B8 */ if (_t21) goto L_023A08C0; else goto L_023A08BC;
|
|
L_023A08BC: ; // 0x23a08bc
|
|
/* 023A08BC */ cpu->r[30] = 0x00000001u;
|
|
L_023A08C0: ; // 0x23a08c0
|
|
/* 023A08C0 */ cpu->r[4] = 0x101D0000u;
|
|
/* 023A08C4 */ cpu->r[30] = rbrew_rlwinm(cpu->r[30], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 023A08C8 */ cpu->r[10] = 0x101D0000u;
|
|
/* 023A08CC */ _t22 = cpu->r[27] + 0x00000158u;
|
|
/* 023A08CC */ cpu->r[31] = rbrew_read32(cpu->mem, _t22);
|
|
/* 023A08D0 */ cpu->r[11] = cpu->r[29] | cpu->r[30];
|
|
/* 023A08D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 023A08D4 */ cpu->r[30] = 0x10080000u;
|
|
/* 023A08D8 */ _t23 = cpu->r[10] + 0xFFFFD9C8u;
|
|
/* 023A08D8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t23);
|
|
/* 023A08D8 */ cpu->r[10] = _t23;
|
|
/* 023A08DC */ cpu->r[4] = cpu->r[4] + 0xFFFFE310u;
|
|
/* 023A08E0 */ cpu->r[30] = cpu->r[30] + 0x00006FF4u;
|
|
/* 023A08E4 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A08E4 */ _t25 = _t24 & 0x00000001u;
|
|
/* 023A08E4 */ if (_t25) goto L_023A08E8; else goto L_023A0994;
|
|
L_023A08E8: ; // 0x23a08e8
|
|
/* 023A08E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 023A08EC */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A08EC */ _t27 = _t26 & 0x00000001u;
|
|
/* 023A08EC */ if (_t27) goto L_023A08F0; else goto L_023A08FC;
|
|
L_023A08F0: ; // 0x23a08f0
|
|
/* 023A08F0 */ _t28 = cpu->r[4] + 0x00000000u;
|
|
/* 023A08F0 */ rbrew_write32(cpu->mem, _t28, cpu->r[30]);
|
|
/* 023A08F4 */ cpu->r[0] = 0x00000001u;
|
|
/* 023A08F8 */ _t29 = cpu->r[10] + 0x00000000u;
|
|
/* 023A08F8 */ rbrew_write32(cpu->mem, _t29, cpu->r[0]);
|
|
L_023A08FC: ; // 0x23a08fc
|
|
/* 023A08FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 023A0900 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0900 */ _t31 = _t30 & 0x00000001u;
|
|
/* 023A0900 */ if (_t31) goto L_023A0920; else goto L_023A0904;
|
|
L_023A0904: ; // 0x23a0904
|
|
/* 023A0904 */ _t32 = cpu->r[31] + 0x00000004u;
|
|
/* 023A0904 */ cpu->r[6] = rbrew_read32(cpu->mem, _t32);
|
|
/* 023A0908 */ _t33 = cpu->r[6] + 0x00000014u;
|
|
/* 023A0908 */ cpu->r[7] = rbrew_read32(cpu->mem, _t33);
|
|
/* 023A090C */ cpu->ctr = cpu->r[7];
|
|
/* 023A0910 */ cpu->r[3] = cpu->r[31];
|
|
/* 023A0914 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 023A0918 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023A091C */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A091C */ _t35 = _t34 & 0x00000001u;
|
|
/* 023A091C */ if (_t35) goto L_023A0920; else goto L_023A0924;
|
|
L_023A0920: ; // 0x23a0920
|
|
/* 023A0920 */ cpu->r[31] = 0x00000000u;
|
|
L_023A0924: ; // 0x23a0924
|
|
/* 023A0924 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 023A0928 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0928 */ _t37 = _t36 & 0x00000001u;
|
|
/* 023A0928 */ if (_t37) goto L_023A0D80; else goto L_023A092C;
|
|
L_023A092C: ; // 0x23a092c
|
|
/* 023A092C */ _t38 = cpu->r[31] + 0x00000050u;
|
|
/* 023A092C */ cpu->r[0] = rbrew_read32(cpu->mem, _t38);
|
|
/* 023A0930 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000002u);
|
|
/* 023A0934 */ _t39 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0934 */ _t40 = _t39 & 0x00000001u;
|
|
/* 023A0934 */ if (_t40) goto L_023A0938; else goto L_023A0D80;
|
|
L_023A0938: ; // 0x23a0938
|
|
/* 023A0938 */ _t41 = cpu->r[31] + 0x0000002Cu;
|
|
/* 023A0938 */ cpu->r[6] = rbrew_read32(cpu->mem, _t41);
|
|
/* 023A093C */ _t42 = cpu->r[28] + 0x0000002Cu;
|
|
/* 023A093C */ cpu->r[0] = rbrew_read32(cpu->mem, _t42);
|
|
/* 023A0940 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[0]);
|
|
/* 023A0944 */ _t43 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0944 */ _t44 = _t43 & 0x00000001u;
|
|
/* 023A0944 */ if (_t44) goto L_023A0948; else goto L_023A0D80;
|
|
L_023A0948: ; // 0x23a0948
|
|
/* 023A0948 */ cpu->r[10] = 0x101C0000u;
|
|
/* 023A094C */ _t45 = cpu->r[26] + 0x00000000u;
|
|
/* 023A094C */ cpu->r[9] = rbrew_read32(cpu->mem, _t45);
|
|
/* 023A0950 */ _t46 = cpu->r[10] + 0x0000608Cu;
|
|
/* 023A0950 */ cpu->r[10] = rbrew_read32(cpu->mem, _t46);
|
|
/* 023A0954 */ _t47 = cpu->r[9] + 0x000002A8u;
|
|
/* 023A0954 */ cpu->r[12] = rbrew_read32(cpu->mem, _t47);
|
|
/* 023A0958 */ _t48 = cpu->r[31] + 0x00000098u;
|
|
/* 023A0958 */ cpu->r[5] = rbrew_read32(cpu->mem, _t48);
|
|
/* 023A095C */ cpu->r[11] = cpu->r[12] + cpu->r[10];
|
|
/* 023A0960 */ _t49 = cpu->r[11] + 0x00000104u;
|
|
/* 023A0960 */ cpu->r[7] = rbrew_read8(cpu->mem, _t49);
|
|
/* 023A0964 */ _t50 = cpu->r[12] + 0x00000030u;
|
|
/* 023A0964 */ cpu->r[8] = rbrew_read32(cpu->mem, _t50);
|
|
/* 023A0968 */ cpu->r[6] = rbrew_rlwinm(cpu->r[7], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 023A096C */ _t51 = cpu->r[6] + cpu->r[8];
|
|
/* 023A096C */ cpu->r[9] = rbrew_read32(cpu->mem, _t51);
|
|
/* 023A0970 */ _t52 = cpu->r[9] + 0x00000004u;
|
|
/* 023A0970 */ cpu->r[11] = rbrew_read32(cpu->mem, _t52);
|
|
/* 023A0974 */ _t53 = cpu->r[28] + 0x00000098u;
|
|
/* 023A0974 */ cpu->r[4] = rbrew_read32(cpu->mem, _t53);
|
|
/* 023A0978 */ _t54 = cpu->r[11] + 0x00000000u;
|
|
/* 023A0978 */ cpu->r[3] = rbrew_read32(cpu->mem, _t54);
|
|
/* 023A097C */ Gambit_fn_023BDA7C(cpu);
|
|
/* 023A0980 */ /* nop */
|
|
/* 023A0984 */ _t55 = cpu->r[1] + 0x0000007Cu;
|
|
/* 023A0984 */ cpu->r[0] = rbrew_read32(cpu->mem, _t55);
|
|
/* 023A0988 */ cpu->lr = cpu->r[0];
|
|
/* 023A098C */ cpu->r[1] = cpu->r[1] + 0x00000078u;
|
|
/* 023A0990 */ return;
|
|
L_023A0994: ; // 0x23a0994
|
|
/* 023A0994 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 023A0998 */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0998 */ _t57 = _t56 & 0x00000001u;
|
|
/* 023A0998 */ if (_t57) goto L_023A099C; else goto L_023A09A8;
|
|
L_023A099C: ; // 0x23a099c
|
|
/* 023A099C */ _t58 = cpu->r[4] + 0x00000000u;
|
|
/* 023A099C */ rbrew_write32(cpu->mem, _t58, cpu->r[30]);
|
|
/* 023A09A0 */ cpu->r[6] = 0x00000001u;
|
|
/* 023A09A4 */ _t59 = cpu->r[10] + 0x00000000u;
|
|
/* 023A09A4 */ rbrew_write32(cpu->mem, _t59, cpu->r[6]);
|
|
L_023A09A8: ; // 0x23a09a8
|
|
/* 023A09A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 023A09AC */ _t60 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A09AC */ _t61 = _t60 & 0x00000001u;
|
|
/* 023A09AC */ if (_t61) goto L_023A0A00; else goto L_023A09B0;
|
|
L_023A09B0: ; // 0x23a09b0
|
|
/* 023A09B0 */ _t62 = cpu->r[31] + 0x00000004u;
|
|
/* 023A09B0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t62);
|
|
/* 023A09B4 */ _t63 = cpu->r[8] + 0x00000014u;
|
|
/* 023A09B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t63);
|
|
/* 023A09B8 */ cpu->ctr = cpu->r[0];
|
|
/* 023A09BC */ cpu->r[3] = cpu->r[31];
|
|
/* 023A09C0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 023A09C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023A09C8 */ _t64 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A09C8 */ _t65 = _t64 & 0x00000001u;
|
|
/* 023A09C8 */ if (_t65) goto L_023A0A00; else goto L_023A09CC;
|
|
L_023A09CC: ; // 0x23a09cc
|
|
/* 023A09CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 023A09D0 */ _t66 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A09D0 */ _t67 = _t66 & 0x00000001u;
|
|
/* 023A09D0 */ if (_t67) goto L_023A0A00; else goto L_023A09D4;
|
|
L_023A09D4: ; // 0x23a09d4
|
|
/* 023A09D4 */ cpu->r[3] = cpu->r[31];
|
|
/* 023A09D8 */ cpu->r[4] = cpu->r[1] + 0x00000048u;
|
|
/* 023A09DC */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 023A09E0 */ Gambit_fn_025C8094(cpu);
|
|
/* 023A09E4 */ _t68 = cpu->r[31] + 0x00000098u;
|
|
/* 023A09E4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t68);
|
|
/* 023A09E8 */ cpu->r[3] = cpu->r[28];
|
|
/* 023A09EC */ _t69 = cpu->r[1] + 0x00000014u;
|
|
/* 023A09EC */ cpu->r[5] = rbrew_read32(cpu->mem, _t69);
|
|
/* 023A09F0 */ cpu->r[4] = cpu->r[1] + 0x00000048u;
|
|
/* 023A09F4 */ cpu->r[7] = 0x00000000u;
|
|
/* 023A09F8 */ Gambit_fn_025C7E9C(cpu);
|
|
/* 023A09FC */ goto L_023A0BD0;
|
|
L_023A0A00: ; // 0x23a0a00
|
|
/* 023A0A00 */ cpu->r[12] = 0x101D0000u;
|
|
/* 023A0A04 */ _t70 = cpu->r[12] + 0xFFFFDA10u;
|
|
/* 023A0A04 */ cpu->r[12] = rbrew_read32(cpu->mem, _t70);
|
|
/* 023A0A08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 023A0A0C */ _t71 = cpu->r[27] + 0x00000158u;
|
|
/* 023A0A0C */ cpu->r[31] = rbrew_read32(cpu->mem, _t71);
|
|
/* 023A0A10 */ _t72 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0A10 */ _t73 = _t72 & 0x00000001u;
|
|
/* 023A0A10 */ if (_t73) goto L_023A0A14; else goto L_023A0A28;
|
|
L_023A0A14: ; // 0x23a0a14
|
|
/* 023A0A14 */ cpu->r[12] = 0x101D0000u;
|
|
/* 023A0A18 */ cpu->r[7] = 0x00000001u;
|
|
/* 023A0A1C */ cpu->r[11] = 0x101D0000u;
|
|
/* 023A0A20 */ _t74 = cpu->r[12] + 0xFFFFDA10u;
|
|
/* 023A0A20 */ rbrew_write32(cpu->mem, _t74, cpu->r[7]);
|
|
/* 023A0A24 */ _t75 = cpu->r[11] + 0xFFFFFBBCu;
|
|
/* 023A0A24 */ rbrew_write32(cpu->mem, _t75, cpu->r[30]);
|
|
L_023A0A28: ; // 0x23a0a28
|
|
/* 023A0A28 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 023A0A2C */ _t76 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0A2C */ _t77 = _t76 & 0x00000001u;
|
|
/* 023A0A2C */ if (_t77) goto L_023A0D80; else goto L_023A0A30;
|
|
L_023A0A30: ; // 0x23a0a30
|
|
/* 023A0A30 */ _t78 = cpu->r[31] + 0x00000004u;
|
|
/* 023A0A30 */ cpu->r[8] = rbrew_read32(cpu->mem, _t78);
|
|
/* 023A0A34 */ _t79 = cpu->r[8] + 0x00000014u;
|
|
/* 023A0A34 */ cpu->r[9] = rbrew_read32(cpu->mem, _t79);
|
|
/* 023A0A38 */ cpu->r[4] = 0x101D0000u;
|
|
/* 023A0A3C */ cpu->ctr = cpu->r[9];
|
|
/* 023A0A40 */ cpu->r[4] = cpu->r[4] + 0xFFFFFBBCu;
|
|
/* 023A0A44 */ cpu->r[3] = cpu->r[31];
|
|
/* 023A0A48 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 023A0A4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023A0A50 */ _t80 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0A50 */ _t81 = _t80 & 0x00000001u;
|
|
/* 023A0A50 */ if (_t81) goto L_023A0D80; else goto L_023A0A54;
|
|
L_023A0A54: ; // 0x23a0a54
|
|
/* 023A0A54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 023A0A58 */ _t82 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0A58 */ _t83 = _t82 & 0x00000001u;
|
|
/* 023A0A58 */ if (_t83) goto L_023A0D80; else goto L_023A0A5C;
|
|
L_023A0A5C: ; // 0x23a0a5c
|
|
/* 023A0A5C */ _t84 = cpu->r[31] + 0x00000004u;
|
|
/* 023A0A5C */ cpu->r[10] = rbrew_read32(cpu->mem, _t84);
|
|
/* 023A0A60 */ _t85 = cpu->r[10] + 0x00000204u;
|
|
/* 023A0A60 */ cpu->r[12] = rbrew_read32(cpu->mem, _t85);
|
|
/* 023A0A64 */ cpu->ctr = cpu->r[12];
|
|
/* 023A0A68 */ cpu->r[3] = cpu->r[31];
|
|
/* 023A0A6C */ cpu->r[4] = cpu->r[1] + 0x00000048u;
|
|
/* 023A0A70 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 023A0A74 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 023A0A78 */ cpu->r[3] = cpu->r[1] + 0x0000005Cu;
|
|
/* 023A0A7C */ cpu->r[30] = 0xFFFFFFFFu;
|
|
/* 023A0A80 */ Gambit_fn_02019890(cpu);
|
|
/* 023A0A84 */ cpu->r[11] = 0x101D0000u;
|
|
/* 023A0A88 */ _t86 = cpu->r[11] + 0xFFFFFE18u;
|
|
/* 023A0A88 */ cpu->r[11] = rbrew_read32(cpu->mem, _t86);
|
|
/* 023A0A8C */ cpu->r[4] = 0x101D0000u;
|
|
/* 023A0A90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 023A0A94 */ cpu->r[4] = cpu->r[4] + 0x000004C0u;
|
|
/* 023A0A98 */ _t87 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0A98 */ _t88 = _t87 & 0x00000001u;
|
|
/* 023A0A98 */ if (_t88) goto L_023A0A9C; else goto L_023A0AB4;
|
|
L_023A0A9C: ; // 0x23a0a9c
|
|
/* 023A0A9C */ cpu->r[9] = 0x10080000u;
|
|
/* 023A0AA0 */ cpu->r[0] = 0x00000001u;
|
|
/* 023A0AA4 */ cpu->r[11] = 0x101D0000u;
|
|
/* 023A0AA8 */ cpu->r[9] = cpu->r[9] + 0x00007004u;
|
|
/* 023A0AAC */ _t89 = cpu->r[11] + 0xFFFFFE18u;
|
|
/* 023A0AAC */ rbrew_write32(cpu->mem, _t89, cpu->r[0]);
|
|
/* 023A0AB0 */ _t90 = cpu->r[4] + 0x00000000u;
|
|
/* 023A0AB0 */ rbrew_write32(cpu->mem, _t90, cpu->r[9]);
|
|
L_023A0AB4: ; // 0x23a0ab4
|
|
/* 023A0AB4 */ _t91 = cpu->r[31] + 0x00000004u;
|
|
/* 023A0AB4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t91);
|
|
/* 023A0AB8 */ _t92 = cpu->r[10] + 0x00000014u;
|
|
/* 023A0AB8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t92);
|
|
/* 023A0ABC */ cpu->ctr = cpu->r[0];
|
|
/* 023A0AC0 */ cpu->r[3] = cpu->r[31];
|
|
/* 023A0AC4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 023A0AC8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023A0ACC */ _t93 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0ACC */ _t94 = _t93 & 0x00000001u;
|
|
/* 023A0ACC */ if (_t94) goto L_023A0AE4; else goto L_023A0AD0;
|
|
L_023A0AD0: ; // 0x23a0ad0
|
|
/* 023A0AD0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 023A0AD4 */ _t95 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0AD4 */ _t96 = _t95 & 0x00000001u;
|
|
/* 023A0AD4 */ if (_t96) goto L_023A0AE4; else goto L_023A0AD8;
|
|
L_023A0AD8: ; // 0x23a0ad8
|
|
/* 023A0AD8 */ _t97 = cpu->r[31] + 0x00000024u;
|
|
/* 023A0AD8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t97);
|
|
/* 023A0ADC */ Gambit_fn_024FDC90(cpu);
|
|
/* 023A0AE0 */ cpu->r[30] = cpu->r[3];
|
|
L_023A0AE4: ; // 0x23a0ae4
|
|
/* 023A0AE4 */ cpu->r[9] = 0x101D0000u;
|
|
/* 023A0AE8 */ _t98 = cpu->r[9] + 0xFFFFDDF4u;
|
|
/* 023A0AE8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t98);
|
|
/* 023A0AEC */ cpu->r[4] = 0x101D0000u;
|
|
/* 023A0AF0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 023A0AF4 */ cpu->r[4] = cpu->r[4] + 0x00000374u;
|
|
/* 023A0AF8 */ _t99 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0AF8 */ _t100 = _t99 & 0x00000001u;
|
|
/* 023A0AF8 */ if (_t100) goto L_023A0AFC; else goto L_023A0B14;
|
|
L_023A0AFC: ; // 0x23a0afc
|
|
/* 023A0AFC */ cpu->r[7] = 0x10080000u;
|
|
/* 023A0B00 */ cpu->r[6] = 0x00000001u;
|
|
/* 023A0B04 */ cpu->r[9] = 0x101D0000u;
|
|
/* 023A0B08 */ cpu->r[7] = cpu->r[7] + 0x00007014u;
|
|
/* 023A0B0C */ _t101 = cpu->r[9] + 0xFFFFDDF4u;
|
|
/* 023A0B0C */ rbrew_write32(cpu->mem, _t101, cpu->r[6]);
|
|
/* 023A0B10 */ _t102 = cpu->r[4] + 0x00000000u;
|
|
/* 023A0B10 */ rbrew_write32(cpu->mem, _t102, cpu->r[7]);
|
|
L_023A0B14: ; // 0x23a0b14
|
|
/* 023A0B14 */ _t103 = cpu->r[31] + 0x00000004u;
|
|
/* 023A0B14 */ cpu->r[8] = rbrew_read32(cpu->mem, _t103);
|
|
/* 023A0B18 */ _t104 = cpu->r[8] + 0x00000014u;
|
|
/* 023A0B18 */ cpu->r[0] = rbrew_read32(cpu->mem, _t104);
|
|
/* 023A0B1C */ cpu->ctr = cpu->r[0];
|
|
/* 023A0B20 */ cpu->r[3] = cpu->r[31];
|
|
/* 023A0B24 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 023A0B28 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023A0B2C */ _t105 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0B2C */ _t106 = _t105 & 0x00000001u;
|
|
/* 023A0B2C */ if (_t106) goto L_023A0BB8; else goto L_023A0B30;
|
|
L_023A0B30: ; // 0x23a0b30
|
|
/* 023A0B30 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 023A0B34 */ _t107 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0B34 */ _t108 = _t107 & 0x00000001u;
|
|
/* 023A0B34 */ if (_t108) goto L_023A0BB8; else goto L_023A0B38;
|
|
L_023A0B38: ; // 0x23a0b38
|
|
/* 023A0B38 */ _t109 = cpu->r[31] + 0x0000006Cu;
|
|
/* 023A0B38 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t109);
|
|
/* 023A0B3C */ _t110 = cpu->r[1] + 0x00000030u;
|
|
/* 023A0B3C */ rbrew_write_f32(cpu->mem, _t110, cpu->f[8]);
|
|
/* 023A0B40 */ _t111 = cpu->r[31] + 0x00000070u;
|
|
/* 023A0B40 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t111);
|
|
/* 023A0B44 */ cpu->r[3] = cpu->r[28];
|
|
/* 023A0B48 */ _t112 = cpu->r[1] + 0x00000014u;
|
|
/* 023A0B48 */ cpu->r[5] = rbrew_read32(cpu->mem, _t112);
|
|
/* 023A0B4C */ cpu->r[4] = cpu->r[1] + 0x00000048u;
|
|
/* 023A0B50 */ _t113 = cpu->r[1] + 0x00000034u;
|
|
/* 023A0B50 */ rbrew_write_f32(cpu->mem, _t113, cpu->f[9]);
|
|
/* 023A0B54 */ _t114 = cpu->r[31] + 0x00000074u;
|
|
/* 023A0B54 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t114);
|
|
/* 023A0B58 */ cpu->r[7] = cpu->r[30];
|
|
/* 023A0B5C */ cpu->r[6] = cpu->r[1] + 0x00000030u;
|
|
/* 023A0B60 */ cpu->r[8] = 0x00000000u;
|
|
/* 023A0B64 */ _t115 = cpu->r[1] + 0x00000038u;
|
|
/* 023A0B64 */ rbrew_write_f32(cpu->mem, _t115, cpu->f[10]);
|
|
/* 023A0B68 */ Gambit_fn_025C7ED8(cpu);
|
|
/* 023A0B6C */ cpu->r[4] = cpu->r[27] + 0x000002E4u;
|
|
/* 023A0B70 */ cpu->r[5] = 0x10080000u;
|
|
/* 023A0B74 */ _t116 = cpu->r[27] + 0x00000030u;
|
|
/* 023A0B74 */ cpu->r[3] = rbrew_read32(cpu->mem, _t116);
|
|
/* 023A0B78 */ cpu->r[6] = 0x00000000u;
|
|
/* 023A0B7C */ cpu->r[5] = cpu->r[5] + 0x00007180u;
|
|
/* 023A0B80 */ Gambit_fn_027B72F0(cpu);
|
|
/* 023A0B84 */ _t117 = cpu->r[1] + 0x00000014u;
|
|
/* 023A0B84 */ cpu->r[3] = rbrew_read32(cpu->mem, _t117);
|
|
/* 023A0B88 */ Gambit_fn_02043A7C(cpu);
|
|
/* 023A0B8C */ _t118 = cpu->r[1] + 0x00000050u;
|
|
/* 023A0B8C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t118);
|
|
/* 023A0B90 */ _t119 = cpu->r[3] + 0x00000034u;
|
|
/* 023A0B90 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t119);
|
|
/* 023A0B94 */ /* nop */
|
|
/* 023A0B98 */ cpu->f[8] = cpu->f[13] * cpu->f[11];
|
|
/* 023A0B9C */ /* nop */
|
|
/* 023A0BA0 */ /* nop */
|
|
/* 023A0BA4 */ _t120 = cpu->r[1] + 0x00000044u;
|
|
/* 023A0BA4 */ rbrew_write_f32(cpu->mem, _t120, cpu->f[8]);
|
|
/* 023A0BA8 */ _t121 = cpu->r[3] + 0x00000000u;
|
|
/* 023A0BA8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t121);
|
|
/* 023A0BAC */ cpu->r[7] = rbrew_rlwinm(cpu->r[8], 0x00000000u, 0x0000001Eu, 0x0000001Eu);
|
|
/* 023A0BAC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 023A0BB0 */ _t122 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0BB0 */ _t123 = _t122 & 0x00000001u;
|
|
/* 023A0BB0 */ if (_t123) goto L_023A0BB4; else goto L_023A0C18;
|
|
L_023A0BB4: ; // 0x23a0bb4
|
|
/* 023A0BB4 */ goto L_023A0CD0;
|
|
L_023A0BB8: ; // 0x23a0bb8
|
|
/* 023A0BB8 */ _t124 = cpu->r[1] + 0x00000014u;
|
|
/* 023A0BB8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t124);
|
|
/* 023A0BBC */ cpu->r[7] = 0x00000000u;
|
|
/* 023A0BC0 */ cpu->r[4] = cpu->r[1] + 0x00000048u;
|
|
/* 023A0BC4 */ cpu->r[6] = cpu->r[30];
|
|
/* 023A0BC8 */ cpu->r[3] = cpu->r[28];
|
|
/* 023A0BCC */ Gambit_fn_025C7E9C(cpu);
|
|
L_023A0BD0: ; // 0x23a0bd0
|
|
/* 023A0BD0 */ cpu->r[5] = 0x10080000u;
|
|
/* 023A0BD4 */ _t125 = cpu->r[27] + 0x00000030u;
|
|
/* 023A0BD4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t125);
|
|
/* 023A0BD8 */ cpu->r[4] = cpu->r[27] + 0x000002E4u;
|
|
/* 023A0BDC */ cpu->r[5] = cpu->r[5] + 0x00007180u;
|
|
/* 023A0BE0 */ cpu->r[6] = 0x00000000u;
|
|
/* 023A0BE4 */ Gambit_fn_027B72F0(cpu);
|
|
/* 023A0BE8 */ _t126 = cpu->r[1] + 0x00000014u;
|
|
/* 023A0BE8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t126);
|
|
/* 023A0BEC */ Gambit_fn_02043A7C(cpu);
|
|
/* 023A0BF0 */ _t127 = cpu->r[1] + 0x00000050u;
|
|
/* 023A0BF0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t127);
|
|
/* 023A0BF4 */ _t128 = cpu->r[3] + 0x00000034u;
|
|
/* 023A0BF4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t128);
|
|
/* 023A0BF8 */ /* nop */
|
|
/* 023A0BFC */ cpu->f[8] = cpu->f[13] * cpu->f[11];
|
|
/* 023A0C00 */ /* nop */
|
|
/* 023A0C04 */ /* nop */
|
|
/* 023A0C08 */ _t129 = cpu->r[1] + 0x00000044u;
|
|
/* 023A0C08 */ rbrew_write_f32(cpu->mem, _t129, cpu->f[8]);
|
|
/* 023A0C0C */ _t130 = cpu->r[3] + 0x00000000u;
|
|
/* 023A0C0C */ cpu->r[8] = rbrew_read32(cpu->mem, _t130);
|
|
/* 023A0C10 */ cpu->r[7] = rbrew_rlwinm(cpu->r[8], 0x00000000u, 0x0000001Eu, 0x0000001Eu);
|
|
/* 023A0C10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 023A0C14 */ _t131 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0C14 */ _t132 = _t131 & 0x00000001u;
|
|
/* 023A0C14 */ if (_t132) goto L_023A0CD0; else goto L_023A0C18;
|
|
L_023A0C18: ; // 0x23a0c18
|
|
/* 023A0C18 */ _t133 = cpu->r[3] + 0x00000004u;
|
|
/* 023A0C18 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t133);
|
|
/* 023A0C1C */ _t134 = cpu->r[1] + 0x00000008u;
|
|
/* 023A0C1C */ rbrew_write_f32(cpu->mem, _t134, cpu->f[0]);
|
|
/* 023A0C20 */ _t135 = cpu->r[3] + 0x00000008u;
|
|
/* 023A0C20 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t135);
|
|
/* 023A0C24 */ _t136 = cpu->r[1] + 0x0000003Cu;
|
|
/* 023A0C24 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t136);
|
|
/* 023A0C28 */ _t137 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023A0C28 */ rbrew_write_f32(cpu->mem, _t137, cpu->f[8]);
|
|
/* 023A0C2C */ _t138 = cpu->r[3] + 0x0000000Cu;
|
|
/* 023A0C2C */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t138);
|
|
/* 023A0C30 */ /* nop */
|
|
/* 023A0C34 */ cpu->f[7] = cpu->f[7] * cpu->f[12];
|
|
/* 023A0C38 */ /* nop */
|
|
/* 023A0C3C */ /* nop */
|
|
/* 023A0C40 */ _t139 = cpu->r[1] + 0x00000010u;
|
|
/* 023A0C40 */ rbrew_write_f32(cpu->mem, _t139, cpu->f[7]);
|
|
/* 023A0C44 */ /* nop */
|
|
/* 023A0C48 */ _t140 = cpu->r[1] + 0x00000040u;
|
|
/* 023A0C48 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t140);
|
|
/* 023A0C4C */ /* nop */
|
|
/* 023A0C50 */ /* nop */
|
|
/* 023A0C54 */ _t141 = cpu->r[3] + 0x00000018u;
|
|
/* 023A0C54 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t141);
|
|
/* 023A0C58 */ cpu->f[7] = fma(cpu->f[13], cpu->f[8], cpu->f[7]);
|
|
/* 023A0C5C */ _t142 = cpu->r[1] + 0x00000044u;
|
|
/* 023A0C5C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t142);
|
|
/* 023A0C60 */ _t143 = cpu->r[1] + 0x00000010u;
|
|
/* 023A0C60 */ rbrew_write_f32(cpu->mem, _t143, cpu->f[7]);
|
|
/* 023A0C64 */ /* nop */
|
|
/* 023A0C68 */ /* nop */
|
|
/* 023A0C6C */ /* nop */
|
|
/* 023A0C70 */ _t144 = cpu->r[3] + 0x00000024u;
|
|
/* 023A0C70 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t144);
|
|
/* 023A0C74 */ cpu->f[7] = fma(cpu->f[8], cpu->f[11], cpu->f[7]);
|
|
/* 023A0C78 */ _t145 = cpu->r[1] + 0x00000010u;
|
|
/* 023A0C78 */ rbrew_write_f32(cpu->mem, _t145, cpu->f[7]);
|
|
/* 023A0C7C */ /* nop */
|
|
/* 023A0C80 */ /* nop */
|
|
/* 023A0C84 */ /* nop */
|
|
/* 023A0C88 */ _t146 = cpu->r[3] + 0x00000030u;
|
|
/* 023A0C88 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t146);
|
|
/* 023A0C8C */ cpu->f[0] = cpu->f[7] + cpu->f[8];
|
|
/* 023A0C90 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 023A0C94 */ _t147 = cpu->r[1] + 0x00000010u;
|
|
/* 023A0C94 */ rbrew_write_f32(cpu->mem, _t147, cpu->f[0]);
|
|
/* 023A0C98 */ Gambit_fn_0239E06C(cpu);
|
|
/* 023A0C9C */ _t148 = cpu->r[1] + 0x00000054u;
|
|
/* 023A0C9C */ rbrew_write32(cpu->mem, _t148, cpu->r[3]);
|
|
/* 023A0CA0 */ _t149 = cpu->r[1] + 0x00000054u;
|
|
/* 023A0CA0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t149);
|
|
/* 023A0CA4 */ cpu->r[12] = 0x10080000u;
|
|
/* 023A0CA8 */ _t150 = cpu->r[1] + 0x00000058u;
|
|
/* 023A0CA8 */ rbrew_write32(cpu->mem, _t150, cpu->r[4]);
|
|
/* 023A0CAC */ _t151 = cpu->r[1] + 0x00000058u;
|
|
/* 023A0CAC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t151);
|
|
/* 023A0CB0 */ _t152 = cpu->r[12] + 0x0000704Cu;
|
|
/* 023A0CB0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t152);
|
|
/* 023A0CB4 */ _t153 = cpu->r[27] + 0x000002E4u;
|
|
/* 023A0CB4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t153);
|
|
/* 023A0CB8 */ _t154 = cpu->r[1] + 0x00000018u;
|
|
/* 023A0CB8 */ rbrew_write_f32(cpu->mem, _t154, cpu->f[10]);
|
|
/* 023A0CBC */ _t155 = cpu->r[1] + 0x00000020u;
|
|
/* 023A0CBC */ rbrew_write_f32(cpu->mem, _t155, cpu->f[0]);
|
|
/* 023A0CC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 023A0CC4 */ _t156 = cpu->r[1] + 0x0000001Cu;
|
|
/* 023A0CC4 */ rbrew_write_f32(cpu->mem, _t156, cpu->f[13]);
|
|
/* 023A0CC8 */ _t157 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0CC8 */ _t158 = _t157 & 0x00000001u;
|
|
/* 023A0CC8 */ if (_t158) goto L_023A0D80; else goto L_023A0CCC;
|
|
L_023A0CCC: ; // 0x23a0ccc
|
|
/* 023A0CCC */ goto L_023A0D20;
|
|
L_023A0CD0: ; // 0x23a0cd0
|
|
/* 023A0CD0 */ /* nop */
|
|
/* 023A0CD4 */ /* nop */
|
|
/* 023A0CD8 */ /* nop */
|
|
/* 023A0CDC */ _t159 = cpu->r[3] + 0x00000030u;
|
|
/* 023A0CDC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t159);
|
|
/* 023A0CE0 */ cpu->f[11] = cpu->f[8] + cpu->f[12];
|
|
/* 023A0CE4 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 023A0CE8 */ _t160 = cpu->r[1] + 0x00000010u;
|
|
/* 023A0CE8 */ rbrew_write_f32(cpu->mem, _t160, cpu->f[11]);
|
|
/* 023A0CEC */ Gambit_fn_0239E06C(cpu);
|
|
/* 023A0CF0 */ _t161 = cpu->r[1] + 0x00000054u;
|
|
/* 023A0CF0 */ rbrew_write32(cpu->mem, _t161, cpu->r[3]);
|
|
/* 023A0CF4 */ _t162 = cpu->r[1] + 0x00000054u;
|
|
/* 023A0CF4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t162);
|
|
/* 023A0CF8 */ cpu->r[12] = 0x10080000u;
|
|
/* 023A0CFC */ _t163 = cpu->r[1] + 0x00000058u;
|
|
/* 023A0CFC */ rbrew_write32(cpu->mem, _t163, cpu->r[4]);
|
|
/* 023A0D00 */ _t164 = cpu->r[1] + 0x00000058u;
|
|
/* 023A0D00 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t164);
|
|
/* 023A0D04 */ _t165 = cpu->r[12] + 0x0000704Cu;
|
|
/* 023A0D04 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t165);
|
|
/* 023A0D08 */ _t166 = cpu->r[27] + 0x000002E4u;
|
|
/* 023A0D08 */ cpu->r[11] = rbrew_read32(cpu->mem, _t166);
|
|
/* 023A0D0C */ _t167 = cpu->r[1] + 0x00000018u;
|
|
/* 023A0D0C */ rbrew_write_f32(cpu->mem, _t167, cpu->f[10]);
|
|
/* 023A0D10 */ _t168 = cpu->r[1] + 0x00000020u;
|
|
/* 023A0D10 */ rbrew_write_f32(cpu->mem, _t168, cpu->f[0]);
|
|
/* 023A0D14 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 023A0D18 */ _t169 = cpu->r[1] + 0x0000001Cu;
|
|
/* 023A0D18 */ rbrew_write_f32(cpu->mem, _t169, cpu->f[13]);
|
|
/* 023A0D1C */ _t170 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0D1C */ _t171 = _t170 & 0x00000001u;
|
|
/* 023A0D1C */ if (_t171) goto L_023A0D80; else goto L_023A0D20;
|
|
L_023A0D20: ; // 0x23a0d20
|
|
/* 023A0D20 */ _t172 = cpu->r[11] + 0x0000000Cu;
|
|
/* 023A0D20 */ cpu->r[0] = rbrew_read32(cpu->mem, _t172);
|
|
/* 023A0D24 */ _t173 = cpu->r[27] + 0x000002E8u;
|
|
/* 023A0D24 */ cpu->r[7] = rbrew_read32(cpu->mem, _t173);
|
|
/* 023A0D28 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]);
|
|
/* 023A0D2C */ _t174 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0D2C */ _t175 = _t174 & 0x00000001u;
|
|
/* 023A0D2C */ if (_t175) goto L_023A0D30; else goto L_023A0D80;
|
|
L_023A0D30: ; // 0x23a0d30
|
|
/* 023A0D30 */ cpu->r[10] = 0x10080000u;
|
|
/* 023A0D34 */ _t176 = cpu->r[10] + 0x00007050u;
|
|
/* 023A0D34 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t176);
|
|
/* 023A0D38 */ _t177 = cpu->r[1] + 0x00000018u;
|
|
/* 023A0D38 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t177);
|
|
/* 023A0D3C */ _t178 = cpu->r[1] + 0x00000024u;
|
|
/* 023A0D3C */ rbrew_write_f32(cpu->mem, _t178, cpu->f[12]);
|
|
/* 023A0D40 */ _t179 = cpu->r[1] + 0x00000028u;
|
|
/* 023A0D40 */ rbrew_write_f32(cpu->mem, _t179, cpu->f[12]);
|
|
/* 023A0D44 */ _t180 = cpu->r[1] + 0x0000002Cu;
|
|
/* 023A0D44 */ rbrew_write_f32(cpu->mem, _t180, cpu->f[12]);
|
|
/* 023A0D48 */ _t181 = cpu->r[11] + 0x00000064u;
|
|
/* 023A0D48 */ rbrew_write_f32(cpu->mem, _t181, cpu->f[13]);
|
|
/* 023A0D4C */ _t182 = cpu->r[1] + 0x0000001Cu;
|
|
/* 023A0D4C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t182);
|
|
/* 023A0D50 */ _t183 = cpu->r[11] + 0x00000068u;
|
|
/* 023A0D50 */ rbrew_write_f32(cpu->mem, _t183, cpu->f[0]);
|
|
/* 023A0D54 */ _t184 = cpu->r[1] + 0x00000020u;
|
|
/* 023A0D54 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t184);
|
|
/* 023A0D58 */ _t185 = cpu->r[11] + 0x0000006Cu;
|
|
/* 023A0D58 */ rbrew_write_f32(cpu->mem, _t185, cpu->f[8]);
|
|
/* 023A0D5C */ _t186 = cpu->r[1] + 0x00000024u;
|
|
/* 023A0D5C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t186);
|
|
/* 023A0D60 */ _t187 = cpu->r[11] + 0x0000012Cu;
|
|
/* 023A0D60 */ cpu->r[6] = rbrew_read32(cpu->mem, _t187);
|
|
/* 023A0D64 */ _t188 = cpu->r[11] + 0x00000070u;
|
|
/* 023A0D64 */ rbrew_write_f32(cpu->mem, _t188, cpu->f[9]);
|
|
/* 023A0D68 */ _t189 = cpu->r[1] + 0x00000028u;
|
|
/* 023A0D68 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t189);
|
|
/* 023A0D6C */ cpu->r[6] = cpu->r[6] | 0x00000004u;
|
|
/* 023A0D70 */ _t190 = cpu->r[11] + 0x00000074u;
|
|
/* 023A0D70 */ rbrew_write_f32(cpu->mem, _t190, cpu->f[10]);
|
|
/* 023A0D74 */ _t191 = cpu->r[1] + 0x0000002Cu;
|
|
/* 023A0D74 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t191);
|
|
/* 023A0D78 */ _t192 = cpu->r[11] + 0x0000012Cu;
|
|
/* 023A0D78 */ rbrew_write32(cpu->mem, _t192, cpu->r[6]);
|
|
/* 023A0D7C */ _t193 = cpu->r[11] + 0x00000078u;
|
|
/* 023A0D7C */ rbrew_write_f32(cpu->mem, _t193, cpu->f[11]);
|
|
L_023A0D80: ; // 0x23a0d80
|
|
/* 023A0D80 */ /* nop */
|
|
/* 023A0D84 */ _t194 = cpu->r[1] + 0x0000007Cu;
|
|
/* 023A0D84 */ cpu->r[0] = rbrew_read32(cpu->mem, _t194);
|
|
/* 023A0D88 */ cpu->lr = cpu->r[0];
|
|
/* 023A0D8C */ cpu->r[1] = cpu->r[1] + 0x00000078u;
|
|
/* 023A0D90 */ return;
|
|
}
|
|
|
|
// fn_023A0D94 @ 0x23a0d94
|
|
void Gambit_fn_023A0D94(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _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_023A0D94: ; // 0x23a0d94
|
|
/* 023A0D94 */ cpu->r[0] = cpu->lr;
|
|
/* 023A0D98 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 023A0D98 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 023A0D98 */ cpu->r[1] = _t0;
|
|
/* 023A0D9C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023A0D9C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 023A0DA0 */ cpu->r[31] = cpu->r[3];
|
|
/* 023A0DA4 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 023A0DA4 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 023A0DA8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 023A0DA8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 023A0DAC */ Gambit_fn_0239DA58(cpu);
|
|
/* 023A0DB0 */ cpu->r[3] = cpu->r[31];
|
|
/* 023A0DB4 */ Gambit_fn_0239DB18(cpu);
|
|
/* 023A0DB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023A0DBC */ cpu->r[3] = cpu->r[31];
|
|
/* 023A0DC0 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0DC0 */ _t5 = _t4 & 0x00000001u;
|
|
/* 023A0DC0 */ if (_t5) goto L_023A0DC4; else goto L_023A0DE4;
|
|
L_023A0DC4: ; // 0x23a0dc4
|
|
/* 023A0DC4 */ Gambit_fn_0239DCF8(cpu);
|
|
/* 023A0DC8 */ cpu->r[3] = cpu->r[31];
|
|
/* 023A0DCC */ Gambit_fn_0239DF50(cpu);
|
|
/* 023A0DD0 */ cpu->r[3] = cpu->r[31];
|
|
/* 023A0DD4 */ Gambit_fn_0239DFEC(cpu);
|
|
/* 023A0DD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023A0DDC */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0DDC */ _t7 = _t6 & 0x00000001u;
|
|
/* 023A0DDC */ if (_t7) goto L_023A0E08; else goto L_023A0DE0;
|
|
L_023A0DE0: ; // 0x23a0de0
|
|
/* 023A0DE0 */ goto L_023A0E00;
|
|
L_023A0DE4: ; // 0x23a0de4
|
|
/* 023A0DE4 */ Gambit_fn_0239DD38(cpu);
|
|
/* 023A0DE8 */ cpu->r[3] = cpu->r[31];
|
|
/* 023A0DEC */ Gambit_fn_0239DF50(cpu);
|
|
/* 023A0DF0 */ cpu->r[3] = cpu->r[31];
|
|
/* 023A0DF4 */ Gambit_fn_0239DFEC(cpu);
|
|
/* 023A0DF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023A0DFC */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0DFC */ _t9 = _t8 & 0x00000001u;
|
|
/* 023A0DFC */ if (_t9) goto L_023A0E08; else goto L_023A0E00;
|
|
L_023A0E00: ; // 0x23a0e00
|
|
/* 023A0E00 */ cpu->r[3] = cpu->r[31];
|
|
/* 023A0E04 */ Gambit_fn_0239E114(cpu);
|
|
L_023A0E08: ; // 0x23a0e08
|
|
/* 023A0E08 */ cpu->r[3] = cpu->r[31];
|
|
/* 023A0E0C */ Gambit_fn_0239F1C4(cpu);
|
|
/* 023A0E10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023A0E14 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0E14 */ _t11 = _t10 & 0x00000001u;
|
|
/* 023A0E14 */ if (_t11) goto L_023A0E38; else goto L_023A0E18;
|
|
L_023A0E18: ; // 0x23a0e18
|
|
/* 023A0E18 */ cpu->r[3] = cpu->r[31];
|
|
/* 023A0E1C */ Gambit_fn_0239F43C(cpu);
|
|
/* 023A0E20 */ cpu->r[3] = cpu->r[31];
|
|
/* 023A0E24 */ Gambit_fn_0239F904(cpu);
|
|
/* 023A0E28 */ _t12 = cpu->r[31] + 0x000002C0u;
|
|
/* 023A0E28 */ cpu->r[0] = rbrew_read8(cpu->mem, _t12);
|
|
/* 023A0E2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 023A0E30 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0E30 */ _t14 = _t13 & 0x00000001u;
|
|
/* 023A0E30 */ if (_t14) goto L_023A0E70; else goto L_023A0E34;
|
|
L_023A0E34: ; // 0x23a0e34
|
|
/* 023A0E34 */ goto L_023A0E68;
|
|
L_023A0E38: ; // 0x23a0e38
|
|
/* 023A0E38 */ cpu->r[30] = 0x101C0000u;
|
|
/* 023A0E3C */ _t15 = cpu->r[30] + 0x00005C08u;
|
|
/* 023A0E3C */ cpu->r[3] = rbrew_read32(cpu->mem, _t15);
|
|
/* 023A0E3C */ cpu->r[30] = _t15;
|
|
/* 023A0E40 */ Gambit_fn_02423790(cpu);
|
|
/* 023A0E44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023A0E48 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0E48 */ _t17 = _t16 & 0x00000001u;
|
|
/* 023A0E48 */ if (_t17) goto L_023A0E54; else goto L_023A0E4C;
|
|
L_023A0E4C: ; // 0x23a0e4c
|
|
/* 023A0E4C */ _t18 = cpu->r[30] + 0x00000000u;
|
|
/* 023A0E4C */ cpu->r[3] = rbrew_read32(cpu->mem, _t18);
|
|
/* 023A0E50 */ Gambit_fn_02423818(cpu);
|
|
L_023A0E54: ; // 0x23a0e54
|
|
/* 023A0E54 */ cpu->r[3] = cpu->r[31];
|
|
/* 023A0E58 */ Gambit_fn_0239F904(cpu);
|
|
/* 023A0E5C */ _t19 = cpu->r[31] + 0x000002C0u;
|
|
/* 023A0E5C */ cpu->r[0] = rbrew_read8(cpu->mem, _t19);
|
|
/* 023A0E60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 023A0E64 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0E64 */ _t21 = _t20 & 0x00000001u;
|
|
/* 023A0E64 */ if (_t21) goto L_023A0E70; else goto L_023A0E68;
|
|
L_023A0E68: ; // 0x23a0e68
|
|
/* 023A0E68 */ cpu->r[3] = cpu->r[31];
|
|
/* 023A0E6C */ Gambit_fn_0239FC58(cpu);
|
|
L_023A0E70: ; // 0x23a0e70
|
|
/* 023A0E70 */ _t22 = cpu->r[31] + 0x00000184u;
|
|
/* 023A0E70 */ cpu->r[3] = rbrew_read32(cpu->mem, _t22);
|
|
/* 023A0E74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023A0E78 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0E78 */ _t24 = _t23 & 0x00000001u;
|
|
/* 023A0E78 */ if (_t24) goto L_023A0E90; else goto L_023A0E7C;
|
|
L_023A0E7C: ; // 0x23a0e7c
|
|
/* 023A0E7C */ Gambit_fn_02466B3C(cpu);
|
|
/* 023A0E80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023A0E84 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0E84 */ _t26 = _t25 & 0x00000001u;
|
|
/* 023A0E84 */ if (_t26) goto L_023A0E90; else goto L_023A0E88;
|
|
L_023A0E88: ; // 0x23a0e88
|
|
/* 023A0E88 */ cpu->r[3] = cpu->r[31];
|
|
/* 023A0E8C */ Gambit_fn_0239FF04(cpu);
|
|
L_023A0E90: ; // 0x23a0e90
|
|
/* 023A0E90 */ cpu->r[3] = cpu->r[31];
|
|
/* 023A0E94 */ Gambit_fn_023A0298(cpu);
|
|
/* 023A0E98 */ cpu->r[3] = cpu->r[31];
|
|
/* 023A0E9C */ Gambit_fn_023A07BC(cpu);
|
|
/* 023A0EA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023A0EA4 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0EA4 */ _t28 = _t27 & 0x00000001u;
|
|
/* 023A0EA4 */ if (_t28) goto L_023A0EB0; else goto L_023A0EA8;
|
|
L_023A0EA8: ; // 0x23a0ea8
|
|
/* 023A0EA8 */ cpu->r[3] = cpu->r[31];
|
|
/* 023A0EAC */ Gambit_fn_023A081C(cpu);
|
|
L_023A0EB0: ; // 0x23a0eb0
|
|
/* 023A0EB0 */ _t29 = cpu->r[1] + 0x00000014u;
|
|
/* 023A0EB0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t29);
|
|
/* 023A0EB4 */ _t30 = cpu->r[1] + 0x00000008u;
|
|
/* 023A0EB4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t30);
|
|
/* 023A0EB8 */ cpu->lr = cpu->r[0];
|
|
/* 023A0EBC */ _t31 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023A0EBC */ cpu->r[31] = rbrew_read32(cpu->mem, _t31);
|
|
/* 023A0EC0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 023A0EC4 */ return;
|
|
}
|
|
|
|
// fn_023A0D98 @ 0x23a0d98
|
|
void Gambit_fn_023A0D98(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _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_023A0D98: ; // 0x23a0d98
|
|
/* 023A0D98 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 023A0D98 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 023A0D98 */ cpu->r[1] = _t0;
|
|
/* 023A0D9C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023A0D9C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 023A0DA0 */ cpu->r[31] = cpu->r[3];
|
|
/* 023A0DA4 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 023A0DA4 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 023A0DA8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 023A0DA8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 023A0DAC */ Gambit_fn_0239DA58(cpu);
|
|
/* 023A0DB0 */ cpu->r[3] = cpu->r[31];
|
|
/* 023A0DB4 */ Gambit_fn_0239DB18(cpu);
|
|
/* 023A0DB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023A0DBC */ cpu->r[3] = cpu->r[31];
|
|
/* 023A0DC0 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0DC0 */ _t5 = _t4 & 0x00000001u;
|
|
/* 023A0DC0 */ if (_t5) goto L_023A0DC4; else goto L_023A0DE4;
|
|
L_023A0DC4: ; // 0x23a0dc4
|
|
/* 023A0DC4 */ Gambit_fn_0239DCF8(cpu);
|
|
/* 023A0DC8 */ cpu->r[3] = cpu->r[31];
|
|
/* 023A0DCC */ Gambit_fn_0239DF50(cpu);
|
|
/* 023A0DD0 */ cpu->r[3] = cpu->r[31];
|
|
/* 023A0DD4 */ Gambit_fn_0239DFEC(cpu);
|
|
/* 023A0DD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023A0DDC */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0DDC */ _t7 = _t6 & 0x00000001u;
|
|
/* 023A0DDC */ if (_t7) goto L_023A0E08; else goto L_023A0DE0;
|
|
L_023A0DE0: ; // 0x23a0de0
|
|
/* 023A0DE0 */ goto L_023A0E00;
|
|
L_023A0DE4: ; // 0x23a0de4
|
|
/* 023A0DE4 */ Gambit_fn_0239DD38(cpu);
|
|
/* 023A0DE8 */ cpu->r[3] = cpu->r[31];
|
|
/* 023A0DEC */ Gambit_fn_0239DF50(cpu);
|
|
/* 023A0DF0 */ cpu->r[3] = cpu->r[31];
|
|
/* 023A0DF4 */ Gambit_fn_0239DFEC(cpu);
|
|
/* 023A0DF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023A0DFC */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0DFC */ _t9 = _t8 & 0x00000001u;
|
|
/* 023A0DFC */ if (_t9) goto L_023A0E08; else goto L_023A0E00;
|
|
L_023A0E00: ; // 0x23a0e00
|
|
/* 023A0E00 */ cpu->r[3] = cpu->r[31];
|
|
/* 023A0E04 */ Gambit_fn_0239E114(cpu);
|
|
L_023A0E08: ; // 0x23a0e08
|
|
/* 023A0E08 */ cpu->r[3] = cpu->r[31];
|
|
/* 023A0E0C */ Gambit_fn_0239F1C4(cpu);
|
|
/* 023A0E10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023A0E14 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0E14 */ _t11 = _t10 & 0x00000001u;
|
|
/* 023A0E14 */ if (_t11) goto L_023A0E38; else goto L_023A0E18;
|
|
L_023A0E18: ; // 0x23a0e18
|
|
/* 023A0E18 */ cpu->r[3] = cpu->r[31];
|
|
/* 023A0E1C */ Gambit_fn_0239F43C(cpu);
|
|
/* 023A0E20 */ cpu->r[3] = cpu->r[31];
|
|
/* 023A0E24 */ Gambit_fn_0239F904(cpu);
|
|
/* 023A0E28 */ _t12 = cpu->r[31] + 0x000002C0u;
|
|
/* 023A0E28 */ cpu->r[0] = rbrew_read8(cpu->mem, _t12);
|
|
/* 023A0E2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 023A0E30 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0E30 */ _t14 = _t13 & 0x00000001u;
|
|
/* 023A0E30 */ if (_t14) goto L_023A0E70; else goto L_023A0E34;
|
|
L_023A0E34: ; // 0x23a0e34
|
|
/* 023A0E34 */ goto L_023A0E68;
|
|
L_023A0E38: ; // 0x23a0e38
|
|
/* 023A0E38 */ cpu->r[30] = 0x101C0000u;
|
|
/* 023A0E3C */ _t15 = cpu->r[30] + 0x00005C08u;
|
|
/* 023A0E3C */ cpu->r[3] = rbrew_read32(cpu->mem, _t15);
|
|
/* 023A0E3C */ cpu->r[30] = _t15;
|
|
/* 023A0E40 */ Gambit_fn_02423790(cpu);
|
|
/* 023A0E44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023A0E48 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0E48 */ _t17 = _t16 & 0x00000001u;
|
|
/* 023A0E48 */ if (_t17) goto L_023A0E54; else goto L_023A0E4C;
|
|
L_023A0E4C: ; // 0x23a0e4c
|
|
/* 023A0E4C */ _t18 = cpu->r[30] + 0x00000000u;
|
|
/* 023A0E4C */ cpu->r[3] = rbrew_read32(cpu->mem, _t18);
|
|
/* 023A0E50 */ Gambit_fn_02423818(cpu);
|
|
L_023A0E54: ; // 0x23a0e54
|
|
/* 023A0E54 */ cpu->r[3] = cpu->r[31];
|
|
/* 023A0E58 */ Gambit_fn_0239F904(cpu);
|
|
/* 023A0E5C */ _t19 = cpu->r[31] + 0x000002C0u;
|
|
/* 023A0E5C */ cpu->r[0] = rbrew_read8(cpu->mem, _t19);
|
|
/* 023A0E60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 023A0E64 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0E64 */ _t21 = _t20 & 0x00000001u;
|
|
/* 023A0E64 */ if (_t21) goto L_023A0E70; else goto L_023A0E68;
|
|
L_023A0E68: ; // 0x23a0e68
|
|
/* 023A0E68 */ cpu->r[3] = cpu->r[31];
|
|
/* 023A0E6C */ Gambit_fn_0239FC58(cpu);
|
|
L_023A0E70: ; // 0x23a0e70
|
|
/* 023A0E70 */ _t22 = cpu->r[31] + 0x00000184u;
|
|
/* 023A0E70 */ cpu->r[3] = rbrew_read32(cpu->mem, _t22);
|
|
/* 023A0E74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023A0E78 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0E78 */ _t24 = _t23 & 0x00000001u;
|
|
/* 023A0E78 */ if (_t24) goto L_023A0E90; else goto L_023A0E7C;
|
|
L_023A0E7C: ; // 0x23a0e7c
|
|
/* 023A0E7C */ Gambit_fn_02466B3C(cpu);
|
|
/* 023A0E80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023A0E84 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0E84 */ _t26 = _t25 & 0x00000001u;
|
|
/* 023A0E84 */ if (_t26) goto L_023A0E90; else goto L_023A0E88;
|
|
L_023A0E88: ; // 0x23a0e88
|
|
/* 023A0E88 */ cpu->r[3] = cpu->r[31];
|
|
/* 023A0E8C */ Gambit_fn_0239FF04(cpu);
|
|
L_023A0E90: ; // 0x23a0e90
|
|
/* 023A0E90 */ cpu->r[3] = cpu->r[31];
|
|
/* 023A0E94 */ Gambit_fn_023A0298(cpu);
|
|
/* 023A0E98 */ cpu->r[3] = cpu->r[31];
|
|
/* 023A0E9C */ Gambit_fn_023A07BC(cpu);
|
|
/* 023A0EA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023A0EA4 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A0EA4 */ _t28 = _t27 & 0x00000001u;
|
|
/* 023A0EA4 */ if (_t28) goto L_023A0EB0; else goto L_023A0EA8;
|
|
L_023A0EA8: ; // 0x23a0ea8
|
|
/* 023A0EA8 */ cpu->r[3] = cpu->r[31];
|
|
/* 023A0EAC */ Gambit_fn_023A081C(cpu);
|
|
L_023A0EB0: ; // 0x23a0eb0
|
|
/* 023A0EB0 */ _t29 = cpu->r[1] + 0x00000014u;
|
|
/* 023A0EB0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t29);
|
|
/* 023A0EB4 */ _t30 = cpu->r[1] + 0x00000008u;
|
|
/* 023A0EB4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t30);
|
|
/* 023A0EB8 */ cpu->lr = cpu->r[0];
|
|
/* 023A0EBC */ _t31 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023A0EBC */ cpu->r[31] = rbrew_read32(cpu->mem, _t31);
|
|
/* 023A0EC0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 023A0EC4 */ return;
|
|
}
|
|
|
|
// fn_023A0F00 @ 0x23a0f00
|
|
void Gambit_fn_023A0F00(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36;
|
|
|
|
L_023A0F00: ; // 0x23a0f00
|
|
/* 023A0F00 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 023A0F00 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 023A0F00 */ cpu->r[1] = _t0;
|
|
/* 023A0F04 */ _t1 = cpu->r[1] + 0x00000030u;
|
|
/* 023A0F04 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 023A0F08 */ /* nop */
|
|
/* 023A0F0C */ _t2 = cpu->r[1] + 0x00000038u;
|
|
/* 023A0F0C */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 023A0F10 */ cpu->r[11] = 0x43300000u;
|
|
/* 023A0F14 */ _t3 = cpu->r[1] + 0x00000018u;
|
|
/* 023A0F14 */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 023A0F18 */ _t4 = cpu->r[1] + 0x00000044u;
|
|
/* 023A0F18 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 023A0F1C */ _t5 = cpu->r[1] + 0x0000002Cu;
|
|
/* 023A0F1C */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 023A0F20 */ cpu->r[31] = cpu->r[3];
|
|
/* 023A0F24 */ cpu->r[12] = 0x10080000u;
|
|
/* 023A0F28 */ _t6 = cpu->r[31] + 0x00000058u;
|
|
/* 023A0F28 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 023A0F2C */ _t7 = cpu->r[12] + 0x00007190u;
|
|
/* 023A0F2C */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t7);
|
|
/* 023A0F30 */ cpu->r[0] = cpu->r[0] ^ 0x80000000u;
|
|
/* 023A0F34 */ cpu->r[12] = 0x10080000u;
|
|
/* 023A0F38 */ _t8 = cpu->r[1] + 0x0000001Cu;
|
|
/* 023A0F38 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 023A0F3C */ _t9 = cpu->r[1] + 0x00000018u;
|
|
/* 023A0F3C */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t9);
|
|
/* 023A0F40 */ _t10 = cpu->r[12] + 0x0000704Cu;
|
|
/* 023A0F40 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 023A0F44 */ cpu->f[10] = cpu->f[0] - cpu->f[13];
|
|
/* 023A0F48 */ cpu->r[12] = 0x10080000u;
|
|
/* 023A0F4C */ cpu->f[10] = (double)(float)cpu->f[10];
|
|
/* 023A0F50 */ _t11 = cpu->r[12] + 0x00007198u;
|
|
/* 023A0F50 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 023A0F54 */ cpu->r[11] = 0x10080000u;
|
|
/* 023A0F58 */ cpu->f[31] = cpu->f[10] * cpu->f[11];
|
|
/* 023A0F5C */ _t12 = cpu->r[11] + 0x00007050u;
|
|
/* 023A0F5C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 023A0F60 */ cpu->f[11] = fma(cpu->f[1], cpu->f[31], cpu->f[0]);
|
|
/* 023A0F64 */ cpu->r[4] = cpu->r[31] + 0x00000114u;
|
|
/* 023A0F68 */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 023A0F6C */ _t13 = cpu->r[31] + 0x00000110u;
|
|
/* 023A0F6C */ rbrew_write_f32(cpu->mem, _t13, cpu->f[11]);
|
|
/* 023A0F70 */ Gambit_fn_0239F80C(cpu);
|
|
/* 023A0F74 */ cpu->r[12] = 0x101C0000u;
|
|
/* 023A0F78 */ _t14 = cpu->r[12] + 0x00006000u;
|
|
/* 023A0F78 */ cpu->r[12] = rbrew_read32(cpu->mem, _t14);
|
|
/* 023A0F7C */ _t15 = cpu->r[12] + 0x000002A0u;
|
|
/* 023A0F7C */ cpu->r[11] = rbrew_read32(cpu->mem, _t15);
|
|
/* 023A0F80 */ _t16 = cpu->r[1] + 0x00000020u;
|
|
/* 023A0F80 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 023A0F84 */ _t17 = cpu->r[11] + 0x00000188u;
|
|
/* 023A0F84 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 023A0F88 */ cpu->f[13] = cpu->f[0] - cpu->f[9];
|
|
/* 023A0F8C */ cpu->f[13] = cpu->f[9] + cpu->f[13];
|
|
/* 023A0F90 */ _t18 = cpu->r[1] + 0x00000024u;
|
|
/* 023A0F90 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 023A0F94 */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 023A0F94 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[13]);
|
|
/* 023A0F98 */ _t20 = cpu->r[11] + 0x0000018Cu;
|
|
/* 023A0F98 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 023A0F9C */ cpu->f[10] = cpu->f[11] - cpu->f[9];
|
|
/* 023A0FA0 */ cpu->f[11] = cpu->f[9] + cpu->f[10];
|
|
/* 023A0FA4 */ _t21 = cpu->r[1] + 0x00000028u;
|
|
/* 023A0FA4 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 023A0FA8 */ _t22 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023A0FA8 */ rbrew_write_f32(cpu->mem, _t22, cpu->f[11]);
|
|
/* 023A0FAC */ _t23 = cpu->r[11] + 0x00000190u;
|
|
/* 023A0FAC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 023A0FB0 */ cpu->f[12] = cpu->f[0] - cpu->f[9];
|
|
/* 023A0FB4 */ cpu->f[9] = cpu->f[9] + cpu->f[12];
|
|
/* 023A0FB8 */ _t24 = cpu->r[1] + 0x00000010u;
|
|
/* 023A0FB8 */ rbrew_write_f32(cpu->mem, _t24, cpu->f[9]);
|
|
/* 023A0FBC */ _t25 = cpu->r[11] + 0x00000188u;
|
|
/* 023A0FBC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 023A0FC0 */ cpu->f[10] = cpu->f[13] - cpu->f[12];
|
|
/* 023A0FC4 */ cpu->f[12] = fma(cpu->f[10], cpu->f[31], cpu->f[12]);
|
|
/* 023A0FC8 */ _t26 = cpu->r[31] + 0x000000F8u;
|
|
/* 023A0FC8 */ rbrew_write_f32(cpu->mem, _t26, cpu->f[12]);
|
|
/* 023A0FCC */ _t27 = cpu->r[11] + 0x0000018Cu;
|
|
/* 023A0FCC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 023A0FD0 */ cpu->f[0] = cpu->f[11] - cpu->f[12];
|
|
/* 023A0FD4 */ cpu->f[10] = fma(cpu->f[0], cpu->f[31], cpu->f[12]);
|
|
/* 023A0FD8 */ _t28 = cpu->r[31] + 0x000000FCu;
|
|
/* 023A0FD8 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[10]);
|
|
/* 023A0FDC */ _t29 = cpu->r[11] + 0x00000190u;
|
|
/* 023A0FDC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 023A0FE0 */ cpu->f[0] = cpu->f[9] - cpu->f[12];
|
|
/* 023A0FE4 */ cpu->f[13] = fma(cpu->f[0], cpu->f[31], cpu->f[12]);
|
|
/* 023A0FE8 */ _t30 = cpu->r[31] + 0x00000100u;
|
|
/* 023A0FE8 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[13]);
|
|
/* 023A0FEC */ _t31 = cpu->r[1] + 0x00000038u;
|
|
/* 023A0FEC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 023A0FF0 */ _t32 = cpu->r[1] + 0x0000002Cu;
|
|
/* 023A0FF0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t32);
|
|
/* 023A0FF4 */ _t33 = cpu->r[1] + 0x00000030u;
|
|
/* 023A0FF4 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t33);
|
|
/* 023A0FF8 */ _t34 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 023A0FF8 */ _t35 = _t34 & 0x00000001u;
|
|
/* 023A0FF8 */ if (_t35) goto L_023A0FFC; // else: addr-0 trap, fall-through
|
|
L_023A0FFC: ; // 0x23a0ffc
|
|
/* 023A0FFC */ _t36 = cpu->r[1] + 0x00000044u;
|
|
/* 023A0FFC */ cpu->r[0] = rbrew_read32(cpu->mem, _t36);
|
|
/* 023A1000 */ cpu->lr = cpu->r[0];
|
|
/* 023A1004 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 023A1008 */ return;
|
|
}
|
|
|
|
// fn_023A1010 @ 0x23a1010
|
|
void Gambit_fn_023A1010(CPUState* cpu) {
|
|
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_023A1010: ; // 0x23a1010
|
|
/* 023A1010 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 023A1010 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 023A1010 */ cpu->r[1] = _t0;
|
|
/* 023A1014 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 023A1014 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 023A1018 */ cpu->r[12] = 0x10080000u;
|
|
/* 023A101C */ cpu->r[31] = cpu->r[3];
|
|
/* 023A1020 */ cpu->r[4] = cpu->r[31] + 0x00000114u;
|
|
/* 023A1024 */ _t2 = cpu->r[12] + 0x00007050u;
|
|
/* 023A1024 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 023A1028 */ cpu->r[11] = 0x10080000u;
|
|
/* 023A102C */ _t3 = cpu->r[11] + 0x0000704Cu;
|
|
/* 023A102C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 023A1030 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 023A1030 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 023A1034 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 023A1038 */ _t5 = cpu->r[31] + 0x00000110u;
|
|
/* 023A1038 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[0]);
|
|
/* 023A103C */ Gambit_fn_0239F80C(cpu);
|
|
/* 023A1040 */ cpu->r[12] = 0x101C0000u;
|
|
/* 023A1044 */ _t6 = cpu->r[12] + 0x00006000u;
|
|
/* 023A1044 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 023A1048 */ _t7 = cpu->r[12] + 0x000002A0u;
|
|
/* 023A1048 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 023A104C */ _t8 = cpu->r[11] + 0x00000188u;
|
|
/* 023A104C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 023A1050 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 023A1050 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 023A1054 */ cpu->f[0] = cpu->f[11] - cpu->f[10];
|
|
/* 023A1058 */ cpu->f[12] = cpu->f[10] + cpu->f[0];
|
|
/* 023A105C */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023A105C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 023A1060 */ _t11 = cpu->r[31] + 0x000000F8u;
|
|
/* 023A1060 */ rbrew_write_f32(cpu->mem, _t11, cpu->f[12]);
|
|
/* 023A1064 */ _t12 = cpu->r[11] + 0x0000018Cu;
|
|
/* 023A1064 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 023A1068 */ cpu->f[13] = cpu->f[11] - cpu->f[10];
|
|
/* 023A106C */ cpu->f[13] = cpu->f[10] + cpu->f[13];
|
|
/* 023A1070 */ _t13 = cpu->r[1] + 0x00000010u;
|
|
/* 023A1070 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 023A1074 */ _t14 = cpu->r[31] + 0x000000FCu;
|
|
/* 023A1074 */ rbrew_write_f32(cpu->mem, _t14, cpu->f[13]);
|
|
/* 023A1078 */ _t15 = cpu->r[11] + 0x00000190u;
|
|
/* 023A1078 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 023A107C */ cpu->f[0] = cpu->f[11] - cpu->f[10];
|
|
/* 023A1080 */ _t16 = cpu->r[31] + 0x00000108u;
|
|
/* 023A1080 */ rbrew_write_f32(cpu->mem, _t16, cpu->f[13]);
|
|
/* 023A1084 */ cpu->f[13] = cpu->f[10] + cpu->f[0];
|
|
/* 023A1088 */ _t17 = cpu->r[31] + 0x00000104u;
|
|
/* 023A1088 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[12]);
|
|
/* 023A108C */ _t18 = cpu->r[31] + 0x00000100u;
|
|
/* 023A108C */ rbrew_write_f32(cpu->mem, _t18, cpu->f[13]);
|
|
/* 023A1090 */ _t19 = cpu->r[31] + 0x0000010Cu;
|
|
/* 023A1090 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[13]);
|
|
/* 023A1094 */ _t20 = cpu->r[1] + 0x0000001Cu;
|
|
/* 023A1094 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 023A1098 */ _t21 = cpu->r[1] + 0x00000014u;
|
|
/* 023A1098 */ cpu->r[31] = rbrew_read32(cpu->mem, _t21);
|
|
/* 023A109C */ cpu->lr = cpu->r[0];
|
|
/* 023A10A0 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 023A10A4 */ return;
|
|
}
|
|
|
|
// fn_023A10A8 @ 0x23a10a8
|
|
void Gambit_fn_023A10A8(CPUState* 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_023A10A8: ; // 0x23a10a8
|
|
/* 023A10A8 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 023A10A8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 023A10A8 */ cpu->r[1] = _t0;
|
|
/* 023A10AC */ cpu->r[12] = 0x10080000u;
|
|
/* 023A10B0 */ _t1 = cpu->r[3] + 0x00000058u;
|
|
/* 023A10B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 023A10B4 */ cpu->r[11] = 0x43300000u;
|
|
/* 023A10B8 */ _t2 = cpu->r[12] + 0x00007190u;
|
|
/* 023A10B8 */ cpu->f[12] = rbrew_read_f64(cpu->mem, _t2);
|
|
/* 023A10BC */ cpu->r[0] = cpu->r[0] ^ 0x80000000u;
|
|
/* 023A10C0 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 023A10C0 */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 023A10C4 */ cpu->r[12] = 0x10080000u;
|
|
/* 023A10C8 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023A10C8 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 023A10CC */ _t5 = cpu->r[1] + 0x00000008u;
|
|
/* 023A10CC */ cpu->f[10] = rbrew_read_f64(cpu->mem, _t5);
|
|
/* 023A10D0 */ _t6 = cpu->r[12] + 0x0000704Cu;
|
|
/* 023A10D0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 023A10D4 */ cpu->f[12] = cpu->f[10] - cpu->f[12];
|
|
/* 023A10D8 */ cpu->r[12] = 0x10080000u;
|
|
/* 023A10DC */ _t7 = cpu->r[12] + 0x0000719Cu;
|
|
/* 023A10DC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 023A10E0 */ cpu->f[12] = (double)(float)cpu->f[12];
|
|
/* 023A10E4 */ cpu->r[12] = 0x10080000u;
|
|
/* 023A10E8 */ cpu->f[9] = cpu->f[12] / cpu->f[13];
|
|
/* 023A10EC */ _t8 = cpu->r[3] + 0x00000104u;
|
|
/* 023A10EC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 023A10F0 */ _t9 = cpu->r[12] + 0x00007050u;
|
|
/* 023A10F0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 023A10F4 */ cpu->f[10] = fma(cpu->f[0], cpu->f[9], cpu->f[11]);
|
|
/* 023A10F8 */ cpu->r[12] = 0x101C0000u;
|
|
/* 023A10FC */ _t10 = cpu->r[3] + 0x00000110u;
|
|
/* 023A10FC */ rbrew_write_f32(cpu->mem, _t10, cpu->f[10]);
|
|
/* 023A1100 */ _t11 = cpu->r[12] + 0x00006000u;
|
|
/* 023A1100 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 023A1104 */ _t12 = cpu->r[12] + 0x000002A0u;
|
|
/* 023A1104 */ cpu->r[11] = rbrew_read32(cpu->mem, _t12);
|
|
/* 023A1108 */ _t13 = cpu->r[11] + 0x00000188u;
|
|
/* 023A1108 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 023A110C */ cpu->f[11] = cpu->f[0] - cpu->f[12];
|
|
/* 023A1110 */ cpu->f[10] = fma(cpu->f[11], cpu->f[9], cpu->f[12]);
|
|
/* 023A1114 */ _t14 = cpu->r[3] + 0x00000108u;
|
|
/* 023A1114 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 023A1118 */ _t15 = cpu->r[3] + 0x000000F8u;
|
|
/* 023A1118 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[10]);
|
|
/* 023A111C */ _t16 = cpu->r[11] + 0x0000018Cu;
|
|
/* 023A111C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 023A1120 */ cpu->f[11] = cpu->f[13] - cpu->f[12];
|
|
/* 023A1124 */ cpu->f[0] = fma(cpu->f[11], cpu->f[9], cpu->f[12]);
|
|
/* 023A1128 */ _t17 = cpu->r[3] + 0x0000010Cu;
|
|
/* 023A1128 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 023A112C */ _t18 = cpu->r[3] + 0x000000FCu;
|
|
/* 023A112C */ rbrew_write_f32(cpu->mem, _t18, cpu->f[0]);
|
|
/* 023A1130 */ _t19 = cpu->r[11] + 0x00000190u;
|
|
/* 023A1130 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 023A1134 */ cpu->f[11] = cpu->f[13] - cpu->f[12];
|
|
/* 023A1138 */ cpu->f[0] = fma(cpu->f[11], cpu->f[9], cpu->f[12]);
|
|
/* 023A113C */ _t20 = cpu->r[3] + 0x00000100u;
|
|
/* 023A113C */ rbrew_write_f32(cpu->mem, _t20, cpu->f[0]);
|
|
/* 023A1140 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 023A1144 */ return;
|
|
}
|
|
|
|
// fn_023A1148 @ 0x23a1148
|
|
void Gambit_fn_023A1148(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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;
|
|
|
|
L_023A0EC8: ; // 0x23a0ec8
|
|
/* 023A0EC8 */ cpu->r[12] = 0x101C0000u;
|
|
/* 023A0ECC */ _t0 = cpu->r[12] + 0x00006000u;
|
|
/* 023A0ECC */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 023A0ED0 */ _t1 = cpu->r[12] + 0x000002A0u;
|
|
/* 023A0ED0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 023A0ED4 */ _t2 = cpu->r[12] + 0x00000188u;
|
|
/* 023A0ED4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 023A0ED8 */ cpu->r[11] = 0x10080000u;
|
|
/* 023A0EDC */ _t3 = cpu->r[3] + 0x000000F8u;
|
|
/* 023A0EDC */ rbrew_write_f32(cpu->mem, _t3, cpu->f[13]);
|
|
/* 023A0EE0 */ _t4 = cpu->r[12] + 0x0000018Cu;
|
|
/* 023A0EE0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 023A0EE4 */ _t5 = cpu->r[11] + 0x00007050u;
|
|
/* 023A0EE4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 023A0EE8 */ _t6 = cpu->r[3] + 0x000000FCu;
|
|
/* 023A0EE8 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[13]);
|
|
/* 023A0EEC */ _t7 = cpu->r[12] + 0x00000190u;
|
|
/* 023A0EEC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 023A0EF0 */ _t8 = cpu->r[3] + 0x00000110u;
|
|
/* 023A0EF0 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[0]);
|
|
/* 023A0EF4 */ _t9 = cpu->r[3] + 0x00000100u;
|
|
/* 023A0EF4 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[13]);
|
|
/* 023A0EF8 */ return;
|
|
L_023A0EFC: ; // 0x23a0efc
|
|
/* 023A0EFC */ cpu->r[0] = cpu->lr;
|
|
/* 023A0F00 */ _t10 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 023A0F00 */ rbrew_write32(cpu->mem, _t10, cpu->r[1]);
|
|
/* 023A0F00 */ cpu->r[1] = _t10;
|
|
/* 023A0F04 */ _t11 = cpu->r[1] + 0x00000030u;
|
|
/* 023A0F04 */ rbrew_write_f64(cpu->mem, _t11, cpu->f[31]);
|
|
/* 023A0F08 */ /* nop */
|
|
/* 023A0F0C */ _t12 = cpu->r[1] + 0x00000038u;
|
|
/* 023A0F0C */ rbrew_write_f32(cpu->mem, _t12, cpu->f[31]);
|
|
/* 023A0F10 */ cpu->r[11] = 0x43300000u;
|
|
/* 023A0F14 */ _t13 = cpu->r[1] + 0x00000018u;
|
|
/* 023A0F14 */ rbrew_write32(cpu->mem, _t13, cpu->r[11]);
|
|
/* 023A0F18 */ _t14 = cpu->r[1] + 0x00000044u;
|
|
/* 023A0F18 */ rbrew_write32(cpu->mem, _t14, cpu->r[0]);
|
|
/* 023A0F1C */ _t15 = cpu->r[1] + 0x0000002Cu;
|
|
/* 023A0F1C */ rbrew_write32(cpu->mem, _t15, cpu->r[31]);
|
|
/* 023A0F20 */ cpu->r[31] = cpu->r[3];
|
|
/* 023A0F24 */ cpu->r[12] = 0x10080000u;
|
|
/* 023A0F28 */ _t16 = cpu->r[31] + 0x00000058u;
|
|
/* 023A0F28 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 023A0F2C */ _t17 = cpu->r[12] + 0x00007190u;
|
|
/* 023A0F2C */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t17);
|
|
/* 023A0F30 */ cpu->r[0] = cpu->r[0] ^ 0x80000000u;
|
|
/* 023A0F34 */ cpu->r[12] = 0x10080000u;
|
|
/* 023A0F38 */ _t18 = cpu->r[1] + 0x0000001Cu;
|
|
/* 023A0F38 */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
/* 023A0F3C */ _t19 = cpu->r[1] + 0x00000018u;
|
|
/* 023A0F3C */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t19);
|
|
/* 023A0F40 */ _t20 = cpu->r[12] + 0x0000704Cu;
|
|
/* 023A0F40 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 023A0F44 */ cpu->f[10] = cpu->f[0] - cpu->f[13];
|
|
/* 023A0F48 */ cpu->r[12] = 0x10080000u;
|
|
/* 023A0F4C */ cpu->f[10] = (double)(float)cpu->f[10];
|
|
/* 023A0F50 */ _t21 = cpu->r[12] + 0x00007198u;
|
|
/* 023A0F50 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 023A0F54 */ cpu->r[11] = 0x10080000u;
|
|
/* 023A0F58 */ cpu->f[31] = cpu->f[10] * cpu->f[11];
|
|
/* 023A0F5C */ _t22 = cpu->r[11] + 0x00007050u;
|
|
/* 023A0F5C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 023A0F60 */ cpu->f[11] = fma(cpu->f[1], cpu->f[31], cpu->f[0]);
|
|
/* 023A0F64 */ cpu->r[4] = cpu->r[31] + 0x00000114u;
|
|
/* 023A0F68 */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 023A0F6C */ _t23 = cpu->r[31] + 0x00000110u;
|
|
/* 023A0F6C */ rbrew_write_f32(cpu->mem, _t23, cpu->f[11]);
|
|
/* 023A0F70 */ Gambit_fn_0239F80C(cpu);
|
|
/* 023A0F74 */ cpu->r[12] = 0x101C0000u;
|
|
/* 023A0F78 */ _t24 = cpu->r[12] + 0x00006000u;
|
|
/* 023A0F78 */ cpu->r[12] = rbrew_read32(cpu->mem, _t24);
|
|
/* 023A0F7C */ _t25 = cpu->r[12] + 0x000002A0u;
|
|
/* 023A0F7C */ cpu->r[11] = rbrew_read32(cpu->mem, _t25);
|
|
/* 023A0F80 */ _t26 = cpu->r[1] + 0x00000020u;
|
|
/* 023A0F80 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 023A0F84 */ _t27 = cpu->r[11] + 0x00000188u;
|
|
/* 023A0F84 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 023A0F88 */ cpu->f[13] = cpu->f[0] - cpu->f[9];
|
|
/* 023A0F8C */ cpu->f[13] = cpu->f[9] + cpu->f[13];
|
|
/* 023A0F90 */ _t28 = cpu->r[1] + 0x00000024u;
|
|
/* 023A0F90 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 023A0F94 */ _t29 = cpu->r[1] + 0x00000008u;
|
|
/* 023A0F94 */ rbrew_write_f32(cpu->mem, _t29, cpu->f[13]);
|
|
/* 023A0F98 */ _t30 = cpu->r[11] + 0x0000018Cu;
|
|
/* 023A0F98 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 023A0F9C */ cpu->f[10] = cpu->f[11] - cpu->f[9];
|
|
/* 023A0FA0 */ cpu->f[11] = cpu->f[9] + cpu->f[10];
|
|
/* 023A0FA4 */ _t31 = cpu->r[1] + 0x00000028u;
|
|
/* 023A0FA4 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 023A0FA8 */ _t32 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023A0FA8 */ rbrew_write_f32(cpu->mem, _t32, cpu->f[11]);
|
|
/* 023A0FAC */ _t33 = cpu->r[11] + 0x00000190u;
|
|
/* 023A0FAC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 023A0FB0 */ cpu->f[12] = cpu->f[0] - cpu->f[9];
|
|
/* 023A0FB4 */ cpu->f[9] = cpu->f[9] + cpu->f[12];
|
|
/* 023A0FB8 */ _t34 = cpu->r[1] + 0x00000010u;
|
|
/* 023A0FB8 */ rbrew_write_f32(cpu->mem, _t34, cpu->f[9]);
|
|
/* 023A0FBC */ _t35 = cpu->r[11] + 0x00000188u;
|
|
/* 023A0FBC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 023A0FC0 */ cpu->f[10] = cpu->f[13] - cpu->f[12];
|
|
/* 023A0FC4 */ cpu->f[12] = fma(cpu->f[10], cpu->f[31], cpu->f[12]);
|
|
/* 023A0FC8 */ _t36 = cpu->r[31] + 0x000000F8u;
|
|
/* 023A0FC8 */ rbrew_write_f32(cpu->mem, _t36, cpu->f[12]);
|
|
/* 023A0FCC */ _t37 = cpu->r[11] + 0x0000018Cu;
|
|
/* 023A0FCC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 023A0FD0 */ cpu->f[0] = cpu->f[11] - cpu->f[12];
|
|
/* 023A0FD4 */ cpu->f[10] = fma(cpu->f[0], cpu->f[31], cpu->f[12]);
|
|
/* 023A0FD8 */ _t38 = cpu->r[31] + 0x000000FCu;
|
|
/* 023A0FD8 */ rbrew_write_f32(cpu->mem, _t38, cpu->f[10]);
|
|
/* 023A0FDC */ _t39 = cpu->r[11] + 0x00000190u;
|
|
/* 023A0FDC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t39);
|
|
/* 023A0FE0 */ cpu->f[0] = cpu->f[9] - cpu->f[12];
|
|
/* 023A0FE4 */ cpu->f[13] = fma(cpu->f[0], cpu->f[31], cpu->f[12]);
|
|
/* 023A0FE8 */ _t40 = cpu->r[31] + 0x00000100u;
|
|
/* 023A0FE8 */ rbrew_write_f32(cpu->mem, _t40, cpu->f[13]);
|
|
/* 023A0FEC */ _t41 = cpu->r[1] + 0x00000038u;
|
|
/* 023A0FEC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 023A0FF0 */ _t42 = cpu->r[1] + 0x0000002Cu;
|
|
/* 023A0FF0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t42);
|
|
/* 023A0FF4 */ _t43 = cpu->r[1] + 0x00000030u;
|
|
/* 023A0FF4 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t43);
|
|
/* 023A0FF8 */ _t44 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 023A0FF8 */ _t45 = _t44 & 0x00000001u;
|
|
/* 023A0FF8 */ if (_t45) goto L_023A0FFC; // else: addr-0 trap, fall-through
|
|
L_023A0FFC: ; // 0x23a0ffc
|
|
/* 023A0FFC */ _t46 = cpu->r[1] + 0x00000044u;
|
|
/* 023A0FFC */ cpu->r[0] = rbrew_read32(cpu->mem, _t46);
|
|
/* 023A1000 */ cpu->lr = cpu->r[0];
|
|
/* 023A1004 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 023A1008 */ return;
|
|
L_023A100C: ; // 0x23a100c
|
|
/* 023A100C */ cpu->r[0] = cpu->lr;
|
|
/* 023A1010 */ _t47 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 023A1010 */ rbrew_write32(cpu->mem, _t47, cpu->r[1]);
|
|
/* 023A1010 */ cpu->r[1] = _t47;
|
|
/* 023A1014 */ _t48 = cpu->r[1] + 0x00000014u;
|
|
/* 023A1014 */ rbrew_write32(cpu->mem, _t48, cpu->r[31]);
|
|
/* 023A1018 */ cpu->r[12] = 0x10080000u;
|
|
/* 023A101C */ cpu->r[31] = cpu->r[3];
|
|
/* 023A1020 */ cpu->r[4] = cpu->r[31] + 0x00000114u;
|
|
/* 023A1024 */ _t49 = cpu->r[12] + 0x00007050u;
|
|
/* 023A1024 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t49);
|
|
/* 023A1028 */ cpu->r[11] = 0x10080000u;
|
|
/* 023A102C */ _t50 = cpu->r[11] + 0x0000704Cu;
|
|
/* 023A102C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t50);
|
|
/* 023A1030 */ _t51 = cpu->r[1] + 0x0000001Cu;
|
|
/* 023A1030 */ rbrew_write32(cpu->mem, _t51, cpu->r[0]);
|
|
/* 023A1034 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 023A1038 */ _t52 = cpu->r[31] + 0x00000110u;
|
|
/* 023A1038 */ rbrew_write_f32(cpu->mem, _t52, cpu->f[0]);
|
|
/* 023A103C */ Gambit_fn_0239F80C(cpu);
|
|
/* 023A1040 */ cpu->r[12] = 0x101C0000u;
|
|
/* 023A1044 */ _t53 = cpu->r[12] + 0x00006000u;
|
|
/* 023A1044 */ cpu->r[12] = rbrew_read32(cpu->mem, _t53);
|
|
/* 023A1048 */ _t54 = cpu->r[12] + 0x000002A0u;
|
|
/* 023A1048 */ cpu->r[11] = rbrew_read32(cpu->mem, _t54);
|
|
/* 023A104C */ _t55 = cpu->r[11] + 0x00000188u;
|
|
/* 023A104C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t55);
|
|
/* 023A1050 */ _t56 = cpu->r[1] + 0x00000008u;
|
|
/* 023A1050 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 023A1054 */ cpu->f[0] = cpu->f[11] - cpu->f[10];
|
|
/* 023A1058 */ cpu->f[12] = cpu->f[10] + cpu->f[0];
|
|
/* 023A105C */ _t57 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023A105C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t57);
|
|
/* 023A1060 */ _t58 = cpu->r[31] + 0x000000F8u;
|
|
/* 023A1060 */ rbrew_write_f32(cpu->mem, _t58, cpu->f[12]);
|
|
/* 023A1064 */ _t59 = cpu->r[11] + 0x0000018Cu;
|
|
/* 023A1064 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t59);
|
|
/* 023A1068 */ cpu->f[13] = cpu->f[11] - cpu->f[10];
|
|
/* 023A106C */ cpu->f[13] = cpu->f[10] + cpu->f[13];
|
|
/* 023A1070 */ _t60 = cpu->r[1] + 0x00000010u;
|
|
/* 023A1070 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t60);
|
|
/* 023A1074 */ _t61 = cpu->r[31] + 0x000000FCu;
|
|
/* 023A1074 */ rbrew_write_f32(cpu->mem, _t61, cpu->f[13]);
|
|
/* 023A1078 */ _t62 = cpu->r[11] + 0x00000190u;
|
|
/* 023A1078 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t62);
|
|
/* 023A107C */ cpu->f[0] = cpu->f[11] - cpu->f[10];
|
|
/* 023A1080 */ _t63 = cpu->r[31] + 0x00000108u;
|
|
/* 023A1080 */ rbrew_write_f32(cpu->mem, _t63, cpu->f[13]);
|
|
/* 023A1084 */ cpu->f[13] = cpu->f[10] + cpu->f[0];
|
|
/* 023A1088 */ _t64 = cpu->r[31] + 0x00000104u;
|
|
/* 023A1088 */ rbrew_write_f32(cpu->mem, _t64, cpu->f[12]);
|
|
/* 023A108C */ _t65 = cpu->r[31] + 0x00000100u;
|
|
/* 023A108C */ rbrew_write_f32(cpu->mem, _t65, cpu->f[13]);
|
|
/* 023A1090 */ _t66 = cpu->r[31] + 0x0000010Cu;
|
|
/* 023A1090 */ rbrew_write_f32(cpu->mem, _t66, cpu->f[13]);
|
|
/* 023A1094 */ _t67 = cpu->r[1] + 0x0000001Cu;
|
|
/* 023A1094 */ cpu->r[0] = rbrew_read32(cpu->mem, _t67);
|
|
/* 023A1098 */ _t68 = cpu->r[1] + 0x00000014u;
|
|
/* 023A1098 */ cpu->r[31] = rbrew_read32(cpu->mem, _t68);
|
|
/* 023A109C */ cpu->lr = cpu->r[0];
|
|
/* 023A10A0 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 023A10A4 */ return;
|
|
L_023A10A8: ; // 0x23a10a8
|
|
/* 023A10A8 */ _t69 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 023A10A8 */ rbrew_write32(cpu->mem, _t69, cpu->r[1]);
|
|
/* 023A10A8 */ cpu->r[1] = _t69;
|
|
/* 023A10AC */ cpu->r[12] = 0x10080000u;
|
|
/* 023A10B0 */ _t70 = cpu->r[3] + 0x00000058u;
|
|
/* 023A10B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t70);
|
|
/* 023A10B4 */ cpu->r[11] = 0x43300000u;
|
|
/* 023A10B8 */ _t71 = cpu->r[12] + 0x00007190u;
|
|
/* 023A10B8 */ cpu->f[12] = rbrew_read_f64(cpu->mem, _t71);
|
|
/* 023A10BC */ cpu->r[0] = cpu->r[0] ^ 0x80000000u;
|
|
/* 023A10C0 */ _t72 = cpu->r[1] + 0x00000008u;
|
|
/* 023A10C0 */ rbrew_write32(cpu->mem, _t72, cpu->r[11]);
|
|
/* 023A10C4 */ cpu->r[12] = 0x10080000u;
|
|
/* 023A10C8 */ _t73 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023A10C8 */ rbrew_write32(cpu->mem, _t73, cpu->r[0]);
|
|
/* 023A10CC */ _t74 = cpu->r[1] + 0x00000008u;
|
|
/* 023A10CC */ cpu->f[10] = rbrew_read_f64(cpu->mem, _t74);
|
|
/* 023A10D0 */ _t75 = cpu->r[12] + 0x0000704Cu;
|
|
/* 023A10D0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t75);
|
|
/* 023A10D4 */ cpu->f[12] = cpu->f[10] - cpu->f[12];
|
|
/* 023A10D8 */ cpu->r[12] = 0x10080000u;
|
|
/* 023A10DC */ _t76 = cpu->r[12] + 0x0000719Cu;
|
|
/* 023A10DC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t76);
|
|
/* 023A10E0 */ cpu->f[12] = (double)(float)cpu->f[12];
|
|
/* 023A10E4 */ cpu->r[12] = 0x10080000u;
|
|
/* 023A10E8 */ cpu->f[9] = cpu->f[12] / cpu->f[13];
|
|
/* 023A10EC */ _t77 = cpu->r[3] + 0x00000104u;
|
|
/* 023A10EC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t77);
|
|
/* 023A10F0 */ _t78 = cpu->r[12] + 0x00007050u;
|
|
/* 023A10F0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t78);
|
|
/* 023A10F4 */ cpu->f[10] = fma(cpu->f[0], cpu->f[9], cpu->f[11]);
|
|
/* 023A10F8 */ cpu->r[12] = 0x101C0000u;
|
|
/* 023A10FC */ _t79 = cpu->r[3] + 0x00000110u;
|
|
/* 023A10FC */ rbrew_write_f32(cpu->mem, _t79, cpu->f[10]);
|
|
/* 023A1100 */ _t80 = cpu->r[12] + 0x00006000u;
|
|
/* 023A1100 */ cpu->r[12] = rbrew_read32(cpu->mem, _t80);
|
|
/* 023A1104 */ _t81 = cpu->r[12] + 0x000002A0u;
|
|
/* 023A1104 */ cpu->r[11] = rbrew_read32(cpu->mem, _t81);
|
|
/* 023A1108 */ _t82 = cpu->r[11] + 0x00000188u;
|
|
/* 023A1108 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t82);
|
|
/* 023A110C */ cpu->f[11] = cpu->f[0] - cpu->f[12];
|
|
/* 023A1110 */ cpu->f[10] = fma(cpu->f[11], cpu->f[9], cpu->f[12]);
|
|
/* 023A1114 */ _t83 = cpu->r[3] + 0x00000108u;
|
|
/* 023A1114 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t83);
|
|
/* 023A1118 */ _t84 = cpu->r[3] + 0x000000F8u;
|
|
/* 023A1118 */ rbrew_write_f32(cpu->mem, _t84, cpu->f[10]);
|
|
/* 023A111C */ _t85 = cpu->r[11] + 0x0000018Cu;
|
|
/* 023A111C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t85);
|
|
/* 023A1120 */ cpu->f[11] = cpu->f[13] - cpu->f[12];
|
|
/* 023A1124 */ cpu->f[0] = fma(cpu->f[11], cpu->f[9], cpu->f[12]);
|
|
/* 023A1128 */ _t86 = cpu->r[3] + 0x0000010Cu;
|
|
/* 023A1128 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t86);
|
|
/* 023A112C */ _t87 = cpu->r[3] + 0x000000FCu;
|
|
/* 023A112C */ rbrew_write_f32(cpu->mem, _t87, cpu->f[0]);
|
|
/* 023A1130 */ _t88 = cpu->r[11] + 0x00000190u;
|
|
/* 023A1130 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t88);
|
|
/* 023A1134 */ cpu->f[11] = cpu->f[13] - cpu->f[12];
|
|
/* 023A1138 */ cpu->f[0] = fma(cpu->f[11], cpu->f[9], cpu->f[12]);
|
|
/* 023A113C */ _t89 = cpu->r[3] + 0x00000100u;
|
|
/* 023A113C */ rbrew_write_f32(cpu->mem, _t89, cpu->f[0]);
|
|
/* 023A1140 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 023A1144 */ return;
|
|
L_023A1148: ; // 0x23a1148
|
|
/* 023A1148 */ _t90 = cpu->r[3] + 0x0000005Cu;
|
|
/* 023A1148 */ cpu->r[0] = rbrew_read8(cpu->mem, _t90);
|
|
/* 023A114C */ /* nop */
|
|
/* 023A1150 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000001u);
|
|
/* 023A1154 */ _t91 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 023A1154 */ _t92 = _t91 & 0x00000001u;
|
|
/* 023A1154 */ if (_t92) goto L_023A116C; else goto L_023A1158;
|
|
L_023A1158: ; // 0x23a1158
|
|
/* 023A1158 */ _t93 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A1158 */ _t94 = _t93 & 0x00000001u;
|
|
/* 023A1158 */ if (_t94) goto L_023A1170; else goto L_023A115C;
|
|
L_023A115C: ; // 0x23a115c
|
|
/* 023A115C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000003u);
|
|
/* 023A1160 */ _t95 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 023A1160 */ _t96 = _t95 & 0x00000001u;
|
|
/* 023A1160 */ if (_t96) goto L_023A1174; else goto L_023A1164;
|
|
L_023A1164: ; // 0x23a1164
|
|
/* 023A1164 */ _t97 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A1164 */ _t98 = _t97 & 0x00000001u;
|
|
/* 023A1164 */ if (_t98) goto L_023A1178; else goto L_023A1168;
|
|
L_023A1168: ; // 0x23a1168
|
|
/* 023A1168 */ return;
|
|
L_023A116C: ; // 0x23a116c
|
|
/* 023A116C */ goto L_023A0EC8;
|
|
L_023A1170: ; // 0x23a1170
|
|
/* 023A1170 */ goto L_023A0EFC;
|
|
L_023A1174: ; // 0x23a1174
|
|
/* 023A1174 */ goto L_023A100C;
|
|
L_023A1178: ; // 0x23a1178
|
|
/* 023A1178 */ goto L_023A10A8;
|
|
}
|
|
|
|
// fn_023A117C @ 0x23a117c
|
|
void Gambit_fn_023A117C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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;
|
|
|
|
L_023A117C: ; // 0x23a117c
|
|
/* 023A117C */ _t0 = cpu->r[1] + 0xFFFFFEF8u;
|
|
/* 023A117C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 023A117C */ cpu->r[1] = _t0;
|
|
/* 023A1180 */ /* nop */
|
|
/* 023A1184 */ _t1 = cpu->r[1] + 0x000000E8u;
|
|
/* 023A1184 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[30]);
|
|
/* 023A1188 */ /* nop */
|
|
/* 023A118C */ _t2 = cpu->r[1] + 0x000000F0u;
|
|
/* 023A118C */ rbrew_write_f32(cpu->mem, _t2, cpu->f[30]);
|
|
/* 023A1190 */ _t3 = cpu->r[1] + 0x000000F8u;
|
|
/* 023A1190 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[31]);
|
|
/* 023A1194 */ cpu->r[0] = cpu->lr;
|
|
/* 023A1198 */ _t4 = cpu->r[1] + 0x0000010Cu;
|
|
/* 023A1198 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 023A119C */ /* nop */
|
|
/* 023A11A0 */ _t5 = cpu->r[1] + 0x00000100u;
|
|
/* 023A11A0 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[31]);
|
|
/* 023A11A4 */ cpu->r[31] = 0x101C0000u;
|
|
/* 023A11A8 */ _t6 = cpu->r[31] + 0x00006000u;
|
|
/* 023A11A8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t6);
|
|
/* 023A11AC */ _t7 = cpu->r[9] + 0x00000268u;
|
|
/* 023A11AC */ cpu->r[30] = rbrew_read32(cpu->mem, _t7);
|
|
/* 023A11B0 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023A11B0 */ rbrew_write32(cpu->mem, _t8, cpu->r[3]);
|
|
/* 023A11B4 */ cpu->r[3] = cpu->r[30];
|
|
/* 023A11B8 */ Gambit_fn_0261F774(cpu);
|
|
/* 023A11BC */ cpu->r[4] = cpu->r[3];
|
|
/* 023A11C0 */ cpu->r[3] = cpu->r[30];
|
|
/* 023A11C4 */ Gambit_fn_0261F55C(cpu);
|
|
/* 023A11C8 */ cpu->r[9] = 0x101C0000u;
|
|
/* 023A11CC */ _t9 = cpu->r[31] + 0x00006000u;
|
|
/* 023A11CC */ cpu->r[8] = rbrew_read32(cpu->mem, _t9);
|
|
/* 023A11D0 */ _t10 = cpu->r[9] + 0x00007228u;
|
|
/* 023A11D0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t10);
|
|
/* 023A11D4 */ _t11 = cpu->r[8] + 0x00000268u;
|
|
/* 023A11D4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t11);
|
|
/* 023A11D8 */ cpu->r[10] = cpu->r[7] + cpu->r[9];
|
|
/* 023A11DC */ _t12 = cpu->r[10] + 0x00000104u;
|
|
/* 023A11DC */ cpu->r[12] = rbrew_read8(cpu->mem, _t12);
|
|
/* 023A11E0 */ _t13 = cpu->r[7] + 0x00000030u;
|
|
/* 023A11E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 023A11E4 */ cpu->r[11] = rbrew_rlwinm(cpu->r[12], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 023A11E8 */ _t14 = cpu->r[11] + cpu->r[0];
|
|
/* 023A11E8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t14);
|
|
/* 023A11EC */ _t15 = cpu->r[4] + 0x00000008u;
|
|
/* 023A11EC */ cpu->r[6] = rbrew_read32(cpu->mem, _t15);
|
|
/* 023A11F0 */ _t16 = cpu->r[6] + 0x0000000Cu;
|
|
/* 023A11F0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t16);
|
|
/* 023A11F4 */ _t17 = cpu->r[6] + 0x00000004u;
|
|
/* 023A11F4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t17);
|
|
/* 023A11F8 */ cpu->r[21] = cpu->r[3];
|
|
/* 023A11FC */ cpu->r[28] = cpu->r[6] - cpu->r[8];
|
|
/* 023A1200 */ _t18 = cpu->r[1] + 0x00000008u;
|
|
/* 023A1200 */ rbrew_write32(cpu->mem, _t18, cpu->r[8]);
|
|
/* 023A1204 */ cpu->r[31] = cpu->r[5] - cpu->r[8];
|
|
/* 023A1208 */ cpu->r[10] = cpu->r[28];
|
|
/* 023A120C */ goto L_023A121C;
|
|
L_023A1210: ; // 0x23a1210
|
|
/* 023A1210 */ cpu->r[5] = cpu->r[31] + cpu->r[8];
|
|
/* 023A1214 */ _t19 = cpu->r[5] + 0x00000004u;
|
|
/* 023A1214 */ cpu->r[7] = rbrew_read32(cpu->mem, _t19);
|
|
/* 023A1218 */ cpu->r[31] = cpu->r[7] - cpu->r[8];
|
|
L_023A121C: ; // 0x23a121c
|
|
/* 023A121C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[10]);
|
|
/* 023A1220 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A1220 */ _t21 = _t20 & 0x00000001u;
|
|
/* 023A1220 */ if (_t21) goto L_023A1238; else goto L_023A1224;
|
|
L_023A1224: ; // 0x23a1224
|
|
/* 023A1224 */ _t22 = cpu->r[31] + 0x0000001Cu;
|
|
/* 023A1224 */ cpu->r[9] = rbrew_read32(cpu->mem, _t22);
|
|
/* 023A1228 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000002u);
|
|
/* 023A122C */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A122C */ _t24 = _t23 & 0x00000001u;
|
|
/* 023A122C */ if (_t24) goto L_023A1238; else goto L_023A1230;
|
|
L_023A1230: ; // 0x23a1230
|
|
/* 023A1230 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000003u);
|
|
/* 023A1234 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A1234 */ _t26 = _t25 & 0x00000001u;
|
|
/* 023A1234 */ if (_t26) goto L_023A1238; else goto L_023A1210;
|
|
L_023A1238: ; // 0x23a1238
|
|
/* 023A1238 */ cpu->r[4] = 0x10080000u;
|
|
/* 023A123C */ _t27 = cpu->r[4] + 0x00007050u;
|
|
/* 023A123C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t27);
|
|
L_023A1240: ; // 0x23a1240
|
|
/* 023A1240 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[28]);
|
|
/* 023A1244 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A1244 */ _t29 = _t28 & 0x00000001u;
|
|
/* 023A1244 */ if (_t29) goto L_023A17F0; else goto L_023A1248;
|
|
L_023A1248: ; // 0x23a1248
|
|
/* 023A1248 */ cpu->f[30] = cpu->f[31];
|
|
/* 023A124C */ cpu->r[22] = 0x101D0000u;
|
|
/* 023A1250 */ cpu->r[24] = 0x101F0000u;
|
|
/* 023A1254 */ cpu->r[23] = 0x00000001u;
|
|
/* 023A1258 */ cpu->r[14] = 0x101D0000u;
|
|
/* 023A125C */ cpu->r[24] = cpu->r[24] + 0x00006350u;
|
|
/* 023A1260 */ cpu->r[15] = 0x101D0000u;
|
|
/* 023A1264 */ _t30 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023A1264 */ cpu->r[4] = rbrew_read32(cpu->mem, _t30);
|
|
/* 023A1268 */ cpu->r[6] = cpu->r[1] + 0x0000004Cu;
|
|
/* 023A126C */ cpu->r[25] = 0x101D0000u;
|
|
/* 023A1270 */ cpu->r[26] = 0x101D0000u;
|
|
/* 023A1274 */ _t31 = cpu->r[1] + 0x00000010u;
|
|
/* 023A1274 */ rbrew_write32(cpu->mem, _t31, cpu->r[6]);
|
|
/* 023A1278 */ cpu->r[0] = cpu->r[4] + 0x00000228u;
|
|
/* 023A127C */ cpu->r[26] = cpu->r[26] + 0x0000048Cu;
|
|
/* 023A1280 */ cpu->r[30] = cpu->r[4] + 0x00000288u;
|
|
/* 023A1284 */ cpu->r[27] = 0x00000002u;
|
|
/* 023A1288 */ _t32 = cpu->r[1] + 0x00000014u;
|
|
/* 023A1288 */ rbrew_write32(cpu->mem, _t32, cpu->r[0]);
|
|
L_023A128C: ; // 0x23a128c
|
|
/* 023A128C */ _t33 = cpu->r[31] + 0x0000002Cu;
|
|
/* 023A128C */ cpu->r[7] = rbrew_read32(cpu->mem, _t33);
|
|
/* 023A1290 */ _t34 = cpu->r[21] + 0x0000002Cu;
|
|
/* 023A1290 */ cpu->r[5] = rbrew_read32(cpu->mem, _t34);
|
|
/* 023A1294 */ cpu->r[10] = cpu->r[7] ^ cpu->r[5];
|
|
/* 023A1298 */ cpu->r[0] = rbrew_clz32(cpu->r[10]);
|
|
/* 023A129C */ cpu->r[3] = cpu->r[31];
|
|
/* 023A12A0 */ cpu->r[16] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 023A12A4 */ Gambit_fn_025ADDAC(cpu);
|
|
/* 023A12A8 */ _t35 = cpu->r[31] + 0x00000468u;
|
|
/* 023A12A8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t35);
|
|
/* 023A12AC */ cpu->r[6] = cpu->r[3] + 0xFFFFFFFFu;
|
|
/* 023A12B0 */ cpu->r[11] = 0x00000001u;
|
|
/* 023A12B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 023A12B8 */ cpu->r[17] = cpu->r[3] - cpu->r[6];
|
|
/* 023A12BC */ _t36 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 023A12BC */ _t37 = _t36 & 0x00000001u;
|
|
/* 023A12BC */ if (_t37) goto L_023A12DC; else goto L_023A12C0;
|
|
L_023A12C0: ; // 0x23a12c0
|
|
/* 023A12C0 */ _t38 = cpu->r[31] + 0x0000046Cu;
|
|
/* 023A12C0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t38);
|
|
/* 023A12C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 023A12C8 */ _t39 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 023A12C8 */ _t40 = _t39 & 0x00000001u;
|
|
/* 023A12C8 */ if (_t40) goto L_023A12DC; else goto L_023A12CC;
|
|
L_023A12CC: ; // 0x23a12cc
|
|
/* 023A12CC */ _t41 = cpu->r[31] + 0x00000474u;
|
|
/* 023A12CC */ cpu->r[10] = rbrew_read32(cpu->mem, _t41);
|
|
/* 023A12D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 023A12D4 */ _t42 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 023A12D4 */ _t43 = _t42 & 0x00000001u;
|
|
/* 023A12D4 */ if (_t43) goto L_023A12DC; else goto L_023A12D8;
|
|
L_023A12D8: ; // 0x23a12d8
|
|
/* 023A12D8 */ cpu->r[11] = 0x00000000u;
|
|
L_023A12DC: ; // 0x23a12dc
|
|
/* 023A12DC */ _t44 = cpu->r[31] + 0x00000489u;
|
|
/* 023A12DC */ cpu->r[8] = rbrew_read8(cpu->mem, _t44);
|
|
/* 023A12E0 */ cpu->r[3] = cpu->r[21];
|
|
/* 023A12E4 */ cpu->r[18] = rbrew_rlwinm(cpu->r[11], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 023A12E8 */ _t45 = cpu->r[1] + 0x00000018u;
|
|
/* 023A12E8 */ rbrew_write8(cpu->mem, _t45, (uint8_t)cpu->r[8]);
|
|
/* 023A12EC */ Gambit_fn_025C6590(cpu);
|
|
/* 023A12F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023A12F4 */ _t46 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A12F4 */ _t47 = _t46 & 0x00000001u;
|
|
/* 023A12F4 */ if (_t47) goto L_023A1324; else goto L_023A12F8;
|
|
L_023A12F8: ; // 0x23a12f8
|
|
/* 023A12F8 */ _t48 = cpu->r[21] + 0x00000725u;
|
|
/* 023A12F8 */ cpu->r[5] = rbrew_read8(cpu->mem, _t48);
|
|
/* 023A12FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 023A1300 */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A1300 */ _t50 = _t49 & 0x00000001u;
|
|
/* 023A1300 */ if (_t50) goto L_023A1324; else goto L_023A1304;
|
|
L_023A1304: ; // 0x23a1304
|
|
/* 023A1304 */ cpu->r[29] = 0x00000001u;
|
|
/* 023A1308 */ cpu->r[3] = cpu->r[21];
|
|
/* 023A130C */ Gambit_fn_025C65A8(cpu);
|
|
/* 023A1310 */ _t51 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023A1310 */ cpu->r[6] = rbrew_read32(cpu->mem, _t51);
|
|
/* 023A1314 */ _t52 = cpu->r[6] + 0x000002D4u;
|
|
/* 023A1314 */ cpu->r[5] = rbrew_read8(cpu->mem, _t52);
|
|
/* 023A1318 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 023A131C */ _t53 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A131C */ _t54 = _t53 & 0x00000001u;
|
|
/* 023A131C */ if (_t54) goto L_023A13AC; else goto L_023A1320;
|
|
L_023A1320: ; // 0x23a1320
|
|
/* 023A1320 */ goto L_023A13A8;
|
|
L_023A1324: ; // 0x23a1324
|
|
/* 023A1324 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[17], 0x00000000u);
|
|
/* 023A1328 */ _t55 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A1328 */ _t56 = _t55 & 0x00000001u;
|
|
/* 023A1328 */ if (_t56) goto L_023A1368; else goto L_023A132C;
|
|
L_023A132C: ; // 0x23a132c
|
|
/* 023A132C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[16], 0x00000000u);
|
|
/* 023A1330 */ cpu->r[0] = 0x00000001u;
|
|
/* 023A1334 */ _t57 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A1334 */ _t58 = _t57 & 0x00000001u;
|
|
/* 023A1334 */ if (_t58) goto L_023A1338; else goto L_023A1350;
|
|
L_023A1338: ; // 0x23a1338
|
|
/* 023A1338 */ _t59 = cpu->r[31] + 0x00000518u;
|
|
/* 023A1338 */ cpu->r[7] = rbrew_read8(cpu->mem, _t59);
|
|
/* 023A133C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 023A1340 */ _t60 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A1340 */ _t61 = _t60 & 0x00000001u;
|
|
/* 023A1340 */ if (_t61) goto L_023A1350; else goto L_023A1344;
|
|
L_023A1344: ; // 0x23a1344
|
|
/* 023A1344 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[18], 0x00000000u);
|
|
/* 023A1348 */ _t62 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A1348 */ _t63 = _t62 & 0x00000001u;
|
|
/* 023A1348 */ if (_t63) goto L_023A134C; else goto L_023A1350;
|
|
L_023A134C: ; // 0x23a134c
|
|
/* 023A134C */ cpu->r[0] = 0x00000000u;
|
|
L_023A1350: ; // 0x23a1350
|
|
/* 023A1350 */ cpu->r[29] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 023A1354 */ _t64 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023A1354 */ cpu->r[6] = rbrew_read32(cpu->mem, _t64);
|
|
/* 023A1358 */ _t65 = cpu->r[6] + 0x000002D4u;
|
|
/* 023A1358 */ cpu->r[5] = rbrew_read8(cpu->mem, _t65);
|
|
/* 023A135C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 023A1360 */ _t66 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A1360 */ _t67 = _t66 & 0x00000001u;
|
|
/* 023A1360 */ if (_t67) goto L_023A13AC; else goto L_023A1364;
|
|
L_023A1364: ; // 0x23a1364
|
|
/* 023A1364 */ goto L_023A13A8;
|
|
L_023A1368: ; // 0x23a1368
|
|
/* 023A1368 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[16], 0x00000000u);
|
|
/* 023A136C */ cpu->r[29] = 0x00000001u;
|
|
/* 023A1370 */ _t68 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A1370 */ _t69 = _t68 & 0x00000001u;
|
|
/* 023A1370 */ if (_t69) goto L_023A1374; else goto L_023A1394;
|
|
L_023A1374: ; // 0x23a1374
|
|
/* 023A1374 */ _t70 = cpu->r[31] + 0x000007DCu;
|
|
/* 023A1374 */ cpu->r[9] = rbrew_read8(cpu->mem, _t70);
|
|
/* 023A1378 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 023A137C */ _t71 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A137C */ _t72 = _t71 & 0x00000001u;
|
|
/* 023A137C */ if (_t72) goto L_023A1380; else goto L_023A1394;
|
|
L_023A1380: ; // 0x23a1380
|
|
/* 023A1380 */ cpu->r[3] = cpu->r[31];
|
|
/* 023A1384 */ Gambit_fn_025C8334(cpu);
|
|
/* 023A1388 */ cpu->r[11] = cpu->r[3] | cpu->r[18];
|
|
/* 023A1388 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 023A138C */ _t73 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A138C */ _t74 = _t73 & 0x00000001u;
|
|
/* 023A138C */ if (_t74) goto L_023A1390; else goto L_023A1394;
|
|
L_023A1390: ; // 0x23a1390
|
|
/* 023A1390 */ cpu->r[29] = cpu->r[18];
|
|
L_023A1394: ; // 0x23a1394
|
|
/* 023A1394 */ cpu->r[29] = rbrew_rlwinm(cpu->r[29], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 023A1398 */ _t75 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023A1398 */ cpu->r[6] = rbrew_read32(cpu->mem, _t75);
|
|
/* 023A139C */ _t76 = cpu->r[6] + 0x000002D4u;
|
|
/* 023A139C */ cpu->r[5] = rbrew_read8(cpu->mem, _t76);
|
|
/* 023A13A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 023A13A4 */ _t77 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A13A4 */ _t78 = _t77 & 0x00000001u;
|
|
/* 023A13A4 */ if (_t78) goto L_023A13AC; else goto L_023A13A8;
|
|
L_023A13A8: ; // 0x23a13a8
|
|
/* 023A13A8 */ cpu->r[29] = 0x00000000u;
|
|
L_023A13AC: ; // 0x23a13ac
|
|
/* 023A13AC */ _t79 = cpu->r[31] + 0x00000098u;
|
|
/* 023A13AC */ cpu->r[19] = rbrew_read32(cpu->mem, _t79);
|
|
/* 023A13B0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[19], 0x00000008u);
|
|
/* 023A13B4 */ _t80 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 023A13B4 */ _t81 = _t80 & 0x00000001u;
|
|
/* 023A13B4 */ if (_t81) goto L_023A13B8; else goto L_023A13D0;
|
|
L_023A13B8: ; // 0x23a13b8
|
|
/* 023A13B8 */ cpu->r[7] = (uint32_t)((int32_t)cpu->r[19] * (int32_t)0x0000000Cu);
|
|
/* 023A13BC */ _t82 = cpu->r[1] + 0x00000014u;
|
|
/* 023A13BC */ cpu->r[4] = rbrew_read32(cpu->mem, _t82);
|
|
/* 023A13C0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[19], 0x00000008u);
|
|
/* 023A13C4 */ cpu->r[20] = cpu->r[4] + cpu->r[7];
|
|
/* 023A13C8 */ _t83 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 023A13C8 */ _t84 = _t83 & 0x00000001u;
|
|
/* 023A13C8 */ if (_t84) goto L_023A13DC; else goto L_023A13CC;
|
|
L_023A13CC: ; // 0x23a13cc
|
|
/* 023A13CC */ goto L_023A13F0;
|
|
L_023A13D0: ; // 0x23a13d0
|
|
/* 023A13D0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[19], 0x00000008u);
|
|
/* 023A13D4 */ _t85 = cpu->r[1] + 0x00000014u;
|
|
/* 023A13D4 */ cpu->r[20] = rbrew_read32(cpu->mem, _t85);
|
|
/* 023A13D8 */ _t86 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 023A13D8 */ _t87 = _t86 & 0x00000001u;
|
|
/* 023A13D8 */ if (_t87) goto L_023A13DC; else goto L_023A13F0;
|
|
L_023A13DC: ; // 0x23a13dc
|
|
/* 023A13DC */ cpu->r[10] = rbrew_rlwinm(cpu->r[19], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 023A13E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 023A13E4 */ _t88 = cpu->r[30] + cpu->r[10];
|
|
/* 023A13E4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t88);
|
|
/* 023A13E8 */ _t89 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A13E8 */ _t90 = _t89 & 0x00000001u;
|
|
/* 023A13E8 */ if (_t90) goto L_023A13FC; else goto L_023A13EC;
|
|
L_023A13EC: ; // 0x23a13ec
|
|
/* 023A13EC */ goto L_023A1484;
|
|
L_023A13F0: ; // 0x23a13f0
|
|
/* 023A13F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 023A13F4 */ _t91 = cpu->r[30] + 0x00000000u;
|
|
/* 023A13F4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t91);
|
|
/* 023A13F8 */ _t92 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A13F8 */ _t93 = _t92 & 0x00000001u;
|
|
/* 023A13F8 */ if (_t93) goto L_023A13FC; else goto L_023A1484;
|
|
L_023A13FC: ; // 0x23a13fc
|
|
/* 023A13FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 023A1400 */ _t94 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A1400 */ _t95 = _t94 & 0x00000001u;
|
|
/* 023A1400 */ if (_t95) goto L_023A17B4; else goto L_023A1404;
|
|
L_023A1404: ; // 0x23a1404
|
|
/* 023A1404 */ _t96 = cpu->r[20] + 0x00000000u;
|
|
/* 023A1404 */ cpu->r[18] = rbrew_read32(cpu->mem, _t96);
|
|
/* 023A1408 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[18], 0x00000000u);
|
|
/* 023A140C */ _t97 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A140C */ _t98 = _t97 & 0x00000001u;
|
|
/* 023A140C */ if (_t98) goto L_023A1448; else goto L_023A1410;
|
|
L_023A1410: ; // 0x23a1410
|
|
/* 023A1410 */ _t99 = cpu->r[18] + 0x0000000Cu;
|
|
/* 023A1410 */ cpu->r[12] = rbrew_read32(cpu->mem, _t99);
|
|
/* 023A1414 */ _t100 = cpu->r[20] + 0x00000004u;
|
|
/* 023A1414 */ cpu->r[0] = rbrew_read32(cpu->mem, _t100);
|
|
/* 023A1418 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[0]);
|
|
/* 023A141C */ _t101 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A141C */ _t102 = _t101 & 0x00000001u;
|
|
/* 023A141C */ if (_t102) goto L_023A1420; else goto L_023A1448;
|
|
L_023A1420: ; // 0x23a1420
|
|
/* 023A1420 */ cpu->r[29] = cpu->r[18];
|
|
/* 023A1424 */ _t103 = cpu->r[29] + 0x00000028u;
|
|
/* 023A1424 */ cpu->r[3] = rbrew_read32(cpu->mem, _t103);
|
|
/* 023A1428 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023A142C */ _t104 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A142C */ _t105 = _t104 & 0x00000001u;
|
|
/* 023A142C */ if (_t105) goto L_023A1444; else goto L_023A1430;
|
|
L_023A1430: ; // 0x23a1430
|
|
/* 023A1430 */ _t106 = cpu->r[3] + 0x00000050u;
|
|
/* 023A1430 */ cpu->r[5] = rbrew_read32(cpu->mem, _t106);
|
|
/* 023A1434 */ _t107 = cpu->r[5] + 0x00000024u;
|
|
/* 023A1434 */ cpu->r[7] = rbrew_read32(cpu->mem, _t107);
|
|
/* 023A1438 */ cpu->ctr = cpu->r[7];
|
|
/* 023A143C */ cpu->r[4] = 0xFFFFFFFFu;
|
|
/* 023A1440 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_023A1444: ; // 0x23a1444
|
|
/* 023A1444 */ _t108 = cpu->r[29] + 0x0000004Cu;
|
|
/* 023A1444 */ rbrew_write8(cpu->mem, _t108, (uint8_t)cpu->r[23]);
|
|
L_023A1448: ; // 0x23a1448
|
|
/* 023A1448 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[19], 0x00000008u);
|
|
/* 023A144C */ _t109 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 023A144C */ _t110 = _t109 & 0x00000001u;
|
|
/* 023A144C */ if (_t110) goto L_023A1450; else goto L_023A146C;
|
|
L_023A1450: ; // 0x23a1450
|
|
/* 023A1450 */ cpu->r[8] = rbrew_rlwinm(cpu->r[19], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 023A1454 */ cpu->r[9] = 0x00000000u;
|
|
/* 023A1458 */ _t111 = cpu->r[30] + cpu->r[8];
|
|
/* 023A1458 */ rbrew_write32(cpu->mem, _t111, cpu->r[9]);
|
|
/* 023A145C */ _t112 = cpu->r[30] + cpu->r[8];
|
|
/* 023A145C */ cpu->r[9] = rbrew_read32(cpu->mem, _t112);
|
|
/* 023A1460 */ cpu->r[12] = cpu->r[28];
|
|
/* 023A1464 */ _t113 = cpu->r[1] + 0x00000008u;
|
|
/* 023A1464 */ cpu->r[11] = rbrew_read32(cpu->mem, _t113);
|
|
/* 023A1468 */ goto L_023A17BC;
|
|
L_023A146C: ; // 0x23a146c
|
|
/* 023A146C */ cpu->r[9] = 0x00000000u;
|
|
/* 023A1470 */ _t114 = cpu->r[30] + 0x00000000u;
|
|
/* 023A1470 */ rbrew_write32(cpu->mem, _t114, cpu->r[9]);
|
|
/* 023A1474 */ _t115 = cpu->r[30] + 0x00000000u;
|
|
/* 023A1474 */ cpu->r[9] = rbrew_read32(cpu->mem, _t115);
|
|
/* 023A1478 */ cpu->r[12] = cpu->r[28];
|
|
/* 023A147C */ _t116 = cpu->r[1] + 0x00000008u;
|
|
/* 023A147C */ cpu->r[11] = rbrew_read32(cpu->mem, _t116);
|
|
/* 023A1480 */ goto L_023A17BC;
|
|
L_023A1484: ; // 0x23a1484
|
|
/* 023A1484 */ _t117 = cpu->r[1] + 0x00000018u;
|
|
/* 023A1484 */ cpu->r[0] = rbrew_read8(cpu->mem, _t117);
|
|
/* 023A1488 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 023A148C */ _t118 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A148C */ _t119 = _t118 & 0x00000001u;
|
|
/* 023A148C */ if (_t119) goto L_023A14AC; else goto L_023A1490;
|
|
L_023A1490: ; // 0x23a1490
|
|
/* 023A1490 */ cpu->r[17] = 0x00000006u;
|
|
/* 023A1494 */ _t120 = cpu->r[1] + 0x0000007Cu;
|
|
/* 023A1494 */ rbrew_write32(cpu->mem, _t120, cpu->r[17]);
|
|
/* 023A1498 */ _t121 = cpu->r[1] + 0x0000007Cu;
|
|
/* 023A1498 */ cpu->r[11] = rbrew_read32(cpu->mem, _t121);
|
|
/* 023A149C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[17], cpu->r[29]);
|
|
/* 023A14A0 */ _t122 = cpu->r[1] + 0x00000080u;
|
|
/* 023A14A0 */ rbrew_write32(cpu->mem, _t122, cpu->r[11]);
|
|
/* 023A14A4 */ _t123 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A14A4 */ _t124 = _t123 & 0x00000001u;
|
|
/* 023A14A4 */ if (_t124) goto L_023A158C; else goto L_023A14A8;
|
|
L_023A14A8: ; // 0x23a14a8
|
|
/* 023A14A8 */ goto L_023A15B4;
|
|
L_023A14AC: ; // 0x23a14ac
|
|
/* 023A14AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[18], 0x00000000u);
|
|
/* 023A14B0 */ _t125 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A14B0 */ _t126 = _t125 & 0x00000001u;
|
|
/* 023A14B0 */ if (_t126) goto L_023A14D0; else goto L_023A14B4;
|
|
L_023A14B4: ; // 0x23a14b4
|
|
/* 023A14B4 */ cpu->r[17] = 0x00000005u;
|
|
/* 023A14B8 */ _t127 = cpu->r[1] + 0x0000007Cu;
|
|
/* 023A14B8 */ rbrew_write32(cpu->mem, _t127, cpu->r[17]);
|
|
/* 023A14BC */ _t128 = cpu->r[1] + 0x0000007Cu;
|
|
/* 023A14BC */ cpu->r[11] = rbrew_read32(cpu->mem, _t128);
|
|
/* 023A14C0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[17], cpu->r[29]);
|
|
/* 023A14C4 */ _t129 = cpu->r[1] + 0x00000084u;
|
|
/* 023A14C4 */ rbrew_write32(cpu->mem, _t129, cpu->r[11]);
|
|
/* 023A14C8 */ _t130 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A14C8 */ _t131 = _t130 & 0x00000001u;
|
|
/* 023A14C8 */ if (_t131) goto L_023A158C; else goto L_023A14CC;
|
|
L_023A14CC: ; // 0x23a14cc
|
|
/* 023A14CC */ goto L_023A15B4;
|
|
L_023A14D0: ; // 0x23a14d0
|
|
/* 023A14D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[17], 0x00000000u);
|
|
/* 023A14D4 */ _t132 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A14D4 */ _t133 = _t132 & 0x00000001u;
|
|
/* 023A14D4 */ if (_t133) goto L_023A14F4; else goto L_023A14D8;
|
|
L_023A14D8: ; // 0x23a14d8
|
|
/* 023A14D8 */ cpu->r[17] = 0x00000004u;
|
|
/* 023A14DC */ _t134 = cpu->r[1] + 0x0000007Cu;
|
|
/* 023A14DC */ rbrew_write32(cpu->mem, _t134, cpu->r[17]);
|
|
/* 023A14E0 */ _t135 = cpu->r[1] + 0x0000007Cu;
|
|
/* 023A14E0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t135);
|
|
/* 023A14E4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[17], cpu->r[29]);
|
|
/* 023A14E8 */ _t136 = cpu->r[1] + 0x00000088u;
|
|
/* 023A14E8 */ rbrew_write32(cpu->mem, _t136, cpu->r[11]);
|
|
/* 023A14EC */ _t137 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A14EC */ _t138 = _t137 & 0x00000001u;
|
|
/* 023A14EC */ if (_t138) goto L_023A158C; else goto L_023A14F0;
|
|
L_023A14F0: ; // 0x23a14f0
|
|
/* 023A14F0 */ goto L_023A15B4;
|
|
L_023A14F4: ; // 0x23a14f4
|
|
/* 023A14F4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[21]);
|
|
/* 023A14F8 */ _t139 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A14F8 */ _t140 = _t139 & 0x00000001u;
|
|
/* 023A14F8 */ if (_t140) goto L_023A14FC; else goto L_023A1518;
|
|
L_023A14FC: ; // 0x23a14fc
|
|
/* 023A14FC */ cpu->r[17] = cpu->r[23];
|
|
/* 023A1500 */ _t141 = cpu->r[1] + 0x0000007Cu;
|
|
/* 023A1500 */ rbrew_write32(cpu->mem, _t141, cpu->r[17]);
|
|
/* 023A1504 */ _t142 = cpu->r[1] + 0x0000007Cu;
|
|
/* 023A1504 */ cpu->r[11] = rbrew_read32(cpu->mem, _t142);
|
|
/* 023A1508 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[17], cpu->r[29]);
|
|
/* 023A150C */ _t143 = cpu->r[1] + 0x0000008Cu;
|
|
/* 023A150C */ rbrew_write32(cpu->mem, _t143, cpu->r[11]);
|
|
/* 023A1510 */ _t144 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A1510 */ _t145 = _t144 & 0x00000001u;
|
|
/* 023A1510 */ if (_t145) goto L_023A158C; else goto L_023A1514;
|
|
L_023A1514: ; // 0x23a1514
|
|
/* 023A1514 */ goto L_023A15B4;
|
|
L_023A1518: ; // 0x23a1518
|
|
/* 023A1518 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[16], 0x00000000u);
|
|
/* 023A151C */ _t146 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A151C */ _t147 = _t146 & 0x00000001u;
|
|
/* 023A151C */ if (_t147) goto L_023A153C; else goto L_023A1520;
|
|
L_023A1520: ; // 0x23a1520
|
|
/* 023A1520 */ cpu->r[17] = cpu->r[27];
|
|
/* 023A1524 */ _t148 = cpu->r[1] + 0x0000007Cu;
|
|
/* 023A1524 */ rbrew_write32(cpu->mem, _t148, cpu->r[17]);
|
|
/* 023A1528 */ _t149 = cpu->r[1] + 0x0000007Cu;
|
|
/* 023A1528 */ cpu->r[11] = rbrew_read32(cpu->mem, _t149);
|
|
/* 023A152C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[17], cpu->r[29]);
|
|
/* 023A1530 */ _t150 = cpu->r[1] + 0x00000090u;
|
|
/* 023A1530 */ rbrew_write32(cpu->mem, _t150, cpu->r[11]);
|
|
/* 023A1534 */ _t151 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A1534 */ _t152 = _t151 & 0x00000001u;
|
|
/* 023A1534 */ if (_t152) goto L_023A158C; else goto L_023A1538;
|
|
L_023A1538: ; // 0x23a1538
|
|
/* 023A1538 */ goto L_023A15B4;
|
|
L_023A153C: ; // 0x23a153c
|
|
/* 023A153C */ _t153 = cpu->r[31] + 0x000007DCu;
|
|
/* 023A153C */ cpu->r[10] = rbrew_read8(cpu->mem, _t153);
|
|
/* 023A1540 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 023A1544 */ _t154 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A1544 */ _t155 = _t154 & 0x00000001u;
|
|
/* 023A1544 */ if (_t155) goto L_023A1548; else goto L_023A1558;
|
|
L_023A1548: ; // 0x23a1548
|
|
/* 023A1548 */ cpu->r[3] = cpu->r[31];
|
|
/* 023A154C */ Gambit_fn_025C8334(cpu);
|
|
/* 023A1550 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023A1554 */ _t156 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A1554 */ _t157 = _t156 & 0x00000001u;
|
|
/* 023A1554 */ if (_t157) goto L_023A1574; else goto L_023A1558;
|
|
L_023A1558: ; // 0x23a1558
|
|
/* 023A1558 */ cpu->r[17] = 0x00000003u;
|
|
/* 023A155C */ _t158 = cpu->r[1] + 0x0000007Cu;
|
|
/* 023A155C */ rbrew_write32(cpu->mem, _t158, cpu->r[17]);
|
|
/* 023A1560 */ _t159 = cpu->r[1] + 0x0000007Cu;
|
|
/* 023A1560 */ cpu->r[11] = rbrew_read32(cpu->mem, _t159);
|
|
/* 023A1564 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[17], cpu->r[29]);
|
|
/* 023A1568 */ _t160 = cpu->r[1] + 0x00000094u;
|
|
/* 023A1568 */ rbrew_write32(cpu->mem, _t160, cpu->r[11]);
|
|
/* 023A156C */ _t161 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A156C */ _t162 = _t161 & 0x00000001u;
|
|
/* 023A156C */ if (_t162) goto L_023A158C; else goto L_023A1570;
|
|
L_023A1570: ; // 0x23a1570
|
|
/* 023A1570 */ goto L_023A15B4;
|
|
L_023A1574: ; // 0x23a1574
|
|
/* 023A1574 */ cpu->r[17] = cpu->r[27];
|
|
/* 023A1578 */ _t163 = cpu->r[1] + 0x0000007Cu;
|
|
/* 023A1578 */ rbrew_write32(cpu->mem, _t163, cpu->r[17]);
|
|
/* 023A157C */ _t164 = cpu->r[1] + 0x0000007Cu;
|
|
/* 023A157C */ cpu->r[11] = rbrew_read32(cpu->mem, _t164);
|
|
/* 023A1580 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[17], cpu->r[29]);
|
|
/* 023A1584 */ _t165 = cpu->r[1] + 0x00000098u;
|
|
/* 023A1584 */ rbrew_write32(cpu->mem, _t165, cpu->r[11]);
|
|
/* 023A1588 */ _t166 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A1588 */ _t167 = _t166 & 0x00000001u;
|
|
/* 023A1588 */ if (_t167) goto L_023A158C; else goto L_023A15B4;
|
|
L_023A158C: ; // 0x23a158c
|
|
/* 023A158C */ _t168 = cpu->r[20] + 0x00000000u;
|
|
/* 023A158C */ cpu->r[18] = rbrew_read32(cpu->mem, _t168);
|
|
/* 023A1590 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[18], 0x00000000u);
|
|
/* 023A1594 */ _t169 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A1594 */ _t170 = _t169 & 0x00000001u;
|
|
/* 023A1594 */ if (_t170) goto L_023A15A8; else goto L_023A1598;
|
|
L_023A1598: ; // 0x23a1598
|
|
/* 023A1598 */ _t171 = cpu->r[18] + 0x0000000Cu;
|
|
/* 023A1598 */ cpu->r[12] = rbrew_read32(cpu->mem, _t171);
|
|
/* 023A159C */ _t172 = cpu->r[20] + 0x00000004u;
|
|
/* 023A159C */ cpu->r[4] = rbrew_read32(cpu->mem, _t172);
|
|
/* 023A15A0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[4]);
|
|
/* 023A15A4 */ _t173 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A15A4 */ _t174 = _t173 & 0x00000001u;
|
|
/* 023A15A4 */ if (_t174) goto L_023A16B4; else goto L_023A15A8;
|
|
L_023A15A8: ; // 0x23a15a8
|
|
/* 023A15A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[17], 0x00000005u);
|
|
/* 023A15AC */ _t175 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A15AC */ _t176 = _t175 & 0x00000001u;
|
|
/* 023A15AC */ if (_t176) goto L_023A16B4; else goto L_023A15B0;
|
|
L_023A15B0: ; // 0x23a15b0
|
|
/* 023A15B0 */ goto L_023A15E0;
|
|
L_023A15B4: ; // 0x23a15b4
|
|
/* 023A15B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[17], 0x00000005u);
|
|
/* 023A15B8 */ _t177 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A15B8 */ _t178 = _t177 & 0x00000001u;
|
|
/* 023A15B8 */ if (_t178) goto L_023A15BC; else goto L_023A15E0;
|
|
L_023A15BC: ; // 0x23a15bc
|
|
/* 023A15BC */ _t179 = cpu->r[20] + 0x00000000u;
|
|
/* 023A15BC */ cpu->r[18] = rbrew_read32(cpu->mem, _t179);
|
|
/* 023A15C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[18], 0x00000000u);
|
|
/* 023A15C4 */ _t180 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A15C4 */ _t181 = _t180 & 0x00000001u;
|
|
/* 023A15C4 */ if (_t181) goto L_023A15E0; else goto L_023A15C8;
|
|
L_023A15C8: ; // 0x23a15c8
|
|
/* 023A15C8 */ _t182 = cpu->r[18] + 0x0000000Cu;
|
|
/* 023A15C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t182);
|
|
/* 023A15CC */ _t183 = cpu->r[20] + 0x00000004u;
|
|
/* 023A15CC */ cpu->r[6] = rbrew_read32(cpu->mem, _t183);
|
|
/* 023A15D0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[6]);
|
|
/* 023A15D4 */ _t184 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A15D4 */ _t185 = _t184 & 0x00000001u;
|
|
/* 023A15D4 */ if (_t185) goto L_023A15D8; else goto L_023A15E0;
|
|
L_023A15D8: ; // 0x23a15d8
|
|
/* 023A15D8 */ cpu->r[3] = cpu->r[18];
|
|
/* 023A15DC */ Gambit_fn_028A545C(cpu);
|
|
L_023A15E0: ; // 0x23a15e0
|
|
/* 023A15E0 */ _t186 = cpu->r[15] + 0x00000488u;
|
|
/* 023A15E0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t186);
|
|
/* 023A15E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 023A15E8 */ _t187 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A15E8 */ _t188 = _t187 & 0x00000001u;
|
|
/* 023A15E8 */ if (_t188) goto L_023A15EC; else goto L_023A1604;
|
|
L_023A15EC: ; // 0x23a15ec
|
|
/* 023A15EC */ cpu->r[4] = 0x101C0000u;
|
|
/* 023A15F0 */ cpu->r[3] = cpu->r[25] + 0x00004FB7u;
|
|
/* 023A15F4 */ cpu->r[5] = 0x0000004Eu;
|
|
/* 023A15F8 */ cpu->r[4] = cpu->r[4] + 0x00005BB0u;
|
|
/* 023A15FC */ _t189 = cpu->r[15] + 0x00000488u;
|
|
/* 023A15FC */ rbrew_write32(cpu->mem, _t189, cpu->r[23]);
|
|
/* 023A1600 */ rbrew_dispatch(cpu, 0x02d0b870u);
|
|
L_023A1604: ; // 0x23a1604
|
|
/* 023A1604 */ _t190 = cpu->r[14] + 0x00000484u;
|
|
/* 023A1604 */ cpu->r[11] = rbrew_read32(cpu->mem, _t190);
|
|
/* 023A1608 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 023A160C */ _t191 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A160C */ _t192 = _t191 & 0x00000001u;
|
|
/* 023A160C */ if (_t192) goto L_023A1610; else goto L_023A161C;
|
|
L_023A1610: ; // 0x23a1610
|
|
/* 023A1610 */ _t193 = cpu->r[14] + 0x00000484u;
|
|
/* 023A1610 */ rbrew_write32(cpu->mem, _t193, cpu->r[23]);
|
|
/* 023A1614 */ cpu->r[12] = 0x00000000u;
|
|
/* 023A1618 */ _t194 = cpu->r[22] + 0x00000480u;
|
|
/* 023A1618 */ rbrew_write32(cpu->mem, _t194, cpu->r[12]);
|
|
L_023A161C: ; // 0x23a161c
|
|
/* 023A161C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[17], 0x00000007u);
|
|
/* 023A1620 */ _t195 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 023A1620 */ _t196 = _t195 & 0x00000001u;
|
|
/* 023A1620 */ if (_t196) goto L_023A1648; else goto L_023A1624;
|
|
L_023A1624: ; // 0x23a1624
|
|
/* 023A1624 */ cpu->r[5] = 0x00000000u;
|
|
/* 023A1628 */ _t197 = cpu->r[31] + 0x00000030u;
|
|
/* 023A1628 */ cpu->r[3] = rbrew_read32(cpu->mem, _t197);
|
|
/* 023A162C */ cpu->r[4] = cpu->r[20];
|
|
/* 023A1630 */ cpu->r[6] = cpu->r[5];
|
|
/* 023A1634 */ Gambit_fn_027B72F0(cpu);
|
|
/* 023A1638 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[19], 0x00000008u);
|
|
/* 023A163C */ _t198 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 023A163C */ _t199 = _t198 & 0x00000001u;
|
|
/* 023A163C */ if (_t199) goto L_023A16AC; else goto L_023A1640;
|
|
L_023A1640: ; // 0x23a1640
|
|
/* 023A1640 */ _t200 = cpu->r[30] + 0x00000000u;
|
|
/* 023A1640 */ rbrew_write32(cpu->mem, _t200, cpu->r[17]);
|
|
/* 023A1644 */ goto L_023A16B4;
|
|
L_023A1648: ; // 0x23a1648
|
|
/* 023A1648 */ _t201 = cpu->r[22] + 0x00000480u;
|
|
/* 023A1648 */ cpu->r[12] = rbrew_read32(cpu->mem, _t201);
|
|
/* 023A164C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 023A1650 */ _t202 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A1650 */ _t203 = _t202 & 0x00000001u;
|
|
/* 023A1650 */ if (_t203) goto L_023A1654; else goto L_023A168C;
|
|
L_023A1654: ; // 0x23a1654
|
|
/* 023A1654 */ Gambit_fn_0282A450(cpu);
|
|
/* 023A1658 */ cpu->r[18] = cpu->r[3];
|
|
/* 023A165C */ Gambit_fn_02836FFC(cpu);
|
|
/* 023A1660 */ _t204 = cpu->r[22] + 0x00000480u;
|
|
/* 023A1660 */ cpu->r[4] = rbrew_read32(cpu->mem, _t204);
|
|
/* 023A1664 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 023A1668 */ _t205 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A1668 */ _t206 = _t205 & 0x00000001u;
|
|
/* 023A1668 */ if (_t206) goto L_023A166C; else goto L_023A1680;
|
|
L_023A166C: ; // 0x23a166c
|
|
/* 023A166C */ cpu->r[5] = 0x00000007u;
|
|
/* 023A1670 */ cpu->r[4] = cpu->r[25] + 0x00004FB7u;
|
|
/* 023A1674 */ cpu->r[3] = cpu->r[26];
|
|
/* 023A1678 */ Gambit_fn_0282A374(cpu);
|
|
/* 023A167C */ _t207 = cpu->r[22] + 0x00000480u;
|
|
/* 023A167C */ rbrew_write32(cpu->mem, _t207, cpu->r[26]);
|
|
L_023A1680: ; // 0x23a1680
|
|
/* 023A1680 */ cpu->r[3] = cpu->r[18];
|
|
/* 023A1684 */ Gambit_fn_02837030(cpu);
|
|
/* 023A1688 */ _t208 = cpu->r[22] + 0x00000480u;
|
|
/* 023A1688 */ cpu->r[12] = rbrew_read32(cpu->mem, _t208);
|
|
L_023A168C: ; // 0x23a168c
|
|
/* 023A168C */ cpu->r[5] = rbrew_rlwinm(cpu->r[17], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 023A1690 */ _t209 = cpu->r[31] + 0x00000030u;
|
|
/* 023A1690 */ cpu->r[3] = rbrew_read32(cpu->mem, _t209);
|
|
/* 023A1694 */ cpu->r[4] = cpu->r[20];
|
|
/* 023A1698 */ _t210 = cpu->r[5] + cpu->r[12];
|
|
/* 023A1698 */ cpu->r[5] = rbrew_read32(cpu->mem, _t210);
|
|
/* 023A169C */ cpu->r[6] = 0x00000000u;
|
|
/* 023A16A0 */ Gambit_fn_027B72F0(cpu);
|
|
/* 023A16A4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[19], 0x00000008u);
|
|
/* 023A16A8 */ _t211 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 023A16A8 */ _t212 = _t211 & 0x00000001u;
|
|
/* 023A16A8 */ if (_t212) goto L_023A16AC; else goto L_023A1640;
|
|
L_023A16AC: ; // 0x23a16ac
|
|
/* 023A16AC */ cpu->r[7] = rbrew_rlwinm(cpu->r[19], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 023A16B0 */ _t213 = cpu->r[30] + cpu->r[7];
|
|
/* 023A16B0 */ rbrew_write32(cpu->mem, _t213, cpu->r[17]);
|
|
L_023A16B4: ; // 0x23a16b4
|
|
/* 023A16B4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[17], cpu->r[29]);
|
|
/* 023A16B8 */ _t214 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A16B8 */ _t215 = _t214 & 0x00000001u;
|
|
/* 023A16B8 */ if (_t215) goto L_023A16BC; else goto L_023A16C4;
|
|
L_023A16BC: ; // 0x23a16bc
|
|
/* 023A16BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[17], 0x00000005u);
|
|
/* 023A16C0 */ _t216 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A16C0 */ _t217 = _t216 & 0x00000001u;
|
|
/* 023A16C0 */ if (_t217) goto L_023A17B4; else goto L_023A16C4;
|
|
L_023A16C4: ; // 0x23a16c4
|
|
/* 023A16C4 */ _t218 = cpu->r[31] + 0x00000198u;
|
|
/* 023A16C4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t218);
|
|
/* 023A16C8 */ _t219 = cpu->r[1] + 0x00000034u;
|
|
/* 023A16C8 */ rbrew_write_f32(cpu->mem, _t219, cpu->f[10]);
|
|
/* 023A16CC */ _t220 = cpu->r[31] + 0x0000019Cu;
|
|
/* 023A16CC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t220);
|
|
/* 023A16D0 */ _t221 = cpu->r[24] + 0x00000000u;
|
|
/* 023A16D0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t221);
|
|
/* 023A16D4 */ _t222 = cpu->r[1] + 0x00000038u;
|
|
/* 023A16D4 */ rbrew_write_f32(cpu->mem, _t222, cpu->f[11]);
|
|
/* 023A16D8 */ _t223 = cpu->r[31] + 0x000001A0u;
|
|
/* 023A16D8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t223);
|
|
/* 023A16DC */ _t224 = cpu->r[1] + 0x00000028u;
|
|
/* 023A16DC */ rbrew_write_f32(cpu->mem, _t224, cpu->f[13]);
|
|
/* 023A16E0 */ _t225 = cpu->r[1] + 0x0000003Cu;
|
|
/* 023A16E0 */ rbrew_write_f32(cpu->mem, _t225, cpu->f[12]);
|
|
/* 023A16E4 */ cpu->r[4] = 0x10080000u;
|
|
/* 023A16E8 */ _t226 = cpu->r[24] + 0x00000004u;
|
|
/* 023A16E8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t226);
|
|
/* 023A16EC */ cpu->r[3] = cpu->r[1] + 0x0000001Cu;
|
|
/* 023A16F0 */ _t227 = cpu->r[24] + 0x00000008u;
|
|
/* 023A16F0 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t227);
|
|
/* 023A16F4 */ cpu->r[4] = cpu->r[4] + 0x000071A0u;
|
|
/* 023A16F8 */ _t228 = cpu->r[1] + 0x0000002Cu;
|
|
/* 023A16F8 */ rbrew_write_f32(cpu->mem, _t228, cpu->f[0]);
|
|
/* 023A16FC */ cpu->r[5] = 0x0000080Bu;
|
|
/* 023A1700 */ _t229 = cpu->r[1] + 0x00000030u;
|
|
/* 023A1700 */ rbrew_write_f32(cpu->mem, _t229, cpu->f[6]);
|
|
/* 023A1704 */ Gambit_fn_0204D380(cpu);
|
|
/* 023A1708 */ _t230 = cpu->r[31] + 0x00000244u;
|
|
/* 023A1708 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t230);
|
|
/* 023A170C */ _t231 = cpu->r[1] + 0x00000028u;
|
|
/* 023A170C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t231);
|
|
/* 023A1710 */ _t232 = cpu->r[1] + 0x00000040u;
|
|
/* 023A1710 */ rbrew_write_f32(cpu->mem, _t232, cpu->f[13]);
|
|
/* 023A1714 */ _t233 = cpu->r[31] + 0x00000248u;
|
|
/* 023A1714 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t233);
|
|
/* 023A1718 */ _t234 = cpu->r[1] + 0x0000001Cu;
|
|
/* 023A1718 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t234);
|
|
/* 023A171C */ _t235 = cpu->r[1] + 0x00000044u;
|
|
/* 023A171C */ rbrew_write_f32(cpu->mem, _t235, cpu->f[10]);
|
|
/* 023A1720 */ _t236 = cpu->r[31] + 0x0000024Cu;
|
|
/* 023A1720 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t236);
|
|
/* 023A1724 */ _t237 = cpu->r[1] + 0x00000050u;
|
|
/* 023A1724 */ rbrew_write_f32(cpu->mem, _t237, cpu->f[12]);
|
|
/* 023A1728 */ _t238 = cpu->r[1] + 0x00000030u;
|
|
/* 023A1728 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t238);
|
|
/* 023A172C */ _t239 = cpu->r[1] + 0x0000004Cu;
|
|
/* 023A172C */ rbrew_write_f32(cpu->mem, _t239, cpu->f[7]);
|
|
/* 023A1730 */ _t240 = cpu->r[1] + 0x00000070u;
|
|
/* 023A1730 */ rbrew_write_f32(cpu->mem, _t240, cpu->f[12]);
|
|
/* 023A1734 */ _t241 = cpu->r[1] + 0x0000002Cu;
|
|
/* 023A1734 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t241);
|
|
/* 023A1738 */ _t242 = cpu->r[1] + 0x00000034u;
|
|
/* 023A1738 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t242);
|
|
/* 023A173C */ _t243 = cpu->r[1] + 0x00000060u;
|
|
/* 023A173C */ rbrew_write_f32(cpu->mem, _t243, cpu->f[7]);
|
|
/* 023A1740 */ _t244 = cpu->r[1] + 0x00000054u;
|
|
/* 023A1740 */ rbrew_write_f32(cpu->mem, _t244, cpu->f[0]);
|
|
/* 023A1744 */ _t245 = cpu->r[1] + 0x0000003Cu;
|
|
/* 023A1744 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t245);
|
|
/* 023A1748 */ _t246 = cpu->r[1] + 0x00000058u;
|
|
/* 023A1748 */ rbrew_write_f32(cpu->mem, _t246, cpu->f[13]);
|
|
/* 023A174C */ _t247 = cpu->r[1] + 0x00000074u;
|
|
/* 023A174C */ rbrew_write_f32(cpu->mem, _t247, cpu->f[0]);
|
|
/* 023A1750 */ _t248 = cpu->r[1] + 0x00000038u;
|
|
/* 023A1750 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t248);
|
|
/* 023A1754 */ _t249 = cpu->r[1] + 0x00000024u;
|
|
/* 023A1754 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t249);
|
|
/* 023A1758 */ _t250 = cpu->r[1] + 0x00000064u;
|
|
/* 023A1758 */ rbrew_write_f32(cpu->mem, _t250, cpu->f[9]);
|
|
/* 023A175C */ _t251 = cpu->r[1] + 0x0000006Cu;
|
|
/* 023A175C */ rbrew_write_f32(cpu->mem, _t251, cpu->f[11]);
|
|
/* 023A1760 */ _t252 = cpu->r[1] + 0x00000068u;
|
|
/* 023A1760 */ rbrew_write_f32(cpu->mem, _t252, cpu->f[10]);
|
|
/* 023A1764 */ _t253 = cpu->r[1] + 0x00000020u;
|
|
/* 023A1764 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t253);
|
|
/* 023A1768 */ _t254 = cpu->r[1] + 0x00000078u;
|
|
/* 023A1768 */ rbrew_write_f32(cpu->mem, _t254, cpu->f[8]);
|
|
/* 023A176C */ _t255 = cpu->r[1] + 0x0000005Cu;
|
|
/* 023A176C */ rbrew_write_f32(cpu->mem, _t255, cpu->f[6]);
|
|
/* 023A1770 */ _t256 = cpu->r[1] + 0x00000048u;
|
|
/* 023A1770 */ rbrew_write_f32(cpu->mem, _t256, cpu->f[8]);
|
|
/* 023A1774 */ _t257 = cpu->r[20] + 0x00000000u;
|
|
/* 023A1774 */ cpu->r[18] = rbrew_read32(cpu->mem, _t257);
|
|
/* 023A1778 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[18], 0x00000000u);
|
|
/* 023A177C */ _t258 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A177C */ _t259 = _t258 & 0x00000001u;
|
|
/* 023A177C */ if (_t259) goto L_023A17B4; else goto L_023A1780;
|
|
L_023A1780: ; // 0x23a1780
|
|
/* 023A1780 */ _t260 = cpu->r[18] + 0x0000000Cu;
|
|
/* 023A1780 */ cpu->r[6] = rbrew_read32(cpu->mem, _t260);
|
|
/* 023A1784 */ _t261 = cpu->r[20] + 0x00000004u;
|
|
/* 023A1784 */ cpu->r[7] = rbrew_read32(cpu->mem, _t261);
|
|
/* 023A1788 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[7]);
|
|
/* 023A178C */ _t262 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A178C */ _t263 = _t262 & 0x00000001u;
|
|
/* 023A178C */ if (_t263) goto L_023A1790; else goto L_023A17B4;
|
|
L_023A1790: ; // 0x23a1790
|
|
/* 023A1790 */ _t264 = cpu->r[1] + 0x00000010u;
|
|
/* 023A1790 */ cpu->r[3] = rbrew_read32(cpu->mem, _t264);
|
|
/* 023A1794 */ cpu->r[4] = cpu->r[18] + 0x0000007Cu;
|
|
/* 023A1798 */ Gambit_fn_02C69510(cpu);
|
|
/* 023A179C */ _t265 = cpu->r[18] + 0x0000012Cu;
|
|
/* 023A179C */ cpu->r[0] = rbrew_read32(cpu->mem, _t265);
|
|
/* 023A17A0 */ _t266 = cpu->r[18] + 0x00000078u;
|
|
/* 023A17A0 */ rbrew_write_f32(cpu->mem, _t266, cpu->f[30]);
|
|
/* 023A17A4 */ cpu->r[0] = cpu->r[0] | 0x00000008u;
|
|
/* 023A17A8 */ _t267 = cpu->r[18] + 0x00000074u;
|
|
/* 023A17A8 */ rbrew_write_f32(cpu->mem, _t267, cpu->f[30]);
|
|
/* 023A17AC */ _t268 = cpu->r[18] + 0x0000012Cu;
|
|
/* 023A17AC */ rbrew_write32(cpu->mem, _t268, cpu->r[0]);
|
|
/* 023A17B0 */ _t269 = cpu->r[18] + 0x00000070u;
|
|
/* 023A17B0 */ rbrew_write_f32(cpu->mem, _t269, cpu->f[30]);
|
|
L_023A17B4: ; // 0x23a17b4
|
|
/* 023A17B4 */ _t270 = cpu->r[1] + 0x00000008u;
|
|
/* 023A17B4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t270);
|
|
/* 023A17B8 */ cpu->r[12] = cpu->r[28];
|
|
L_023A17BC: ; // 0x23a17bc
|
|
/* 023A17BC */ cpu->r[6] = cpu->r[31] + cpu->r[11];
|
|
/* 023A17C0 */ _t271 = cpu->r[6] + 0x00000004u;
|
|
/* 023A17C0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t271);
|
|
/* 023A17C4 */ cpu->r[31] = cpu->r[8] - cpu->r[11];
|
|
/* 023A17C8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[12]);
|
|
/* 023A17CC */ _t272 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A17CC */ _t273 = _t272 & 0x00000001u;
|
|
/* 023A17CC */ if (_t273) goto L_023A17F0; else goto L_023A17D0;
|
|
L_023A17D0: ; // 0x23a17d0
|
|
/* 023A17D0 */ _t274 = cpu->r[31] + 0x0000001Cu;
|
|
/* 023A17D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t274);
|
|
/* 023A17D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000002u);
|
|
/* 023A17D8 */ _t275 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A17D8 */ _t276 = _t275 & 0x00000001u;
|
|
/* 023A17D8 */ if (_t276) goto L_023A17E8; else goto L_023A17DC;
|
|
L_023A17DC: ; // 0x23a17dc
|
|
/* 023A17DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000003u);
|
|
/* 023A17E0 */ _t277 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A17E0 */ _t278 = _t277 & 0x00000001u;
|
|
/* 023A17E0 */ if (_t278) goto L_023A17E4; else goto L_023A17BC;
|
|
L_023A17E4: ; // 0x23a17e4
|
|
/* 023A17E4 */ goto L_023A1240;
|
|
L_023A17E8: ; // 0x23a17e8
|
|
/* 023A17E8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[28]);
|
|
/* 023A17EC */ _t279 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A17EC */ _t280 = _t279 & 0x00000001u;
|
|
/* 023A17EC */ if (_t280) goto L_023A17F0; else goto L_023A128C;
|
|
L_023A17F0: ; // 0x23a17f0
|
|
/* 023A17F0 */ /* nop */
|
|
/* 023A17F4 */ _t281 = cpu->r[1] + 0x000000F0u;
|
|
/* 023A17F4 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t281);
|
|
/* 023A17F8 */ _t282 = cpu->r[1] + 0x00000100u;
|
|
/* 023A17F8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t282);
|
|
/* 023A17FC */ _t283 = cpu->r[1] + 0x000000E8u;
|
|
/* 023A17FC */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t283);
|
|
/* 023A1800 */ _t284 = cpu->r[1] + 0x000000F8u;
|
|
/* 023A1800 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t284);
|
|
/* 023A1804 */ _t285 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 023A1804 */ _t286 = _t285 & 0x00000001u;
|
|
/* 023A1804 */ if (_t286) goto L_023A1808; // else: addr-0 trap, fall-through
|
|
L_023A1808: ; // 0x23a1808
|
|
/* 023A1808 */ _t287 = cpu->r[1] + 0x0000010Cu;
|
|
/* 023A1808 */ cpu->r[0] = rbrew_read32(cpu->mem, _t287);
|
|
/* 023A180C */ cpu->lr = cpu->r[0];
|
|
/* 023A1810 */ cpu->r[1] = cpu->r[1] + 0x00000108u;
|
|
/* 023A1814 */ return;
|
|
}
|
|
|
|
// fn_023A1818 @ 0x23a1818
|
|
void Gambit_fn_023A1818(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71;
|
|
|
|
L_023A1818: ; // 0x23a1818
|
|
/* 023A1818 */ cpu->r[0] = cpu->lr;
|
|
/* 023A181C */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 023A181C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 023A181C */ cpu->r[1] = _t0;
|
|
/* 023A1820 */ _t1 = cpu->r[1] + 0x00000018u;
|
|
/* 023A1820 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 023A1824 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 023A1824 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 023A1828 */ cpu->r[12] = 0x101C0000u;
|
|
/* 023A182C */ _t3 = cpu->r[1] + 0x00000024u;
|
|
/* 023A182C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 023A1830 */ _t4 = cpu->r[12] + 0x00006000u;
|
|
/* 023A1830 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 023A1834 */ _t5 = cpu->r[12] + 0x00000268u;
|
|
/* 023A1834 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 023A1838 */ cpu->r[30] = cpu->r[3];
|
|
/* 023A183C */ cpu->r[3] = cpu->r[31];
|
|
/* 023A1840 */ Gambit_fn_0261F774(cpu);
|
|
/* 023A1844 */ cpu->r[4] = cpu->r[3];
|
|
/* 023A1848 */ cpu->r[3] = cpu->r[31];
|
|
/* 023A184C */ Gambit_fn_0261F55C(cpu);
|
|
/* 023A1850 */ _t6 = cpu->r[30] + 0x000002D8u;
|
|
/* 023A1850 */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 023A1854 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 023A1858 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A1858 */ _t8 = _t7 & 0x00000001u;
|
|
/* 023A1858 */ if (_t8) goto L_023A18DC; else goto L_023A185C;
|
|
L_023A185C: ; // 0x23a185c
|
|
/* 023A185C */ _t9 = cpu->r[30] + 0x000002DCu;
|
|
/* 023A185C */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 023A1860 */ _t10 = cpu->r[31] + 0x0000000Cu;
|
|
/* 023A1860 */ cpu->r[7] = rbrew_read32(cpu->mem, _t10);
|
|
/* 023A1864 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[12]);
|
|
/* 023A1868 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A1868 */ _t12 = _t11 & 0x00000001u;
|
|
/* 023A1868 */ if (_t12) goto L_023A186C; else goto L_023A18DC;
|
|
L_023A186C: ; // 0x23a186c
|
|
/* 023A186C */ _t13 = cpu->r[3] + 0x00000468u;
|
|
/* 023A186C */ cpu->r[8] = rbrew_read32(cpu->mem, _t13);
|
|
/* 023A1870 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 023A1874 */ _t14 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 023A1874 */ _t15 = _t14 & 0x00000001u;
|
|
/* 023A1874 */ if (_t15) goto L_023A1988; else goto L_023A1878;
|
|
L_023A1878: ; // 0x23a1878
|
|
/* 023A1878 */ _t16 = cpu->r[3] + 0x0000046Cu;
|
|
/* 023A1878 */ cpu->r[9] = rbrew_read32(cpu->mem, _t16);
|
|
/* 023A187C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 023A1880 */ _t17 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 023A1880 */ _t18 = _t17 & 0x00000001u;
|
|
/* 023A1880 */ if (_t18) goto L_023A1988; else goto L_023A1884;
|
|
L_023A1884: ; // 0x23a1884
|
|
/* 023A1884 */ _t19 = cpu->r[3] + 0x00000474u;
|
|
/* 023A1884 */ cpu->r[10] = rbrew_read32(cpu->mem, _t19);
|
|
/* 023A1888 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 023A188C */ _t20 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 023A188C */ _t21 = _t20 & 0x00000001u;
|
|
/* 023A188C */ if (_t21) goto L_023A1988; else goto L_023A1890;
|
|
L_023A1890: ; // 0x23a1890
|
|
/* 023A1890 */ _t22 = cpu->r[31] + 0x0000000Cu;
|
|
/* 023A1890 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 023A1894 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[12]);
|
|
/* 023A1898 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A1898 */ _t24 = _t23 & 0x00000001u;
|
|
/* 023A1898 */ if (_t24) goto L_023A189C; else goto L_023A1988;
|
|
L_023A189C: ; // 0x23a189c
|
|
/* 023A189C */ _t25 = cpu->r[31] + 0x00000028u;
|
|
/* 023A189C */ cpu->r[3] = rbrew_read32(cpu->mem, _t25);
|
|
/* 023A18A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023A18A4 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A18A4 */ _t27 = _t26 & 0x00000001u;
|
|
/* 023A18A4 */ if (_t27) goto L_023A18BC; else goto L_023A18A8;
|
|
L_023A18A8: ; // 0x23a18a8
|
|
/* 023A18A8 */ _t28 = cpu->r[3] + 0x00000050u;
|
|
/* 023A18A8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t28);
|
|
/* 023A18AC */ _t29 = cpu->r[12] + 0x00000024u;
|
|
/* 023A18AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t29);
|
|
/* 023A18B0 */ cpu->ctr = cpu->r[0];
|
|
/* 023A18B4 */ cpu->r[4] = 0xFFFFFFFFu;
|
|
/* 023A18B8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_023A18BC: ; // 0x23a18bc
|
|
/* 023A18BC */ cpu->r[5] = 0x00000001u;
|
|
/* 023A18C0 */ _t30 = cpu->r[31] + 0x0000004Cu;
|
|
/* 023A18C0 */ rbrew_write8(cpu->mem, _t30, (uint8_t)cpu->r[5]);
|
|
/* 023A18C4 */ _t31 = cpu->r[1] + 0x00000024u;
|
|
/* 023A18C4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 023A18C8 */ _t32 = cpu->r[1] + 0x00000018u;
|
|
/* 023A18C8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t32);
|
|
/* 023A18CC */ cpu->lr = cpu->r[0];
|
|
/* 023A18D0 */ _t33 = cpu->r[1] + 0x0000001Cu;
|
|
/* 023A18D0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t33);
|
|
/* 023A18D4 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 023A18D8 */ return;
|
|
L_023A18DC: ; // 0x23a18dc
|
|
/* 023A18DC */ _t34 = cpu->r[3] + 0x00000468u;
|
|
/* 023A18DC */ cpu->r[6] = rbrew_read32(cpu->mem, _t34);
|
|
/* 023A18E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 023A18E4 */ _t35 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 023A18E4 */ _t36 = _t35 & 0x00000001u;
|
|
/* 023A18E4 */ if (_t36) goto L_023A1900; else goto L_023A18E8;
|
|
L_023A18E8: ; // 0x23a18e8
|
|
/* 023A18E8 */ _t37 = cpu->r[3] + 0x0000046Cu;
|
|
/* 023A18E8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t37);
|
|
/* 023A18EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 023A18F0 */ _t38 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 023A18F0 */ _t39 = _t38 & 0x00000001u;
|
|
/* 023A18F0 */ if (_t39) goto L_023A1900; else goto L_023A18F4;
|
|
L_023A18F4: ; // 0x23a18f4
|
|
/* 023A18F4 */ _t40 = cpu->r[3] + 0x00000474u;
|
|
/* 023A18F4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t40);
|
|
/* 023A18F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 023A18FC */ _t41 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 023A18FC */ _t42 = _t41 & 0x00000001u;
|
|
/* 023A18FC */ if (_t42) goto L_023A1900; else goto L_023A1988;
|
|
L_023A1900: ; // 0x23a1900
|
|
/* 023A1900 */ cpu->r[5] = 0x10080000u;
|
|
/* 023A1904 */ _t43 = cpu->r[30] + 0x00000030u;
|
|
/* 023A1904 */ cpu->r[3] = rbrew_read32(cpu->mem, _t43);
|
|
/* 023A1908 */ cpu->r[4] = cpu->r[30] + 0x000002D8u;
|
|
/* 023A190C */ cpu->r[5] = cpu->r[5] + 0x000071B0u;
|
|
/* 023A1910 */ cpu->r[6] = 0x00000000u;
|
|
/* 023A1914 */ Gambit_fn_027B72F0(cpu);
|
|
/* 023A1918 */ _t44 = cpu->r[30] + 0x000002D8u;
|
|
/* 023A1918 */ cpu->r[31] = rbrew_read32(cpu->mem, _t44);
|
|
/* 023A191C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 023A1920 */ _t45 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A1920 */ _t46 = _t45 & 0x00000001u;
|
|
/* 023A1920 */ if (_t46) goto L_023A1988; else goto L_023A1924;
|
|
L_023A1924: ; // 0x23a1924
|
|
/* 023A1924 */ _t47 = cpu->r[31] + 0x0000000Cu;
|
|
/* 023A1924 */ cpu->r[10] = rbrew_read32(cpu->mem, _t47);
|
|
/* 023A1928 */ _t48 = cpu->r[30] + 0x000002DCu;
|
|
/* 023A1928 */ cpu->r[0] = rbrew_read32(cpu->mem, _t48);
|
|
/* 023A192C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[0]);
|
|
/* 023A1930 */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A1930 */ _t50 = _t49 & 0x00000001u;
|
|
/* 023A1930 */ if (_t50) goto L_023A1934; else goto L_023A1988;
|
|
L_023A1934: ; // 0x23a1934
|
|
/* 023A1934 */ cpu->r[9] = 0x10080000u;
|
|
/* 023A1938 */ cpu->r[5] = 0x101F0000u;
|
|
/* 023A193C */ _t51 = cpu->r[9] + 0x00007050u;
|
|
/* 023A193C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t51);
|
|
/* 023A1940 */ _t52 = cpu->r[5] + 0x00006338u;
|
|
/* 023A1940 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 023A1940 */ cpu->r[5] = _t52;
|
|
/* 023A1944 */ _t53 = cpu->r[1] + 0x00000008u;
|
|
/* 023A1944 */ rbrew_write_f32(cpu->mem, _t53, cpu->f[0]);
|
|
/* 023A1948 */ _t54 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023A1948 */ rbrew_write_f32(cpu->mem, _t54, cpu->f[0]);
|
|
/* 023A194C */ _t55 = cpu->r[1] + 0x00000010u;
|
|
/* 023A194C */ rbrew_write_f32(cpu->mem, _t55, cpu->f[0]);
|
|
/* 023A1950 */ _t56 = cpu->r[31] + 0x00000064u;
|
|
/* 023A1950 */ rbrew_write_f32(cpu->mem, _t56, cpu->f[13]);
|
|
/* 023A1954 */ _t57 = cpu->r[5] + 0x00000004u;
|
|
/* 023A1954 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t57);
|
|
/* 023A1958 */ _t58 = cpu->r[31] + 0x00000068u;
|
|
/* 023A1958 */ rbrew_write_f32(cpu->mem, _t58, cpu->f[0]);
|
|
/* 023A195C */ _t59 = cpu->r[5] + 0x00000008u;
|
|
/* 023A195C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t59);
|
|
/* 023A1960 */ _t60 = cpu->r[31] + 0x0000006Cu;
|
|
/* 023A1960 */ rbrew_write_f32(cpu->mem, _t60, cpu->f[0]);
|
|
/* 023A1964 */ _t61 = cpu->r[1] + 0x00000008u;
|
|
/* 023A1964 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t61);
|
|
/* 023A1968 */ _t62 = cpu->r[31] + 0x0000012Cu;
|
|
/* 023A1968 */ cpu->r[6] = rbrew_read32(cpu->mem, _t62);
|
|
/* 023A196C */ _t63 = cpu->r[31] + 0x00000070u;
|
|
/* 023A196C */ rbrew_write_f32(cpu->mem, _t63, cpu->f[0]);
|
|
/* 023A1970 */ _t64 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023A1970 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t64);
|
|
/* 023A1974 */ cpu->r[6] = cpu->r[6] | 0x00000004u;
|
|
/* 023A1978 */ _t65 = cpu->r[31] + 0x00000074u;
|
|
/* 023A1978 */ rbrew_write_f32(cpu->mem, _t65, cpu->f[0]);
|
|
/* 023A197C */ _t66 = cpu->r[1] + 0x00000010u;
|
|
/* 023A197C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t66);
|
|
/* 023A1980 */ _t67 = cpu->r[31] + 0x0000012Cu;
|
|
/* 023A1980 */ rbrew_write32(cpu->mem, _t67, cpu->r[6]);
|
|
/* 023A1984 */ _t68 = cpu->r[31] + 0x00000078u;
|
|
/* 023A1984 */ rbrew_write_f32(cpu->mem, _t68, cpu->f[0]);
|
|
L_023A1988: ; // 0x23a1988
|
|
/* 023A1988 */ _t69 = cpu->r[1] + 0x00000024u;
|
|
/* 023A1988 */ cpu->r[0] = rbrew_read32(cpu->mem, _t69);
|
|
/* 023A198C */ _t70 = cpu->r[1] + 0x00000018u;
|
|
/* 023A198C */ cpu->r[30] = rbrew_read32(cpu->mem, _t70);
|
|
/* 023A1990 */ cpu->lr = cpu->r[0];
|
|
/* 023A1994 */ _t71 = cpu->r[1] + 0x0000001Cu;
|
|
/* 023A1994 */ cpu->r[31] = rbrew_read32(cpu->mem, _t71);
|
|
/* 023A1998 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 023A199C */ return;
|
|
}
|
|
|
|
// fn_023A181C @ 0x23a181c
|
|
void Gambit_fn_023A181C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71;
|
|
|
|
L_023A181C: ; // 0x23a181c
|
|
/* 023A181C */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 023A181C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 023A181C */ cpu->r[1] = _t0;
|
|
/* 023A1820 */ _t1 = cpu->r[1] + 0x00000018u;
|
|
/* 023A1820 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 023A1824 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 023A1824 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 023A1828 */ cpu->r[12] = 0x101C0000u;
|
|
/* 023A182C */ _t3 = cpu->r[1] + 0x00000024u;
|
|
/* 023A182C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 023A1830 */ _t4 = cpu->r[12] + 0x00006000u;
|
|
/* 023A1830 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 023A1834 */ _t5 = cpu->r[12] + 0x00000268u;
|
|
/* 023A1834 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 023A1838 */ cpu->r[30] = cpu->r[3];
|
|
/* 023A183C */ cpu->r[3] = cpu->r[31];
|
|
/* 023A1840 */ Gambit_fn_0261F774(cpu);
|
|
/* 023A1844 */ cpu->r[4] = cpu->r[3];
|
|
/* 023A1848 */ cpu->r[3] = cpu->r[31];
|
|
/* 023A184C */ Gambit_fn_0261F55C(cpu);
|
|
/* 023A1850 */ _t6 = cpu->r[30] + 0x000002D8u;
|
|
/* 023A1850 */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 023A1854 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 023A1858 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A1858 */ _t8 = _t7 & 0x00000001u;
|
|
/* 023A1858 */ if (_t8) goto L_023A18DC; else goto L_023A185C;
|
|
L_023A185C: ; // 0x23a185c
|
|
/* 023A185C */ _t9 = cpu->r[30] + 0x000002DCu;
|
|
/* 023A185C */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 023A1860 */ _t10 = cpu->r[31] + 0x0000000Cu;
|
|
/* 023A1860 */ cpu->r[7] = rbrew_read32(cpu->mem, _t10);
|
|
/* 023A1864 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[12]);
|
|
/* 023A1868 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A1868 */ _t12 = _t11 & 0x00000001u;
|
|
/* 023A1868 */ if (_t12) goto L_023A186C; else goto L_023A18DC;
|
|
L_023A186C: ; // 0x23a186c
|
|
/* 023A186C */ _t13 = cpu->r[3] + 0x00000468u;
|
|
/* 023A186C */ cpu->r[8] = rbrew_read32(cpu->mem, _t13);
|
|
/* 023A1870 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 023A1874 */ _t14 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 023A1874 */ _t15 = _t14 & 0x00000001u;
|
|
/* 023A1874 */ if (_t15) goto L_023A1988; else goto L_023A1878;
|
|
L_023A1878: ; // 0x23a1878
|
|
/* 023A1878 */ _t16 = cpu->r[3] + 0x0000046Cu;
|
|
/* 023A1878 */ cpu->r[9] = rbrew_read32(cpu->mem, _t16);
|
|
/* 023A187C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 023A1880 */ _t17 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 023A1880 */ _t18 = _t17 & 0x00000001u;
|
|
/* 023A1880 */ if (_t18) goto L_023A1988; else goto L_023A1884;
|
|
L_023A1884: ; // 0x23a1884
|
|
/* 023A1884 */ _t19 = cpu->r[3] + 0x00000474u;
|
|
/* 023A1884 */ cpu->r[10] = rbrew_read32(cpu->mem, _t19);
|
|
/* 023A1888 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 023A188C */ _t20 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 023A188C */ _t21 = _t20 & 0x00000001u;
|
|
/* 023A188C */ if (_t21) goto L_023A1988; else goto L_023A1890;
|
|
L_023A1890: ; // 0x23a1890
|
|
/* 023A1890 */ _t22 = cpu->r[31] + 0x0000000Cu;
|
|
/* 023A1890 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 023A1894 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[12]);
|
|
/* 023A1898 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A1898 */ _t24 = _t23 & 0x00000001u;
|
|
/* 023A1898 */ if (_t24) goto L_023A189C; else goto L_023A1988;
|
|
L_023A189C: ; // 0x23a189c
|
|
/* 023A189C */ _t25 = cpu->r[31] + 0x00000028u;
|
|
/* 023A189C */ cpu->r[3] = rbrew_read32(cpu->mem, _t25);
|
|
/* 023A18A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023A18A4 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A18A4 */ _t27 = _t26 & 0x00000001u;
|
|
/* 023A18A4 */ if (_t27) goto L_023A18BC; else goto L_023A18A8;
|
|
L_023A18A8: ; // 0x23a18a8
|
|
/* 023A18A8 */ _t28 = cpu->r[3] + 0x00000050u;
|
|
/* 023A18A8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t28);
|
|
/* 023A18AC */ _t29 = cpu->r[12] + 0x00000024u;
|
|
/* 023A18AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t29);
|
|
/* 023A18B0 */ cpu->ctr = cpu->r[0];
|
|
/* 023A18B4 */ cpu->r[4] = 0xFFFFFFFFu;
|
|
/* 023A18B8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_023A18BC: ; // 0x23a18bc
|
|
/* 023A18BC */ cpu->r[5] = 0x00000001u;
|
|
/* 023A18C0 */ _t30 = cpu->r[31] + 0x0000004Cu;
|
|
/* 023A18C0 */ rbrew_write8(cpu->mem, _t30, (uint8_t)cpu->r[5]);
|
|
/* 023A18C4 */ _t31 = cpu->r[1] + 0x00000024u;
|
|
/* 023A18C4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 023A18C8 */ _t32 = cpu->r[1] + 0x00000018u;
|
|
/* 023A18C8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t32);
|
|
/* 023A18CC */ cpu->lr = cpu->r[0];
|
|
/* 023A18D0 */ _t33 = cpu->r[1] + 0x0000001Cu;
|
|
/* 023A18D0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t33);
|
|
/* 023A18D4 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 023A18D8 */ return;
|
|
L_023A18DC: ; // 0x23a18dc
|
|
/* 023A18DC */ _t34 = cpu->r[3] + 0x00000468u;
|
|
/* 023A18DC */ cpu->r[6] = rbrew_read32(cpu->mem, _t34);
|
|
/* 023A18E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 023A18E4 */ _t35 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 023A18E4 */ _t36 = _t35 & 0x00000001u;
|
|
/* 023A18E4 */ if (_t36) goto L_023A1900; else goto L_023A18E8;
|
|
L_023A18E8: ; // 0x23a18e8
|
|
/* 023A18E8 */ _t37 = cpu->r[3] + 0x0000046Cu;
|
|
/* 023A18E8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t37);
|
|
/* 023A18EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 023A18F0 */ _t38 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 023A18F0 */ _t39 = _t38 & 0x00000001u;
|
|
/* 023A18F0 */ if (_t39) goto L_023A1900; else goto L_023A18F4;
|
|
L_023A18F4: ; // 0x23a18f4
|
|
/* 023A18F4 */ _t40 = cpu->r[3] + 0x00000474u;
|
|
/* 023A18F4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t40);
|
|
/* 023A18F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 023A18FC */ _t41 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 023A18FC */ _t42 = _t41 & 0x00000001u;
|
|
/* 023A18FC */ if (_t42) goto L_023A1900; else goto L_023A1988;
|
|
L_023A1900: ; // 0x23a1900
|
|
/* 023A1900 */ cpu->r[5] = 0x10080000u;
|
|
/* 023A1904 */ _t43 = cpu->r[30] + 0x00000030u;
|
|
/* 023A1904 */ cpu->r[3] = rbrew_read32(cpu->mem, _t43);
|
|
/* 023A1908 */ cpu->r[4] = cpu->r[30] + 0x000002D8u;
|
|
/* 023A190C */ cpu->r[5] = cpu->r[5] + 0x000071B0u;
|
|
/* 023A1910 */ cpu->r[6] = 0x00000000u;
|
|
/* 023A1914 */ Gambit_fn_027B72F0(cpu);
|
|
/* 023A1918 */ _t44 = cpu->r[30] + 0x000002D8u;
|
|
/* 023A1918 */ cpu->r[31] = rbrew_read32(cpu->mem, _t44);
|
|
/* 023A191C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 023A1920 */ _t45 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A1920 */ _t46 = _t45 & 0x00000001u;
|
|
/* 023A1920 */ if (_t46) goto L_023A1988; else goto L_023A1924;
|
|
L_023A1924: ; // 0x23a1924
|
|
/* 023A1924 */ _t47 = cpu->r[31] + 0x0000000Cu;
|
|
/* 023A1924 */ cpu->r[10] = rbrew_read32(cpu->mem, _t47);
|
|
/* 023A1928 */ _t48 = cpu->r[30] + 0x000002DCu;
|
|
/* 023A1928 */ cpu->r[0] = rbrew_read32(cpu->mem, _t48);
|
|
/* 023A192C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[0]);
|
|
/* 023A1930 */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A1930 */ _t50 = _t49 & 0x00000001u;
|
|
/* 023A1930 */ if (_t50) goto L_023A1934; else goto L_023A1988;
|
|
L_023A1934: ; // 0x23a1934
|
|
/* 023A1934 */ cpu->r[9] = 0x10080000u;
|
|
/* 023A1938 */ cpu->r[5] = 0x101F0000u;
|
|
/* 023A193C */ _t51 = cpu->r[9] + 0x00007050u;
|
|
/* 023A193C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t51);
|
|
/* 023A1940 */ _t52 = cpu->r[5] + 0x00006338u;
|
|
/* 023A1940 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 023A1940 */ cpu->r[5] = _t52;
|
|
/* 023A1944 */ _t53 = cpu->r[1] + 0x00000008u;
|
|
/* 023A1944 */ rbrew_write_f32(cpu->mem, _t53, cpu->f[0]);
|
|
/* 023A1948 */ _t54 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023A1948 */ rbrew_write_f32(cpu->mem, _t54, cpu->f[0]);
|
|
/* 023A194C */ _t55 = cpu->r[1] + 0x00000010u;
|
|
/* 023A194C */ rbrew_write_f32(cpu->mem, _t55, cpu->f[0]);
|
|
/* 023A1950 */ _t56 = cpu->r[31] + 0x00000064u;
|
|
/* 023A1950 */ rbrew_write_f32(cpu->mem, _t56, cpu->f[13]);
|
|
/* 023A1954 */ _t57 = cpu->r[5] + 0x00000004u;
|
|
/* 023A1954 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t57);
|
|
/* 023A1958 */ _t58 = cpu->r[31] + 0x00000068u;
|
|
/* 023A1958 */ rbrew_write_f32(cpu->mem, _t58, cpu->f[0]);
|
|
/* 023A195C */ _t59 = cpu->r[5] + 0x00000008u;
|
|
/* 023A195C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t59);
|
|
/* 023A1960 */ _t60 = cpu->r[31] + 0x0000006Cu;
|
|
/* 023A1960 */ rbrew_write_f32(cpu->mem, _t60, cpu->f[0]);
|
|
/* 023A1964 */ _t61 = cpu->r[1] + 0x00000008u;
|
|
/* 023A1964 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t61);
|
|
/* 023A1968 */ _t62 = cpu->r[31] + 0x0000012Cu;
|
|
/* 023A1968 */ cpu->r[6] = rbrew_read32(cpu->mem, _t62);
|
|
/* 023A196C */ _t63 = cpu->r[31] + 0x00000070u;
|
|
/* 023A196C */ rbrew_write_f32(cpu->mem, _t63, cpu->f[0]);
|
|
/* 023A1970 */ _t64 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023A1970 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t64);
|
|
/* 023A1974 */ cpu->r[6] = cpu->r[6] | 0x00000004u;
|
|
/* 023A1978 */ _t65 = cpu->r[31] + 0x00000074u;
|
|
/* 023A1978 */ rbrew_write_f32(cpu->mem, _t65, cpu->f[0]);
|
|
/* 023A197C */ _t66 = cpu->r[1] + 0x00000010u;
|
|
/* 023A197C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t66);
|
|
/* 023A1980 */ _t67 = cpu->r[31] + 0x0000012Cu;
|
|
/* 023A1980 */ rbrew_write32(cpu->mem, _t67, cpu->r[6]);
|
|
/* 023A1984 */ _t68 = cpu->r[31] + 0x00000078u;
|
|
/* 023A1984 */ rbrew_write_f32(cpu->mem, _t68, cpu->f[0]);
|
|
L_023A1988: ; // 0x23a1988
|
|
/* 023A1988 */ _t69 = cpu->r[1] + 0x00000024u;
|
|
/* 023A1988 */ cpu->r[0] = rbrew_read32(cpu->mem, _t69);
|
|
/* 023A198C */ _t70 = cpu->r[1] + 0x00000018u;
|
|
/* 023A198C */ cpu->r[30] = rbrew_read32(cpu->mem, _t70);
|
|
/* 023A1990 */ cpu->lr = cpu->r[0];
|
|
/* 023A1994 */ _t71 = cpu->r[1] + 0x0000001Cu;
|
|
/* 023A1994 */ cpu->r[31] = rbrew_read32(cpu->mem, _t71);
|
|
/* 023A1998 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 023A199C */ return;
|
|
}
|
|
|
|
// fn_023A19A0 @ 0x23a19a0
|
|
void Gambit_fn_023A19A0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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;
|
|
|
|
L_023A19A0: ; // 0x23a19a0
|
|
/* 023A19A0 */ cpu->r[0] = cpu->lr;
|
|
/* 023A19A4 */ _t0 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 023A19A4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 023A19A4 */ cpu->r[1] = _t0;
|
|
/* 023A19A8 */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 023A19A8 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 023A19AC */ _t2 = cpu->r[1] + 0x00000030u;
|
|
/* 023A19AC */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 023A19B0 */ _t3 = cpu->r[1] + 0x00000034u;
|
|
/* 023A19B0 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 023A19B4 */ cpu->r[30] = cpu->r[3];
|
|
/* 023A19B8 */ _t4 = cpu->r[1] + 0x0000003Cu;
|
|
/* 023A19B8 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 023A19BC */ _t5 = cpu->r[30] + 0x000002E4u;
|
|
/* 023A19BC */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 023A19C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 023A19C4 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A19C4 */ _t7 = _t6 & 0x00000001u;
|
|
/* 023A19C4 */ if (_t7) goto L_023A1B58; else goto L_023A19C8;
|
|
L_023A19C8: ; // 0x23a19c8
|
|
/* 023A19C8 */ _t8 = cpu->r[31] + 0x0000000Cu;
|
|
/* 023A19C8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t8);
|
|
/* 023A19CC */ _t9 = cpu->r[30] + 0x000002E8u;
|
|
/* 023A19CC */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 023A19D0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[12]);
|
|
/* 023A19D4 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A19D4 */ _t11 = _t10 & 0x00000001u;
|
|
/* 023A19D4 */ if (_t11) goto L_023A19D8; else goto L_023A1B58;
|
|
L_023A19D8: ; // 0x23a19d8
|
|
/* 023A19D8 */ cpu->r[12] = 0x101C0000u;
|
|
/* 023A19DC */ _t12 = cpu->r[12] + 0x00006000u;
|
|
/* 023A19DC */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 023A19E0 */ _t13 = cpu->r[12] + 0x00000268u;
|
|
/* 023A19E0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 023A19E4 */ cpu->r[3] = cpu->r[31];
|
|
/* 023A19E8 */ Gambit_fn_0261F774(cpu);
|
|
/* 023A19EC */ cpu->r[4] = cpu->r[3];
|
|
/* 023A19F0 */ cpu->r[3] = cpu->r[31];
|
|
/* 023A19F4 */ Gambit_fn_0261F55C(cpu);
|
|
/* 023A19F8 */ _t14 = cpu->r[3] + 0x0000065Cu;
|
|
/* 023A19F8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t14);
|
|
/* 023A19FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 023A1A00 */ cpu->r[29] = cpu->r[3];
|
|
/* 023A1A04 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A1A04 */ _t16 = _t15 & 0x00000001u;
|
|
/* 023A1A04 */ if (_t16) goto L_023A1A08; else goto L_023A1A4C;
|
|
L_023A1A08: ; // 0x23a1a08
|
|
/* 023A1A08 */ _t17 = cpu->r[30] + 0x000002E4u;
|
|
/* 023A1A08 */ cpu->r[31] = rbrew_read32(cpu->mem, _t17);
|
|
/* 023A1A0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 023A1A10 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A1A10 */ _t19 = _t18 & 0x00000001u;
|
|
/* 023A1A10 */ if (_t19) goto L_023A1A4C; else goto L_023A1A14;
|
|
L_023A1A14: ; // 0x23a1a14
|
|
/* 023A1A14 */ _t20 = cpu->r[31] + 0x0000000Cu;
|
|
/* 023A1A14 */ cpu->r[12] = rbrew_read32(cpu->mem, _t20);
|
|
/* 023A1A18 */ _t21 = cpu->r[30] + 0x000002E8u;
|
|
/* 023A1A18 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 023A1A1C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[0]);
|
|
/* 023A1A20 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A1A20 */ _t23 = _t22 & 0x00000001u;
|
|
/* 023A1A20 */ if (_t23) goto L_023A1A24; else goto L_023A1A4C;
|
|
L_023A1A24: ; // 0x23a1a24
|
|
/* 023A1A24 */ _t24 = cpu->r[31] + 0x00000028u;
|
|
/* 023A1A24 */ cpu->r[3] = rbrew_read32(cpu->mem, _t24);
|
|
/* 023A1A28 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023A1A2C */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A1A2C */ _t26 = _t25 & 0x00000001u;
|
|
/* 023A1A2C */ if (_t26) goto L_023A1A44; else goto L_023A1A30;
|
|
L_023A1A30: ; // 0x23a1a30
|
|
/* 023A1A30 */ _t27 = cpu->r[3] + 0x00000050u;
|
|
/* 023A1A30 */ cpu->r[9] = rbrew_read32(cpu->mem, _t27);
|
|
/* 023A1A34 */ _t28 = cpu->r[9] + 0x00000024u;
|
|
/* 023A1A34 */ cpu->r[10] = rbrew_read32(cpu->mem, _t28);
|
|
/* 023A1A38 */ cpu->ctr = cpu->r[10];
|
|
/* 023A1A3C */ cpu->r[4] = 0xFFFFFFFFu;
|
|
/* 023A1A40 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_023A1A44: ; // 0x23a1a44
|
|
/* 023A1A44 */ cpu->r[0] = 0x00000001u;
|
|
/* 023A1A48 */ _t29 = cpu->r[31] + 0x0000004Cu;
|
|
/* 023A1A48 */ rbrew_write8(cpu->mem, _t29, (uint8_t)cpu->r[0]);
|
|
L_023A1A4C: ; // 0x23a1a4c
|
|
/* 023A1A4C */ _t30 = cpu->r[29] + 0x00000468u;
|
|
/* 023A1A4C */ cpu->r[10] = rbrew_read32(cpu->mem, _t30);
|
|
/* 023A1A50 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 023A1A54 */ _t31 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 023A1A54 */ _t32 = _t31 & 0x00000001u;
|
|
/* 023A1A54 */ if (_t32) goto L_023A1A70; else goto L_023A1A58;
|
|
L_023A1A58: ; // 0x23a1a58
|
|
/* 023A1A58 */ _t33 = cpu->r[29] + 0x0000046Cu;
|
|
/* 023A1A58 */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 023A1A5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 023A1A60 */ _t34 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 023A1A60 */ _t35 = _t34 & 0x00000001u;
|
|
/* 023A1A60 */ if (_t35) goto L_023A1A70; else goto L_023A1A64;
|
|
L_023A1A64: ; // 0x23a1a64
|
|
/* 023A1A64 */ _t36 = cpu->r[29] + 0x00000474u;
|
|
/* 023A1A64 */ cpu->r[12] = rbrew_read32(cpu->mem, _t36);
|
|
/* 023A1A68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 023A1A6C */ _t37 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 023A1A6C */ _t38 = _t37 & 0x00000001u;
|
|
/* 023A1A6C */ if (_t38) goto L_023A1A70; else goto L_023A1AB4;
|
|
L_023A1A70: ; // 0x23a1a70
|
|
/* 023A1A70 */ _t39 = cpu->r[30] + 0x000002E4u;
|
|
/* 023A1A70 */ cpu->r[31] = rbrew_read32(cpu->mem, _t39);
|
|
/* 023A1A74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 023A1A78 */ _t40 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A1A78 */ _t41 = _t40 & 0x00000001u;
|
|
/* 023A1A78 */ if (_t41) goto L_023A1AB4; else goto L_023A1A7C;
|
|
L_023A1A7C: ; // 0x23a1a7c
|
|
/* 023A1A7C */ _t42 = cpu->r[31] + 0x0000000Cu;
|
|
/* 023A1A7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t42);
|
|
/* 023A1A80 */ _t43 = cpu->r[30] + 0x000002E8u;
|
|
/* 023A1A80 */ cpu->r[9] = rbrew_read32(cpu->mem, _t43);
|
|
/* 023A1A84 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[9]);
|
|
/* 023A1A88 */ _t44 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A1A88 */ _t45 = _t44 & 0x00000001u;
|
|
/* 023A1A88 */ if (_t45) goto L_023A1A8C; else goto L_023A1AB4;
|
|
L_023A1A8C: ; // 0x23a1a8c
|
|
/* 023A1A8C */ _t46 = cpu->r[31] + 0x00000028u;
|
|
/* 023A1A8C */ cpu->r[3] = rbrew_read32(cpu->mem, _t46);
|
|
/* 023A1A90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023A1A94 */ _t47 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A1A94 */ _t48 = _t47 & 0x00000001u;
|
|
/* 023A1A94 */ if (_t48) goto L_023A1AAC; else goto L_023A1A98;
|
|
L_023A1A98: ; // 0x23a1a98
|
|
/* 023A1A98 */ _t49 = cpu->r[3] + 0x00000050u;
|
|
/* 023A1A98 */ cpu->r[10] = rbrew_read32(cpu->mem, _t49);
|
|
/* 023A1A9C */ _t50 = cpu->r[10] + 0x00000024u;
|
|
/* 023A1A9C */ cpu->r[11] = rbrew_read32(cpu->mem, _t50);
|
|
/* 023A1AA0 */ cpu->ctr = cpu->r[11];
|
|
/* 023A1AA4 */ cpu->r[4] = 0xFFFFFFFFu;
|
|
/* 023A1AA8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_023A1AAC: ; // 0x23a1aac
|
|
/* 023A1AAC */ cpu->r[12] = 0x00000001u;
|
|
/* 023A1AB0 */ _t51 = cpu->r[31] + 0x0000004Cu;
|
|
/* 023A1AB0 */ rbrew_write8(cpu->mem, _t51, (uint8_t)cpu->r[12]);
|
|
L_023A1AB4: ; // 0x23a1ab4
|
|
/* 023A1AB4 */ _t52 = cpu->r[29] + 0x0000065Cu;
|
|
/* 023A1AB4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t52);
|
|
/* 023A1AB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 023A1ABC */ _t53 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A1ABC */ _t54 = _t53 & 0x00000001u;
|
|
/* 023A1ABC */ if (_t54) goto L_023A1B58; else goto L_023A1AC0;
|
|
L_023A1AC0: ; // 0x23a1ac0
|
|
/* 023A1AC0 */ cpu->r[3] = cpu->r[29] + 0x00000600u;
|
|
/* 023A1AC4 */ Gambit_fn_0239E06C(cpu);
|
|
/* 023A1AC8 */ _t55 = cpu->r[1] + 0x00000020u;
|
|
/* 023A1AC8 */ rbrew_write32(cpu->mem, _t55, cpu->r[3]);
|
|
/* 023A1ACC */ _t56 = cpu->r[1] + 0x00000020u;
|
|
/* 023A1ACC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 023A1AD0 */ _t57 = cpu->r[1] + 0x00000024u;
|
|
/* 023A1AD0 */ rbrew_write32(cpu->mem, _t57, cpu->r[4]);
|
|
/* 023A1AD4 */ _t58 = cpu->r[1] + 0x00000024u;
|
|
/* 023A1AD4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 023A1AD8 */ _t59 = cpu->r[1] + 0x00000008u;
|
|
/* 023A1AD8 */ rbrew_write_f32(cpu->mem, _t59, cpu->f[0]);
|
|
/* 023A1ADC */ cpu->r[10] = 0x10080000u;
|
|
/* 023A1AE0 */ _t60 = cpu->r[30] + 0x000002E4u;
|
|
/* 023A1AE0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t60);
|
|
/* 023A1AE4 */ _t61 = cpu->r[10] + 0x0000704Cu;
|
|
/* 023A1AE4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t61);
|
|
/* 023A1AE8 */ _t62 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023A1AE8 */ rbrew_write_f32(cpu->mem, _t62, cpu->f[13]);
|
|
/* 023A1AEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 023A1AF0 */ _t63 = cpu->r[1] + 0x00000010u;
|
|
/* 023A1AF0 */ rbrew_write_f32(cpu->mem, _t63, cpu->f[0]);
|
|
/* 023A1AF4 */ _t64 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A1AF4 */ _t65 = _t64 & 0x00000001u;
|
|
/* 023A1AF4 */ if (_t65) goto L_023A1B58; else goto L_023A1AF8;
|
|
L_023A1AF8: ; // 0x23a1af8
|
|
/* 023A1AF8 */ _t66 = cpu->r[31] + 0x0000000Cu;
|
|
/* 023A1AF8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t66);
|
|
/* 023A1AFC */ _t67 = cpu->r[30] + 0x000002E8u;
|
|
/* 023A1AFC */ cpu->r[0] = rbrew_read32(cpu->mem, _t67);
|
|
/* 023A1B00 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[0]);
|
|
/* 023A1B04 */ _t68 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A1B04 */ _t69 = _t68 & 0x00000001u;
|
|
/* 023A1B04 */ if (_t69) goto L_023A1B08; else goto L_023A1B58;
|
|
L_023A1B08: ; // 0x23a1b08
|
|
/* 023A1B08 */ cpu->r[9] = 0x10080000u;
|
|
/* 023A1B0C */ _t70 = cpu->r[9] + 0x00007050u;
|
|
/* 023A1B0C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t70);
|
|
/* 023A1B10 */ _t71 = cpu->r[1] + 0x00000008u;
|
|
/* 023A1B10 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t71);
|
|
/* 023A1B14 */ _t72 = cpu->r[1] + 0x00000014u;
|
|
/* 023A1B14 */ rbrew_write_f32(cpu->mem, _t72, cpu->f[13]);
|
|
/* 023A1B18 */ _t73 = cpu->r[1] + 0x00000018u;
|
|
/* 023A1B18 */ rbrew_write_f32(cpu->mem, _t73, cpu->f[13]);
|
|
/* 023A1B1C */ _t74 = cpu->r[1] + 0x0000001Cu;
|
|
/* 023A1B1C */ rbrew_write_f32(cpu->mem, _t74, cpu->f[13]);
|
|
/* 023A1B20 */ _t75 = cpu->r[31] + 0x00000064u;
|
|
/* 023A1B20 */ rbrew_write_f32(cpu->mem, _t75, cpu->f[0]);
|
|
/* 023A1B24 */ _t76 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023A1B24 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t76);
|
|
/* 023A1B28 */ _t77 = cpu->r[31] + 0x00000068u;
|
|
/* 023A1B28 */ rbrew_write_f32(cpu->mem, _t77, cpu->f[13]);
|
|
/* 023A1B2C */ _t78 = cpu->r[1] + 0x00000010u;
|
|
/* 023A1B2C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t78);
|
|
/* 023A1B30 */ _t79 = cpu->r[31] + 0x0000006Cu;
|
|
/* 023A1B30 */ rbrew_write_f32(cpu->mem, _t79, cpu->f[0]);
|
|
/* 023A1B34 */ _t80 = cpu->r[1] + 0x00000014u;
|
|
/* 023A1B34 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t80);
|
|
/* 023A1B38 */ _t81 = cpu->r[31] + 0x0000012Cu;
|
|
/* 023A1B38 */ cpu->r[0] = rbrew_read32(cpu->mem, _t81);
|
|
/* 023A1B3C */ _t82 = cpu->r[31] + 0x00000070u;
|
|
/* 023A1B3C */ rbrew_write_f32(cpu->mem, _t82, cpu->f[13]);
|
|
/* 023A1B40 */ _t83 = cpu->r[1] + 0x00000018u;
|
|
/* 023A1B40 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t83);
|
|
/* 023A1B44 */ cpu->r[0] = cpu->r[0] | 0x00000004u;
|
|
/* 023A1B48 */ _t84 = cpu->r[31] + 0x00000074u;
|
|
/* 023A1B48 */ rbrew_write_f32(cpu->mem, _t84, cpu->f[0]);
|
|
/* 023A1B4C */ _t85 = cpu->r[1] + 0x0000001Cu;
|
|
/* 023A1B4C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t85);
|
|
/* 023A1B50 */ _t86 = cpu->r[31] + 0x0000012Cu;
|
|
/* 023A1B50 */ rbrew_write32(cpu->mem, _t86, cpu->r[0]);
|
|
/* 023A1B54 */ _t87 = cpu->r[31] + 0x00000078u;
|
|
/* 023A1B54 */ rbrew_write_f32(cpu->mem, _t87, cpu->f[13]);
|
|
L_023A1B58: ; // 0x23a1b58
|
|
/* 023A1B58 */ _t88 = cpu->r[1] + 0x0000002Cu;
|
|
/* 023A1B58 */ cpu->r[29] = rbrew_read32(cpu->mem, _t88);
|
|
/* 023A1B5C */ _t89 = cpu->r[1] + 0x0000003Cu;
|
|
/* 023A1B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t89);
|
|
/* 023A1B60 */ _t90 = cpu->r[1] + 0x00000030u;
|
|
/* 023A1B60 */ cpu->r[30] = rbrew_read32(cpu->mem, _t90);
|
|
/* 023A1B64 */ cpu->lr = cpu->r[0];
|
|
/* 023A1B68 */ _t91 = cpu->r[1] + 0x00000034u;
|
|
/* 023A1B68 */ cpu->r[31] = rbrew_read32(cpu->mem, _t91);
|
|
/* 023A1B6C */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 023A1B70 */ return;
|
|
}
|
|
|