mirror of
https://github.com/ApfelTeeSaft/RebrewU.git
synced 2026-08-26 19:33:27 +00:00
35788 lines
1.9 MiB
Plaintext
35788 lines
1.9 MiB
Plaintext
// Generated by RebrewU -- do not edit
|
|
#include <rebrewu_runtime.h>
|
|
#include <stdint.h>
|
|
#include <math.h>
|
|
|
|
#include "Gambit.h"
|
|
|
|
// fn_025253A0 @ 0x25253a0
|
|
void Gambit_fn_025253A0(CPUState* cpu) {
|
|
L_025253A0: ; // 0x25253a0
|
|
/* 025253A0 */ cpu->r[3] = 0x00000001u;
|
|
/* 025253A4 */ return;
|
|
}
|
|
|
|
// fn_025253A8 @ 0x25253a8
|
|
void Gambit_fn_025253A8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_025253A8: ; // 0x25253a8
|
|
/* 025253A8 */ cpu->r[10] = 0x101F0000u;
|
|
/* 025253AC */ _t0 = cpu->r[10] + 0x00006338u;
|
|
/* 025253AC */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 025253AC */ cpu->r[10] = _t0;
|
|
/* 025253B0 */ _t1 = cpu->r[3] + 0x00000000u;
|
|
/* 025253B0 */ rbrew_write32(cpu->mem, _t1, cpu->r[11]);
|
|
/* 025253B4 */ _t2 = cpu->r[10] + 0x00000004u;
|
|
/* 025253B4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 025253B8 */ _t3 = cpu->r[3] + 0x00000004u;
|
|
/* 025253B8 */ rbrew_write32(cpu->mem, _t3, cpu->r[12]);
|
|
/* 025253BC */ _t4 = cpu->r[10] + 0x00000008u;
|
|
/* 025253BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 025253C0 */ _t5 = cpu->r[3] + 0x00000008u;
|
|
/* 025253C0 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 025253C4 */ return;
|
|
}
|
|
|
|
// fn_025253C8 @ 0x25253c8
|
|
void Gambit_fn_025253C8(CPUState* cpu) {
|
|
L_025253C8: ; // 0x25253c8
|
|
/* 025253C8 */ return;
|
|
}
|
|
|
|
// fn_025253CC @ 0x25253cc
|
|
void Gambit_fn_025253CC(CPUState* cpu) {
|
|
L_025253CC: ; // 0x25253cc
|
|
/* 025253CC */ return;
|
|
}
|
|
|
|
// fn_025253D0 @ 0x25253d0
|
|
void Gambit_fn_025253D0(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_025253D0: ; // 0x25253d0
|
|
/* 025253D0 */ _t0 = cpu->r[3] + 0x00000140u;
|
|
/* 025253D0 */ cpu->r[3] = rbrew_read8(cpu->mem, _t0);
|
|
/* 025253D4 */ return;
|
|
}
|
|
|
|
// fn_025253D8 @ 0x25253d8
|
|
void Gambit_fn_025253D8(CPUState* cpu) {
|
|
L_025253D8: ; // 0x25253d8
|
|
/* 025253D8 */ cpu->r[3] = 0x00000001u;
|
|
/* 025253DC */ return;
|
|
}
|
|
|
|
// fn_025253E0 @ 0x25253e0
|
|
void Gambit_fn_025253E0(CPUState* cpu) {
|
|
L_025253E0: ; // 0x25253e0
|
|
/* 025253E0 */ return;
|
|
}
|
|
|
|
// fn_025253E4 @ 0x25253e4
|
|
void Gambit_fn_025253E4(CPUState* cpu) {
|
|
L_025253E4: ; // 0x25253e4
|
|
/* 025253E4 */ return;
|
|
}
|
|
|
|
// fn_025253E8 @ 0x25253e8
|
|
void Gambit_fn_025253E8(CPUState* cpu) {
|
|
L_025253E8: ; // 0x25253e8
|
|
/* 025253E8 */ return;
|
|
}
|
|
|
|
// fn_025253EC @ 0x25253ec
|
|
void Gambit_fn_025253EC(CPUState* cpu) {
|
|
L_025253EC: ; // 0x25253ec
|
|
/* 025253EC */ return;
|
|
}
|
|
|
|
// fn_025253F0 @ 0x25253f0
|
|
void Gambit_fn_025253F0(CPUState* cpu) {
|
|
L_025253F0: ; // 0x25253f0
|
|
/* 025253F0 */ return;
|
|
}
|
|
|
|
// fn_025253F4 @ 0x25253f4
|
|
void Gambit_fn_025253F4(CPUState* cpu) {
|
|
L_025253F4: ; // 0x25253f4
|
|
/* 025253F4 */ return;
|
|
}
|
|
|
|
// fn_025253F8 @ 0x25253f8
|
|
void Gambit_fn_025253F8(CPUState* cpu) {
|
|
L_025253F8: ; // 0x25253f8
|
|
/* 025253F8 */ return;
|
|
}
|
|
|
|
// fn_025253FC @ 0x25253fc
|
|
void Gambit_fn_025253FC(CPUState* cpu) {
|
|
L_025253FC: ; // 0x25253fc
|
|
/* 025253FC */ return;
|
|
}
|
|
|
|
// fn_02525400 @ 0x2525400
|
|
void Gambit_fn_02525400(CPUState* cpu) {
|
|
L_02525400: ; // 0x2525400
|
|
/* 02525400 */ return;
|
|
}
|
|
|
|
// fn_02525404 @ 0x2525404
|
|
void Gambit_fn_02525404(CPUState* cpu) {
|
|
L_02525404: ; // 0x2525404
|
|
/* 02525404 */ return;
|
|
}
|
|
|
|
// fn_02525408 @ 0x2525408
|
|
void Gambit_fn_02525408(CPUState* cpu) {
|
|
L_02525408: ; // 0x2525408
|
|
/* 02525408 */ cpu->r[3] = 0x00000000u;
|
|
/* 0252540C */ return;
|
|
}
|
|
|
|
// fn_02525410 @ 0x2525410
|
|
void Gambit_fn_02525410(CPUState* cpu) {
|
|
L_02525410: ; // 0x2525410
|
|
/* 02525410 */ return;
|
|
}
|
|
|
|
// fn_02525414 @ 0x2525414
|
|
void Gambit_fn_02525414(CPUState* cpu) {
|
|
L_02525414: ; // 0x2525414
|
|
/* 02525414 */ return;
|
|
}
|
|
|
|
// fn_02525418 @ 0x2525418
|
|
void Gambit_fn_02525418(CPUState* cpu) {
|
|
L_02525418: ; // 0x2525418
|
|
/* 02525418 */ cpu->r[3] = 0x00000001u;
|
|
/* 0252541C */ return;
|
|
}
|
|
|
|
// fn_02525420 @ 0x2525420
|
|
void Gambit_fn_02525420(CPUState* cpu) {
|
|
L_02525420: ; // 0x2525420
|
|
/* 02525420 */ cpu->r[3] = 0x00000000u;
|
|
/* 02525424 */ return;
|
|
}
|
|
|
|
// fn_02525428 @ 0x2525428
|
|
void Gambit_fn_02525428(CPUState* cpu) {
|
|
L_02525428: ; // 0x2525428
|
|
/* 02525428 */ cpu->r[3] = 0x00000000u;
|
|
/* 0252542C */ return;
|
|
}
|
|
|
|
// fn_02525430 @ 0x2525430
|
|
void Gambit_fn_02525430(CPUState* cpu) {
|
|
L_02525430: ; // 0x2525430
|
|
/* 02525430 */ cpu->r[3] = 0x00000000u;
|
|
/* 02525434 */ return;
|
|
}
|
|
|
|
// fn_02525438 @ 0x2525438
|
|
void Gambit_fn_02525438(CPUState* cpu) {
|
|
L_02525438: ; // 0x2525438
|
|
/* 02525438 */ cpu->r[3] = 0x00000000u;
|
|
/* 0252543C */ return;
|
|
}
|
|
|
|
// fn_02525440 @ 0x2525440
|
|
void Gambit_fn_02525440(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02525440: ; // 0x2525440
|
|
/* 02525440 */ _t0 = cpu->r[3] + 0x000000E4u;
|
|
/* 02525440 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 02525444 */ return;
|
|
}
|
|
|
|
// fn_02525448 @ 0x2525448
|
|
void Gambit_fn_02525448(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02525448: ; // 0x2525448
|
|
/* 02525448 */ _t0 = cpu->r[4] + 0x00000078u;
|
|
/* 02525448 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0252544C */ _t1 = cpu->r[3] + 0x00000000u;
|
|
/* 0252544C */ rbrew_write32(cpu->mem, _t1, cpu->r[12]);
|
|
/* 02525450 */ _t2 = cpu->r[4] + 0x0000007Cu;
|
|
/* 02525450 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02525454 */ _t3 = cpu->r[3] + 0x00000004u;
|
|
/* 02525454 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02525458 */ _t4 = cpu->r[4] + 0x00000080u;
|
|
/* 02525458 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0252545C */ _t5 = cpu->r[3] + 0x00000008u;
|
|
/* 0252545C */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 02525460 */ return;
|
|
}
|
|
|
|
// fn_02525464 @ 0x2525464
|
|
void Gambit_fn_02525464(CPUState* cpu) {
|
|
L_02525464: ; // 0x2525464
|
|
/* 02525464 */ cpu->r[3] = 0x100C0000u;
|
|
/* 02525468 */ cpu->r[3] = cpu->r[3] + 0x00002404u;
|
|
/* 0252546C */ return;
|
|
}
|
|
|
|
// fn_02525470 @ 0x2525470
|
|
void Gambit_fn_02525470(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32;
|
|
|
|
L_02525470: ; // 0x2525470
|
|
/* 02525470 */ cpu->r[10] = 0x101D0000u;
|
|
/* 02525474 */ _t0 = cpu->r[10] + 0x00000930u;
|
|
/* 02525474 */ cpu->r[10] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02525478 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0252547C */ cpu->r[10] = 0x101D0000u;
|
|
/* 02525480 */ cpu->r[10] = cpu->r[10] + 0x000009F4u;
|
|
/* 02525484 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02525484 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02525484 */ if (_t2) goto L_02525488; else goto L_025254A0;
|
|
L_02525488: ; // 0x2525488
|
|
/* 02525488 */ cpu->r[0] = 0x100C0000u;
|
|
/* 0252548C */ cpu->r[9] = 0x00000001u;
|
|
/* 02525490 */ cpu->r[11] = 0x101D0000u;
|
|
/* 02525494 */ cpu->r[0] = cpu->r[0] + 0x000023E8u;
|
|
/* 02525498 */ _t3 = cpu->r[11] + 0x00000930u;
|
|
/* 02525498 */ rbrew_write32(cpu->mem, _t3, cpu->r[9]);
|
|
/* 0252549C */ _t4 = cpu->r[10] + 0x00000000u;
|
|
/* 0252549C */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
L_025254A0: ; // 0x25254a0
|
|
/* 025254A0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[10]);
|
|
/* 025254A4 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025254A4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 025254A4 */ if (_t6) goto L_025254A8; else goto L_025254B0;
|
|
L_025254A8: ; // 0x25254a8
|
|
/* 025254A8 */ cpu->r[3] = 0x00000001u;
|
|
/* 025254AC */ return;
|
|
L_025254B0: ; // 0x25254b0
|
|
/* 025254B0 */ cpu->r[9] = 0x101D0000u;
|
|
/* 025254B4 */ _t7 = cpu->r[9] + 0xFFFFDDF0u;
|
|
/* 025254B4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t7);
|
|
/* 025254B8 */ cpu->r[11] = 0x101D0000u;
|
|
/* 025254BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 025254C0 */ cpu->r[11] = cpu->r[11] + 0xFFFFFF40u;
|
|
/* 025254C4 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025254C4 */ _t9 = _t8 & 0x00000001u;
|
|
/* 025254C4 */ if (_t9) goto L_025254C8; else goto L_025254E0;
|
|
L_025254C8: ; // 0x25254c8
|
|
/* 025254C8 */ cpu->r[9] = 0x100C0000u;
|
|
/* 025254CC */ cpu->r[0] = 0x00000001u;
|
|
/* 025254D0 */ cpu->r[10] = 0x101D0000u;
|
|
/* 025254D4 */ cpu->r[9] = cpu->r[9] + 0x000023D8u;
|
|
/* 025254D8 */ _t10 = cpu->r[10] + 0xFFFFDDF0u;
|
|
/* 025254D8 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 025254DC */ _t11 = cpu->r[11] + 0x00000000u;
|
|
/* 025254DC */ rbrew_write32(cpu->mem, _t11, cpu->r[9]);
|
|
L_025254E0: ; // 0x25254e0
|
|
/* 025254E0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[11]);
|
|
/* 025254E4 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025254E4 */ _t13 = _t12 & 0x00000001u;
|
|
/* 025254E4 */ if (_t13) goto L_025254E8; else goto L_025254F0;
|
|
L_025254E8: ; // 0x25254e8
|
|
/* 025254E8 */ cpu->r[0] = 0x00000001u;
|
|
/* 025254EC */ goto L_025255A8;
|
|
L_025254F0: ; // 0x25254f0
|
|
/* 025254F0 */ cpu->r[11] = 0x101D0000u;
|
|
/* 025254F4 */ _t14 = cpu->r[11] + 0xFFFFDA10u;
|
|
/* 025254F4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t14);
|
|
/* 025254F8 */ cpu->r[9] = 0x101D0000u;
|
|
/* 025254FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02525500 */ cpu->r[9] = cpu->r[9] + 0xFFFFFBBCu;
|
|
/* 02525504 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02525504 */ _t16 = _t15 & 0x00000001u;
|
|
/* 02525504 */ if (_t16) goto L_02525508; else goto L_02525520;
|
|
L_02525508: ; // 0x2525508
|
|
/* 02525508 */ cpu->r[11] = 0x100C0000u;
|
|
/* 0252550C */ cpu->r[10] = 0x00000001u;
|
|
/* 02525510 */ cpu->r[12] = 0x101D0000u;
|
|
/* 02525514 */ cpu->r[11] = cpu->r[11] + 0x000023C8u;
|
|
/* 02525518 */ _t17 = cpu->r[12] + 0xFFFFDA10u;
|
|
/* 02525518 */ rbrew_write32(cpu->mem, _t17, cpu->r[10]);
|
|
/* 0252551C */ _t18 = cpu->r[9] + 0x00000000u;
|
|
/* 0252551C */ rbrew_write32(cpu->mem, _t18, cpu->r[11]);
|
|
L_02525520: ; // 0x2525520
|
|
/* 02525520 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[9]);
|
|
/* 02525524 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02525524 */ _t20 = _t19 & 0x00000001u;
|
|
/* 02525524 */ if (_t20) goto L_02525528; else goto L_02525530;
|
|
L_02525528: ; // 0x2525528
|
|
/* 02525528 */ cpu->r[0] = 0x00000001u;
|
|
/* 0252552C */ goto L_025255A4;
|
|
L_02525530: ; // 0x2525530
|
|
/* 02525530 */ cpu->r[9] = 0x101D0000u;
|
|
/* 02525534 */ _t21 = cpu->r[9] + 0xFFFFD4E8u;
|
|
/* 02525534 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02525534 */ cpu->r[9] = _t21;
|
|
/* 02525538 */ cpu->r[10] = 0x101D0000u;
|
|
/* 0252553C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02525540 */ cpu->r[10] = cpu->r[10] + 0xFFFFD4ECu;
|
|
/* 02525544 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02525544 */ _t23 = _t22 & 0x00000001u;
|
|
/* 02525544 */ if (_t23) goto L_02525548; else goto L_0252555C;
|
|
L_02525548: ; // 0x2525548
|
|
/* 02525548 */ cpu->r[0] = 0x100C0000u;
|
|
/* 0252554C */ cpu->r[11] = 0x00000001u;
|
|
/* 02525550 */ cpu->r[0] = cpu->r[0] + 0x000023B8u;
|
|
/* 02525554 */ _t24 = cpu->r[9] + 0x00000000u;
|
|
/* 02525554 */ rbrew_write32(cpu->mem, _t24, cpu->r[11]);
|
|
/* 02525558 */ _t25 = cpu->r[10] + 0x00000000u;
|
|
/* 02525558 */ rbrew_write32(cpu->mem, _t25, cpu->r[0]);
|
|
L_0252555C: ; // 0x252555c
|
|
/* 0252555C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[10]);
|
|
/* 02525560 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02525560 */ _t27 = _t26 & 0x00000001u;
|
|
/* 02525560 */ if (_t27) goto L_02525564; else goto L_0252556C;
|
|
L_02525564: ; // 0x2525564
|
|
/* 02525564 */ cpu->r[0] = 0x00000001u;
|
|
/* 02525568 */ goto L_025255A4;
|
|
L_0252556C: ; // 0x252556c
|
|
/* 0252556C */ cpu->r[10] = 0x101D0000u;
|
|
/* 02525570 */ _t28 = cpu->r[10] + 0xFFFFD4E0u;
|
|
/* 02525570 */ cpu->r[9] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02525570 */ cpu->r[10] = _t28;
|
|
/* 02525574 */ cpu->r[11] = 0x101D0000u;
|
|
/* 02525578 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0252557C */ cpu->r[11] = cpu->r[11] + 0xFFFFD4E4u;
|
|
/* 02525580 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02525580 */ _t30 = _t29 & 0x00000001u;
|
|
/* 02525580 */ if (_t30) goto L_02525584; else goto L_02525598;
|
|
L_02525584: ; // 0x2525584
|
|
/* 02525584 */ cpu->r[9] = 0x100C0000u;
|
|
/* 02525588 */ cpu->r[0] = 0x00000001u;
|
|
/* 0252558C */ cpu->r[9] = cpu->r[9] + 0x00002348u;
|
|
/* 02525590 */ _t31 = cpu->r[10] + 0x00000000u;
|
|
/* 02525590 */ rbrew_write32(cpu->mem, _t31, cpu->r[0]);
|
|
/* 02525594 */ _t32 = cpu->r[11] + 0x00000000u;
|
|
/* 02525594 */ rbrew_write32(cpu->mem, _t32, cpu->r[9]);
|
|
L_02525598: ; // 0x2525598
|
|
/* 02525598 */ cpu->r[0] = cpu->r[4] ^ cpu->r[11];
|
|
/* 0252559C */ cpu->r[0] = rbrew_clz32(cpu->r[0]);
|
|
/* 025255A0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
L_025255A4: ; // 0x25255a4
|
|
/* 025255A4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
L_025255A8: ; // 0x25255a8
|
|
/* 025255A8 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 025255AC */ return;
|
|
}
|
|
|
|
// fn_025255B0 @ 0x25255b0
|
|
void Gambit_fn_025255B0(CPUState* cpu) {
|
|
L_025255B0: ; // 0x25255b0
|
|
/* 025255B0 */ return;
|
|
}
|
|
|
|
// fn_025255B4 @ 0x25255b4
|
|
void Gambit_fn_025255B4(CPUState* cpu) {
|
|
L_025255B4: ; // 0x25255b4
|
|
/* 025255B4 */ return;
|
|
}
|
|
|
|
// fn_025255B8 @ 0x25255b8
|
|
void Gambit_fn_025255B8(CPUState* cpu) {
|
|
L_025255B8: ; // 0x25255b8
|
|
/* 025255B8 */ cpu->r[3] = cpu->r[3] + 0x000001E8u;
|
|
/* 025255BC */ return;
|
|
}
|
|
|
|
// fn_025255C0 @ 0x25255c0
|
|
void Gambit_fn_025255C0(CPUState* cpu) {
|
|
L_025255C0: ; // 0x25255c0
|
|
/* 025255C0 */ return;
|
|
}
|
|
|
|
// fn_025255CC @ 0x25255cc
|
|
void Gambit_fn_025255CC(CPUState* cpu) {
|
|
L_025255CC: ; // 0x25255cc
|
|
/* 025255CC */ cpu->r[3] = 0x100C0000u;
|
|
/* 025255D0 */ cpu->r[3] = cpu->r[3] + 0x00002410u;
|
|
/* 025255D4 */ return;
|
|
}
|
|
|
|
// fn_025255D8 @ 0x25255d8
|
|
void Gambit_fn_025255D8(CPUState* cpu) {
|
|
L_025255D8: ; // 0x25255d8
|
|
/* 025255D8 */ cpu->r[3] = 0x100C0000u;
|
|
/* 025255DC */ cpu->r[3] = cpu->r[3] + 0x00002420u;
|
|
/* 025255E0 */ return;
|
|
}
|
|
|
|
// fn_025255E4 @ 0x25255e4
|
|
void Gambit_fn_025255E4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_024FFC2C: ; // 0x24ffc2c
|
|
/* 024FFC2C */ cpu->r[0] = cpu->lr;
|
|
/* 024FFC30 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024FFC30 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024FFC30 */ cpu->r[1] = _t0;
|
|
/* 024FFC34 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024FFC34 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024FFC38 */ cpu->r[31] = cpu->r[3];
|
|
/* 024FFC3C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024FFC3C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024FFC40 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 024FFC40 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 024FFC44 */ cpu->r[12] = 0x00000000u;
|
|
/* 024FFC48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024FFC4C */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 024FFC4C */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 024FFC50 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024FFC50 */ _t6 = _t5 & 0x00000001u;
|
|
/* 024FFC50 */ if (_t6) goto L_024FFC78; else goto L_024FFC54;
|
|
L_024FFC54: ; // 0x24ffc54
|
|
/* 024FFC54 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 024FFC54 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 024FFC58 */ /* nop */
|
|
/* 024FFC5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 024FFC60 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024FFC60 */ _t9 = _t8 & 0x00000001u;
|
|
/* 024FFC60 */ if (_t9) goto L_024FFC64; else goto L_024FFC78;
|
|
L_024FFC64: ; // 0x24ffc64
|
|
/* 024FFC64 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 024FFC64 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024FFC68 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 024FFC68 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024FFC6C */ cpu->ctr = cpu->r[0];
|
|
/* 024FFC70 */ cpu->r[3] = cpu->r[31];
|
|
/* 024FFC74 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_024FFC78: ; // 0x24ffc78
|
|
/* 024FFC78 */ cpu->r[3] = cpu->r[31];
|
|
/* 024FFC7C */ Gambit_fn_024FFBA4(cpu);
|
|
/* 024FFC80 */ cpu->r[3] = cpu->r[31];
|
|
/* 024FFC84 */ Gambit_fn_027FC37C(cpu);
|
|
/* 024FFC88 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 024FFC88 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 024FFC8C */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024FFC8C */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 024FFC90 */ cpu->lr = cpu->r[0];
|
|
/* 024FFC94 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024FFC98 */ return;
|
|
L_025255E4: ; // 0x25255e4
|
|
/* 025255E4 */ cpu->r[3] = cpu->r[3] + 0x000001B0u;
|
|
/* 025255E8 */ goto L_024FFC2C;
|
|
}
|
|
|
|
// fn_025255EC @ 0x25255ec
|
|
void Gambit_fn_025255EC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_025255EC: ; // 0x25255ec
|
|
/* 025255EC */ cpu->r[0] = cpu->lr;
|
|
/* 025255F0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 025255F0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 025255F0 */ cpu->r[1] = _t0;
|
|
/* 025255F4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025255F4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 025255F8 */ cpu->r[31] = cpu->r[3];
|
|
/* 025255FC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 025255FC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02525600 */ _t3 = cpu->r[31] + 0x000001BEu;
|
|
/* 02525600 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02525604 */ cpu->r[3] = cpu->r[31] + 0x000001B0u;
|
|
/* 02525608 */ /* nop */
|
|
/* 0252560C */ Gambit_fn_027FC35C(cpu);
|
|
/* 02525610 */ cpu->r[3] = cpu->r[31] + 0x000001B0u;
|
|
/* 02525614 */ Gambit_fn_024FFB1C(cpu);
|
|
/* 02525618 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 02525618 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0252561C */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252561C */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02525620 */ cpu->lr = cpu->r[0];
|
|
/* 02525624 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02525628 */ return;
|
|
}
|
|
|
|
// fn_025255F0 @ 0x25255f0
|
|
void Gambit_fn_025255F0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_025255F0: ; // 0x25255f0
|
|
/* 025255F0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 025255F0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 025255F0 */ cpu->r[1] = _t0;
|
|
/* 025255F4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025255F4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 025255F8 */ cpu->r[31] = cpu->r[3];
|
|
/* 025255FC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 025255FC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02525600 */ _t3 = cpu->r[31] + 0x000001BEu;
|
|
/* 02525600 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02525604 */ cpu->r[3] = cpu->r[31] + 0x000001B0u;
|
|
/* 02525608 */ /* nop */
|
|
/* 0252560C */ Gambit_fn_027FC35C(cpu);
|
|
/* 02525610 */ cpu->r[3] = cpu->r[31] + 0x000001B0u;
|
|
/* 02525614 */ Gambit_fn_024FFB1C(cpu);
|
|
/* 02525618 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 02525618 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0252561C */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252561C */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02525620 */ cpu->lr = cpu->r[0];
|
|
/* 02525624 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02525628 */ return;
|
|
}
|
|
|
|
// fn_0252562C @ 0x252562c
|
|
void Gambit_fn_0252562C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _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_0252562C: ; // 0x252562c
|
|
/* 0252562C */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 0252562C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252562C */ cpu->r[1] = _t0;
|
|
/* 02525630 */ /* nop */
|
|
/* 02525634 */ cpu->r[0] = cpu->lr;
|
|
/* 02525638 */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 02525638 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0252563C */ cpu->r[29] = cpu->r[6];
|
|
/* 02525640 */ cpu->r[28] = cpu->r[3];
|
|
/* 02525644 */ cpu->r[30] = cpu->r[5];
|
|
/* 02525648 */ _t2 = cpu->r[30] + 0x00000000u;
|
|
/* 02525648 */ cpu->r[27] = rbrew_read8(cpu->mem, _t2);
|
|
/* 0252564C */ cpu->r[31] = 0x101D0000u;
|
|
/* 02525650 */ _t3 = cpu->r[28] + 0x0000001Cu;
|
|
/* 02525650 */ rbrew_write32(cpu->mem, _t3, cpu->r[4]);
|
|
/* 02525654 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02525658 */ _t4 = cpu->r[28] + 0x0000000Fu;
|
|
/* 02525658 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[27]);
|
|
/* 0252565C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252565C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0252565C */ if (_t6) goto L_025256A0; else goto L_02525660;
|
|
L_02525660: ; // 0x2525660
|
|
/* 02525660 */ _t7 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 02525660 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02525664 */ Gambit_fn_02826F20(cpu);
|
|
/* 02525668 */ _t8 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02525668 */ cpu->r[9] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0252566C */ _t9 = cpu->r[9] + 0x00000034u;
|
|
/* 0252566C */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02525670 */ cpu->ctr = cpu->r[0];
|
|
/* 02525674 */ cpu->r[5] = 0x00000004u;
|
|
/* 02525678 */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0252567C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02525680 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02525684 */ cpu->r[0] = cpu->r[27];
|
|
/* 02525688 */ _t10 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02525688 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02525688 */ if (_t11) goto L_02525690; else goto L_0252568C;
|
|
L_0252568C: ; // 0x252568c
|
|
/* 0252568C */ cpu->r[0] = 0x00000001u;
|
|
L_02525690: ; // 0x2525690
|
|
/* 02525690 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02525694 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02525694 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02525694 */ if (_t13) goto L_025256A0; else goto L_02525698;
|
|
L_02525698: ; // 0x2525698
|
|
/* 02525698 */ _t14 = cpu->r[28] + 0x00000024u;
|
|
/* 02525698 */ rbrew_write32(cpu->mem, _t14, cpu->r[3]);
|
|
/* 0252569C */ _t15 = cpu->r[28] + 0x00000020u;
|
|
/* 0252569C */ rbrew_write32(cpu->mem, _t15, cpu->r[27]);
|
|
L_025256A0: ; // 0x25256a0
|
|
/* 025256A0 */ _t16 = cpu->r[28] + 0x00000020u;
|
|
/* 025256A0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t16);
|
|
/* 025256A4 */ cpu->r[0] = 0x00000000u;
|
|
/* 025256A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 025256AC */ cpu->r[12] = cpu->r[0];
|
|
/* 025256B0 */ _t17 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 025256B0 */ _t18 = _t17 & 0x00000001u;
|
|
/* 025256B0 */ if (_t18) goto L_025256B4; else goto L_025256D8;
|
|
L_025256B4: ; // 0x25256b4
|
|
/* 025256B4 */ cpu->ctr = cpu->r[7];
|
|
/* 025256B8 */ cpu->r[10] = 0x00000000u;
|
|
L_025256BC: ; // 0x25256bc
|
|
/* 025256BC */ _t19 = cpu->r[28] + 0x00000024u;
|
|
/* 025256BC */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 025256C0 */ _t20 = cpu->r[11] + cpu->r[10];
|
|
/* 025256C0 */ rbrew_write16(cpu->mem, _t20, (uint16_t)cpu->r[0]);
|
|
/* 025256C4 */ cpu->r[8] = cpu->r[11] + cpu->r[10];
|
|
/* 025256C8 */ _t21 = cpu->r[8] + 0x00000004u;
|
|
/* 025256C8 */ rbrew_write32(cpu->mem, _t21, cpu->r[12]);
|
|
/* 025256CC */ cpu->r[10] = cpu->r[10] + 0x00000008u;
|
|
/* 025256D0 */ _t22 = cpu->r[8] + 0x00000002u;
|
|
/* 025256D0 */ rbrew_write16(cpu->mem, _t22, (uint16_t)cpu->r[0]);
|
|
/* 025256D4 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 025256D4 */ _t23 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 025256D4 */ _t24 = _t23 >> (0x00000002u & 31u);
|
|
/* 025256D4 */ _t25 = _t24 & 0x00000001u;
|
|
/* 025256D4 */ if (_t25) goto L_025256BC; else goto L_025256D8;
|
|
L_025256D8: ; // 0x25256d8
|
|
/* 025256D8 */ _t26 = cpu->r[28] + 0x0000000Fu;
|
|
/* 025256D8 */ cpu->r[27] = rbrew_read8(cpu->mem, _t26);
|
|
/* 025256DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 025256E0 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025256E0 */ _t28 = _t27 & 0x00000001u;
|
|
/* 025256E0 */ if (_t28) goto L_02525724; else goto L_025256E4;
|
|
L_025256E4: ; // 0x25256e4
|
|
/* 025256E4 */ _t29 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 025256E4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t29);
|
|
/* 025256E8 */ Gambit_fn_02826F20(cpu);
|
|
/* 025256EC */ _t30 = cpu->r[3] + 0x0000000Cu;
|
|
/* 025256EC */ cpu->r[12] = rbrew_read32(cpu->mem, _t30);
|
|
/* 025256F0 */ _t31 = cpu->r[12] + 0x00000034u;
|
|
/* 025256F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 025256F4 */ cpu->ctr = cpu->r[0];
|
|
/* 025256F8 */ cpu->r[5] = 0x00000004u;
|
|
/* 025256FC */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02525700 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02525704 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02525708 */ cpu->r[11] = cpu->r[27];
|
|
/* 0252570C */ _t32 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252570C */ _t33 = _t32 & 0x00000001u;
|
|
/* 0252570C */ if (_t33) goto L_02525714; else goto L_02525710;
|
|
L_02525710: ; // 0x2525710
|
|
/* 02525710 */ cpu->r[11] = 0x00000001u;
|
|
L_02525714: ; // 0x2525714
|
|
/* 02525714 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02525718 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02525718 */ _t35 = _t34 & 0x00000001u;
|
|
/* 02525718 */ if (_t35) goto L_02525724; else goto L_0252571C;
|
|
L_0252571C: ; // 0x252571c
|
|
/* 0252571C */ _t36 = cpu->r[28] + 0x0000002Cu;
|
|
/* 0252571C */ rbrew_write32(cpu->mem, _t36, cpu->r[3]);
|
|
/* 02525720 */ _t37 = cpu->r[28] + 0x00000028u;
|
|
/* 02525720 */ rbrew_write32(cpu->mem, _t37, cpu->r[27]);
|
|
L_02525724: ; // 0x2525724
|
|
/* 02525724 */ _t38 = cpu->r[28] + 0x00000028u;
|
|
/* 02525724 */ cpu->r[6] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02525728 */ cpu->r[0] = 0x00000000u;
|
|
/* 0252572C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 02525730 */ cpu->r[12] = cpu->r[0];
|
|
/* 02525734 */ _t39 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02525734 */ _t40 = _t39 & 0x00000001u;
|
|
/* 02525734 */ if (_t40) goto L_02525738; else goto L_0252575C;
|
|
L_02525738: ; // 0x2525738
|
|
/* 02525738 */ cpu->ctr = cpu->r[6];
|
|
/* 0252573C */ cpu->r[9] = 0x00000000u;
|
|
L_02525740: ; // 0x2525740
|
|
/* 02525740 */ _t41 = cpu->r[28] + 0x0000002Cu;
|
|
/* 02525740 */ cpu->r[5] = rbrew_read32(cpu->mem, _t41);
|
|
/* 02525744 */ _t42 = cpu->r[5] + cpu->r[9];
|
|
/* 02525744 */ rbrew_write16(cpu->mem, _t42, (uint16_t)cpu->r[0]);
|
|
/* 02525748 */ cpu->r[7] = cpu->r[5] + cpu->r[9];
|
|
/* 0252574C */ _t43 = cpu->r[7] + 0x00000004u;
|
|
/* 0252574C */ rbrew_write32(cpu->mem, _t43, cpu->r[12]);
|
|
/* 02525750 */ cpu->r[9] = cpu->r[9] + 0x00000008u;
|
|
/* 02525754 */ _t44 = cpu->r[7] + 0x00000002u;
|
|
/* 02525754 */ rbrew_write16(cpu->mem, _t44, (uint16_t)cpu->r[0]);
|
|
/* 02525758 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02525758 */ _t45 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02525758 */ _t46 = _t45 >> (0x00000002u & 31u);
|
|
/* 02525758 */ _t47 = _t46 & 0x00000001u;
|
|
/* 02525758 */ if (_t47) goto L_02525740; else goto L_0252575C;
|
|
L_0252575C: ; // 0x252575c
|
|
/* 0252575C */ _t48 = cpu->r[28] + 0x0000000Fu;
|
|
/* 0252575C */ cpu->r[27] = rbrew_read8(cpu->mem, _t48);
|
|
/* 02525760 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02525764 */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02525764 */ _t50 = _t49 & 0x00000001u;
|
|
/* 02525764 */ if (_t50) goto L_025257A8; else goto L_02525768;
|
|
L_02525768: ; // 0x2525768
|
|
/* 02525768 */ _t51 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 02525768 */ cpu->r[3] = rbrew_read32(cpu->mem, _t51);
|
|
/* 0252576C */ Gambit_fn_02826F20(cpu);
|
|
/* 02525770 */ _t52 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02525770 */ cpu->r[6] = rbrew_read32(cpu->mem, _t52);
|
|
/* 02525774 */ _t53 = cpu->r[6] + 0x00000034u;
|
|
/* 02525774 */ cpu->r[0] = rbrew_read32(cpu->mem, _t53);
|
|
/* 02525778 */ cpu->ctr = cpu->r[0];
|
|
/* 0252577C */ cpu->r[5] = 0x00000004u;
|
|
/* 02525780 */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02525784 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02525788 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0252578C */ cpu->r[10] = cpu->r[27];
|
|
/* 02525790 */ _t54 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02525790 */ _t55 = _t54 & 0x00000001u;
|
|
/* 02525790 */ if (_t55) goto L_02525798; else goto L_02525794;
|
|
L_02525794: ; // 0x2525794
|
|
/* 02525794 */ cpu->r[10] = 0x00000001u;
|
|
L_02525798: ; // 0x2525798
|
|
/* 02525798 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252579C */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252579C */ _t57 = _t56 & 0x00000001u;
|
|
/* 0252579C */ if (_t57) goto L_025257A8; else goto L_025257A0;
|
|
L_025257A0: ; // 0x25257a0
|
|
/* 025257A0 */ _t58 = cpu->r[28] + 0x00000034u;
|
|
/* 025257A0 */ rbrew_write32(cpu->mem, _t58, cpu->r[3]);
|
|
/* 025257A4 */ _t59 = cpu->r[28] + 0x00000030u;
|
|
/* 025257A4 */ rbrew_write32(cpu->mem, _t59, cpu->r[27]);
|
|
L_025257A8: ; // 0x25257a8
|
|
/* 025257A8 */ _t60 = cpu->r[28] + 0x00000030u;
|
|
/* 025257A8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t60);
|
|
/* 025257AC */ cpu->r[0] = 0x00000000u;
|
|
/* 025257B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 025257B4 */ cpu->r[5] = cpu->r[0];
|
|
/* 025257B8 */ _t61 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 025257B8 */ _t62 = _t61 & 0x00000001u;
|
|
/* 025257B8 */ if (_t62) goto L_025257BC; else goto L_025257E0;
|
|
L_025257BC: ; // 0x25257bc
|
|
/* 025257BC */ cpu->ctr = cpu->r[12];
|
|
/* 025257C0 */ cpu->r[8] = 0x00000000u;
|
|
L_025257C4: ; // 0x25257c4
|
|
/* 025257C4 */ _t63 = cpu->r[28] + 0x00000034u;
|
|
/* 025257C4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t63);
|
|
/* 025257C8 */ _t64 = cpu->r[9] + cpu->r[8];
|
|
/* 025257C8 */ rbrew_write16(cpu->mem, _t64, (uint16_t)cpu->r[0]);
|
|
/* 025257CC */ cpu->r[6] = cpu->r[9] + cpu->r[8];
|
|
/* 025257D0 */ _t65 = cpu->r[6] + 0x00000004u;
|
|
/* 025257D0 */ rbrew_write32(cpu->mem, _t65, cpu->r[5]);
|
|
/* 025257D4 */ cpu->r[8] = cpu->r[8] + 0x00000008u;
|
|
/* 025257D8 */ _t66 = cpu->r[6] + 0x00000002u;
|
|
/* 025257D8 */ rbrew_write16(cpu->mem, _t66, (uint16_t)cpu->r[0]);
|
|
/* 025257DC */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 025257DC */ _t67 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 025257DC */ _t68 = _t67 >> (0x00000002u & 31u);
|
|
/* 025257DC */ _t69 = _t68 & 0x00000001u;
|
|
/* 025257DC */ if (_t69) goto L_025257C4; else goto L_025257E0;
|
|
L_025257E0: ; // 0x25257e0
|
|
/* 025257E0 */ _t70 = cpu->r[30] + 0x00000000u;
|
|
/* 025257E0 */ cpu->r[25] = rbrew_read8(cpu->mem, _t70);
|
|
/* 025257E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 025257E8 */ _t71 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025257E8 */ _t72 = _t71 & 0x00000001u;
|
|
/* 025257E8 */ if (_t72) goto L_025258C4; else goto L_025257EC;
|
|
L_025257EC: ; // 0x25257ec
|
|
/* 025257EC */ _t73 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 025257EC */ cpu->r[3] = rbrew_read32(cpu->mem, _t73);
|
|
/* 025257F0 */ Gambit_fn_02826F20(cpu);
|
|
/* 025257F4 */ _t74 = cpu->r[3] + 0x0000000Cu;
|
|
/* 025257F4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t74);
|
|
/* 025257F8 */ _t75 = cpu->r[10] + 0x00000034u;
|
|
/* 025257F8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t75);
|
|
/* 025257FC */ cpu->ctr = cpu->r[12];
|
|
/* 02525800 */ cpu->r[5] = 0x00000004u;
|
|
/* 02525804 */ cpu->r[4] = (uint32_t)((int32_t)cpu->r[25] * (int32_t)0x00000024u);
|
|
/* 02525808 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252580C */ cpu->r[24] = cpu->r[3];
|
|
/* 02525810 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 02525814 */ cpu->r[30] = cpu->r[25];
|
|
/* 02525818 */ cpu->r[7] = 0x00000000u;
|
|
/* 0252581C */ _t76 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252581C */ _t77 = _t76 & 0x00000001u;
|
|
/* 0252581C */ if (_t77) goto L_02525824; else goto L_02525820;
|
|
L_02525820: ; // 0x2525820
|
|
/* 02525820 */ cpu->r[30] = 0x00000001u;
|
|
L_02525824: ; // 0x2525824
|
|
/* 02525824 */ cpu->r[31] = 0x10110000u;
|
|
/* 02525828 */ cpu->r[22] = (uint32_t)((int32_t)cpu->r[7] * (int32_t)0x00000024u);
|
|
/* 0252582C */ _t78 = cpu->r[31] + 0x00007399u;
|
|
/* 0252582C */ cpu->r[31] = rbrew_read8(cpu->mem, _t78);
|
|
/* 02525830 */ cpu->r[23] = 0x00000018u;
|
|
L_02525834: ; // 0x2525834
|
|
/* 02525834 */ cpu->r[27] = cpu->r[24] + cpu->r[22];
|
|
/* 02525834 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02525838 */ _t79 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02525838 */ _t80 = _t79 & 0x00000001u;
|
|
/* 02525838 */ if (_t80) goto L_025258A8; else goto L_0252583C;
|
|
L_0252583C: ; // 0x252583c
|
|
/* 0252583C */ cpu->r[26] = cpu->r[27];
|
|
/* 0252583C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 02525840 */ _t81 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02525840 */ _t82 = _t81 & 0x00000001u;
|
|
/* 02525840 */ if (_t82) goto L_02525844; else goto L_02525854;
|
|
L_02525844: ; // 0x2525844
|
|
/* 02525844 */ cpu->r[3] = 0x00000024u;
|
|
/* 02525848 */ Gambit_fn_02801A78(cpu);
|
|
/* 0252584C */ cpu->r[26] = cpu->r[3];
|
|
/* 0252584C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 02525850 */ _t83 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02525850 */ _t84 = _t83 & 0x00000001u;
|
|
/* 02525850 */ if (_t84) goto L_0252589C; else goto L_02525854;
|
|
L_02525854: ; // 0x2525854
|
|
/* 02525854 */ cpu->r[11] = cpu->r[26];
|
|
/* 02525854 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02525858 */ _t85 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02525858 */ _t86 = _t85 & 0x00000001u;
|
|
/* 02525858 */ if (_t86) goto L_0252585C; else goto L_0252586C;
|
|
L_0252585C: ; // 0x252585c
|
|
/* 0252585C */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02525860 */ Gambit_fn_02801A78(cpu);
|
|
/* 02525864 */ cpu->r[11] = cpu->r[3];
|
|
/* 02525864 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02525868 */ _t87 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02525868 */ _t88 = _t87 & 0x00000001u;
|
|
/* 02525868 */ if (_t88) goto L_02525888; else goto L_0252586C;
|
|
L_0252586C: ; // 0x252586c
|
|
/* 0252586C */ cpu->r[5] = 0x100C0000u;
|
|
/* 02525870 */ _t89 = cpu->r[11] + 0x00000008u;
|
|
/* 02525870 */ rbrew_write32(cpu->mem, _t89, cpu->r[23]);
|
|
/* 02525874 */ cpu->r[0] = cpu->r[26] + 0x0000000Cu;
|
|
/* 02525878 */ cpu->r[5] = cpu->r[5] + 0x00002370u;
|
|
/* 0252587C */ _t90 = cpu->r[11] + 0x00000000u;
|
|
/* 0252587C */ rbrew_write32(cpu->mem, _t90, cpu->r[0]);
|
|
/* 02525880 */ _t91 = cpu->r[11] + 0x00000004u;
|
|
/* 02525880 */ rbrew_write32(cpu->mem, _t91, cpu->r[5]);
|
|
/* 02525884 */ _t92 = cpu->r[26] + 0x00000023u;
|
|
/* 02525884 */ rbrew_write8(cpu->mem, _t92, (uint8_t)cpu->r[31]);
|
|
L_02525888: ; // 0x2525888
|
|
/* 02525888 */ cpu->r[6] = 0x100C0000u;
|
|
/* 0252588C */ _t93 = cpu->r[26] + 0x00000000u;
|
|
/* 0252588C */ cpu->r[7] = rbrew_read32(cpu->mem, _t93);
|
|
/* 02525890 */ cpu->r[6] = cpu->r[6] + 0x00002388u;
|
|
/* 02525894 */ _t94 = cpu->r[26] + 0x00000004u;
|
|
/* 02525894 */ rbrew_write32(cpu->mem, _t94, cpu->r[6]);
|
|
/* 02525898 */ _t95 = cpu->r[7] + 0x00000000u;
|
|
/* 02525898 */ rbrew_write8(cpu->mem, _t95, (uint8_t)cpu->r[31]);
|
|
L_0252589C: ; // 0x252589c
|
|
/* 0252589C */ cpu->r[0] = 0x100C0000u;
|
|
/* 025258A0 */ cpu->r[0] = cpu->r[0] + 0x000023A0u;
|
|
/* 025258A4 */ _t96 = cpu->r[27] + 0x00000004u;
|
|
/* 025258A4 */ rbrew_write32(cpu->mem, _t96, cpu->r[0]);
|
|
L_025258A8: ; // 0x25258a8
|
|
/* 025258A8 */ cpu->r[30] = cpu->r[30] + 0xFFFFFFFFu;
|
|
/* 025258A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 025258AC */ cpu->r[22] = cpu->r[22] + 0x00000024u;
|
|
/* 025258B0 */ _t97 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025258B0 */ _t98 = _t97 & 0x00000001u;
|
|
/* 025258B0 */ if (_t98) goto L_025258B4; else goto L_02525834;
|
|
L_025258B4: ; // 0x25258b4
|
|
/* 025258B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 025258B8 */ _t99 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025258B8 */ _t100 = _t99 & 0x00000001u;
|
|
/* 025258B8 */ if (_t100) goto L_025258C4; else goto L_025258BC;
|
|
L_025258BC: ; // 0x25258bc
|
|
/* 025258BC */ _t101 = cpu->r[28] + 0x00000018u;
|
|
/* 025258BC */ rbrew_write32(cpu->mem, _t101, cpu->r[24]);
|
|
/* 025258C0 */ _t102 = cpu->r[28] + 0x00000014u;
|
|
/* 025258C0 */ rbrew_write32(cpu->mem, _t102, cpu->r[25]);
|
|
L_025258C4: ; // 0x25258c4
|
|
/* 025258C4 */ _t103 = cpu->r[28] + 0x0000000Eu;
|
|
/* 025258C4 */ rbrew_write8(cpu->mem, _t103, (uint8_t)cpu->r[29]);
|
|
/* 025258C8 */ /* nop */
|
|
/* 025258CC */ _t104 = cpu->r[1] + 0x00000034u;
|
|
/* 025258CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t104);
|
|
/* 025258D0 */ cpu->lr = cpu->r[0];
|
|
/* 025258D4 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 025258D8 */ return;
|
|
}
|
|
|
|
// fn_025258DC @ 0x25258dc
|
|
void Gambit_fn_025258DC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _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_025258DC: ; // 0x25258dc
|
|
/* 025258DC */ _t0 = cpu->r[7] + 0x00000000u;
|
|
/* 025258DC */ cpu->r[8] = rbrew_read8(cpu->mem, _t0);
|
|
/* 025258E0 */ _t1 = cpu->r[3] + 0x00000020u;
|
|
/* 025258E0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 025258E4 */ _t2 = cpu->r[3] + 0x00000024u;
|
|
/* 025258E4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t2);
|
|
/* 025258E8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[12]);
|
|
/* 025258EC */ _t3 = cpu->r[4] + 0x00000000u;
|
|
/* 025258EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 025258F0 */ _t4 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 025258F0 */ _t5 = _t4 & 0x00000001u;
|
|
/* 025258F0 */ if (_t5) goto L_025258F4; else goto L_025258FC;
|
|
L_025258F4: ; // 0x25258f4
|
|
/* 025258F4 */ cpu->r[10] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 025258F8 */ cpu->r[11] = cpu->r[11] + cpu->r[10];
|
|
L_025258FC: ; // 0x25258fc
|
|
/* 025258FC */ _t6 = cpu->r[11] + 0x00000000u;
|
|
/* 025258FC */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02525900 */ _t7 = cpu->r[4] + 0x00000004u;
|
|
/* 02525900 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02525904 */ _t8 = cpu->r[11] + 0x00000004u;
|
|
/* 02525904 */ rbrew_write32(cpu->mem, _t8, cpu->r[8]);
|
|
/* 02525908 */ _t9 = cpu->r[7] + 0x00000000u;
|
|
/* 02525908 */ cpu->r[9] = rbrew_read8(cpu->mem, _t9);
|
|
/* 0252590C */ _t10 = cpu->r[3] + 0x00000028u;
|
|
/* 0252590C */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02525910 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[12]);
|
|
/* 02525914 */ _t11 = cpu->r[3] + 0x0000002Cu;
|
|
/* 02525914 */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02525918 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02525918 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02525918 */ if (_t13) goto L_0252591C; else goto L_02525924;
|
|
L_0252591C: ; // 0x252591c
|
|
/* 0252591C */ cpu->r[0] = rbrew_rlwinm(cpu->r[9], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02525920 */ cpu->r[10] = cpu->r[10] + cpu->r[0];
|
|
L_02525924: ; // 0x2525924
|
|
/* 02525924 */ _t14 = cpu->r[5] + 0x00000000u;
|
|
/* 02525924 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02525928 */ _t15 = cpu->r[10] + 0x00000000u;
|
|
/* 02525928 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 0252592C */ _t16 = cpu->r[5] + 0x00000004u;
|
|
/* 0252592C */ cpu->r[8] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02525930 */ _t17 = cpu->r[10] + 0x00000004u;
|
|
/* 02525930 */ rbrew_write32(cpu->mem, _t17, cpu->r[8]);
|
|
/* 02525934 */ _t18 = cpu->r[3] + 0x00000030u;
|
|
/* 02525934 */ cpu->r[9] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02525938 */ _t19 = cpu->r[7] + 0x00000000u;
|
|
/* 02525938 */ cpu->r[11] = rbrew_read8(cpu->mem, _t19);
|
|
/* 0252593C */ _t20 = cpu->r[3] + 0x00000034u;
|
|
/* 0252593C */ cpu->r[12] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02525940 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[9]);
|
|
/* 02525944 */ _t21 = cpu->r[6] + 0x00000000u;
|
|
/* 02525944 */ cpu->r[7] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02525948 */ _t22 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02525948 */ _t23 = _t22 & 0x00000001u;
|
|
/* 02525948 */ if (_t23) goto L_0252594C; else goto L_02525954;
|
|
L_0252594C: ; // 0x252594c
|
|
/* 0252594C */ cpu->r[11] = rbrew_rlwinm(cpu->r[11], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02525950 */ cpu->r[12] = cpu->r[12] + cpu->r[11];
|
|
L_02525954: ; // 0x2525954
|
|
/* 02525954 */ _t24 = cpu->r[12] + 0x00000000u;
|
|
/* 02525954 */ rbrew_write32(cpu->mem, _t24, cpu->r[7]);
|
|
/* 02525958 */ _t25 = cpu->r[6] + 0x00000004u;
|
|
/* 02525958 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0252595C */ _t26 = cpu->r[12] + 0x00000004u;
|
|
/* 0252595C */ rbrew_write32(cpu->mem, _t26, cpu->r[0]);
|
|
/* 02525960 */ return;
|
|
}
|
|
|
|
// fn_02525964 @ 0x2525964
|
|
void Gambit_fn_02525964(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02525964: ; // 0x2525964
|
|
/* 02525964 */ cpu->r[0] = cpu->lr;
|
|
/* 02525968 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0252596C */ cpu->r[7] = 0x02520000u;
|
|
/* 02525970 */ cpu->r[6] = 0x02520000u;
|
|
/* 02525974 */ cpu->r[10] = 0x101C0000u;
|
|
/* 02525978 */ cpu->r[7] = cpu->r[7] + 0x00005340u;
|
|
/* 0252597C */ cpu->r[6] = cpu->r[6] + 0x00005340u;
|
|
/* 02525980 */ cpu->r[10] = cpu->r[10] + 0x00006888u;
|
|
/* 02525984 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 02525984 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 02525988 */ cpu->r[0] = 0x101C0000u;
|
|
/* 0252598C */ _t1 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0252598C */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 0252598C */ cpu->r[1] = _t1;
|
|
/* 02525990 */ cpu->r[0] = cpu->r[0] + 0x00006884u;
|
|
/* 02525994 */ _t2 = cpu->r[12] + 0xFFFF9034u;
|
|
/* 02525994 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02525998 */ cpu->r[8] = 0x00000000u;
|
|
/* 0252599C */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 0252599C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 025259A0 */ cpu->r[9] = cpu->r[1] + 0x0000000Cu;
|
|
/* 025259A4 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025259A4 */ rbrew_write32(cpu->mem, _t4, cpu->r[12]);
|
|
/* 025259A8 */ Gambit_fn_02791B10(cpu);
|
|
/* 025259AC */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 025259AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 025259B0 */ cpu->lr = cpu->r[0];
|
|
/* 025259B4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 025259B8 */ return;
|
|
}
|
|
|
|
// fn_0252598C @ 0x252598c
|
|
void Gambit_fn_0252598C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_0252598C: ; // 0x252598c
|
|
/* 0252598C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0252598C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252598C */ cpu->r[1] = _t0;
|
|
/* 02525990 */ cpu->r[0] = cpu->r[0] + 0x00006884u;
|
|
/* 02525994 */ _t1 = cpu->r[12] + 0xFFFF9034u;
|
|
/* 02525994 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02525998 */ cpu->r[8] = 0x00000000u;
|
|
/* 0252599C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0252599C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 025259A0 */ cpu->r[9] = cpu->r[1] + 0x0000000Cu;
|
|
/* 025259A4 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025259A4 */ rbrew_write32(cpu->mem, _t3, cpu->r[12]);
|
|
/* 025259A8 */ Gambit_fn_02791B10(cpu);
|
|
/* 025259AC */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 025259AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 025259B0 */ cpu->lr = cpu->r[0];
|
|
/* 025259B4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 025259B8 */ return;
|
|
}
|
|
|
|
// fn_025259BC @ 0x25259bc
|
|
void Gambit_fn_025259BC(CPUState* cpu) {
|
|
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_025259BC: ; // 0x25259bc
|
|
/* 025259BC */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 025259BC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 025259BC */ cpu->r[1] = _t0;
|
|
/* 025259C0 */ cpu->r[0] = cpu->lr;
|
|
/* 025259C4 */ /* nop */
|
|
/* 025259C8 */ cpu->r[30] = cpu->r[5];
|
|
/* 025259CC */ cpu->r[26] = cpu->r[3];
|
|
/* 025259D0 */ cpu->r[27] = cpu->r[7];
|
|
/* 025259D4 */ cpu->r[3] = cpu->r[30];
|
|
/* 025259D8 */ cpu->r[31] = cpu->r[6];
|
|
/* 025259DC */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 025259DC */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 025259E0 */ cpu->r[29] = cpu->r[4];
|
|
/* 025259E4 */ cpu->r[4] = cpu->r[27];
|
|
/* 025259E8 */ Gambit_fn_027DB318(cpu);
|
|
/* 025259EC */ cpu->r[28] = cpu->r[3] + cpu->r[31];
|
|
/* 025259EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 025259F0 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025259F0 */ _t3 = _t2 & 0x00000001u;
|
|
/* 025259F0 */ if (_t3) goto L_02525A84; else goto L_025259F4;
|
|
L_025259F4: ; // 0x25259f4
|
|
/* 025259F4 */ cpu->r[5] = cpu->r[28];
|
|
/* 025259F8 */ cpu->r[4] = cpu->r[29];
|
|
/* 025259FC */ cpu->r[3] = cpu->r[26];
|
|
/* 02525A00 */ Gambit_fn_02525964(cpu);
|
|
/* 02525A04 */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02525A04 */ cpu->r[29] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02525A08 */ _t5 = cpu->r[30] + 0x00000004u;
|
|
/* 02525A08 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02525A0C */ cpu->r[30] = cpu->r[30] - cpu->r[29];
|
|
/* 02525A10 */ cpu->r[31] = cpu->r[0] - cpu->r[29];
|
|
/* 02525A14 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]);
|
|
/* 02525A18 */ cpu->r[25] = 0x00000000u;
|
|
/* 02525A1C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02525A1C */ _t7 = _t6 & 0x00000001u;
|
|
/* 02525A1C */ if (_t7) goto L_02525A84; else goto L_02525A20;
|
|
L_02525A20: ; // 0x2525a20
|
|
/* 02525A20 */ cpu->r[24] = 0x101C0000u;
|
|
L_02525A24: ; // 0x2525a24
|
|
/* 02525A24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02525A28 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02525A28 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02525A28 */ if (_t9) goto L_02525A40; else goto L_02525A2C;
|
|
L_02525A2C: ; // 0x2525a2c
|
|
/* 02525A2C */ cpu->ctr = cpu->r[27];
|
|
/* 02525A30 */ cpu->r[3] = cpu->r[31];
|
|
/* 02525A34 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02525A38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02525A3C */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02525A3C */ _t11 = _t10 & 0x00000001u;
|
|
/* 02525A3C */ if (_t11) goto L_02525A70; else goto L_02525A40;
|
|
L_02525A40: ; // 0x2525a40
|
|
/* 02525A40 */ _t12 = cpu->r[24] + 0x00006884u;
|
|
/* 02525A40 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02525A44 */ cpu->r[6] = cpu->r[26] + cpu->r[0];
|
|
/* 02525A48 */ _t13 = cpu->r[6] + 0x00000104u;
|
|
/* 02525A48 */ cpu->r[12] = rbrew_read8(cpu->mem, _t13);
|
|
/* 02525A4C */ _t14 = cpu->r[26] + 0x00000030u;
|
|
/* 02525A4C */ cpu->r[10] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02525A50 */ cpu->r[9] = rbrew_rlwinm(cpu->r[12], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02525A54 */ _t15 = cpu->r[9] + cpu->r[10];
|
|
/* 02525A54 */ cpu->r[11] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02525A58 */ cpu->r[8] = rbrew_rlwinm(cpu->r[25], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02525A5C */ _t16 = cpu->r[11] + 0x00000004u;
|
|
/* 02525A5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02525A60 */ cpu->r[4] = cpu->r[31];
|
|
/* 02525A64 */ _t17 = cpu->r[8] + cpu->r[0];
|
|
/* 02525A64 */ cpu->r[3] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02525A68 */ cpu->r[25] = cpu->r[25] + 0x00000001u;
|
|
/* 02525A6C */ Gambit_fn_02523E24(cpu);
|
|
L_02525A70: ; // 0x2525a70
|
|
/* 02525A70 */ cpu->r[12] = cpu->r[31] + cpu->r[29];
|
|
/* 02525A74 */ _t18 = cpu->r[12] + 0x00000004u;
|
|
/* 02525A74 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02525A78 */ cpu->r[31] = cpu->r[0] - cpu->r[29];
|
|
/* 02525A7C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]);
|
|
/* 02525A80 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02525A80 */ _t20 = _t19 & 0x00000001u;
|
|
/* 02525A80 */ if (_t20) goto L_02525A84; else goto L_02525A24;
|
|
L_02525A84: ; // 0x2525a84
|
|
/* 02525A84 */ cpu->r[3] = cpu->r[28];
|
|
/* 02525A88 */ /* nop */
|
|
/* 02525A8C */ _t21 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02525A8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02525A90 */ cpu->lr = cpu->r[0];
|
|
/* 02525A94 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 02525A98 */ return;
|
|
}
|
|
|
|
// fn_02525AA0 @ 0x2525aa0
|
|
void Gambit_fn_02525AA0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _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;
|
|
|
|
L_02525AA0: ; // 0x2525aa0
|
|
/* 02525AA0 */ _t0 = cpu->r[1] + 0xFFFFFFA0u;
|
|
/* 02525AA0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02525AA0 */ cpu->r[1] = _t0;
|
|
/* 02525AA4 */ _t1 = cpu->r[1] + 0x00000050u;
|
|
/* 02525AA4 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 02525AA8 */ /* nop */
|
|
/* 02525AAC */ _t2 = cpu->r[1] + 0x00000058u;
|
|
/* 02525AAC */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 02525AB0 */ _t3 = cpu->r[1] + 0x00000064u;
|
|
/* 02525AB0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02525AB4 */ /* nop */
|
|
/* 02525AB8 */ cpu->r[29] = cpu->r[3];
|
|
/* 02525AB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 02525ABC */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02525ABC */ _t5 = _t4 & 0x00000001u;
|
|
/* 02525ABC */ if (_t5) goto L_02525AC0; else goto L_02525AD0;
|
|
L_02525AC0: ; // 0x2525ac0
|
|
/* 02525AC0 */ cpu->r[3] = 0x000002CCu;
|
|
/* 02525AC4 */ Gambit_fn_02801A78(cpu);
|
|
/* 02525AC8 */ cpu->r[29] = cpu->r[3];
|
|
/* 02525AC8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 02525ACC */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02525ACC */ _t7 = _t6 & 0x00000001u;
|
|
/* 02525ACC */ if (_t7) goto L_025260D0; else goto L_02525AD0;
|
|
L_02525AD0: ; // 0x2525ad0
|
|
/* 02525AD0 */ cpu->r[3] = cpu->r[29];
|
|
/* 02525AD4 */ Gambit_fn_024F6F3C(cpu);
|
|
/* 02525AD8 */ cpu->r[5] = 0x100C0000u;
|
|
/* 02525ADC */ cpu->r[31] = cpu->r[29] + 0x000001B0u;
|
|
/* 02525ADC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02525AE0 */ cpu->r[5] = cpu->r[5] + 0x00002A8Cu;
|
|
/* 02525AE4 */ cpu->r[28] = 0x00000000u;
|
|
/* 02525AE8 */ _t8 = cpu->r[29] + 0x00000004u;
|
|
/* 02525AE8 */ rbrew_write32(cpu->mem, _t8, cpu->r[5]);
|
|
/* 02525AEC */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02525AEC */ _t10 = _t9 & 0x00000001u;
|
|
/* 02525AEC */ if (_t10) goto L_02525AF0; else goto L_02525B00;
|
|
L_02525AF0: ; // 0x2525af0
|
|
/* 02525AF0 */ cpu->r[3] = 0x00000038u;
|
|
/* 02525AF4 */ Gambit_fn_02801A78(cpu);
|
|
/* 02525AF8 */ cpu->r[31] = cpu->r[3];
|
|
/* 02525AF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02525AFC */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02525AFC */ _t12 = _t11 & 0x00000001u;
|
|
/* 02525AFC */ if (_t12) goto L_02525B30; else goto L_02525B00;
|
|
L_02525B00: ; // 0x2525b00
|
|
/* 02525B00 */ cpu->r[3] = cpu->r[31];
|
|
/* 02525B04 */ Gambit_fn_027FC29C(cpu);
|
|
/* 02525B08 */ cpu->r[7] = 0x10080000u;
|
|
/* 02525B0C */ _t13 = cpu->r[31] + 0x00000030u;
|
|
/* 02525B0C */ rbrew_write32(cpu->mem, _t13, cpu->r[28]);
|
|
/* 02525B10 */ cpu->r[7] = cpu->r[7] + 0x000072C4u;
|
|
/* 02525B14 */ _t14 = cpu->r[31] + 0x00000034u;
|
|
/* 02525B14 */ rbrew_write32(cpu->mem, _t14, cpu->r[28]);
|
|
/* 02525B18 */ _t15 = cpu->r[31] + 0x00000004u;
|
|
/* 02525B18 */ rbrew_write32(cpu->mem, _t15, cpu->r[7]);
|
|
/* 02525B1C */ _t16 = cpu->r[31] + 0x00000024u;
|
|
/* 02525B1C */ rbrew_write32(cpu->mem, _t16, cpu->r[28]);
|
|
/* 02525B20 */ _t17 = cpu->r[31] + 0x00000028u;
|
|
/* 02525B20 */ rbrew_write32(cpu->mem, _t17, cpu->r[28]);
|
|
/* 02525B24 */ _t18 = cpu->r[31] + 0x0000002Cu;
|
|
/* 02525B24 */ rbrew_write32(cpu->mem, _t18, cpu->r[28]);
|
|
/* 02525B28 */ _t19 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02525B28 */ rbrew_write32(cpu->mem, _t19, cpu->r[28]);
|
|
/* 02525B2C */ _t20 = cpu->r[31] + 0x00000020u;
|
|
/* 02525B2C */ rbrew_write32(cpu->mem, _t20, cpu->r[28]);
|
|
L_02525B30: ; // 0x2525b30
|
|
/* 02525B30 */ cpu->r[8] = 0x100C0000u;
|
|
/* 02525B34 */ _t21 = cpu->r[29] + 0x000001E8u;
|
|
/* 02525B34 */ rbrew_write32(cpu->mem, _t21, cpu->r[28]);
|
|
/* 02525B38 */ _t22 = cpu->r[8] + 0x00002870u;
|
|
/* 02525B38 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 02525B3C */ cpu->r[8] = 0xFFFFFFFFu;
|
|
/* 02525B40 */ _t23 = cpu->r[29] + 0x000001F2u;
|
|
/* 02525B40 */ rbrew_write16(cpu->mem, _t23, (uint16_t)cpu->r[8]);
|
|
/* 02525B44 */ _t24 = cpu->r[29] + 0x000001ECu;
|
|
/* 02525B44 */ rbrew_write_f32(cpu->mem, _t24, cpu->f[31]);
|
|
/* 02525B48 */ cpu->r[3] = cpu->r[29] + 0x000001F4u;
|
|
/* 02525B48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02525B4C */ _t25 = cpu->r[29] + 0x000001F0u;
|
|
/* 02525B4C */ rbrew_write16(cpu->mem, _t25, (uint16_t)cpu->r[8]);
|
|
/* 02525B50 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02525B50 */ _t27 = _t26 & 0x00000001u;
|
|
/* 02525B50 */ if (_t27) goto L_02525B54; else goto L_02525B64;
|
|
L_02525B54: ; // 0x2525b54
|
|
/* 02525B54 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02525B58 */ Gambit_fn_02801A78(cpu);
|
|
/* 02525B5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02525B60 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02525B60 */ _t29 = _t28 & 0x00000001u;
|
|
/* 02525B60 */ if (_t29) goto L_02525B88; else goto L_02525B64;
|
|
L_02525B64: ; // 0x2525b64
|
|
/* 02525B64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02525B68 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02525B68 */ _t31 = _t30 & 0x00000001u;
|
|
/* 02525B68 */ if (_t31) goto L_02525B6C; else goto L_02525B7C;
|
|
L_02525B6C: ; // 0x2525b6c
|
|
/* 02525B6C */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02525B70 */ Gambit_fn_02801A78(cpu);
|
|
/* 02525B74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02525B78 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02525B78 */ _t33 = _t32 & 0x00000001u;
|
|
/* 02525B78 */ if (_t33) goto L_02525B88; else goto L_02525B7C;
|
|
L_02525B7C: ; // 0x2525b7c
|
|
/* 02525B7C */ _t34 = cpu->r[3] + 0x00000004u;
|
|
/* 02525B7C */ rbrew_write_f32(cpu->mem, _t34, cpu->f[31]);
|
|
/* 02525B80 */ _t35 = cpu->r[3] + 0x00000000u;
|
|
/* 02525B80 */ rbrew_write_f32(cpu->mem, _t35, cpu->f[31]);
|
|
/* 02525B84 */ _t36 = cpu->r[3] + 0x00000008u;
|
|
/* 02525B84 */ rbrew_write_f32(cpu->mem, _t36, cpu->f[31]);
|
|
L_02525B88: ; // 0x2525b88
|
|
/* 02525B88 */ _t37 = cpu->r[29] + 0x00000208u;
|
|
/* 02525B88 */ rbrew_write32(cpu->mem, _t37, cpu->r[28]);
|
|
/* 02525B8C */ cpu->r[3] = cpu->r[29] + 0x00000214u;
|
|
/* 02525B8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02525B90 */ _t38 = cpu->r[29] + 0x00000200u;
|
|
/* 02525B90 */ rbrew_write_f32(cpu->mem, _t38, cpu->f[31]);
|
|
/* 02525B94 */ _t39 = cpu->r[29] + 0x00000204u;
|
|
/* 02525B94 */ rbrew_write32(cpu->mem, _t39, cpu->r[28]);
|
|
/* 02525B98 */ _t40 = cpu->r[29] + 0x00000210u;
|
|
/* 02525B98 */ rbrew_write_f32(cpu->mem, _t40, cpu->f[31]);
|
|
/* 02525B9C */ _t41 = cpu->r[29] + 0x0000020Cu;
|
|
/* 02525B9C */ rbrew_write32(cpu->mem, _t41, cpu->r[28]);
|
|
/* 02525BA0 */ _t42 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02525BA0 */ _t43 = _t42 & 0x00000001u;
|
|
/* 02525BA0 */ if (_t43) goto L_02525BA4; else goto L_02525BB4;
|
|
L_02525BA4: ; // 0x2525ba4
|
|
/* 02525BA4 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02525BA8 */ Gambit_fn_02801A78(cpu);
|
|
/* 02525BAC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02525BB0 */ _t44 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02525BB0 */ _t45 = _t44 & 0x00000001u;
|
|
/* 02525BB0 */ if (_t45) goto L_02525BD8; else goto L_02525BB4;
|
|
L_02525BB4: ; // 0x2525bb4
|
|
/* 02525BB4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02525BB8 */ _t46 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02525BB8 */ _t47 = _t46 & 0x00000001u;
|
|
/* 02525BB8 */ if (_t47) goto L_02525BBC; else goto L_02525BCC;
|
|
L_02525BBC: ; // 0x2525bbc
|
|
/* 02525BBC */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02525BC0 */ Gambit_fn_02801A78(cpu);
|
|
/* 02525BC4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02525BC8 */ _t48 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02525BC8 */ _t49 = _t48 & 0x00000001u;
|
|
/* 02525BC8 */ if (_t49) goto L_02525BD8; else goto L_02525BCC;
|
|
L_02525BCC: ; // 0x2525bcc
|
|
/* 02525BCC */ _t50 = cpu->r[3] + 0x00000004u;
|
|
/* 02525BCC */ rbrew_write_f32(cpu->mem, _t50, cpu->f[31]);
|
|
/* 02525BD0 */ _t51 = cpu->r[3] + 0x00000000u;
|
|
/* 02525BD0 */ rbrew_write_f32(cpu->mem, _t51, cpu->f[31]);
|
|
/* 02525BD4 */ _t52 = cpu->r[3] + 0x00000008u;
|
|
/* 02525BD4 */ rbrew_write_f32(cpu->mem, _t52, cpu->f[31]);
|
|
L_02525BD8: ; // 0x2525bd8
|
|
/* 02525BD8 */ cpu->r[31] = cpu->r[29] + 0x00000220u;
|
|
/* 02525BD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02525BDC */ _t53 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02525BDC */ _t54 = _t53 & 0x00000001u;
|
|
/* 02525BDC */ if (_t54) goto L_02525BE0; else goto L_02525BF0;
|
|
L_02525BE0: ; // 0x2525be0
|
|
/* 02525BE0 */ cpu->r[3] = 0x00000088u;
|
|
/* 02525BE4 */ Gambit_fn_02801A78(cpu);
|
|
/* 02525BE8 */ cpu->r[31] = cpu->r[3];
|
|
/* 02525BE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02525BEC */ _t55 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02525BEC */ _t56 = _t55 & 0x00000001u;
|
|
/* 02525BEC */ if (_t56) goto L_02525C34; else goto L_02525BF0;
|
|
L_02525BF0: ; // 0x2525bf0
|
|
/* 02525BF0 */ cpu->r[3] = cpu->r[31];
|
|
/* 02525BF0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02525BF4 */ _t57 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02525BF4 */ _t58 = _t57 & 0x00000001u;
|
|
/* 02525BF4 */ if (_t58) goto L_02525BF8; else goto L_02525C08;
|
|
L_02525BF8: ; // 0x2525bf8
|
|
/* 02525BF8 */ cpu->r[3] = 0x00000010u;
|
|
/* 02525BFC */ Gambit_fn_02801A78(cpu);
|
|
/* 02525C00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02525C04 */ _t59 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02525C04 */ _t60 = _t59 & 0x00000001u;
|
|
/* 02525C04 */ if (_t60) goto L_02525C18; else goto L_02525C08;
|
|
L_02525C08: ; // 0x2525c08
|
|
/* 02525C08 */ _t61 = cpu->r[3] + 0x00000004u;
|
|
/* 02525C08 */ rbrew_write32(cpu->mem, _t61, cpu->r[28]);
|
|
/* 02525C0C */ _t62 = cpu->r[3] + 0x00000008u;
|
|
/* 02525C0C */ rbrew_write32(cpu->mem, _t62, cpu->r[28]);
|
|
/* 02525C10 */ _t63 = cpu->r[3] + 0x00000000u;
|
|
/* 02525C10 */ rbrew_write32(cpu->mem, _t63, cpu->r[28]);
|
|
/* 02525C14 */ _t64 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02525C14 */ rbrew_write32(cpu->mem, _t64, cpu->r[28]);
|
|
L_02525C18: ; // 0x2525c18
|
|
/* 02525C18 */ cpu->r[0] = cpu->r[31] + 0x00000010u;
|
|
/* 02525C18 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02525C1C */ _t65 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02525C1C */ _t66 = _t65 & 0x00000001u;
|
|
/* 02525C1C */ if (_t66) goto L_02525C34; else goto L_02525C20;
|
|
L_02525C20: ; // 0x2525c20
|
|
/* 02525C20 */ _t67 = cpu->r[31] + 0x00000000u;
|
|
/* 02525C20 */ rbrew_write32(cpu->mem, _t67, cpu->r[0]);
|
|
/* 02525C24 */ cpu->r[0] = 0x0000000Au;
|
|
/* 02525C28 */ _t68 = cpu->r[31] + 0x00000008u;
|
|
/* 02525C28 */ rbrew_write32(cpu->mem, _t68, cpu->r[28]);
|
|
/* 02525C2C */ _t69 = cpu->r[31] + 0x00000004u;
|
|
/* 02525C2C */ rbrew_write32(cpu->mem, _t69, cpu->r[0]);
|
|
/* 02525C30 */ _t70 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02525C30 */ rbrew_write32(cpu->mem, _t70, cpu->r[28]);
|
|
L_02525C34: ; // 0x2525c34
|
|
/* 02525C34 */ cpu->r[3] = cpu->r[29] + 0x000002A8u;
|
|
/* 02525C34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02525C38 */ _t71 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02525C38 */ _t72 = _t71 & 0x00000001u;
|
|
/* 02525C38 */ if (_t72) goto L_02525C3C; else goto L_02525C4C;
|
|
L_02525C3C: ; // 0x2525c3c
|
|
/* 02525C3C */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02525C40 */ Gambit_fn_02801A78(cpu);
|
|
/* 02525C44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02525C48 */ _t73 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02525C48 */ _t74 = _t73 & 0x00000001u;
|
|
/* 02525C48 */ if (_t74) goto L_02525C60; else goto L_02525C4C;
|
|
L_02525C4C: ; // 0x2525c4c
|
|
/* 02525C4C */ cpu->r[0] = 0x100C0000u;
|
|
/* 02525C50 */ _t75 = cpu->r[3] + 0x00000004u;
|
|
/* 02525C50 */ rbrew_write32(cpu->mem, _t75, cpu->r[28]);
|
|
/* 02525C54 */ cpu->r[0] = cpu->r[0] + 0x0000292Cu;
|
|
/* 02525C58 */ _t76 = cpu->r[3] + 0x00000000u;
|
|
/* 02525C58 */ rbrew_write32(cpu->mem, _t76, cpu->r[28]);
|
|
/* 02525C5C */ _t77 = cpu->r[3] + 0x00000008u;
|
|
/* 02525C5C */ rbrew_write32(cpu->mem, _t77, cpu->r[0]);
|
|
L_02525C60: ; // 0x2525c60
|
|
/* 02525C60 */ _t78 = cpu->r[29] + 0x000002B8u;
|
|
/* 02525C60 */ rbrew_write32(cpu->mem, _t78, cpu->r[28]);
|
|
/* 02525C64 */ cpu->r[6] = 0x100C0000u;
|
|
/* 02525C68 */ cpu->r[7] = 0x100C0000u;
|
|
/* 02525C6C */ _t79 = cpu->r[29] + 0x000002B4u;
|
|
/* 02525C6C */ rbrew_write8(cpu->mem, _t79, (uint8_t)cpu->r[28]);
|
|
/* 02525C70 */ cpu->r[6] = cpu->r[6] + 0x0000293Cu;
|
|
/* 02525C74 */ _t80 = cpu->r[7] + 0x0000297Cu;
|
|
/* 02525C74 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t80);
|
|
/* 02525C78 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02525C7C */ _t81 = cpu->r[29] + 0x000002C8u;
|
|
/* 02525C7C */ rbrew_write8(cpu->mem, _t81, (uint8_t)cpu->r[28]);
|
|
/* 02525C80 */ cpu->r[4] = cpu->r[29];
|
|
/* 02525C84 */ _t82 = cpu->r[29] + 0x000002B0u;
|
|
/* 02525C84 */ rbrew_write32(cpu->mem, _t82, cpu->r[6]);
|
|
/* 02525C88 */ cpu->r[3] = cpu->r[29] + 0x000001B0u;
|
|
/* 02525C8C */ _t83 = cpu->r[29] + 0x000002BCu;
|
|
/* 02525C8C */ rbrew_write_f32(cpu->mem, _t83, cpu->f[31]);
|
|
/* 02525C90 */ cpu->r[0] = 0x00000004u;
|
|
/* 02525C94 */ _t84 = cpu->r[29] + 0x000002C0u;
|
|
/* 02525C94 */ rbrew_write8(cpu->mem, _t84, (uint8_t)cpu->r[28]);
|
|
/* 02525C98 */ _t85 = cpu->r[29] + 0x000002C9u;
|
|
/* 02525C98 */ rbrew_write8(cpu->mem, _t85, (uint8_t)cpu->r[28]);
|
|
/* 02525C9C */ _t86 = cpu->r[29] + 0x000002C4u;
|
|
/* 02525C9C */ rbrew_write_f32(cpu->mem, _t86, cpu->f[0]);
|
|
/* 02525CA0 */ cpu->r[6] = 0x00000000u;
|
|
/* 02525CA4 */ _t87 = cpu->r[1] + 0x00000008u;
|
|
/* 02525CA4 */ rbrew_write8(cpu->mem, _t87, (uint8_t)cpu->r[0]);
|
|
/* 02525CA8 */ Gambit_fn_02528194(cpu);
|
|
/* 02525CAC */ cpu->r[4] = cpu->r[29] + 0x000001B0u;
|
|
/* 02525CB0 */ cpu->r[3] = cpu->r[29];
|
|
/* 02525CB4 */ Gambit_fn_02000834(cpu);
|
|
/* 02525CB8 */ cpu->r[9] = 0x100C0000u;
|
|
/* 02525CBC */ cpu->r[26] = 0x02520000u;
|
|
/* 02525CC0 */ cpu->r[9] = cpu->r[9] + 0x00002980u;
|
|
/* 02525CC4 */ cpu->r[27] = 0x100C0000u;
|
|
/* 02525CC8 */ cpu->r[26] = cpu->r[26] + 0x00007D2Cu;
|
|
/* 02525CCC */ cpu->r[27] = cpu->r[27] + 0x0000289Cu;
|
|
/* 02525CD0 */ cpu->ctr = cpu->r[26];
|
|
/* 02525CD4 */ _t88 = cpu->r[1] + 0x00000010u;
|
|
/* 02525CD4 */ rbrew_write32(cpu->mem, _t88, cpu->r[27]);
|
|
/* 02525CD8 */ _t89 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02525CD8 */ rbrew_write32(cpu->mem, _t89, cpu->r[9]);
|
|
/* 02525CDC */ _t90 = cpu->r[29] + 0x000001C8u;
|
|
/* 02525CDC */ cpu->r[24] = rbrew_read32(cpu->mem, _t90);
|
|
/* 02525CE0 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02525CE4 */ _t91 = cpu->r[24] + 0x00000000u;
|
|
/* 02525CE4 */ cpu->r[25] = rbrew_read32(cpu->mem, _t91);
|
|
/* 02525CE8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02525CEC */ cpu->r[30] = 0x10110000u;
|
|
/* 02525CF0 */ _t92 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02525CF0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t92);
|
|
/* 02525CF4 */ _t93 = cpu->r[30] + 0x00007399u;
|
|
/* 02525CF4 */ cpu->r[30] = rbrew_read8(cpu->mem, _t93);
|
|
/* 02525CF8 */ _t94 = cpu->r[8] + 0x00000000u;
|
|
/* 02525CF8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t94);
|
|
/* 02525CFC */ cpu->r[31] = 0x00000000u;
|
|
/* 02525D00 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]);
|
|
/* 02525D04 */ cpu->r[9] = 0x00080000u;
|
|
/* 02525D08 */ _t95 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02525D08 */ _t96 = _t95 & 0x00000001u;
|
|
/* 02525D08 */ if (_t96) goto L_02525D30; else goto L_02525D0C;
|
|
L_02525D0C: ; // 0x2525d0c
|
|
/* 02525D0C */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 02525D10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[9]);
|
|
/* 02525D14 */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 02525D18 */ _t97 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02525D18 */ _t98 = _t97 & 0x00000001u;
|
|
/* 02525D18 */ if (_t98) goto L_02525D2C; else goto L_02525D1C;
|
|
L_02525D1C: ; // 0x2525d1c
|
|
/* 02525D1C */ _t99 = cpu->r[8] + 0x00000000u;
|
|
/* 02525D1C */ cpu->r[0] = rbrew_read8(cpu->mem, _t99);
|
|
/* 02525D20 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]);
|
|
/* 02525D24 */ _t100 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02525D24 */ _t101 = _t100 & 0x00000001u;
|
|
/* 02525D24 */ if (_t101) goto L_02525D28; else goto L_02525D0C;
|
|
L_02525D28: ; // 0x2525d28
|
|
/* 02525D28 */ goto L_02525D30;
|
|
L_02525D2C: ; // 0x2525d2c
|
|
/* 02525D2C */ cpu->r[31] = 0x00000000u;
|
|
L_02525D30: ; // 0x2525d30
|
|
/* 02525D30 */ _t102 = cpu->r[24] + 0x00000008u;
|
|
/* 02525D30 */ cpu->r[6] = rbrew_read32(cpu->mem, _t102);
|
|
/* 02525D34 */ _t103 = cpu->r[1] + 0x00000010u;
|
|
/* 02525D34 */ cpu->r[12] = rbrew_read32(cpu->mem, _t103);
|
|
/* 02525D38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[6]);
|
|
/* 02525D3C */ _t104 = cpu->r[12] + 0x00000014u;
|
|
/* 02525D3C */ cpu->r[0] = rbrew_read32(cpu->mem, _t104);
|
|
/* 02525D40 */ _t105 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02525D40 */ _t106 = _t105 & 0x00000001u;
|
|
/* 02525D40 */ if (_t106) goto L_02525D48; else goto L_02525D44;
|
|
L_02525D44: ; // 0x2525d44
|
|
/* 02525D44 */ cpu->r[31] = cpu->r[6] + 0xFFFFFFFFu;
|
|
L_02525D48: ; // 0x2525d48
|
|
/* 02525D48 */ cpu->ctr = cpu->r[0];
|
|
/* 02525D4C */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02525D50 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02525D54 */ _t107 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02525D54 */ cpu->r[4] = rbrew_read32(cpu->mem, _t107);
|
|
/* 02525D58 */ cpu->r[6] = 0x00000000u;
|
|
/* 02525D5C */ cpu->r[5] = cpu->r[31];
|
|
/* 02525D60 */ cpu->r[3] = cpu->r[25];
|
|
/* 02525D64 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 02525D68 */ _t108 = cpu->r[25] + cpu->r[31];
|
|
/* 02525D68 */ rbrew_write8(cpu->mem, _t108, (uint8_t)cpu->r[30]);
|
|
/* 02525D6C */ cpu->r[10] = 0x00000000u;
|
|
/* 02525D70 */ _t109 = cpu->r[1] + 0x00000026u;
|
|
/* 02525D70 */ rbrew_write16(cpu->mem, _t109, (uint16_t)cpu->r[28]);
|
|
/* 02525D74 */ cpu->r[8] = 0x02520000u;
|
|
/* 02525D78 */ _t110 = cpu->r[1] + 0x00000028u;
|
|
/* 02525D78 */ rbrew_write32(cpu->mem, _t110, cpu->r[28]);
|
|
/* 02525D7C */ cpu->r[6] = 0x02520000u;
|
|
/* 02525D80 */ _t111 = cpu->r[1] + 0x00000014u;
|
|
/* 02525D80 */ rbrew_write16(cpu->mem, _t111, (uint16_t)cpu->r[28]);
|
|
/* 02525D84 */ cpu->r[6] = cpu->r[6] + 0x0000791Cu;
|
|
/* 02525D88 */ _t112 = cpu->r[1] + 0x00000008u;
|
|
/* 02525D88 */ rbrew_write8(cpu->mem, _t112, (uint8_t)cpu->r[10]);
|
|
/* 02525D8C */ _t113 = cpu->r[1] + 0x00000024u;
|
|
/* 02525D8C */ rbrew_write16(cpu->mem, _t113, (uint16_t)cpu->r[28]);
|
|
/* 02525D90 */ cpu->r[8] = cpu->r[8] + 0x00007930u;
|
|
/* 02525D94 */ _t114 = cpu->r[1] + 0x00000018u;
|
|
/* 02525D94 */ rbrew_write32(cpu->mem, _t114, cpu->r[6]);
|
|
/* 02525D98 */ cpu->r[12] = 0xFFFFFFFFu;
|
|
/* 02525D9C */ _t115 = cpu->r[1] + 0x00000020u;
|
|
/* 02525D9C */ rbrew_write32(cpu->mem, _t115, cpu->r[8]);
|
|
/* 02525DA0 */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 02525DA4 */ cpu->r[5] = cpu->r[1] + 0x0000001Cu;
|
|
/* 02525DA8 */ _t116 = cpu->r[1] + 0x0000001Eu;
|
|
/* 02525DA8 */ rbrew_write16(cpu->mem, _t116, (uint16_t)cpu->r[12]);
|
|
/* 02525DAC */ cpu->r[3] = cpu->r[29] + 0x000001B0u;
|
|
/* 02525DB0 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 02525DB4 */ _t117 = cpu->r[1] + 0x00000016u;
|
|
/* 02525DB4 */ rbrew_write16(cpu->mem, _t117, (uint16_t)cpu->r[12]);
|
|
/* 02525DB8 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 02525DBC */ _t118 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02525DBC */ rbrew_write16(cpu->mem, _t118, (uint16_t)cpu->r[28]);
|
|
/* 02525DC0 */ Gambit_fn_02528444(cpu);
|
|
/* 02525DC4 */ cpu->r[9] = 0x100C0000u;
|
|
/* 02525DC8 */ _t119 = cpu->r[1] + 0x00000010u;
|
|
/* 02525DC8 */ rbrew_write32(cpu->mem, _t119, cpu->r[27]);
|
|
/* 02525DCC */ cpu->r[9] = cpu->r[9] + 0x00002990u;
|
|
/* 02525DD0 */ _t120 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02525DD0 */ rbrew_write32(cpu->mem, _t120, cpu->r[9]);
|
|
/* 02525DD4 */ _t121 = cpu->r[29] + 0x000001C4u;
|
|
/* 02525DD4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t121);
|
|
/* 02525DD8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], 0x00000001u);
|
|
/* 02525DDC */ _t122 = cpu->r[29] + 0x000001C8u;
|
|
/* 02525DDC */ cpu->r[25] = rbrew_read32(cpu->mem, _t122);
|
|
/* 02525DE0 */ _t123 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02525DE0 */ _t124 = _t123 & 0x00000001u;
|
|
/* 02525DE0 */ if (_t124) goto L_02525DE4; else goto L_02525DE8;
|
|
L_02525DE4: ; // 0x2525de4
|
|
/* 02525DE4 */ cpu->r[25] = cpu->r[25] + 0x00000024u;
|
|
L_02525DE8: ; // 0x2525de8
|
|
/* 02525DE8 */ cpu->ctr = cpu->r[26];
|
|
/* 02525DEC */ _t125 = cpu->r[25] + 0x00000000u;
|
|
/* 02525DEC */ cpu->r[24] = rbrew_read32(cpu->mem, _t125);
|
|
/* 02525DF0 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02525DF4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02525DF8 */ _t126 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02525DF8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t126);
|
|
/* 02525DFC */ _t127 = cpu->r[12] + 0x00000000u;
|
|
/* 02525DFC */ cpu->r[11] = rbrew_read8(cpu->mem, _t127);
|
|
/* 02525E00 */ cpu->r[31] = 0x00000000u;
|
|
/* 02525E04 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[30]);
|
|
/* 02525E08 */ cpu->r[5] = 0x00080000u;
|
|
/* 02525E0C */ _t128 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02525E0C */ _t129 = _t128 & 0x00000001u;
|
|
/* 02525E0C */ if (_t129) goto L_02525E34; else goto L_02525E10;
|
|
L_02525E10: ; // 0x2525e10
|
|
/* 02525E10 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 02525E14 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[5]);
|
|
/* 02525E18 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 02525E1C */ _t130 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02525E1C */ _t131 = _t130 & 0x00000001u;
|
|
/* 02525E1C */ if (_t131) goto L_02525E30; else goto L_02525E20;
|
|
L_02525E20: ; // 0x2525e20
|
|
/* 02525E20 */ _t132 = cpu->r[12] + 0x00000000u;
|
|
/* 02525E20 */ cpu->r[0] = rbrew_read8(cpu->mem, _t132);
|
|
/* 02525E24 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]);
|
|
/* 02525E28 */ _t133 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02525E28 */ _t134 = _t133 & 0x00000001u;
|
|
/* 02525E28 */ if (_t134) goto L_02525E2C; else goto L_02525E10;
|
|
L_02525E2C: ; // 0x2525e2c
|
|
/* 02525E2C */ goto L_02525E34;
|
|
L_02525E30: ; // 0x2525e30
|
|
/* 02525E30 */ cpu->r[31] = 0x00000000u;
|
|
L_02525E34: ; // 0x2525e34
|
|
/* 02525E34 */ _t135 = cpu->r[25] + 0x00000008u;
|
|
/* 02525E34 */ cpu->r[7] = rbrew_read32(cpu->mem, _t135);
|
|
/* 02525E38 */ _t136 = cpu->r[1] + 0x00000010u;
|
|
/* 02525E38 */ cpu->r[8] = rbrew_read32(cpu->mem, _t136);
|
|
/* 02525E3C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[7]);
|
|
/* 02525E40 */ _t137 = cpu->r[8] + 0x00000014u;
|
|
/* 02525E40 */ cpu->r[0] = rbrew_read32(cpu->mem, _t137);
|
|
/* 02525E44 */ _t138 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02525E44 */ _t139 = _t138 & 0x00000001u;
|
|
/* 02525E44 */ if (_t139) goto L_02525E4C; else goto L_02525E48;
|
|
L_02525E48: ; // 0x2525e48
|
|
/* 02525E48 */ cpu->r[31] = cpu->r[7] + 0xFFFFFFFFu;
|
|
L_02525E4C: ; // 0x2525e4c
|
|
/* 02525E4C */ cpu->ctr = cpu->r[0];
|
|
/* 02525E50 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02525E54 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02525E58 */ _t140 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02525E58 */ cpu->r[4] = rbrew_read32(cpu->mem, _t140);
|
|
/* 02525E5C */ cpu->r[6] = 0x00000000u;
|
|
/* 02525E60 */ cpu->r[5] = cpu->r[31];
|
|
/* 02525E64 */ cpu->r[3] = cpu->r[24];
|
|
/* 02525E68 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 02525E6C */ _t141 = cpu->r[24] + cpu->r[31];
|
|
/* 02525E6C */ rbrew_write8(cpu->mem, _t141, (uint8_t)cpu->r[30]);
|
|
/* 02525E70 */ cpu->r[0] = 0x00000001u;
|
|
/* 02525E74 */ _t142 = cpu->r[1] + 0x00000026u;
|
|
/* 02525E74 */ rbrew_write16(cpu->mem, _t142, (uint16_t)cpu->r[28]);
|
|
/* 02525E78 */ cpu->r[12] = 0x02520000u;
|
|
/* 02525E7C */ _t143 = cpu->r[1] + 0x00000008u;
|
|
/* 02525E7C */ rbrew_write8(cpu->mem, _t143, (uint8_t)cpu->r[0]);
|
|
/* 02525E80 */ cpu->r[6] = 0xFFFFFFFFu;
|
|
/* 02525E84 */ _t144 = cpu->r[1] + 0x00000014u;
|
|
/* 02525E84 */ rbrew_write16(cpu->mem, _t144, (uint16_t)cpu->r[28]);
|
|
/* 02525E88 */ cpu->r[11] = 0x02520000u;
|
|
/* 02525E8C */ _t145 = cpu->r[1] + 0x0000001Eu;
|
|
/* 02525E8C */ rbrew_write16(cpu->mem, _t145, (uint16_t)cpu->r[6]);
|
|
/* 02525E90 */ _t146 = cpu->r[1] + 0x00000024u;
|
|
/* 02525E90 */ rbrew_write16(cpu->mem, _t146, (uint16_t)cpu->r[28]);
|
|
/* 02525E94 */ cpu->r[12] = cpu->r[12] + 0x00007968u;
|
|
/* 02525E98 */ _t147 = cpu->r[1] + 0x00000016u;
|
|
/* 02525E98 */ rbrew_write16(cpu->mem, _t147, (uint16_t)cpu->r[6]);
|
|
/* 02525E9C */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 02525EA0 */ cpu->r[11] = cpu->r[11] + 0x0000797Cu;
|
|
/* 02525EA4 */ _t148 = cpu->r[1] + 0x00000020u;
|
|
/* 02525EA4 */ rbrew_write32(cpu->mem, _t148, cpu->r[12]);
|
|
/* 02525EA8 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 02525EAC */ _t149 = cpu->r[1] + 0x00000018u;
|
|
/* 02525EAC */ rbrew_write32(cpu->mem, _t149, cpu->r[11]);
|
|
/* 02525EB0 */ cpu->r[3] = cpu->r[29] + 0x000001B0u;
|
|
/* 02525EB4 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 02525EB8 */ _t150 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02525EB8 */ rbrew_write16(cpu->mem, _t150, (uint16_t)cpu->r[28]);
|
|
/* 02525EBC */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 02525EC0 */ _t151 = cpu->r[1] + 0x00000028u;
|
|
/* 02525EC0 */ rbrew_write32(cpu->mem, _t151, cpu->r[28]);
|
|
/* 02525EC4 */ Gambit_fn_02528444(cpu);
|
|
/* 02525EC8 */ cpu->r[6] = 0x100C0000u;
|
|
/* 02525ECC */ _t152 = cpu->r[1] + 0x00000010u;
|
|
/* 02525ECC */ rbrew_write32(cpu->mem, _t152, cpu->r[27]);
|
|
/* 02525ED0 */ cpu->r[6] = cpu->r[6] + 0x000029A4u;
|
|
/* 02525ED4 */ _t153 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02525ED4 */ rbrew_write32(cpu->mem, _t153, cpu->r[6]);
|
|
/* 02525ED8 */ _t154 = cpu->r[29] + 0x000001C4u;
|
|
/* 02525ED8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t154);
|
|
/* 02525EDC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], 0x00000002u);
|
|
/* 02525EE0 */ _t155 = cpu->r[29] + 0x000001C8u;
|
|
/* 02525EE0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t155);
|
|
/* 02525EE4 */ _t156 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02525EE4 */ _t157 = _t156 & 0x00000001u;
|
|
/* 02525EE4 */ if (_t157) goto L_02525EE8; else goto L_02525EEC;
|
|
L_02525EE8: ; // 0x2525ee8
|
|
/* 02525EE8 */ cpu->r[31] = cpu->r[31] + 0x00000048u;
|
|
L_02525EEC: ; // 0x2525eec
|
|
/* 02525EEC */ cpu->ctr = cpu->r[26];
|
|
/* 02525EF0 */ _t158 = cpu->r[31] + 0x00000000u;
|
|
/* 02525EF0 */ cpu->r[24] = rbrew_read32(cpu->mem, _t158);
|
|
/* 02525EF4 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02525EF8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02525EFC */ _t159 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02525EFC */ cpu->r[11] = rbrew_read32(cpu->mem, _t159);
|
|
/* 02525F00 */ _t160 = cpu->r[11] + 0x00000000u;
|
|
/* 02525F00 */ cpu->r[10] = rbrew_read8(cpu->mem, _t160);
|
|
/* 02525F04 */ cpu->r[25] = 0x00000000u;
|
|
/* 02525F08 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[30]);
|
|
/* 02525F0C */ cpu->r[9] = 0x00080000u;
|
|
/* 02525F10 */ _t161 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02525F10 */ _t162 = _t161 & 0x00000001u;
|
|
/* 02525F10 */ if (_t162) goto L_02525F38; else goto L_02525F14;
|
|
L_02525F14: ; // 0x2525f14
|
|
/* 02525F14 */ cpu->r[25] = cpu->r[25] + 0x00000001u;
|
|
/* 02525F18 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], cpu->r[9]);
|
|
/* 02525F1C */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 02525F20 */ _t163 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02525F20 */ _t164 = _t163 & 0x00000001u;
|
|
/* 02525F20 */ if (_t164) goto L_02525F34; else goto L_02525F24;
|
|
L_02525F24: ; // 0x2525f24
|
|
/* 02525F24 */ _t165 = cpu->r[11] + 0x00000000u;
|
|
/* 02525F24 */ cpu->r[0] = rbrew_read8(cpu->mem, _t165);
|
|
/* 02525F28 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]);
|
|
/* 02525F2C */ _t166 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02525F2C */ _t167 = _t166 & 0x00000001u;
|
|
/* 02525F2C */ if (_t167) goto L_02525F30; else goto L_02525F14;
|
|
L_02525F30: ; // 0x2525f30
|
|
/* 02525F30 */ goto L_02525F38;
|
|
L_02525F34: ; // 0x2525f34
|
|
/* 02525F34 */ cpu->r[25] = 0x00000000u;
|
|
L_02525F38: ; // 0x2525f38
|
|
/* 02525F38 */ _t168 = cpu->r[31] + 0x00000008u;
|
|
/* 02525F38 */ cpu->r[9] = rbrew_read32(cpu->mem, _t168);
|
|
/* 02525F3C */ _t169 = cpu->r[1] + 0x00000010u;
|
|
/* 02525F3C */ cpu->r[12] = rbrew_read32(cpu->mem, _t169);
|
|
/* 02525F40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], cpu->r[9]);
|
|
/* 02525F44 */ _t170 = cpu->r[12] + 0x00000014u;
|
|
/* 02525F44 */ cpu->r[5] = rbrew_read32(cpu->mem, _t170);
|
|
/* 02525F48 */ _t171 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02525F48 */ _t172 = _t171 & 0x00000001u;
|
|
/* 02525F48 */ if (_t172) goto L_02525F50; else goto L_02525F4C;
|
|
L_02525F4C: ; // 0x2525f4c
|
|
/* 02525F4C */ cpu->r[25] = cpu->r[9] + 0xFFFFFFFFu;
|
|
L_02525F50: ; // 0x2525f50
|
|
/* 02525F50 */ cpu->ctr = cpu->r[5];
|
|
/* 02525F54 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02525F58 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02525F5C */ _t173 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02525F5C */ cpu->r[4] = rbrew_read32(cpu->mem, _t173);
|
|
/* 02525F60 */ cpu->r[6] = 0x00000000u;
|
|
/* 02525F64 */ cpu->r[5] = cpu->r[25];
|
|
/* 02525F68 */ cpu->r[3] = cpu->r[24];
|
|
/* 02525F6C */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 02525F70 */ _t174 = cpu->r[24] + cpu->r[25];
|
|
/* 02525F70 */ rbrew_write8(cpu->mem, _t174, (uint8_t)cpu->r[30]);
|
|
/* 02525F74 */ cpu->r[11] = 0x00000002u;
|
|
/* 02525F78 */ _t175 = cpu->r[1] + 0x00000024u;
|
|
/* 02525F78 */ rbrew_write16(cpu->mem, _t175, (uint16_t)cpu->r[28]);
|
|
/* 02525F7C */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 02525F80 */ _t176 = cpu->r[1] + 0x00000008u;
|
|
/* 02525F80 */ rbrew_write8(cpu->mem, _t176, (uint8_t)cpu->r[11]);
|
|
/* 02525F84 */ cpu->r[8] = 0x02520000u;
|
|
/* 02525F88 */ _t177 = cpu->r[1] + 0x00000016u;
|
|
/* 02525F88 */ rbrew_write16(cpu->mem, _t177, (uint16_t)cpu->r[0]);
|
|
/* 02525F8C */ cpu->r[12] = 0x02530000u;
|
|
/* 02525F90 */ _t178 = cpu->r[1] + 0x00000026u;
|
|
/* 02525F90 */ rbrew_write16(cpu->mem, _t178, (uint16_t)cpu->r[28]);
|
|
/* 02525F94 */ _t179 = cpu->r[1] + 0x00000014u;
|
|
/* 02525F94 */ rbrew_write16(cpu->mem, _t179, (uint16_t)cpu->r[28]);
|
|
/* 02525F98 */ cpu->r[12] = cpu->r[12] + 0xFFFF8118u;
|
|
/* 02525F9C */ _t180 = cpu->r[1] + 0x0000001Eu;
|
|
/* 02525F9C */ rbrew_write16(cpu->mem, _t180, (uint16_t)cpu->r[0]);
|
|
/* 02525FA0 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 02525FA4 */ _t181 = cpu->r[1] + 0x00000018u;
|
|
/* 02525FA4 */ rbrew_write32(cpu->mem, _t181, cpu->r[12]);
|
|
/* 02525FA8 */ cpu->r[8] = cpu->r[8] + 0x000079FCu;
|
|
/* 02525FAC */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 02525FB0 */ _t182 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02525FB0 */ rbrew_write16(cpu->mem, _t182, (uint16_t)cpu->r[28]);
|
|
/* 02525FB4 */ cpu->r[3] = cpu->r[29] + 0x000001B0u;
|
|
/* 02525FB8 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 02525FBC */ _t183 = cpu->r[1] + 0x00000020u;
|
|
/* 02525FBC */ rbrew_write32(cpu->mem, _t183, cpu->r[8]);
|
|
/* 02525FC0 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 02525FC4 */ _t184 = cpu->r[1] + 0x00000028u;
|
|
/* 02525FC4 */ rbrew_write32(cpu->mem, _t184, cpu->r[28]);
|
|
/* 02525FC8 */ Gambit_fn_02528444(cpu);
|
|
/* 02525FCC */ cpu->r[5] = 0x100C0000u;
|
|
/* 02525FD0 */ _t185 = cpu->r[1] + 0x00000010u;
|
|
/* 02525FD0 */ rbrew_write32(cpu->mem, _t185, cpu->r[27]);
|
|
/* 02525FD4 */ cpu->r[5] = cpu->r[5] + 0x000029B4u;
|
|
/* 02525FD8 */ _t186 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02525FD8 */ rbrew_write32(cpu->mem, _t186, cpu->r[5]);
|
|
/* 02525FDC */ _t187 = cpu->r[29] + 0x000001C4u;
|
|
/* 02525FDC */ cpu->r[6] = rbrew_read32(cpu->mem, _t187);
|
|
/* 02525FE0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], 0x00000003u);
|
|
/* 02525FE4 */ _t188 = cpu->r[29] + 0x000001C8u;
|
|
/* 02525FE4 */ cpu->r[27] = rbrew_read32(cpu->mem, _t188);
|
|
/* 02525FE8 */ _t189 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02525FE8 */ _t190 = _t189 & 0x00000001u;
|
|
/* 02525FE8 */ if (_t190) goto L_02525FEC; else goto L_02525FF0;
|
|
L_02525FEC: ; // 0x2525fec
|
|
/* 02525FEC */ cpu->r[27] = cpu->r[27] + 0x0000006Cu;
|
|
L_02525FF0: ; // 0x2525ff0
|
|
/* 02525FF0 */ cpu->ctr = cpu->r[26];
|
|
/* 02525FF4 */ _t191 = cpu->r[27] + 0x00000000u;
|
|
/* 02525FF4 */ cpu->r[25] = rbrew_read32(cpu->mem, _t191);
|
|
/* 02525FF8 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02525FFC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02526000 */ _t192 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02526000 */ cpu->r[6] = rbrew_read32(cpu->mem, _t192);
|
|
/* 02526004 */ _t193 = cpu->r[6] + 0x00000000u;
|
|
/* 02526004 */ cpu->r[7] = rbrew_read8(cpu->mem, _t193);
|
|
/* 02526008 */ cpu->r[31] = 0x00000000u;
|
|
/* 0252600C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[30]);
|
|
/* 02526010 */ cpu->r[9] = 0x00080000u;
|
|
/* 02526014 */ _t194 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02526014 */ _t195 = _t194 & 0x00000001u;
|
|
/* 02526014 */ if (_t195) goto L_0252603C; else goto L_02526018;
|
|
L_02526018: ; // 0x2526018
|
|
/* 02526018 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 0252601C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[9]);
|
|
/* 02526020 */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 02526024 */ _t196 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02526024 */ _t197 = _t196 & 0x00000001u;
|
|
/* 02526024 */ if (_t197) goto L_02526038; else goto L_02526028;
|
|
L_02526028: ; // 0x2526028
|
|
/* 02526028 */ _t198 = cpu->r[6] + 0x00000000u;
|
|
/* 02526028 */ cpu->r[8] = rbrew_read8(cpu->mem, _t198);
|
|
/* 0252602C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[30]);
|
|
/* 02526030 */ _t199 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02526030 */ _t200 = _t199 & 0x00000001u;
|
|
/* 02526030 */ if (_t200) goto L_02526034; else goto L_02526018;
|
|
L_02526034: ; // 0x2526034
|
|
/* 02526034 */ goto L_0252603C;
|
|
L_02526038: ; // 0x2526038
|
|
/* 02526038 */ cpu->r[31] = 0x00000000u;
|
|
L_0252603C: ; // 0x252603c
|
|
/* 0252603C */ _t201 = cpu->r[27] + 0x00000008u;
|
|
/* 0252603C */ cpu->r[11] = rbrew_read32(cpu->mem, _t201);
|
|
/* 02526040 */ _t202 = cpu->r[1] + 0x00000010u;
|
|
/* 02526040 */ cpu->r[9] = rbrew_read32(cpu->mem, _t202);
|
|
/* 02526044 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[11]);
|
|
/* 02526048 */ _t203 = cpu->r[9] + 0x00000014u;
|
|
/* 02526048 */ cpu->r[10] = rbrew_read32(cpu->mem, _t203);
|
|
/* 0252604C */ _t204 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0252604C */ _t205 = _t204 & 0x00000001u;
|
|
/* 0252604C */ if (_t205) goto L_02526054; else goto L_02526050;
|
|
L_02526050: ; // 0x2526050
|
|
/* 02526050 */ cpu->r[31] = cpu->r[11] + 0xFFFFFFFFu;
|
|
L_02526054: ; // 0x2526054
|
|
/* 02526054 */ cpu->ctr = cpu->r[10];
|
|
/* 02526058 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252605C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02526060 */ _t206 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02526060 */ cpu->r[4] = rbrew_read32(cpu->mem, _t206);
|
|
/* 02526064 */ cpu->r[6] = 0x00000000u;
|
|
/* 02526068 */ cpu->r[5] = cpu->r[31];
|
|
/* 0252606C */ cpu->r[3] = cpu->r[25];
|
|
/* 02526070 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 02526074 */ _t207 = cpu->r[25] + cpu->r[31];
|
|
/* 02526074 */ rbrew_write8(cpu->mem, _t207, (uint8_t)cpu->r[30]);
|
|
/* 02526078 */ cpu->r[0] = 0x00000003u;
|
|
/* 0252607C */ _t208 = cpu->r[1] + 0x00000014u;
|
|
/* 0252607C */ rbrew_write16(cpu->mem, _t208, (uint16_t)cpu->r[28]);
|
|
/* 02526080 */ cpu->r[11] = 0x02530000u;
|
|
/* 02526084 */ _t209 = cpu->r[1] + 0x00000026u;
|
|
/* 02526084 */ rbrew_write16(cpu->mem, _t209, (uint16_t)cpu->r[28]);
|
|
/* 02526088 */ cpu->r[11] = cpu->r[11] + 0xFFFF811Cu;
|
|
/* 0252608C */ _t210 = cpu->r[1] + 0x00000008u;
|
|
/* 0252608C */ rbrew_write8(cpu->mem, _t210, (uint8_t)cpu->r[0]);
|
|
/* 02526090 */ cpu->r[0] = 0x02530000u;
|
|
/* 02526094 */ _t211 = cpu->r[1] + 0x00000020u;
|
|
/* 02526094 */ rbrew_write32(cpu->mem, _t211, cpu->r[11]);
|
|
/* 02526098 */ cpu->r[0] = cpu->r[0] + 0xFFFF8120u;
|
|
/* 0252609C */ _t212 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252609C */ rbrew_write16(cpu->mem, _t212, (uint16_t)cpu->r[28]);
|
|
/* 025260A0 */ cpu->r[10] = 0xFFFFFFFFu;
|
|
/* 025260A4 */ _t213 = cpu->r[1] + 0x00000024u;
|
|
/* 025260A4 */ rbrew_write16(cpu->mem, _t213, (uint16_t)cpu->r[28]);
|
|
/* 025260A8 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 025260AC */ _t214 = cpu->r[1] + 0x0000001Eu;
|
|
/* 025260AC */ rbrew_write16(cpu->mem, _t214, (uint16_t)cpu->r[10]);
|
|
/* 025260B0 */ cpu->r[3] = cpu->r[29] + 0x000001B0u;
|
|
/* 025260B4 */ _t215 = cpu->r[1] + 0x00000018u;
|
|
/* 025260B4 */ rbrew_write32(cpu->mem, _t215, cpu->r[0]);
|
|
/* 025260B8 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 025260BC */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 025260C0 */ _t216 = cpu->r[1] + 0x00000028u;
|
|
/* 025260C0 */ rbrew_write32(cpu->mem, _t216, cpu->r[28]);
|
|
/* 025260C4 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 025260C8 */ _t217 = cpu->r[1] + 0x00000016u;
|
|
/* 025260C8 */ rbrew_write16(cpu->mem, _t217, (uint16_t)cpu->r[10]);
|
|
/* 025260CC */ Gambit_fn_02528444(cpu);
|
|
L_025260D0: ; // 0x25260d0
|
|
/* 025260D0 */ cpu->r[3] = cpu->r[29];
|
|
/* 025260D4 */ /* nop */
|
|
/* 025260D8 */ _t218 = cpu->r[1] + 0x00000058u;
|
|
/* 025260D8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t218);
|
|
/* 025260DC */ _t219 = cpu->r[1] + 0x00000050u;
|
|
/* 025260DC */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t219);
|
|
/* 025260E0 */ _t220 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 025260E0 */ _t221 = _t220 & 0x00000001u;
|
|
/* 025260E0 */ if (_t221) goto L_025260E4; // else: addr-0 trap, fall-through
|
|
L_025260E4: ; // 0x25260e4
|
|
/* 025260E4 */ _t222 = cpu->r[1] + 0x00000064u;
|
|
/* 025260E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t222);
|
|
/* 025260E8 */ cpu->lr = cpu->r[0];
|
|
/* 025260EC */ cpu->r[1] = cpu->r[1] + 0x00000060u;
|
|
/* 025260F0 */ return;
|
|
}
|
|
|
|
// fn_025260F4 @ 0x25260f4
|
|
void Gambit_fn_025260F4(CPUState* cpu) {
|
|
uint32_t _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_025260F4: ; // 0x25260f4
|
|
/* 025260F4 */ cpu->r[0] = cpu->lr;
|
|
/* 025260F8 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 025260F8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 025260F8 */ cpu->r[1] = _t0;
|
|
/* 025260FC */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 025260FC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02526100 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 02526100 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02526104 */ cpu->r[30] = cpu->r[3];
|
|
/* 02526108 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0252610C */ cpu->r[31] = cpu->r[4];
|
|
/* 02526110 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02526110 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02526114 */ Gambit_fn_024F6710(cpu);
|
|
/* 02526118 */ cpu->r[0] = 0x00000001u;
|
|
/* 0252611C */ cpu->r[3] = cpu->r[30];
|
|
/* 02526120 */ cpu->r[4] = cpu->r[31];
|
|
/* 02526124 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02526128 */ _t4 = cpu->r[1] + 0x00000008u;
|
|
/* 02526128 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[0]);
|
|
/* 0252612C */ Gambit_fn_024F4798(cpu);
|
|
/* 02526130 */ cpu->r[10] = 0x00000000u;
|
|
/* 02526134 */ _t5 = cpu->r[30] + 0x000001E8u;
|
|
/* 02526134 */ rbrew_write32(cpu->mem, _t5, cpu->r[10]);
|
|
/* 02526138 */ _t6 = cpu->r[31] + 0x000046E0u;
|
|
/* 02526138 */ cpu->r[12] = rbrew_read8(cpu->mem, _t6);
|
|
/* 0252613C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02526140 */ _t7 = cpu->r[30] + 0x000001E8u;
|
|
/* 02526140 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02526144 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02526144 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02526144 */ if (_t9) goto L_02526160; else goto L_02526148;
|
|
L_02526148: ; // 0x2526148
|
|
/* 02526148 */ _t10 = cpu->r[31] + 0x000046C0u;
|
|
/* 02526148 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0252614C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000001u);
|
|
/* 02526150 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02526150 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02526150 */ if (_t12) goto L_02526154; else goto L_02526160;
|
|
L_02526154: ; // 0x2526154
|
|
/* 02526154 */ cpu->r[0] = 0x00000001u;
|
|
/* 02526158 */ _t13 = cpu->r[30] + 0x000001E8u;
|
|
/* 02526158 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 0252615C */ _t14 = cpu->r[30] + 0x000001E8u;
|
|
/* 0252615C */ cpu->r[10] = rbrew_read32(cpu->mem, _t14);
|
|
L_02526160: ; // 0x2526160
|
|
/* 02526160 */ _t15 = cpu->r[31] + 0x000046C8u;
|
|
/* 02526160 */ cpu->r[11] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02526164 */ cpu->r[12] = cpu->r[11] ^ 0x00000001u;
|
|
/* 02526168 */ cpu->r[0] = rbrew_clz32(cpu->r[12]);
|
|
/* 0252616C */ cpu->r[11] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 02526170 */ _t16 = cpu->r[30] + 0x000002C0u;
|
|
/* 02526170 */ rbrew_write8(cpu->mem, _t16, (uint8_t)cpu->r[11]);
|
|
/* 02526174 */ _t17 = cpu->r[31] + 0x000046CCu;
|
|
/* 02526174 */ cpu->r[12] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02526178 */ cpu->r[11] = cpu->r[12] ^ 0x00000001u;
|
|
/* 0252617C */ cpu->r[12] = rbrew_clz32(cpu->r[11]);
|
|
/* 02526180 */ cpu->r[10] = rbrew_rlwinm(cpu->r[12], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 02526184 */ _t18 = cpu->r[30] + 0x000002C8u;
|
|
/* 02526184 */ rbrew_write8(cpu->mem, _t18, (uint8_t)cpu->r[10]);
|
|
/* 02526188 */ _t19 = cpu->r[31] + 0x000046D0u;
|
|
/* 02526188 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0252618C */ cpu->r[10] = cpu->r[0] ^ 0x00000001u;
|
|
/* 02526190 */ cpu->r[11] = rbrew_clz32(cpu->r[10]);
|
|
/* 02526194 */ cpu->r[0] = rbrew_rlwinm(cpu->r[11], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 02526198 */ _t20 = cpu->r[30] + 0x000002C9u;
|
|
/* 02526198 */ rbrew_write8(cpu->mem, _t20, (uint8_t)cpu->r[0]);
|
|
/* 0252619C */ _t21 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252619C */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 025261A0 */ _t22 = cpu->r[1] + 0x00000010u;
|
|
/* 025261A0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t22);
|
|
/* 025261A4 */ cpu->lr = cpu->r[0];
|
|
/* 025261A8 */ _t23 = cpu->r[1] + 0x00000014u;
|
|
/* 025261A8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t23);
|
|
/* 025261AC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 025261B0 */ return;
|
|
}
|
|
|
|
// fn_025260F8 @ 0x25260f8
|
|
void Gambit_fn_025260F8(CPUState* cpu) {
|
|
uint32_t _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_025260F8: ; // 0x25260f8
|
|
/* 025260F8 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 025260F8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 025260F8 */ cpu->r[1] = _t0;
|
|
/* 025260FC */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 025260FC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02526100 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 02526100 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02526104 */ cpu->r[30] = cpu->r[3];
|
|
/* 02526108 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0252610C */ cpu->r[31] = cpu->r[4];
|
|
/* 02526110 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02526110 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02526114 */ Gambit_fn_024F6710(cpu);
|
|
/* 02526118 */ cpu->r[0] = 0x00000001u;
|
|
/* 0252611C */ cpu->r[3] = cpu->r[30];
|
|
/* 02526120 */ cpu->r[4] = cpu->r[31];
|
|
/* 02526124 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02526128 */ _t4 = cpu->r[1] + 0x00000008u;
|
|
/* 02526128 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[0]);
|
|
/* 0252612C */ Gambit_fn_024F4798(cpu);
|
|
/* 02526130 */ cpu->r[10] = 0x00000000u;
|
|
/* 02526134 */ _t5 = cpu->r[30] + 0x000001E8u;
|
|
/* 02526134 */ rbrew_write32(cpu->mem, _t5, cpu->r[10]);
|
|
/* 02526138 */ _t6 = cpu->r[31] + 0x000046E0u;
|
|
/* 02526138 */ cpu->r[12] = rbrew_read8(cpu->mem, _t6);
|
|
/* 0252613C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02526140 */ _t7 = cpu->r[30] + 0x000001E8u;
|
|
/* 02526140 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02526144 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02526144 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02526144 */ if (_t9) goto L_02526160; else goto L_02526148;
|
|
L_02526148: ; // 0x2526148
|
|
/* 02526148 */ _t10 = cpu->r[31] + 0x000046C0u;
|
|
/* 02526148 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0252614C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000001u);
|
|
/* 02526150 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02526150 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02526150 */ if (_t12) goto L_02526154; else goto L_02526160;
|
|
L_02526154: ; // 0x2526154
|
|
/* 02526154 */ cpu->r[0] = 0x00000001u;
|
|
/* 02526158 */ _t13 = cpu->r[30] + 0x000001E8u;
|
|
/* 02526158 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 0252615C */ _t14 = cpu->r[30] + 0x000001E8u;
|
|
/* 0252615C */ cpu->r[10] = rbrew_read32(cpu->mem, _t14);
|
|
L_02526160: ; // 0x2526160
|
|
/* 02526160 */ _t15 = cpu->r[31] + 0x000046C8u;
|
|
/* 02526160 */ cpu->r[11] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02526164 */ cpu->r[12] = cpu->r[11] ^ 0x00000001u;
|
|
/* 02526168 */ cpu->r[0] = rbrew_clz32(cpu->r[12]);
|
|
/* 0252616C */ cpu->r[11] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 02526170 */ _t16 = cpu->r[30] + 0x000002C0u;
|
|
/* 02526170 */ rbrew_write8(cpu->mem, _t16, (uint8_t)cpu->r[11]);
|
|
/* 02526174 */ _t17 = cpu->r[31] + 0x000046CCu;
|
|
/* 02526174 */ cpu->r[12] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02526178 */ cpu->r[11] = cpu->r[12] ^ 0x00000001u;
|
|
/* 0252617C */ cpu->r[12] = rbrew_clz32(cpu->r[11]);
|
|
/* 02526180 */ cpu->r[10] = rbrew_rlwinm(cpu->r[12], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 02526184 */ _t18 = cpu->r[30] + 0x000002C8u;
|
|
/* 02526184 */ rbrew_write8(cpu->mem, _t18, (uint8_t)cpu->r[10]);
|
|
/* 02526188 */ _t19 = cpu->r[31] + 0x000046D0u;
|
|
/* 02526188 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0252618C */ cpu->r[10] = cpu->r[0] ^ 0x00000001u;
|
|
/* 02526190 */ cpu->r[11] = rbrew_clz32(cpu->r[10]);
|
|
/* 02526194 */ cpu->r[0] = rbrew_rlwinm(cpu->r[11], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 02526198 */ _t20 = cpu->r[30] + 0x000002C9u;
|
|
/* 02526198 */ rbrew_write8(cpu->mem, _t20, (uint8_t)cpu->r[0]);
|
|
/* 0252619C */ _t21 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252619C */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 025261A0 */ _t22 = cpu->r[1] + 0x00000010u;
|
|
/* 025261A0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t22);
|
|
/* 025261A4 */ cpu->lr = cpu->r[0];
|
|
/* 025261A8 */ _t23 = cpu->r[1] + 0x00000014u;
|
|
/* 025261A8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t23);
|
|
/* 025261AC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 025261B0 */ return;
|
|
}
|
|
|
|
// fn_025261B4 @ 0x25261b4
|
|
void Gambit_fn_025261B4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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_025261B4: ; // 0x25261b4
|
|
/* 025261B4 */ cpu->r[0] = cpu->lr;
|
|
/* 025261B8 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 025261B8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 025261B8 */ cpu->r[1] = _t0;
|
|
/* 025261BC */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 025261BC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 025261C0 */ cpu->r[31] = 0x100C0000u;
|
|
/* 025261C4 */ _t2 = cpu->r[1] + 0x00000020u;
|
|
/* 025261C4 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 025261C8 */ cpu->r[31] = cpu->r[31] + 0x0000289Cu;
|
|
/* 025261CC */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 025261CC */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 025261D0 */ cpu->r[11] = 0x100C0000u;
|
|
/* 025261D4 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025261D4 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 025261D8 */ cpu->r[11] = cpu->r[11] + 0x000029C4u;
|
|
/* 025261DC */ _t5 = cpu->r[1] + 0x00000018u;
|
|
/* 025261DC */ rbrew_write32(cpu->mem, _t5, cpu->r[28]);
|
|
/* 025261E0 */ cpu->r[30] = cpu->r[3];
|
|
/* 025261E4 */ _t6 = cpu->r[1] + 0x0000002Cu;
|
|
/* 025261E4 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 025261E8 */ _t7 = cpu->r[30] + 0x00000008u;
|
|
/* 025261E8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 025261EC */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 025261F0 */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 025261F0 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 025261F4 */ Gambit_fn_029807A8(cpu);
|
|
/* 025261F8 */ _t9 = cpu->r[1] + 0x00000010u;
|
|
/* 025261F8 */ rbrew_write32(cpu->mem, _t9, cpu->r[3]);
|
|
/* 025261FC */ _t10 = cpu->r[30] + 0x000001F0u;
|
|
/* 025261FC */ rbrew_write32(cpu->mem, _t10, cpu->r[3]);
|
|
/* 02526200 */ cpu->r[3] = 0x00000094u;
|
|
/* 02526204 */ Gambit_fn_02801A78(cpu);
|
|
/* 02526208 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252620C */ cpu->r[0] = cpu->r[3];
|
|
/* 02526210 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02526210 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02526210 */ if (_t12) goto L_0252621C; else goto L_02526214;
|
|
L_02526214: ; // 0x2526214
|
|
/* 02526214 */ Gambit_fn_023B2FFC(cpu);
|
|
/* 02526218 */ cpu->r[0] = cpu->r[3];
|
|
L_0252621C: ; // 0x252621c
|
|
/* 0252621C */ cpu->r[12] = 0x100C0000u;
|
|
/* 02526220 */ _t13 = cpu->r[30] + 0x00000008u;
|
|
/* 02526220 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02526224 */ cpu->r[12] = cpu->r[12] + 0x000029CCu;
|
|
/* 02526228 */ _t14 = cpu->r[30] + 0x00000204u;
|
|
/* 02526228 */ rbrew_write32(cpu->mem, _t14, cpu->r[0]);
|
|
/* 0252622C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02526230 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02526230 */ rbrew_write32(cpu->mem, _t15, cpu->r[31]);
|
|
/* 02526234 */ _t16 = cpu->r[1] + 0x00000008u;
|
|
/* 02526234 */ rbrew_write32(cpu->mem, _t16, cpu->r[12]);
|
|
/* 02526238 */ Gambit_fn_029807A8(cpu);
|
|
/* 0252623C */ cpu->r[31] = cpu->r[3];
|
|
/* 02526240 */ _t17 = cpu->r[30] + 0x00000008u;
|
|
/* 02526240 */ cpu->r[28] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02526244 */ /* nop */
|
|
/* 02526248 */ cpu->r[4] = cpu->r[29];
|
|
/* 0252624C */ cpu->r[3] = cpu->r[28];
|
|
/* 02526250 */ Gambit_fn_0297FC7C(cpu);
|
|
/* 02526254 */ _t18 = cpu->r[28] + 0x0000001Cu;
|
|
/* 02526254 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02526258 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[0]);
|
|
/* 0252625C */ cpu->r[6] = 0x00000000u;
|
|
/* 02526260 */ _t19 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02526260 */ _t20 = _t19 & 0x00000001u;
|
|
/* 02526260 */ if (_t20) goto L_02526264; else goto L_02526270;
|
|
L_02526264: ; // 0x2526264
|
|
/* 02526264 */ _t21 = cpu->r[28] + 0x00000024u;
|
|
/* 02526264 */ cpu->r[9] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02526268 */ cpu->r[8] = rbrew_rlwinm(cpu->r[29], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0252626C */ _t22 = cpu->r[8] + cpu->r[9];
|
|
/* 0252626C */ cpu->r[6] = rbrew_read32(cpu->mem, _t22);
|
|
L_02526270: ; // 0x2526270
|
|
/* 02526270 */ _t23 = cpu->r[6] + 0x00000000u;
|
|
/* 02526270 */ cpu->r[3] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02526274 */ _t24 = cpu->r[3] + 0x00000088u;
|
|
/* 02526274 */ cpu->r[10] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02526278 */ _t25 = cpu->r[10] + 0x0000007Cu;
|
|
/* 02526278 */ cpu->r[12] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0252627C */ cpu->ctr = cpu->r[12];
|
|
/* 02526280 */ /* nop */
|
|
/* 02526284 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02526288 */ cpu->r[7] = 0x100C0000u;
|
|
/* 0252628C */ _t26 = cpu->r[7] + 0x00002870u;
|
|
/* 0252628C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 02526290 */ _t27 = cpu->r[30] + 0x00000050u;
|
|
/* 02526290 */ cpu->r[11] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02526294 */ _t28 = cpu->r[30] + 0x00000210u;
|
|
/* 02526294 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[0]);
|
|
/* 02526298 */ _t29 = cpu->r[30] + 0x0000020Cu;
|
|
/* 02526298 */ rbrew_write32(cpu->mem, _t29, cpu->r[3]);
|
|
/* 0252629C */ _t30 = cpu->r[11] + 0x000046E1u;
|
|
/* 0252629C */ cpu->r[0] = rbrew_read8(cpu->mem, _t30);
|
|
/* 025262A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 025262A4 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025262A4 */ _t32 = _t31 & 0x00000001u;
|
|
/* 025262A4 */ if (_t32) goto L_025262D0; else goto L_025262A8;
|
|
L_025262A8: ; // 0x25262a8
|
|
/* 025262A8 */ _t33 = cpu->r[11] + 0x000046C4u;
|
|
/* 025262A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 025262AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 025262B0 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025262B0 */ _t35 = _t34 & 0x00000001u;
|
|
/* 025262B0 */ if (_t35) goto L_025262D0; else goto L_025262B4;
|
|
L_025262B4: ; // 0x25262b4
|
|
/* 025262B4 */ cpu->r[4] = 0x100C0000u;
|
|
/* 025262B8 */ cpu->r[3] = 0x00000000u;
|
|
/* 025262BC */ cpu->r[4] = cpu->r[4] + 0x00002880u;
|
|
/* 025262C0 */ Gambit_fn_02390BCC(cpu);
|
|
/* 025262C4 */ cpu->r[4] = 0x00000000u;
|
|
/* 025262C8 */ _t36 = cpu->r[30] + 0x000002B8u;
|
|
/* 025262C8 */ rbrew_write32(cpu->mem, _t36, cpu->r[3]);
|
|
/* 025262CC */ Gambit_fn_02390F04(cpu);
|
|
L_025262D0: ; // 0x25262d0
|
|
/* 025262D0 */ _t37 = cpu->r[1] + 0x00000018u;
|
|
/* 025262D0 */ cpu->r[28] = rbrew_read32(cpu->mem, _t37);
|
|
/* 025262D4 */ _t38 = cpu->r[1] + 0x0000001Cu;
|
|
/* 025262D4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t38);
|
|
/* 025262D8 */ _t39 = cpu->r[1] + 0x0000002Cu;
|
|
/* 025262D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t39);
|
|
/* 025262DC */ _t40 = cpu->r[1] + 0x00000020u;
|
|
/* 025262DC */ cpu->r[30] = rbrew_read32(cpu->mem, _t40);
|
|
/* 025262E0 */ cpu->lr = cpu->r[0];
|
|
/* 025262E4 */ _t41 = cpu->r[1] + 0x00000024u;
|
|
/* 025262E4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t41);
|
|
/* 025262E8 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 025262EC */ return;
|
|
}
|
|
|
|
// fn_025261B8 @ 0x25261b8
|
|
void Gambit_fn_025261B8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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_025261B8: ; // 0x25261b8
|
|
/* 025261B8 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 025261B8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 025261B8 */ cpu->r[1] = _t0;
|
|
/* 025261BC */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 025261BC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 025261C0 */ cpu->r[31] = 0x100C0000u;
|
|
/* 025261C4 */ _t2 = cpu->r[1] + 0x00000020u;
|
|
/* 025261C4 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 025261C8 */ cpu->r[31] = cpu->r[31] + 0x0000289Cu;
|
|
/* 025261CC */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 025261CC */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 025261D0 */ cpu->r[11] = 0x100C0000u;
|
|
/* 025261D4 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025261D4 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 025261D8 */ cpu->r[11] = cpu->r[11] + 0x000029C4u;
|
|
/* 025261DC */ _t5 = cpu->r[1] + 0x00000018u;
|
|
/* 025261DC */ rbrew_write32(cpu->mem, _t5, cpu->r[28]);
|
|
/* 025261E0 */ cpu->r[30] = cpu->r[3];
|
|
/* 025261E4 */ _t6 = cpu->r[1] + 0x0000002Cu;
|
|
/* 025261E4 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 025261E8 */ _t7 = cpu->r[30] + 0x00000008u;
|
|
/* 025261E8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 025261EC */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 025261F0 */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 025261F0 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 025261F4 */ Gambit_fn_029807A8(cpu);
|
|
/* 025261F8 */ _t9 = cpu->r[1] + 0x00000010u;
|
|
/* 025261F8 */ rbrew_write32(cpu->mem, _t9, cpu->r[3]);
|
|
/* 025261FC */ _t10 = cpu->r[30] + 0x000001F0u;
|
|
/* 025261FC */ rbrew_write32(cpu->mem, _t10, cpu->r[3]);
|
|
/* 02526200 */ cpu->r[3] = 0x00000094u;
|
|
/* 02526204 */ Gambit_fn_02801A78(cpu);
|
|
/* 02526208 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252620C */ cpu->r[0] = cpu->r[3];
|
|
/* 02526210 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02526210 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02526210 */ if (_t12) goto L_0252621C; else goto L_02526214;
|
|
L_02526214: ; // 0x2526214
|
|
/* 02526214 */ Gambit_fn_023B2FFC(cpu);
|
|
/* 02526218 */ cpu->r[0] = cpu->r[3];
|
|
L_0252621C: ; // 0x252621c
|
|
/* 0252621C */ cpu->r[12] = 0x100C0000u;
|
|
/* 02526220 */ _t13 = cpu->r[30] + 0x00000008u;
|
|
/* 02526220 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02526224 */ cpu->r[12] = cpu->r[12] + 0x000029CCu;
|
|
/* 02526228 */ _t14 = cpu->r[30] + 0x00000204u;
|
|
/* 02526228 */ rbrew_write32(cpu->mem, _t14, cpu->r[0]);
|
|
/* 0252622C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02526230 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02526230 */ rbrew_write32(cpu->mem, _t15, cpu->r[31]);
|
|
/* 02526234 */ _t16 = cpu->r[1] + 0x00000008u;
|
|
/* 02526234 */ rbrew_write32(cpu->mem, _t16, cpu->r[12]);
|
|
/* 02526238 */ Gambit_fn_029807A8(cpu);
|
|
/* 0252623C */ cpu->r[31] = cpu->r[3];
|
|
/* 02526240 */ _t17 = cpu->r[30] + 0x00000008u;
|
|
/* 02526240 */ cpu->r[28] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02526244 */ /* nop */
|
|
/* 02526248 */ cpu->r[4] = cpu->r[29];
|
|
/* 0252624C */ cpu->r[3] = cpu->r[28];
|
|
/* 02526250 */ Gambit_fn_0297FC7C(cpu);
|
|
/* 02526254 */ _t18 = cpu->r[28] + 0x0000001Cu;
|
|
/* 02526254 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02526258 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[0]);
|
|
/* 0252625C */ cpu->r[6] = 0x00000000u;
|
|
/* 02526260 */ _t19 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02526260 */ _t20 = _t19 & 0x00000001u;
|
|
/* 02526260 */ if (_t20) goto L_02526264; else goto L_02526270;
|
|
L_02526264: ; // 0x2526264
|
|
/* 02526264 */ _t21 = cpu->r[28] + 0x00000024u;
|
|
/* 02526264 */ cpu->r[9] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02526268 */ cpu->r[8] = rbrew_rlwinm(cpu->r[29], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0252626C */ _t22 = cpu->r[8] + cpu->r[9];
|
|
/* 0252626C */ cpu->r[6] = rbrew_read32(cpu->mem, _t22);
|
|
L_02526270: ; // 0x2526270
|
|
/* 02526270 */ _t23 = cpu->r[6] + 0x00000000u;
|
|
/* 02526270 */ cpu->r[3] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02526274 */ _t24 = cpu->r[3] + 0x00000088u;
|
|
/* 02526274 */ cpu->r[10] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02526278 */ _t25 = cpu->r[10] + 0x0000007Cu;
|
|
/* 02526278 */ cpu->r[12] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0252627C */ cpu->ctr = cpu->r[12];
|
|
/* 02526280 */ /* nop */
|
|
/* 02526284 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02526288 */ cpu->r[7] = 0x100C0000u;
|
|
/* 0252628C */ _t26 = cpu->r[7] + 0x00002870u;
|
|
/* 0252628C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 02526290 */ _t27 = cpu->r[30] + 0x00000050u;
|
|
/* 02526290 */ cpu->r[11] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02526294 */ _t28 = cpu->r[30] + 0x00000210u;
|
|
/* 02526294 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[0]);
|
|
/* 02526298 */ _t29 = cpu->r[30] + 0x0000020Cu;
|
|
/* 02526298 */ rbrew_write32(cpu->mem, _t29, cpu->r[3]);
|
|
/* 0252629C */ _t30 = cpu->r[11] + 0x000046E1u;
|
|
/* 0252629C */ cpu->r[0] = rbrew_read8(cpu->mem, _t30);
|
|
/* 025262A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 025262A4 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025262A4 */ _t32 = _t31 & 0x00000001u;
|
|
/* 025262A4 */ if (_t32) goto L_025262D0; else goto L_025262A8;
|
|
L_025262A8: ; // 0x25262a8
|
|
/* 025262A8 */ _t33 = cpu->r[11] + 0x000046C4u;
|
|
/* 025262A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 025262AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 025262B0 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025262B0 */ _t35 = _t34 & 0x00000001u;
|
|
/* 025262B0 */ if (_t35) goto L_025262D0; else goto L_025262B4;
|
|
L_025262B4: ; // 0x25262b4
|
|
/* 025262B4 */ cpu->r[4] = 0x100C0000u;
|
|
/* 025262B8 */ cpu->r[3] = 0x00000000u;
|
|
/* 025262BC */ cpu->r[4] = cpu->r[4] + 0x00002880u;
|
|
/* 025262C0 */ Gambit_fn_02390BCC(cpu);
|
|
/* 025262C4 */ cpu->r[4] = 0x00000000u;
|
|
/* 025262C8 */ _t36 = cpu->r[30] + 0x000002B8u;
|
|
/* 025262C8 */ rbrew_write32(cpu->mem, _t36, cpu->r[3]);
|
|
/* 025262CC */ Gambit_fn_02390F04(cpu);
|
|
L_025262D0: ; // 0x25262d0
|
|
/* 025262D0 */ _t37 = cpu->r[1] + 0x00000018u;
|
|
/* 025262D0 */ cpu->r[28] = rbrew_read32(cpu->mem, _t37);
|
|
/* 025262D4 */ _t38 = cpu->r[1] + 0x0000001Cu;
|
|
/* 025262D4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t38);
|
|
/* 025262D8 */ _t39 = cpu->r[1] + 0x0000002Cu;
|
|
/* 025262D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t39);
|
|
/* 025262DC */ _t40 = cpu->r[1] + 0x00000020u;
|
|
/* 025262DC */ cpu->r[30] = rbrew_read32(cpu->mem, _t40);
|
|
/* 025262E0 */ cpu->lr = cpu->r[0];
|
|
/* 025262E4 */ _t41 = cpu->r[1] + 0x00000024u;
|
|
/* 025262E4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t41);
|
|
/* 025262E8 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 025262EC */ return;
|
|
}
|
|
|
|
// fn_025262F0 @ 0x25262f0
|
|
void Gambit_fn_025262F0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _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_025262F0: ; // 0x25262f0
|
|
/* 025262F0 */ cpu->r[0] = cpu->lr;
|
|
/* 025262F4 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 025262F4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 025262F4 */ cpu->r[1] = _t0;
|
|
/* 025262F8 */ _t1 = cpu->r[1] + 0x00000018u;
|
|
/* 025262F8 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 025262FC */ /* nop */
|
|
/* 02526300 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02526300 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02526304 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02526304 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 02526308 */ cpu->r[31] = cpu->r[3];
|
|
/* 0252630C */ _t4 = cpu->r[1] + 0x00000020u;
|
|
/* 0252630C */ rbrew_write_f32(cpu->mem, _t4, cpu->f[31]);
|
|
/* 02526310 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 02526310 */ rbrew_write32(cpu->mem, _t5, cpu->r[30]);
|
|
/* 02526314 */ _t6 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02526314 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02526318 */ _t7 = cpu->r[31] + 0x00000050u;
|
|
/* 02526318 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0252631C */ _t8 = cpu->r[31] + 0x0000006Cu;
|
|
/* 0252631C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 02526320 */ cpu->r[10] = 0x100C0000u;
|
|
/* 02526324 */ _t9 = cpu->r[11] + 0x00004710u;
|
|
/* 02526324 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02526328 */ _t10 = cpu->r[10] + 0x00002870u;
|
|
/* 02526328 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 0252632C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02526330 */ _t11 = cpu->r[31] + 0x00000074u;
|
|
/* 02526330 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 02526334 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02526334 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02526334 */ if (_t13) goto L_02526338; else goto L_025263A4;
|
|
L_02526338: ; // 0x2526338
|
|
/* 02526338 */ cpu->r[12] = 0x100C0000u;
|
|
/* 0252633C */ _t14 = cpu->r[31] + 0x000001F4u;
|
|
/* 0252633C */ rbrew_write_f32(cpu->mem, _t14, cpu->f[11]);
|
|
/* 02526340 */ cpu->r[7] = 0x00000000u;
|
|
/* 02526344 */ _t15 = cpu->r[12] + 0x0000286Cu;
|
|
/* 02526344 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 02526348 */ cpu->r[8] = cpu->r[7];
|
|
/* 0252634C */ cpu->r[5] = 0x101C0000u;
|
|
/* 02526350 */ _t16 = cpu->r[31] + 0x00000204u;
|
|
/* 02526350 */ cpu->r[3] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02526354 */ cpu->r[5] = cpu->r[5] + 0x000068A0u;
|
|
/* 02526358 */ _t17 = cpu->r[31] + 0x00000070u;
|
|
/* 02526358 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 0252635C */ cpu->r[9] = cpu->r[8];
|
|
/* 02526360 */ _t18 = cpu->r[31] + 0x00000200u;
|
|
/* 02526360 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[31]);
|
|
/* 02526364 */ cpu->r[6] = cpu->r[5];
|
|
/* 02526368 */ _t19 = cpu->r[31] + 0x000001ECu;
|
|
/* 02526368 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[13]);
|
|
/* 0252636C */ _t20 = cpu->r[31] + 0x000001FCu;
|
|
/* 0252636C */ rbrew_write_f32(cpu->mem, _t20, cpu->f[0]);
|
|
/* 02526370 */ cpu->r[4] = cpu->r[31] + 0x00000054u;
|
|
/* 02526374 */ _t21 = cpu->r[31] + 0x000001F8u;
|
|
/* 02526374 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[12]);
|
|
/* 02526378 */ Gambit_fn_023B3154(cpu);
|
|
/* 0252637C */ _t22 = cpu->r[31] + 0x00000008u;
|
|
/* 0252637C */ cpu->r[29] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02526380 */ _t23 = cpu->r[31] + 0x000001F0u;
|
|
/* 02526380 */ cpu->r[30] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t23);
|
|
/* 02526384 */ cpu->r[3] = cpu->r[29];
|
|
/* 02526388 */ cpu->r[4] = cpu->r[30];
|
|
/* 0252638C */ Gambit_fn_0297FC7C(cpu);
|
|
/* 02526390 */ _t24 = cpu->r[29] + 0x0000001Cu;
|
|
/* 02526390 */ cpu->r[9] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02526394 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[9]);
|
|
/* 02526398 */ cpu->r[12] = 0x00000000u;
|
|
/* 0252639C */ _t25 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0252639C */ _t26 = _t25 & 0x00000001u;
|
|
/* 0252639C */ if (_t26) goto L_025263A0; else goto L_02526410;
|
|
L_025263A0: ; // 0x25263a0
|
|
/* 025263A0 */ goto L_02526404;
|
|
L_025263A4: ; // 0x25263a4
|
|
/* 025263A4 */ _t27 = cpu->r[31] + 0x000001F4u;
|
|
/* 025263A4 */ rbrew_write_f32(cpu->mem, _t27, cpu->f[11]);
|
|
/* 025263A8 */ cpu->r[7] = 0x00000000u;
|
|
/* 025263AC */ _t28 = cpu->r[31] + 0x000001ECu;
|
|
/* 025263AC */ rbrew_write_f32(cpu->mem, _t28, cpu->f[31]);
|
|
/* 025263B0 */ cpu->r[8] = cpu->r[7];
|
|
/* 025263B4 */ cpu->r[5] = 0x101C0000u;
|
|
/* 025263B8 */ _t29 = cpu->r[31] + 0x00000070u;
|
|
/* 025263B8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 025263BC */ cpu->r[5] = cpu->r[5] + 0x000068A0u;
|
|
/* 025263C0 */ _t30 = cpu->r[31] + 0x00000204u;
|
|
/* 025263C0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t30);
|
|
/* 025263C4 */ cpu->r[6] = cpu->r[5];
|
|
/* 025263C8 */ _t31 = cpu->r[31] + 0x00000200u;
|
|
/* 025263C8 */ rbrew_write_f32(cpu->mem, _t31, cpu->f[31]);
|
|
/* 025263CC */ cpu->r[9] = cpu->r[8];
|
|
/* 025263D0 */ _t32 = cpu->r[31] + 0x000001FCu;
|
|
/* 025263D0 */ rbrew_write_f32(cpu->mem, _t32, cpu->f[0]);
|
|
/* 025263D4 */ _t33 = cpu->r[31] + 0x000001F8u;
|
|
/* 025263D4 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[12]);
|
|
/* 025263D8 */ cpu->r[4] = cpu->r[31] + 0x00000054u;
|
|
/* 025263DC */ Gambit_fn_023B3154(cpu);
|
|
/* 025263E0 */ _t34 = cpu->r[31] + 0x00000008u;
|
|
/* 025263E0 */ cpu->r[29] = rbrew_read32(cpu->mem, _t34);
|
|
/* 025263E4 */ _t35 = cpu->r[31] + 0x000001F0u;
|
|
/* 025263E4 */ cpu->r[30] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t35);
|
|
/* 025263E8 */ cpu->r[3] = cpu->r[29];
|
|
/* 025263EC */ cpu->r[4] = cpu->r[30];
|
|
/* 025263F0 */ Gambit_fn_0297FC7C(cpu);
|
|
/* 025263F4 */ _t36 = cpu->r[29] + 0x0000001Cu;
|
|
/* 025263F4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t36);
|
|
/* 025263F8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[9]);
|
|
/* 025263FC */ cpu->r[12] = 0x00000000u;
|
|
/* 02526400 */ _t37 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02526400 */ _t38 = _t37 & 0x00000001u;
|
|
/* 02526400 */ if (_t38) goto L_02526404; else goto L_02526410;
|
|
L_02526404: ; // 0x2526404
|
|
/* 02526404 */ _t39 = cpu->r[29] + 0x00000024u;
|
|
/* 02526404 */ cpu->r[0] = rbrew_read32(cpu->mem, _t39);
|
|
/* 02526408 */ cpu->r[10] = rbrew_rlwinm(cpu->r[30], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0252640C */ _t40 = cpu->r[10] + cpu->r[0];
|
|
/* 0252640C */ cpu->r[12] = rbrew_read32(cpu->mem, _t40);
|
|
L_02526410: ; // 0x2526410
|
|
/* 02526410 */ _t41 = cpu->r[12] + 0x00000000u;
|
|
/* 02526410 */ cpu->r[3] = rbrew_read32(cpu->mem, _t41);
|
|
/* 02526414 */ _t42 = cpu->r[3] + 0x00000088u;
|
|
/* 02526414 */ cpu->r[9] = rbrew_read32(cpu->mem, _t42);
|
|
/* 02526418 */ _t43 = cpu->r[9] + 0x0000007Cu;
|
|
/* 02526418 */ cpu->r[0] = rbrew_read32(cpu->mem, _t43);
|
|
/* 0252641C */ _t44 = cpu->r[31] + 0x000001F2u;
|
|
/* 0252641C */ cpu->r[4] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t44);
|
|
/* 02526420 */ cpu->ctr = cpu->r[0];
|
|
/* 02526424 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02526428 */ _t45 = cpu->r[31] + 0x00000204u;
|
|
/* 02526428 */ cpu->r[10] = rbrew_read32(cpu->mem, _t45);
|
|
/* 0252642C */ cpu->r[12] = 0x00000000u;
|
|
/* 02526430 */ _t46 = cpu->r[10] + 0x00000010u;
|
|
/* 02526430 */ rbrew_write32(cpu->mem, _t46, cpu->r[3]);
|
|
/* 02526434 */ _t47 = cpu->r[31] + 0x000002C0u;
|
|
/* 02526434 */ cpu->r[0] = rbrew_read8(cpu->mem, _t47);
|
|
/* 02526438 */ _t48 = cpu->r[31] + 0x00000208u;
|
|
/* 02526438 */ rbrew_write32(cpu->mem, _t48, cpu->r[12]);
|
|
/* 0252643C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02526440 */ _t49 = cpu->r[31] + 0x00000214u;
|
|
/* 02526440 */ rbrew_write_f32(cpu->mem, _t49, cpu->f[31]);
|
|
/* 02526444 */ _t50 = cpu->r[31] + 0x00000228u;
|
|
/* 02526444 */ rbrew_write32(cpu->mem, _t50, cpu->r[12]);
|
|
/* 02526448 */ _t51 = cpu->r[31] + 0x000002BCu;
|
|
/* 02526448 */ rbrew_write_f32(cpu->mem, _t51, cpu->f[31]);
|
|
/* 0252644C */ _t52 = cpu->r[31] + 0x00000218u;
|
|
/* 0252644C */ rbrew_write_f32(cpu->mem, _t52, cpu->f[31]);
|
|
/* 02526450 */ _t53 = cpu->r[31] + 0x0000022Cu;
|
|
/* 02526450 */ rbrew_write32(cpu->mem, _t53, cpu->r[12]);
|
|
/* 02526454 */ _t54 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02526454 */ rbrew_write_f32(cpu->mem, _t54, cpu->f[31]);
|
|
/* 02526458 */ _t55 = cpu->r[31] + 0x000002B4u;
|
|
/* 02526458 */ rbrew_write8(cpu->mem, _t55, (uint8_t)cpu->r[12]);
|
|
/* 0252645C */ _t56 = cpu->r[31] + 0x00000210u;
|
|
/* 0252645C */ rbrew_write_f32(cpu->mem, _t56, cpu->f[31]);
|
|
/* 02526460 */ _t57 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02526460 */ _t58 = _t57 & 0x00000001u;
|
|
/* 02526460 */ if (_t58) goto L_02526470; else goto L_02526464;
|
|
L_02526464: ; // 0x2526464
|
|
/* 02526464 */ cpu->r[9] = 0x100C0000u;
|
|
/* 02526468 */ _t59 = cpu->r[9] + 0x0000297Cu;
|
|
/* 02526468 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t59);
|
|
/* 0252646C */ _t60 = cpu->r[31] + 0x000002C4u;
|
|
/* 0252646C */ rbrew_write_f32(cpu->mem, _t60, cpu->f[0]);
|
|
L_02526470: ; // 0x2526470
|
|
/* 02526470 */ _t61 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02526470 */ cpu->r[29] = rbrew_read32(cpu->mem, _t61);
|
|
/* 02526474 */ _t62 = cpu->r[1] + 0x00000020u;
|
|
/* 02526474 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t62);
|
|
/* 02526478 */ _t63 = cpu->r[1] + 0x00000010u;
|
|
/* 02526478 */ cpu->r[30] = rbrew_read32(cpu->mem, _t63);
|
|
/* 0252647C */ _t64 = cpu->r[1] + 0x00000018u;
|
|
/* 0252647C */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t64);
|
|
/* 02526480 */ _t65 = cpu->r[1] + 0x00000014u;
|
|
/* 02526480 */ cpu->r[31] = rbrew_read32(cpu->mem, _t65);
|
|
/* 02526484 */ _t66 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02526484 */ _t67 = _t66 & 0x00000001u;
|
|
/* 02526484 */ if (_t67) goto L_02526488; // else: addr-0 trap, fall-through
|
|
L_02526488: ; // 0x2526488
|
|
/* 02526488 */ _t68 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02526488 */ cpu->r[0] = rbrew_read32(cpu->mem, _t68);
|
|
/* 0252648C */ cpu->lr = cpu->r[0];
|
|
/* 02526490 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 02526494 */ return;
|
|
}
|
|
|
|
// fn_025262F4 @ 0x25262f4
|
|
void Gambit_fn_025262F4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _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_025262F4: ; // 0x25262f4
|
|
/* 025262F4 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 025262F4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 025262F4 */ cpu->r[1] = _t0;
|
|
/* 025262F8 */ _t1 = cpu->r[1] + 0x00000018u;
|
|
/* 025262F8 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 025262FC */ /* nop */
|
|
/* 02526300 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02526300 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02526304 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02526304 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 02526308 */ cpu->r[31] = cpu->r[3];
|
|
/* 0252630C */ _t4 = cpu->r[1] + 0x00000020u;
|
|
/* 0252630C */ rbrew_write_f32(cpu->mem, _t4, cpu->f[31]);
|
|
/* 02526310 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 02526310 */ rbrew_write32(cpu->mem, _t5, cpu->r[30]);
|
|
/* 02526314 */ _t6 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02526314 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02526318 */ _t7 = cpu->r[31] + 0x00000050u;
|
|
/* 02526318 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0252631C */ _t8 = cpu->r[31] + 0x0000006Cu;
|
|
/* 0252631C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 02526320 */ cpu->r[10] = 0x100C0000u;
|
|
/* 02526324 */ _t9 = cpu->r[11] + 0x00004710u;
|
|
/* 02526324 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02526328 */ _t10 = cpu->r[10] + 0x00002870u;
|
|
/* 02526328 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 0252632C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02526330 */ _t11 = cpu->r[31] + 0x00000074u;
|
|
/* 02526330 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 02526334 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02526334 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02526334 */ if (_t13) goto L_02526338; else goto L_025263A4;
|
|
L_02526338: ; // 0x2526338
|
|
/* 02526338 */ cpu->r[12] = 0x100C0000u;
|
|
/* 0252633C */ _t14 = cpu->r[31] + 0x000001F4u;
|
|
/* 0252633C */ rbrew_write_f32(cpu->mem, _t14, cpu->f[11]);
|
|
/* 02526340 */ cpu->r[7] = 0x00000000u;
|
|
/* 02526344 */ _t15 = cpu->r[12] + 0x0000286Cu;
|
|
/* 02526344 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 02526348 */ cpu->r[8] = cpu->r[7];
|
|
/* 0252634C */ cpu->r[5] = 0x101C0000u;
|
|
/* 02526350 */ _t16 = cpu->r[31] + 0x00000204u;
|
|
/* 02526350 */ cpu->r[3] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02526354 */ cpu->r[5] = cpu->r[5] + 0x000068A0u;
|
|
/* 02526358 */ _t17 = cpu->r[31] + 0x00000070u;
|
|
/* 02526358 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 0252635C */ cpu->r[9] = cpu->r[8];
|
|
/* 02526360 */ _t18 = cpu->r[31] + 0x00000200u;
|
|
/* 02526360 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[31]);
|
|
/* 02526364 */ cpu->r[6] = cpu->r[5];
|
|
/* 02526368 */ _t19 = cpu->r[31] + 0x000001ECu;
|
|
/* 02526368 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[13]);
|
|
/* 0252636C */ _t20 = cpu->r[31] + 0x000001FCu;
|
|
/* 0252636C */ rbrew_write_f32(cpu->mem, _t20, cpu->f[0]);
|
|
/* 02526370 */ cpu->r[4] = cpu->r[31] + 0x00000054u;
|
|
/* 02526374 */ _t21 = cpu->r[31] + 0x000001F8u;
|
|
/* 02526374 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[12]);
|
|
/* 02526378 */ Gambit_fn_023B3154(cpu);
|
|
/* 0252637C */ _t22 = cpu->r[31] + 0x00000008u;
|
|
/* 0252637C */ cpu->r[29] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02526380 */ _t23 = cpu->r[31] + 0x000001F0u;
|
|
/* 02526380 */ cpu->r[30] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t23);
|
|
/* 02526384 */ cpu->r[3] = cpu->r[29];
|
|
/* 02526388 */ cpu->r[4] = cpu->r[30];
|
|
/* 0252638C */ Gambit_fn_0297FC7C(cpu);
|
|
/* 02526390 */ _t24 = cpu->r[29] + 0x0000001Cu;
|
|
/* 02526390 */ cpu->r[9] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02526394 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[9]);
|
|
/* 02526398 */ cpu->r[12] = 0x00000000u;
|
|
/* 0252639C */ _t25 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0252639C */ _t26 = _t25 & 0x00000001u;
|
|
/* 0252639C */ if (_t26) goto L_025263A0; else goto L_02526410;
|
|
L_025263A0: ; // 0x25263a0
|
|
/* 025263A0 */ goto L_02526404;
|
|
L_025263A4: ; // 0x25263a4
|
|
/* 025263A4 */ _t27 = cpu->r[31] + 0x000001F4u;
|
|
/* 025263A4 */ rbrew_write_f32(cpu->mem, _t27, cpu->f[11]);
|
|
/* 025263A8 */ cpu->r[7] = 0x00000000u;
|
|
/* 025263AC */ _t28 = cpu->r[31] + 0x000001ECu;
|
|
/* 025263AC */ rbrew_write_f32(cpu->mem, _t28, cpu->f[31]);
|
|
/* 025263B0 */ cpu->r[8] = cpu->r[7];
|
|
/* 025263B4 */ cpu->r[5] = 0x101C0000u;
|
|
/* 025263B8 */ _t29 = cpu->r[31] + 0x00000070u;
|
|
/* 025263B8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 025263BC */ cpu->r[5] = cpu->r[5] + 0x000068A0u;
|
|
/* 025263C0 */ _t30 = cpu->r[31] + 0x00000204u;
|
|
/* 025263C0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t30);
|
|
/* 025263C4 */ cpu->r[6] = cpu->r[5];
|
|
/* 025263C8 */ _t31 = cpu->r[31] + 0x00000200u;
|
|
/* 025263C8 */ rbrew_write_f32(cpu->mem, _t31, cpu->f[31]);
|
|
/* 025263CC */ cpu->r[9] = cpu->r[8];
|
|
/* 025263D0 */ _t32 = cpu->r[31] + 0x000001FCu;
|
|
/* 025263D0 */ rbrew_write_f32(cpu->mem, _t32, cpu->f[0]);
|
|
/* 025263D4 */ _t33 = cpu->r[31] + 0x000001F8u;
|
|
/* 025263D4 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[12]);
|
|
/* 025263D8 */ cpu->r[4] = cpu->r[31] + 0x00000054u;
|
|
/* 025263DC */ Gambit_fn_023B3154(cpu);
|
|
/* 025263E0 */ _t34 = cpu->r[31] + 0x00000008u;
|
|
/* 025263E0 */ cpu->r[29] = rbrew_read32(cpu->mem, _t34);
|
|
/* 025263E4 */ _t35 = cpu->r[31] + 0x000001F0u;
|
|
/* 025263E4 */ cpu->r[30] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t35);
|
|
/* 025263E8 */ cpu->r[3] = cpu->r[29];
|
|
/* 025263EC */ cpu->r[4] = cpu->r[30];
|
|
/* 025263F0 */ Gambit_fn_0297FC7C(cpu);
|
|
/* 025263F4 */ _t36 = cpu->r[29] + 0x0000001Cu;
|
|
/* 025263F4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t36);
|
|
/* 025263F8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[9]);
|
|
/* 025263FC */ cpu->r[12] = 0x00000000u;
|
|
/* 02526400 */ _t37 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02526400 */ _t38 = _t37 & 0x00000001u;
|
|
/* 02526400 */ if (_t38) goto L_02526404; else goto L_02526410;
|
|
L_02526404: ; // 0x2526404
|
|
/* 02526404 */ _t39 = cpu->r[29] + 0x00000024u;
|
|
/* 02526404 */ cpu->r[0] = rbrew_read32(cpu->mem, _t39);
|
|
/* 02526408 */ cpu->r[10] = rbrew_rlwinm(cpu->r[30], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0252640C */ _t40 = cpu->r[10] + cpu->r[0];
|
|
/* 0252640C */ cpu->r[12] = rbrew_read32(cpu->mem, _t40);
|
|
L_02526410: ; // 0x2526410
|
|
/* 02526410 */ _t41 = cpu->r[12] + 0x00000000u;
|
|
/* 02526410 */ cpu->r[3] = rbrew_read32(cpu->mem, _t41);
|
|
/* 02526414 */ _t42 = cpu->r[3] + 0x00000088u;
|
|
/* 02526414 */ cpu->r[9] = rbrew_read32(cpu->mem, _t42);
|
|
/* 02526418 */ _t43 = cpu->r[9] + 0x0000007Cu;
|
|
/* 02526418 */ cpu->r[0] = rbrew_read32(cpu->mem, _t43);
|
|
/* 0252641C */ _t44 = cpu->r[31] + 0x000001F2u;
|
|
/* 0252641C */ cpu->r[4] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t44);
|
|
/* 02526420 */ cpu->ctr = cpu->r[0];
|
|
/* 02526424 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02526428 */ _t45 = cpu->r[31] + 0x00000204u;
|
|
/* 02526428 */ cpu->r[10] = rbrew_read32(cpu->mem, _t45);
|
|
/* 0252642C */ cpu->r[12] = 0x00000000u;
|
|
/* 02526430 */ _t46 = cpu->r[10] + 0x00000010u;
|
|
/* 02526430 */ rbrew_write32(cpu->mem, _t46, cpu->r[3]);
|
|
/* 02526434 */ _t47 = cpu->r[31] + 0x000002C0u;
|
|
/* 02526434 */ cpu->r[0] = rbrew_read8(cpu->mem, _t47);
|
|
/* 02526438 */ _t48 = cpu->r[31] + 0x00000208u;
|
|
/* 02526438 */ rbrew_write32(cpu->mem, _t48, cpu->r[12]);
|
|
/* 0252643C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02526440 */ _t49 = cpu->r[31] + 0x00000214u;
|
|
/* 02526440 */ rbrew_write_f32(cpu->mem, _t49, cpu->f[31]);
|
|
/* 02526444 */ _t50 = cpu->r[31] + 0x00000228u;
|
|
/* 02526444 */ rbrew_write32(cpu->mem, _t50, cpu->r[12]);
|
|
/* 02526448 */ _t51 = cpu->r[31] + 0x000002BCu;
|
|
/* 02526448 */ rbrew_write_f32(cpu->mem, _t51, cpu->f[31]);
|
|
/* 0252644C */ _t52 = cpu->r[31] + 0x00000218u;
|
|
/* 0252644C */ rbrew_write_f32(cpu->mem, _t52, cpu->f[31]);
|
|
/* 02526450 */ _t53 = cpu->r[31] + 0x0000022Cu;
|
|
/* 02526450 */ rbrew_write32(cpu->mem, _t53, cpu->r[12]);
|
|
/* 02526454 */ _t54 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02526454 */ rbrew_write_f32(cpu->mem, _t54, cpu->f[31]);
|
|
/* 02526458 */ _t55 = cpu->r[31] + 0x000002B4u;
|
|
/* 02526458 */ rbrew_write8(cpu->mem, _t55, (uint8_t)cpu->r[12]);
|
|
/* 0252645C */ _t56 = cpu->r[31] + 0x00000210u;
|
|
/* 0252645C */ rbrew_write_f32(cpu->mem, _t56, cpu->f[31]);
|
|
/* 02526460 */ _t57 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02526460 */ _t58 = _t57 & 0x00000001u;
|
|
/* 02526460 */ if (_t58) goto L_02526470; else goto L_02526464;
|
|
L_02526464: ; // 0x2526464
|
|
/* 02526464 */ cpu->r[9] = 0x100C0000u;
|
|
/* 02526468 */ _t59 = cpu->r[9] + 0x0000297Cu;
|
|
/* 02526468 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t59);
|
|
/* 0252646C */ _t60 = cpu->r[31] + 0x000002C4u;
|
|
/* 0252646C */ rbrew_write_f32(cpu->mem, _t60, cpu->f[0]);
|
|
L_02526470: ; // 0x2526470
|
|
/* 02526470 */ _t61 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02526470 */ cpu->r[29] = rbrew_read32(cpu->mem, _t61);
|
|
/* 02526474 */ _t62 = cpu->r[1] + 0x00000020u;
|
|
/* 02526474 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t62);
|
|
/* 02526478 */ _t63 = cpu->r[1] + 0x00000010u;
|
|
/* 02526478 */ cpu->r[30] = rbrew_read32(cpu->mem, _t63);
|
|
/* 0252647C */ _t64 = cpu->r[1] + 0x00000018u;
|
|
/* 0252647C */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t64);
|
|
/* 02526480 */ _t65 = cpu->r[1] + 0x00000014u;
|
|
/* 02526480 */ cpu->r[31] = rbrew_read32(cpu->mem, _t65);
|
|
/* 02526484 */ _t66 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02526484 */ _t67 = _t66 & 0x00000001u;
|
|
/* 02526484 */ if (_t67) goto L_02526488; // else: addr-0 trap, fall-through
|
|
L_02526488: ; // 0x2526488
|
|
/* 02526488 */ _t68 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02526488 */ cpu->r[0] = rbrew_read32(cpu->mem, _t68);
|
|
/* 0252648C */ cpu->lr = cpu->r[0];
|
|
/* 02526490 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 02526494 */ return;
|
|
}
|
|
|
|
// fn_02526498 @ 0x2526498
|
|
void Gambit_fn_02526498(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02526498: ; // 0x2526498
|
|
/* 02526498 */ _t0 = cpu->r[3] + 0x00000198u;
|
|
/* 02526498 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0252649C */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Fu, 0x0000001Du);
|
|
/* 025264A0 */ _t1 = cpu->r[3] + 0x00000198u;
|
|
/* 025264A0 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 025264A4 */ return;
|
|
}
|
|
|
|
// fn_025264A8 @ 0x25264a8
|
|
void Gambit_fn_025264A8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_025264A8: ; // 0x25264a8
|
|
/* 025264A8 */ _t0 = cpu->r[3] + 0x000001BCu;
|
|
/* 025264A8 */ cpu->r[12] = rbrew_read8(cpu->mem, _t0);
|
|
/* 025264AC */ /* nop */
|
|
/* 025264B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000002u);
|
|
/* 025264B4 */ cpu->r[0] = 0x00000001u;
|
|
/* 025264B8 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025264B8 */ _t2 = _t1 & 0x00000001u;
|
|
/* 025264B8 */ if (_t2) goto L_025264C8; else goto L_025264BC;
|
|
L_025264BC: ; // 0x25264bc
|
|
/* 025264BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000003u);
|
|
/* 025264C0 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025264C0 */ _t4 = _t3 & 0x00000001u;
|
|
/* 025264C0 */ if (_t4) goto L_025264C8; else goto L_025264C4;
|
|
L_025264C4: ; // 0x25264c4
|
|
/* 025264C4 */ cpu->r[0] = 0x00000000u;
|
|
L_025264C8: ; // 0x25264c8
|
|
/* 025264C8 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 025264CC */ return;
|
|
}
|
|
|
|
// fn_025264D0 @ 0x25264d0
|
|
void Gambit_fn_025264D0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _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;
|
|
double _ft45, _ft46;
|
|
|
|
L_025264D0: ; // 0x25264d0
|
|
/* 025264D0 */ cpu->r[0] = cpu->lr;
|
|
/* 025264D4 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 025264D4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 025264D4 */ cpu->r[1] = _t0;
|
|
/* 025264D8 */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 025264D8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 025264DC */ _t2 = cpu->r[1] + 0x00000020u;
|
|
/* 025264DC */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 025264E0 */ cpu->r[31] = cpu->r[3];
|
|
/* 025264E4 */ _t3 = cpu->r[1] + 0x0000002Cu;
|
|
/* 025264E4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 025264E8 */ _t4 = cpu->r[31] + 0x000001E8u;
|
|
/* 025264E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 025264EC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000001u);
|
|
/* 025264F0 */ _t5 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 025264F0 */ _t6 = _t5 & 0x00000001u;
|
|
/* 025264F0 */ if (_t6) goto L_02526510; else goto L_025264F4;
|
|
L_025264F4: ; // 0x25264f4
|
|
/* 025264F4 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025264F4 */ _t8 = _t7 & 0x00000001u;
|
|
/* 025264F4 */ if (_t8) goto L_02526648; else goto L_025264F8;
|
|
L_025264F8: ; // 0x25264f8
|
|
/* 025264F8 */ _t9 = cpu->r[1] + 0x0000002Cu;
|
|
/* 025264F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 025264FC */ _t10 = cpu->r[1] + 0x00000020u;
|
|
/* 025264FC */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02526500 */ cpu->lr = cpu->r[0];
|
|
/* 02526504 */ _t11 = cpu->r[1] + 0x00000024u;
|
|
/* 02526504 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02526508 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 0252650C */ return;
|
|
L_02526510: ; // 0x2526510
|
|
/* 02526510 */ _t12 = cpu->r[31] + 0x000001BCu;
|
|
/* 02526510 */ cpu->r[12] = rbrew_read8(cpu->mem, _t12);
|
|
/* 02526514 */ /* nop */
|
|
/* 02526518 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000002u);
|
|
/* 0252651C */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252651C */ _t14 = _t13 & 0x00000001u;
|
|
/* 0252651C */ if (_t14) goto L_02526520; else goto L_0252658C;
|
|
L_02526520: ; // 0x2526520
|
|
/* 02526520 */ _t15 = cpu->r[31] + 0x000001FCu;
|
|
/* 02526520 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02526524 */ cpu->r[11] = 0x100C0000u;
|
|
/* 02526528 */ _t16 = cpu->r[31] + 0x000001F8u;
|
|
/* 02526528 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0252652C */ cpu->r[8] = 0x100C0000u;
|
|
/* 02526530 */ _t17 = cpu->r[11] + 0x000029D8u;
|
|
/* 02526530 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 02526534 */ _t18 = cpu->r[8] + 0x000029E0u;
|
|
/* 02526534 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 02526538 */ _t19 = cpu->r[31] + 0x000001F4u;
|
|
/* 02526538 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0252653C */ cpu->r[3] = cpu->r[31] + 0x000001F4u;
|
|
/* 02526540 */ cpu->r[5] = 0x101F0000u;
|
|
/* 02526544 */ _t20 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02526544 */ rbrew_write32(cpu->mem, _t20, cpu->r[0]);
|
|
/* 02526548 */ cpu->f[1] = cpu->f[13] * cpu->f[12];
|
|
/* 0252654C */ _t21 = cpu->r[1] + 0x00000018u;
|
|
/* 0252654C */ rbrew_write32(cpu->mem, _t21, cpu->r[12]);
|
|
/* 02526550 */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 02526554 */ cpu->r[5] = cpu->r[5] + 0x00006350u;
|
|
/* 02526558 */ _t22 = cpu->r[1] + 0x00000014u;
|
|
/* 02526558 */ rbrew_write32(cpu->mem, _t22, cpu->r[11]);
|
|
/* 0252655C */ Gambit_fn_0204EF20(cpu);
|
|
/* 02526560 */ _t23 = cpu->r[31] + 0x000001F8u;
|
|
/* 02526560 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 02526564 */ _t24 = cpu->r[31] + 0x000001F4u;
|
|
/* 02526564 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 02526568 */ cpu->f[7] = cpu->f[7] * cpu->f[7];
|
|
/* 0252656C */ cpu->f[10] = fma(cpu->f[8], cpu->f[8], cpu->f[7]);
|
|
/* 02526570 */ _t25 = cpu->r[31] + 0x000001FCu;
|
|
/* 02526570 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 02526574 */ cpu->r[10] = 0x100C0000u;
|
|
/* 02526578 */ cpu->f[7] = fma(cpu->f[13], cpu->f[13], cpu->f[10]);
|
|
/* 0252657C */ _t26 = cpu->r[10] + 0x00002870u;
|
|
/* 0252657C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 02526580 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[7], cpu->f[11]);
|
|
/* 02526584 */ _t27 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02526584 */ _t28 = _t27 & 0x00000001u;
|
|
/* 02526584 */ if (_t28) goto L_02526588; else goto L_025266C4;
|
|
L_02526588: ; // 0x2526588
|
|
/* 02526588 */ goto L_025265F4;
|
|
L_0252658C: ; // 0x252658c
|
|
/* 0252658C */ _t29 = cpu->r[31] + 0x000001F4u;
|
|
/* 0252658C */ cpu->r[11] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02526590 */ cpu->r[8] = 0x100C0000u;
|
|
/* 02526594 */ _t30 = cpu->r[31] + 0x000001FCu;
|
|
/* 02526594 */ cpu->r[0] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02526598 */ cpu->r[10] = 0x100C0000u;
|
|
/* 0252659C */ _t31 = cpu->r[8] + 0x000029E0u;
|
|
/* 0252659C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 025265A0 */ _t32 = cpu->r[10] + 0x000029DCu;
|
|
/* 025265A0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 025265A4 */ _t33 = cpu->r[1] + 0x00000014u;
|
|
/* 025265A4 */ rbrew_write32(cpu->mem, _t33, cpu->r[11]);
|
|
/* 025265A8 */ cpu->r[5] = 0x101F0000u;
|
|
/* 025265AC */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 025265B0 */ _t34 = cpu->r[31] + 0x000001F8u;
|
|
/* 025265B0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t34);
|
|
/* 025265B4 */ cpu->f[1] = cpu->f[13] * cpu->f[12];
|
|
/* 025265B8 */ _t35 = cpu->r[1] + 0x0000001Cu;
|
|
/* 025265B8 */ rbrew_write32(cpu->mem, _t35, cpu->r[0]);
|
|
/* 025265BC */ cpu->r[5] = cpu->r[5] + 0x00006350u;
|
|
/* 025265C0 */ cpu->r[3] = cpu->r[31] + 0x000001F4u;
|
|
/* 025265C4 */ _t36 = cpu->r[1] + 0x00000018u;
|
|
/* 025265C4 */ rbrew_write32(cpu->mem, _t36, cpu->r[12]);
|
|
/* 025265C8 */ Gambit_fn_0204EF20(cpu);
|
|
/* 025265CC */ _t37 = cpu->r[31] + 0x000001F8u;
|
|
/* 025265CC */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 025265D0 */ _t38 = cpu->r[31] + 0x000001F4u;
|
|
/* 025265D0 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 025265D4 */ cpu->f[7] = cpu->f[7] * cpu->f[7];
|
|
/* 025265D8 */ cpu->f[10] = fma(cpu->f[8], cpu->f[8], cpu->f[7]);
|
|
/* 025265DC */ _t39 = cpu->r[31] + 0x000001FCu;
|
|
/* 025265DC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t39);
|
|
/* 025265E0 */ cpu->r[10] = 0x100C0000u;
|
|
/* 025265E4 */ cpu->f[7] = fma(cpu->f[13], cpu->f[13], cpu->f[10]);
|
|
/* 025265E8 */ _t40 = cpu->r[10] + 0x00002870u;
|
|
/* 025265E8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 025265EC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[7], cpu->f[11]);
|
|
/* 025265F0 */ _t41 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 025265F0 */ _t42 = _t41 & 0x00000001u;
|
|
/* 025265F0 */ if (_t42) goto L_025265F4; else goto L_025266C4;
|
|
L_025265F4: ; // 0x25265f4
|
|
/* 025265F4 */ cpu->r[9] = 0x100C0000u;
|
|
/* 025265F8 */ cpu->r[8] = 0x100C0000u;
|
|
/* 025265FC */ _t43 = cpu->r[9] + 0x00002878u;
|
|
/* 025265FC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t43);
|
|
/* 02526600 */ _t44 = cpu->r[8] + 0x0000287Cu;
|
|
/* 02526600 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 02526604 */ _ft45 = sqrt(cpu->f[7]);
|
|
/* 02526604 */ _ft46 = (double)(int32_t)0x00000001u;
|
|
/* 02526604 */ cpu->f[8] = _ft46 / _ft45;
|
|
/* 02526608 */ cpu->f[12] = cpu->f[8] * cpu->f[8];
|
|
/* 0252660C */ cpu->f[0] = cpu->f[8] * cpu->f[10];
|
|
/* 02526610 */ cpu->f[12] = -fma(cpu->f[12], cpu->f[7], -(cpu->f[9]));
|
|
/* 02526614 */ cpu->f[8] = cpu->f[12] * cpu->f[0];
|
|
/* 02526618 */ _t47 = cpu->r[31] + 0x000001FCu;
|
|
/* 02526618 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 0252661C */ /* nop */
|
|
/* 02526620 */ cpu->f[0] = cpu->f[0] * cpu->f[8];
|
|
/* 02526624 */ /* nop */
|
|
/* 02526628 */ _t48 = cpu->r[31] + 0x000001FCu;
|
|
/* 02526628 */ rbrew_write_f32(cpu->mem, _t48, cpu->f[0]);
|
|
/* 0252662C */ /* nop */
|
|
/* 02526630 */ _t49 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02526630 */ cpu->r[0] = rbrew_read32(cpu->mem, _t49);
|
|
/* 02526634 */ _t50 = cpu->r[1] + 0x00000020u;
|
|
/* 02526634 */ cpu->r[30] = rbrew_read32(cpu->mem, _t50);
|
|
/* 02526638 */ cpu->lr = cpu->r[0];
|
|
/* 0252663C */ _t51 = cpu->r[1] + 0x00000024u;
|
|
/* 0252663C */ cpu->r[31] = rbrew_read32(cpu->mem, _t51);
|
|
/* 02526640 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 02526644 */ return;
|
|
L_02526648: ; // 0x2526648
|
|
/* 02526648 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0252664C */ _t52 = cpu->r[12] + 0x00006000u;
|
|
/* 0252664C */ cpu->r[12] = rbrew_read32(cpu->mem, _t52);
|
|
/* 02526650 */ _t53 = cpu->r[12] + 0x00000268u;
|
|
/* 02526650 */ cpu->r[30] = rbrew_read32(cpu->mem, _t53);
|
|
/* 02526654 */ cpu->r[3] = cpu->r[30];
|
|
/* 02526658 */ Gambit_fn_0261F774(cpu);
|
|
/* 0252665C */ cpu->r[4] = cpu->r[3];
|
|
/* 02526660 */ cpu->r[3] = cpu->r[30];
|
|
/* 02526664 */ Gambit_fn_0261F55C(cpu);
|
|
/* 02526668 */ _t54 = cpu->r[3] + 0x00000198u;
|
|
/* 02526668 */ cpu->r[0] = rbrew_read32(cpu->mem, _t54);
|
|
/* 0252666C */ _t55 = cpu->r[31] + 0x000001F4u;
|
|
/* 0252666C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t55);
|
|
/* 02526670 */ _t56 = cpu->r[1] + 0x00000008u;
|
|
/* 02526670 */ rbrew_write32(cpu->mem, _t56, cpu->r[0]);
|
|
/* 02526674 */ _t57 = cpu->r[1] + 0x00000008u;
|
|
/* 02526674 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t57);
|
|
/* 02526678 */ cpu->r[12] = 0x100C0000u;
|
|
/* 0252667C */ _t58 = cpu->r[3] + 0x0000019Cu;
|
|
/* 0252667C */ cpu->r[9] = rbrew_read32(cpu->mem, _t58);
|
|
/* 02526680 */ cpu->f[10] = cpu->f[13] - cpu->f[11];
|
|
/* 02526684 */ _t59 = cpu->r[12] + 0x000029E4u;
|
|
/* 02526684 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t59);
|
|
/* 02526688 */ _t60 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02526688 */ rbrew_write32(cpu->mem, _t60, cpu->r[9]);
|
|
/* 0252668C */ _t61 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252668C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t61);
|
|
/* 02526690 */ cpu->f[7] = fma(cpu->f[10], cpu->f[0], cpu->f[11]);
|
|
/* 02526694 */ _t62 = cpu->r[31] + 0x000001F8u;
|
|
/* 02526694 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t62);
|
|
/* 02526698 */ _t63 = cpu->r[3] + 0x000001A0u;
|
|
/* 02526698 */ cpu->r[0] = rbrew_read32(cpu->mem, _t63);
|
|
/* 0252669C */ cpu->f[8] = cpu->f[9] - cpu->f[11];
|
|
/* 025266A0 */ _t64 = cpu->r[1] + 0x00000010u;
|
|
/* 025266A0 */ rbrew_write32(cpu->mem, _t64, cpu->r[0]);
|
|
/* 025266A4 */ _t65 = cpu->r[1] + 0x00000010u;
|
|
/* 025266A4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t65);
|
|
/* 025266A8 */ cpu->f[10] = fma(cpu->f[8], cpu->f[0], cpu->f[11]);
|
|
/* 025266AC */ _t66 = cpu->r[31] + 0x000001FCu;
|
|
/* 025266AC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t66);
|
|
/* 025266B0 */ cpu->f[12] = cpu->f[13] - cpu->f[11];
|
|
/* 025266B4 */ _t67 = cpu->r[31] + 0x000001F4u;
|
|
/* 025266B4 */ rbrew_write_f32(cpu->mem, _t67, cpu->f[7]);
|
|
/* 025266B8 */ cpu->f[9] = fma(cpu->f[12], cpu->f[0], cpu->f[11]);
|
|
/* 025266BC */ _t68 = cpu->r[31] + 0x000001F8u;
|
|
/* 025266BC */ rbrew_write_f32(cpu->mem, _t68, cpu->f[10]);
|
|
/* 025266C0 */ _t69 = cpu->r[31] + 0x000001FCu;
|
|
/* 025266C0 */ rbrew_write_f32(cpu->mem, _t69, cpu->f[9]);
|
|
L_025266C4: ; // 0x25266c4
|
|
/* 025266C4 */ _t70 = cpu->r[1] + 0x0000002Cu;
|
|
/* 025266C4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t70);
|
|
/* 025266C8 */ _t71 = cpu->r[1] + 0x00000020u;
|
|
/* 025266C8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t71);
|
|
/* 025266CC */ cpu->lr = cpu->r[0];
|
|
/* 025266D0 */ _t72 = cpu->r[1] + 0x00000024u;
|
|
/* 025266D0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t72);
|
|
/* 025266D4 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 025266D8 */ return;
|
|
}
|
|
|
|
// fn_025264D4 @ 0x25264d4
|
|
void Gambit_fn_025264D4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _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;
|
|
double _ft45, _ft46;
|
|
|
|
L_025264D4: ; // 0x25264d4
|
|
/* 025264D4 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 025264D4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 025264D4 */ cpu->r[1] = _t0;
|
|
/* 025264D8 */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 025264D8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 025264DC */ _t2 = cpu->r[1] + 0x00000020u;
|
|
/* 025264DC */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 025264E0 */ cpu->r[31] = cpu->r[3];
|
|
/* 025264E4 */ _t3 = cpu->r[1] + 0x0000002Cu;
|
|
/* 025264E4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 025264E8 */ _t4 = cpu->r[31] + 0x000001E8u;
|
|
/* 025264E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 025264EC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000001u);
|
|
/* 025264F0 */ _t5 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 025264F0 */ _t6 = _t5 & 0x00000001u;
|
|
/* 025264F0 */ if (_t6) goto L_02526510; else goto L_025264F4;
|
|
L_025264F4: ; // 0x25264f4
|
|
/* 025264F4 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025264F4 */ _t8 = _t7 & 0x00000001u;
|
|
/* 025264F4 */ if (_t8) goto L_02526648; else goto L_025264F8;
|
|
L_025264F8: ; // 0x25264f8
|
|
/* 025264F8 */ _t9 = cpu->r[1] + 0x0000002Cu;
|
|
/* 025264F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 025264FC */ _t10 = cpu->r[1] + 0x00000020u;
|
|
/* 025264FC */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02526500 */ cpu->lr = cpu->r[0];
|
|
/* 02526504 */ _t11 = cpu->r[1] + 0x00000024u;
|
|
/* 02526504 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02526508 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 0252650C */ return;
|
|
L_02526510: ; // 0x2526510
|
|
/* 02526510 */ _t12 = cpu->r[31] + 0x000001BCu;
|
|
/* 02526510 */ cpu->r[12] = rbrew_read8(cpu->mem, _t12);
|
|
/* 02526514 */ /* nop */
|
|
/* 02526518 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000002u);
|
|
/* 0252651C */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252651C */ _t14 = _t13 & 0x00000001u;
|
|
/* 0252651C */ if (_t14) goto L_02526520; else goto L_0252658C;
|
|
L_02526520: ; // 0x2526520
|
|
/* 02526520 */ _t15 = cpu->r[31] + 0x000001FCu;
|
|
/* 02526520 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02526524 */ cpu->r[11] = 0x100C0000u;
|
|
/* 02526528 */ _t16 = cpu->r[31] + 0x000001F8u;
|
|
/* 02526528 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0252652C */ cpu->r[8] = 0x100C0000u;
|
|
/* 02526530 */ _t17 = cpu->r[11] + 0x000029D8u;
|
|
/* 02526530 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 02526534 */ _t18 = cpu->r[8] + 0x000029E0u;
|
|
/* 02526534 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 02526538 */ _t19 = cpu->r[31] + 0x000001F4u;
|
|
/* 02526538 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0252653C */ cpu->r[3] = cpu->r[31] + 0x000001F4u;
|
|
/* 02526540 */ cpu->r[5] = 0x101F0000u;
|
|
/* 02526544 */ _t20 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02526544 */ rbrew_write32(cpu->mem, _t20, cpu->r[0]);
|
|
/* 02526548 */ cpu->f[1] = cpu->f[13] * cpu->f[12];
|
|
/* 0252654C */ _t21 = cpu->r[1] + 0x00000018u;
|
|
/* 0252654C */ rbrew_write32(cpu->mem, _t21, cpu->r[12]);
|
|
/* 02526550 */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 02526554 */ cpu->r[5] = cpu->r[5] + 0x00006350u;
|
|
/* 02526558 */ _t22 = cpu->r[1] + 0x00000014u;
|
|
/* 02526558 */ rbrew_write32(cpu->mem, _t22, cpu->r[11]);
|
|
/* 0252655C */ Gambit_fn_0204EF20(cpu);
|
|
/* 02526560 */ _t23 = cpu->r[31] + 0x000001F8u;
|
|
/* 02526560 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 02526564 */ _t24 = cpu->r[31] + 0x000001F4u;
|
|
/* 02526564 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 02526568 */ cpu->f[7] = cpu->f[7] * cpu->f[7];
|
|
/* 0252656C */ cpu->f[10] = fma(cpu->f[8], cpu->f[8], cpu->f[7]);
|
|
/* 02526570 */ _t25 = cpu->r[31] + 0x000001FCu;
|
|
/* 02526570 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 02526574 */ cpu->r[10] = 0x100C0000u;
|
|
/* 02526578 */ cpu->f[7] = fma(cpu->f[13], cpu->f[13], cpu->f[10]);
|
|
/* 0252657C */ _t26 = cpu->r[10] + 0x00002870u;
|
|
/* 0252657C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 02526580 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[7], cpu->f[11]);
|
|
/* 02526584 */ _t27 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02526584 */ _t28 = _t27 & 0x00000001u;
|
|
/* 02526584 */ if (_t28) goto L_02526588; else goto L_025266C4;
|
|
L_02526588: ; // 0x2526588
|
|
/* 02526588 */ goto L_025265F4;
|
|
L_0252658C: ; // 0x252658c
|
|
/* 0252658C */ _t29 = cpu->r[31] + 0x000001F4u;
|
|
/* 0252658C */ cpu->r[11] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02526590 */ cpu->r[8] = 0x100C0000u;
|
|
/* 02526594 */ _t30 = cpu->r[31] + 0x000001FCu;
|
|
/* 02526594 */ cpu->r[0] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02526598 */ cpu->r[10] = 0x100C0000u;
|
|
/* 0252659C */ _t31 = cpu->r[8] + 0x000029E0u;
|
|
/* 0252659C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 025265A0 */ _t32 = cpu->r[10] + 0x000029DCu;
|
|
/* 025265A0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 025265A4 */ _t33 = cpu->r[1] + 0x00000014u;
|
|
/* 025265A4 */ rbrew_write32(cpu->mem, _t33, cpu->r[11]);
|
|
/* 025265A8 */ cpu->r[5] = 0x101F0000u;
|
|
/* 025265AC */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 025265B0 */ _t34 = cpu->r[31] + 0x000001F8u;
|
|
/* 025265B0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t34);
|
|
/* 025265B4 */ cpu->f[1] = cpu->f[13] * cpu->f[12];
|
|
/* 025265B8 */ _t35 = cpu->r[1] + 0x0000001Cu;
|
|
/* 025265B8 */ rbrew_write32(cpu->mem, _t35, cpu->r[0]);
|
|
/* 025265BC */ cpu->r[5] = cpu->r[5] + 0x00006350u;
|
|
/* 025265C0 */ cpu->r[3] = cpu->r[31] + 0x000001F4u;
|
|
/* 025265C4 */ _t36 = cpu->r[1] + 0x00000018u;
|
|
/* 025265C4 */ rbrew_write32(cpu->mem, _t36, cpu->r[12]);
|
|
/* 025265C8 */ Gambit_fn_0204EF20(cpu);
|
|
/* 025265CC */ _t37 = cpu->r[31] + 0x000001F8u;
|
|
/* 025265CC */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 025265D0 */ _t38 = cpu->r[31] + 0x000001F4u;
|
|
/* 025265D0 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 025265D4 */ cpu->f[7] = cpu->f[7] * cpu->f[7];
|
|
/* 025265D8 */ cpu->f[10] = fma(cpu->f[8], cpu->f[8], cpu->f[7]);
|
|
/* 025265DC */ _t39 = cpu->r[31] + 0x000001FCu;
|
|
/* 025265DC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t39);
|
|
/* 025265E0 */ cpu->r[10] = 0x100C0000u;
|
|
/* 025265E4 */ cpu->f[7] = fma(cpu->f[13], cpu->f[13], cpu->f[10]);
|
|
/* 025265E8 */ _t40 = cpu->r[10] + 0x00002870u;
|
|
/* 025265E8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 025265EC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[7], cpu->f[11]);
|
|
/* 025265F0 */ _t41 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 025265F0 */ _t42 = _t41 & 0x00000001u;
|
|
/* 025265F0 */ if (_t42) goto L_025265F4; else goto L_025266C4;
|
|
L_025265F4: ; // 0x25265f4
|
|
/* 025265F4 */ cpu->r[9] = 0x100C0000u;
|
|
/* 025265F8 */ cpu->r[8] = 0x100C0000u;
|
|
/* 025265FC */ _t43 = cpu->r[9] + 0x00002878u;
|
|
/* 025265FC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t43);
|
|
/* 02526600 */ _t44 = cpu->r[8] + 0x0000287Cu;
|
|
/* 02526600 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 02526604 */ _ft45 = sqrt(cpu->f[7]);
|
|
/* 02526604 */ _ft46 = (double)(int32_t)0x00000001u;
|
|
/* 02526604 */ cpu->f[8] = _ft46 / _ft45;
|
|
/* 02526608 */ cpu->f[12] = cpu->f[8] * cpu->f[8];
|
|
/* 0252660C */ cpu->f[0] = cpu->f[8] * cpu->f[10];
|
|
/* 02526610 */ cpu->f[12] = -fma(cpu->f[12], cpu->f[7], -(cpu->f[9]));
|
|
/* 02526614 */ cpu->f[8] = cpu->f[12] * cpu->f[0];
|
|
/* 02526618 */ _t47 = cpu->r[31] + 0x000001FCu;
|
|
/* 02526618 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 0252661C */ /* nop */
|
|
/* 02526620 */ cpu->f[0] = cpu->f[0] * cpu->f[8];
|
|
/* 02526624 */ /* nop */
|
|
/* 02526628 */ _t48 = cpu->r[31] + 0x000001FCu;
|
|
/* 02526628 */ rbrew_write_f32(cpu->mem, _t48, cpu->f[0]);
|
|
/* 0252662C */ /* nop */
|
|
/* 02526630 */ _t49 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02526630 */ cpu->r[0] = rbrew_read32(cpu->mem, _t49);
|
|
/* 02526634 */ _t50 = cpu->r[1] + 0x00000020u;
|
|
/* 02526634 */ cpu->r[30] = rbrew_read32(cpu->mem, _t50);
|
|
/* 02526638 */ cpu->lr = cpu->r[0];
|
|
/* 0252663C */ _t51 = cpu->r[1] + 0x00000024u;
|
|
/* 0252663C */ cpu->r[31] = rbrew_read32(cpu->mem, _t51);
|
|
/* 02526640 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 02526644 */ return;
|
|
L_02526648: ; // 0x2526648
|
|
/* 02526648 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0252664C */ _t52 = cpu->r[12] + 0x00006000u;
|
|
/* 0252664C */ cpu->r[12] = rbrew_read32(cpu->mem, _t52);
|
|
/* 02526650 */ _t53 = cpu->r[12] + 0x00000268u;
|
|
/* 02526650 */ cpu->r[30] = rbrew_read32(cpu->mem, _t53);
|
|
/* 02526654 */ cpu->r[3] = cpu->r[30];
|
|
/* 02526658 */ Gambit_fn_0261F774(cpu);
|
|
/* 0252665C */ cpu->r[4] = cpu->r[3];
|
|
/* 02526660 */ cpu->r[3] = cpu->r[30];
|
|
/* 02526664 */ Gambit_fn_0261F55C(cpu);
|
|
/* 02526668 */ _t54 = cpu->r[3] + 0x00000198u;
|
|
/* 02526668 */ cpu->r[0] = rbrew_read32(cpu->mem, _t54);
|
|
/* 0252666C */ _t55 = cpu->r[31] + 0x000001F4u;
|
|
/* 0252666C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t55);
|
|
/* 02526670 */ _t56 = cpu->r[1] + 0x00000008u;
|
|
/* 02526670 */ rbrew_write32(cpu->mem, _t56, cpu->r[0]);
|
|
/* 02526674 */ _t57 = cpu->r[1] + 0x00000008u;
|
|
/* 02526674 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t57);
|
|
/* 02526678 */ cpu->r[12] = 0x100C0000u;
|
|
/* 0252667C */ _t58 = cpu->r[3] + 0x0000019Cu;
|
|
/* 0252667C */ cpu->r[9] = rbrew_read32(cpu->mem, _t58);
|
|
/* 02526680 */ cpu->f[10] = cpu->f[13] - cpu->f[11];
|
|
/* 02526684 */ _t59 = cpu->r[12] + 0x000029E4u;
|
|
/* 02526684 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t59);
|
|
/* 02526688 */ _t60 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02526688 */ rbrew_write32(cpu->mem, _t60, cpu->r[9]);
|
|
/* 0252668C */ _t61 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252668C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t61);
|
|
/* 02526690 */ cpu->f[7] = fma(cpu->f[10], cpu->f[0], cpu->f[11]);
|
|
/* 02526694 */ _t62 = cpu->r[31] + 0x000001F8u;
|
|
/* 02526694 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t62);
|
|
/* 02526698 */ _t63 = cpu->r[3] + 0x000001A0u;
|
|
/* 02526698 */ cpu->r[0] = rbrew_read32(cpu->mem, _t63);
|
|
/* 0252669C */ cpu->f[8] = cpu->f[9] - cpu->f[11];
|
|
/* 025266A0 */ _t64 = cpu->r[1] + 0x00000010u;
|
|
/* 025266A0 */ rbrew_write32(cpu->mem, _t64, cpu->r[0]);
|
|
/* 025266A4 */ _t65 = cpu->r[1] + 0x00000010u;
|
|
/* 025266A4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t65);
|
|
/* 025266A8 */ cpu->f[10] = fma(cpu->f[8], cpu->f[0], cpu->f[11]);
|
|
/* 025266AC */ _t66 = cpu->r[31] + 0x000001FCu;
|
|
/* 025266AC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t66);
|
|
/* 025266B0 */ cpu->f[12] = cpu->f[13] - cpu->f[11];
|
|
/* 025266B4 */ _t67 = cpu->r[31] + 0x000001F4u;
|
|
/* 025266B4 */ rbrew_write_f32(cpu->mem, _t67, cpu->f[7]);
|
|
/* 025266B8 */ cpu->f[9] = fma(cpu->f[12], cpu->f[0], cpu->f[11]);
|
|
/* 025266BC */ _t68 = cpu->r[31] + 0x000001F8u;
|
|
/* 025266BC */ rbrew_write_f32(cpu->mem, _t68, cpu->f[10]);
|
|
/* 025266C0 */ _t69 = cpu->r[31] + 0x000001FCu;
|
|
/* 025266C0 */ rbrew_write_f32(cpu->mem, _t69, cpu->f[9]);
|
|
L_025266C4: ; // 0x25266c4
|
|
/* 025266C4 */ _t70 = cpu->r[1] + 0x0000002Cu;
|
|
/* 025266C4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t70);
|
|
/* 025266C8 */ _t71 = cpu->r[1] + 0x00000020u;
|
|
/* 025266C8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t71);
|
|
/* 025266CC */ cpu->lr = cpu->r[0];
|
|
/* 025266D0 */ _t72 = cpu->r[1] + 0x00000024u;
|
|
/* 025266D0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t72);
|
|
/* 025266D4 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 025266D8 */ return;
|
|
}
|
|
|
|
// fn_025266DC @ 0x25266dc
|
|
void Gambit_fn_025266DC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_025266DC: ; // 0x25266dc
|
|
/* 025266DC */ cpu->r[0] = cpu->lr;
|
|
/* 025266E0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 025266E0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 025266E0 */ cpu->r[1] = _t0;
|
|
/* 025266E4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025266E4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 025266E8 */ cpu->r[31] = 0x00000000u;
|
|
/* 025266EC */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 025266EC */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 025266F0 */ cpu->r[11] = cpu->r[3];
|
|
/* 025266F4 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 025266F4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 025266F8 */ Gambit_fn_025264A8(cpu);
|
|
/* 025266FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02526700 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02526700 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02526700 */ if (_t5) goto L_0252674C; else goto L_02526704;
|
|
L_02526704: ; // 0x2526704
|
|
/* 02526704 */ _t6 = cpu->r[11] + 0x000001E8u;
|
|
/* 02526704 */ cpu->r[9] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02526708 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0252670C */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252670C */ _t8 = _t7 & 0x00000001u;
|
|
/* 0252670C */ if (_t8) goto L_02526710; else goto L_0252674C;
|
|
L_02526710: ; // 0x2526710
|
|
/* 02526710 */ _t9 = cpu->r[11] + 0x000002C9u;
|
|
/* 02526710 */ cpu->r[0] = rbrew_read8(cpu->mem, _t9);
|
|
/* 02526714 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02526718 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02526718 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02526718 */ if (_t11) goto L_02526748; else goto L_0252671C;
|
|
L_0252671C: ; // 0x252671c
|
|
/* 0252671C */ cpu->r[12] = 0x101C0000u;
|
|
/* 02526720 */ _t12 = cpu->r[12] + 0x00006000u;
|
|
/* 02526720 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02526724 */ _t13 = cpu->r[12] + 0x00000268u;
|
|
/* 02526724 */ cpu->r[30] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02526728 */ cpu->r[3] = cpu->r[30];
|
|
/* 0252672C */ Gambit_fn_0261F774(cpu);
|
|
/* 02526730 */ cpu->r[4] = cpu->r[3];
|
|
/* 02526734 */ cpu->r[3] = cpu->r[30];
|
|
/* 02526738 */ Gambit_fn_0261F55C(cpu);
|
|
/* 0252673C */ Gambit_fn_025AD3E8(cpu);
|
|
/* 02526740 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02526744 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02526744 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02526744 */ if (_t15) goto L_02526748; else goto L_0252674C;
|
|
L_02526748: ; // 0x2526748
|
|
/* 02526748 */ cpu->r[31] = 0x00000001u;
|
|
L_0252674C: ; // 0x252674c
|
|
/* 0252674C */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 0252674C */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02526750 */ cpu->r[3] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 02526754 */ _t17 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02526754 */ cpu->r[31] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02526758 */ cpu->lr = cpu->r[0];
|
|
/* 0252675C */ _t18 = cpu->r[1] + 0x00000008u;
|
|
/* 0252675C */ cpu->r[30] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02526760 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02526764 */ return;
|
|
}
|
|
|
|
// fn_025266E0 @ 0x25266e0
|
|
void Gambit_fn_025266E0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_025266E0: ; // 0x25266e0
|
|
/* 025266E0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 025266E0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 025266E0 */ cpu->r[1] = _t0;
|
|
/* 025266E4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025266E4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 025266E8 */ cpu->r[31] = 0x00000000u;
|
|
/* 025266EC */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 025266EC */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 025266F0 */ cpu->r[11] = cpu->r[3];
|
|
/* 025266F4 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 025266F4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 025266F8 */ Gambit_fn_025264A8(cpu);
|
|
/* 025266FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02526700 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02526700 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02526700 */ if (_t5) goto L_0252674C; else goto L_02526704;
|
|
L_02526704: ; // 0x2526704
|
|
/* 02526704 */ _t6 = cpu->r[11] + 0x000001E8u;
|
|
/* 02526704 */ cpu->r[9] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02526708 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0252670C */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252670C */ _t8 = _t7 & 0x00000001u;
|
|
/* 0252670C */ if (_t8) goto L_02526710; else goto L_0252674C;
|
|
L_02526710: ; // 0x2526710
|
|
/* 02526710 */ _t9 = cpu->r[11] + 0x000002C9u;
|
|
/* 02526710 */ cpu->r[0] = rbrew_read8(cpu->mem, _t9);
|
|
/* 02526714 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02526718 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02526718 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02526718 */ if (_t11) goto L_02526748; else goto L_0252671C;
|
|
L_0252671C: ; // 0x252671c
|
|
/* 0252671C */ cpu->r[12] = 0x101C0000u;
|
|
/* 02526720 */ _t12 = cpu->r[12] + 0x00006000u;
|
|
/* 02526720 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02526724 */ _t13 = cpu->r[12] + 0x00000268u;
|
|
/* 02526724 */ cpu->r[30] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02526728 */ cpu->r[3] = cpu->r[30];
|
|
/* 0252672C */ Gambit_fn_0261F774(cpu);
|
|
/* 02526730 */ cpu->r[4] = cpu->r[3];
|
|
/* 02526734 */ cpu->r[3] = cpu->r[30];
|
|
/* 02526738 */ Gambit_fn_0261F55C(cpu);
|
|
/* 0252673C */ Gambit_fn_025AD3E8(cpu);
|
|
/* 02526740 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02526744 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02526744 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02526744 */ if (_t15) goto L_02526748; else goto L_0252674C;
|
|
L_02526748: ; // 0x2526748
|
|
/* 02526748 */ cpu->r[31] = 0x00000001u;
|
|
L_0252674C: ; // 0x252674c
|
|
/* 0252674C */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 0252674C */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02526750 */ cpu->r[3] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 02526754 */ _t17 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02526754 */ cpu->r[31] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02526758 */ cpu->lr = cpu->r[0];
|
|
/* 0252675C */ _t18 = cpu->r[1] + 0x00000008u;
|
|
/* 0252675C */ cpu->r[30] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02526760 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02526764 */ return;
|
|
}
|
|
|
|
// fn_02526768 @ 0x2526768
|
|
void Gambit_fn_02526768(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60;
|
|
|
|
L_02526768: ; // 0x2526768
|
|
/* 02526768 */ cpu->r[0] = cpu->lr;
|
|
/* 0252676C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0252676C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252676C */ cpu->r[1] = _t0;
|
|
/* 02526770 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02526770 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02526774 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02526774 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02526778 */ cpu->r[31] = cpu->r[3];
|
|
/* 0252677C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0252677C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02526780 */ _t4 = cpu->r[31] + 0x000002C9u;
|
|
/* 02526780 */ cpu->r[0] = rbrew_read8(cpu->mem, _t4);
|
|
/* 02526784 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02526788 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02526788 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02526788 */ if (_t6) goto L_0252680C; else goto L_0252678C;
|
|
L_0252678C: ; // 0x252678c
|
|
/* 0252678C */ cpu->r[12] = 0x101C0000u;
|
|
/* 02526790 */ _t7 = cpu->r[12] + 0x00006000u;
|
|
/* 02526790 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02526794 */ _t8 = cpu->r[12] + 0x00000268u;
|
|
/* 02526794 */ cpu->r[30] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02526798 */ cpu->r[3] = cpu->r[30];
|
|
/* 0252679C */ Gambit_fn_0261F774(cpu);
|
|
/* 025267A0 */ cpu->r[4] = cpu->r[3];
|
|
/* 025267A4 */ cpu->r[3] = cpu->r[30];
|
|
/* 025267A8 */ Gambit_fn_0261F55C(cpu);
|
|
/* 025267AC */ _t9 = cpu->r[31] + 0x000002B8u;
|
|
/* 025267AC */ cpu->r[9] = rbrew_read32(cpu->mem, _t9);
|
|
/* 025267B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 025267B4 */ _t10 = cpu->r[3] + 0x00000248u;
|
|
/* 025267B4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 025267B8 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025267B8 */ _t12 = _t11 & 0x00000001u;
|
|
/* 025267B8 */ if (_t12) goto L_025267E4; else goto L_025267BC;
|
|
L_025267BC: ; // 0x25267bc
|
|
/* 025267BC */ cpu->r[10] = 0x100C0000u;
|
|
/* 025267C0 */ _t13 = cpu->r[10] + 0x000029E8u;
|
|
/* 025267C0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 025267C4 */ cpu->f[11] = cpu->f[13] + cpu->f[0];
|
|
/* 025267C8 */ _t14 = cpu->r[31] + 0x0000007Cu;
|
|
/* 025267C8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 025267CC */ cpu->r[8] = 0x100C0000u;
|
|
/* 025267D0 */ cpu->f[0] = cpu->f[11] - cpu->f[13];
|
|
/* 025267D4 */ _t15 = cpu->r[8] + 0x000029F0u;
|
|
/* 025267D4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 025267D8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[10]);
|
|
/* 025267DC */ _t16 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 025267DC */ _t17 = _t16 & 0x00000001u;
|
|
/* 025267DC */ if (_t17) goto L_0252685C; else goto L_025267E0;
|
|
L_025267E0: ; // 0x25267e0
|
|
/* 025267E0 */ goto L_02526878;
|
|
L_025267E4: ; // 0x25267e4
|
|
/* 025267E4 */ cpu->r[8] = 0x100C0000u;
|
|
/* 025267E8 */ _t18 = cpu->r[8] + 0x000029ECu;
|
|
/* 025267E8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 025267EC */ cpu->f[11] = cpu->f[13] + cpu->f[0];
|
|
/* 025267F0 */ _t19 = cpu->r[31] + 0x0000007Cu;
|
|
/* 025267F0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 025267F4 */ cpu->r[8] = 0x100C0000u;
|
|
/* 025267F8 */ cpu->f[0] = cpu->f[11] - cpu->f[13];
|
|
/* 025267FC */ _t20 = cpu->r[8] + 0x000029F0u;
|
|
/* 025267FC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 02526800 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[10]);
|
|
/* 02526804 */ _t21 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02526804 */ _t22 = _t21 & 0x00000001u;
|
|
/* 02526804 */ if (_t22) goto L_0252685C; else goto L_02526808;
|
|
L_02526808: ; // 0x2526808
|
|
/* 02526808 */ goto L_02526878;
|
|
L_0252680C: ; // 0x252680c
|
|
/* 0252680C */ _t23 = cpu->r[31] + 0x000002B8u;
|
|
/* 0252680C */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02526810 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02526814 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02526814 */ _t25 = _t24 & 0x00000001u;
|
|
/* 02526814 */ if (_t25) goto L_0252683C; else goto L_02526818;
|
|
L_02526818: ; // 0x2526818
|
|
/* 02526818 */ cpu->r[12] = 0x100C0000u;
|
|
/* 0252681C */ _t26 = cpu->r[31] + 0x0000007Cu;
|
|
/* 0252681C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 02526820 */ _t27 = cpu->r[12] + 0x000029E8u;
|
|
/* 02526820 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 02526824 */ cpu->r[8] = 0x100C0000u;
|
|
/* 02526828 */ cpu->f[0] = cpu->f[11] - cpu->f[13];
|
|
/* 0252682C */ _t28 = cpu->r[8] + 0x000029F0u;
|
|
/* 0252682C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 02526830 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[10]);
|
|
/* 02526834 */ _t29 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02526834 */ _t30 = _t29 & 0x00000001u;
|
|
/* 02526834 */ if (_t30) goto L_0252685C; else goto L_02526838;
|
|
L_02526838: ; // 0x2526838
|
|
/* 02526838 */ goto L_02526878;
|
|
L_0252683C: ; // 0x252683c
|
|
/* 0252683C */ cpu->r[10] = 0x100C0000u;
|
|
/* 02526840 */ _t31 = cpu->r[31] + 0x0000007Cu;
|
|
/* 02526840 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 02526844 */ _t32 = cpu->r[10] + 0x000029ECu;
|
|
/* 02526844 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 02526848 */ cpu->r[8] = 0x100C0000u;
|
|
/* 0252684C */ cpu->f[0] = cpu->f[11] - cpu->f[13];
|
|
/* 02526850 */ _t33 = cpu->r[8] + 0x000029F0u;
|
|
/* 02526850 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 02526854 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[10]);
|
|
/* 02526858 */ _t34 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02526858 */ _t35 = _t34 & 0x00000001u;
|
|
/* 02526858 */ if (_t35) goto L_0252685C; else goto L_02526878;
|
|
L_0252685C: ; // 0x252685c
|
|
/* 0252685C */ _t36 = cpu->r[31] + 0x00000200u;
|
|
/* 0252685C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 02526860 */ cpu->r[11] = 0x100C0000u;
|
|
/* 02526864 */ cpu->f[11] = cpu->f[10] - cpu->f[9];
|
|
/* 02526868 */ _t37 = cpu->r[11] + 0x000029F4u;
|
|
/* 02526868 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 0252686C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[0]);
|
|
/* 02526870 */ _t38 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02526870 */ _t39 = _t38 & 0x00000001u;
|
|
/* 02526870 */ if (_t39) goto L_025268A4; else goto L_02526874;
|
|
L_02526874: ; // 0x2526874
|
|
/* 02526874 */ goto L_025268C4;
|
|
L_02526878: ; // 0x2526878
|
|
/* 02526878 */ cpu->r[12] = 0x100C0000u;
|
|
/* 0252687C */ _t40 = cpu->r[12] + 0x0000286Cu;
|
|
/* 0252687C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 02526880 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[9]);
|
|
/* 02526884 */ _t41 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02526884 */ _t42 = _t41 & 0x00000001u;
|
|
/* 02526884 */ if (_t42) goto L_02526888; else goto L_0252688C;
|
|
L_02526888: ; // 0x2526888
|
|
/* 02526888 */ cpu->f[0] = cpu->f[9];
|
|
L_0252688C: ; // 0x252688c
|
|
/* 0252688C */ _t43 = cpu->r[31] + 0x00000200u;
|
|
/* 0252688C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t43);
|
|
/* 02526890 */ cpu->r[11] = 0x100C0000u;
|
|
/* 02526894 */ cpu->f[11] = cpu->f[0] - cpu->f[9];
|
|
/* 02526898 */ _t44 = cpu->r[11] + 0x000029F4u;
|
|
/* 02526898 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 0252689C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[0]);
|
|
/* 025268A0 */ _t45 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 025268A0 */ _t46 = _t45 & 0x00000001u;
|
|
/* 025268A0 */ if (_t46) goto L_025268A4; else goto L_025268C4;
|
|
L_025268A4: ; // 0x25268a4
|
|
/* 025268A4 */ cpu->r[9] = 0x100C0000u;
|
|
/* 025268A8 */ _t47 = cpu->r[9] + 0x000029FCu;
|
|
/* 025268A8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 025268AC */ cpu->f[9] = fma(cpu->f[9], cpu->f[13], cpu->f[0]);
|
|
/* 025268B0 */ _t48 = cpu->r[31] + 0x0000007Cu;
|
|
/* 025268B0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 025268B4 */ cpu->f[10] = cpu->f[10] + cpu->f[9];
|
|
/* 025268B8 */ _t49 = cpu->r[31] + 0x00000200u;
|
|
/* 025268B8 */ rbrew_write_f32(cpu->mem, _t49, cpu->f[9]);
|
|
/* 025268BC */ _t50 = cpu->r[31] + 0x0000007Cu;
|
|
/* 025268BC */ rbrew_write_f32(cpu->mem, _t50, cpu->f[10]);
|
|
/* 025268C0 */ goto L_025268F4;
|
|
L_025268C4: ; // 0x25268c4
|
|
/* 025268C4 */ cpu->r[10] = 0x100C0000u;
|
|
/* 025268C8 */ _t51 = cpu->r[10] + 0x000029F8u;
|
|
/* 025268C8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t51);
|
|
/* 025268CC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[12]);
|
|
/* 025268D0 */ _t52 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 025268D0 */ _t53 = _t52 & 0x00000001u;
|
|
/* 025268D0 */ if (_t53) goto L_025268D4; else goto L_025268D8;
|
|
L_025268D4: ; // 0x25268d4
|
|
/* 025268D4 */ cpu->f[11] = cpu->f[12];
|
|
L_025268D8: ; // 0x25268d8
|
|
/* 025268D8 */ cpu->r[9] = 0x100C0000u;
|
|
/* 025268DC */ _t54 = cpu->r[9] + 0x000029FCu;
|
|
/* 025268DC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 025268E0 */ cpu->f[9] = fma(cpu->f[9], cpu->f[13], cpu->f[11]);
|
|
/* 025268E4 */ _t55 = cpu->r[31] + 0x0000007Cu;
|
|
/* 025268E4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t55);
|
|
/* 025268E8 */ cpu->f[10] = cpu->f[10] + cpu->f[9];
|
|
/* 025268EC */ _t56 = cpu->r[31] + 0x00000200u;
|
|
/* 025268EC */ rbrew_write_f32(cpu->mem, _t56, cpu->f[9]);
|
|
/* 025268F0 */ _t57 = cpu->r[31] + 0x0000007Cu;
|
|
/* 025268F0 */ rbrew_write_f32(cpu->mem, _t57, cpu->f[10]);
|
|
L_025268F4: ; // 0x25268f4
|
|
/* 025268F4 */ _t58 = cpu->r[1] + 0x00000014u;
|
|
/* 025268F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t58);
|
|
/* 025268F8 */ _t59 = cpu->r[1] + 0x00000008u;
|
|
/* 025268F8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t59);
|
|
/* 025268FC */ cpu->lr = cpu->r[0];
|
|
/* 02526900 */ _t60 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02526900 */ cpu->r[31] = rbrew_read32(cpu->mem, _t60);
|
|
/* 02526904 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02526908 */ return;
|
|
}
|
|
|
|
// fn_0252676C @ 0x252676c
|
|
void Gambit_fn_0252676C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60;
|
|
|
|
L_0252676C: ; // 0x252676c
|
|
/* 0252676C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0252676C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252676C */ cpu->r[1] = _t0;
|
|
/* 02526770 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02526770 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02526774 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02526774 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02526778 */ cpu->r[31] = cpu->r[3];
|
|
/* 0252677C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0252677C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02526780 */ _t4 = cpu->r[31] + 0x000002C9u;
|
|
/* 02526780 */ cpu->r[0] = rbrew_read8(cpu->mem, _t4);
|
|
/* 02526784 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02526788 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02526788 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02526788 */ if (_t6) goto L_0252680C; else goto L_0252678C;
|
|
L_0252678C: ; // 0x252678c
|
|
/* 0252678C */ cpu->r[12] = 0x101C0000u;
|
|
/* 02526790 */ _t7 = cpu->r[12] + 0x00006000u;
|
|
/* 02526790 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02526794 */ _t8 = cpu->r[12] + 0x00000268u;
|
|
/* 02526794 */ cpu->r[30] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02526798 */ cpu->r[3] = cpu->r[30];
|
|
/* 0252679C */ Gambit_fn_0261F774(cpu);
|
|
/* 025267A0 */ cpu->r[4] = cpu->r[3];
|
|
/* 025267A4 */ cpu->r[3] = cpu->r[30];
|
|
/* 025267A8 */ Gambit_fn_0261F55C(cpu);
|
|
/* 025267AC */ _t9 = cpu->r[31] + 0x000002B8u;
|
|
/* 025267AC */ cpu->r[9] = rbrew_read32(cpu->mem, _t9);
|
|
/* 025267B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 025267B4 */ _t10 = cpu->r[3] + 0x00000248u;
|
|
/* 025267B4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 025267B8 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025267B8 */ _t12 = _t11 & 0x00000001u;
|
|
/* 025267B8 */ if (_t12) goto L_025267E4; else goto L_025267BC;
|
|
L_025267BC: ; // 0x25267bc
|
|
/* 025267BC */ cpu->r[10] = 0x100C0000u;
|
|
/* 025267C0 */ _t13 = cpu->r[10] + 0x000029E8u;
|
|
/* 025267C0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 025267C4 */ cpu->f[11] = cpu->f[13] + cpu->f[0];
|
|
/* 025267C8 */ _t14 = cpu->r[31] + 0x0000007Cu;
|
|
/* 025267C8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 025267CC */ cpu->r[8] = 0x100C0000u;
|
|
/* 025267D0 */ cpu->f[0] = cpu->f[11] - cpu->f[13];
|
|
/* 025267D4 */ _t15 = cpu->r[8] + 0x000029F0u;
|
|
/* 025267D4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 025267D8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[10]);
|
|
/* 025267DC */ _t16 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 025267DC */ _t17 = _t16 & 0x00000001u;
|
|
/* 025267DC */ if (_t17) goto L_0252685C; else goto L_025267E0;
|
|
L_025267E0: ; // 0x25267e0
|
|
/* 025267E0 */ goto L_02526878;
|
|
L_025267E4: ; // 0x25267e4
|
|
/* 025267E4 */ cpu->r[8] = 0x100C0000u;
|
|
/* 025267E8 */ _t18 = cpu->r[8] + 0x000029ECu;
|
|
/* 025267E8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 025267EC */ cpu->f[11] = cpu->f[13] + cpu->f[0];
|
|
/* 025267F0 */ _t19 = cpu->r[31] + 0x0000007Cu;
|
|
/* 025267F0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 025267F4 */ cpu->r[8] = 0x100C0000u;
|
|
/* 025267F8 */ cpu->f[0] = cpu->f[11] - cpu->f[13];
|
|
/* 025267FC */ _t20 = cpu->r[8] + 0x000029F0u;
|
|
/* 025267FC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 02526800 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[10]);
|
|
/* 02526804 */ _t21 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02526804 */ _t22 = _t21 & 0x00000001u;
|
|
/* 02526804 */ if (_t22) goto L_0252685C; else goto L_02526808;
|
|
L_02526808: ; // 0x2526808
|
|
/* 02526808 */ goto L_02526878;
|
|
L_0252680C: ; // 0x252680c
|
|
/* 0252680C */ _t23 = cpu->r[31] + 0x000002B8u;
|
|
/* 0252680C */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02526810 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02526814 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02526814 */ _t25 = _t24 & 0x00000001u;
|
|
/* 02526814 */ if (_t25) goto L_0252683C; else goto L_02526818;
|
|
L_02526818: ; // 0x2526818
|
|
/* 02526818 */ cpu->r[12] = 0x100C0000u;
|
|
/* 0252681C */ _t26 = cpu->r[31] + 0x0000007Cu;
|
|
/* 0252681C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 02526820 */ _t27 = cpu->r[12] + 0x000029E8u;
|
|
/* 02526820 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 02526824 */ cpu->r[8] = 0x100C0000u;
|
|
/* 02526828 */ cpu->f[0] = cpu->f[11] - cpu->f[13];
|
|
/* 0252682C */ _t28 = cpu->r[8] + 0x000029F0u;
|
|
/* 0252682C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 02526830 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[10]);
|
|
/* 02526834 */ _t29 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02526834 */ _t30 = _t29 & 0x00000001u;
|
|
/* 02526834 */ if (_t30) goto L_0252685C; else goto L_02526838;
|
|
L_02526838: ; // 0x2526838
|
|
/* 02526838 */ goto L_02526878;
|
|
L_0252683C: ; // 0x252683c
|
|
/* 0252683C */ cpu->r[10] = 0x100C0000u;
|
|
/* 02526840 */ _t31 = cpu->r[31] + 0x0000007Cu;
|
|
/* 02526840 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 02526844 */ _t32 = cpu->r[10] + 0x000029ECu;
|
|
/* 02526844 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 02526848 */ cpu->r[8] = 0x100C0000u;
|
|
/* 0252684C */ cpu->f[0] = cpu->f[11] - cpu->f[13];
|
|
/* 02526850 */ _t33 = cpu->r[8] + 0x000029F0u;
|
|
/* 02526850 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 02526854 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[10]);
|
|
/* 02526858 */ _t34 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02526858 */ _t35 = _t34 & 0x00000001u;
|
|
/* 02526858 */ if (_t35) goto L_0252685C; else goto L_02526878;
|
|
L_0252685C: ; // 0x252685c
|
|
/* 0252685C */ _t36 = cpu->r[31] + 0x00000200u;
|
|
/* 0252685C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 02526860 */ cpu->r[11] = 0x100C0000u;
|
|
/* 02526864 */ cpu->f[11] = cpu->f[10] - cpu->f[9];
|
|
/* 02526868 */ _t37 = cpu->r[11] + 0x000029F4u;
|
|
/* 02526868 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 0252686C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[0]);
|
|
/* 02526870 */ _t38 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02526870 */ _t39 = _t38 & 0x00000001u;
|
|
/* 02526870 */ if (_t39) goto L_025268A4; else goto L_02526874;
|
|
L_02526874: ; // 0x2526874
|
|
/* 02526874 */ goto L_025268C4;
|
|
L_02526878: ; // 0x2526878
|
|
/* 02526878 */ cpu->r[12] = 0x100C0000u;
|
|
/* 0252687C */ _t40 = cpu->r[12] + 0x0000286Cu;
|
|
/* 0252687C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 02526880 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[9]);
|
|
/* 02526884 */ _t41 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02526884 */ _t42 = _t41 & 0x00000001u;
|
|
/* 02526884 */ if (_t42) goto L_02526888; else goto L_0252688C;
|
|
L_02526888: ; // 0x2526888
|
|
/* 02526888 */ cpu->f[0] = cpu->f[9];
|
|
L_0252688C: ; // 0x252688c
|
|
/* 0252688C */ _t43 = cpu->r[31] + 0x00000200u;
|
|
/* 0252688C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t43);
|
|
/* 02526890 */ cpu->r[11] = 0x100C0000u;
|
|
/* 02526894 */ cpu->f[11] = cpu->f[0] - cpu->f[9];
|
|
/* 02526898 */ _t44 = cpu->r[11] + 0x000029F4u;
|
|
/* 02526898 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 0252689C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[0]);
|
|
/* 025268A0 */ _t45 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 025268A0 */ _t46 = _t45 & 0x00000001u;
|
|
/* 025268A0 */ if (_t46) goto L_025268A4; else goto L_025268C4;
|
|
L_025268A4: ; // 0x25268a4
|
|
/* 025268A4 */ cpu->r[9] = 0x100C0000u;
|
|
/* 025268A8 */ _t47 = cpu->r[9] + 0x000029FCu;
|
|
/* 025268A8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 025268AC */ cpu->f[9] = fma(cpu->f[9], cpu->f[13], cpu->f[0]);
|
|
/* 025268B0 */ _t48 = cpu->r[31] + 0x0000007Cu;
|
|
/* 025268B0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 025268B4 */ cpu->f[10] = cpu->f[10] + cpu->f[9];
|
|
/* 025268B8 */ _t49 = cpu->r[31] + 0x00000200u;
|
|
/* 025268B8 */ rbrew_write_f32(cpu->mem, _t49, cpu->f[9]);
|
|
/* 025268BC */ _t50 = cpu->r[31] + 0x0000007Cu;
|
|
/* 025268BC */ rbrew_write_f32(cpu->mem, _t50, cpu->f[10]);
|
|
/* 025268C0 */ goto L_025268F4;
|
|
L_025268C4: ; // 0x25268c4
|
|
/* 025268C4 */ cpu->r[10] = 0x100C0000u;
|
|
/* 025268C8 */ _t51 = cpu->r[10] + 0x000029F8u;
|
|
/* 025268C8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t51);
|
|
/* 025268CC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[12]);
|
|
/* 025268D0 */ _t52 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 025268D0 */ _t53 = _t52 & 0x00000001u;
|
|
/* 025268D0 */ if (_t53) goto L_025268D4; else goto L_025268D8;
|
|
L_025268D4: ; // 0x25268d4
|
|
/* 025268D4 */ cpu->f[11] = cpu->f[12];
|
|
L_025268D8: ; // 0x25268d8
|
|
/* 025268D8 */ cpu->r[9] = 0x100C0000u;
|
|
/* 025268DC */ _t54 = cpu->r[9] + 0x000029FCu;
|
|
/* 025268DC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 025268E0 */ cpu->f[9] = fma(cpu->f[9], cpu->f[13], cpu->f[11]);
|
|
/* 025268E4 */ _t55 = cpu->r[31] + 0x0000007Cu;
|
|
/* 025268E4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t55);
|
|
/* 025268E8 */ cpu->f[10] = cpu->f[10] + cpu->f[9];
|
|
/* 025268EC */ _t56 = cpu->r[31] + 0x00000200u;
|
|
/* 025268EC */ rbrew_write_f32(cpu->mem, _t56, cpu->f[9]);
|
|
/* 025268F0 */ _t57 = cpu->r[31] + 0x0000007Cu;
|
|
/* 025268F0 */ rbrew_write_f32(cpu->mem, _t57, cpu->f[10]);
|
|
L_025268F4: ; // 0x25268f4
|
|
/* 025268F4 */ _t58 = cpu->r[1] + 0x00000014u;
|
|
/* 025268F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t58);
|
|
/* 025268F8 */ _t59 = cpu->r[1] + 0x00000008u;
|
|
/* 025268F8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t59);
|
|
/* 025268FC */ cpu->lr = cpu->r[0];
|
|
/* 02526900 */ _t60 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02526900 */ cpu->r[31] = rbrew_read32(cpu->mem, _t60);
|
|
/* 02526904 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02526908 */ return;
|
|
}
|
|
|
|
// fn_0252690C @ 0x252690c
|
|
void Gambit_fn_0252690C(CPUState* 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_0252690C: ; // 0x252690c
|
|
/* 0252690C */ cpu->r[0] = cpu->lr;
|
|
/* 02526910 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02526910 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02526910 */ cpu->r[1] = _t0;
|
|
/* 02526914 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02526914 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02526918 */ cpu->r[12] = 0x00000000u;
|
|
/* 0252691C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0252691C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02526920 */ _t3 = cpu->r[3] + 0x000002A8u;
|
|
/* 02526920 */ cpu->r[31] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02526924 */ _t4 = cpu->r[3] + 0x00000228u;
|
|
/* 02526924 */ rbrew_write32(cpu->mem, _t4, cpu->r[12]);
|
|
/* 02526928 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0252692C */ _t5 = cpu->r[3] + 0x0000022Cu;
|
|
/* 0252692C */ rbrew_write32(cpu->mem, _t5, cpu->r[12]);
|
|
/* 02526930 */ _t6 = cpu->r[3] + 0x000002B4u;
|
|
/* 02526930 */ rbrew_write8(cpu->mem, _t6, (uint8_t)cpu->r[12]);
|
|
/* 02526934 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02526934 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02526934 */ if (_t8) goto L_02526970; else goto L_02526938;
|
|
L_02526938: ; // 0x2526938
|
|
/* 02526938 */ _t9 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02526938 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0252693C */ _t10 = cpu->r[3] + 0x000002ACu;
|
|
/* 0252693C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02526940 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[0]);
|
|
/* 02526944 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02526944 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02526944 */ if (_t12) goto L_02526948; else goto L_02526970;
|
|
L_02526948: ; // 0x2526948
|
|
/* 02526948 */ _t13 = cpu->r[31] + 0x00000028u;
|
|
/* 02526948 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0252694C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02526950 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02526950 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02526950 */ if (_t15) goto L_02526968; else goto L_02526954;
|
|
L_02526954: ; // 0x2526954
|
|
/* 02526954 */ _t16 = cpu->r[3] + 0x00000050u;
|
|
/* 02526954 */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02526958 */ _t17 = cpu->r[11] + 0x00000024u;
|
|
/* 02526958 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0252695C */ cpu->ctr = cpu->r[0];
|
|
/* 02526960 */ cpu->r[4] = 0xFFFFFFFFu;
|
|
/* 02526964 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02526968: ; // 0x2526968
|
|
/* 02526968 */ cpu->r[12] = 0x00000001u;
|
|
/* 0252696C */ _t18 = cpu->r[31] + 0x0000004Cu;
|
|
/* 0252696C */ rbrew_write8(cpu->mem, _t18, (uint8_t)cpu->r[12]);
|
|
L_02526970: ; // 0x2526970
|
|
/* 02526970 */ _t19 = cpu->r[1] + 0x00000014u;
|
|
/* 02526970 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02526974 */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02526974 */ cpu->r[31] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02526978 */ cpu->lr = cpu->r[0];
|
|
/* 0252697C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02526980 */ return;
|
|
}
|
|
|
|
// fn_02526910 @ 0x2526910
|
|
void Gambit_fn_02526910(CPUState* 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_02526910: ; // 0x2526910
|
|
/* 02526910 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02526910 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02526910 */ cpu->r[1] = _t0;
|
|
/* 02526914 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02526914 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02526918 */ cpu->r[12] = 0x00000000u;
|
|
/* 0252691C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0252691C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02526920 */ _t3 = cpu->r[3] + 0x000002A8u;
|
|
/* 02526920 */ cpu->r[31] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02526924 */ _t4 = cpu->r[3] + 0x00000228u;
|
|
/* 02526924 */ rbrew_write32(cpu->mem, _t4, cpu->r[12]);
|
|
/* 02526928 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0252692C */ _t5 = cpu->r[3] + 0x0000022Cu;
|
|
/* 0252692C */ rbrew_write32(cpu->mem, _t5, cpu->r[12]);
|
|
/* 02526930 */ _t6 = cpu->r[3] + 0x000002B4u;
|
|
/* 02526930 */ rbrew_write8(cpu->mem, _t6, (uint8_t)cpu->r[12]);
|
|
/* 02526934 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02526934 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02526934 */ if (_t8) goto L_02526970; else goto L_02526938;
|
|
L_02526938: ; // 0x2526938
|
|
/* 02526938 */ _t9 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02526938 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0252693C */ _t10 = cpu->r[3] + 0x000002ACu;
|
|
/* 0252693C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02526940 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[0]);
|
|
/* 02526944 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02526944 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02526944 */ if (_t12) goto L_02526948; else goto L_02526970;
|
|
L_02526948: ; // 0x2526948
|
|
/* 02526948 */ _t13 = cpu->r[31] + 0x00000028u;
|
|
/* 02526948 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0252694C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02526950 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02526950 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02526950 */ if (_t15) goto L_02526968; else goto L_02526954;
|
|
L_02526954: ; // 0x2526954
|
|
/* 02526954 */ _t16 = cpu->r[3] + 0x00000050u;
|
|
/* 02526954 */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02526958 */ _t17 = cpu->r[11] + 0x00000024u;
|
|
/* 02526958 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0252695C */ cpu->ctr = cpu->r[0];
|
|
/* 02526960 */ cpu->r[4] = 0xFFFFFFFFu;
|
|
/* 02526964 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02526968: ; // 0x2526968
|
|
/* 02526968 */ cpu->r[12] = 0x00000001u;
|
|
/* 0252696C */ _t18 = cpu->r[31] + 0x0000004Cu;
|
|
/* 0252696C */ rbrew_write8(cpu->mem, _t18, (uint8_t)cpu->r[12]);
|
|
L_02526970: ; // 0x2526970
|
|
/* 02526970 */ _t19 = cpu->r[1] + 0x00000014u;
|
|
/* 02526970 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02526974 */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02526974 */ cpu->r[31] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02526978 */ cpu->lr = cpu->r[0];
|
|
/* 0252697C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02526980 */ return;
|
|
}
|
|
|
|
// fn_02526984 @ 0x2526984
|
|
void Gambit_fn_02526984(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _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, _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;
|
|
double _ft68, _ft69;
|
|
|
|
L_02526984: ; // 0x2526984
|
|
/* 02526984 */ cpu->r[0] = cpu->lr;
|
|
/* 02526988 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 02526988 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02526988 */ cpu->r[1] = _t0;
|
|
/* 0252698C */ _t1 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0252698C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02526990 */ cpu->r[31] = cpu->r[3];
|
|
/* 02526994 */ _t2 = cpu->r[1] + 0x00000044u;
|
|
/* 02526994 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02526998 */ _t3 = cpu->r[31] + 0x0000022Cu;
|
|
/* 02526998 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0252699C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 025269A0 */ _t4 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 025269A0 */ _t5 = _t4 & 0x00000001u;
|
|
/* 025269A0 */ if (_t5) goto L_025269A4; else goto L_02526A54;
|
|
L_025269A4: ; // 0x25269a4
|
|
/* 025269A4 */ _t6 = cpu->r[31] + 0x00000228u;
|
|
/* 025269A4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t6);
|
|
/* 025269A8 */ _t7 = cpu->r[31] + 0x00000224u;
|
|
/* 025269A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 025269AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], cpu->r[0]);
|
|
/* 025269B0 */ _t8 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 025269B0 */ _t9 = _t8 & 0x00000001u;
|
|
/* 025269B0 */ if (_t9) goto L_025269B8; else goto L_025269B4;
|
|
L_025269B4: ; // 0x25269b4
|
|
/* 025269B4 */ cpu->r[10] = cpu->r[10] - cpu->r[0];
|
|
L_025269B8: ; // 0x25269b8
|
|
/* 025269B8 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[10] * (int32_t)0x0000000Cu);
|
|
/* 025269BC */ _t10 = cpu->r[31] + 0x00000220u;
|
|
/* 025269BC */ cpu->r[10] = rbrew_read32(cpu->mem, _t10);
|
|
/* 025269C0 */ /* nop */
|
|
/* 025269C4 */ cpu->r[9] = cpu->r[10] + cpu->r[0];
|
|
/* 025269C8 */ _t11 = cpu->r[9] + 0x00000000u;
|
|
/* 025269C8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 025269CC */ _t12 = cpu->r[31] + 0x0000007Cu;
|
|
/* 025269CC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 025269D0 */ _t13 = cpu->r[1] + 0x00000014u;
|
|
/* 025269D0 */ rbrew_write32(cpu->mem, _t13, cpu->r[10]);
|
|
/* 025269D4 */ _t14 = cpu->r[9] + 0x00000004u;
|
|
/* 025269D4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t14);
|
|
/* 025269D8 */ _t15 = cpu->r[31] + 0x00000080u;
|
|
/* 025269D8 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 025269DC */ _t16 = cpu->r[1] + 0x00000018u;
|
|
/* 025269DC */ rbrew_write32(cpu->mem, _t16, cpu->r[12]);
|
|
/* 025269E0 */ _t17 = cpu->r[9] + 0x00000008u;
|
|
/* 025269E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 025269E4 */ _t18 = cpu->r[1] + 0x00000018u;
|
|
/* 025269E4 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[11]);
|
|
/* 025269E8 */ /* nop */
|
|
/* 025269EC */ _t19 = cpu->r[1] + 0x0000001Cu;
|
|
/* 025269EC */ rbrew_write32(cpu->mem, _t19, cpu->r[0]);
|
|
/* 025269F0 */ _t20 = cpu->r[1] + 0x0000001Cu;
|
|
/* 025269F0 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 025269F4 */ /* nop */
|
|
/* 025269F8 */ /* nop */
|
|
/* 025269FC */ _t21 = cpu->r[1] + 0x00000024u;
|
|
/* 025269FC */ cpu->r[11] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02526A00 */ _t22 = cpu->r[1] + 0x00000020u;
|
|
/* 02526A00 */ cpu->r[9] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02526A04 */ _t23 = cpu->r[1] + 0x00000030u;
|
|
/* 02526A04 */ rbrew_write32(cpu->mem, _t23, cpu->r[11]);
|
|
/* 02526A08 */ _t24 = cpu->r[1] + 0x00000030u;
|
|
/* 02526A08 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 02526A0C */ cpu->f[0] = cpu->f[7] - cpu->f[8];
|
|
/* 02526A10 */ _t25 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02526A10 */ rbrew_write32(cpu->mem, _t25, cpu->r[9]);
|
|
/* 02526A14 */ _t26 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02526A14 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 02526A18 */ cpu->f[11] = cpu->f[9] * cpu->f[9];
|
|
/* 02526A1C */ _t27 = cpu->r[1] + 0x00000028u;
|
|
/* 02526A1C */ rbrew_write_f32(cpu->mem, _t27, cpu->f[0]);
|
|
/* 02526A20 */ _t28 = cpu->r[1] + 0x00000028u;
|
|
/* 02526A20 */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02526A24 */ cpu->r[12] = 0x100C0000u;
|
|
/* 02526A28 */ cpu->f[13] = fma(cpu->f[12], cpu->f[12], cpu->f[11]);
|
|
/* 02526A2C */ _t29 = cpu->r[1] + 0x00000034u;
|
|
/* 02526A2C */ rbrew_write32(cpu->mem, _t29, cpu->r[0]);
|
|
/* 02526A30 */ _t30 = cpu->r[1] + 0x00000034u;
|
|
/* 02526A30 */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 02526A34 */ _t31 = cpu->r[12] + 0x00002870u;
|
|
/* 02526A34 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 02526A38 */ cpu->f[8] = fma(cpu->f[5], cpu->f[5], cpu->f[13]);
|
|
/* 02526A3C */ _t32 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02526A3C */ rbrew_write_f32(cpu->mem, _t32, cpu->f[9]);
|
|
/* 02526A40 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[7]);
|
|
/* 02526A44 */ cpu->f[10] = cpu->f[5];
|
|
/* 02526A48 */ _t33 = cpu->r[1] + 0x00000008u;
|
|
/* 02526A48 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[12]);
|
|
/* 02526A4C */ _t34 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02526A4C */ _t35 = _t34 & 0x00000001u;
|
|
/* 02526A4C */ if (_t35) goto L_02526A50; else goto L_02526AE4;
|
|
L_02526A50: ; // 0x2526a50
|
|
/* 02526A50 */ goto L_02526AF8;
|
|
L_02526A54: ; // 0x2526a54
|
|
/* 02526A54 */ _t36 = cpu->r[31] + 0x00000220u;
|
|
/* 02526A54 */ cpu->r[9] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02526A58 */ /* nop */
|
|
/* 02526A5C */ _t37 = cpu->r[9] + 0x00000000u;
|
|
/* 02526A5C */ cpu->r[10] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02526A60 */ _t38 = cpu->r[31] + 0x0000007Cu;
|
|
/* 02526A60 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 02526A64 */ _t39 = cpu->r[1] + 0x00000014u;
|
|
/* 02526A64 */ rbrew_write32(cpu->mem, _t39, cpu->r[10]);
|
|
/* 02526A68 */ _t40 = cpu->r[9] + 0x00000004u;
|
|
/* 02526A68 */ cpu->r[12] = rbrew_read32(cpu->mem, _t40);
|
|
/* 02526A6C */ _t41 = cpu->r[31] + 0x00000080u;
|
|
/* 02526A6C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 02526A70 */ _t42 = cpu->r[1] + 0x00000018u;
|
|
/* 02526A70 */ rbrew_write32(cpu->mem, _t42, cpu->r[12]);
|
|
/* 02526A74 */ _t43 = cpu->r[9] + 0x00000008u;
|
|
/* 02526A74 */ cpu->r[0] = rbrew_read32(cpu->mem, _t43);
|
|
/* 02526A78 */ _t44 = cpu->r[1] + 0x00000018u;
|
|
/* 02526A78 */ rbrew_write_f32(cpu->mem, _t44, cpu->f[11]);
|
|
/* 02526A7C */ /* nop */
|
|
/* 02526A80 */ _t45 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02526A80 */ rbrew_write32(cpu->mem, _t45, cpu->r[0]);
|
|
/* 02526A84 */ _t46 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02526A84 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t46);
|
|
/* 02526A88 */ /* nop */
|
|
/* 02526A8C */ /* nop */
|
|
/* 02526A90 */ _t47 = cpu->r[1] + 0x00000024u;
|
|
/* 02526A90 */ cpu->r[11] = rbrew_read32(cpu->mem, _t47);
|
|
/* 02526A94 */ _t48 = cpu->r[1] + 0x00000020u;
|
|
/* 02526A94 */ cpu->r[9] = rbrew_read32(cpu->mem, _t48);
|
|
/* 02526A98 */ _t49 = cpu->r[1] + 0x00000030u;
|
|
/* 02526A98 */ rbrew_write32(cpu->mem, _t49, cpu->r[11]);
|
|
/* 02526A9C */ _t50 = cpu->r[1] + 0x00000030u;
|
|
/* 02526A9C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t50);
|
|
/* 02526AA0 */ cpu->f[0] = cpu->f[7] - cpu->f[8];
|
|
/* 02526AA4 */ _t51 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02526AA4 */ rbrew_write32(cpu->mem, _t51, cpu->r[9]);
|
|
/* 02526AA8 */ _t52 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02526AA8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 02526AAC */ cpu->f[11] = cpu->f[9] * cpu->f[9];
|
|
/* 02526AB0 */ _t53 = cpu->r[1] + 0x00000028u;
|
|
/* 02526AB0 */ rbrew_write_f32(cpu->mem, _t53, cpu->f[0]);
|
|
/* 02526AB4 */ _t54 = cpu->r[1] + 0x00000028u;
|
|
/* 02526AB4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t54);
|
|
/* 02526AB8 */ cpu->f[13] = fma(cpu->f[12], cpu->f[12], cpu->f[11]);
|
|
/* 02526ABC */ _t55 = cpu->r[1] + 0x00000034u;
|
|
/* 02526ABC */ rbrew_write32(cpu->mem, _t55, cpu->r[0]);
|
|
/* 02526AC0 */ _t56 = cpu->r[1] + 0x00000034u;
|
|
/* 02526AC0 */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 02526AC4 */ cpu->r[12] = 0x100C0000u;
|
|
/* 02526AC8 */ cpu->f[8] = fma(cpu->f[5], cpu->f[5], cpu->f[13]);
|
|
/* 02526ACC */ _t57 = cpu->r[12] + 0x00002870u;
|
|
/* 02526ACC */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t57);
|
|
/* 02526AD0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[7]);
|
|
/* 02526AD4 */ _t58 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02526AD4 */ rbrew_write_f32(cpu->mem, _t58, cpu->f[9]);
|
|
/* 02526AD8 */ cpu->f[10] = cpu->f[5];
|
|
/* 02526ADC */ _t59 = cpu->r[1] + 0x00000008u;
|
|
/* 02526ADC */ rbrew_write_f32(cpu->mem, _t59, cpu->f[12]);
|
|
/* 02526AE0 */ _t60 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02526AE0 */ _t61 = _t60 & 0x00000001u;
|
|
/* 02526AE0 */ if (_t61) goto L_02526AF8; else goto L_02526AE4;
|
|
L_02526AE4: ; // 0x2526ae4
|
|
/* 02526AE4 */ _t62 = cpu->r[31] + 0x000002B8u;
|
|
/* 02526AE4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t62);
|
|
/* 02526AE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02526AEC */ /* nop */
|
|
/* 02526AF0 */ _t63 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02526AF0 */ _t64 = _t63 & 0x00000001u;
|
|
/* 02526AF0 */ if (_t64) goto L_02526B94; else goto L_02526AF4;
|
|
L_02526AF4: ; // 0x2526af4
|
|
/* 02526AF4 */ goto L_02526B44;
|
|
L_02526AF8: ; // 0x2526af8
|
|
/* 02526AF8 */ cpu->r[9] = 0x100C0000u;
|
|
/* 02526AFC */ cpu->r[12] = 0x100C0000u;
|
|
/* 02526B00 */ _t65 = cpu->r[9] + 0x0000287Cu;
|
|
/* 02526B00 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t65);
|
|
/* 02526B04 */ _t66 = cpu->r[12] + 0x00002878u;
|
|
/* 02526B04 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t66);
|
|
/* 02526B08 */ _t67 = cpu->r[1] + 0x00000010u;
|
|
/* 02526B08 */ rbrew_write_f32(cpu->mem, _t67, cpu->f[10]);
|
|
/* 02526B0C */ _ft68 = sqrt(cpu->f[8]);
|
|
/* 02526B0C */ _ft69 = (double)(int32_t)0x00000001u;
|
|
/* 02526B0C */ cpu->f[0] = _ft69 / _ft68;
|
|
/* 02526B10 */ cpu->f[9] = cpu->f[0] * cpu->f[0];
|
|
/* 02526B14 */ cpu->f[11] = cpu->f[0] * cpu->f[12];
|
|
/* 02526B18 */ cpu->f[9] = -fma(cpu->f[9], cpu->f[8], -(cpu->f[13]));
|
|
/* 02526B1C */ cpu->f[0] = cpu->f[9] * cpu->f[11];
|
|
/* 02526B20 */ _t70 = cpu->r[1] + 0x00000010u;
|
|
/* 02526B20 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t70);
|
|
/* 02526B24 */ cpu->f[8] = cpu->f[8] * cpu->f[0];
|
|
/* 02526B28 */ _t71 = cpu->r[31] + 0x000002B8u;
|
|
/* 02526B28 */ cpu->r[0] = rbrew_read32(cpu->mem, _t71);
|
|
/* 02526B2C */ /* nop */
|
|
/* 02526B30 */ cpu->f[5] = cpu->f[9] * cpu->f[0];
|
|
/* 02526B34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02526B38 */ /* nop */
|
|
/* 02526B3C */ /* nop */
|
|
/* 02526B40 */ _t72 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02526B40 */ _t73 = _t72 & 0x00000001u;
|
|
/* 02526B40 */ if (_t73) goto L_02526B94; else goto L_02526B44;
|
|
L_02526B44: ; // 0x2526b44
|
|
/* 02526B44 */ cpu->r[11] = 0x100C0000u;
|
|
/* 02526B48 */ _t74 = cpu->r[11] + 0x00002868u;
|
|
/* 02526B48 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t74);
|
|
/* 02526B4C */ cpu->f[10] = cpu->f[8] - cpu->f[0];
|
|
/* 02526B50 */ /* nop */
|
|
/* 02526B54 */ cpu->f[5] = cpu->f[5] * cpu->f[13];
|
|
/* 02526B58 */ _t75 = cpu->r[31] + 0x00000080u;
|
|
/* 02526B58 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t75);
|
|
/* 02526B5C */ /* nop */
|
|
/* 02526B60 */ _t76 = cpu->r[1] + 0x00000010u;
|
|
/* 02526B60 */ rbrew_write_f32(cpu->mem, _t76, cpu->f[5]);
|
|
/* 02526B64 */ cpu->f[0] = cpu->f[0] + cpu->f[5];
|
|
/* 02526B68 */ /* nop */
|
|
/* 02526B6C */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 02526B70 */ /* nop */
|
|
/* 02526B74 */ cpu->r[3] = cpu->r[31] + 0x00000078u;
|
|
/* 02526B78 */ _t77 = cpu->r[31] + 0x00000080u;
|
|
/* 02526B78 */ rbrew_write_f32(cpu->mem, _t77, cpu->f[0]);
|
|
/* 02526B7C */ Gambit_fn_02C693A4(cpu);
|
|
/* 02526B80 */ cpu->r[11] = 0x100C0000u;
|
|
/* 02526B84 */ _t78 = cpu->r[11] + 0x00002A00u;
|
|
/* 02526B84 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t78);
|
|
/* 02526B88 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[1]);
|
|
/* 02526B8C */ _t79 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02526B8C */ _t80 = _t79 & 0x00000001u;
|
|
/* 02526B8C */ if (_t80) goto L_02526B90; else goto L_02526BE0;
|
|
L_02526B90: ; // 0x2526b90
|
|
/* 02526B90 */ goto L_02526C38;
|
|
L_02526B94: ; // 0x2526b94
|
|
/* 02526B94 */ cpu->r[9] = 0x100C0000u;
|
|
/* 02526B98 */ _t81 = cpu->r[9] + 0x0000286Cu;
|
|
/* 02526B98 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t81);
|
|
/* 02526B9C */ cpu->f[10] = cpu->f[8] - cpu->f[0];
|
|
/* 02526BA0 */ /* nop */
|
|
/* 02526BA4 */ cpu->f[5] = cpu->f[5] * cpu->f[13];
|
|
/* 02526BA8 */ _t82 = cpu->r[31] + 0x00000080u;
|
|
/* 02526BA8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t82);
|
|
/* 02526BAC */ /* nop */
|
|
/* 02526BB0 */ _t83 = cpu->r[1] + 0x00000010u;
|
|
/* 02526BB0 */ rbrew_write_f32(cpu->mem, _t83, cpu->f[5]);
|
|
/* 02526BB4 */ cpu->f[0] = cpu->f[0] + cpu->f[5];
|
|
/* 02526BB8 */ /* nop */
|
|
/* 02526BBC */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 02526BC0 */ /* nop */
|
|
/* 02526BC4 */ cpu->r[3] = cpu->r[31] + 0x00000078u;
|
|
/* 02526BC8 */ _t84 = cpu->r[31] + 0x00000080u;
|
|
/* 02526BC8 */ rbrew_write_f32(cpu->mem, _t84, cpu->f[0]);
|
|
/* 02526BCC */ Gambit_fn_02C693A4(cpu);
|
|
/* 02526BD0 */ cpu->r[11] = 0x100C0000u;
|
|
/* 02526BD4 */ _t85 = cpu->r[11] + 0x00002A00u;
|
|
/* 02526BD4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t85);
|
|
/* 02526BD8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[1]);
|
|
/* 02526BDC */ _t86 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02526BDC */ _t87 = _t86 & 0x00000001u;
|
|
/* 02526BDC */ if (_t87) goto L_02526C38; else goto L_02526BE0;
|
|
L_02526BE0: ; // 0x2526be0
|
|
/* 02526BE0 */ cpu->r[10] = 0x100C0000u;
|
|
/* 02526BE4 */ _t88 = cpu->r[10] + 0x00002874u;
|
|
/* 02526BE4 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t88);
|
|
/* 02526BE8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[9]);
|
|
/* 02526BEC */ _t89 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02526BEC */ _t90 = _t89 & 0x00000001u;
|
|
/* 02526BEC */ if (_t90) goto L_02526C38; else goto L_02526BF0;
|
|
L_02526BF0: ; // 0x2526bf0
|
|
/* 02526BF0 */ _t91 = cpu->r[31] + 0x0000022Cu;
|
|
/* 02526BF0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t91);
|
|
/* 02526BF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02526BF8 */ _t92 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02526BF8 */ _t93 = _t92 & 0x00000001u;
|
|
/* 02526BF8 */ if (_t93) goto L_02526C38; else goto L_02526BFC;
|
|
L_02526BFC: ; // 0x2526bfc
|
|
/* 02526BFC */ _t94 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02526BFC */ _t95 = _t94 & 0x00000001u;
|
|
/* 02526BFC */ if (_t95) goto L_02526C00; else goto L_02526C30;
|
|
L_02526C00: ; // 0x2526c00
|
|
/* 02526C00 */ _t96 = cpu->r[31] + 0x00000228u;
|
|
/* 02526C00 */ cpu->r[10] = rbrew_read32(cpu->mem, _t96);
|
|
/* 02526C04 */ _t97 = cpu->r[31] + 0x00000224u;
|
|
/* 02526C04 */ cpu->r[0] = rbrew_read32(cpu->mem, _t97);
|
|
/* 02526C08 */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 02526C0C */ _t98 = cpu->r[31] + 0x00000228u;
|
|
/* 02526C0C */ rbrew_write32(cpu->mem, _t98, cpu->r[10]);
|
|
/* 02526C10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], cpu->r[0]);
|
|
/* 02526C14 */ _t99 = cpu->r[31] + 0x0000022Cu;
|
|
/* 02526C14 */ cpu->r[12] = rbrew_read32(cpu->mem, _t99);
|
|
/* 02526C18 */ _t100 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02526C18 */ _t101 = _t100 & 0x00000001u;
|
|
/* 02526C18 */ if (_t101) goto L_02526C24; else goto L_02526C1C;
|
|
L_02526C1C: ; // 0x2526c1c
|
|
/* 02526C1C */ cpu->r[10] = 0x00000000u;
|
|
/* 02526C20 */ _t102 = cpu->r[31] + 0x00000228u;
|
|
/* 02526C20 */ rbrew_write32(cpu->mem, _t102, cpu->r[10]);
|
|
L_02526C24: ; // 0x2526c24
|
|
/* 02526C24 */ cpu->r[12] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 02526C24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02526C28 */ _t103 = cpu->r[31] + 0x0000022Cu;
|
|
/* 02526C28 */ rbrew_write32(cpu->mem, _t103, cpu->r[12]);
|
|
/* 02526C2C */ _t104 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02526C2C */ _t105 = _t104 & 0x00000001u;
|
|
/* 02526C2C */ if (_t105) goto L_02526C30; else goto L_02526C38;
|
|
L_02526C30: ; // 0x2526c30
|
|
/* 02526C30 */ cpu->r[3] = cpu->r[31];
|
|
/* 02526C34 */ Gambit_fn_0252690C(cpu);
|
|
L_02526C38: ; // 0x2526c38
|
|
/* 02526C38 */ _t106 = cpu->r[31] + 0x00000158u;
|
|
/* 02526C38 */ cpu->r[0] = rbrew_read32(cpu->mem, _t106);
|
|
/* 02526C3C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000003Cu);
|
|
/* 02526C40 */ _t107 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02526C40 */ _t108 = _t107 & 0x00000001u;
|
|
/* 02526C40 */ if (_t108) goto L_02526C4C; else goto L_02526C44;
|
|
L_02526C44: ; // 0x2526c44
|
|
/* 02526C44 */ cpu->r[3] = cpu->r[31];
|
|
/* 02526C48 */ Gambit_fn_0252690C(cpu);
|
|
L_02526C4C: ; // 0x2526c4c
|
|
/* 02526C4C */ _t109 = cpu->r[1] + 0x00000044u;
|
|
/* 02526C4C */ cpu->r[0] = rbrew_read32(cpu->mem, _t109);
|
|
/* 02526C50 */ _t110 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02526C50 */ cpu->r[31] = rbrew_read32(cpu->mem, _t110);
|
|
/* 02526C54 */ cpu->lr = cpu->r[0];
|
|
/* 02526C58 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 02526C5C */ return;
|
|
}
|
|
|
|
// fn_02526988 @ 0x2526988
|
|
void Gambit_fn_02526988(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _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, _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;
|
|
double _ft68, _ft69;
|
|
|
|
L_02526988: ; // 0x2526988
|
|
/* 02526988 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 02526988 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02526988 */ cpu->r[1] = _t0;
|
|
/* 0252698C */ _t1 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0252698C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02526990 */ cpu->r[31] = cpu->r[3];
|
|
/* 02526994 */ _t2 = cpu->r[1] + 0x00000044u;
|
|
/* 02526994 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02526998 */ _t3 = cpu->r[31] + 0x0000022Cu;
|
|
/* 02526998 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0252699C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 025269A0 */ _t4 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 025269A0 */ _t5 = _t4 & 0x00000001u;
|
|
/* 025269A0 */ if (_t5) goto L_025269A4; else goto L_02526A54;
|
|
L_025269A4: ; // 0x25269a4
|
|
/* 025269A4 */ _t6 = cpu->r[31] + 0x00000228u;
|
|
/* 025269A4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t6);
|
|
/* 025269A8 */ _t7 = cpu->r[31] + 0x00000224u;
|
|
/* 025269A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 025269AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], cpu->r[0]);
|
|
/* 025269B0 */ _t8 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 025269B0 */ _t9 = _t8 & 0x00000001u;
|
|
/* 025269B0 */ if (_t9) goto L_025269B8; else goto L_025269B4;
|
|
L_025269B4: ; // 0x25269b4
|
|
/* 025269B4 */ cpu->r[10] = cpu->r[10] - cpu->r[0];
|
|
L_025269B8: ; // 0x25269b8
|
|
/* 025269B8 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[10] * (int32_t)0x0000000Cu);
|
|
/* 025269BC */ _t10 = cpu->r[31] + 0x00000220u;
|
|
/* 025269BC */ cpu->r[10] = rbrew_read32(cpu->mem, _t10);
|
|
/* 025269C0 */ /* nop */
|
|
/* 025269C4 */ cpu->r[9] = cpu->r[10] + cpu->r[0];
|
|
/* 025269C8 */ _t11 = cpu->r[9] + 0x00000000u;
|
|
/* 025269C8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 025269CC */ _t12 = cpu->r[31] + 0x0000007Cu;
|
|
/* 025269CC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 025269D0 */ _t13 = cpu->r[1] + 0x00000014u;
|
|
/* 025269D0 */ rbrew_write32(cpu->mem, _t13, cpu->r[10]);
|
|
/* 025269D4 */ _t14 = cpu->r[9] + 0x00000004u;
|
|
/* 025269D4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t14);
|
|
/* 025269D8 */ _t15 = cpu->r[31] + 0x00000080u;
|
|
/* 025269D8 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 025269DC */ _t16 = cpu->r[1] + 0x00000018u;
|
|
/* 025269DC */ rbrew_write32(cpu->mem, _t16, cpu->r[12]);
|
|
/* 025269E0 */ _t17 = cpu->r[9] + 0x00000008u;
|
|
/* 025269E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 025269E4 */ _t18 = cpu->r[1] + 0x00000018u;
|
|
/* 025269E4 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[11]);
|
|
/* 025269E8 */ /* nop */
|
|
/* 025269EC */ _t19 = cpu->r[1] + 0x0000001Cu;
|
|
/* 025269EC */ rbrew_write32(cpu->mem, _t19, cpu->r[0]);
|
|
/* 025269F0 */ _t20 = cpu->r[1] + 0x0000001Cu;
|
|
/* 025269F0 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 025269F4 */ /* nop */
|
|
/* 025269F8 */ /* nop */
|
|
/* 025269FC */ _t21 = cpu->r[1] + 0x00000024u;
|
|
/* 025269FC */ cpu->r[11] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02526A00 */ _t22 = cpu->r[1] + 0x00000020u;
|
|
/* 02526A00 */ cpu->r[9] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02526A04 */ _t23 = cpu->r[1] + 0x00000030u;
|
|
/* 02526A04 */ rbrew_write32(cpu->mem, _t23, cpu->r[11]);
|
|
/* 02526A08 */ _t24 = cpu->r[1] + 0x00000030u;
|
|
/* 02526A08 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 02526A0C */ cpu->f[0] = cpu->f[7] - cpu->f[8];
|
|
/* 02526A10 */ _t25 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02526A10 */ rbrew_write32(cpu->mem, _t25, cpu->r[9]);
|
|
/* 02526A14 */ _t26 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02526A14 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 02526A18 */ cpu->f[11] = cpu->f[9] * cpu->f[9];
|
|
/* 02526A1C */ _t27 = cpu->r[1] + 0x00000028u;
|
|
/* 02526A1C */ rbrew_write_f32(cpu->mem, _t27, cpu->f[0]);
|
|
/* 02526A20 */ _t28 = cpu->r[1] + 0x00000028u;
|
|
/* 02526A20 */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02526A24 */ cpu->r[12] = 0x100C0000u;
|
|
/* 02526A28 */ cpu->f[13] = fma(cpu->f[12], cpu->f[12], cpu->f[11]);
|
|
/* 02526A2C */ _t29 = cpu->r[1] + 0x00000034u;
|
|
/* 02526A2C */ rbrew_write32(cpu->mem, _t29, cpu->r[0]);
|
|
/* 02526A30 */ _t30 = cpu->r[1] + 0x00000034u;
|
|
/* 02526A30 */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 02526A34 */ _t31 = cpu->r[12] + 0x00002870u;
|
|
/* 02526A34 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 02526A38 */ cpu->f[8] = fma(cpu->f[5], cpu->f[5], cpu->f[13]);
|
|
/* 02526A3C */ _t32 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02526A3C */ rbrew_write_f32(cpu->mem, _t32, cpu->f[9]);
|
|
/* 02526A40 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[7]);
|
|
/* 02526A44 */ cpu->f[10] = cpu->f[5];
|
|
/* 02526A48 */ _t33 = cpu->r[1] + 0x00000008u;
|
|
/* 02526A48 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[12]);
|
|
/* 02526A4C */ _t34 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02526A4C */ _t35 = _t34 & 0x00000001u;
|
|
/* 02526A4C */ if (_t35) goto L_02526A50; else goto L_02526AE4;
|
|
L_02526A50: ; // 0x2526a50
|
|
/* 02526A50 */ goto L_02526AF8;
|
|
L_02526A54: ; // 0x2526a54
|
|
/* 02526A54 */ _t36 = cpu->r[31] + 0x00000220u;
|
|
/* 02526A54 */ cpu->r[9] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02526A58 */ /* nop */
|
|
/* 02526A5C */ _t37 = cpu->r[9] + 0x00000000u;
|
|
/* 02526A5C */ cpu->r[10] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02526A60 */ _t38 = cpu->r[31] + 0x0000007Cu;
|
|
/* 02526A60 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 02526A64 */ _t39 = cpu->r[1] + 0x00000014u;
|
|
/* 02526A64 */ rbrew_write32(cpu->mem, _t39, cpu->r[10]);
|
|
/* 02526A68 */ _t40 = cpu->r[9] + 0x00000004u;
|
|
/* 02526A68 */ cpu->r[12] = rbrew_read32(cpu->mem, _t40);
|
|
/* 02526A6C */ _t41 = cpu->r[31] + 0x00000080u;
|
|
/* 02526A6C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 02526A70 */ _t42 = cpu->r[1] + 0x00000018u;
|
|
/* 02526A70 */ rbrew_write32(cpu->mem, _t42, cpu->r[12]);
|
|
/* 02526A74 */ _t43 = cpu->r[9] + 0x00000008u;
|
|
/* 02526A74 */ cpu->r[0] = rbrew_read32(cpu->mem, _t43);
|
|
/* 02526A78 */ _t44 = cpu->r[1] + 0x00000018u;
|
|
/* 02526A78 */ rbrew_write_f32(cpu->mem, _t44, cpu->f[11]);
|
|
/* 02526A7C */ /* nop */
|
|
/* 02526A80 */ _t45 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02526A80 */ rbrew_write32(cpu->mem, _t45, cpu->r[0]);
|
|
/* 02526A84 */ _t46 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02526A84 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t46);
|
|
/* 02526A88 */ /* nop */
|
|
/* 02526A8C */ /* nop */
|
|
/* 02526A90 */ _t47 = cpu->r[1] + 0x00000024u;
|
|
/* 02526A90 */ cpu->r[11] = rbrew_read32(cpu->mem, _t47);
|
|
/* 02526A94 */ _t48 = cpu->r[1] + 0x00000020u;
|
|
/* 02526A94 */ cpu->r[9] = rbrew_read32(cpu->mem, _t48);
|
|
/* 02526A98 */ _t49 = cpu->r[1] + 0x00000030u;
|
|
/* 02526A98 */ rbrew_write32(cpu->mem, _t49, cpu->r[11]);
|
|
/* 02526A9C */ _t50 = cpu->r[1] + 0x00000030u;
|
|
/* 02526A9C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t50);
|
|
/* 02526AA0 */ cpu->f[0] = cpu->f[7] - cpu->f[8];
|
|
/* 02526AA4 */ _t51 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02526AA4 */ rbrew_write32(cpu->mem, _t51, cpu->r[9]);
|
|
/* 02526AA8 */ _t52 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02526AA8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 02526AAC */ cpu->f[11] = cpu->f[9] * cpu->f[9];
|
|
/* 02526AB0 */ _t53 = cpu->r[1] + 0x00000028u;
|
|
/* 02526AB0 */ rbrew_write_f32(cpu->mem, _t53, cpu->f[0]);
|
|
/* 02526AB4 */ _t54 = cpu->r[1] + 0x00000028u;
|
|
/* 02526AB4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t54);
|
|
/* 02526AB8 */ cpu->f[13] = fma(cpu->f[12], cpu->f[12], cpu->f[11]);
|
|
/* 02526ABC */ _t55 = cpu->r[1] + 0x00000034u;
|
|
/* 02526ABC */ rbrew_write32(cpu->mem, _t55, cpu->r[0]);
|
|
/* 02526AC0 */ _t56 = cpu->r[1] + 0x00000034u;
|
|
/* 02526AC0 */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 02526AC4 */ cpu->r[12] = 0x100C0000u;
|
|
/* 02526AC8 */ cpu->f[8] = fma(cpu->f[5], cpu->f[5], cpu->f[13]);
|
|
/* 02526ACC */ _t57 = cpu->r[12] + 0x00002870u;
|
|
/* 02526ACC */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t57);
|
|
/* 02526AD0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[7]);
|
|
/* 02526AD4 */ _t58 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02526AD4 */ rbrew_write_f32(cpu->mem, _t58, cpu->f[9]);
|
|
/* 02526AD8 */ cpu->f[10] = cpu->f[5];
|
|
/* 02526ADC */ _t59 = cpu->r[1] + 0x00000008u;
|
|
/* 02526ADC */ rbrew_write_f32(cpu->mem, _t59, cpu->f[12]);
|
|
/* 02526AE0 */ _t60 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02526AE0 */ _t61 = _t60 & 0x00000001u;
|
|
/* 02526AE0 */ if (_t61) goto L_02526AF8; else goto L_02526AE4;
|
|
L_02526AE4: ; // 0x2526ae4
|
|
/* 02526AE4 */ _t62 = cpu->r[31] + 0x000002B8u;
|
|
/* 02526AE4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t62);
|
|
/* 02526AE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02526AEC */ /* nop */
|
|
/* 02526AF0 */ _t63 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02526AF0 */ _t64 = _t63 & 0x00000001u;
|
|
/* 02526AF0 */ if (_t64) goto L_02526B94; else goto L_02526AF4;
|
|
L_02526AF4: ; // 0x2526af4
|
|
/* 02526AF4 */ goto L_02526B44;
|
|
L_02526AF8: ; // 0x2526af8
|
|
/* 02526AF8 */ cpu->r[9] = 0x100C0000u;
|
|
/* 02526AFC */ cpu->r[12] = 0x100C0000u;
|
|
/* 02526B00 */ _t65 = cpu->r[9] + 0x0000287Cu;
|
|
/* 02526B00 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t65);
|
|
/* 02526B04 */ _t66 = cpu->r[12] + 0x00002878u;
|
|
/* 02526B04 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t66);
|
|
/* 02526B08 */ _t67 = cpu->r[1] + 0x00000010u;
|
|
/* 02526B08 */ rbrew_write_f32(cpu->mem, _t67, cpu->f[10]);
|
|
/* 02526B0C */ _ft68 = sqrt(cpu->f[8]);
|
|
/* 02526B0C */ _ft69 = (double)(int32_t)0x00000001u;
|
|
/* 02526B0C */ cpu->f[0] = _ft69 / _ft68;
|
|
/* 02526B10 */ cpu->f[9] = cpu->f[0] * cpu->f[0];
|
|
/* 02526B14 */ cpu->f[11] = cpu->f[0] * cpu->f[12];
|
|
/* 02526B18 */ cpu->f[9] = -fma(cpu->f[9], cpu->f[8], -(cpu->f[13]));
|
|
/* 02526B1C */ cpu->f[0] = cpu->f[9] * cpu->f[11];
|
|
/* 02526B20 */ _t70 = cpu->r[1] + 0x00000010u;
|
|
/* 02526B20 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t70);
|
|
/* 02526B24 */ cpu->f[8] = cpu->f[8] * cpu->f[0];
|
|
/* 02526B28 */ _t71 = cpu->r[31] + 0x000002B8u;
|
|
/* 02526B28 */ cpu->r[0] = rbrew_read32(cpu->mem, _t71);
|
|
/* 02526B2C */ /* nop */
|
|
/* 02526B30 */ cpu->f[5] = cpu->f[9] * cpu->f[0];
|
|
/* 02526B34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02526B38 */ /* nop */
|
|
/* 02526B3C */ /* nop */
|
|
/* 02526B40 */ _t72 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02526B40 */ _t73 = _t72 & 0x00000001u;
|
|
/* 02526B40 */ if (_t73) goto L_02526B94; else goto L_02526B44;
|
|
L_02526B44: ; // 0x2526b44
|
|
/* 02526B44 */ cpu->r[11] = 0x100C0000u;
|
|
/* 02526B48 */ _t74 = cpu->r[11] + 0x00002868u;
|
|
/* 02526B48 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t74);
|
|
/* 02526B4C */ cpu->f[10] = cpu->f[8] - cpu->f[0];
|
|
/* 02526B50 */ /* nop */
|
|
/* 02526B54 */ cpu->f[5] = cpu->f[5] * cpu->f[13];
|
|
/* 02526B58 */ _t75 = cpu->r[31] + 0x00000080u;
|
|
/* 02526B58 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t75);
|
|
/* 02526B5C */ /* nop */
|
|
/* 02526B60 */ _t76 = cpu->r[1] + 0x00000010u;
|
|
/* 02526B60 */ rbrew_write_f32(cpu->mem, _t76, cpu->f[5]);
|
|
/* 02526B64 */ cpu->f[0] = cpu->f[0] + cpu->f[5];
|
|
/* 02526B68 */ /* nop */
|
|
/* 02526B6C */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 02526B70 */ /* nop */
|
|
/* 02526B74 */ cpu->r[3] = cpu->r[31] + 0x00000078u;
|
|
/* 02526B78 */ _t77 = cpu->r[31] + 0x00000080u;
|
|
/* 02526B78 */ rbrew_write_f32(cpu->mem, _t77, cpu->f[0]);
|
|
/* 02526B7C */ Gambit_fn_02C693A4(cpu);
|
|
/* 02526B80 */ cpu->r[11] = 0x100C0000u;
|
|
/* 02526B84 */ _t78 = cpu->r[11] + 0x00002A00u;
|
|
/* 02526B84 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t78);
|
|
/* 02526B88 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[1]);
|
|
/* 02526B8C */ _t79 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02526B8C */ _t80 = _t79 & 0x00000001u;
|
|
/* 02526B8C */ if (_t80) goto L_02526B90; else goto L_02526BE0;
|
|
L_02526B90: ; // 0x2526b90
|
|
/* 02526B90 */ goto L_02526C38;
|
|
L_02526B94: ; // 0x2526b94
|
|
/* 02526B94 */ cpu->r[9] = 0x100C0000u;
|
|
/* 02526B98 */ _t81 = cpu->r[9] + 0x0000286Cu;
|
|
/* 02526B98 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t81);
|
|
/* 02526B9C */ cpu->f[10] = cpu->f[8] - cpu->f[0];
|
|
/* 02526BA0 */ /* nop */
|
|
/* 02526BA4 */ cpu->f[5] = cpu->f[5] * cpu->f[13];
|
|
/* 02526BA8 */ _t82 = cpu->r[31] + 0x00000080u;
|
|
/* 02526BA8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t82);
|
|
/* 02526BAC */ /* nop */
|
|
/* 02526BB0 */ _t83 = cpu->r[1] + 0x00000010u;
|
|
/* 02526BB0 */ rbrew_write_f32(cpu->mem, _t83, cpu->f[5]);
|
|
/* 02526BB4 */ cpu->f[0] = cpu->f[0] + cpu->f[5];
|
|
/* 02526BB8 */ /* nop */
|
|
/* 02526BBC */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 02526BC0 */ /* nop */
|
|
/* 02526BC4 */ cpu->r[3] = cpu->r[31] + 0x00000078u;
|
|
/* 02526BC8 */ _t84 = cpu->r[31] + 0x00000080u;
|
|
/* 02526BC8 */ rbrew_write_f32(cpu->mem, _t84, cpu->f[0]);
|
|
/* 02526BCC */ Gambit_fn_02C693A4(cpu);
|
|
/* 02526BD0 */ cpu->r[11] = 0x100C0000u;
|
|
/* 02526BD4 */ _t85 = cpu->r[11] + 0x00002A00u;
|
|
/* 02526BD4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t85);
|
|
/* 02526BD8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[1]);
|
|
/* 02526BDC */ _t86 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02526BDC */ _t87 = _t86 & 0x00000001u;
|
|
/* 02526BDC */ if (_t87) goto L_02526C38; else goto L_02526BE0;
|
|
L_02526BE0: ; // 0x2526be0
|
|
/* 02526BE0 */ cpu->r[10] = 0x100C0000u;
|
|
/* 02526BE4 */ _t88 = cpu->r[10] + 0x00002874u;
|
|
/* 02526BE4 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t88);
|
|
/* 02526BE8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[9]);
|
|
/* 02526BEC */ _t89 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02526BEC */ _t90 = _t89 & 0x00000001u;
|
|
/* 02526BEC */ if (_t90) goto L_02526C38; else goto L_02526BF0;
|
|
L_02526BF0: ; // 0x2526bf0
|
|
/* 02526BF0 */ _t91 = cpu->r[31] + 0x0000022Cu;
|
|
/* 02526BF0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t91);
|
|
/* 02526BF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02526BF8 */ _t92 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02526BF8 */ _t93 = _t92 & 0x00000001u;
|
|
/* 02526BF8 */ if (_t93) goto L_02526C38; else goto L_02526BFC;
|
|
L_02526BFC: ; // 0x2526bfc
|
|
/* 02526BFC */ _t94 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02526BFC */ _t95 = _t94 & 0x00000001u;
|
|
/* 02526BFC */ if (_t95) goto L_02526C00; else goto L_02526C30;
|
|
L_02526C00: ; // 0x2526c00
|
|
/* 02526C00 */ _t96 = cpu->r[31] + 0x00000228u;
|
|
/* 02526C00 */ cpu->r[10] = rbrew_read32(cpu->mem, _t96);
|
|
/* 02526C04 */ _t97 = cpu->r[31] + 0x00000224u;
|
|
/* 02526C04 */ cpu->r[0] = rbrew_read32(cpu->mem, _t97);
|
|
/* 02526C08 */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 02526C0C */ _t98 = cpu->r[31] + 0x00000228u;
|
|
/* 02526C0C */ rbrew_write32(cpu->mem, _t98, cpu->r[10]);
|
|
/* 02526C10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], cpu->r[0]);
|
|
/* 02526C14 */ _t99 = cpu->r[31] + 0x0000022Cu;
|
|
/* 02526C14 */ cpu->r[12] = rbrew_read32(cpu->mem, _t99);
|
|
/* 02526C18 */ _t100 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02526C18 */ _t101 = _t100 & 0x00000001u;
|
|
/* 02526C18 */ if (_t101) goto L_02526C24; else goto L_02526C1C;
|
|
L_02526C1C: ; // 0x2526c1c
|
|
/* 02526C1C */ cpu->r[10] = 0x00000000u;
|
|
/* 02526C20 */ _t102 = cpu->r[31] + 0x00000228u;
|
|
/* 02526C20 */ rbrew_write32(cpu->mem, _t102, cpu->r[10]);
|
|
L_02526C24: ; // 0x2526c24
|
|
/* 02526C24 */ cpu->r[12] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 02526C24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02526C28 */ _t103 = cpu->r[31] + 0x0000022Cu;
|
|
/* 02526C28 */ rbrew_write32(cpu->mem, _t103, cpu->r[12]);
|
|
/* 02526C2C */ _t104 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02526C2C */ _t105 = _t104 & 0x00000001u;
|
|
/* 02526C2C */ if (_t105) goto L_02526C30; else goto L_02526C38;
|
|
L_02526C30: ; // 0x2526c30
|
|
/* 02526C30 */ cpu->r[3] = cpu->r[31];
|
|
/* 02526C34 */ Gambit_fn_0252690C(cpu);
|
|
L_02526C38: ; // 0x2526c38
|
|
/* 02526C38 */ _t106 = cpu->r[31] + 0x00000158u;
|
|
/* 02526C38 */ cpu->r[0] = rbrew_read32(cpu->mem, _t106);
|
|
/* 02526C3C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000003Cu);
|
|
/* 02526C40 */ _t107 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02526C40 */ _t108 = _t107 & 0x00000001u;
|
|
/* 02526C40 */ if (_t108) goto L_02526C4C; else goto L_02526C44;
|
|
L_02526C44: ; // 0x2526c44
|
|
/* 02526C44 */ cpu->r[3] = cpu->r[31];
|
|
/* 02526C48 */ Gambit_fn_0252690C(cpu);
|
|
L_02526C4C: ; // 0x2526c4c
|
|
/* 02526C4C */ _t109 = cpu->r[1] + 0x00000044u;
|
|
/* 02526C4C */ cpu->r[0] = rbrew_read32(cpu->mem, _t109);
|
|
/* 02526C50 */ _t110 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02526C50 */ cpu->r[31] = rbrew_read32(cpu->mem, _t110);
|
|
/* 02526C54 */ cpu->lr = cpu->r[0];
|
|
/* 02526C58 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 02526C5C */ return;
|
|
}
|
|
|
|
// fn_02526C60 @ 0x2526c60
|
|
void Gambit_fn_02526C60(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64;
|
|
|
|
L_02526C60: ; // 0x2526c60
|
|
/* 02526C60 */ cpu->r[0] = cpu->lr;
|
|
/* 02526C64 */ _t0 = cpu->r[1] + 0xFFFFFF78u;
|
|
/* 02526C64 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02526C64 */ cpu->r[1] = _t0;
|
|
/* 02526C68 */ _t1 = cpu->r[1] + 0x00000080u;
|
|
/* 02526C68 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02526C6C */ _t2 = cpu->r[1] + 0x00000084u;
|
|
/* 02526C6C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02526C70 */ cpu->r[12] = 0x101C0000u;
|
|
/* 02526C74 */ _t3 = cpu->r[1] + 0x0000008Cu;
|
|
/* 02526C74 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02526C78 */ _t4 = cpu->r[12] + 0x00006000u;
|
|
/* 02526C78 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02526C7C */ _t5 = cpu->r[12] + 0x00000268u;
|
|
/* 02526C7C */ cpu->r[30] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02526C80 */ cpu->r[31] = cpu->r[3];
|
|
/* 02526C84 */ cpu->r[3] = cpu->r[30];
|
|
/* 02526C88 */ Gambit_fn_0261F774(cpu);
|
|
/* 02526C8C */ cpu->r[4] = cpu->r[3];
|
|
/* 02526C90 */ cpu->r[3] = cpu->r[30];
|
|
/* 02526C94 */ Gambit_fn_0261F55C(cpu);
|
|
/* 02526C98 */ cpu->r[11] = 0x101F0000u;
|
|
/* 02526C9C */ cpu->r[8] = 0x100C0000u;
|
|
/* 02526CA0 */ _t6 = cpu->r[8] + 0x00002A04u;
|
|
/* 02526CA0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 02526CA4 */ cpu->r[11] = cpu->r[11] + 0x00006350u;
|
|
/* 02526CA8 */ /* nop */
|
|
/* 02526CAC */ _t7 = cpu->r[11] + 0x00000008u;
|
|
/* 02526CAC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 02526CB0 */ /* nop */
|
|
/* 02526CB4 */ /* nop */
|
|
/* 02526CB8 */ _t8 = cpu->r[1] + 0x00000020u;
|
|
/* 02526CB8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02526CBC */ cpu->f[10] = cpu->f[12] * cpu->f[13];
|
|
/* 02526CC0 */ _t9 = cpu->r[1] + 0x00000024u;
|
|
/* 02526CC0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02526CC4 */ _t10 = cpu->r[1] + 0x00000068u;
|
|
/* 02526CC4 */ rbrew_write32(cpu->mem, _t10, cpu->r[10]);
|
|
/* 02526CC8 */ _t11 = cpu->r[1] + 0x00000028u;
|
|
/* 02526CC8 */ rbrew_write_f32(cpu->mem, _t11, cpu->f[10]);
|
|
/* 02526CCC */ _t12 = cpu->r[1] + 0x00000028u;
|
|
/* 02526CCC */ cpu->r[11] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02526CD0 */ _t13 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02526CD0 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02526CD4 */ /* nop */
|
|
/* 02526CD8 */ _t14 = cpu->r[1] + 0x00000070u;
|
|
/* 02526CD8 */ rbrew_write32(cpu->mem, _t14, cpu->r[11]);
|
|
/* 02526CDC */ /* nop */
|
|
/* 02526CE0 */ /* nop */
|
|
/* 02526CE4 */ /* nop */
|
|
/* 02526CE8 */ _t15 = cpu->r[3] + 0x0000024Cu;
|
|
/* 02526CE8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 02526CEC */ _t16 = cpu->r[1] + 0x00000070u;
|
|
/* 02526CEC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 02526CF0 */ _t17 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02526CF0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02526CF4 */ cpu->f[13] = cpu->f[0] + cpu->f[10];
|
|
/* 02526CF8 */ _t18 = cpu->r[31] + 0x00000080u;
|
|
/* 02526CF8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 02526CFC */ _t19 = cpu->r[1] + 0x00000074u;
|
|
/* 02526CFC */ rbrew_write32(cpu->mem, _t19, cpu->r[9]);
|
|
/* 02526D00 */ _t20 = cpu->r[1] + 0x00000030u;
|
|
/* 02526D00 */ cpu->r[12] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02526D04 */ _t21 = cpu->r[1] + 0x00000034u;
|
|
/* 02526D04 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[13]);
|
|
/* 02526D08 */ _t22 = cpu->r[1] + 0x00000034u;
|
|
/* 02526D08 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02526D0C */ _t23 = cpu->r[1] + 0x00000078u;
|
|
/* 02526D0C */ rbrew_write32(cpu->mem, _t23, cpu->r[12]);
|
|
/* 02526D10 */ /* nop */
|
|
/* 02526D14 */ /* nop */
|
|
/* 02526D18 */ _t24 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02526D18 */ rbrew_write32(cpu->mem, _t24, cpu->r[0]);
|
|
/* 02526D1C */ _t25 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02526D1C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 02526D20 */ /* nop */
|
|
/* 02526D24 */ /* nop */
|
|
/* 02526D28 */ _t26 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02526D28 */ cpu->r[12] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02526D2C */ _t27 = cpu->r[1] + 0x00000038u;
|
|
/* 02526D2C */ cpu->r[11] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02526D30 */ cpu->f[12] = cpu->f[13] - cpu->f[0];
|
|
/* 02526D34 */ _t28 = cpu->r[1] + 0x00000054u;
|
|
/* 02526D34 */ rbrew_write32(cpu->mem, _t28, cpu->r[12]);
|
|
/* 02526D38 */ _t29 = cpu->r[1] + 0x00000054u;
|
|
/* 02526D38 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 02526D3C */ _t30 = cpu->r[1] + 0x00000050u;
|
|
/* 02526D3C */ rbrew_write32(cpu->mem, _t30, cpu->r[11]);
|
|
/* 02526D40 */ _t31 = cpu->r[1] + 0x00000050u;
|
|
/* 02526D40 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 02526D44 */ _t32 = cpu->r[1] + 0x00000040u;
|
|
/* 02526D44 */ rbrew_write_f32(cpu->mem, _t32, cpu->f[12]);
|
|
/* 02526D48 */ cpu->r[11] = 0x100C0000u;
|
|
/* 02526D4C */ _t33 = cpu->r[1] + 0x00000040u;
|
|
/* 02526D4C */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02526D50 */ _t34 = cpu->r[11] + 0x0000297Cu;
|
|
/* 02526D50 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 02526D54 */ _t35 = cpu->r[1] + 0x00000058u;
|
|
/* 02526D54 */ rbrew_write32(cpu->mem, _t35, cpu->r[0]);
|
|
/* 02526D58 */ _t36 = cpu->r[1] + 0x00000058u;
|
|
/* 02526D58 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 02526D5C */ _t37 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02526D5C */ rbrew_write_f32(cpu->mem, _t37, cpu->f[11]);
|
|
/* 02526D60 */ _t38 = cpu->r[1] + 0x00000008u;
|
|
/* 02526D60 */ rbrew_write_f32(cpu->mem, _t38, cpu->f[10]);
|
|
/* 02526D64 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02526D68 */ _t39 = cpu->r[1] + 0x00000010u;
|
|
/* 02526D68 */ rbrew_write_f32(cpu->mem, _t39, cpu->f[12]);
|
|
/* 02526D6C */ Gambit_fn_0204ECF0(cpu);
|
|
/* 02526D70 */ _t40 = cpu->r[1] + 0x00000010u;
|
|
/* 02526D70 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 02526D74 */ /* nop */
|
|
/* 02526D78 */ /* nop */
|
|
/* 02526D7C */ cpu->r[10] = 0x100C0000u;
|
|
/* 02526D80 */ _t41 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02526D80 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 02526D84 */ /* nop */
|
|
/* 02526D88 */ _t42 = cpu->r[10] + 0x0000286Cu;
|
|
/* 02526D88 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 02526D8C */ /* nop */
|
|
/* 02526D90 */ _t43 = cpu->r[1] + 0x00000048u;
|
|
/* 02526D90 */ cpu->r[8] = rbrew_read32(cpu->mem, _t43);
|
|
/* 02526D94 */ _t44 = cpu->r[1] + 0x00000044u;
|
|
/* 02526D94 */ cpu->r[0] = rbrew_read32(cpu->mem, _t44);
|
|
/* 02526D98 */ cpu->f[13] = cpu->f[0] - cpu->f[10];
|
|
/* 02526D9C */ _t45 = cpu->r[1] + 0x00000060u;
|
|
/* 02526D9C */ rbrew_write32(cpu->mem, _t45, cpu->r[8]);
|
|
/* 02526DA0 */ _t46 = cpu->r[1] + 0x00000060u;
|
|
/* 02526DA0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t46);
|
|
/* 02526DA4 */ _t47 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02526DA4 */ rbrew_write32(cpu->mem, _t47, cpu->r[0]);
|
|
/* 02526DA8 */ _t48 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02526DA8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 02526DAC */ _t49 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02526DAC */ rbrew_write_f32(cpu->mem, _t49, cpu->f[13]);
|
|
/* 02526DB0 */ _t50 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02526DB0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t50);
|
|
/* 02526DB4 */ _t51 = cpu->r[1] + 0x00000014u;
|
|
/* 02526DB4 */ rbrew_write_f32(cpu->mem, _t51, cpu->f[11]);
|
|
/* 02526DB8 */ _t52 = cpu->r[1] + 0x00000064u;
|
|
/* 02526DB8 */ rbrew_write32(cpu->mem, _t52, cpu->r[0]);
|
|
/* 02526DBC */ _t53 = cpu->r[1] + 0x00000064u;
|
|
/* 02526DBC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t53);
|
|
/* 02526DC0 */ _t54 = cpu->r[1] + 0x00000018u;
|
|
/* 02526DC0 */ rbrew_write_f32(cpu->mem, _t54, cpu->f[12]);
|
|
/* 02526DC4 */ cpu->r[3] = cpu->r[1] + 0x00000014u;
|
|
/* 02526DC8 */ _t55 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02526DC8 */ rbrew_write_f32(cpu->mem, _t55, cpu->f[13]);
|
|
/* 02526DCC */ Gambit_fn_0204ECF0(cpu);
|
|
/* 02526DD0 */ _t56 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02526DD0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 02526DD4 */ cpu->r[9] = 0x100C0000u;
|
|
/* 02526DD8 */ _t57 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02526DD8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t57);
|
|
/* 02526DDC */ _t58 = cpu->r[9] + 0x00002A08u;
|
|
/* 02526DDC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 02526DE0 */ /* nop */
|
|
/* 02526DE4 */ cpu->f[12] = fma(cpu->f[12], cpu->f[0], cpu->f[13]);
|
|
/* 02526DE8 */ /* nop */
|
|
/* 02526DEC */ /* nop */
|
|
/* 02526DF0 */ /* nop */
|
|
/* 02526DF4 */ /* nop */
|
|
/* 02526DF8 */ _t59 = cpu->r[31] + 0x00000080u;
|
|
/* 02526DF8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t59);
|
|
/* 02526DFC */ /* nop */
|
|
/* 02526E00 */ /* nop */
|
|
/* 02526E04 */ cpu->f[11] = cpu->f[11] + cpu->f[12];
|
|
/* 02526E08 */ _t60 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02526E08 */ rbrew_write_f32(cpu->mem, _t60, cpu->f[12]);
|
|
/* 02526E0C */ /* nop */
|
|
/* 02526E10 */ _t61 = cpu->r[31] + 0x00000080u;
|
|
/* 02526E10 */ rbrew_write_f32(cpu->mem, _t61, cpu->f[11]);
|
|
/* 02526E14 */ _t62 = cpu->r[1] + 0x0000008Cu;
|
|
/* 02526E14 */ cpu->r[0] = rbrew_read32(cpu->mem, _t62);
|
|
/* 02526E18 */ _t63 = cpu->r[1] + 0x00000084u;
|
|
/* 02526E18 */ cpu->r[31] = rbrew_read32(cpu->mem, _t63);
|
|
/* 02526E1C */ cpu->lr = cpu->r[0];
|
|
/* 02526E20 */ _t64 = cpu->r[1] + 0x00000080u;
|
|
/* 02526E20 */ cpu->r[30] = rbrew_read32(cpu->mem, _t64);
|
|
/* 02526E24 */ cpu->r[1] = cpu->r[1] + 0x00000088u;
|
|
/* 02526E28 */ return;
|
|
}
|
|
|
|
// fn_02526C64 @ 0x2526c64
|
|
void Gambit_fn_02526C64(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64;
|
|
|
|
L_02526C64: ; // 0x2526c64
|
|
/* 02526C64 */ _t0 = cpu->r[1] + 0xFFFFFF78u;
|
|
/* 02526C64 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02526C64 */ cpu->r[1] = _t0;
|
|
/* 02526C68 */ _t1 = cpu->r[1] + 0x00000080u;
|
|
/* 02526C68 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02526C6C */ _t2 = cpu->r[1] + 0x00000084u;
|
|
/* 02526C6C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02526C70 */ cpu->r[12] = 0x101C0000u;
|
|
/* 02526C74 */ _t3 = cpu->r[1] + 0x0000008Cu;
|
|
/* 02526C74 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02526C78 */ _t4 = cpu->r[12] + 0x00006000u;
|
|
/* 02526C78 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02526C7C */ _t5 = cpu->r[12] + 0x00000268u;
|
|
/* 02526C7C */ cpu->r[30] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02526C80 */ cpu->r[31] = cpu->r[3];
|
|
/* 02526C84 */ cpu->r[3] = cpu->r[30];
|
|
/* 02526C88 */ Gambit_fn_0261F774(cpu);
|
|
/* 02526C8C */ cpu->r[4] = cpu->r[3];
|
|
/* 02526C90 */ cpu->r[3] = cpu->r[30];
|
|
/* 02526C94 */ Gambit_fn_0261F55C(cpu);
|
|
/* 02526C98 */ cpu->r[11] = 0x101F0000u;
|
|
/* 02526C9C */ cpu->r[8] = 0x100C0000u;
|
|
/* 02526CA0 */ _t6 = cpu->r[8] + 0x00002A04u;
|
|
/* 02526CA0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 02526CA4 */ cpu->r[11] = cpu->r[11] + 0x00006350u;
|
|
/* 02526CA8 */ /* nop */
|
|
/* 02526CAC */ _t7 = cpu->r[11] + 0x00000008u;
|
|
/* 02526CAC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 02526CB0 */ /* nop */
|
|
/* 02526CB4 */ /* nop */
|
|
/* 02526CB8 */ _t8 = cpu->r[1] + 0x00000020u;
|
|
/* 02526CB8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02526CBC */ cpu->f[10] = cpu->f[12] * cpu->f[13];
|
|
/* 02526CC0 */ _t9 = cpu->r[1] + 0x00000024u;
|
|
/* 02526CC0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02526CC4 */ _t10 = cpu->r[1] + 0x00000068u;
|
|
/* 02526CC4 */ rbrew_write32(cpu->mem, _t10, cpu->r[10]);
|
|
/* 02526CC8 */ _t11 = cpu->r[1] + 0x00000028u;
|
|
/* 02526CC8 */ rbrew_write_f32(cpu->mem, _t11, cpu->f[10]);
|
|
/* 02526CCC */ _t12 = cpu->r[1] + 0x00000028u;
|
|
/* 02526CCC */ cpu->r[11] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02526CD0 */ _t13 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02526CD0 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02526CD4 */ /* nop */
|
|
/* 02526CD8 */ _t14 = cpu->r[1] + 0x00000070u;
|
|
/* 02526CD8 */ rbrew_write32(cpu->mem, _t14, cpu->r[11]);
|
|
/* 02526CDC */ /* nop */
|
|
/* 02526CE0 */ /* nop */
|
|
/* 02526CE4 */ /* nop */
|
|
/* 02526CE8 */ _t15 = cpu->r[3] + 0x0000024Cu;
|
|
/* 02526CE8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 02526CEC */ _t16 = cpu->r[1] + 0x00000070u;
|
|
/* 02526CEC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 02526CF0 */ _t17 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02526CF0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02526CF4 */ cpu->f[13] = cpu->f[0] + cpu->f[10];
|
|
/* 02526CF8 */ _t18 = cpu->r[31] + 0x00000080u;
|
|
/* 02526CF8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 02526CFC */ _t19 = cpu->r[1] + 0x00000074u;
|
|
/* 02526CFC */ rbrew_write32(cpu->mem, _t19, cpu->r[9]);
|
|
/* 02526D00 */ _t20 = cpu->r[1] + 0x00000030u;
|
|
/* 02526D00 */ cpu->r[12] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02526D04 */ _t21 = cpu->r[1] + 0x00000034u;
|
|
/* 02526D04 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[13]);
|
|
/* 02526D08 */ _t22 = cpu->r[1] + 0x00000034u;
|
|
/* 02526D08 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02526D0C */ _t23 = cpu->r[1] + 0x00000078u;
|
|
/* 02526D0C */ rbrew_write32(cpu->mem, _t23, cpu->r[12]);
|
|
/* 02526D10 */ /* nop */
|
|
/* 02526D14 */ /* nop */
|
|
/* 02526D18 */ _t24 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02526D18 */ rbrew_write32(cpu->mem, _t24, cpu->r[0]);
|
|
/* 02526D1C */ _t25 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02526D1C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 02526D20 */ /* nop */
|
|
/* 02526D24 */ /* nop */
|
|
/* 02526D28 */ _t26 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02526D28 */ cpu->r[12] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02526D2C */ _t27 = cpu->r[1] + 0x00000038u;
|
|
/* 02526D2C */ cpu->r[11] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02526D30 */ cpu->f[12] = cpu->f[13] - cpu->f[0];
|
|
/* 02526D34 */ _t28 = cpu->r[1] + 0x00000054u;
|
|
/* 02526D34 */ rbrew_write32(cpu->mem, _t28, cpu->r[12]);
|
|
/* 02526D38 */ _t29 = cpu->r[1] + 0x00000054u;
|
|
/* 02526D38 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 02526D3C */ _t30 = cpu->r[1] + 0x00000050u;
|
|
/* 02526D3C */ rbrew_write32(cpu->mem, _t30, cpu->r[11]);
|
|
/* 02526D40 */ _t31 = cpu->r[1] + 0x00000050u;
|
|
/* 02526D40 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 02526D44 */ _t32 = cpu->r[1] + 0x00000040u;
|
|
/* 02526D44 */ rbrew_write_f32(cpu->mem, _t32, cpu->f[12]);
|
|
/* 02526D48 */ cpu->r[11] = 0x100C0000u;
|
|
/* 02526D4C */ _t33 = cpu->r[1] + 0x00000040u;
|
|
/* 02526D4C */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02526D50 */ _t34 = cpu->r[11] + 0x0000297Cu;
|
|
/* 02526D50 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 02526D54 */ _t35 = cpu->r[1] + 0x00000058u;
|
|
/* 02526D54 */ rbrew_write32(cpu->mem, _t35, cpu->r[0]);
|
|
/* 02526D58 */ _t36 = cpu->r[1] + 0x00000058u;
|
|
/* 02526D58 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 02526D5C */ _t37 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02526D5C */ rbrew_write_f32(cpu->mem, _t37, cpu->f[11]);
|
|
/* 02526D60 */ _t38 = cpu->r[1] + 0x00000008u;
|
|
/* 02526D60 */ rbrew_write_f32(cpu->mem, _t38, cpu->f[10]);
|
|
/* 02526D64 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02526D68 */ _t39 = cpu->r[1] + 0x00000010u;
|
|
/* 02526D68 */ rbrew_write_f32(cpu->mem, _t39, cpu->f[12]);
|
|
/* 02526D6C */ Gambit_fn_0204ECF0(cpu);
|
|
/* 02526D70 */ _t40 = cpu->r[1] + 0x00000010u;
|
|
/* 02526D70 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 02526D74 */ /* nop */
|
|
/* 02526D78 */ /* nop */
|
|
/* 02526D7C */ cpu->r[10] = 0x100C0000u;
|
|
/* 02526D80 */ _t41 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02526D80 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 02526D84 */ /* nop */
|
|
/* 02526D88 */ _t42 = cpu->r[10] + 0x0000286Cu;
|
|
/* 02526D88 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 02526D8C */ /* nop */
|
|
/* 02526D90 */ _t43 = cpu->r[1] + 0x00000048u;
|
|
/* 02526D90 */ cpu->r[8] = rbrew_read32(cpu->mem, _t43);
|
|
/* 02526D94 */ _t44 = cpu->r[1] + 0x00000044u;
|
|
/* 02526D94 */ cpu->r[0] = rbrew_read32(cpu->mem, _t44);
|
|
/* 02526D98 */ cpu->f[13] = cpu->f[0] - cpu->f[10];
|
|
/* 02526D9C */ _t45 = cpu->r[1] + 0x00000060u;
|
|
/* 02526D9C */ rbrew_write32(cpu->mem, _t45, cpu->r[8]);
|
|
/* 02526DA0 */ _t46 = cpu->r[1] + 0x00000060u;
|
|
/* 02526DA0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t46);
|
|
/* 02526DA4 */ _t47 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02526DA4 */ rbrew_write32(cpu->mem, _t47, cpu->r[0]);
|
|
/* 02526DA8 */ _t48 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02526DA8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 02526DAC */ _t49 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02526DAC */ rbrew_write_f32(cpu->mem, _t49, cpu->f[13]);
|
|
/* 02526DB0 */ _t50 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02526DB0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t50);
|
|
/* 02526DB4 */ _t51 = cpu->r[1] + 0x00000014u;
|
|
/* 02526DB4 */ rbrew_write_f32(cpu->mem, _t51, cpu->f[11]);
|
|
/* 02526DB8 */ _t52 = cpu->r[1] + 0x00000064u;
|
|
/* 02526DB8 */ rbrew_write32(cpu->mem, _t52, cpu->r[0]);
|
|
/* 02526DBC */ _t53 = cpu->r[1] + 0x00000064u;
|
|
/* 02526DBC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t53);
|
|
/* 02526DC0 */ _t54 = cpu->r[1] + 0x00000018u;
|
|
/* 02526DC0 */ rbrew_write_f32(cpu->mem, _t54, cpu->f[12]);
|
|
/* 02526DC4 */ cpu->r[3] = cpu->r[1] + 0x00000014u;
|
|
/* 02526DC8 */ _t55 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02526DC8 */ rbrew_write_f32(cpu->mem, _t55, cpu->f[13]);
|
|
/* 02526DCC */ Gambit_fn_0204ECF0(cpu);
|
|
/* 02526DD0 */ _t56 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02526DD0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 02526DD4 */ cpu->r[9] = 0x100C0000u;
|
|
/* 02526DD8 */ _t57 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02526DD8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t57);
|
|
/* 02526DDC */ _t58 = cpu->r[9] + 0x00002A08u;
|
|
/* 02526DDC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 02526DE0 */ /* nop */
|
|
/* 02526DE4 */ cpu->f[12] = fma(cpu->f[12], cpu->f[0], cpu->f[13]);
|
|
/* 02526DE8 */ /* nop */
|
|
/* 02526DEC */ /* nop */
|
|
/* 02526DF0 */ /* nop */
|
|
/* 02526DF4 */ /* nop */
|
|
/* 02526DF8 */ _t59 = cpu->r[31] + 0x00000080u;
|
|
/* 02526DF8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t59);
|
|
/* 02526DFC */ /* nop */
|
|
/* 02526E00 */ /* nop */
|
|
/* 02526E04 */ cpu->f[11] = cpu->f[11] + cpu->f[12];
|
|
/* 02526E08 */ _t60 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02526E08 */ rbrew_write_f32(cpu->mem, _t60, cpu->f[12]);
|
|
/* 02526E0C */ /* nop */
|
|
/* 02526E10 */ _t61 = cpu->r[31] + 0x00000080u;
|
|
/* 02526E10 */ rbrew_write_f32(cpu->mem, _t61, cpu->f[11]);
|
|
/* 02526E14 */ _t62 = cpu->r[1] + 0x0000008Cu;
|
|
/* 02526E14 */ cpu->r[0] = rbrew_read32(cpu->mem, _t62);
|
|
/* 02526E18 */ _t63 = cpu->r[1] + 0x00000084u;
|
|
/* 02526E18 */ cpu->r[31] = rbrew_read32(cpu->mem, _t63);
|
|
/* 02526E1C */ cpu->lr = cpu->r[0];
|
|
/* 02526E20 */ _t64 = cpu->r[1] + 0x00000080u;
|
|
/* 02526E20 */ cpu->r[30] = rbrew_read32(cpu->mem, _t64);
|
|
/* 02526E24 */ cpu->r[1] = cpu->r[1] + 0x00000088u;
|
|
/* 02526E28 */ return;
|
|
}
|
|
|
|
// fn_02526E2C @ 0x2526e2c
|
|
void Gambit_fn_02526E2C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_02526E2C: ; // 0x2526e2c
|
|
/* 02526E2C */ cpu->r[0] = cpu->lr;
|
|
/* 02526E30 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02526E30 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02526E30 */ cpu->r[1] = _t0;
|
|
/* 02526E34 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02526E34 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02526E38 */ cpu->r[31] = cpu->r[3];
|
|
/* 02526E3C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02526E3C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02526E40 */ Gambit_fn_02526498(cpu);
|
|
/* 02526E44 */ Gambit_fn_025264A8(cpu);
|
|
/* 02526E48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02526E4C */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02526E4C */ _t4 = _t3 & 0x00000001u;
|
|
/* 02526E4C */ if (_t4) goto L_02526E68; else goto L_02526E50;
|
|
L_02526E50: ; // 0x2526e50
|
|
/* 02526E50 */ cpu->r[3] = cpu->r[31];
|
|
/* 02526E54 */ Gambit_fn_025264D0(cpu);
|
|
/* 02526E58 */ cpu->r[3] = cpu->r[31];
|
|
/* 02526E5C */ Gambit_fn_025264A8(cpu);
|
|
/* 02526E60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02526E64 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02526E64 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02526E64 */ if (_t6) goto L_02526E68; else goto L_02526E7C;
|
|
L_02526E68: ; // 0x2526e68
|
|
/* 02526E68 */ cpu->r[3] = cpu->r[31];
|
|
/* 02526E6C */ Gambit_fn_024F5A60(cpu);
|
|
/* 02526E70 */ cpu->r[3] = cpu->r[31];
|
|
/* 02526E74 */ Gambit_fn_024F7158(cpu);
|
|
/* 02526E78 */ goto L_02526EE0;
|
|
L_02526E7C: ; // 0x2526e7c
|
|
/* 02526E7C */ _t7 = cpu->r[31] + 0x000001E8u;
|
|
/* 02526E7C */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02526E80 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], 0x00000001u);
|
|
/* 02526E84 */ _t8 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02526E84 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02526E84 */ if (_t9) goto L_02526E98; else goto L_02526E88;
|
|
L_02526E88: ; // 0x2526e88
|
|
/* 02526E88 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02526E88 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02526E88 */ if (_t11) goto L_02526ED0; else goto L_02526E8C;
|
|
L_02526E8C: ; // 0x2526e8c
|
|
/* 02526E8C */ cpu->r[3] = cpu->r[31];
|
|
/* 02526E90 */ Gambit_fn_024F7158(cpu);
|
|
/* 02526E94 */ goto L_02526EE0;
|
|
L_02526E98: ; // 0x2526e98
|
|
/* 02526E98 */ cpu->r[3] = cpu->r[31];
|
|
/* 02526E9C */ Gambit_fn_025266DC(cpu);
|
|
/* 02526EA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02526EA4 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02526EA4 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02526EA4 */ if (_t13) goto L_02526EB0; else goto L_02526EA8;
|
|
L_02526EA8: ; // 0x2526ea8
|
|
/* 02526EA8 */ cpu->r[3] = cpu->r[31];
|
|
/* 02526EAC */ Gambit_fn_02526768(cpu);
|
|
L_02526EB0: ; // 0x2526eb0
|
|
/* 02526EB0 */ _t14 = cpu->r[31] + 0x000002B4u;
|
|
/* 02526EB0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t14);
|
|
/* 02526EB4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02526EB8 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02526EB8 */ _t16 = _t15 & 0x00000001u;
|
|
/* 02526EB8 */ if (_t16) goto L_02526ED8; else goto L_02526EBC;
|
|
L_02526EBC: ; // 0x2526ebc
|
|
/* 02526EBC */ cpu->r[3] = cpu->r[31];
|
|
/* 02526EC0 */ Gambit_fn_02526984(cpu);
|
|
/* 02526EC4 */ cpu->r[3] = cpu->r[31];
|
|
/* 02526EC8 */ Gambit_fn_024F7158(cpu);
|
|
/* 02526ECC */ goto L_02526EE0;
|
|
L_02526ED0: ; // 0x2526ed0
|
|
/* 02526ED0 */ cpu->r[3] = cpu->r[31];
|
|
/* 02526ED4 */ Gambit_fn_02526C60(cpu);
|
|
L_02526ED8: ; // 0x2526ed8
|
|
/* 02526ED8 */ cpu->r[3] = cpu->r[31];
|
|
/* 02526EDC */ Gambit_fn_024F7158(cpu);
|
|
L_02526EE0: ; // 0x2526ee0
|
|
/* 02526EE0 */ _t17 = cpu->r[1] + 0x00000014u;
|
|
/* 02526EE0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02526EE4 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02526EE4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02526EE8 */ cpu->lr = cpu->r[0];
|
|
/* 02526EEC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02526EF0 */ return;
|
|
}
|
|
|
|
// fn_02526E30 @ 0x2526e30
|
|
void Gambit_fn_02526E30(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_02526E30: ; // 0x2526e30
|
|
/* 02526E30 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02526E30 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02526E30 */ cpu->r[1] = _t0;
|
|
/* 02526E34 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02526E34 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02526E38 */ cpu->r[31] = cpu->r[3];
|
|
/* 02526E3C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02526E3C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02526E40 */ Gambit_fn_02526498(cpu);
|
|
/* 02526E44 */ Gambit_fn_025264A8(cpu);
|
|
/* 02526E48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02526E4C */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02526E4C */ _t4 = _t3 & 0x00000001u;
|
|
/* 02526E4C */ if (_t4) goto L_02526E68; else goto L_02526E50;
|
|
L_02526E50: ; // 0x2526e50
|
|
/* 02526E50 */ cpu->r[3] = cpu->r[31];
|
|
/* 02526E54 */ Gambit_fn_025264D0(cpu);
|
|
/* 02526E58 */ cpu->r[3] = cpu->r[31];
|
|
/* 02526E5C */ Gambit_fn_025264A8(cpu);
|
|
/* 02526E60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02526E64 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02526E64 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02526E64 */ if (_t6) goto L_02526E68; else goto L_02526E7C;
|
|
L_02526E68: ; // 0x2526e68
|
|
/* 02526E68 */ cpu->r[3] = cpu->r[31];
|
|
/* 02526E6C */ Gambit_fn_024F5A60(cpu);
|
|
/* 02526E70 */ cpu->r[3] = cpu->r[31];
|
|
/* 02526E74 */ Gambit_fn_024F7158(cpu);
|
|
/* 02526E78 */ goto L_02526EE0;
|
|
L_02526E7C: ; // 0x2526e7c
|
|
/* 02526E7C */ _t7 = cpu->r[31] + 0x000001E8u;
|
|
/* 02526E7C */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02526E80 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], 0x00000001u);
|
|
/* 02526E84 */ _t8 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02526E84 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02526E84 */ if (_t9) goto L_02526E98; else goto L_02526E88;
|
|
L_02526E88: ; // 0x2526e88
|
|
/* 02526E88 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02526E88 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02526E88 */ if (_t11) goto L_02526ED0; else goto L_02526E8C;
|
|
L_02526E8C: ; // 0x2526e8c
|
|
/* 02526E8C */ cpu->r[3] = cpu->r[31];
|
|
/* 02526E90 */ Gambit_fn_024F7158(cpu);
|
|
/* 02526E94 */ goto L_02526EE0;
|
|
L_02526E98: ; // 0x2526e98
|
|
/* 02526E98 */ cpu->r[3] = cpu->r[31];
|
|
/* 02526E9C */ Gambit_fn_025266DC(cpu);
|
|
/* 02526EA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02526EA4 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02526EA4 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02526EA4 */ if (_t13) goto L_02526EB0; else goto L_02526EA8;
|
|
L_02526EA8: ; // 0x2526ea8
|
|
/* 02526EA8 */ cpu->r[3] = cpu->r[31];
|
|
/* 02526EAC */ Gambit_fn_02526768(cpu);
|
|
L_02526EB0: ; // 0x2526eb0
|
|
/* 02526EB0 */ _t14 = cpu->r[31] + 0x000002B4u;
|
|
/* 02526EB0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t14);
|
|
/* 02526EB4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02526EB8 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02526EB8 */ _t16 = _t15 & 0x00000001u;
|
|
/* 02526EB8 */ if (_t16) goto L_02526ED8; else goto L_02526EBC;
|
|
L_02526EBC: ; // 0x2526ebc
|
|
/* 02526EBC */ cpu->r[3] = cpu->r[31];
|
|
/* 02526EC0 */ Gambit_fn_02526984(cpu);
|
|
/* 02526EC4 */ cpu->r[3] = cpu->r[31];
|
|
/* 02526EC8 */ Gambit_fn_024F7158(cpu);
|
|
/* 02526ECC */ goto L_02526EE0;
|
|
L_02526ED0: ; // 0x2526ed0
|
|
/* 02526ED0 */ cpu->r[3] = cpu->r[31];
|
|
/* 02526ED4 */ Gambit_fn_02526C60(cpu);
|
|
L_02526ED8: ; // 0x2526ed8
|
|
/* 02526ED8 */ cpu->r[3] = cpu->r[31];
|
|
/* 02526EDC */ Gambit_fn_024F7158(cpu);
|
|
L_02526EE0: ; // 0x2526ee0
|
|
/* 02526EE0 */ _t17 = cpu->r[1] + 0x00000014u;
|
|
/* 02526EE0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02526EE4 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02526EE4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02526EE8 */ cpu->lr = cpu->r[0];
|
|
/* 02526EEC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02526EF0 */ return;
|
|
}
|
|
|
|
// fn_02526EF4 @ 0x2526ef4
|
|
void Gambit_fn_02526EF4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_02526EF4: ; // 0x2526ef4
|
|
/* 02526EF4 */ cpu->r[0] = cpu->lr;
|
|
/* 02526EF8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02526EF8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02526EF8 */ cpu->r[1] = _t0;
|
|
/* 02526EFC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02526EFC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02526F00 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02526F00 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02526F04 */ _t3 = cpu->r[3] + 0x00000134u;
|
|
/* 02526F04 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02526F08 */ cpu->r[0] = 0x00000000u;
|
|
/* 02526F0C */ cpu->r[31] = cpu->r[3];
|
|
/* 02526F10 */ _t4 = cpu->r[11] + 0x000001C8u;
|
|
/* 02526F10 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[0]);
|
|
/* 02526F14 */ Gambit_fn_024F5B90(cpu);
|
|
/* 02526F18 */ _t5 = cpu->r[31] + 0x00000134u;
|
|
/* 02526F18 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02526F1C */ cpu->r[0] = 0x00000001u;
|
|
/* 02526F20 */ _t6 = cpu->r[12] + 0x000001C8u;
|
|
/* 02526F20 */ rbrew_write8(cpu->mem, _t6, (uint8_t)cpu->r[0]);
|
|
/* 02526F24 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 02526F24 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02526F28 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02526F28 */ cpu->r[31] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02526F2C */ cpu->lr = cpu->r[0];
|
|
/* 02526F30 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02526F34 */ return;
|
|
}
|
|
|
|
// fn_02526EF8 @ 0x2526ef8
|
|
void Gambit_fn_02526EF8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_02526EF8: ; // 0x2526ef8
|
|
/* 02526EF8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02526EF8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02526EF8 */ cpu->r[1] = _t0;
|
|
/* 02526EFC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02526EFC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02526F00 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02526F00 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02526F04 */ _t3 = cpu->r[3] + 0x00000134u;
|
|
/* 02526F04 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02526F08 */ cpu->r[0] = 0x00000000u;
|
|
/* 02526F0C */ cpu->r[31] = cpu->r[3];
|
|
/* 02526F10 */ _t4 = cpu->r[11] + 0x000001C8u;
|
|
/* 02526F10 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[0]);
|
|
/* 02526F14 */ Gambit_fn_024F5B90(cpu);
|
|
/* 02526F18 */ _t5 = cpu->r[31] + 0x00000134u;
|
|
/* 02526F18 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02526F1C */ cpu->r[0] = 0x00000001u;
|
|
/* 02526F20 */ _t6 = cpu->r[12] + 0x000001C8u;
|
|
/* 02526F20 */ rbrew_write8(cpu->mem, _t6, (uint8_t)cpu->r[0]);
|
|
/* 02526F24 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 02526F24 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02526F28 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02526F28 */ cpu->r[31] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02526F2C */ cpu->lr = cpu->r[0];
|
|
/* 02526F30 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02526F34 */ return;
|
|
}
|
|
|
|
// fn_02526F38 @ 0x2526f38
|
|
void Gambit_fn_02526F38(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _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_023A376C: ; // 0x23a376c
|
|
/* 023A376C */ cpu->r[0] = cpu->lr;
|
|
/* 023A3770 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 023A3770 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 023A3770 */ cpu->r[1] = _t0;
|
|
/* 023A3774 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 023A3774 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 023A3778 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023A3778 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 023A377C */ cpu->r[30] = cpu->r[3];
|
|
/* 023A3780 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 023A3780 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 023A3784 */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 023A3784 */ cpu->r[12] = rbrew_read8(cpu->mem, _t4);
|
|
/* 023A3788 */ /* nop */
|
|
/* 023A378C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0xFFFFFFFFu);
|
|
/* 023A3790 */ cpu->r[31] = cpu->r[4];
|
|
/* 023A3794 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A3794 */ _t6 = _t5 & 0x00000001u;
|
|
/* 023A3794 */ if (_t6) goto L_023A3798; else goto L_023A37AC;
|
|
L_023A3798: ; // 0x23a3798
|
|
/* 023A3798 */ _t7 = cpu->r[30] + 0x00000004u;
|
|
/* 023A3798 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 023A379C */ _t8 = cpu->r[11] + 0x00000014u;
|
|
/* 023A379C */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 023A37A0 */ cpu->ctr = cpu->r[0];
|
|
/* 023A37A4 */ cpu->r[3] = cpu->r[30];
|
|
/* 023A37A8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_023A37AC: ; // 0x23a37ac
|
|
/* 023A37AC */ cpu->r[3] = cpu->r[30];
|
|
/* 023A37B0 */ cpu->r[4] = cpu->r[31];
|
|
/* 023A37B4 */ Gambit_fn_023A36E4(cpu);
|
|
/* 023A37B8 */ cpu->r[3] = cpu->r[30];
|
|
/* 023A37BC */ /* nop */
|
|
/* 023A37C0 */ Gambit_fn_027FC35C(cpu);
|
|
/* 023A37C4 */ cpu->r[3] = cpu->r[30];
|
|
/* 023A37C8 */ Gambit_fn_023A3564(cpu);
|
|
/* 023A37CC */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 023A37CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 023A37D0 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 023A37D0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 023A37D4 */ cpu->lr = cpu->r[0];
|
|
/* 023A37D8 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023A37D8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 023A37DC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 023A37E0 */ return;
|
|
L_02526F38: ; // 0x2526f38
|
|
/* 02526F38 */ _t12 = cpu->r[3] + 0x00000134u;
|
|
/* 02526F38 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02526F3C */ cpu->r[0] = 0x00000000u;
|
|
/* 02526F40 */ _t13 = cpu->r[12] + 0x000001C8u;
|
|
/* 02526F40 */ rbrew_write8(cpu->mem, _t13, (uint8_t)cpu->r[0]);
|
|
/* 02526F44 */ _t14 = cpu->r[3] + 0x00000134u;
|
|
/* 02526F44 */ cpu->r[10] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02526F48 */ cpu->r[12] = 0x00000001u;
|
|
/* 02526F4C */ _t15 = cpu->r[3] + 0x00000208u;
|
|
/* 02526F4C */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 02526F50 */ _t16 = cpu->r[10] + 0x000001C8u;
|
|
/* 02526F50 */ rbrew_write8(cpu->mem, _t16, (uint8_t)cpu->r[12]);
|
|
/* 02526F54 */ _t17 = cpu->r[3] + 0x000001BCu;
|
|
/* 02526F54 */ cpu->r[0] = rbrew_read8(cpu->mem, _t17);
|
|
/* 02526F58 */ /* nop */
|
|
/* 02526F5C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000002u);
|
|
/* 02526F60 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02526F60 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02526F60 */ if (_t19) goto L_02526F70; else goto L_02526F64;
|
|
L_02526F64: ; // 0x2526f64
|
|
/* 02526F64 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000003u);
|
|
/* 02526F68 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02526F68 */ _t21 = _t20 & 0x00000001u;
|
|
/* 02526F68 */ if (_t21) goto L_02526F88; else goto L_02526F6C;
|
|
L_02526F6C: ; // 0x2526f6c
|
|
/* 02526F6C */ return;
|
|
L_02526F70: ; // 0x2526f70
|
|
/* 02526F70 */ _t22 = cpu->r[3] + 0x00000208u;
|
|
/* 02526F70 */ cpu->r[10] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02526F74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02526F78 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02526F78 */ _t24 = _t23 & 0x00000001u;
|
|
/* 02526F78 */ if (_t24) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02526F78 */ goto L_02526F7C;
|
|
L_02526F7C: ; // 0x2526f7c
|
|
/* 02526F7C */ cpu->r[3] = cpu->r[3] + 0x000001B0u;
|
|
/* 02526F80 */ cpu->r[4] = 0x00000003u;
|
|
/* 02526F84 */ goto L_023A376C;
|
|
L_02526F88: ; // 0x2526f88
|
|
/* 02526F88 */ _t25 = cpu->r[3] + 0x00000208u;
|
|
/* 02526F88 */ cpu->r[11] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02526F8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02526F90 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02526F90 */ _t27 = _t26 & 0x00000001u;
|
|
/* 02526F90 */ _t28 = _t27 ^ 0x00000001u;
|
|
/* 02526F90 */ if (_t28) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02526F90 */ goto L_02526F94;
|
|
L_02526F94: ; // 0x2526f94
|
|
/* 02526F94 */ cpu->r[3] = cpu->r[3] + 0x000001B0u;
|
|
/* 02526F98 */ cpu->r[4] = 0x00000002u;
|
|
/* 02526F9C */ goto L_023A376C;
|
|
}
|
|
|
|
// fn_02526FA0 @ 0x2526fa0
|
|
void Gambit_fn_02526FA0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02526FA0: ; // 0x2526fa0
|
|
/* 02526FA0 */ _t0 = cpu->r[3] + 0x000001BCu;
|
|
/* 02526FA0 */ cpu->r[12] = rbrew_read8(cpu->mem, _t0);
|
|
/* 02526FA4 */ /* nop */
|
|
/* 02526FA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000003u);
|
|
/* 02526FAC */ cpu->r[11] = 0x00000000u;
|
|
/* 02526FB0 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02526FB0 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02526FB0 */ if (_t2) goto L_02526FB4; else goto L_02526FC4;
|
|
L_02526FB4: ; // 0x2526fb4
|
|
/* 02526FB4 */ _t3 = cpu->r[3] + 0x000002C8u;
|
|
/* 02526FB4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02526FB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02526FBC */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02526FBC */ _t5 = _t4 & 0x00000001u;
|
|
/* 02526FBC */ if (_t5) goto L_02526FC0; else goto L_02526FC4;
|
|
L_02526FC0: ; // 0x2526fc0
|
|
/* 02526FC0 */ cpu->r[11] = 0x00000001u;
|
|
L_02526FC4: ; // 0x2526fc4
|
|
/* 02526FC4 */ cpu->r[3] = rbrew_rlwinm(cpu->r[11], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 02526FC8 */ return;
|
|
}
|
|
|
|
// fn_02526FCC @ 0x2526fcc
|
|
void Gambit_fn_02526FCC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _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_02526FCC: ; // 0x2526fcc
|
|
/* 02526FCC */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 02526FCC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02526FCC */ cpu->r[1] = _t0;
|
|
/* 02526FD0 */ /* nop */
|
|
/* 02526FD4 */ cpu->r[0] = cpu->lr;
|
|
/* 02526FD8 */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 02526FD8 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02526FDC */ cpu->r[11] = 0x101C0000u;
|
|
/* 02526FE0 */ cpu->r[12] = 0x101C0000u;
|
|
/* 02526FE4 */ _t2 = cpu->r[11] + 0x00006000u;
|
|
/* 02526FE4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02526FE8 */ _t3 = cpu->r[12] + 0x00005498u;
|
|
/* 02526FE8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02526FEC */ cpu->r[30] = cpu->r[3];
|
|
/* 02526FF0 */ _t4 = cpu->r[11] + 0x00000274u;
|
|
/* 02526FF0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02526FF4 */ cpu->r[9] = cpu->r[3] + cpu->r[12];
|
|
/* 02526FF8 */ cpu->r[27] = cpu->r[4];
|
|
/* 02526FFC */ _t5 = cpu->r[9] + 0x00000104u;
|
|
/* 02526FFC */ cpu->r[4] = rbrew_read8(cpu->mem, _t5);
|
|
/* 02527000 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x000000FFu);
|
|
/* 02527004 */ cpu->r[28] = cpu->r[5];
|
|
/* 02527008 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02527008 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02527008 */ if (_t7) goto L_025270D0; else goto L_0252700C;
|
|
L_0252700C: ; // 0x252700c
|
|
/* 0252700C */ cpu->r[5] = 0x00000001u;
|
|
/* 02527010 */ cpu->r[7] = cpu->r[28];
|
|
/* 02527014 */ cpu->r[6] = cpu->r[27];
|
|
/* 02527018 */ Gambit_fn_021F000C(cpu);
|
|
/* 0252701C */ cpu->r[31] = cpu->r[3];
|
|
/* 0252701C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02527020 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02527020 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02527020 */ if (_t9) goto L_025270D0; else goto L_02527024;
|
|
L_02527024: ; // 0x2527024
|
|
/* 02527024 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02527028 */ _t10 = cpu->r[3] + 0xFFFF9918u;
|
|
/* 02527028 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0252702C */ cpu->r[29] = 0x00000000u;
|
|
/* 02527030 */ Gambit_fn_02830138(cpu);
|
|
/* 02527034 */ cpu->r[9] = cpu->r[3];
|
|
/* 02527038 */ cpu->r[5] = cpu->r[29];
|
|
/* 0252703C */ cpu->r[3] = cpu->r[31];
|
|
/* 02527040 */ cpu->r[4] = cpu->r[30];
|
|
/* 02527044 */ cpu->r[6] = cpu->r[5];
|
|
/* 02527048 */ cpu->r[7] = cpu->r[27];
|
|
/* 0252704C */ cpu->r[8] = cpu->r[28];
|
|
/* 02527050 */ Gambit_fn_0222224C(cpu);
|
|
/* 02527054 */ cpu->r[8] = 0x100C0000u;
|
|
/* 02527058 */ _t11 = cpu->r[30] + 0x000001ECu;
|
|
/* 02527058 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 0252705C */ _t12 = cpu->r[8] + 0x00002870u;
|
|
/* 0252705C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 02527060 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[0]);
|
|
/* 02527064 */ _t13 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02527064 */ _t14 = _t13 & 0x00000001u;
|
|
/* 02527064 */ if (_t14) goto L_025270D0; else goto L_02527068;
|
|
L_02527068: ; // 0x2527068
|
|
/* 02527068 */ cpu->r[3] = cpu->r[30] + 0x000001B0u;
|
|
/* 0252706C */ cpu->r[4] = 0x00000000u;
|
|
/* 02527070 */ Gambit_fn_023A376C(cpu);
|
|
/* 02527074 */ _t15 = cpu->r[30] + 0x000002A8u;
|
|
/* 02527074 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02527078 */ _t16 = cpu->r[30] + 0x0000022Cu;
|
|
/* 02527078 */ rbrew_write32(cpu->mem, _t16, cpu->r[29]);
|
|
/* 0252707C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02527080 */ _t17 = cpu->r[30] + 0x00000228u;
|
|
/* 02527080 */ rbrew_write32(cpu->mem, _t17, cpu->r[29]);
|
|
/* 02527084 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02527084 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02527084 */ if (_t19) goto L_025270CC; else goto L_02527088;
|
|
L_02527088: ; // 0x2527088
|
|
/* 02527088 */ _t20 = cpu->r[30] + 0x000002ACu;
|
|
/* 02527088 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0252708C */ _t21 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0252708C */ cpu->r[10] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02527090 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[0]);
|
|
/* 02527094 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02527094 */ _t23 = _t22 & 0x00000001u;
|
|
/* 02527094 */ if (_t23) goto L_02527098; else goto L_025270CC;
|
|
L_02527098: ; // 0x2527098
|
|
/* 02527098 */ _t24 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02527098 */ cpu->r[11] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0252709C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[0]);
|
|
/* 025270A0 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025270A0 */ _t26 = _t25 & 0x00000001u;
|
|
/* 025270A0 */ if (_t26) goto L_025270A4; else goto L_025270CC;
|
|
L_025270A4: ; // 0x25270a4
|
|
/* 025270A4 */ _t27 = cpu->r[31] + 0x00000028u;
|
|
/* 025270A4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t27);
|
|
/* 025270A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 025270AC */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025270AC */ _t29 = _t28 & 0x00000001u;
|
|
/* 025270AC */ if (_t29) goto L_025270C4; else goto L_025270B0;
|
|
L_025270B0: ; // 0x25270b0
|
|
/* 025270B0 */ _t30 = cpu->r[3] + 0x00000050u;
|
|
/* 025270B0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t30);
|
|
/* 025270B4 */ _t31 = cpu->r[12] + 0x00000024u;
|
|
/* 025270B4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t31);
|
|
/* 025270B8 */ cpu->ctr = cpu->r[8];
|
|
/* 025270BC */ cpu->r[4] = 0xFFFFFFFFu;
|
|
/* 025270C0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_025270C4: ; // 0x25270c4
|
|
/* 025270C4 */ cpu->r[0] = 0x00000001u;
|
|
/* 025270C8 */ _t32 = cpu->r[31] + 0x0000004Cu;
|
|
/* 025270C8 */ rbrew_write8(cpu->mem, _t32, (uint8_t)cpu->r[0]);
|
|
L_025270CC: ; // 0x25270cc
|
|
/* 025270CC */ _t33 = cpu->r[30] + 0x000002B4u;
|
|
/* 025270CC */ rbrew_write8(cpu->mem, _t33, (uint8_t)cpu->r[29]);
|
|
L_025270D0: ; // 0x25270d0
|
|
/* 025270D0 */ /* nop */
|
|
/* 025270D4 */ _t34 = cpu->r[1] + 0x00000024u;
|
|
/* 025270D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t34);
|
|
/* 025270D8 */ cpu->lr = cpu->r[0];
|
|
/* 025270DC */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 025270E0 */ return;
|
|
}
|
|
|
|
// fn_025270E4 @ 0x25270e4
|
|
void Gambit_fn_025270E4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _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_025270E4: ; // 0x25270e4
|
|
/* 025270E4 */ cpu->r[0] = cpu->lr;
|
|
/* 025270E8 */ _t0 = cpu->r[1] + 0xFFFFFFA0u;
|
|
/* 025270E8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 025270E8 */ cpu->r[1] = _t0;
|
|
/* 025270EC */ _t1 = cpu->r[1] + 0x00000040u;
|
|
/* 025270EC */ rbrew_write_f64(cpu->mem, _t1, cpu->f[30]);
|
|
/* 025270F0 */ /* nop */
|
|
/* 025270F4 */ _t2 = cpu->r[1] + 0x00000050u;
|
|
/* 025270F4 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 025270F8 */ /* nop */
|
|
/* 025270FC */ _t3 = cpu->r[1] + 0x00000048u;
|
|
/* 025270FC */ rbrew_write_f32(cpu->mem, _t3, cpu->f[30]);
|
|
/* 02527100 */ _t4 = cpu->r[1] + 0x00000058u;
|
|
/* 02527100 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[31]);
|
|
/* 02527104 */ _t5 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02527104 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 02527108 */ _t6 = cpu->r[1] + 0x00000064u;
|
|
/* 02527108 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0252710C */ cpu->r[31] = cpu->r[3];
|
|
/* 02527110 */ _t7 = cpu->r[1] + 0x00000038u;
|
|
/* 02527110 */ rbrew_write32(cpu->mem, _t7, cpu->r[30]);
|
|
/* 02527114 */ _t8 = cpu->r[31] + 0x000001E8u;
|
|
/* 02527114 */ cpu->r[8] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02527118 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000001u);
|
|
/* 0252711C */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252711C */ _t10 = _t9 & 0x00000001u;
|
|
/* 0252711C */ if (_t10) goto L_02527120; else goto L_02527170;
|
|
L_02527120: ; // 0x2527120
|
|
/* 02527120 */ cpu->r[12] = 0x101C0000u;
|
|
/* 02527124 */ _t11 = cpu->r[12] + 0x00006000u;
|
|
/* 02527124 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02527128 */ _t12 = cpu->r[12] + 0x00000268u;
|
|
/* 02527128 */ cpu->r[30] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0252712C */ cpu->r[3] = cpu->r[30];
|
|
/* 02527130 */ Gambit_fn_0261F774(cpu);
|
|
/* 02527134 */ cpu->r[4] = cpu->r[3];
|
|
/* 02527138 */ cpu->r[3] = cpu->r[30];
|
|
/* 0252713C */ Gambit_fn_0261F55C(cpu);
|
|
/* 02527140 */ _t13 = cpu->r[3] + 0x000001E0u;
|
|
/* 02527140 */ cpu->r[8] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02527144 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02527148 */ _t14 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02527148 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02527148 */ if (_t15) goto L_025272CC; else goto L_0252714C;
|
|
L_0252714C: ; // 0x252714c
|
|
/* 0252714C */ _t16 = cpu->r[3] + 0x000000E0u;
|
|
/* 0252714C */ cpu->r[10] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02527150 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02527154 */ _t17 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02527154 */ _t18 = _t17 & 0x00000001u;
|
|
/* 02527154 */ if (_t18) goto L_02527170; else goto L_02527158;
|
|
L_02527158: ; // 0x2527158
|
|
/* 02527158 */ _t19 = cpu->r[3] + 0x000000D6u;
|
|
/* 02527158 */ cpu->r[0] = rbrew_read8(cpu->mem, _t19);
|
|
/* 0252715C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02527160 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02527160 */ _t21 = _t20 & 0x00000001u;
|
|
/* 02527160 */ if (_t21) goto L_02527164; else goto L_02527170;
|
|
L_02527164: ; // 0x2527164
|
|
/* 02527164 */ _t22 = cpu->r[3] + 0x000000D7u;
|
|
/* 02527164 */ cpu->r[0] = rbrew_read8(cpu->mem, _t22);
|
|
/* 02527168 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0252716C */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252716C */ _t24 = _t23 & 0x00000001u;
|
|
/* 0252716C */ if (_t24) goto L_025272CC; else goto L_02527170;
|
|
L_02527170: ; // 0x2527170
|
|
/* 02527170 */ cpu->r[9] = 0x100C0000u;
|
|
/* 02527174 */ _t25 = cpu->r[31] + 0x00000210u;
|
|
/* 02527174 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 02527178 */ _t26 = cpu->r[9] + 0x00002A0Cu;
|
|
/* 02527178 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 0252717C */ cpu->r[12] = 0x100C0000u;
|
|
/* 02527180 */ cpu->f[12] = cpu->f[10] + cpu->f[0];
|
|
/* 02527184 */ _t27 = cpu->r[12] + 0x0000286Cu;
|
|
/* 02527184 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 02527188 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[13]);
|
|
/* 0252718C */ cpu->f[7] = cpu->f[12];
|
|
/* 02527190 */ _t28 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02527190 */ _t29 = _t28 & 0x00000001u;
|
|
/* 02527190 */ if (_t29) goto L_02527194; else goto L_025271C4;
|
|
L_02527194: ; // 0x2527194
|
|
/* 02527194 */ _t30 = cpu->r[31] + 0x00000210u;
|
|
/* 02527194 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[7]);
|
|
/* 02527198 */ _t31 = cpu->r[1] + 0x00000058u;
|
|
/* 02527198 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 0252719C */ _t32 = cpu->r[1] + 0x00000048u;
|
|
/* 0252719C */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 025271A0 */ _t33 = cpu->r[1] + 0x00000050u;
|
|
/* 025271A0 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t33);
|
|
/* 025271A4 */ _t34 = cpu->r[1] + 0x00000040u;
|
|
/* 025271A4 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t34);
|
|
/* 025271A8 */ _t35 = cpu->r[1] + 0x0000003Cu;
|
|
/* 025271A8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t35);
|
|
/* 025271AC */ _t36 = cpu->r[1] + 0x00000038u;
|
|
/* 025271AC */ cpu->r[30] = rbrew_read32(cpu->mem, _t36);
|
|
/* 025271B0 */ _t37 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 025271B0 */ _t38 = _t37 & 0x00000001u;
|
|
/* 025271B0 */ if (_t38) goto L_025271B4; // else: addr-0 trap, fall-through
|
|
L_025271B4: ; // 0x25271b4
|
|
/* 025271B4 */ _t39 = cpu->r[1] + 0x00000064u;
|
|
/* 025271B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t39);
|
|
/* 025271B8 */ cpu->lr = cpu->r[0];
|
|
/* 025271BC */ cpu->r[1] = cpu->r[1] + 0x00000060u;
|
|
/* 025271C0 */ return;
|
|
L_025271C4: ; // 0x25271c4
|
|
/* 025271C4 */ cpu->f[12] = cpu->f[12] - cpu->f[13];
|
|
/* 025271C8 */ _t40 = cpu->r[31] + 0x00000208u;
|
|
/* 025271C8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t40);
|
|
/* 025271CC */ _t41 = cpu->r[31] + 0x00000210u;
|
|
/* 025271CC */ rbrew_write_f32(cpu->mem, _t41, cpu->f[12]);
|
|
/* 025271D0 */ _t42 = cpu->r[10] + 0x0000011Cu;
|
|
/* 025271D0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 025271D4 */ _t43 = cpu->r[1] + 0x00000008u;
|
|
/* 025271D4 */ rbrew_write_f32(cpu->mem, _t43, cpu->f[13]);
|
|
/* 025271D8 */ _t44 = cpu->r[10] + 0x00000120u;
|
|
/* 025271D8 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 025271DC */ _t45 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025271DC */ rbrew_write_f32(cpu->mem, _t45, cpu->f[7]);
|
|
/* 025271E0 */ _t46 = cpu->r[10] + 0x00000078u;
|
|
/* 025271E0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t46);
|
|
/* 025271E4 */ _t47 = cpu->r[10] + 0x00000124u;
|
|
/* 025271E4 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 025271E8 */ cpu->f[9] = cpu->f[9] * cpu->f[11];
|
|
/* 025271EC */ _t48 = cpu->r[1] + 0x00000010u;
|
|
/* 025271EC */ rbrew_write_f32(cpu->mem, _t48, cpu->f[9]);
|
|
/* 025271F0 */ _t49 = cpu->r[10] + 0x00000130u;
|
|
/* 025271F0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t49);
|
|
/* 025271F4 */ _t50 = cpu->r[10] + 0x0000007Cu;
|
|
/* 025271F4 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t50);
|
|
/* 025271F8 */ /* nop */
|
|
/* 025271FC */ cpu->f[9] = fma(cpu->f[6], cpu->f[13], cpu->f[9]);
|
|
/* 02527200 */ /* nop */
|
|
/* 02527204 */ _t51 = cpu->r[1] + 0x00000010u;
|
|
/* 02527204 */ rbrew_write_f32(cpu->mem, _t51, cpu->f[9]);
|
|
/* 02527208 */ _t52 = cpu->r[10] + 0x00000080u;
|
|
/* 02527208 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 0252720C */ /* nop */
|
|
/* 02527210 */ _t53 = cpu->r[10] + 0x0000013Cu;
|
|
/* 02527210 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t53);
|
|
/* 02527214 */ /* nop */
|
|
/* 02527218 */ cpu->f[9] = fma(cpu->f[0], cpu->f[11], cpu->f[9]);
|
|
/* 0252721C */ /* nop */
|
|
/* 02527220 */ _t54 = cpu->r[1] + 0x00000010u;
|
|
/* 02527220 */ rbrew_write_f32(cpu->mem, _t54, cpu->f[9]);
|
|
/* 02527224 */ /* nop */
|
|
/* 02527228 */ /* nop */
|
|
/* 0252722C */ _t55 = cpu->r[31] + 0x0000020Cu;
|
|
/* 0252722C */ cpu->r[4] = rbrew_read32(cpu->mem, _t55);
|
|
/* 02527230 */ /* nop */
|
|
/* 02527234 */ /* nop */
|
|
/* 02527238 */ _t56 = cpu->r[10] + 0x00000148u;
|
|
/* 02527238 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 0252723C */ _t57 = cpu->r[1] + 0x00000008u;
|
|
/* 0252723C */ cpu->r[11] = rbrew_read32(cpu->mem, _t57);
|
|
/* 02527240 */ cpu->f[9] = cpu->f[9] + cpu->f[10];
|
|
/* 02527244 */ _t58 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02527244 */ cpu->r[12] = rbrew_read32(cpu->mem, _t58);
|
|
/* 02527248 */ _t59 = cpu->r[1] + 0x00000020u;
|
|
/* 02527248 */ rbrew_write32(cpu->mem, _t59, cpu->r[11]);
|
|
/* 0252724C */ _t60 = cpu->r[1] + 0x00000010u;
|
|
/* 0252724C */ rbrew_write_f32(cpu->mem, _t60, cpu->f[9]);
|
|
/* 02527250 */ _t61 = cpu->r[1] + 0x00000010u;
|
|
/* 02527250 */ cpu->r[0] = rbrew_read32(cpu->mem, _t61);
|
|
/* 02527254 */ _t62 = cpu->r[1] + 0x00000024u;
|
|
/* 02527254 */ rbrew_write32(cpu->mem, _t62, cpu->r[12]);
|
|
/* 02527258 */ cpu->r[3] = cpu->r[1] + 0x00000014u;
|
|
/* 0252725C */ _t63 = cpu->r[1] + 0x00000028u;
|
|
/* 0252725C */ rbrew_write32(cpu->mem, _t63, cpu->r[0]);
|
|
/* 02527260 */ Gambit_fn_0200D450(cpu);
|
|
/* 02527264 */ Gambit_fn_02223314(cpu);
|
|
/* 02527268 */ cpu->f[30] = cpu->f[1];
|
|
/* 0252726C */ Gambit_fn_02223320(cpu);
|
|
/* 02527270 */ cpu->f[31] = cpu->f[1];
|
|
/* 02527274 */ Gambit_fn_02223320(cpu);
|
|
/* 02527278 */ cpu->f[2] = cpu->f[30];
|
|
/* 0252727C */ cpu->r[9] = 0x100C0000u;
|
|
/* 02527280 */ cpu->f[3] = cpu->f[31];
|
|
/* 02527284 */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 02527288 */ cpu->f[4] = cpu->f[1];
|
|
/* 0252728C */ _t64 = cpu->r[9] + 0x00002A10u;
|
|
/* 0252728C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t64);
|
|
/* 02527290 */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 02527294 */ cpu->r[5] = cpu->r[1] + 0x00000020u;
|
|
/* 02527298 */ Gambit_fn_021BD594(cpu);
|
|
/* 0252729C */ cpu->r[11] = 0x100C0000u;
|
|
/* 025272A0 */ _t65 = cpu->r[11] + 0x00002A14u;
|
|
/* 025272A0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t65);
|
|
/* 025272A4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[11]);
|
|
/* 025272A8 */ _t66 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 025272A8 */ _t67 = _t66 & 0x00000001u;
|
|
/* 025272A8 */ if (_t67) goto L_025272CC; else goto L_025272AC;
|
|
L_025272AC: ; // 0x25272ac
|
|
/* 025272AC */ cpu->r[10] = 0x100C0000u;
|
|
/* 025272B0 */ _t68 = cpu->r[10] + 0x00002870u;
|
|
/* 025272B0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t68);
|
|
/* 025272B4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[12]);
|
|
/* 025272B8 */ _t69 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 025272B8 */ _t70 = _t69 & 0x00000001u;
|
|
/* 025272B8 */ if (_t70) goto L_025272CC; else goto L_025272BC;
|
|
L_025272BC: ; // 0x25272bc
|
|
/* 025272BC */ cpu->r[5] = cpu->r[1] + 0x0000002Cu;
|
|
/* 025272C0 */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 025272C4 */ cpu->r[3] = cpu->r[31];
|
|
/* 025272C8 */ Gambit_fn_02526FCC(cpu);
|
|
L_025272CC: ; // 0x25272cc
|
|
/* 025272CC */ _t71 = cpu->r[1] + 0x0000003Cu;
|
|
/* 025272CC */ cpu->r[31] = rbrew_read32(cpu->mem, _t71);
|
|
/* 025272D0 */ _t72 = cpu->r[1] + 0x00000058u;
|
|
/* 025272D0 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t72);
|
|
/* 025272D4 */ _t73 = cpu->r[1] + 0x00000048u;
|
|
/* 025272D4 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t73);
|
|
/* 025272D8 */ _t74 = cpu->r[1] + 0x00000050u;
|
|
/* 025272D8 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t74);
|
|
/* 025272DC */ _t75 = cpu->r[1] + 0x00000040u;
|
|
/* 025272DC */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t75);
|
|
/* 025272E0 */ _t76 = cpu->r[1] + 0x00000038u;
|
|
/* 025272E0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t76);
|
|
/* 025272E4 */ _t77 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 025272E4 */ _t78 = _t77 & 0x00000001u;
|
|
/* 025272E4 */ if (_t78) goto L_025272E8; // else: addr-0 trap, fall-through
|
|
L_025272E8: ; // 0x25272e8
|
|
/* 025272E8 */ _t79 = cpu->r[1] + 0x00000064u;
|
|
/* 025272E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t79);
|
|
/* 025272EC */ cpu->lr = cpu->r[0];
|
|
/* 025272F0 */ cpu->r[1] = cpu->r[1] + 0x00000060u;
|
|
/* 025272F4 */ return;
|
|
}
|
|
|
|
// fn_025270E8 @ 0x25270e8
|
|
void Gambit_fn_025270E8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _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_025270E8: ; // 0x25270e8
|
|
/* 025270E8 */ _t0 = cpu->r[1] + 0xFFFFFFA0u;
|
|
/* 025270E8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 025270E8 */ cpu->r[1] = _t0;
|
|
/* 025270EC */ _t1 = cpu->r[1] + 0x00000040u;
|
|
/* 025270EC */ rbrew_write_f64(cpu->mem, _t1, cpu->f[30]);
|
|
/* 025270F0 */ /* nop */
|
|
/* 025270F4 */ _t2 = cpu->r[1] + 0x00000050u;
|
|
/* 025270F4 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 025270F8 */ /* nop */
|
|
/* 025270FC */ _t3 = cpu->r[1] + 0x00000048u;
|
|
/* 025270FC */ rbrew_write_f32(cpu->mem, _t3, cpu->f[30]);
|
|
/* 02527100 */ _t4 = cpu->r[1] + 0x00000058u;
|
|
/* 02527100 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[31]);
|
|
/* 02527104 */ _t5 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02527104 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 02527108 */ _t6 = cpu->r[1] + 0x00000064u;
|
|
/* 02527108 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0252710C */ cpu->r[31] = cpu->r[3];
|
|
/* 02527110 */ _t7 = cpu->r[1] + 0x00000038u;
|
|
/* 02527110 */ rbrew_write32(cpu->mem, _t7, cpu->r[30]);
|
|
/* 02527114 */ _t8 = cpu->r[31] + 0x000001E8u;
|
|
/* 02527114 */ cpu->r[8] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02527118 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000001u);
|
|
/* 0252711C */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252711C */ _t10 = _t9 & 0x00000001u;
|
|
/* 0252711C */ if (_t10) goto L_02527120; else goto L_02527170;
|
|
L_02527120: ; // 0x2527120
|
|
/* 02527120 */ cpu->r[12] = 0x101C0000u;
|
|
/* 02527124 */ _t11 = cpu->r[12] + 0x00006000u;
|
|
/* 02527124 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02527128 */ _t12 = cpu->r[12] + 0x00000268u;
|
|
/* 02527128 */ cpu->r[30] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0252712C */ cpu->r[3] = cpu->r[30];
|
|
/* 02527130 */ Gambit_fn_0261F774(cpu);
|
|
/* 02527134 */ cpu->r[4] = cpu->r[3];
|
|
/* 02527138 */ cpu->r[3] = cpu->r[30];
|
|
/* 0252713C */ Gambit_fn_0261F55C(cpu);
|
|
/* 02527140 */ _t13 = cpu->r[3] + 0x000001E0u;
|
|
/* 02527140 */ cpu->r[8] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02527144 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02527148 */ _t14 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02527148 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02527148 */ if (_t15) goto L_025272CC; else goto L_0252714C;
|
|
L_0252714C: ; // 0x252714c
|
|
/* 0252714C */ _t16 = cpu->r[3] + 0x000000E0u;
|
|
/* 0252714C */ cpu->r[10] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02527150 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02527154 */ _t17 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02527154 */ _t18 = _t17 & 0x00000001u;
|
|
/* 02527154 */ if (_t18) goto L_02527170; else goto L_02527158;
|
|
L_02527158: ; // 0x2527158
|
|
/* 02527158 */ _t19 = cpu->r[3] + 0x000000D6u;
|
|
/* 02527158 */ cpu->r[0] = rbrew_read8(cpu->mem, _t19);
|
|
/* 0252715C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02527160 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02527160 */ _t21 = _t20 & 0x00000001u;
|
|
/* 02527160 */ if (_t21) goto L_02527164; else goto L_02527170;
|
|
L_02527164: ; // 0x2527164
|
|
/* 02527164 */ _t22 = cpu->r[3] + 0x000000D7u;
|
|
/* 02527164 */ cpu->r[0] = rbrew_read8(cpu->mem, _t22);
|
|
/* 02527168 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0252716C */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252716C */ _t24 = _t23 & 0x00000001u;
|
|
/* 0252716C */ if (_t24) goto L_025272CC; else goto L_02527170;
|
|
L_02527170: ; // 0x2527170
|
|
/* 02527170 */ cpu->r[9] = 0x100C0000u;
|
|
/* 02527174 */ _t25 = cpu->r[31] + 0x00000210u;
|
|
/* 02527174 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 02527178 */ _t26 = cpu->r[9] + 0x00002A0Cu;
|
|
/* 02527178 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 0252717C */ cpu->r[12] = 0x100C0000u;
|
|
/* 02527180 */ cpu->f[12] = cpu->f[10] + cpu->f[0];
|
|
/* 02527184 */ _t27 = cpu->r[12] + 0x0000286Cu;
|
|
/* 02527184 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 02527188 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[13]);
|
|
/* 0252718C */ cpu->f[7] = cpu->f[12];
|
|
/* 02527190 */ _t28 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02527190 */ _t29 = _t28 & 0x00000001u;
|
|
/* 02527190 */ if (_t29) goto L_02527194; else goto L_025271C4;
|
|
L_02527194: ; // 0x2527194
|
|
/* 02527194 */ _t30 = cpu->r[31] + 0x00000210u;
|
|
/* 02527194 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[7]);
|
|
/* 02527198 */ _t31 = cpu->r[1] + 0x00000058u;
|
|
/* 02527198 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 0252719C */ _t32 = cpu->r[1] + 0x00000048u;
|
|
/* 0252719C */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 025271A0 */ _t33 = cpu->r[1] + 0x00000050u;
|
|
/* 025271A0 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t33);
|
|
/* 025271A4 */ _t34 = cpu->r[1] + 0x00000040u;
|
|
/* 025271A4 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t34);
|
|
/* 025271A8 */ _t35 = cpu->r[1] + 0x0000003Cu;
|
|
/* 025271A8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t35);
|
|
/* 025271AC */ _t36 = cpu->r[1] + 0x00000038u;
|
|
/* 025271AC */ cpu->r[30] = rbrew_read32(cpu->mem, _t36);
|
|
/* 025271B0 */ _t37 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 025271B0 */ _t38 = _t37 & 0x00000001u;
|
|
/* 025271B0 */ if (_t38) goto L_025271B4; // else: addr-0 trap, fall-through
|
|
L_025271B4: ; // 0x25271b4
|
|
/* 025271B4 */ _t39 = cpu->r[1] + 0x00000064u;
|
|
/* 025271B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t39);
|
|
/* 025271B8 */ cpu->lr = cpu->r[0];
|
|
/* 025271BC */ cpu->r[1] = cpu->r[1] + 0x00000060u;
|
|
/* 025271C0 */ return;
|
|
L_025271C4: ; // 0x25271c4
|
|
/* 025271C4 */ cpu->f[12] = cpu->f[12] - cpu->f[13];
|
|
/* 025271C8 */ _t40 = cpu->r[31] + 0x00000208u;
|
|
/* 025271C8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t40);
|
|
/* 025271CC */ _t41 = cpu->r[31] + 0x00000210u;
|
|
/* 025271CC */ rbrew_write_f32(cpu->mem, _t41, cpu->f[12]);
|
|
/* 025271D0 */ _t42 = cpu->r[10] + 0x0000011Cu;
|
|
/* 025271D0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 025271D4 */ _t43 = cpu->r[1] + 0x00000008u;
|
|
/* 025271D4 */ rbrew_write_f32(cpu->mem, _t43, cpu->f[13]);
|
|
/* 025271D8 */ _t44 = cpu->r[10] + 0x00000120u;
|
|
/* 025271D8 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 025271DC */ _t45 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025271DC */ rbrew_write_f32(cpu->mem, _t45, cpu->f[7]);
|
|
/* 025271E0 */ _t46 = cpu->r[10] + 0x00000078u;
|
|
/* 025271E0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t46);
|
|
/* 025271E4 */ _t47 = cpu->r[10] + 0x00000124u;
|
|
/* 025271E4 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 025271E8 */ cpu->f[9] = cpu->f[9] * cpu->f[11];
|
|
/* 025271EC */ _t48 = cpu->r[1] + 0x00000010u;
|
|
/* 025271EC */ rbrew_write_f32(cpu->mem, _t48, cpu->f[9]);
|
|
/* 025271F0 */ _t49 = cpu->r[10] + 0x00000130u;
|
|
/* 025271F0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t49);
|
|
/* 025271F4 */ _t50 = cpu->r[10] + 0x0000007Cu;
|
|
/* 025271F4 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t50);
|
|
/* 025271F8 */ /* nop */
|
|
/* 025271FC */ cpu->f[9] = fma(cpu->f[6], cpu->f[13], cpu->f[9]);
|
|
/* 02527200 */ /* nop */
|
|
/* 02527204 */ _t51 = cpu->r[1] + 0x00000010u;
|
|
/* 02527204 */ rbrew_write_f32(cpu->mem, _t51, cpu->f[9]);
|
|
/* 02527208 */ _t52 = cpu->r[10] + 0x00000080u;
|
|
/* 02527208 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 0252720C */ /* nop */
|
|
/* 02527210 */ _t53 = cpu->r[10] + 0x0000013Cu;
|
|
/* 02527210 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t53);
|
|
/* 02527214 */ /* nop */
|
|
/* 02527218 */ cpu->f[9] = fma(cpu->f[0], cpu->f[11], cpu->f[9]);
|
|
/* 0252721C */ /* nop */
|
|
/* 02527220 */ _t54 = cpu->r[1] + 0x00000010u;
|
|
/* 02527220 */ rbrew_write_f32(cpu->mem, _t54, cpu->f[9]);
|
|
/* 02527224 */ /* nop */
|
|
/* 02527228 */ /* nop */
|
|
/* 0252722C */ _t55 = cpu->r[31] + 0x0000020Cu;
|
|
/* 0252722C */ cpu->r[4] = rbrew_read32(cpu->mem, _t55);
|
|
/* 02527230 */ /* nop */
|
|
/* 02527234 */ /* nop */
|
|
/* 02527238 */ _t56 = cpu->r[10] + 0x00000148u;
|
|
/* 02527238 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 0252723C */ _t57 = cpu->r[1] + 0x00000008u;
|
|
/* 0252723C */ cpu->r[11] = rbrew_read32(cpu->mem, _t57);
|
|
/* 02527240 */ cpu->f[9] = cpu->f[9] + cpu->f[10];
|
|
/* 02527244 */ _t58 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02527244 */ cpu->r[12] = rbrew_read32(cpu->mem, _t58);
|
|
/* 02527248 */ _t59 = cpu->r[1] + 0x00000020u;
|
|
/* 02527248 */ rbrew_write32(cpu->mem, _t59, cpu->r[11]);
|
|
/* 0252724C */ _t60 = cpu->r[1] + 0x00000010u;
|
|
/* 0252724C */ rbrew_write_f32(cpu->mem, _t60, cpu->f[9]);
|
|
/* 02527250 */ _t61 = cpu->r[1] + 0x00000010u;
|
|
/* 02527250 */ cpu->r[0] = rbrew_read32(cpu->mem, _t61);
|
|
/* 02527254 */ _t62 = cpu->r[1] + 0x00000024u;
|
|
/* 02527254 */ rbrew_write32(cpu->mem, _t62, cpu->r[12]);
|
|
/* 02527258 */ cpu->r[3] = cpu->r[1] + 0x00000014u;
|
|
/* 0252725C */ _t63 = cpu->r[1] + 0x00000028u;
|
|
/* 0252725C */ rbrew_write32(cpu->mem, _t63, cpu->r[0]);
|
|
/* 02527260 */ Gambit_fn_0200D450(cpu);
|
|
/* 02527264 */ Gambit_fn_02223314(cpu);
|
|
/* 02527268 */ cpu->f[30] = cpu->f[1];
|
|
/* 0252726C */ Gambit_fn_02223320(cpu);
|
|
/* 02527270 */ cpu->f[31] = cpu->f[1];
|
|
/* 02527274 */ Gambit_fn_02223320(cpu);
|
|
/* 02527278 */ cpu->f[2] = cpu->f[30];
|
|
/* 0252727C */ cpu->r[9] = 0x100C0000u;
|
|
/* 02527280 */ cpu->f[3] = cpu->f[31];
|
|
/* 02527284 */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 02527288 */ cpu->f[4] = cpu->f[1];
|
|
/* 0252728C */ _t64 = cpu->r[9] + 0x00002A10u;
|
|
/* 0252728C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t64);
|
|
/* 02527290 */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 02527294 */ cpu->r[5] = cpu->r[1] + 0x00000020u;
|
|
/* 02527298 */ Gambit_fn_021BD594(cpu);
|
|
/* 0252729C */ cpu->r[11] = 0x100C0000u;
|
|
/* 025272A0 */ _t65 = cpu->r[11] + 0x00002A14u;
|
|
/* 025272A0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t65);
|
|
/* 025272A4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[11]);
|
|
/* 025272A8 */ _t66 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 025272A8 */ _t67 = _t66 & 0x00000001u;
|
|
/* 025272A8 */ if (_t67) goto L_025272CC; else goto L_025272AC;
|
|
L_025272AC: ; // 0x25272ac
|
|
/* 025272AC */ cpu->r[10] = 0x100C0000u;
|
|
/* 025272B0 */ _t68 = cpu->r[10] + 0x00002870u;
|
|
/* 025272B0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t68);
|
|
/* 025272B4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[12]);
|
|
/* 025272B8 */ _t69 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 025272B8 */ _t70 = _t69 & 0x00000001u;
|
|
/* 025272B8 */ if (_t70) goto L_025272CC; else goto L_025272BC;
|
|
L_025272BC: ; // 0x25272bc
|
|
/* 025272BC */ cpu->r[5] = cpu->r[1] + 0x0000002Cu;
|
|
/* 025272C0 */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 025272C4 */ cpu->r[3] = cpu->r[31];
|
|
/* 025272C8 */ Gambit_fn_02526FCC(cpu);
|
|
L_025272CC: ; // 0x25272cc
|
|
/* 025272CC */ _t71 = cpu->r[1] + 0x0000003Cu;
|
|
/* 025272CC */ cpu->r[31] = rbrew_read32(cpu->mem, _t71);
|
|
/* 025272D0 */ _t72 = cpu->r[1] + 0x00000058u;
|
|
/* 025272D0 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t72);
|
|
/* 025272D4 */ _t73 = cpu->r[1] + 0x00000048u;
|
|
/* 025272D4 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t73);
|
|
/* 025272D8 */ _t74 = cpu->r[1] + 0x00000050u;
|
|
/* 025272D8 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t74);
|
|
/* 025272DC */ _t75 = cpu->r[1] + 0x00000040u;
|
|
/* 025272DC */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t75);
|
|
/* 025272E0 */ _t76 = cpu->r[1] + 0x00000038u;
|
|
/* 025272E0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t76);
|
|
/* 025272E4 */ _t77 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 025272E4 */ _t78 = _t77 & 0x00000001u;
|
|
/* 025272E4 */ if (_t78) goto L_025272E8; // else: addr-0 trap, fall-through
|
|
L_025272E8: ; // 0x25272e8
|
|
/* 025272E8 */ _t79 = cpu->r[1] + 0x00000064u;
|
|
/* 025272E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t79);
|
|
/* 025272EC */ cpu->lr = cpu->r[0];
|
|
/* 025272F0 */ cpu->r[1] = cpu->r[1] + 0x00000060u;
|
|
/* 025272F4 */ return;
|
|
}
|
|
|
|
// fn_025272F8 @ 0x25272f8
|
|
void Gambit_fn_025272F8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65;
|
|
|
|
L_025272F8: ; // 0x25272f8
|
|
/* 025272F8 */ cpu->r[0] = cpu->lr;
|
|
/* 025272FC */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 025272FC */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 02527300 */ cpu->r[9] = 0x100C0000u;
|
|
/* 02527304 */ _t1 = cpu->r[1] + 0xFFFFFF78u;
|
|
/* 02527304 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 02527304 */ cpu->r[1] = _t1;
|
|
/* 02527308 */ _t2 = cpu->r[9] + 0x00002A0Cu;
|
|
/* 02527308 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 0252730C */ _t3 = cpu->r[3] + 0x000002BCu;
|
|
/* 0252730C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 02527310 */ cpu->r[7] = 0x100C0000u;
|
|
/* 02527314 */ cpu->f[7] = cpu->f[9] + cpu->f[0];
|
|
/* 02527318 */ _t4 = cpu->r[7] + 0x0000286Cu;
|
|
/* 02527318 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 0252731C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[7], cpu->f[13]);
|
|
/* 02527320 */ cpu->f[8] = cpu->f[7];
|
|
/* 02527324 */ _t5 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02527324 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02527324 */ if (_t6) goto L_02527328; else goto L_0252733C;
|
|
L_02527328: ; // 0x2527328
|
|
/* 02527328 */ _t7 = cpu->r[3] + 0x000002BCu;
|
|
/* 02527328 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[8]);
|
|
/* 0252732C */ _t8 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0252732C */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02527330 */ cpu->lr = cpu->r[0];
|
|
/* 02527334 */ cpu->r[1] = cpu->r[1] + 0x00000088u;
|
|
/* 02527338 */ return;
|
|
L_0252733C: ; // 0x252733c
|
|
/* 0252733C */ cpu->r[12] = 0x100C0000u;
|
|
/* 02527340 */ /* nop */
|
|
/* 02527344 */ cpu->r[9] = cpu->r[1] + 0x0000007Cu;
|
|
/* 02527348 */ _t9 = cpu->r[12] + 0x00002A24u;
|
|
/* 02527348 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 0252734C */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 0252734C */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 02527350 */ /* nop */
|
|
/* 02527354 */ _t11 = cpu->r[3] + 0x00000068u;
|
|
/* 02527354 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 02527358 */ /* nop */
|
|
/* 0252735C */ _t12 = cpu->r[1] + 0x00000058u;
|
|
/* 0252735C */ cpu->r[7] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02527360 */ _t13 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02527360 */ cpu->r[8] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02527364 */ _t14 = cpu->r[1] + 0x00000070u;
|
|
/* 02527364 */ rbrew_write32(cpu->mem, _t14, cpu->r[7]);
|
|
/* 02527368 */ cpu->f[12] = cpu->f[0] * cpu->f[12];
|
|
/* 0252736C */ _t15 = cpu->r[1] + 0x00000074u;
|
|
/* 0252736C */ rbrew_write32(cpu->mem, _t15, cpu->r[8]);
|
|
/* 02527370 */ /* nop */
|
|
/* 02527374 */ /* nop */
|
|
/* 02527378 */ _t16 = cpu->r[1] + 0x00000060u;
|
|
/* 02527378 */ rbrew_write_f32(cpu->mem, _t16, cpu->f[12]);
|
|
/* 0252737C */ _t17 = cpu->r[1] + 0x00000060u;
|
|
/* 0252737C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02527380 */ _t18 = cpu->r[3] + 0x00000080u;
|
|
/* 02527380 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 02527384 */ /* nop */
|
|
/* 02527388 */ _t19 = cpu->r[1] + 0x00000078u;
|
|
/* 02527388 */ rbrew_write32(cpu->mem, _t19, cpu->r[0]);
|
|
/* 0252738C */ _t20 = cpu->r[1] + 0x00000078u;
|
|
/* 0252738C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 02527390 */ cpu->f[0] = cpu->f[7] - cpu->f[13];
|
|
/* 02527394 */ cpu->r[7] = 0x100C0000u;
|
|
/* 02527398 */ /* nop */
|
|
/* 0252739C */ _t21 = cpu->r[1] + 0x00000064u;
|
|
/* 0252739C */ cpu->r[11] = rbrew_read32(cpu->mem, _t21);
|
|
/* 025273A0 */ cpu->f[7] = cpu->f[9] + cpu->f[11];
|
|
/* 025273A4 */ _t22 = cpu->r[7] + 0x000029F0u;
|
|
/* 025273A4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 025273A8 */ _t23 = cpu->r[1] + 0x00000068u;
|
|
/* 025273A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 025273AC */ _t24 = cpu->r[1] + 0x0000006Cu;
|
|
/* 025273AC */ rbrew_write_f32(cpu->mem, _t24, cpu->f[7]);
|
|
/* 025273B0 */ _t25 = cpu->r[1] + 0x0000006Cu;
|
|
/* 025273B0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t25);
|
|
/* 025273B4 */ _t26 = cpu->r[1] + 0x00000080u;
|
|
/* 025273B4 */ rbrew_write32(cpu->mem, _t26, cpu->r[0]);
|
|
/* 025273B8 */ _t27 = cpu->r[1] + 0x00000046u;
|
|
/* 025273B8 */ cpu->r[0] = rbrew_read16(cpu->mem, _t27);
|
|
/* 025273BC */ _t28 = cpu->r[1] + 0x0000003Cu;
|
|
/* 025273BC */ rbrew_write_f32(cpu->mem, _t28, cpu->f[10]);
|
|
/* 025273C0 */ cpu->r[8] = 0x101F0000u;
|
|
/* 025273C4 */ _t29 = cpu->r[3] + 0x000002BCu;
|
|
/* 025273C4 */ rbrew_write_f32(cpu->mem, _t29, cpu->f[0]);
|
|
/* 025273C8 */ _t30 = cpu->r[8] + 0x00006350u;
|
|
/* 025273C8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t30);
|
|
/* 025273C8 */ cpu->r[8] = _t30;
|
|
/* 025273CC */ cpu->r[10] = 0x100C0000u;
|
|
/* 025273D0 */ _t31 = cpu->r[1] + 0x0000007Cu;
|
|
/* 025273D0 */ rbrew_write32(cpu->mem, _t31, cpu->r[11]);
|
|
/* 025273D4 */ _t32 = cpu->r[1] + 0x00000084u;
|
|
/* 025273D4 */ rbrew_write32(cpu->mem, _t32, cpu->r[6]);
|
|
/* 025273D8 */ cpu->r[11] = 0x100C0000u;
|
|
/* 025273DC */ _t33 = cpu->r[1] + 0x0000004Cu;
|
|
/* 025273DC */ rbrew_write32(cpu->mem, _t33, cpu->r[9]);
|
|
/* 025273E0 */ cpu->r[9] = 0x100C0000u;
|
|
/* 025273E4 */ _t34 = cpu->r[10] + 0x00002870u;
|
|
/* 025273E4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 025273E8 */ cpu->r[10] = 0x00000003u;
|
|
/* 025273EC */ _t35 = cpu->r[8] + 0x00000004u;
|
|
/* 025273EC */ cpu->r[7] = rbrew_read32(cpu->mem, _t35);
|
|
/* 025273F0 */ _t36 = rbrew_rlwinm(cpu->r[10], 0x00000009u, 0x00000010u, 0x00000016u);
|
|
/* 025273F0 */ _t37 = cpu->r[0] & 0xFFFF01FFu;
|
|
/* 025273F0 */ cpu->r[0] = _t37 | _t36;
|
|
/* 025273F4 */ _t38 = cpu->r[9] + 0x00002A28u;
|
|
/* 025273F4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 025273F8 */ cpu->r[10] = 0x100C0000u;
|
|
/* 025273FC */ _t39 = cpu->r[1] + 0x0000001Cu;
|
|
/* 025273FC */ rbrew_write_f32(cpu->mem, _t39, cpu->f[13]);
|
|
/* 02527400 */ cpu->r[9] = 0x100C0000u;
|
|
/* 02527404 */ _t40 = cpu->r[10] + 0x00002A2Cu;
|
|
/* 02527404 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 02527408 */ _t41 = cpu->r[11] + 0x0000287Cu;
|
|
/* 02527408 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 0252740C */ cpu->r[6] = 0x100C0000u;
|
|
/* 02527410 */ _t42 = cpu->r[1] + 0x00000018u;
|
|
/* 02527410 */ rbrew_write_f32(cpu->mem, _t42, cpu->f[13]);
|
|
/* 02527414 */ _t43 = cpu->r[1] + 0x00000010u;
|
|
/* 02527414 */ rbrew_write_f32(cpu->mem, _t43, cpu->f[11]);
|
|
/* 02527418 */ cpu->r[10] = 0x100C0000u;
|
|
/* 0252741C */ _t44 = cpu->r[8] + 0x00000008u;
|
|
/* 0252741C */ cpu->r[8] = rbrew_read32(cpu->mem, _t44);
|
|
/* 02527420 */ cpu->r[12] = 0x00000000u;
|
|
/* 02527424 */ _t45 = cpu->r[10] + 0x00002A38u;
|
|
/* 02527424 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t45);
|
|
/* 02527428 */ _t46 = cpu->r[1] + 0x00000050u;
|
|
/* 02527428 */ rbrew_write32(cpu->mem, _t46, cpu->r[7]);
|
|
/* 0252742C */ _t47 = cpu->r[1] + 0x00000040u;
|
|
/* 0252742C */ rbrew_write32(cpu->mem, _t47, cpu->r[3]);
|
|
/* 02527430 */ _t48 = cpu->r[1] + 0x00000038u;
|
|
/* 02527430 */ rbrew_write32(cpu->mem, _t48, cpu->r[12]);
|
|
/* 02527434 */ _t49 = cpu->r[1] + 0x00000030u;
|
|
/* 02527434 */ rbrew_write_f32(cpu->mem, _t49, cpu->f[11]);
|
|
/* 02527438 */ cpu->r[11] = 0x00000001u;
|
|
/* 0252743C */ _t50 = cpu->r[1] + 0x00000054u;
|
|
/* 0252743C */ rbrew_write32(cpu->mem, _t50, cpu->r[8]);
|
|
/* 02527440 */ _t51 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02527440 */ rbrew_write32(cpu->mem, _t51, cpu->r[11]);
|
|
/* 02527444 */ _t52 = cpu->r[1] + 0x00000046u;
|
|
/* 02527444 */ rbrew_write16(cpu->mem, _t52, (uint16_t)cpu->r[0]);
|
|
/* 02527448 */ _t53 = cpu->r[1] + 0x00000047u;
|
|
/* 02527448 */ rbrew_write8(cpu->mem, _t53, (uint8_t)cpu->r[12]);
|
|
/* 0252744C */ _t54 = cpu->r[1] + 0x00000044u;
|
|
/* 0252744C */ rbrew_write16(cpu->mem, _t54, (uint16_t)cpu->r[12]);
|
|
/* 02527450 */ _t55 = cpu->r[1] + 0x00000034u;
|
|
/* 02527450 */ rbrew_write32(cpu->mem, _t55, cpu->r[12]);
|
|
/* 02527454 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02527458 */ _t56 = cpu->r[1] + 0x00000014u;
|
|
/* 02527458 */ rbrew_write_f32(cpu->mem, _t56, cpu->f[0]);
|
|
/* 0252745C */ _t57 = cpu->r[9] + 0x000029D8u;
|
|
/* 0252745C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t57);
|
|
/* 02527460 */ _t58 = cpu->r[6] + 0x00002A30u;
|
|
/* 02527460 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 02527464 */ _t59 = cpu->r[1] + 0x00000020u;
|
|
/* 02527464 */ rbrew_write_f32(cpu->mem, _t59, cpu->f[12]);
|
|
/* 02527468 */ _t60 = cpu->r[1] + 0x00000028u;
|
|
/* 02527468 */ rbrew_write_f32(cpu->mem, _t60, cpu->f[9]);
|
|
/* 0252746C */ cpu->r[6] = 0x100C0000u;
|
|
/* 02527470 */ _t61 = cpu->r[1] + 0x00000024u;
|
|
/* 02527470 */ rbrew_write_f32(cpu->mem, _t61, cpu->f[8]);
|
|
/* 02527474 */ _t62 = cpu->r[6] + 0x00002A34u;
|
|
/* 02527474 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t62);
|
|
/* 02527478 */ _t63 = cpu->r[1] + 0x00000048u;
|
|
/* 02527478 */ rbrew_write8(cpu->mem, _t63, (uint8_t)cpu->r[11]);
|
|
/* 0252747C */ _t64 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0252747C */ rbrew_write_f32(cpu->mem, _t64, cpu->f[7]);
|
|
/* 02527480 */ Gambit_fn_0252895C(cpu);
|
|
/* 02527484 */ _t65 = cpu->r[1] + 0x0000008Cu;
|
|
/* 02527484 */ cpu->r[0] = rbrew_read32(cpu->mem, _t65);
|
|
/* 02527488 */ cpu->lr = cpu->r[0];
|
|
/* 0252748C */ cpu->r[1] = cpu->r[1] + 0x00000088u;
|
|
/* 02527490 */ return;
|
|
}
|
|
|
|
// fn_02527304 @ 0x2527304
|
|
void Gambit_fn_02527304(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64;
|
|
|
|
L_02527304: ; // 0x2527304
|
|
/* 02527304 */ _t0 = cpu->r[1] + 0xFFFFFF78u;
|
|
/* 02527304 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02527304 */ cpu->r[1] = _t0;
|
|
/* 02527308 */ _t1 = cpu->r[9] + 0x00002A0Cu;
|
|
/* 02527308 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 0252730C */ _t2 = cpu->r[3] + 0x000002BCu;
|
|
/* 0252730C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 02527310 */ cpu->r[7] = 0x100C0000u;
|
|
/* 02527314 */ cpu->f[7] = cpu->f[9] + cpu->f[0];
|
|
/* 02527318 */ _t3 = cpu->r[7] + 0x0000286Cu;
|
|
/* 02527318 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 0252731C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[7], cpu->f[13]);
|
|
/* 02527320 */ cpu->f[8] = cpu->f[7];
|
|
/* 02527324 */ _t4 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02527324 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02527324 */ if (_t5) goto L_02527328; else goto L_0252733C;
|
|
L_02527328: ; // 0x2527328
|
|
/* 02527328 */ _t6 = cpu->r[3] + 0x000002BCu;
|
|
/* 02527328 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[8]);
|
|
/* 0252732C */ _t7 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0252732C */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02527330 */ cpu->lr = cpu->r[0];
|
|
/* 02527334 */ cpu->r[1] = cpu->r[1] + 0x00000088u;
|
|
/* 02527338 */ return;
|
|
L_0252733C: ; // 0x252733c
|
|
/* 0252733C */ cpu->r[12] = 0x100C0000u;
|
|
/* 02527340 */ /* nop */
|
|
/* 02527344 */ cpu->r[9] = cpu->r[1] + 0x0000007Cu;
|
|
/* 02527348 */ _t8 = cpu->r[12] + 0x00002A24u;
|
|
/* 02527348 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 0252734C */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 0252734C */ rbrew_write32(cpu->mem, _t9, cpu->r[9]);
|
|
/* 02527350 */ /* nop */
|
|
/* 02527354 */ _t10 = cpu->r[3] + 0x00000068u;
|
|
/* 02527354 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 02527358 */ /* nop */
|
|
/* 0252735C */ _t11 = cpu->r[1] + 0x00000058u;
|
|
/* 0252735C */ cpu->r[7] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02527360 */ _t12 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02527360 */ cpu->r[8] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02527364 */ _t13 = cpu->r[1] + 0x00000070u;
|
|
/* 02527364 */ rbrew_write32(cpu->mem, _t13, cpu->r[7]);
|
|
/* 02527368 */ cpu->f[12] = cpu->f[0] * cpu->f[12];
|
|
/* 0252736C */ _t14 = cpu->r[1] + 0x00000074u;
|
|
/* 0252736C */ rbrew_write32(cpu->mem, _t14, cpu->r[8]);
|
|
/* 02527370 */ /* nop */
|
|
/* 02527374 */ /* nop */
|
|
/* 02527378 */ _t15 = cpu->r[1] + 0x00000060u;
|
|
/* 02527378 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[12]);
|
|
/* 0252737C */ _t16 = cpu->r[1] + 0x00000060u;
|
|
/* 0252737C */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02527380 */ _t17 = cpu->r[3] + 0x00000080u;
|
|
/* 02527380 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 02527384 */ /* nop */
|
|
/* 02527388 */ _t18 = cpu->r[1] + 0x00000078u;
|
|
/* 02527388 */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
/* 0252738C */ _t19 = cpu->r[1] + 0x00000078u;
|
|
/* 0252738C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 02527390 */ cpu->f[0] = cpu->f[7] - cpu->f[13];
|
|
/* 02527394 */ cpu->r[7] = 0x100C0000u;
|
|
/* 02527398 */ /* nop */
|
|
/* 0252739C */ _t20 = cpu->r[1] + 0x00000064u;
|
|
/* 0252739C */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
/* 025273A0 */ cpu->f[7] = cpu->f[9] + cpu->f[11];
|
|
/* 025273A4 */ _t21 = cpu->r[7] + 0x000029F0u;
|
|
/* 025273A4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 025273A8 */ _t22 = cpu->r[1] + 0x00000068u;
|
|
/* 025273A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 025273AC */ _t23 = cpu->r[1] + 0x0000006Cu;
|
|
/* 025273AC */ rbrew_write_f32(cpu->mem, _t23, cpu->f[7]);
|
|
/* 025273B0 */ _t24 = cpu->r[1] + 0x0000006Cu;
|
|
/* 025273B0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t24);
|
|
/* 025273B4 */ _t25 = cpu->r[1] + 0x00000080u;
|
|
/* 025273B4 */ rbrew_write32(cpu->mem, _t25, cpu->r[0]);
|
|
/* 025273B8 */ _t26 = cpu->r[1] + 0x00000046u;
|
|
/* 025273B8 */ cpu->r[0] = rbrew_read16(cpu->mem, _t26);
|
|
/* 025273BC */ _t27 = cpu->r[1] + 0x0000003Cu;
|
|
/* 025273BC */ rbrew_write_f32(cpu->mem, _t27, cpu->f[10]);
|
|
/* 025273C0 */ cpu->r[8] = 0x101F0000u;
|
|
/* 025273C4 */ _t28 = cpu->r[3] + 0x000002BCu;
|
|
/* 025273C4 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[0]);
|
|
/* 025273C8 */ _t29 = cpu->r[8] + 0x00006350u;
|
|
/* 025273C8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t29);
|
|
/* 025273C8 */ cpu->r[8] = _t29;
|
|
/* 025273CC */ cpu->r[10] = 0x100C0000u;
|
|
/* 025273D0 */ _t30 = cpu->r[1] + 0x0000007Cu;
|
|
/* 025273D0 */ rbrew_write32(cpu->mem, _t30, cpu->r[11]);
|
|
/* 025273D4 */ _t31 = cpu->r[1] + 0x00000084u;
|
|
/* 025273D4 */ rbrew_write32(cpu->mem, _t31, cpu->r[6]);
|
|
/* 025273D8 */ cpu->r[11] = 0x100C0000u;
|
|
/* 025273DC */ _t32 = cpu->r[1] + 0x0000004Cu;
|
|
/* 025273DC */ rbrew_write32(cpu->mem, _t32, cpu->r[9]);
|
|
/* 025273E0 */ cpu->r[9] = 0x100C0000u;
|
|
/* 025273E4 */ _t33 = cpu->r[10] + 0x00002870u;
|
|
/* 025273E4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 025273E8 */ cpu->r[10] = 0x00000003u;
|
|
/* 025273EC */ _t34 = cpu->r[8] + 0x00000004u;
|
|
/* 025273EC */ cpu->r[7] = rbrew_read32(cpu->mem, _t34);
|
|
/* 025273F0 */ _t35 = rbrew_rlwinm(cpu->r[10], 0x00000009u, 0x00000010u, 0x00000016u);
|
|
/* 025273F0 */ _t36 = cpu->r[0] & 0xFFFF01FFu;
|
|
/* 025273F0 */ cpu->r[0] = _t36 | _t35;
|
|
/* 025273F4 */ _t37 = cpu->r[9] + 0x00002A28u;
|
|
/* 025273F4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 025273F8 */ cpu->r[10] = 0x100C0000u;
|
|
/* 025273FC */ _t38 = cpu->r[1] + 0x0000001Cu;
|
|
/* 025273FC */ rbrew_write_f32(cpu->mem, _t38, cpu->f[13]);
|
|
/* 02527400 */ cpu->r[9] = 0x100C0000u;
|
|
/* 02527404 */ _t39 = cpu->r[10] + 0x00002A2Cu;
|
|
/* 02527404 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t39);
|
|
/* 02527408 */ _t40 = cpu->r[11] + 0x0000287Cu;
|
|
/* 02527408 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 0252740C */ cpu->r[6] = 0x100C0000u;
|
|
/* 02527410 */ _t41 = cpu->r[1] + 0x00000018u;
|
|
/* 02527410 */ rbrew_write_f32(cpu->mem, _t41, cpu->f[13]);
|
|
/* 02527414 */ _t42 = cpu->r[1] + 0x00000010u;
|
|
/* 02527414 */ rbrew_write_f32(cpu->mem, _t42, cpu->f[11]);
|
|
/* 02527418 */ cpu->r[10] = 0x100C0000u;
|
|
/* 0252741C */ _t43 = cpu->r[8] + 0x00000008u;
|
|
/* 0252741C */ cpu->r[8] = rbrew_read32(cpu->mem, _t43);
|
|
/* 02527420 */ cpu->r[12] = 0x00000000u;
|
|
/* 02527424 */ _t44 = cpu->r[10] + 0x00002A38u;
|
|
/* 02527424 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 02527428 */ _t45 = cpu->r[1] + 0x00000050u;
|
|
/* 02527428 */ rbrew_write32(cpu->mem, _t45, cpu->r[7]);
|
|
/* 0252742C */ _t46 = cpu->r[1] + 0x00000040u;
|
|
/* 0252742C */ rbrew_write32(cpu->mem, _t46, cpu->r[3]);
|
|
/* 02527430 */ _t47 = cpu->r[1] + 0x00000038u;
|
|
/* 02527430 */ rbrew_write32(cpu->mem, _t47, cpu->r[12]);
|
|
/* 02527434 */ _t48 = cpu->r[1] + 0x00000030u;
|
|
/* 02527434 */ rbrew_write_f32(cpu->mem, _t48, cpu->f[11]);
|
|
/* 02527438 */ cpu->r[11] = 0x00000001u;
|
|
/* 0252743C */ _t49 = cpu->r[1] + 0x00000054u;
|
|
/* 0252743C */ rbrew_write32(cpu->mem, _t49, cpu->r[8]);
|
|
/* 02527440 */ _t50 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02527440 */ rbrew_write32(cpu->mem, _t50, cpu->r[11]);
|
|
/* 02527444 */ _t51 = cpu->r[1] + 0x00000046u;
|
|
/* 02527444 */ rbrew_write16(cpu->mem, _t51, (uint16_t)cpu->r[0]);
|
|
/* 02527448 */ _t52 = cpu->r[1] + 0x00000047u;
|
|
/* 02527448 */ rbrew_write8(cpu->mem, _t52, (uint8_t)cpu->r[12]);
|
|
/* 0252744C */ _t53 = cpu->r[1] + 0x00000044u;
|
|
/* 0252744C */ rbrew_write16(cpu->mem, _t53, (uint16_t)cpu->r[12]);
|
|
/* 02527450 */ _t54 = cpu->r[1] + 0x00000034u;
|
|
/* 02527450 */ rbrew_write32(cpu->mem, _t54, cpu->r[12]);
|
|
/* 02527454 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02527458 */ _t55 = cpu->r[1] + 0x00000014u;
|
|
/* 02527458 */ rbrew_write_f32(cpu->mem, _t55, cpu->f[0]);
|
|
/* 0252745C */ _t56 = cpu->r[9] + 0x000029D8u;
|
|
/* 0252745C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 02527460 */ _t57 = cpu->r[6] + 0x00002A30u;
|
|
/* 02527460 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t57);
|
|
/* 02527464 */ _t58 = cpu->r[1] + 0x00000020u;
|
|
/* 02527464 */ rbrew_write_f32(cpu->mem, _t58, cpu->f[12]);
|
|
/* 02527468 */ _t59 = cpu->r[1] + 0x00000028u;
|
|
/* 02527468 */ rbrew_write_f32(cpu->mem, _t59, cpu->f[9]);
|
|
/* 0252746C */ cpu->r[6] = 0x100C0000u;
|
|
/* 02527470 */ _t60 = cpu->r[1] + 0x00000024u;
|
|
/* 02527470 */ rbrew_write_f32(cpu->mem, _t60, cpu->f[8]);
|
|
/* 02527474 */ _t61 = cpu->r[6] + 0x00002A34u;
|
|
/* 02527474 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t61);
|
|
/* 02527478 */ _t62 = cpu->r[1] + 0x00000048u;
|
|
/* 02527478 */ rbrew_write8(cpu->mem, _t62, (uint8_t)cpu->r[11]);
|
|
/* 0252747C */ _t63 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0252747C */ rbrew_write_f32(cpu->mem, _t63, cpu->f[7]);
|
|
/* 02527480 */ Gambit_fn_0252895C(cpu);
|
|
/* 02527484 */ _t64 = cpu->r[1] + 0x0000008Cu;
|
|
/* 02527484 */ cpu->r[0] = rbrew_read32(cpu->mem, _t64);
|
|
/* 02527488 */ cpu->lr = cpu->r[0];
|
|
/* 0252748C */ cpu->r[1] = cpu->r[1] + 0x00000088u;
|
|
/* 02527490 */ return;
|
|
}
|
|
|
|
// fn_02527494 @ 0x2527494
|
|
void Gambit_fn_02527494(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_02527494: ; // 0x2527494
|
|
/* 02527494 */ cpu->r[0] = cpu->lr;
|
|
/* 02527498 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02527498 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02527498 */ cpu->r[1] = _t0;
|
|
/* 0252749C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252749C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 025274A0 */ cpu->r[31] = cpu->r[3];
|
|
/* 025274A4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 025274A4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 025274A8 */ Gambit_fn_025264A8(cpu);
|
|
/* 025274AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 025274B0 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025274B0 */ _t4 = _t3 & 0x00000001u;
|
|
/* 025274B0 */ if (_t4) goto L_025274BC; else goto L_025274B4;
|
|
L_025274B4: ; // 0x25274b4
|
|
/* 025274B4 */ cpu->r[3] = cpu->r[31];
|
|
/* 025274B8 */ Gambit_fn_02526F38(cpu);
|
|
L_025274BC: ; // 0x25274bc
|
|
/* 025274BC */ cpu->r[3] = cpu->r[31];
|
|
/* 025274C0 */ Gambit_fn_02526FA0(cpu);
|
|
/* 025274C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 025274C8 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025274C8 */ _t6 = _t5 & 0x00000001u;
|
|
/* 025274C8 */ if (_t6) goto L_025274D4; else goto L_025274CC;
|
|
L_025274CC: ; // 0x25274cc
|
|
/* 025274CC */ cpu->r[3] = cpu->r[31];
|
|
/* 025274D0 */ Gambit_fn_025270E4(cpu);
|
|
L_025274D4: ; // 0x25274d4
|
|
/* 025274D4 */ _t7 = cpu->r[31] + 0x000002B8u;
|
|
/* 025274D4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 025274D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 025274DC */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025274DC */ _t9 = _t8 & 0x00000001u;
|
|
/* 025274DC */ if (_t9) goto L_02527524; else goto L_025274E0;
|
|
L_025274E0: ; // 0x25274e0
|
|
/* 025274E0 */ cpu->r[3] = cpu->r[31];
|
|
/* 025274E4 */ Gambit_fn_025264A8(cpu);
|
|
/* 025274E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 025274EC */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025274EC */ _t11 = _t10 & 0x00000001u;
|
|
/* 025274EC */ if (_t11) goto L_02527524; else goto L_025274F0;
|
|
L_025274F0: ; // 0x25274f0
|
|
/* 025274F0 */ _t12 = cpu->r[31] + 0x00000134u;
|
|
/* 025274F0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 025274F4 */ cpu->r[0] = 0x00000000u;
|
|
/* 025274F8 */ cpu->r[5] = 0x101F0000u;
|
|
/* 025274FC */ cpu->r[4] = cpu->r[31] + 0x00000078u;
|
|
/* 02527500 */ _t13 = cpu->r[12] + 0x000001C8u;
|
|
/* 02527500 */ rbrew_write8(cpu->mem, _t13, (uint8_t)cpu->r[0]);
|
|
/* 02527504 */ _t14 = cpu->r[31] + 0x000002B8u;
|
|
/* 02527504 */ cpu->r[3] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02527508 */ cpu->r[5] = cpu->r[5] + 0x00006350u;
|
|
/* 0252750C */ Gambit_fn_02390DE4(cpu);
|
|
/* 02527510 */ _t15 = cpu->r[31] + 0x00000134u;
|
|
/* 02527510 */ cpu->r[10] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02527514 */ cpu->r[12] = 0x00000001u;
|
|
/* 02527518 */ cpu->r[3] = cpu->r[31];
|
|
/* 0252751C */ _t16 = cpu->r[10] + 0x000001C8u;
|
|
/* 0252751C */ rbrew_write8(cpu->mem, _t16, (uint8_t)cpu->r[12]);
|
|
/* 02527520 */ Gambit_fn_025272F8(cpu);
|
|
L_02527524: ; // 0x2527524
|
|
/* 02527524 */ cpu->r[3] = cpu->r[31];
|
|
/* 02527528 */ Gambit_fn_024F606C(cpu);
|
|
/* 0252752C */ cpu->r[3] = cpu->r[31];
|
|
/* 02527530 */ Gambit_fn_024F607C(cpu);
|
|
/* 02527534 */ _t17 = cpu->r[1] + 0x00000014u;
|
|
/* 02527534 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02527538 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02527538 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0252753C */ cpu->lr = cpu->r[0];
|
|
/* 02527540 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02527544 */ return;
|
|
}
|
|
|
|
// fn_02527498 @ 0x2527498
|
|
void Gambit_fn_02527498(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_02527498: ; // 0x2527498
|
|
/* 02527498 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02527498 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02527498 */ cpu->r[1] = _t0;
|
|
/* 0252749C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252749C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 025274A0 */ cpu->r[31] = cpu->r[3];
|
|
/* 025274A4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 025274A4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 025274A8 */ Gambit_fn_025264A8(cpu);
|
|
/* 025274AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 025274B0 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025274B0 */ _t4 = _t3 & 0x00000001u;
|
|
/* 025274B0 */ if (_t4) goto L_025274BC; else goto L_025274B4;
|
|
L_025274B4: ; // 0x25274b4
|
|
/* 025274B4 */ cpu->r[3] = cpu->r[31];
|
|
/* 025274B8 */ Gambit_fn_02526F38(cpu);
|
|
L_025274BC: ; // 0x25274bc
|
|
/* 025274BC */ cpu->r[3] = cpu->r[31];
|
|
/* 025274C0 */ Gambit_fn_02526FA0(cpu);
|
|
/* 025274C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 025274C8 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025274C8 */ _t6 = _t5 & 0x00000001u;
|
|
/* 025274C8 */ if (_t6) goto L_025274D4; else goto L_025274CC;
|
|
L_025274CC: ; // 0x25274cc
|
|
/* 025274CC */ cpu->r[3] = cpu->r[31];
|
|
/* 025274D0 */ Gambit_fn_025270E4(cpu);
|
|
L_025274D4: ; // 0x25274d4
|
|
/* 025274D4 */ _t7 = cpu->r[31] + 0x000002B8u;
|
|
/* 025274D4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 025274D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 025274DC */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025274DC */ _t9 = _t8 & 0x00000001u;
|
|
/* 025274DC */ if (_t9) goto L_02527524; else goto L_025274E0;
|
|
L_025274E0: ; // 0x25274e0
|
|
/* 025274E0 */ cpu->r[3] = cpu->r[31];
|
|
/* 025274E4 */ Gambit_fn_025264A8(cpu);
|
|
/* 025274E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 025274EC */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025274EC */ _t11 = _t10 & 0x00000001u;
|
|
/* 025274EC */ if (_t11) goto L_02527524; else goto L_025274F0;
|
|
L_025274F0: ; // 0x25274f0
|
|
/* 025274F0 */ _t12 = cpu->r[31] + 0x00000134u;
|
|
/* 025274F0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 025274F4 */ cpu->r[0] = 0x00000000u;
|
|
/* 025274F8 */ cpu->r[5] = 0x101F0000u;
|
|
/* 025274FC */ cpu->r[4] = cpu->r[31] + 0x00000078u;
|
|
/* 02527500 */ _t13 = cpu->r[12] + 0x000001C8u;
|
|
/* 02527500 */ rbrew_write8(cpu->mem, _t13, (uint8_t)cpu->r[0]);
|
|
/* 02527504 */ _t14 = cpu->r[31] + 0x000002B8u;
|
|
/* 02527504 */ cpu->r[3] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02527508 */ cpu->r[5] = cpu->r[5] + 0x00006350u;
|
|
/* 0252750C */ Gambit_fn_02390DE4(cpu);
|
|
/* 02527510 */ _t15 = cpu->r[31] + 0x00000134u;
|
|
/* 02527510 */ cpu->r[10] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02527514 */ cpu->r[12] = 0x00000001u;
|
|
/* 02527518 */ cpu->r[3] = cpu->r[31];
|
|
/* 0252751C */ _t16 = cpu->r[10] + 0x000001C8u;
|
|
/* 0252751C */ rbrew_write8(cpu->mem, _t16, (uint8_t)cpu->r[12]);
|
|
/* 02527520 */ Gambit_fn_025272F8(cpu);
|
|
L_02527524: ; // 0x2527524
|
|
/* 02527524 */ cpu->r[3] = cpu->r[31];
|
|
/* 02527528 */ Gambit_fn_024F606C(cpu);
|
|
/* 0252752C */ cpu->r[3] = cpu->r[31];
|
|
/* 02527530 */ Gambit_fn_024F607C(cpu);
|
|
/* 02527534 */ _t17 = cpu->r[1] + 0x00000014u;
|
|
/* 02527534 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02527538 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02527538 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0252753C */ cpu->lr = cpu->r[0];
|
|
/* 02527540 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02527544 */ return;
|
|
}
|
|
|
|
// fn_02527548 @ 0x2527548
|
|
void Gambit_fn_02527548(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_02527548: ; // 0x2527548
|
|
/* 02527548 */ _t0 = cpu->r[3] + 0x000001BCu;
|
|
/* 02527548 */ cpu->r[12] = rbrew_read8(cpu->mem, _t0);
|
|
/* 0252754C */ /* nop */
|
|
/* 02527550 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000002u);
|
|
/* 02527554 */ cpu->r[0] = 0x00000001u;
|
|
/* 02527558 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02527558 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02527558 */ if (_t2) goto L_02527568; else goto L_0252755C;
|
|
L_0252755C: ; // 0x252755c
|
|
/* 0252755C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000003u);
|
|
/* 02527560 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02527560 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02527560 */ if (_t4) goto L_02527568; else goto L_02527564;
|
|
L_02527564: ; // 0x2527564
|
|
/* 02527564 */ cpu->r[0] = 0x00000000u;
|
|
L_02527568: ; // 0x2527568
|
|
/* 02527568 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 0252756C */ return;
|
|
}
|
|
|
|
// fn_02527570 @ 0x2527570
|
|
void Gambit_fn_02527570(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _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;
|
|
|
|
L_02527570: ; // 0x2527570
|
|
/* 02527570 */ cpu->r[0] = cpu->lr;
|
|
/* 02527574 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 02527574 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02527574 */ cpu->r[1] = _t0;
|
|
/* 02527578 */ _t1 = cpu->r[1] + 0x00000028u;
|
|
/* 02527578 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0252757C */ _t2 = cpu->r[1] + 0x00000024u;
|
|
/* 0252757C */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 02527580 */ _t3 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02527580 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 02527584 */ _t4 = cpu->r[1] + 0x00000034u;
|
|
/* 02527584 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02527588 */ cpu->r[29] = cpu->r[3];
|
|
/* 0252758C */ _t5 = cpu->r[29] + 0x000002B4u;
|
|
/* 0252758C */ cpu->r[9] = rbrew_read8(cpu->mem, _t5);
|
|
/* 02527590 */ cpu->r[31] = cpu->r[5];
|
|
/* 02527594 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02527598 */ cpu->r[30] = cpu->r[4];
|
|
/* 0252759C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252759C */ _t7 = _t6 & 0x00000001u;
|
|
/* 0252759C */ if (_t7) goto L_025275A8; else goto L_025275A0;
|
|
L_025275A0: ; // 0x25275a0
|
|
/* 025275A0 */ cpu->r[3] = cpu->r[29];
|
|
/* 025275A4 */ Gambit_fn_0252690C(cpu);
|
|
L_025275A8: ; // 0x25275a8
|
|
/* 025275A8 */ _t8 = cpu->r[29] + 0x0000022Cu;
|
|
/* 025275A8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t8);
|
|
/* 025275AC */ _t9 = cpu->r[29] + 0x00000224u;
|
|
/* 025275AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 025275B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], cpu->r[0]);
|
|
/* 025275B4 */ _t10 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 025275B4 */ _t11 = _t10 & 0x00000001u;
|
|
/* 025275B4 */ if (_t11) goto L_025275B8; else goto L_025277C8;
|
|
L_025275B8: ; // 0x25275b8
|
|
/* 025275B8 */ _t12 = cpu->r[29] + 0x0000007Cu;
|
|
/* 025275B8 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 025275BC */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 025275C0 */ cpu->r[4] = cpu->r[30];
|
|
/* 025275C4 */ Gambit_fn_0239F80C(cpu);
|
|
/* 025275C8 */ _t13 = cpu->r[29] + 0x000002A8u;
|
|
/* 025275C8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t13);
|
|
/* 025275CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 025275D0 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025275D0 */ _t15 = _t14 & 0x00000001u;
|
|
/* 025275D0 */ if (_t15) goto L_02527608; else goto L_025275D4;
|
|
L_025275D4: ; // 0x25275d4
|
|
/* 025275D4 */ _t16 = cpu->r[29] + 0x000002ACu;
|
|
/* 025275D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 025275D8 */ _t17 = cpu->r[12] + 0x0000000Cu;
|
|
/* 025275D8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t17);
|
|
/* 025275DC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[0]);
|
|
/* 025275E0 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025275E0 */ _t19 = _t18 & 0x00000001u;
|
|
/* 025275E0 */ if (_t19) goto L_025275E4; else goto L_02527608;
|
|
L_025275E4: ; // 0x25275e4
|
|
/* 025275E4 */ _t20 = cpu->r[12] + 0x0000000Cu;
|
|
/* 025275E4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t20);
|
|
/* 025275E8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[0]);
|
|
/* 025275EC */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025275EC */ _t22 = _t21 & 0x00000001u;
|
|
/* 025275EC */ if (_t22) goto L_025275F0; else goto L_02527630;
|
|
L_025275F0: ; // 0x25275f0
|
|
/* 025275F0 */ _t23 = cpu->r[12] + 0x0000000Cu;
|
|
/* 025275F0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t23);
|
|
/* 025275F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 025275F8 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025275F8 */ _t25 = _t24 & 0x00000001u;
|
|
/* 025275F8 */ if (_t25) goto L_02527630; else goto L_025275FC;
|
|
L_025275FC: ; // 0x25275fc
|
|
/* 025275FC */ _t26 = cpu->r[12] + 0x0000004Cu;
|
|
/* 025275FC */ cpu->r[11] = rbrew_read8(cpu->mem, _t26);
|
|
/* 02527600 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02527604 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02527604 */ _t28 = _t27 & 0x00000001u;
|
|
/* 02527604 */ if (_t28) goto L_02527630; else goto L_02527608;
|
|
L_02527608: ; // 0x2527608
|
|
/* 02527608 */ cpu->r[5] = 0x100C0000u;
|
|
/* 0252760C */ _t29 = cpu->r[29] + 0x00000030u;
|
|
/* 0252760C */ cpu->r[3] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02527610 */ cpu->r[4] = cpu->r[29] + 0x000002A8u;
|
|
/* 02527614 */ cpu->r[5] = cpu->r[5] + 0x00002A3Cu;
|
|
/* 02527618 */ cpu->r[6] = 0x00000000u;
|
|
/* 0252761C */ Gambit_fn_027B72F0(cpu);
|
|
/* 02527620 */ _t30 = cpu->r[29] + 0x000002A8u;
|
|
/* 02527620 */ cpu->r[12] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02527624 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02527628 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02527628 */ _t32 = _t31 & 0x00000001u;
|
|
/* 02527628 */ if (_t32) goto L_0252768C; else goto L_0252762C;
|
|
L_0252762C: ; // 0x252762c
|
|
/* 0252762C */ _t33 = cpu->r[29] + 0x000002ACu;
|
|
/* 0252762C */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
L_02527630: ; // 0x2527630
|
|
/* 02527630 */ _t34 = cpu->r[12] + 0x0000000Cu;
|
|
/* 02527630 */ cpu->r[5] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02527634 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[0]);
|
|
/* 02527638 */ _t35 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02527638 */ _t36 = _t35 & 0x00000001u;
|
|
/* 02527638 */ if (_t36) goto L_0252763C; else goto L_0252768C;
|
|
L_0252763C: ; // 0x252763c
|
|
/* 0252763C */ cpu->r[5] = 0x100C0000u;
|
|
/* 02527640 */ _t37 = cpu->r[5] + 0x0000286Cu;
|
|
/* 02527640 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 02527644 */ _t38 = cpu->r[1] + 0x00000008u;
|
|
/* 02527644 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 02527648 */ _t39 = cpu->r[1] + 0x00000014u;
|
|
/* 02527648 */ rbrew_write_f32(cpu->mem, _t39, cpu->f[0]);
|
|
/* 0252764C */ _t40 = cpu->r[1] + 0x00000018u;
|
|
/* 0252764C */ rbrew_write_f32(cpu->mem, _t40, cpu->f[0]);
|
|
/* 02527650 */ _t41 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02527650 */ rbrew_write_f32(cpu->mem, _t41, cpu->f[0]);
|
|
/* 02527654 */ _t42 = cpu->r[12] + 0x00000064u;
|
|
/* 02527654 */ rbrew_write_f32(cpu->mem, _t42, cpu->f[13]);
|
|
/* 02527658 */ _t43 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02527658 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t43);
|
|
/* 0252765C */ _t44 = cpu->r[12] + 0x00000068u;
|
|
/* 0252765C */ rbrew_write_f32(cpu->mem, _t44, cpu->f[0]);
|
|
/* 02527660 */ _t45 = cpu->r[1] + 0x00000010u;
|
|
/* 02527660 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t45);
|
|
/* 02527664 */ _t46 = cpu->r[12] + 0x0000006Cu;
|
|
/* 02527664 */ rbrew_write_f32(cpu->mem, _t46, cpu->f[0]);
|
|
/* 02527668 */ _t47 = cpu->r[1] + 0x00000014u;
|
|
/* 02527668 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 0252766C */ _t48 = cpu->r[12] + 0x0000012Cu;
|
|
/* 0252766C */ cpu->r[6] = rbrew_read32(cpu->mem, _t48);
|
|
/* 02527670 */ _t49 = cpu->r[12] + 0x00000070u;
|
|
/* 02527670 */ rbrew_write_f32(cpu->mem, _t49, cpu->f[0]);
|
|
/* 02527674 */ _t50 = cpu->r[1] + 0x00000018u;
|
|
/* 02527674 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t50);
|
|
/* 02527678 */ cpu->r[6] = cpu->r[6] | 0x00000004u;
|
|
/* 0252767C */ _t51 = cpu->r[12] + 0x00000074u;
|
|
/* 0252767C */ rbrew_write_f32(cpu->mem, _t51, cpu->f[0]);
|
|
/* 02527680 */ _t52 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02527680 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 02527684 */ _t53 = cpu->r[12] + 0x0000012Cu;
|
|
/* 02527684 */ rbrew_write32(cpu->mem, _t53, cpu->r[6]);
|
|
/* 02527688 */ _t54 = cpu->r[12] + 0x00000078u;
|
|
/* 02527688 */ rbrew_write_f32(cpu->mem, _t54, cpu->f[0]);
|
|
L_0252768C: ; // 0x252768c
|
|
/* 0252768C */ _t55 = cpu->r[29] + 0x0000022Cu;
|
|
/* 0252768C */ cpu->r[6] = rbrew_read32(cpu->mem, _t55);
|
|
/* 02527690 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 02527694 */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02527694 */ _t57 = _t56 & 0x00000001u;
|
|
/* 02527694 */ if (_t57) goto L_025276A0; else goto L_02527698;
|
|
L_02527698: ; // 0x2527698
|
|
/* 02527698 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0252769C */ _t58 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252769C */ _t59 = _t58 & 0x00000001u;
|
|
/* 0252769C */ if (_t59) goto L_0252770C; else goto L_025276A0;
|
|
L_025276A0: ; // 0x25276a0
|
|
/* 025276A0 */ _t60 = cpu->r[29] + 0x00000224u;
|
|
/* 025276A0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t60);
|
|
/* 025276A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], cpu->r[7]);
|
|
/* 025276A8 */ _t61 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 025276A8 */ _t62 = _t61 & 0x00000001u;
|
|
/* 025276A8 */ if (_t62) goto L_025276AC; else goto L_025277C8;
|
|
L_025276AC: ; // 0x25276ac
|
|
/* 025276AC */ _t63 = cpu->r[29] + 0x00000228u;
|
|
/* 025276AC */ cpu->r[9] = rbrew_read32(cpu->mem, _t63);
|
|
/* 025276B0 */ cpu->r[8] = cpu->r[6] + 0x00000001u;
|
|
/* 025276B4 */ _t64 = cpu->r[29] + 0x00000224u;
|
|
/* 025276B4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t64);
|
|
/* 025276B8 */ cpu->r[5] = cpu->r[9] + cpu->r[6];
|
|
/* 025276BC */ _t65 = cpu->r[29] + 0x0000022Cu;
|
|
/* 025276BC */ rbrew_write32(cpu->mem, _t65, cpu->r[8]);
|
|
/* 025276C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], cpu->r[7]);
|
|
/* 025276C4 */ _t66 = cpu->r[29] + 0x00000220u;
|
|
/* 025276C4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t66);
|
|
/* 025276C8 */ _t67 = cpu->r[1] + 0x00000008u;
|
|
/* 025276C8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t67);
|
|
/* 025276CC */ _t68 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 025276CC */ _t69 = _t68 & 0x00000001u;
|
|
/* 025276CC */ if (_t69) goto L_025276D4; else goto L_025276D0;
|
|
L_025276D0: ; // 0x25276d0
|
|
/* 025276D0 */ cpu->r[5] = cpu->r[5] - cpu->r[7];
|
|
L_025276D4: ; // 0x25276d4
|
|
/* 025276D4 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[5] * (int32_t)0x0000000Cu);
|
|
/* 025276D8 */ _t70 = cpu->r[11] + cpu->r[0];
|
|
/* 025276D8 */ rbrew_write32(cpu->mem, _t70, cpu->r[0]);
|
|
/* 025276DC */ _t71 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025276DC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t71);
|
|
/* 025276E0 */ cpu->r[9] = cpu->r[11] + cpu->r[0];
|
|
/* 025276E4 */ _t72 = cpu->r[9] + 0x00000004u;
|
|
/* 025276E4 */ rbrew_write_f32(cpu->mem, _t72, cpu->f[0]);
|
|
/* 025276E8 */ _t73 = cpu->r[1] + 0x00000010u;
|
|
/* 025276E8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t73);
|
|
/* 025276EC */ _t74 = cpu->r[9] + 0x00000008u;
|
|
/* 025276EC */ rbrew_write_f32(cpu->mem, _t74, cpu->f[0]);
|
|
/* 025276F0 */ _t75 = cpu->r[1] + 0x00000024u;
|
|
/* 025276F0 */ cpu->r[29] = rbrew_read32(cpu->mem, _t75);
|
|
/* 025276F4 */ _t76 = cpu->r[1] + 0x00000034u;
|
|
/* 025276F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t76);
|
|
/* 025276F8 */ _t77 = cpu->r[1] + 0x0000002Cu;
|
|
/* 025276F8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t77);
|
|
/* 025276FC */ cpu->lr = cpu->r[0];
|
|
/* 02527700 */ _t78 = cpu->r[1] + 0x00000028u;
|
|
/* 02527700 */ cpu->r[30] = rbrew_read32(cpu->mem, _t78);
|
|
/* 02527704 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 02527708 */ return;
|
|
L_0252770C: ; // 0x252770c
|
|
/* 0252770C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 02527710 */ _t79 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02527710 */ _t80 = _t79 & 0x00000001u;
|
|
/* 02527710 */ if (_t80) goto L_02527714; else goto L_02527758;
|
|
L_02527714: ; // 0x2527714
|
|
/* 02527714 */ _t81 = cpu->r[29] + 0x00000228u;
|
|
/* 02527714 */ cpu->r[8] = rbrew_read32(cpu->mem, _t81);
|
|
/* 02527718 */ cpu->r[12] = cpu->r[8] + cpu->r[6];
|
|
/* 0252771C */ _t82 = cpu->r[29] + 0x00000224u;
|
|
/* 0252771C */ cpu->r[7] = rbrew_read32(cpu->mem, _t82);
|
|
/* 02527720 */ cpu->r[6] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 02527724 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], cpu->r[7]);
|
|
/* 02527728 */ _t83 = cpu->r[29] + 0x00000220u;
|
|
/* 02527728 */ cpu->r[12] = rbrew_read32(cpu->mem, _t83);
|
|
/* 0252772C */ _t84 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0252772C */ _t85 = _t84 & 0x00000001u;
|
|
/* 0252772C */ if (_t85) goto L_02527734; else goto L_02527730;
|
|
L_02527730: ; // 0x2527730
|
|
/* 02527730 */ cpu->r[6] = cpu->r[6] - cpu->r[7];
|
|
L_02527734: ; // 0x2527734
|
|
/* 02527734 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[6] * (int32_t)0x0000000Cu);
|
|
/* 02527738 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0252773C */ cpu->r[3] = cpu->r[12] + cpu->r[0];
|
|
/* 02527740 */ Gambit_fn_02C693A4(cpu);
|
|
/* 02527744 */ cpu->r[11] = 0x100C0000u;
|
|
/* 02527748 */ _t86 = cpu->r[11] + 0x000029ECu;
|
|
/* 02527748 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t86);
|
|
/* 0252774C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[0]);
|
|
/* 02527750 */ _t87 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02527750 */ _t88 = _t87 & 0x00000001u;
|
|
/* 02527750 */ if (_t88) goto L_025277C8; else goto L_02527754;
|
|
L_02527754: ; // 0x2527754
|
|
/* 02527754 */ goto L_02527774;
|
|
L_02527758: ; // 0x2527758
|
|
/* 02527758 */ _t89 = cpu->r[29] + 0x00000220u;
|
|
/* 02527758 */ cpu->r[3] = rbrew_read32(cpu->mem, _t89);
|
|
/* 0252775C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02527760 */ Gambit_fn_02C693A4(cpu);
|
|
/* 02527764 */ cpu->r[11] = 0x100C0000u;
|
|
/* 02527768 */ _t90 = cpu->r[11] + 0x000029ECu;
|
|
/* 02527768 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t90);
|
|
/* 0252776C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[0]);
|
|
/* 02527770 */ _t91 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02527770 */ _t92 = _t91 & 0x00000001u;
|
|
/* 02527770 */ if (_t92) goto L_025277C8; else goto L_02527774;
|
|
L_02527774: ; // 0x2527774
|
|
/* 02527774 */ _t93 = cpu->r[29] + 0x0000022Cu;
|
|
/* 02527774 */ cpu->r[6] = rbrew_read32(cpu->mem, _t93);
|
|
/* 02527778 */ _t94 = cpu->r[29] + 0x00000224u;
|
|
/* 02527778 */ cpu->r[7] = rbrew_read32(cpu->mem, _t94);
|
|
/* 0252777C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], cpu->r[7]);
|
|
/* 02527780 */ _t95 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02527780 */ _t96 = _t95 & 0x00000001u;
|
|
/* 02527780 */ if (_t96) goto L_02527784; else goto L_025277C8;
|
|
L_02527784: ; // 0x2527784
|
|
/* 02527784 */ _t97 = cpu->r[29] + 0x00000228u;
|
|
/* 02527784 */ cpu->r[9] = rbrew_read32(cpu->mem, _t97);
|
|
/* 02527788 */ cpu->r[8] = cpu->r[6] + 0x00000001u;
|
|
/* 0252778C */ _t98 = cpu->r[29] + 0x00000224u;
|
|
/* 0252778C */ cpu->r[7] = rbrew_read32(cpu->mem, _t98);
|
|
/* 02527790 */ cpu->r[10] = cpu->r[9] + cpu->r[6];
|
|
/* 02527794 */ _t99 = cpu->r[29] + 0x0000022Cu;
|
|
/* 02527794 */ rbrew_write32(cpu->mem, _t99, cpu->r[8]);
|
|
/* 02527798 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], cpu->r[7]);
|
|
/* 0252779C */ _t100 = cpu->r[29] + 0x00000220u;
|
|
/* 0252779C */ cpu->r[5] = rbrew_read32(cpu->mem, _t100);
|
|
/* 025277A0 */ _t101 = cpu->r[1] + 0x00000008u;
|
|
/* 025277A0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t101);
|
|
/* 025277A4 */ _t102 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 025277A4 */ _t103 = _t102 & 0x00000001u;
|
|
/* 025277A4 */ if (_t103) goto L_025277AC; else goto L_025277A8;
|
|
L_025277A8: ; // 0x25277a8
|
|
/* 025277A8 */ cpu->r[10] = cpu->r[10] - cpu->r[7];
|
|
L_025277AC: ; // 0x25277ac
|
|
/* 025277AC */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[10] * (int32_t)0x0000000Cu);
|
|
/* 025277B0 */ _t104 = cpu->r[5] + cpu->r[0];
|
|
/* 025277B0 */ rbrew_write32(cpu->mem, _t104, cpu->r[0]);
|
|
/* 025277B4 */ _t105 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025277B4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t105);
|
|
/* 025277B8 */ cpu->r[12] = cpu->r[5] + cpu->r[0];
|
|
/* 025277BC */ _t106 = cpu->r[12] + 0x00000004u;
|
|
/* 025277BC */ rbrew_write_f32(cpu->mem, _t106, cpu->f[0]);
|
|
/* 025277C0 */ _t107 = cpu->r[1] + 0x00000010u;
|
|
/* 025277C0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t107);
|
|
/* 025277C4 */ _t108 = cpu->r[12] + 0x00000008u;
|
|
/* 025277C4 */ rbrew_write_f32(cpu->mem, _t108, cpu->f[0]);
|
|
L_025277C8: ; // 0x25277c8
|
|
/* 025277C8 */ _t109 = cpu->r[1] + 0x00000024u;
|
|
/* 025277C8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t109);
|
|
/* 025277CC */ _t110 = cpu->r[1] + 0x00000034u;
|
|
/* 025277CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t110);
|
|
/* 025277D0 */ _t111 = cpu->r[1] + 0x00000028u;
|
|
/* 025277D0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t111);
|
|
/* 025277D4 */ cpu->lr = cpu->r[0];
|
|
/* 025277D8 */ _t112 = cpu->r[1] + 0x0000002Cu;
|
|
/* 025277D8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t112);
|
|
/* 025277DC */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 025277E0 */ return;
|
|
}
|
|
|
|
// fn_02527574 @ 0x2527574
|
|
void Gambit_fn_02527574(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _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;
|
|
|
|
L_02527574: ; // 0x2527574
|
|
/* 02527574 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 02527574 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02527574 */ cpu->r[1] = _t0;
|
|
/* 02527578 */ _t1 = cpu->r[1] + 0x00000028u;
|
|
/* 02527578 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0252757C */ _t2 = cpu->r[1] + 0x00000024u;
|
|
/* 0252757C */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 02527580 */ _t3 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02527580 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 02527584 */ _t4 = cpu->r[1] + 0x00000034u;
|
|
/* 02527584 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02527588 */ cpu->r[29] = cpu->r[3];
|
|
/* 0252758C */ _t5 = cpu->r[29] + 0x000002B4u;
|
|
/* 0252758C */ cpu->r[9] = rbrew_read8(cpu->mem, _t5);
|
|
/* 02527590 */ cpu->r[31] = cpu->r[5];
|
|
/* 02527594 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02527598 */ cpu->r[30] = cpu->r[4];
|
|
/* 0252759C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252759C */ _t7 = _t6 & 0x00000001u;
|
|
/* 0252759C */ if (_t7) goto L_025275A8; else goto L_025275A0;
|
|
L_025275A0: ; // 0x25275a0
|
|
/* 025275A0 */ cpu->r[3] = cpu->r[29];
|
|
/* 025275A4 */ Gambit_fn_0252690C(cpu);
|
|
L_025275A8: ; // 0x25275a8
|
|
/* 025275A8 */ _t8 = cpu->r[29] + 0x0000022Cu;
|
|
/* 025275A8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t8);
|
|
/* 025275AC */ _t9 = cpu->r[29] + 0x00000224u;
|
|
/* 025275AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 025275B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], cpu->r[0]);
|
|
/* 025275B4 */ _t10 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 025275B4 */ _t11 = _t10 & 0x00000001u;
|
|
/* 025275B4 */ if (_t11) goto L_025275B8; else goto L_025277C8;
|
|
L_025275B8: ; // 0x25275b8
|
|
/* 025275B8 */ _t12 = cpu->r[29] + 0x0000007Cu;
|
|
/* 025275B8 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 025275BC */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 025275C0 */ cpu->r[4] = cpu->r[30];
|
|
/* 025275C4 */ Gambit_fn_0239F80C(cpu);
|
|
/* 025275C8 */ _t13 = cpu->r[29] + 0x000002A8u;
|
|
/* 025275C8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t13);
|
|
/* 025275CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 025275D0 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025275D0 */ _t15 = _t14 & 0x00000001u;
|
|
/* 025275D0 */ if (_t15) goto L_02527608; else goto L_025275D4;
|
|
L_025275D4: ; // 0x25275d4
|
|
/* 025275D4 */ _t16 = cpu->r[29] + 0x000002ACu;
|
|
/* 025275D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 025275D8 */ _t17 = cpu->r[12] + 0x0000000Cu;
|
|
/* 025275D8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t17);
|
|
/* 025275DC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[0]);
|
|
/* 025275E0 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025275E0 */ _t19 = _t18 & 0x00000001u;
|
|
/* 025275E0 */ if (_t19) goto L_025275E4; else goto L_02527608;
|
|
L_025275E4: ; // 0x25275e4
|
|
/* 025275E4 */ _t20 = cpu->r[12] + 0x0000000Cu;
|
|
/* 025275E4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t20);
|
|
/* 025275E8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[0]);
|
|
/* 025275EC */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025275EC */ _t22 = _t21 & 0x00000001u;
|
|
/* 025275EC */ if (_t22) goto L_025275F0; else goto L_02527630;
|
|
L_025275F0: ; // 0x25275f0
|
|
/* 025275F0 */ _t23 = cpu->r[12] + 0x0000000Cu;
|
|
/* 025275F0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t23);
|
|
/* 025275F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 025275F8 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025275F8 */ _t25 = _t24 & 0x00000001u;
|
|
/* 025275F8 */ if (_t25) goto L_02527630; else goto L_025275FC;
|
|
L_025275FC: ; // 0x25275fc
|
|
/* 025275FC */ _t26 = cpu->r[12] + 0x0000004Cu;
|
|
/* 025275FC */ cpu->r[11] = rbrew_read8(cpu->mem, _t26);
|
|
/* 02527600 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02527604 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02527604 */ _t28 = _t27 & 0x00000001u;
|
|
/* 02527604 */ if (_t28) goto L_02527630; else goto L_02527608;
|
|
L_02527608: ; // 0x2527608
|
|
/* 02527608 */ cpu->r[5] = 0x100C0000u;
|
|
/* 0252760C */ _t29 = cpu->r[29] + 0x00000030u;
|
|
/* 0252760C */ cpu->r[3] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02527610 */ cpu->r[4] = cpu->r[29] + 0x000002A8u;
|
|
/* 02527614 */ cpu->r[5] = cpu->r[5] + 0x00002A3Cu;
|
|
/* 02527618 */ cpu->r[6] = 0x00000000u;
|
|
/* 0252761C */ Gambit_fn_027B72F0(cpu);
|
|
/* 02527620 */ _t30 = cpu->r[29] + 0x000002A8u;
|
|
/* 02527620 */ cpu->r[12] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02527624 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02527628 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02527628 */ _t32 = _t31 & 0x00000001u;
|
|
/* 02527628 */ if (_t32) goto L_0252768C; else goto L_0252762C;
|
|
L_0252762C: ; // 0x252762c
|
|
/* 0252762C */ _t33 = cpu->r[29] + 0x000002ACu;
|
|
/* 0252762C */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
L_02527630: ; // 0x2527630
|
|
/* 02527630 */ _t34 = cpu->r[12] + 0x0000000Cu;
|
|
/* 02527630 */ cpu->r[5] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02527634 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[0]);
|
|
/* 02527638 */ _t35 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02527638 */ _t36 = _t35 & 0x00000001u;
|
|
/* 02527638 */ if (_t36) goto L_0252763C; else goto L_0252768C;
|
|
L_0252763C: ; // 0x252763c
|
|
/* 0252763C */ cpu->r[5] = 0x100C0000u;
|
|
/* 02527640 */ _t37 = cpu->r[5] + 0x0000286Cu;
|
|
/* 02527640 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 02527644 */ _t38 = cpu->r[1] + 0x00000008u;
|
|
/* 02527644 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 02527648 */ _t39 = cpu->r[1] + 0x00000014u;
|
|
/* 02527648 */ rbrew_write_f32(cpu->mem, _t39, cpu->f[0]);
|
|
/* 0252764C */ _t40 = cpu->r[1] + 0x00000018u;
|
|
/* 0252764C */ rbrew_write_f32(cpu->mem, _t40, cpu->f[0]);
|
|
/* 02527650 */ _t41 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02527650 */ rbrew_write_f32(cpu->mem, _t41, cpu->f[0]);
|
|
/* 02527654 */ _t42 = cpu->r[12] + 0x00000064u;
|
|
/* 02527654 */ rbrew_write_f32(cpu->mem, _t42, cpu->f[13]);
|
|
/* 02527658 */ _t43 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02527658 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t43);
|
|
/* 0252765C */ _t44 = cpu->r[12] + 0x00000068u;
|
|
/* 0252765C */ rbrew_write_f32(cpu->mem, _t44, cpu->f[0]);
|
|
/* 02527660 */ _t45 = cpu->r[1] + 0x00000010u;
|
|
/* 02527660 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t45);
|
|
/* 02527664 */ _t46 = cpu->r[12] + 0x0000006Cu;
|
|
/* 02527664 */ rbrew_write_f32(cpu->mem, _t46, cpu->f[0]);
|
|
/* 02527668 */ _t47 = cpu->r[1] + 0x00000014u;
|
|
/* 02527668 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 0252766C */ _t48 = cpu->r[12] + 0x0000012Cu;
|
|
/* 0252766C */ cpu->r[6] = rbrew_read32(cpu->mem, _t48);
|
|
/* 02527670 */ _t49 = cpu->r[12] + 0x00000070u;
|
|
/* 02527670 */ rbrew_write_f32(cpu->mem, _t49, cpu->f[0]);
|
|
/* 02527674 */ _t50 = cpu->r[1] + 0x00000018u;
|
|
/* 02527674 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t50);
|
|
/* 02527678 */ cpu->r[6] = cpu->r[6] | 0x00000004u;
|
|
/* 0252767C */ _t51 = cpu->r[12] + 0x00000074u;
|
|
/* 0252767C */ rbrew_write_f32(cpu->mem, _t51, cpu->f[0]);
|
|
/* 02527680 */ _t52 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02527680 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 02527684 */ _t53 = cpu->r[12] + 0x0000012Cu;
|
|
/* 02527684 */ rbrew_write32(cpu->mem, _t53, cpu->r[6]);
|
|
/* 02527688 */ _t54 = cpu->r[12] + 0x00000078u;
|
|
/* 02527688 */ rbrew_write_f32(cpu->mem, _t54, cpu->f[0]);
|
|
L_0252768C: ; // 0x252768c
|
|
/* 0252768C */ _t55 = cpu->r[29] + 0x0000022Cu;
|
|
/* 0252768C */ cpu->r[6] = rbrew_read32(cpu->mem, _t55);
|
|
/* 02527690 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 02527694 */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02527694 */ _t57 = _t56 & 0x00000001u;
|
|
/* 02527694 */ if (_t57) goto L_025276A0; else goto L_02527698;
|
|
L_02527698: ; // 0x2527698
|
|
/* 02527698 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0252769C */ _t58 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252769C */ _t59 = _t58 & 0x00000001u;
|
|
/* 0252769C */ if (_t59) goto L_0252770C; else goto L_025276A0;
|
|
L_025276A0: ; // 0x25276a0
|
|
/* 025276A0 */ _t60 = cpu->r[29] + 0x00000224u;
|
|
/* 025276A0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t60);
|
|
/* 025276A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], cpu->r[7]);
|
|
/* 025276A8 */ _t61 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 025276A8 */ _t62 = _t61 & 0x00000001u;
|
|
/* 025276A8 */ if (_t62) goto L_025276AC; else goto L_025277C8;
|
|
L_025276AC: ; // 0x25276ac
|
|
/* 025276AC */ _t63 = cpu->r[29] + 0x00000228u;
|
|
/* 025276AC */ cpu->r[9] = rbrew_read32(cpu->mem, _t63);
|
|
/* 025276B0 */ cpu->r[8] = cpu->r[6] + 0x00000001u;
|
|
/* 025276B4 */ _t64 = cpu->r[29] + 0x00000224u;
|
|
/* 025276B4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t64);
|
|
/* 025276B8 */ cpu->r[5] = cpu->r[9] + cpu->r[6];
|
|
/* 025276BC */ _t65 = cpu->r[29] + 0x0000022Cu;
|
|
/* 025276BC */ rbrew_write32(cpu->mem, _t65, cpu->r[8]);
|
|
/* 025276C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], cpu->r[7]);
|
|
/* 025276C4 */ _t66 = cpu->r[29] + 0x00000220u;
|
|
/* 025276C4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t66);
|
|
/* 025276C8 */ _t67 = cpu->r[1] + 0x00000008u;
|
|
/* 025276C8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t67);
|
|
/* 025276CC */ _t68 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 025276CC */ _t69 = _t68 & 0x00000001u;
|
|
/* 025276CC */ if (_t69) goto L_025276D4; else goto L_025276D0;
|
|
L_025276D0: ; // 0x25276d0
|
|
/* 025276D0 */ cpu->r[5] = cpu->r[5] - cpu->r[7];
|
|
L_025276D4: ; // 0x25276d4
|
|
/* 025276D4 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[5] * (int32_t)0x0000000Cu);
|
|
/* 025276D8 */ _t70 = cpu->r[11] + cpu->r[0];
|
|
/* 025276D8 */ rbrew_write32(cpu->mem, _t70, cpu->r[0]);
|
|
/* 025276DC */ _t71 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025276DC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t71);
|
|
/* 025276E0 */ cpu->r[9] = cpu->r[11] + cpu->r[0];
|
|
/* 025276E4 */ _t72 = cpu->r[9] + 0x00000004u;
|
|
/* 025276E4 */ rbrew_write_f32(cpu->mem, _t72, cpu->f[0]);
|
|
/* 025276E8 */ _t73 = cpu->r[1] + 0x00000010u;
|
|
/* 025276E8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t73);
|
|
/* 025276EC */ _t74 = cpu->r[9] + 0x00000008u;
|
|
/* 025276EC */ rbrew_write_f32(cpu->mem, _t74, cpu->f[0]);
|
|
/* 025276F0 */ _t75 = cpu->r[1] + 0x00000024u;
|
|
/* 025276F0 */ cpu->r[29] = rbrew_read32(cpu->mem, _t75);
|
|
/* 025276F4 */ _t76 = cpu->r[1] + 0x00000034u;
|
|
/* 025276F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t76);
|
|
/* 025276F8 */ _t77 = cpu->r[1] + 0x0000002Cu;
|
|
/* 025276F8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t77);
|
|
/* 025276FC */ cpu->lr = cpu->r[0];
|
|
/* 02527700 */ _t78 = cpu->r[1] + 0x00000028u;
|
|
/* 02527700 */ cpu->r[30] = rbrew_read32(cpu->mem, _t78);
|
|
/* 02527704 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 02527708 */ return;
|
|
L_0252770C: ; // 0x252770c
|
|
/* 0252770C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 02527710 */ _t79 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02527710 */ _t80 = _t79 & 0x00000001u;
|
|
/* 02527710 */ if (_t80) goto L_02527714; else goto L_02527758;
|
|
L_02527714: ; // 0x2527714
|
|
/* 02527714 */ _t81 = cpu->r[29] + 0x00000228u;
|
|
/* 02527714 */ cpu->r[8] = rbrew_read32(cpu->mem, _t81);
|
|
/* 02527718 */ cpu->r[12] = cpu->r[8] + cpu->r[6];
|
|
/* 0252771C */ _t82 = cpu->r[29] + 0x00000224u;
|
|
/* 0252771C */ cpu->r[7] = rbrew_read32(cpu->mem, _t82);
|
|
/* 02527720 */ cpu->r[6] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 02527724 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], cpu->r[7]);
|
|
/* 02527728 */ _t83 = cpu->r[29] + 0x00000220u;
|
|
/* 02527728 */ cpu->r[12] = rbrew_read32(cpu->mem, _t83);
|
|
/* 0252772C */ _t84 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0252772C */ _t85 = _t84 & 0x00000001u;
|
|
/* 0252772C */ if (_t85) goto L_02527734; else goto L_02527730;
|
|
L_02527730: ; // 0x2527730
|
|
/* 02527730 */ cpu->r[6] = cpu->r[6] - cpu->r[7];
|
|
L_02527734: ; // 0x2527734
|
|
/* 02527734 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[6] * (int32_t)0x0000000Cu);
|
|
/* 02527738 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0252773C */ cpu->r[3] = cpu->r[12] + cpu->r[0];
|
|
/* 02527740 */ Gambit_fn_02C693A4(cpu);
|
|
/* 02527744 */ cpu->r[11] = 0x100C0000u;
|
|
/* 02527748 */ _t86 = cpu->r[11] + 0x000029ECu;
|
|
/* 02527748 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t86);
|
|
/* 0252774C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[0]);
|
|
/* 02527750 */ _t87 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02527750 */ _t88 = _t87 & 0x00000001u;
|
|
/* 02527750 */ if (_t88) goto L_025277C8; else goto L_02527754;
|
|
L_02527754: ; // 0x2527754
|
|
/* 02527754 */ goto L_02527774;
|
|
L_02527758: ; // 0x2527758
|
|
/* 02527758 */ _t89 = cpu->r[29] + 0x00000220u;
|
|
/* 02527758 */ cpu->r[3] = rbrew_read32(cpu->mem, _t89);
|
|
/* 0252775C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02527760 */ Gambit_fn_02C693A4(cpu);
|
|
/* 02527764 */ cpu->r[11] = 0x100C0000u;
|
|
/* 02527768 */ _t90 = cpu->r[11] + 0x000029ECu;
|
|
/* 02527768 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t90);
|
|
/* 0252776C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[0]);
|
|
/* 02527770 */ _t91 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02527770 */ _t92 = _t91 & 0x00000001u;
|
|
/* 02527770 */ if (_t92) goto L_025277C8; else goto L_02527774;
|
|
L_02527774: ; // 0x2527774
|
|
/* 02527774 */ _t93 = cpu->r[29] + 0x0000022Cu;
|
|
/* 02527774 */ cpu->r[6] = rbrew_read32(cpu->mem, _t93);
|
|
/* 02527778 */ _t94 = cpu->r[29] + 0x00000224u;
|
|
/* 02527778 */ cpu->r[7] = rbrew_read32(cpu->mem, _t94);
|
|
/* 0252777C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], cpu->r[7]);
|
|
/* 02527780 */ _t95 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02527780 */ _t96 = _t95 & 0x00000001u;
|
|
/* 02527780 */ if (_t96) goto L_02527784; else goto L_025277C8;
|
|
L_02527784: ; // 0x2527784
|
|
/* 02527784 */ _t97 = cpu->r[29] + 0x00000228u;
|
|
/* 02527784 */ cpu->r[9] = rbrew_read32(cpu->mem, _t97);
|
|
/* 02527788 */ cpu->r[8] = cpu->r[6] + 0x00000001u;
|
|
/* 0252778C */ _t98 = cpu->r[29] + 0x00000224u;
|
|
/* 0252778C */ cpu->r[7] = rbrew_read32(cpu->mem, _t98);
|
|
/* 02527790 */ cpu->r[10] = cpu->r[9] + cpu->r[6];
|
|
/* 02527794 */ _t99 = cpu->r[29] + 0x0000022Cu;
|
|
/* 02527794 */ rbrew_write32(cpu->mem, _t99, cpu->r[8]);
|
|
/* 02527798 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], cpu->r[7]);
|
|
/* 0252779C */ _t100 = cpu->r[29] + 0x00000220u;
|
|
/* 0252779C */ cpu->r[5] = rbrew_read32(cpu->mem, _t100);
|
|
/* 025277A0 */ _t101 = cpu->r[1] + 0x00000008u;
|
|
/* 025277A0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t101);
|
|
/* 025277A4 */ _t102 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 025277A4 */ _t103 = _t102 & 0x00000001u;
|
|
/* 025277A4 */ if (_t103) goto L_025277AC; else goto L_025277A8;
|
|
L_025277A8: ; // 0x25277a8
|
|
/* 025277A8 */ cpu->r[10] = cpu->r[10] - cpu->r[7];
|
|
L_025277AC: ; // 0x25277ac
|
|
/* 025277AC */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[10] * (int32_t)0x0000000Cu);
|
|
/* 025277B0 */ _t104 = cpu->r[5] + cpu->r[0];
|
|
/* 025277B0 */ rbrew_write32(cpu->mem, _t104, cpu->r[0]);
|
|
/* 025277B4 */ _t105 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025277B4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t105);
|
|
/* 025277B8 */ cpu->r[12] = cpu->r[5] + cpu->r[0];
|
|
/* 025277BC */ _t106 = cpu->r[12] + 0x00000004u;
|
|
/* 025277BC */ rbrew_write_f32(cpu->mem, _t106, cpu->f[0]);
|
|
/* 025277C0 */ _t107 = cpu->r[1] + 0x00000010u;
|
|
/* 025277C0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t107);
|
|
/* 025277C4 */ _t108 = cpu->r[12] + 0x00000008u;
|
|
/* 025277C4 */ rbrew_write_f32(cpu->mem, _t108, cpu->f[0]);
|
|
L_025277C8: ; // 0x25277c8
|
|
/* 025277C8 */ _t109 = cpu->r[1] + 0x00000024u;
|
|
/* 025277C8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t109);
|
|
/* 025277CC */ _t110 = cpu->r[1] + 0x00000034u;
|
|
/* 025277CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t110);
|
|
/* 025277D0 */ _t111 = cpu->r[1] + 0x00000028u;
|
|
/* 025277D0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t111);
|
|
/* 025277D4 */ cpu->lr = cpu->r[0];
|
|
/* 025277D8 */ _t112 = cpu->r[1] + 0x0000002Cu;
|
|
/* 025277D8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t112);
|
|
/* 025277DC */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 025277E0 */ return;
|
|
}
|
|
|
|
// fn_025277E4 @ 0x25277e4
|
|
void Gambit_fn_025277E4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _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_025277E4: ; // 0x25277e4
|
|
/* 025277E4 */ goto L_02790488;
|
|
L_02790488: ; // 0x2790488
|
|
/* 02790488 */ _t0 = cpu->r[3] + 0x00000018u;
|
|
/* 02790488 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0279048C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02790490 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02790490 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02790490 */ if (_t2) goto L_027904A0; else goto L_02790494;
|
|
L_02790494: ; // 0x2790494
|
|
/* 02790494 */ cpu->r[4] = cpu->r[3];
|
|
/* 02790498 */ cpu->r[3] = cpu->r[0];
|
|
/* 0279049C */ goto L_027914D8;
|
|
L_027904A0: ; // 0x27904a0
|
|
/* 027904A0 */ _t3 = cpu->r[3] + 0x00000004u;
|
|
/* 027904A0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027904A4 */ cpu->r[11] = 0x00000001u;
|
|
/* 027904A8 */ _t4 = cpu->r[3] + 0x0000001Cu;
|
|
/* 027904A8 */ rbrew_write32(cpu->mem, _t4, cpu->r[11]);
|
|
/* 027904AC */ _t5 = cpu->r[12] + 0x00000084u;
|
|
/* 027904AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027904B0 */ cpu->ctr = cpu->r[0];
|
|
/* 027904B4 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
L_027914D8: ; // 0x27914d8
|
|
/* 027914D8 */ cpu->r[0] = cpu->lr;
|
|
/* 027914DC */ _t6 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027914DC */ rbrew_write32(cpu->mem, _t6, cpu->r[1]);
|
|
/* 027914DC */ cpu->r[1] = _t6;
|
|
/* 027914E0 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027914E0 */ rbrew_write32(cpu->mem, _t7, cpu->r[31]);
|
|
/* 027914E4 */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 027914E4 */ rbrew_write32(cpu->mem, _t8, cpu->r[30]);
|
|
/* 027914E8 */ cpu->r[31] = cpu->r[4];
|
|
/* 027914EC */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 027914EC */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 027914F0 */ _t10 = cpu->r[31] + 0x0000001Cu;
|
|
/* 027914F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027914F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000002u);
|
|
/* 027914F8 */ cpu->r[30] = cpu->r[3];
|
|
/* 027914FC */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027914FC */ _t12 = _t11 & 0x00000001u;
|
|
/* 027914FC */ if (_t12) goto L_02791508; else goto L_02791500;
|
|
L_02791500: ; // 0x2791500
|
|
/* 02791500 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000003u);
|
|
/* 02791504 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02791504 */ _t14 = _t13 & 0x00000001u;
|
|
/* 02791504 */ if (_t14) goto L_02791508; else goto L_02791550;
|
|
L_02791508: ; // 0x2791508
|
|
/* 02791508 */ cpu->r[3] = 0x101D0000u;
|
|
/* 0279150C */ _t15 = cpu->r[3] + 0xFFFF9038u;
|
|
/* 0279150C */ cpu->r[3] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02791510 */ Gambit_fn_02792A14(cpu);
|
|
/* 02791514 */ _t16 = cpu->r[3] + 0x00000008u;
|
|
/* 02791514 */ rbrew_write32(cpu->mem, _t16, cpu->r[31]);
|
|
/* 02791518 */ _t17 = cpu->r[30] + 0x00000210u;
|
|
/* 02791518 */ cpu->r[8] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0279151C */ cpu->r[4] = cpu->r[3] + cpu->r[8];
|
|
/* 02791520 */ cpu->r[3] = cpu->r[30] + 0x00000204u;
|
|
/* 02791524 */ Gambit_fn_02801EBC(cpu);
|
|
/* 02791528 */ _t18 = cpu->r[30] + 0x0000020Cu;
|
|
/* 02791528 */ cpu->r[9] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0279152C */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
/* 02791530 */ cpu->r[10] = 0x00000000u;
|
|
/* 02791534 */ _t19 = cpu->r[30] + 0x0000020Cu;
|
|
/* 02791534 */ rbrew_write32(cpu->mem, _t19, cpu->r[9]);
|
|
/* 02791538 */ _t20 = cpu->r[31] + 0x00000004u;
|
|
/* 02791538 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0279153C */ _t21 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0279153C */ rbrew_write32(cpu->mem, _t21, cpu->r[10]);
|
|
/* 02791540 */ _t22 = cpu->r[11] + 0x00000104u;
|
|
/* 02791540 */ cpu->r[12] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02791544 */ cpu->ctr = cpu->r[12];
|
|
/* 02791548 */ cpu->r[3] = cpu->r[31];
|
|
/* 0279154C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02791550: ; // 0x2791550
|
|
/* 02791550 */ _t23 = cpu->r[1] + 0x00000014u;
|
|
/* 02791550 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02791554 */ _t24 = cpu->r[1] + 0x00000008u;
|
|
/* 02791554 */ cpu->r[30] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02791558 */ cpu->lr = cpu->r[0];
|
|
/* 0279155C */ _t25 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0279155C */ cpu->r[31] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02791560 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02791564 */ return;
|
|
}
|
|
|
|
// fn_025277E8 @ 0x25277e8
|
|
void Gambit_fn_025277E8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44;
|
|
|
|
L_025277E8: ; // 0x25277e8
|
|
/* 025277E8 */ cpu->r[0] = cpu->lr;
|
|
/* 025277EC */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 025277EC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 025277EC */ cpu->r[1] = _t0;
|
|
/* 025277F0 */ _t1 = cpu->r[1] + 0x00000020u;
|
|
/* 025277F0 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 025277F4 */ _t2 = cpu->r[1] + 0x00000018u;
|
|
/* 025277F4 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 025277F8 */ /* nop */
|
|
/* 025277FC */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 025277FC */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 02527800 */ _t4 = cpu->r[1] + 0x00000028u;
|
|
/* 02527800 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[31]);
|
|
/* 02527804 */ cpu->r[30] = cpu->r[3];
|
|
/* 02527808 */ cpu->r[31] = cpu->r[4];
|
|
/* 0252780C */ _t5 = cpu->r[1] + 0x00000034u;
|
|
/* 0252780C */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02527810 */ _t6 = cpu->r[30] + 0x0000002Cu;
|
|
/* 02527810 */ cpu->r[8] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02527814 */ cpu->r[9] = 0x00000000u;
|
|
/* 02527818 */ _t7 = cpu->r[31] + 0x00000004u;
|
|
/* 02527818 */ cpu->r[7] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0252781C */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 0252781C */ rbrew_write32(cpu->mem, _t8, cpu->r[9]);
|
|
/* 02527820 */ _t9 = cpu->r[1] + 0x00000010u;
|
|
/* 02527820 */ rbrew_write32(cpu->mem, _t9, cpu->r[8]);
|
|
/* 02527824 */ _t10 = cpu->r[7] + 0x0000024Cu;
|
|
/* 02527824 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02527828 */ cpu->ctr = cpu->r[0];
|
|
/* 0252782C */ cpu->r[8] = cpu->r[1] + 0x00000010u;
|
|
/* 02527830 */ cpu->r[7] = 0x00000004u;
|
|
/* 02527834 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02527838 */ cpu->r[6] = cpu->r[30] + 0x00000078u;
|
|
/* 0252783C */ cpu->r[3] = cpu->r[31];
|
|
/* 02527840 */ cpu->r[4] = cpu->r[30];
|
|
/* 02527844 */ cpu->r[10] = cpu->r[9];
|
|
/* 02527848 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252784C */ cpu->r[12] = 0x100C0000u;
|
|
/* 02527850 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02527850 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 02527854 */ _t12 = cpu->r[12] + 0x00002870u;
|
|
/* 02527854 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 02527858 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[31]);
|
|
/* 0252785C */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252785C */ _t14 = _t13 & 0x00000001u;
|
|
/* 0252785C */ if (_t14) goto L_025278F8; else goto L_02527860;
|
|
L_02527860: ; // 0x2527860
|
|
/* 02527860 */ _t15 = cpu->r[30] + 0x000001ECu;
|
|
/* 02527860 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 02527864 */ cpu->r[10] = 0x100C0000u;
|
|
/* 02527868 */ _t16 = cpu->r[10] + 0x00002A44u;
|
|
/* 02527868 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 0252786C */ cpu->r[9] = 0x100C0000u;
|
|
/* 02527870 */ _t17 = cpu->r[30] + 0x00000198u;
|
|
/* 02527870 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02527874 */ cpu->f[0] = fma(cpu->f[11], cpu->f[0], cpu->f[12]);
|
|
/* 02527878 */ _t18 = cpu->r[9] + 0x0000286Cu;
|
|
/* 02527878 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 0252787C */ cpu->r[0] = cpu->r[0] | 0x00000002u;
|
|
/* 02527880 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[13]);
|
|
/* 02527884 */ _t19 = cpu->r[30] + 0x00000198u;
|
|
/* 02527884 */ rbrew_write32(cpu->mem, _t19, cpu->r[0]);
|
|
/* 02527888 */ _t20 = cpu->r[30] + 0x000002C0u;
|
|
/* 02527888 */ cpu->r[12] = rbrew_read8(cpu->mem, _t20);
|
|
/* 0252788C */ _t21 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252788C */ _t22 = _t21 & 0x00000001u;
|
|
/* 0252788C */ if (_t22) goto L_02527890; else goto L_02527894;
|
|
L_02527890: ; // 0x2527890
|
|
/* 02527890 */ cpu->f[0] = cpu->f[13];
|
|
L_02527894: ; // 0x2527894
|
|
/* 02527894 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02527898 */ _t23 = cpu->r[30] + 0x000001ECu;
|
|
/* 02527898 */ rbrew_write_f32(cpu->mem, _t23, cpu->f[0]);
|
|
/* 0252789C */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252789C */ _t25 = _t24 & 0x00000001u;
|
|
/* 0252789C */ if (_t25) goto L_025278F8; else goto L_025278A0;
|
|
L_025278A0: ; // 0x25278a0
|
|
/* 025278A0 */ _t26 = cpu->r[31] + 0x0000002Cu;
|
|
/* 025278A0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t26);
|
|
/* 025278A4 */ cpu->r[3] = cpu->r[1] + 0x00000014u;
|
|
/* 025278A8 */ cpu->r[4] = 0x00000001u;
|
|
/* 025278AC */ Gambit_fn_027E3E54(cpu);
|
|
/* 025278B0 */ _t27 = cpu->r[1] + 0x00000014u;
|
|
/* 025278B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 025278B4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]);
|
|
/* 025278B8 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025278B8 */ _t29 = _t28 & 0x00000001u;
|
|
/* 025278B8 */ if (_t29) goto L_025278BC; else goto L_025278F8;
|
|
L_025278BC: ; // 0x25278bc
|
|
/* 025278BC */ _t30 = cpu->r[30] + 0x000002C4u;
|
|
/* 025278BC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 025278C0 */ _t31 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025278C0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 025278C4 */ cpu->f[11] = cpu->f[13] - cpu->f[0];
|
|
/* 025278C8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[31], cpu->f[11]);
|
|
/* 025278CC */ cpu->f[12] = cpu->f[11];
|
|
/* 025278D0 */ _t32 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 025278D0 */ _t33 = _t32 & 0x00000001u;
|
|
/* 025278D0 */ if (_t33) goto L_025278D4; else goto L_025278E4;
|
|
L_025278D4: ; // 0x25278d4
|
|
/* 025278D4 */ cpu->r[3] = cpu->r[30];
|
|
/* 025278D8 */ _t34 = cpu->r[30] + 0x000002C4u;
|
|
/* 025278D8 */ rbrew_write_f32(cpu->mem, _t34, cpu->f[31]);
|
|
/* 025278DC */ Gambit_fn_025277E4(cpu);
|
|
/* 025278E0 */ goto L_025278F8;
|
|
L_025278E4: ; // 0x25278e4
|
|
/* 025278E4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[31]);
|
|
/* 025278E8 */ _t35 = cpu->r[30] + 0x000002C4u;
|
|
/* 025278E8 */ rbrew_write_f32(cpu->mem, _t35, cpu->f[12]);
|
|
/* 025278EC */ _t36 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 025278EC */ _t37 = _t36 & 0x00000001u;
|
|
/* 025278EC */ if (_t37) goto L_025278F8; else goto L_025278F0;
|
|
L_025278F0: ; // 0x25278f0
|
|
/* 025278F0 */ cpu->r[3] = cpu->r[30];
|
|
/* 025278F4 */ Gambit_fn_025277E4(cpu);
|
|
L_025278F8: ; // 0x25278f8
|
|
/* 025278F8 */ _t38 = cpu->r[1] + 0x00000028u;
|
|
/* 025278F8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 025278FC */ _t39 = cpu->r[1] + 0x0000001Cu;
|
|
/* 025278FC */ cpu->r[31] = rbrew_read32(cpu->mem, _t39);
|
|
/* 02527900 */ _t40 = cpu->r[1] + 0x00000020u;
|
|
/* 02527900 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t40);
|
|
/* 02527904 */ _t41 = cpu->r[1] + 0x00000018u;
|
|
/* 02527904 */ cpu->r[30] = rbrew_read32(cpu->mem, _t41);
|
|
/* 02527908 */ _t42 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02527908 */ _t43 = _t42 & 0x00000001u;
|
|
/* 02527908 */ if (_t43) goto L_0252790C; // else: addr-0 trap, fall-through
|
|
L_0252790C: ; // 0x252790c
|
|
/* 0252790C */ _t44 = cpu->r[1] + 0x00000034u;
|
|
/* 0252790C */ cpu->r[0] = rbrew_read32(cpu->mem, _t44);
|
|
/* 02527910 */ cpu->lr = cpu->r[0];
|
|
/* 02527914 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 02527918 */ return;
|
|
}
|
|
|
|
// fn_025277EC @ 0x25277ec
|
|
void Gambit_fn_025277EC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44;
|
|
|
|
L_025277EC: ; // 0x25277ec
|
|
/* 025277EC */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 025277EC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 025277EC */ cpu->r[1] = _t0;
|
|
/* 025277F0 */ _t1 = cpu->r[1] + 0x00000020u;
|
|
/* 025277F0 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 025277F4 */ _t2 = cpu->r[1] + 0x00000018u;
|
|
/* 025277F4 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 025277F8 */ /* nop */
|
|
/* 025277FC */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 025277FC */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 02527800 */ _t4 = cpu->r[1] + 0x00000028u;
|
|
/* 02527800 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[31]);
|
|
/* 02527804 */ cpu->r[30] = cpu->r[3];
|
|
/* 02527808 */ cpu->r[31] = cpu->r[4];
|
|
/* 0252780C */ _t5 = cpu->r[1] + 0x00000034u;
|
|
/* 0252780C */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02527810 */ _t6 = cpu->r[30] + 0x0000002Cu;
|
|
/* 02527810 */ cpu->r[8] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02527814 */ cpu->r[9] = 0x00000000u;
|
|
/* 02527818 */ _t7 = cpu->r[31] + 0x00000004u;
|
|
/* 02527818 */ cpu->r[7] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0252781C */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 0252781C */ rbrew_write32(cpu->mem, _t8, cpu->r[9]);
|
|
/* 02527820 */ _t9 = cpu->r[1] + 0x00000010u;
|
|
/* 02527820 */ rbrew_write32(cpu->mem, _t9, cpu->r[8]);
|
|
/* 02527824 */ _t10 = cpu->r[7] + 0x0000024Cu;
|
|
/* 02527824 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02527828 */ cpu->ctr = cpu->r[0];
|
|
/* 0252782C */ cpu->r[8] = cpu->r[1] + 0x00000010u;
|
|
/* 02527830 */ cpu->r[7] = 0x00000004u;
|
|
/* 02527834 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02527838 */ cpu->r[6] = cpu->r[30] + 0x00000078u;
|
|
/* 0252783C */ cpu->r[3] = cpu->r[31];
|
|
/* 02527840 */ cpu->r[4] = cpu->r[30];
|
|
/* 02527844 */ cpu->r[10] = cpu->r[9];
|
|
/* 02527848 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252784C */ cpu->r[12] = 0x100C0000u;
|
|
/* 02527850 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02527850 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 02527854 */ _t12 = cpu->r[12] + 0x00002870u;
|
|
/* 02527854 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 02527858 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[31]);
|
|
/* 0252785C */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252785C */ _t14 = _t13 & 0x00000001u;
|
|
/* 0252785C */ if (_t14) goto L_025278F8; else goto L_02527860;
|
|
L_02527860: ; // 0x2527860
|
|
/* 02527860 */ _t15 = cpu->r[30] + 0x000001ECu;
|
|
/* 02527860 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 02527864 */ cpu->r[10] = 0x100C0000u;
|
|
/* 02527868 */ _t16 = cpu->r[10] + 0x00002A44u;
|
|
/* 02527868 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 0252786C */ cpu->r[9] = 0x100C0000u;
|
|
/* 02527870 */ _t17 = cpu->r[30] + 0x00000198u;
|
|
/* 02527870 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02527874 */ cpu->f[0] = fma(cpu->f[11], cpu->f[0], cpu->f[12]);
|
|
/* 02527878 */ _t18 = cpu->r[9] + 0x0000286Cu;
|
|
/* 02527878 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 0252787C */ cpu->r[0] = cpu->r[0] | 0x00000002u;
|
|
/* 02527880 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[13]);
|
|
/* 02527884 */ _t19 = cpu->r[30] + 0x00000198u;
|
|
/* 02527884 */ rbrew_write32(cpu->mem, _t19, cpu->r[0]);
|
|
/* 02527888 */ _t20 = cpu->r[30] + 0x000002C0u;
|
|
/* 02527888 */ cpu->r[12] = rbrew_read8(cpu->mem, _t20);
|
|
/* 0252788C */ _t21 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252788C */ _t22 = _t21 & 0x00000001u;
|
|
/* 0252788C */ if (_t22) goto L_02527890; else goto L_02527894;
|
|
L_02527890: ; // 0x2527890
|
|
/* 02527890 */ cpu->f[0] = cpu->f[13];
|
|
L_02527894: ; // 0x2527894
|
|
/* 02527894 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02527898 */ _t23 = cpu->r[30] + 0x000001ECu;
|
|
/* 02527898 */ rbrew_write_f32(cpu->mem, _t23, cpu->f[0]);
|
|
/* 0252789C */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252789C */ _t25 = _t24 & 0x00000001u;
|
|
/* 0252789C */ if (_t25) goto L_025278F8; else goto L_025278A0;
|
|
L_025278A0: ; // 0x25278a0
|
|
/* 025278A0 */ _t26 = cpu->r[31] + 0x0000002Cu;
|
|
/* 025278A0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t26);
|
|
/* 025278A4 */ cpu->r[3] = cpu->r[1] + 0x00000014u;
|
|
/* 025278A8 */ cpu->r[4] = 0x00000001u;
|
|
/* 025278AC */ Gambit_fn_027E3E54(cpu);
|
|
/* 025278B0 */ _t27 = cpu->r[1] + 0x00000014u;
|
|
/* 025278B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 025278B4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]);
|
|
/* 025278B8 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025278B8 */ _t29 = _t28 & 0x00000001u;
|
|
/* 025278B8 */ if (_t29) goto L_025278BC; else goto L_025278F8;
|
|
L_025278BC: ; // 0x25278bc
|
|
/* 025278BC */ _t30 = cpu->r[30] + 0x000002C4u;
|
|
/* 025278BC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 025278C0 */ _t31 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025278C0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 025278C4 */ cpu->f[11] = cpu->f[13] - cpu->f[0];
|
|
/* 025278C8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[31], cpu->f[11]);
|
|
/* 025278CC */ cpu->f[12] = cpu->f[11];
|
|
/* 025278D0 */ _t32 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 025278D0 */ _t33 = _t32 & 0x00000001u;
|
|
/* 025278D0 */ if (_t33) goto L_025278D4; else goto L_025278E4;
|
|
L_025278D4: ; // 0x25278d4
|
|
/* 025278D4 */ cpu->r[3] = cpu->r[30];
|
|
/* 025278D8 */ _t34 = cpu->r[30] + 0x000002C4u;
|
|
/* 025278D8 */ rbrew_write_f32(cpu->mem, _t34, cpu->f[31]);
|
|
/* 025278DC */ Gambit_fn_025277E4(cpu);
|
|
/* 025278E0 */ goto L_025278F8;
|
|
L_025278E4: ; // 0x25278e4
|
|
/* 025278E4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[31]);
|
|
/* 025278E8 */ _t35 = cpu->r[30] + 0x000002C4u;
|
|
/* 025278E8 */ rbrew_write_f32(cpu->mem, _t35, cpu->f[12]);
|
|
/* 025278EC */ _t36 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 025278EC */ _t37 = _t36 & 0x00000001u;
|
|
/* 025278EC */ if (_t37) goto L_025278F8; else goto L_025278F0;
|
|
L_025278F0: ; // 0x25278f0
|
|
/* 025278F0 */ cpu->r[3] = cpu->r[30];
|
|
/* 025278F4 */ Gambit_fn_025277E4(cpu);
|
|
L_025278F8: ; // 0x25278f8
|
|
/* 025278F8 */ _t38 = cpu->r[1] + 0x00000028u;
|
|
/* 025278F8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 025278FC */ _t39 = cpu->r[1] + 0x0000001Cu;
|
|
/* 025278FC */ cpu->r[31] = rbrew_read32(cpu->mem, _t39);
|
|
/* 02527900 */ _t40 = cpu->r[1] + 0x00000020u;
|
|
/* 02527900 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t40);
|
|
/* 02527904 */ _t41 = cpu->r[1] + 0x00000018u;
|
|
/* 02527904 */ cpu->r[30] = rbrew_read32(cpu->mem, _t41);
|
|
/* 02527908 */ _t42 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02527908 */ _t43 = _t42 & 0x00000001u;
|
|
/* 02527908 */ if (_t43) goto L_0252790C; // else: addr-0 trap, fall-through
|
|
L_0252790C: ; // 0x252790c
|
|
/* 0252790C */ _t44 = cpu->r[1] + 0x00000034u;
|
|
/* 0252790C */ cpu->r[0] = rbrew_read32(cpu->mem, _t44);
|
|
/* 02527910 */ cpu->lr = cpu->r[0];
|
|
/* 02527914 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 02527918 */ return;
|
|
}
|
|
|
|
// fn_02527980 @ 0x2527980
|
|
void Gambit_fn_02527980(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_02527980: ; // 0x2527980
|
|
/* 02527980 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 02527980 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02527980 */ cpu->r[1] = _t0;
|
|
/* 02527984 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 02527984 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 02527988 */ /* nop */
|
|
/* 0252798C */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252798C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02527990 */ _t3 = cpu->r[1] + 0x00000018u;
|
|
/* 02527990 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 02527994 */ cpu->r[31] = cpu->r[3];
|
|
/* 02527998 */ _t4 = cpu->r[1] + 0x00000024u;
|
|
/* 02527998 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0252799C */ _t5 = cpu->r[31] + 0x00000198u;
|
|
/* 0252799C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 025279A0 */ cpu->r[11] = rbrew_rlwinm(cpu->r[0], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 025279A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 025279A4 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025279A4 */ _t7 = _t6 & 0x00000001u;
|
|
/* 025279A4 */ if (_t7) goto L_025279A8; else goto L_025279DC;
|
|
L_025279A8: ; // 0x25279a8
|
|
/* 025279A8 */ _t8 = cpu->r[31] + 0x00000130u;
|
|
/* 025279A8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 025279AC */ Gambit_fn_02398F10(cpu);
|
|
/* 025279B0 */ _t9 = cpu->r[31] + 0x00000130u;
|
|
/* 025279B0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 025279B4 */ cpu->f[31] = cpu->f[1];
|
|
/* 025279B8 */ Gambit_fn_02398D60(cpu);
|
|
/* 025279BC */ cpu->r[12] = 0x100C0000u;
|
|
/* 025279C0 */ _t10 = cpu->r[12] + 0x0000286Cu;
|
|
/* 025279C0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 025279C4 */ cpu->f[13] = cpu->f[1] - cpu->f[0];
|
|
/* 025279C8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[31], cpu->f[13]);
|
|
/* 025279CC */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025279CC */ _t12 = _t11 & 0x00000001u;
|
|
/* 025279CC */ if (_t12) goto L_025279D0; else goto L_025279DC;
|
|
L_025279D0: ; // 0x25279d0
|
|
/* 025279D0 */ cpu->r[3] = cpu->r[31] + 0x000001B0u;
|
|
/* 025279D4 */ cpu->r[4] = 0x00000000u;
|
|
/* 025279D8 */ Gambit_fn_023A376C(cpu);
|
|
L_025279DC: ; // 0x25279dc
|
|
/* 025279DC */ _t13 = cpu->r[1] + 0x00000018u;
|
|
/* 025279DC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 025279E0 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025279E0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 025279E4 */ _t15 = cpu->r[1] + 0x00000010u;
|
|
/* 025279E4 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t15);
|
|
/* 025279E8 */ _t16 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 025279E8 */ _t17 = _t16 & 0x00000001u;
|
|
/* 025279E8 */ if (_t17) goto L_025279EC; // else: addr-0 trap, fall-through
|
|
L_025279EC: ; // 0x25279ec
|
|
/* 025279EC */ _t18 = cpu->r[1] + 0x00000024u;
|
|
/* 025279EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 025279F0 */ cpu->lr = cpu->r[0];
|
|
/* 025279F4 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 025279F8 */ return;
|
|
}
|
|
|
|
// fn_02527A00 @ 0x2527a00
|
|
void Gambit_fn_02527A00(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_02527A00: ; // 0x2527a00
|
|
/* 02527A00 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02527A00 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02527A00 */ cpu->r[1] = _t0;
|
|
/* 02527A04 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 02527A04 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02527A08 */ cpu->r[30] = 0x100C0000u;
|
|
/* 02527A0C */ cpu->r[30] = cpu->r[30] + 0x00002A5Cu;
|
|
/* 02527A10 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02527A10 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02527A14 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 02527A14 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 02527A18 */ cpu->r[31] = cpu->r[3];
|
|
/* 02527A1C */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02527A1C */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02527A20 */ cpu->r[0] = 0x100C0000u;
|
|
/* 02527A24 */ _t5 = cpu->r[31] + 0x00000130u;
|
|
/* 02527A24 */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02527A28 */ cpu->r[0] = cpu->r[0] + 0x0000289Cu;
|
|
/* 02527A2C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02527A30 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02527A30 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02527A34 */ Gambit_fn_023989C0(cpu);
|
|
/* 02527A38 */ cpu->r[12] = cpu->r[3] ^ 0x00000001u;
|
|
/* 02527A3C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02527A40 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02527A40 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02527A40 */ if (_t8) goto L_02527A54; else goto L_02527A44;
|
|
L_02527A44: ; // 0x2527a44
|
|
/* 02527A44 */ _t9 = cpu->r[31] + 0x00000130u;
|
|
/* 02527A44 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02527A48 */ cpu->r[4] = cpu->r[30];
|
|
/* 02527A4C */ cpu->r[5] = 0x00000001u;
|
|
/* 02527A50 */ Gambit_fn_02398850(cpu);
|
|
L_02527A54: ; // 0x2527a54
|
|
/* 02527A54 */ _t10 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02527A54 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02527A58 */ _t11 = cpu->r[1] + 0x00000010u;
|
|
/* 02527A58 */ cpu->r[30] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02527A5C */ cpu->lr = cpu->r[0];
|
|
/* 02527A60 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 02527A60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02527A64 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02527A68 */ return;
|
|
}
|
|
|
|
// fn_02527A6C @ 0x2527a6c
|
|
void Gambit_fn_02527A6C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _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;
|
|
|
|
L_02527A6C: ; // 0x2527a6c
|
|
/* 02527A6C */ cpu->r[0] = cpu->lr;
|
|
/* 02527A70 */ _t0 = cpu->r[1] + 0xFFFFFF10u;
|
|
/* 02527A70 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02527A70 */ cpu->r[1] = _t0;
|
|
/* 02527A74 */ _t1 = cpu->r[1] + 0x000000E4u;
|
|
/* 02527A74 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 02527A78 */ _t2 = cpu->r[1] + 0x000000E8u;
|
|
/* 02527A78 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02527A7C */ _t3 = cpu->r[1] + 0x000000ECu;
|
|
/* 02527A7C */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 02527A80 */ _t4 = cpu->r[1] + 0x000000F4u;
|
|
/* 02527A80 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02527A84 */ cpu->r[29] = cpu->r[3];
|
|
/* 02527A88 */ cpu->r[30] = cpu->r[4];
|
|
/* 02527A8C */ _t5 = cpu->r[29] + 0x000001F0u;
|
|
/* 02527A8C */ cpu->r[31] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 02527A90 */ cpu->r[3] = cpu->r[30];
|
|
/* 02527A94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02527A98 */ Gambit_fn_0297FC7C(cpu);
|
|
/* 02527A9C */ _t6 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02527A9C */ cpu->r[8] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02527AA0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[8]);
|
|
/* 02527AA4 */ cpu->r[12] = 0x00000000u;
|
|
/* 02527AA8 */ _t7 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02527AA8 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02527AA8 */ if (_t8) goto L_02527AAC; else goto L_02527AB8;
|
|
L_02527AAC: ; // 0x2527aac
|
|
/* 02527AAC */ _t9 = cpu->r[30] + 0x00000024u;
|
|
/* 02527AAC */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02527AB0 */ cpu->r[9] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02527AB4 */ _t10 = cpu->r[9] + cpu->r[0];
|
|
/* 02527AB4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
L_02527AB8: ; // 0x2527ab8
|
|
/* 02527AB8 */ _t11 = cpu->r[12] + 0x00000000u;
|
|
/* 02527AB8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02527ABC */ _t12 = cpu->r[3] + 0x00000088u;
|
|
/* 02527ABC */ cpu->r[6] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02527AC0 */ _t13 = cpu->r[6] + 0x00000064u;
|
|
/* 02527AC0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02527AC4 */ cpu->ctr = cpu->r[0];
|
|
/* 02527AC8 */ _t14 = cpu->r[29] + 0x000001F2u;
|
|
/* 02527AC8 */ cpu->r[6] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 02527ACC */ cpu->r[5] = cpu->r[1] + 0x000000A4u;
|
|
/* 02527AD0 */ cpu->r[4] = cpu->r[1] + 0x00000074u;
|
|
/* 02527AD4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02527AD8 */ _t15 = cpu->r[1] + 0x00000074u;
|
|
/* 02527AD8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 02527ADC */ _t16 = cpu->r[1] + 0x00000084u;
|
|
/* 02527ADC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 02527AE0 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 02527AE0 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[11]);
|
|
/* 02527AE4 */ _t18 = cpu->r[1] + 0x00000088u;
|
|
/* 02527AE4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 02527AE8 */ _t19 = cpu->r[1] + 0x0000008Cu;
|
|
/* 02527AE8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 02527AEC */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02527AEC */ rbrew_write_f32(cpu->mem, _t20, cpu->f[13]);
|
|
/* 02527AF0 */ /* nop */
|
|
/* 02527AF4 */ cpu->r[10] = 0x101F0000u;
|
|
/* 02527AF8 */ _t21 = cpu->r[1] + 0x00000078u;
|
|
/* 02527AF8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 02527AFC */ _t22 = cpu->r[1] + 0x00000018u;
|
|
/* 02527AFC */ rbrew_write_f32(cpu->mem, _t22, cpu->f[0]);
|
|
/* 02527B00 */ _t23 = cpu->r[1] + 0x00000014u;
|
|
/* 02527B00 */ rbrew_write_f32(cpu->mem, _t23, cpu->f[13]);
|
|
/* 02527B04 */ /* nop */
|
|
/* 02527B08 */ cpu->r[10] = cpu->r[10] + 0x00006350u;
|
|
/* 02527B0C */ _t24 = cpu->r[1] + 0x000000A0u;
|
|
/* 02527B0C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 02527B10 */ /* nop */
|
|
/* 02527B14 */ _t25 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02527B14 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 02527B18 */ _t26 = cpu->r[1] + 0x00000024u;
|
|
/* 02527B18 */ rbrew_write_f32(cpu->mem, _t26, cpu->f[11]);
|
|
/* 02527B1C */ _t27 = cpu->r[1] + 0x00000020u;
|
|
/* 02527B1C */ rbrew_write_f32(cpu->mem, _t27, cpu->f[8]);
|
|
/* 02527B20 */ /* nop */
|
|
/* 02527B24 */ /* nop */
|
|
/* 02527B28 */ _t28 = cpu->r[1] + 0x00000034u;
|
|
/* 02527B28 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[9]);
|
|
/* 02527B2C */ /* nop */
|
|
/* 02527B30 */ _t29 = cpu->r[10] + 0x00000008u;
|
|
/* 02527B30 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 02527B34 */ /* nop */
|
|
/* 02527B38 */ _t30 = cpu->r[1] + 0x00000094u;
|
|
/* 02527B38 */ cpu->f[2] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 02527B3C */ /* nop */
|
|
/* 02527B40 */ _t31 = cpu->r[1] + 0x0000009Cu;
|
|
/* 02527B40 */ cpu->f[4] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 02527B44 */ /* nop */
|
|
/* 02527B48 */ _t32 = cpu->r[1] + 0x00000098u;
|
|
/* 02527B48 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 02527B4C */ _t33 = cpu->r[1] + 0x00000090u;
|
|
/* 02527B4C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 02527B50 */ cpu->f[0] = fma(cpu->f[9], cpu->f[10], cpu->f[0]);
|
|
/* 02527B54 */ _t34 = cpu->r[1] + 0x00000030u;
|
|
/* 02527B54 */ rbrew_write_f32(cpu->mem, _t34, cpu->f[8]);
|
|
/* 02527B58 */ /* nop */
|
|
/* 02527B5C */ /* nop */
|
|
/* 02527B60 */ cpu->f[11] = fma(cpu->f[9], cpu->f[2], cpu->f[11]);
|
|
/* 02527B64 */ _t35 = cpu->r[1] + 0x00000018u;
|
|
/* 02527B64 */ rbrew_write_f32(cpu->mem, _t35, cpu->f[0]);
|
|
/* 02527B68 */ cpu->f[9] = fma(cpu->f[9], cpu->f[4], cpu->f[8]);
|
|
/* 02527B6C */ /* nop */
|
|
/* 02527B70 */ _t36 = cpu->r[1] + 0x00000014u;
|
|
/* 02527B70 */ rbrew_write_f32(cpu->mem, _t36, cpu->f[11]);
|
|
/* 02527B74 */ /* nop */
|
|
/* 02527B78 */ /* nop */
|
|
/* 02527B7C */ /* nop */
|
|
/* 02527B80 */ _t37 = cpu->r[1] + 0x00000080u;
|
|
/* 02527B80 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 02527B84 */ /* nop */
|
|
/* 02527B88 */ _t38 = cpu->r[29] + 0x000001FCu;
|
|
/* 02527B88 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 02527B8C */ /* nop */
|
|
/* 02527B90 */ cpu->f[0] = fma(cpu->f[11], cpu->f[2], cpu->f[12]);
|
|
/* 02527B94 */ _t39 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02527B94 */ rbrew_write_f32(cpu->mem, _t39, cpu->f[6]);
|
|
/* 02527B98 */ /* nop */
|
|
/* 02527B9C */ _t40 = cpu->r[1] + 0x00000010u;
|
|
/* 02527B9C */ rbrew_write_f32(cpu->mem, _t40, cpu->f[2]);
|
|
/* 02527BA0 */ cpu->f[8] = cpu->f[12];
|
|
/* 02527BA4 */ _t41 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02527BA4 */ rbrew_write_f32(cpu->mem, _t41, cpu->f[9]);
|
|
/* 02527BA8 */ cpu->f[12] = cpu->f[7];
|
|
/* 02527BAC */ _t42 = cpu->r[1] + 0x00000020u;
|
|
/* 02527BAC */ rbrew_write_f32(cpu->mem, _t42, cpu->f[0]);
|
|
/* 02527BB0 */ cpu->f[7] = fma(cpu->f[11], cpu->f[9], cpu->f[8]);
|
|
/* 02527BB4 */ _t43 = cpu->r[1] + 0x00000068u;
|
|
/* 02527BB4 */ rbrew_write_f32(cpu->mem, _t43, cpu->f[0]);
|
|
/* 02527BB8 */ cpu->f[13] = fma(cpu->f[11], cpu->f[4], cpu->f[12]);
|
|
/* 02527BBC */ _t44 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02527BBC */ rbrew_write_f32(cpu->mem, _t44, cpu->f[7]);
|
|
/* 02527BC0 */ cpu->r[5] = 0x00000355u;
|
|
/* 02527BC4 */ _t45 = cpu->r[1] + 0x00000024u;
|
|
/* 02527BC4 */ rbrew_write_f32(cpu->mem, _t45, cpu->f[7]);
|
|
/* 02527BC8 */ cpu->r[4] = 0x100C0000u;
|
|
/* 02527BCC */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02527BD0 */ _t46 = cpu->r[1] + 0x00000070u;
|
|
/* 02527BD0 */ rbrew_write_f32(cpu->mem, _t46, cpu->f[13]);
|
|
/* 02527BD4 */ cpu->r[4] = cpu->r[4] + 0x00002A60u;
|
|
/* 02527BD8 */ _t47 = cpu->r[1] + 0x00000028u;
|
|
/* 02527BD8 */ rbrew_write_f32(cpu->mem, _t47, cpu->f[13]);
|
|
/* 02527BDC */ Gambit_fn_0204D380(cpu);
|
|
/* 02527BE0 */ _t48 = cpu->r[1] + 0x00000028u;
|
|
/* 02527BE0 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 02527BE4 */ _t49 = cpu->r[1] + 0x00000020u;
|
|
/* 02527BE4 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t49);
|
|
/* 02527BE8 */ _t50 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02527BE8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t50);
|
|
/* 02527BEC */ _t51 = cpu->r[1] + 0x00000040u;
|
|
/* 02527BEC */ rbrew_write_f32(cpu->mem, _t51, cpu->f[7]);
|
|
/* 02527BF0 */ _t52 = cpu->r[1] + 0x00000048u;
|
|
/* 02527BF0 */ rbrew_write_f32(cpu->mem, _t52, cpu->f[13]);
|
|
/* 02527BF4 */ _t53 = cpu->r[1] + 0x00000030u;
|
|
/* 02527BF4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t53);
|
|
/* 02527BF8 */ _t54 = cpu->r[1] + 0x00000008u;
|
|
/* 02527BF8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 02527BFC */ _t55 = cpu->r[1] + 0x00000054u;
|
|
/* 02527BFC */ rbrew_write_f32(cpu->mem, _t55, cpu->f[13]);
|
|
/* 02527C00 */ _t56 = cpu->r[1] + 0x00000018u;
|
|
/* 02527C00 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 02527C04 */ _t57 = cpu->r[1] + 0x00000038u;
|
|
/* 02527C04 */ rbrew_write_f32(cpu->mem, _t57, cpu->f[11]);
|
|
/* 02527C08 */ _t58 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02527C08 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 02527C0C */ _t59 = cpu->r[1] + 0x00000024u;
|
|
/* 02527C0C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t59);
|
|
/* 02527C10 */ _t60 = cpu->r[1] + 0x00000044u;
|
|
/* 02527C10 */ rbrew_write_f32(cpu->mem, _t60, cpu->f[11]);
|
|
/* 02527C14 */ _t61 = cpu->r[1] + 0x00000010u;
|
|
/* 02527C14 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t61);
|
|
/* 02527C18 */ _t62 = cpu->r[1] + 0x00000014u;
|
|
/* 02527C18 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t62);
|
|
/* 02527C1C */ _t63 = cpu->r[1] + 0x00000058u;
|
|
/* 02527C1C */ rbrew_write_f32(cpu->mem, _t63, cpu->f[0]);
|
|
/* 02527C20 */ _t64 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02527C20 */ rbrew_write_f32(cpu->mem, _t64, cpu->f[12]);
|
|
/* 02527C24 */ _t65 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02527C24 */ rbrew_write_f32(cpu->mem, _t65, cpu->f[7]);
|
|
/* 02527C28 */ _t66 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02527C28 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t66);
|
|
/* 02527C2C */ cpu->r[10] = cpu->r[1] + 0x00000034u;
|
|
/* 02527C30 */ _t67 = cpu->r[1] + 0x00000050u;
|
|
/* 02527C30 */ rbrew_write_f32(cpu->mem, _t67, cpu->f[8]);
|
|
/* 02527C34 */ cpu->r[12] = cpu->r[1] + 0x000000ACu;
|
|
/* 02527C38 */ _t68 = cpu->r[1] + 0x00000060u;
|
|
/* 02527C38 */ rbrew_write_f32(cpu->mem, _t68, cpu->f[9]);
|
|
/* 02527C3C */ _t69 = cpu->r[1] + 0x00000034u;
|
|
/* 02527C3C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t69);
|
|
/* 02527C40 */ cpu->r[7] = 0x00000003u;
|
|
/* 02527C44 */ _t70 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02527C44 */ rbrew_write_f32(cpu->mem, _t70, cpu->f[7]);
|
|
/* 02527C48 */ cpu->ctr = cpu->r[7];
|
|
/* 02527C4C */ _t71 = cpu->r[1] + 0x00000064u;
|
|
/* 02527C4C */ rbrew_write_f32(cpu->mem, _t71, cpu->f[10]);
|
|
L_02527C50: ; // 0x2527c50
|
|
/* 02527C50 */ _t72 = cpu->r[10] + 0x00000004u;
|
|
/* 02527C50 */ cpu->r[9] = rbrew_read32(cpu->mem, _t72);
|
|
/* 02527C54 */ _t73 = cpu->r[12] + 0x00000004u;
|
|
/* 02527C54 */ rbrew_write32(cpu->mem, _t73, cpu->r[9]);
|
|
/* 02527C58 */ _t74 = cpu->r[10] + 0x00000008u;
|
|
/* 02527C58 */ cpu->r[0] = rbrew_read32(cpu->mem, _t74);
|
|
/* 02527C5C */ _t75 = cpu->r[12] + 0x00000008u;
|
|
/* 02527C5C */ rbrew_write32(cpu->mem, _t75, cpu->r[0]);
|
|
/* 02527C60 */ _t76 = cpu->r[10] + 0x0000000Cu;
|
|
/* 02527C60 */ cpu->r[5] = rbrew_read32(cpu->mem, _t76);
|
|
/* 02527C64 */ _t77 = cpu->r[12] + 0x0000000Cu;
|
|
/* 02527C64 */ rbrew_write32(cpu->mem, _t77, cpu->r[5]);
|
|
/* 02527C68 */ _t78 = cpu->r[10] + 0x00000010u;
|
|
/* 02527C68 */ cpu->r[0] = rbrew_read32(cpu->mem, _t78);
|
|
/* 02527C68 */ cpu->r[10] = _t78;
|
|
/* 02527C6C */ _t79 = cpu->r[12] + 0x00000010u;
|
|
/* 02527C6C */ rbrew_write32(cpu->mem, _t79, cpu->r[0]);
|
|
/* 02527C6C */ cpu->r[12] = _t79;
|
|
/* 02527C70 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02527C70 */ _t80 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02527C70 */ _t81 = _t80 >> (0x00000002u & 31u);
|
|
/* 02527C70 */ _t82 = _t81 & 0x00000001u;
|
|
/* 02527C70 */ if (_t82) goto L_02527C50; else goto L_02527C74;
|
|
L_02527C74: ; // 0x2527c74
|
|
/* 02527C74 */ cpu->r[3] = cpu->r[1] + 0x000000B0u;
|
|
/* 02527C78 */ cpu->r[4] = cpu->r[1] + 0x00000074u;
|
|
/* 02527C7C */ Gambit_fn_02C69510(cpu);
|
|
/* 02527C80 */ cpu->r[6] = cpu->r[1] + 0x000000A4u;
|
|
/* 02527C84 */ cpu->r[5] = cpu->r[1] + 0x00000074u;
|
|
/* 02527C88 */ cpu->r[4] = cpu->r[29] + 0x000001F0u;
|
|
/* 02527C8C */ cpu->r[3] = cpu->r[30];
|
|
/* 02527C90 */ Gambit_fn_02980840(cpu);
|
|
/* 02527C94 */ _t83 = cpu->r[1] + 0x000000E4u;
|
|
/* 02527C94 */ cpu->r[29] = rbrew_read32(cpu->mem, _t83);
|
|
/* 02527C98 */ _t84 = cpu->r[1] + 0x000000F4u;
|
|
/* 02527C98 */ cpu->r[0] = rbrew_read32(cpu->mem, _t84);
|
|
/* 02527C9C */ _t85 = cpu->r[1] + 0x000000E8u;
|
|
/* 02527C9C */ cpu->r[30] = rbrew_read32(cpu->mem, _t85);
|
|
/* 02527CA0 */ cpu->lr = cpu->r[0];
|
|
/* 02527CA4 */ _t86 = cpu->r[1] + 0x000000ECu;
|
|
/* 02527CA4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t86);
|
|
/* 02527CA8 */ cpu->r[1] = cpu->r[1] + 0x000000F0u;
|
|
/* 02527CAC */ return;
|
|
}
|
|
|
|
// fn_02527A70 @ 0x2527a70
|
|
void Gambit_fn_02527A70(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _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;
|
|
|
|
L_02527A70: ; // 0x2527a70
|
|
/* 02527A70 */ _t0 = cpu->r[1] + 0xFFFFFF10u;
|
|
/* 02527A70 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02527A70 */ cpu->r[1] = _t0;
|
|
/* 02527A74 */ _t1 = cpu->r[1] + 0x000000E4u;
|
|
/* 02527A74 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 02527A78 */ _t2 = cpu->r[1] + 0x000000E8u;
|
|
/* 02527A78 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02527A7C */ _t3 = cpu->r[1] + 0x000000ECu;
|
|
/* 02527A7C */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 02527A80 */ _t4 = cpu->r[1] + 0x000000F4u;
|
|
/* 02527A80 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02527A84 */ cpu->r[29] = cpu->r[3];
|
|
/* 02527A88 */ cpu->r[30] = cpu->r[4];
|
|
/* 02527A8C */ _t5 = cpu->r[29] + 0x000001F0u;
|
|
/* 02527A8C */ cpu->r[31] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 02527A90 */ cpu->r[3] = cpu->r[30];
|
|
/* 02527A94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02527A98 */ Gambit_fn_0297FC7C(cpu);
|
|
/* 02527A9C */ _t6 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02527A9C */ cpu->r[8] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02527AA0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[8]);
|
|
/* 02527AA4 */ cpu->r[12] = 0x00000000u;
|
|
/* 02527AA8 */ _t7 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02527AA8 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02527AA8 */ if (_t8) goto L_02527AAC; else goto L_02527AB8;
|
|
L_02527AAC: ; // 0x2527aac
|
|
/* 02527AAC */ _t9 = cpu->r[30] + 0x00000024u;
|
|
/* 02527AAC */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02527AB0 */ cpu->r[9] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02527AB4 */ _t10 = cpu->r[9] + cpu->r[0];
|
|
/* 02527AB4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
L_02527AB8: ; // 0x2527ab8
|
|
/* 02527AB8 */ _t11 = cpu->r[12] + 0x00000000u;
|
|
/* 02527AB8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02527ABC */ _t12 = cpu->r[3] + 0x00000088u;
|
|
/* 02527ABC */ cpu->r[6] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02527AC0 */ _t13 = cpu->r[6] + 0x00000064u;
|
|
/* 02527AC0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02527AC4 */ cpu->ctr = cpu->r[0];
|
|
/* 02527AC8 */ _t14 = cpu->r[29] + 0x000001F2u;
|
|
/* 02527AC8 */ cpu->r[6] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 02527ACC */ cpu->r[5] = cpu->r[1] + 0x000000A4u;
|
|
/* 02527AD0 */ cpu->r[4] = cpu->r[1] + 0x00000074u;
|
|
/* 02527AD4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02527AD8 */ _t15 = cpu->r[1] + 0x00000074u;
|
|
/* 02527AD8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 02527ADC */ _t16 = cpu->r[1] + 0x00000084u;
|
|
/* 02527ADC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 02527AE0 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 02527AE0 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[11]);
|
|
/* 02527AE4 */ _t18 = cpu->r[1] + 0x00000088u;
|
|
/* 02527AE4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 02527AE8 */ _t19 = cpu->r[1] + 0x0000008Cu;
|
|
/* 02527AE8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 02527AEC */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02527AEC */ rbrew_write_f32(cpu->mem, _t20, cpu->f[13]);
|
|
/* 02527AF0 */ /* nop */
|
|
/* 02527AF4 */ cpu->r[10] = 0x101F0000u;
|
|
/* 02527AF8 */ _t21 = cpu->r[1] + 0x00000078u;
|
|
/* 02527AF8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 02527AFC */ _t22 = cpu->r[1] + 0x00000018u;
|
|
/* 02527AFC */ rbrew_write_f32(cpu->mem, _t22, cpu->f[0]);
|
|
/* 02527B00 */ _t23 = cpu->r[1] + 0x00000014u;
|
|
/* 02527B00 */ rbrew_write_f32(cpu->mem, _t23, cpu->f[13]);
|
|
/* 02527B04 */ /* nop */
|
|
/* 02527B08 */ cpu->r[10] = cpu->r[10] + 0x00006350u;
|
|
/* 02527B0C */ _t24 = cpu->r[1] + 0x000000A0u;
|
|
/* 02527B0C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 02527B10 */ /* nop */
|
|
/* 02527B14 */ _t25 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02527B14 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 02527B18 */ _t26 = cpu->r[1] + 0x00000024u;
|
|
/* 02527B18 */ rbrew_write_f32(cpu->mem, _t26, cpu->f[11]);
|
|
/* 02527B1C */ _t27 = cpu->r[1] + 0x00000020u;
|
|
/* 02527B1C */ rbrew_write_f32(cpu->mem, _t27, cpu->f[8]);
|
|
/* 02527B20 */ /* nop */
|
|
/* 02527B24 */ /* nop */
|
|
/* 02527B28 */ _t28 = cpu->r[1] + 0x00000034u;
|
|
/* 02527B28 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[9]);
|
|
/* 02527B2C */ /* nop */
|
|
/* 02527B30 */ _t29 = cpu->r[10] + 0x00000008u;
|
|
/* 02527B30 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 02527B34 */ /* nop */
|
|
/* 02527B38 */ _t30 = cpu->r[1] + 0x00000094u;
|
|
/* 02527B38 */ cpu->f[2] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 02527B3C */ /* nop */
|
|
/* 02527B40 */ _t31 = cpu->r[1] + 0x0000009Cu;
|
|
/* 02527B40 */ cpu->f[4] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 02527B44 */ /* nop */
|
|
/* 02527B48 */ _t32 = cpu->r[1] + 0x00000098u;
|
|
/* 02527B48 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 02527B4C */ _t33 = cpu->r[1] + 0x00000090u;
|
|
/* 02527B4C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 02527B50 */ cpu->f[0] = fma(cpu->f[9], cpu->f[10], cpu->f[0]);
|
|
/* 02527B54 */ _t34 = cpu->r[1] + 0x00000030u;
|
|
/* 02527B54 */ rbrew_write_f32(cpu->mem, _t34, cpu->f[8]);
|
|
/* 02527B58 */ /* nop */
|
|
/* 02527B5C */ /* nop */
|
|
/* 02527B60 */ cpu->f[11] = fma(cpu->f[9], cpu->f[2], cpu->f[11]);
|
|
/* 02527B64 */ _t35 = cpu->r[1] + 0x00000018u;
|
|
/* 02527B64 */ rbrew_write_f32(cpu->mem, _t35, cpu->f[0]);
|
|
/* 02527B68 */ cpu->f[9] = fma(cpu->f[9], cpu->f[4], cpu->f[8]);
|
|
/* 02527B6C */ /* nop */
|
|
/* 02527B70 */ _t36 = cpu->r[1] + 0x00000014u;
|
|
/* 02527B70 */ rbrew_write_f32(cpu->mem, _t36, cpu->f[11]);
|
|
/* 02527B74 */ /* nop */
|
|
/* 02527B78 */ /* nop */
|
|
/* 02527B7C */ /* nop */
|
|
/* 02527B80 */ _t37 = cpu->r[1] + 0x00000080u;
|
|
/* 02527B80 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 02527B84 */ /* nop */
|
|
/* 02527B88 */ _t38 = cpu->r[29] + 0x000001FCu;
|
|
/* 02527B88 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 02527B8C */ /* nop */
|
|
/* 02527B90 */ cpu->f[0] = fma(cpu->f[11], cpu->f[2], cpu->f[12]);
|
|
/* 02527B94 */ _t39 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02527B94 */ rbrew_write_f32(cpu->mem, _t39, cpu->f[6]);
|
|
/* 02527B98 */ /* nop */
|
|
/* 02527B9C */ _t40 = cpu->r[1] + 0x00000010u;
|
|
/* 02527B9C */ rbrew_write_f32(cpu->mem, _t40, cpu->f[2]);
|
|
/* 02527BA0 */ cpu->f[8] = cpu->f[12];
|
|
/* 02527BA4 */ _t41 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02527BA4 */ rbrew_write_f32(cpu->mem, _t41, cpu->f[9]);
|
|
/* 02527BA8 */ cpu->f[12] = cpu->f[7];
|
|
/* 02527BAC */ _t42 = cpu->r[1] + 0x00000020u;
|
|
/* 02527BAC */ rbrew_write_f32(cpu->mem, _t42, cpu->f[0]);
|
|
/* 02527BB0 */ cpu->f[7] = fma(cpu->f[11], cpu->f[9], cpu->f[8]);
|
|
/* 02527BB4 */ _t43 = cpu->r[1] + 0x00000068u;
|
|
/* 02527BB4 */ rbrew_write_f32(cpu->mem, _t43, cpu->f[0]);
|
|
/* 02527BB8 */ cpu->f[13] = fma(cpu->f[11], cpu->f[4], cpu->f[12]);
|
|
/* 02527BBC */ _t44 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02527BBC */ rbrew_write_f32(cpu->mem, _t44, cpu->f[7]);
|
|
/* 02527BC0 */ cpu->r[5] = 0x00000355u;
|
|
/* 02527BC4 */ _t45 = cpu->r[1] + 0x00000024u;
|
|
/* 02527BC4 */ rbrew_write_f32(cpu->mem, _t45, cpu->f[7]);
|
|
/* 02527BC8 */ cpu->r[4] = 0x100C0000u;
|
|
/* 02527BCC */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02527BD0 */ _t46 = cpu->r[1] + 0x00000070u;
|
|
/* 02527BD0 */ rbrew_write_f32(cpu->mem, _t46, cpu->f[13]);
|
|
/* 02527BD4 */ cpu->r[4] = cpu->r[4] + 0x00002A60u;
|
|
/* 02527BD8 */ _t47 = cpu->r[1] + 0x00000028u;
|
|
/* 02527BD8 */ rbrew_write_f32(cpu->mem, _t47, cpu->f[13]);
|
|
/* 02527BDC */ Gambit_fn_0204D380(cpu);
|
|
/* 02527BE0 */ _t48 = cpu->r[1] + 0x00000028u;
|
|
/* 02527BE0 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 02527BE4 */ _t49 = cpu->r[1] + 0x00000020u;
|
|
/* 02527BE4 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t49);
|
|
/* 02527BE8 */ _t50 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02527BE8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t50);
|
|
/* 02527BEC */ _t51 = cpu->r[1] + 0x00000040u;
|
|
/* 02527BEC */ rbrew_write_f32(cpu->mem, _t51, cpu->f[7]);
|
|
/* 02527BF0 */ _t52 = cpu->r[1] + 0x00000048u;
|
|
/* 02527BF0 */ rbrew_write_f32(cpu->mem, _t52, cpu->f[13]);
|
|
/* 02527BF4 */ _t53 = cpu->r[1] + 0x00000030u;
|
|
/* 02527BF4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t53);
|
|
/* 02527BF8 */ _t54 = cpu->r[1] + 0x00000008u;
|
|
/* 02527BF8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 02527BFC */ _t55 = cpu->r[1] + 0x00000054u;
|
|
/* 02527BFC */ rbrew_write_f32(cpu->mem, _t55, cpu->f[13]);
|
|
/* 02527C00 */ _t56 = cpu->r[1] + 0x00000018u;
|
|
/* 02527C00 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 02527C04 */ _t57 = cpu->r[1] + 0x00000038u;
|
|
/* 02527C04 */ rbrew_write_f32(cpu->mem, _t57, cpu->f[11]);
|
|
/* 02527C08 */ _t58 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02527C08 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 02527C0C */ _t59 = cpu->r[1] + 0x00000024u;
|
|
/* 02527C0C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t59);
|
|
/* 02527C10 */ _t60 = cpu->r[1] + 0x00000044u;
|
|
/* 02527C10 */ rbrew_write_f32(cpu->mem, _t60, cpu->f[11]);
|
|
/* 02527C14 */ _t61 = cpu->r[1] + 0x00000010u;
|
|
/* 02527C14 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t61);
|
|
/* 02527C18 */ _t62 = cpu->r[1] + 0x00000014u;
|
|
/* 02527C18 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t62);
|
|
/* 02527C1C */ _t63 = cpu->r[1] + 0x00000058u;
|
|
/* 02527C1C */ rbrew_write_f32(cpu->mem, _t63, cpu->f[0]);
|
|
/* 02527C20 */ _t64 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02527C20 */ rbrew_write_f32(cpu->mem, _t64, cpu->f[12]);
|
|
/* 02527C24 */ _t65 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02527C24 */ rbrew_write_f32(cpu->mem, _t65, cpu->f[7]);
|
|
/* 02527C28 */ _t66 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02527C28 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t66);
|
|
/* 02527C2C */ cpu->r[10] = cpu->r[1] + 0x00000034u;
|
|
/* 02527C30 */ _t67 = cpu->r[1] + 0x00000050u;
|
|
/* 02527C30 */ rbrew_write_f32(cpu->mem, _t67, cpu->f[8]);
|
|
/* 02527C34 */ cpu->r[12] = cpu->r[1] + 0x000000ACu;
|
|
/* 02527C38 */ _t68 = cpu->r[1] + 0x00000060u;
|
|
/* 02527C38 */ rbrew_write_f32(cpu->mem, _t68, cpu->f[9]);
|
|
/* 02527C3C */ _t69 = cpu->r[1] + 0x00000034u;
|
|
/* 02527C3C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t69);
|
|
/* 02527C40 */ cpu->r[7] = 0x00000003u;
|
|
/* 02527C44 */ _t70 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02527C44 */ rbrew_write_f32(cpu->mem, _t70, cpu->f[7]);
|
|
/* 02527C48 */ cpu->ctr = cpu->r[7];
|
|
/* 02527C4C */ _t71 = cpu->r[1] + 0x00000064u;
|
|
/* 02527C4C */ rbrew_write_f32(cpu->mem, _t71, cpu->f[10]);
|
|
L_02527C50: ; // 0x2527c50
|
|
/* 02527C50 */ _t72 = cpu->r[10] + 0x00000004u;
|
|
/* 02527C50 */ cpu->r[9] = rbrew_read32(cpu->mem, _t72);
|
|
/* 02527C54 */ _t73 = cpu->r[12] + 0x00000004u;
|
|
/* 02527C54 */ rbrew_write32(cpu->mem, _t73, cpu->r[9]);
|
|
/* 02527C58 */ _t74 = cpu->r[10] + 0x00000008u;
|
|
/* 02527C58 */ cpu->r[0] = rbrew_read32(cpu->mem, _t74);
|
|
/* 02527C5C */ _t75 = cpu->r[12] + 0x00000008u;
|
|
/* 02527C5C */ rbrew_write32(cpu->mem, _t75, cpu->r[0]);
|
|
/* 02527C60 */ _t76 = cpu->r[10] + 0x0000000Cu;
|
|
/* 02527C60 */ cpu->r[5] = rbrew_read32(cpu->mem, _t76);
|
|
/* 02527C64 */ _t77 = cpu->r[12] + 0x0000000Cu;
|
|
/* 02527C64 */ rbrew_write32(cpu->mem, _t77, cpu->r[5]);
|
|
/* 02527C68 */ _t78 = cpu->r[10] + 0x00000010u;
|
|
/* 02527C68 */ cpu->r[0] = rbrew_read32(cpu->mem, _t78);
|
|
/* 02527C68 */ cpu->r[10] = _t78;
|
|
/* 02527C6C */ _t79 = cpu->r[12] + 0x00000010u;
|
|
/* 02527C6C */ rbrew_write32(cpu->mem, _t79, cpu->r[0]);
|
|
/* 02527C6C */ cpu->r[12] = _t79;
|
|
/* 02527C70 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02527C70 */ _t80 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02527C70 */ _t81 = _t80 >> (0x00000002u & 31u);
|
|
/* 02527C70 */ _t82 = _t81 & 0x00000001u;
|
|
/* 02527C70 */ if (_t82) goto L_02527C50; else goto L_02527C74;
|
|
L_02527C74: ; // 0x2527c74
|
|
/* 02527C74 */ cpu->r[3] = cpu->r[1] + 0x000000B0u;
|
|
/* 02527C78 */ cpu->r[4] = cpu->r[1] + 0x00000074u;
|
|
/* 02527C7C */ Gambit_fn_02C69510(cpu);
|
|
/* 02527C80 */ cpu->r[6] = cpu->r[1] + 0x000000A4u;
|
|
/* 02527C84 */ cpu->r[5] = cpu->r[1] + 0x00000074u;
|
|
/* 02527C88 */ cpu->r[4] = cpu->r[29] + 0x000001F0u;
|
|
/* 02527C8C */ cpu->r[3] = cpu->r[30];
|
|
/* 02527C90 */ Gambit_fn_02980840(cpu);
|
|
/* 02527C94 */ _t83 = cpu->r[1] + 0x000000E4u;
|
|
/* 02527C94 */ cpu->r[29] = rbrew_read32(cpu->mem, _t83);
|
|
/* 02527C98 */ _t84 = cpu->r[1] + 0x000000F4u;
|
|
/* 02527C98 */ cpu->r[0] = rbrew_read32(cpu->mem, _t84);
|
|
/* 02527C9C */ _t85 = cpu->r[1] + 0x000000E8u;
|
|
/* 02527C9C */ cpu->r[30] = rbrew_read32(cpu->mem, _t85);
|
|
/* 02527CA0 */ cpu->lr = cpu->r[0];
|
|
/* 02527CA4 */ _t86 = cpu->r[1] + 0x000000ECu;
|
|
/* 02527CA4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t86);
|
|
/* 02527CA8 */ cpu->r[1] = cpu->r[1] + 0x000000F0u;
|
|
/* 02527CAC */ return;
|
|
}
|
|
|
|
// fn_02527CB0 @ 0x2527cb0
|
|
void Gambit_fn_02527CB0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _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_02527CB0: ; // 0x2527cb0
|
|
/* 02527CB0 */ goto L_02790458;
|
|
L_02790458: ; // 0x2790458
|
|
/* 02790458 */ _t0 = cpu->r[3] + 0x00000018u;
|
|
/* 02790458 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0279045C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02790460 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02790460 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02790460 */ if (_t2) goto L_02790470; else goto L_02790464;
|
|
L_02790464: ; // 0x2790464
|
|
/* 02790464 */ cpu->r[4] = cpu->r[3];
|
|
/* 02790468 */ cpu->r[3] = cpu->r[0];
|
|
/* 0279046C */ goto L_027912FC;
|
|
L_02790470: ; // 0x2790470
|
|
/* 02790470 */ _t3 = cpu->r[3] + 0x00000004u;
|
|
/* 02790470 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02790474 */ cpu->r[11] = 0x00000003u;
|
|
/* 02790478 */ _t4 = cpu->r[3] + 0x0000001Cu;
|
|
/* 02790478 */ rbrew_write32(cpu->mem, _t4, cpu->r[11]);
|
|
/* 0279047C */ _t5 = cpu->r[12] + 0x0000007Cu;
|
|
/* 0279047C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02790480 */ cpu->ctr = cpu->r[0];
|
|
/* 02790484 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
L_027912FC: ; // 0x27912fc
|
|
/* 027912FC */ _t6 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 027912FC */ rbrew_write32(cpu->mem, _t6, cpu->r[1]);
|
|
/* 027912FC */ cpu->r[1] = _t6;
|
|
/* 02791300 */ /* nop */
|
|
/* 02791304 */ cpu->r[0] = cpu->lr;
|
|
/* 02791308 */ _t7 = cpu->r[1] + 0x00000024u;
|
|
/* 02791308 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 0279130C */ cpu->r[31] = cpu->r[4];
|
|
/* 02791310 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02791310 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02791314 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000002u);
|
|
/* 02791318 */ cpu->r[30] = cpu->r[3];
|
|
/* 0279131C */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0279131C */ _t10 = _t9 & 0x00000001u;
|
|
/* 0279131C */ if (_t10) goto L_02791430; else goto L_02791320;
|
|
L_02791320: ; // 0x2791320
|
|
/* 02791320 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000003u);
|
|
/* 02791324 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02791324 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02791324 */ if (_t12) goto L_02791430; else goto L_02791328;
|
|
L_02791328: ; // 0x2791328
|
|
/* 02791328 */ _t13 = cpu->r[31] + 0x00000020u;
|
|
/* 02791328 */ cpu->r[28] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0279132C */ _t14 = cpu->r[30] + 0x00000030u;
|
|
/* 0279132C */ cpu->r[9] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02791330 */ cpu->r[8] = rbrew_rlwinm(cpu->r[28], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02791334 */ _t15 = cpu->r[8] + cpu->r[9];
|
|
/* 02791334 */ cpu->r[5] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02791338 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0279133C */ _t16 = cpu->r[5] + 0x00000008u;
|
|
/* 0279133C */ cpu->r[27] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02791340 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02791340 */ _t18 = _t17 & 0x00000001u;
|
|
/* 02791340 */ if (_t18) goto L_02791344; else goto L_02791400;
|
|
L_02791344: ; // 0x2791344
|
|
/* 02791344 */ _t19 = cpu->r[30] + 0x00000210u;
|
|
/* 02791344 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02791348 */ cpu->r[0] = cpu->r[30] + 0x00000204u;
|
|
/* 0279134C */ _t20 = cpu->r[30] + 0x00000208u;
|
|
/* 0279134C */ cpu->r[12] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02791350 */ cpu->r[0] = cpu->r[0] - cpu->r[11];
|
|
/* 02791354 */ cpu->r[29] = cpu->r[12] - cpu->r[11];
|
|
/* 02791358 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[0]);
|
|
/* 0279135C */ cpu->r[12] = cpu->r[11];
|
|
/* 02791360 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02791360 */ _t22 = _t21 & 0x00000001u;
|
|
/* 02791360 */ if (_t22) goto L_027913D4; else goto L_02791364;
|
|
L_02791364: ; // 0x2791364
|
|
/* 02791364 */ cpu->r[26] = 0x101D0000u;
|
|
L_02791368: ; // 0x2791368
|
|
/* 02791368 */ _t23 = cpu->r[29] + 0x00000008u;
|
|
/* 02791368 */ cpu->r[8] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0279136C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[31]);
|
|
/* 02791370 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02791370 */ _t25 = _t24 & 0x00000001u;
|
|
/* 02791370 */ if (_t25) goto L_02791374; else goto L_027913C0;
|
|
L_02791374: ; // 0x2791374
|
|
/* 02791374 */ cpu->r[3] = cpu->r[29] + cpu->r[11];
|
|
/* 02791378 */ Gambit_fn_02801EDC(cpu);
|
|
/* 0279137C */ _t26 = cpu->r[30] + 0x0000020Cu;
|
|
/* 0279137C */ cpu->r[6] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02791380 */ cpu->r[6] = cpu->r[6] + 0xFFFFFFFFu;
|
|
/* 02791384 */ _t27 = cpu->r[30] + 0x0000020Cu;
|
|
/* 02791384 */ rbrew_write32(cpu->mem, _t27, cpu->r[6]);
|
|
/* 02791388 */ _t28 = cpu->r[26] + 0xFFFF9038u;
|
|
/* 02791388 */ cpu->r[3] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0279138C */ cpu->r[4] = cpu->r[29];
|
|
/* 02791390 */ Gambit_fn_02792A54(cpu);
|
|
/* 02791394 */ cpu->r[6] = cpu->r[28];
|
|
/* 02791398 */ cpu->r[5] = cpu->r[27];
|
|
/* 0279139C */ cpu->r[4] = cpu->r[31];
|
|
/* 027913A0 */ cpu->r[3] = cpu->r[30];
|
|
/* 027913A4 */ Gambit_fn_02790E50(cpu);
|
|
/* 027913A8 */ cpu->r[6] = cpu->r[28];
|
|
/* 027913AC */ cpu->r[5] = cpu->r[27];
|
|
/* 027913B0 */ cpu->r[4] = cpu->r[31];
|
|
/* 027913B4 */ cpu->r[3] = cpu->r[30];
|
|
/* 027913B8 */ Gambit_fn_02790EE0(cpu);
|
|
/* 027913BC */ goto L_02791430;
|
|
L_027913C0: ; // 0x27913c0
|
|
/* 027913C0 */ cpu->r[10] = cpu->r[29] + cpu->r[12];
|
|
/* 027913C4 */ _t29 = cpu->r[10] + 0x00000004u;
|
|
/* 027913C4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t29);
|
|
/* 027913C8 */ cpu->r[29] = cpu->r[9] - cpu->r[12];
|
|
/* 027913CC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[0]);
|
|
/* 027913D0 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027913D0 */ _t31 = _t30 & 0x00000001u;
|
|
/* 027913D0 */ if (_t31) goto L_027913D4; else goto L_02791368;
|
|
L_027913D4: ; // 0x27913d4
|
|
/* 027913D4 */ cpu->r[6] = cpu->r[28];
|
|
/* 027913D8 */ cpu->r[5] = cpu->r[27];
|
|
/* 027913DC */ cpu->r[4] = cpu->r[31];
|
|
/* 027913E0 */ cpu->r[3] = cpu->r[30];
|
|
/* 027913E4 */ Gambit_fn_02790E50(cpu);
|
|
/* 027913E8 */ cpu->r[6] = cpu->r[28];
|
|
/* 027913EC */ cpu->r[5] = cpu->r[27];
|
|
/* 027913F0 */ cpu->r[4] = cpu->r[31];
|
|
/* 027913F4 */ cpu->r[3] = cpu->r[30];
|
|
/* 027913F8 */ Gambit_fn_02790EE0(cpu);
|
|
/* 027913FC */ goto L_02791430;
|
|
L_02791400: ; // 0x2791400
|
|
/* 02791400 */ _t32 = cpu->r[5] + 0x0000000Cu;
|
|
/* 02791400 */ cpu->r[29] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02791404 */ _t33 = cpu->r[29] + 0x0000000Cu;
|
|
/* 02791404 */ cpu->r[10] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02791408 */ cpu->r[3] = cpu->r[31] + cpu->r[10];
|
|
/* 0279140C */ Gambit_fn_02801EDC(cpu);
|
|
/* 02791410 */ _t34 = cpu->r[29] + 0x00000008u;
|
|
/* 02791410 */ cpu->r[7] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02791414 */ cpu->r[6] = cpu->r[28];
|
|
/* 02791418 */ cpu->r[3] = cpu->r[30];
|
|
/* 0279141C */ cpu->r[4] = cpu->r[31];
|
|
/* 02791420 */ cpu->r[7] = cpu->r[7] + 0xFFFFFFFFu;
|
|
/* 02791424 */ cpu->r[5] = cpu->r[27];
|
|
/* 02791428 */ _t35 = cpu->r[29] + 0x00000008u;
|
|
/* 02791428 */ rbrew_write32(cpu->mem, _t35, cpu->r[7]);
|
|
/* 0279142C */ Gambit_fn_02790EE0(cpu);
|
|
L_02791430: ; // 0x2791430
|
|
/* 02791430 */ /* nop */
|
|
/* 02791434 */ _t36 = cpu->r[1] + 0x00000024u;
|
|
/* 02791434 */ cpu->r[0] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02791438 */ cpu->lr = cpu->r[0];
|
|
/* 0279143C */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 02791440 */ return;
|
|
}
|
|
|
|
// fn_02527CB4 @ 0x2527cb4
|
|
void Gambit_fn_02527CB4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_02527CB4: ; // 0x2527cb4
|
|
/* 02527CB4 */ cpu->r[0] = cpu->lr;
|
|
/* 02527CB8 */ cpu->r[12] = 0x100C0000u;
|
|
/* 02527CBC */ cpu->r[11] = 0x100C0000u;
|
|
/* 02527CC0 */ cpu->r[12] = cpu->r[12] + 0x00002A78u;
|
|
/* 02527CC4 */ cpu->r[11] = cpu->r[11] + 0x0000289Cu;
|
|
/* 02527CC8 */ cpu->r[3] = 0x101F0000u;
|
|
/* 02527CCC */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 02527CCC */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 02527CD0 */ cpu->r[0] = 0x02530000u;
|
|
/* 02527CD4 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 02527CD4 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 02527CD4 */ cpu->r[1] = _t1;
|
|
/* 02527CD8 */ cpu->r[0] = cpu->r[0] + 0xFFFF899Cu;
|
|
/* 02527CDC */ _t2 = cpu->r[3] + 0xFFFF9B54u;
|
|
/* 02527CDC */ rbrew_write32(cpu->mem, _t2, cpu->r[12]);
|
|
/* 02527CDC */ cpu->r[3] = _t2;
|
|
/* 02527CE0 */ cpu->r[12] = 0x100C0000u;
|
|
/* 02527CE4 */ _t3 = cpu->r[3] + 0x00000004u;
|
|
/* 02527CE4 */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 02527CE8 */ cpu->r[12] = cpu->r[12] + 0x0000295Cu;
|
|
/* 02527CEC */ _t4 = cpu->r[3] + 0x00000010u;
|
|
/* 02527CEC */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02527CF0 */ _t5 = cpu->r[3] + 0x00000008u;
|
|
/* 02527CF0 */ rbrew_write32(cpu->mem, _t5, cpu->r[12]);
|
|
/* 02527CF4 */ _t6 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02527CF4 */ rbrew_write32(cpu->mem, _t6, cpu->r[11]);
|
|
/* 02527CF8 */ Gambit_fn_027DB2F8(cpu);
|
|
/* 02527CFC */ cpu->r[3] = 0x101C0000u;
|
|
/* 02527D00 */ cpu->r[3] = cpu->r[3] + 0x0000688Cu;
|
|
/* 02527D04 */ Gambit_fn_02C83090(cpu);
|
|
/* 02527D08 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02527D08 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02527D0C */ cpu->lr = cpu->r[0];
|
|
/* 02527D10 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 02527D14 */ return;
|
|
}
|
|
|
|
// fn_02527CD4 @ 0x2527cd4
|
|
void Gambit_fn_02527CD4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_02527CD4: ; // 0x2527cd4
|
|
/* 02527CD4 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 02527CD4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02527CD4 */ cpu->r[1] = _t0;
|
|
/* 02527CD8 */ cpu->r[0] = cpu->r[0] + 0xFFFF899Cu;
|
|
/* 02527CDC */ _t1 = cpu->r[3] + 0xFFFF9B54u;
|
|
/* 02527CDC */ rbrew_write32(cpu->mem, _t1, cpu->r[12]);
|
|
/* 02527CDC */ cpu->r[3] = _t1;
|
|
/* 02527CE0 */ cpu->r[12] = 0x100C0000u;
|
|
/* 02527CE4 */ _t2 = cpu->r[3] + 0x00000004u;
|
|
/* 02527CE4 */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 02527CE8 */ cpu->r[12] = cpu->r[12] + 0x0000295Cu;
|
|
/* 02527CEC */ _t3 = cpu->r[3] + 0x00000010u;
|
|
/* 02527CEC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02527CF0 */ _t4 = cpu->r[3] + 0x00000008u;
|
|
/* 02527CF0 */ rbrew_write32(cpu->mem, _t4, cpu->r[12]);
|
|
/* 02527CF4 */ _t5 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02527CF4 */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 02527CF8 */ Gambit_fn_027DB2F8(cpu);
|
|
/* 02527CFC */ cpu->r[3] = 0x101C0000u;
|
|
/* 02527D00 */ cpu->r[3] = cpu->r[3] + 0x0000688Cu;
|
|
/* 02527D04 */ Gambit_fn_02C83090(cpu);
|
|
/* 02527D08 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02527D08 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02527D0C */ cpu->lr = cpu->r[0];
|
|
/* 02527D10 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 02527D14 */ return;
|
|
}
|
|
|
|
// fn_02527D18 @ 0x2527d18
|
|
void Gambit_fn_02527D18(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_02527D18: ; // 0x2527d18
|
|
/* 02527D18 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02527D1C */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02527D1C */ _t1 = _t0 & 0x00000001u;
|
|
/* 02527D1C */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02527D1C */ goto L_02527D20;
|
|
L_02527D20: ; // 0x2527d20
|
|
/* 02527D20 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02527D20 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02527D24 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02527D24 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02527D24 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02527D24 */ goto L_02527D28;
|
|
L_02527D28: ; // 0x2527d28
|
|
/* 02527D28 */ 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_02527D2C @ 0x2527d2c
|
|
void Gambit_fn_02527D2C(CPUState* cpu) {
|
|
L_02527D2C: ; // 0x2527d2c
|
|
/* 02527D2C */ return;
|
|
}
|
|
|
|
// fn_02527D30 @ 0x2527d30
|
|
void Gambit_fn_02527D30(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_02527D30: ; // 0x2527d30
|
|
/* 02527D30 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02527D34 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02527D34 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02527D34 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02527D34 */ goto L_02527D38;
|
|
L_02527D38: ; // 0x2527d38
|
|
/* 02527D38 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02527D38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02527D3C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02527D3C */ _t3 = _t2 & 0x00000001u;
|
|
/* 02527D3C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02527D3C */ goto L_02527D40;
|
|
L_02527D40: ; // 0x2527d40
|
|
/* 02527D40 */ 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_02527D44 @ 0x2527d44
|
|
void Gambit_fn_02527D44(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_02527D44: ; // 0x2527d44
|
|
/* 02527D44 */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 02527D44 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02527D48 */ _t1 = cpu->r[3] + 0x00000008u;
|
|
/* 02527D48 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02527D4C */ cpu->r[12] = cpu->r[11] + cpu->r[12];
|
|
/* 02527D50 */ cpu->r[11] = 0x10110000u;
|
|
/* 02527D54 */ _t2 = cpu->r[11] + 0x00007399u;
|
|
/* 02527D54 */ cpu->r[0] = rbrew_read8(cpu->mem, _t2);
|
|
/* 02527D58 */ _t3 = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 02527D58 */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[0]);
|
|
/* 02527D5C */ return;
|
|
}
|
|
|
|
// fn_02527D60 @ 0x2527d60
|
|
void Gambit_fn_02527D60(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_02527D60: ; // 0x2527d60
|
|
/* 02527D60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02527D64 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02527D64 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02527D64 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02527D64 */ goto L_02527D68;
|
|
L_02527D68: ; // 0x2527d68
|
|
/* 02527D68 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02527D68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02527D6C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02527D6C */ _t3 = _t2 & 0x00000001u;
|
|
/* 02527D6C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02527D6C */ goto L_02527D70;
|
|
L_02527D70: ; // 0x2527d70
|
|
/* 02527D70 */ 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_02527D74 @ 0x2527d74
|
|
void Gambit_fn_02527D74(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_02527D74: ; // 0x2527d74
|
|
/* 02527D74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02527D78 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02527D78 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02527D78 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02527D78 */ goto L_02527D7C;
|
|
L_02527D7C: ; // 0x2527d7c
|
|
/* 02527D7C */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02527D7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02527D80 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02527D80 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02527D80 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02527D80 */ goto L_02527D84;
|
|
L_02527D84: ; // 0x2527d84
|
|
/* 02527D84 */ 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_02527D88 @ 0x2527d88
|
|
void Gambit_fn_02527D88(CPUState* cpu) {
|
|
L_02527D88: ; // 0x2527d88
|
|
/* 02527D88 */ return;
|
|
}
|
|
|
|
// fn_02527D8C @ 0x2527d8c
|
|
void Gambit_fn_02527D8C(CPUState* cpu) {
|
|
L_02527D8C: ; // 0x2527d8c
|
|
/* 02527D8C */ return;
|
|
}
|
|
|
|
// fn_02527D90 @ 0x2527d90
|
|
void Gambit_fn_02527D90(CPUState* cpu) {
|
|
L_02527D90: ; // 0x2527d90
|
|
/* 02527D90 */ return;
|
|
}
|
|
|
|
// fn_02527D94 @ 0x2527d94
|
|
void Gambit_fn_02527D94(CPUState* cpu) {
|
|
L_02527D94: ; // 0x2527d94
|
|
/* 02527D94 */ return;
|
|
}
|
|
|
|
// fn_02527D98 @ 0x2527d98
|
|
void Gambit_fn_02527D98(CPUState* cpu) {
|
|
L_02527D98: ; // 0x2527d98
|
|
/* 02527D98 */ return;
|
|
}
|
|
|
|
// fn_02527D9C @ 0x2527d9c
|
|
void Gambit_fn_02527D9C(CPUState* cpu) {
|
|
L_02527D9C: ; // 0x2527d9c
|
|
/* 02527D9C */ return;
|
|
}
|
|
|
|
// fn_02527DA0 @ 0x2527da0
|
|
void Gambit_fn_02527DA0(CPUState* cpu) {
|
|
L_02527DA0: ; // 0x2527da0
|
|
/* 02527DA0 */ return;
|
|
}
|
|
|
|
// fn_02527DA4 @ 0x2527da4
|
|
void Gambit_fn_02527DA4(CPUState* cpu) {
|
|
L_02527DA4: ; // 0x2527da4
|
|
/* 02527DA4 */ return;
|
|
}
|
|
|
|
// fn_02527DA8 @ 0x2527da8
|
|
void Gambit_fn_02527DA8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_02527DA8: ; // 0x2527da8
|
|
/* 02527DA8 */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 02527DA8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02527DAC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02527DB0 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02527DB0 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02527DB0 */ if (_t2) goto L_02527DBC; else goto L_02527DB4;
|
|
L_02527DB4: ; // 0x2527db4
|
|
/* 02527DB4 */ cpu->r[3] = cpu->r[12] + 0x00000034u;
|
|
/* 02527DB8 */ return;
|
|
L_02527DBC: ; // 0x2527dbc
|
|
/* 02527DBC */ cpu->r[3] = 0x00000000u;
|
|
/* 02527DC0 */ return;
|
|
}
|
|
|
|
// fn_02527DC4 @ 0x2527dc4
|
|
void Gambit_fn_02527DC4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_02527DC4: ; // 0x2527dc4
|
|
/* 02527DC4 */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 02527DC4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02527DC8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02527DCC */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02527DCC */ _t2 = _t1 & 0x00000001u;
|
|
/* 02527DCC */ if (_t2) goto L_02527DD8; else goto L_02527DD0;
|
|
L_02527DD0: ; // 0x2527dd0
|
|
/* 02527DD0 */ cpu->r[3] = cpu->r[12] + 0x00000064u;
|
|
/* 02527DD4 */ return;
|
|
L_02527DD8: ; // 0x2527dd8
|
|
/* 02527DD8 */ cpu->r[3] = 0x00000000u;
|
|
/* 02527DDC */ return;
|
|
}
|
|
|
|
// fn_02527DE0 @ 0x2527de0
|
|
void Gambit_fn_02527DE0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02527DE0: ; // 0x2527de0
|
|
/* 02527DE0 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02527DE0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02527DE4 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02527DE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02527DE8 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02527DE8 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02527DE8 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 02527DE8 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02527DE8 */ goto L_02527DEC;
|
|
L_02527DEC: ; // 0x2527dec
|
|
/* 02527DEC */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 02527DEC */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02527DF0 */ _t5 = cpu->r[12] + 0x0000004Cu;
|
|
/* 02527DF0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02527DF4 */ cpu->ctr = cpu->r[0];
|
|
/* 02527DF8 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02527DFC @ 0x2527dfc
|
|
void Gambit_fn_02527DFC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02527DFC: ; // 0x2527dfc
|
|
/* 02527DFC */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02527DFC */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02527E00 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Du, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02527E00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02527E04 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02527E04 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02527E04 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 02527E04 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02527E04 */ goto L_02527E08;
|
|
L_02527E08: ; // 0x2527e08
|
|
/* 02527E08 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 02527E08 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02527E0C */ _t5 = cpu->r[12] + 0x0000005Cu;
|
|
/* 02527E0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02527E10 */ cpu->ctr = cpu->r[0];
|
|
/* 02527E14 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02527E18 @ 0x2527e18
|
|
void Gambit_fn_02527E18(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02527E18: ; // 0x2527e18
|
|
/* 02527E18 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02527E18 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02527E1C */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Au, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02527E1C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02527E20 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02527E20 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02527E20 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 02527E20 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02527E20 */ goto L_02527E24;
|
|
L_02527E24: ; // 0x2527e24
|
|
/* 02527E24 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 02527E24 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02527E28 */ _t5 = cpu->r[11] + 0x00000074u;
|
|
/* 02527E28 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02527E2C */ cpu->ctr = cpu->r[0];
|
|
/* 02527E30 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02527E34 @ 0x2527e34
|
|
void Gambit_fn_02527E34(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02527E34: ; // 0x2527e34
|
|
/* 02527E34 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02527E34 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02527E38 */ _t1 = cpu->r[12] + 0x0000002Cu;
|
|
/* 02527E38 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02527E3C */ cpu->ctr = cpu->r[0];
|
|
/* 02527E40 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02527E44 @ 0x2527e44
|
|
void Gambit_fn_02527E44(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02527E44: ; // 0x2527e44
|
|
/* 02527E44 */ cpu->r[0] = cpu->lr;
|
|
/* 02527E48 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02527E48 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02527E48 */ cpu->r[1] = _t0;
|
|
/* 02527E4C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02527E4C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02527E50 */ cpu->r[31] = cpu->r[3];
|
|
/* 02527E54 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02527E54 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02527E58 */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02527E58 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02527E5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 02527E60 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02527E60 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02527E60 */ if (_t5) goto L_02527E64; else goto L_02527E80;
|
|
L_02527E64: ; // 0x2527e64
|
|
/* 02527E64 */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 02527E64 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02527E68 */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 02527E68 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02527E6C */ cpu->ctr = cpu->r[0];
|
|
/* 02527E70 */ cpu->r[3] = cpu->r[31];
|
|
/* 02527E74 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02527E78 */ cpu->r[0] = 0x00000002u;
|
|
/* 02527E7C */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02527E7C */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_02527E80: ; // 0x2527e80
|
|
/* 02527E80 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 02527E80 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02527E84 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02527E84 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02527E88 */ cpu->lr = cpu->r[0];
|
|
/* 02527E8C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02527E90 */ return;
|
|
}
|
|
|
|
// fn_02527E48 @ 0x2527e48
|
|
void Gambit_fn_02527E48(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02527E48: ; // 0x2527e48
|
|
/* 02527E48 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02527E48 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02527E48 */ cpu->r[1] = _t0;
|
|
/* 02527E4C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02527E4C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02527E50 */ cpu->r[31] = cpu->r[3];
|
|
/* 02527E54 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02527E54 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02527E58 */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02527E58 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02527E5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 02527E60 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02527E60 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02527E60 */ if (_t5) goto L_02527E64; else goto L_02527E80;
|
|
L_02527E64: ; // 0x2527e64
|
|
/* 02527E64 */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 02527E64 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02527E68 */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 02527E68 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02527E6C */ cpu->ctr = cpu->r[0];
|
|
/* 02527E70 */ cpu->r[3] = cpu->r[31];
|
|
/* 02527E74 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02527E78 */ cpu->r[0] = 0x00000002u;
|
|
/* 02527E7C */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02527E7C */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_02527E80: ; // 0x2527e80
|
|
/* 02527E80 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 02527E80 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02527E84 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02527E84 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02527E88 */ cpu->lr = cpu->r[0];
|
|
/* 02527E8C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02527E90 */ return;
|
|
}
|
|
|
|
// fn_02527E9C @ 0x2527e9c
|
|
void Gambit_fn_02527E9C(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_02527E9C: ; // 0x2527e9c
|
|
/* 02527E9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02527EA0 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02527EA0 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02527EA0 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02527EA0 */ goto L_02527EA4;
|
|
L_02527EA4: ; // 0x2527ea4
|
|
/* 02527EA4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02527EA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02527EA8 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02527EA8 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02527EA8 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02527EA8 */ goto L_02527EAC;
|
|
L_02527EAC: ; // 0x2527eac
|
|
/* 02527EAC */ 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_02527EB0 @ 0x2527eb0
|
|
void Gambit_fn_02527EB0(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02527EB0: ; // 0x2527eb0
|
|
/* 02527EB0 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02527EB0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02527EB4 */ _t1 = cpu->r[12] + 0x0000008Cu;
|
|
/* 02527EB4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02527EB8 */ cpu->ctr = cpu->r[0];
|
|
/* 02527EBC */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02527EC0 @ 0x2527ec0
|
|
void Gambit_fn_02527EC0(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02527EC0: ; // 0x2527ec0
|
|
/* 02527EC0 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02527EC0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02527EC4 */ _t1 = cpu->r[12] + 0x00000124u;
|
|
/* 02527EC4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02527EC8 */ cpu->ctr = cpu->r[0];
|
|
/* 02527ECC */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02527ED0 @ 0x2527ed0
|
|
void Gambit_fn_02527ED0(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02527ED0: ; // 0x2527ed0
|
|
/* 02527ED0 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02527ED0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02527ED4 */ _t1 = cpu->r[12] + 0x00000124u;
|
|
/* 02527ED4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02527ED8 */ cpu->ctr = cpu->r[0];
|
|
/* 02527EDC */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02527EE0 @ 0x2527ee0
|
|
void Gambit_fn_02527EE0(CPUState* cpu) {
|
|
L_02527EE0: ; // 0x2527ee0
|
|
/* 02527EE0 */ cpu->r[3] = 0x00000001u;
|
|
/* 02527EE4 */ return;
|
|
}
|
|
|
|
// fn_02527EE8 @ 0x2527ee8
|
|
void Gambit_fn_02527EE8(CPUState* cpu) {
|
|
L_02527EE8: ; // 0x2527ee8
|
|
/* 02527EE8 */ return;
|
|
}
|
|
|
|
// fn_02527EEC @ 0x2527eec
|
|
void Gambit_fn_02527EEC(CPUState* cpu) {
|
|
L_02527EEC: ; // 0x2527eec
|
|
/* 02527EEC */ return;
|
|
}
|
|
|
|
// fn_02527EF0 @ 0x2527ef0
|
|
void Gambit_fn_02527EF0(CPUState* cpu) {
|
|
L_02527EF0: ; // 0x2527ef0
|
|
/* 02527EF0 */ cpu->r[3] = 0x00000001u;
|
|
/* 02527EF4 */ return;
|
|
}
|
|
|
|
// fn_02527EF8 @ 0x2527ef8
|
|
void Gambit_fn_02527EF8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02527EF8: ; // 0x2527ef8
|
|
/* 02527EF8 */ cpu->r[10] = 0x101F0000u;
|
|
/* 02527EFC */ _t0 = cpu->r[10] + 0x00006338u;
|
|
/* 02527EFC */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02527EFC */ cpu->r[10] = _t0;
|
|
/* 02527F00 */ _t1 = cpu->r[3] + 0x00000000u;
|
|
/* 02527F00 */ rbrew_write32(cpu->mem, _t1, cpu->r[11]);
|
|
/* 02527F04 */ _t2 = cpu->r[10] + 0x00000004u;
|
|
/* 02527F04 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02527F08 */ _t3 = cpu->r[3] + 0x00000004u;
|
|
/* 02527F08 */ rbrew_write32(cpu->mem, _t3, cpu->r[12]);
|
|
/* 02527F0C */ _t4 = cpu->r[10] + 0x00000008u;
|
|
/* 02527F0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02527F10 */ _t5 = cpu->r[3] + 0x00000008u;
|
|
/* 02527F10 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02527F14 */ return;
|
|
}
|
|
|
|
// fn_02527F18 @ 0x2527f18
|
|
void Gambit_fn_02527F18(CPUState* cpu) {
|
|
L_02527F18: ; // 0x2527f18
|
|
/* 02527F18 */ return;
|
|
}
|
|
|
|
// fn_02527F1C @ 0x2527f1c
|
|
void Gambit_fn_02527F1C(CPUState* cpu) {
|
|
L_02527F1C: ; // 0x2527f1c
|
|
/* 02527F1C */ return;
|
|
}
|
|
|
|
// fn_02527F20 @ 0x2527f20
|
|
void Gambit_fn_02527F20(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02527F20: ; // 0x2527f20
|
|
/* 02527F20 */ _t0 = cpu->r[3] + 0x00000140u;
|
|
/* 02527F20 */ cpu->r[3] = rbrew_read8(cpu->mem, _t0);
|
|
/* 02527F24 */ return;
|
|
}
|
|
|
|
// fn_02527F28 @ 0x2527f28
|
|
void Gambit_fn_02527F28(CPUState* cpu) {
|
|
L_02527F28: ; // 0x2527f28
|
|
/* 02527F28 */ cpu->r[3] = 0x00000001u;
|
|
/* 02527F2C */ return;
|
|
}
|
|
|
|
// fn_02527F30 @ 0x2527f30
|
|
void Gambit_fn_02527F30(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02527F30: ; // 0x2527f30
|
|
/* 02527F30 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02527F30 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02527F34 */ _t1 = cpu->r[12] + 0x00000234u;
|
|
/* 02527F34 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02527F38 */ cpu->ctr = cpu->r[0];
|
|
/* 02527F3C */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02527F40 @ 0x2527f40
|
|
void Gambit_fn_02527F40(CPUState* cpu) {
|
|
L_02527F40: ; // 0x2527f40
|
|
/* 02527F40 */ return;
|
|
}
|
|
|
|
// fn_02527F44 @ 0x2527f44
|
|
void Gambit_fn_02527F44(CPUState* cpu) {
|
|
L_02527F44: ; // 0x2527f44
|
|
/* 02527F44 */ return;
|
|
}
|
|
|
|
// fn_02527F48 @ 0x2527f48
|
|
void Gambit_fn_02527F48(CPUState* cpu) {
|
|
L_02527F48: ; // 0x2527f48
|
|
/* 02527F48 */ return;
|
|
}
|
|
|
|
// fn_02527F4C @ 0x2527f4c
|
|
void Gambit_fn_02527F4C(CPUState* cpu) {
|
|
L_02527F4C: ; // 0x2527f4c
|
|
/* 02527F4C */ return;
|
|
}
|
|
|
|
// fn_02527F50 @ 0x2527f50
|
|
void Gambit_fn_02527F50(CPUState* cpu) {
|
|
L_02527F50: ; // 0x2527f50
|
|
/* 02527F50 */ return;
|
|
}
|
|
|
|
// fn_02527F54 @ 0x2527f54
|
|
void Gambit_fn_02527F54(CPUState* cpu) {
|
|
L_02527F54: ; // 0x2527f54
|
|
/* 02527F54 */ return;
|
|
}
|
|
|
|
// fn_02527F58 @ 0x2527f58
|
|
void Gambit_fn_02527F58(CPUState* cpu) {
|
|
L_02527F58: ; // 0x2527f58
|
|
/* 02527F58 */ return;
|
|
}
|
|
|
|
// fn_02527F5C @ 0x2527f5c
|
|
void Gambit_fn_02527F5C(CPUState* cpu) {
|
|
L_02527F5C: ; // 0x2527f5c
|
|
/* 02527F5C */ return;
|
|
}
|
|
|
|
// fn_02527F60 @ 0x2527f60
|
|
void Gambit_fn_02527F60(CPUState* cpu) {
|
|
L_02527F60: ; // 0x2527f60
|
|
/* 02527F60 */ return;
|
|
}
|
|
|
|
// fn_02527F64 @ 0x2527f64
|
|
void Gambit_fn_02527F64(CPUState* cpu) {
|
|
L_02527F64: ; // 0x2527f64
|
|
/* 02527F64 */ cpu->r[3] = 0x00000000u;
|
|
/* 02527F68 */ return;
|
|
}
|
|
|
|
// fn_02527F6C @ 0x2527f6c
|
|
void Gambit_fn_02527F6C(CPUState* cpu) {
|
|
L_02527F6C: ; // 0x2527f6c
|
|
/* 02527F6C */ return;
|
|
}
|
|
|
|
// fn_02527F70 @ 0x2527f70
|
|
void Gambit_fn_02527F70(CPUState* cpu) {
|
|
L_02527F70: ; // 0x2527f70
|
|
/* 02527F70 */ return;
|
|
}
|
|
|
|
// fn_02527F74 @ 0x2527f74
|
|
void Gambit_fn_02527F74(CPUState* cpu) {
|
|
L_02527F74: ; // 0x2527f74
|
|
/* 02527F74 */ cpu->r[3] = 0x00000001u;
|
|
/* 02527F78 */ return;
|
|
}
|
|
|
|
// fn_02527F7C @ 0x2527f7c
|
|
void Gambit_fn_02527F7C(CPUState* cpu) {
|
|
L_02527F7C: ; // 0x2527f7c
|
|
/* 02527F7C */ cpu->r[3] = 0x00000000u;
|
|
/* 02527F80 */ return;
|
|
}
|
|
|
|
// fn_02527F84 @ 0x2527f84
|
|
void Gambit_fn_02527F84(CPUState* cpu) {
|
|
L_02527F84: ; // 0x2527f84
|
|
/* 02527F84 */ cpu->r[3] = 0x00000000u;
|
|
/* 02527F88 */ return;
|
|
}
|
|
|
|
// fn_02527F8C @ 0x2527f8c
|
|
void Gambit_fn_02527F8C(CPUState* cpu) {
|
|
L_02527F8C: ; // 0x2527f8c
|
|
/* 02527F8C */ cpu->r[3] = 0x00000000u;
|
|
/* 02527F90 */ return;
|
|
}
|
|
|
|
// fn_02527F94 @ 0x2527f94
|
|
void Gambit_fn_02527F94(CPUState* cpu) {
|
|
L_02527F94: ; // 0x2527f94
|
|
/* 02527F94 */ cpu->r[3] = 0x00000000u;
|
|
/* 02527F98 */ return;
|
|
}
|
|
|
|
// fn_02527F9C @ 0x2527f9c
|
|
void Gambit_fn_02527F9C(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02527F9C: ; // 0x2527f9c
|
|
/* 02527F9C */ _t0 = cpu->r[3] + 0x000000E4u;
|
|
/* 02527F9C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 02527FA0 */ return;
|
|
}
|
|
|
|
// fn_02527FA4 @ 0x2527fa4
|
|
void Gambit_fn_02527FA4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02527FA4: ; // 0x2527fa4
|
|
/* 02527FA4 */ _t0 = cpu->r[4] + 0x00000078u;
|
|
/* 02527FA4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02527FA8 */ _t1 = cpu->r[3] + 0x00000000u;
|
|
/* 02527FA8 */ rbrew_write32(cpu->mem, _t1, cpu->r[12]);
|
|
/* 02527FAC */ _t2 = cpu->r[4] + 0x0000007Cu;
|
|
/* 02527FAC */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02527FB0 */ _t3 = cpu->r[3] + 0x00000004u;
|
|
/* 02527FB0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02527FB4 */ _t4 = cpu->r[4] + 0x00000080u;
|
|
/* 02527FB4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02527FB8 */ _t5 = cpu->r[3] + 0x00000008u;
|
|
/* 02527FB8 */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 02527FBC */ return;
|
|
}
|
|
|
|
// fn_02527FC0 @ 0x2527fc0
|
|
void Gambit_fn_02527FC0(CPUState* cpu) {
|
|
L_02527FC0: ; // 0x2527fc0
|
|
/* 02527FC0 */ cpu->r[3] = 0x100C0000u;
|
|
/* 02527FC4 */ cpu->r[3] = cpu->r[3] + 0x0000296Cu;
|
|
/* 02527FC8 */ return;
|
|
}
|
|
|
|
// fn_02527FCC @ 0x2527fcc
|
|
void Gambit_fn_02527FCC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32;
|
|
|
|
L_02527FCC: ; // 0x2527fcc
|
|
/* 02527FCC */ cpu->r[10] = 0x101D0000u;
|
|
/* 02527FD0 */ _t0 = cpu->r[10] + 0x000004C4u;
|
|
/* 02527FD0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02527FD4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02527FD8 */ cpu->r[10] = 0x101D0000u;
|
|
/* 02527FDC */ cpu->r[10] = cpu->r[10] + 0x000009F8u;
|
|
/* 02527FE0 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02527FE0 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02527FE0 */ if (_t2) goto L_02527FE4; else goto L_02527FFC;
|
|
L_02527FE4: ; // 0x2527fe4
|
|
/* 02527FE4 */ cpu->r[0] = 0x100C0000u;
|
|
/* 02527FE8 */ cpu->r[9] = 0x00000001u;
|
|
/* 02527FEC */ cpu->r[11] = 0x101D0000u;
|
|
/* 02527FF0 */ cpu->r[0] = cpu->r[0] + 0x0000294Cu;
|
|
/* 02527FF4 */ _t3 = cpu->r[11] + 0x000004C4u;
|
|
/* 02527FF4 */ rbrew_write32(cpu->mem, _t3, cpu->r[9]);
|
|
/* 02527FF8 */ _t4 = cpu->r[10] + 0x00000000u;
|
|
/* 02527FF8 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
L_02527FFC: ; // 0x2527ffc
|
|
/* 02527FFC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[10]);
|
|
/* 02528000 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02528000 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02528000 */ if (_t6) goto L_02528004; else goto L_0252800C;
|
|
L_02528004: ; // 0x2528004
|
|
/* 02528004 */ cpu->r[3] = 0x00000001u;
|
|
/* 02528008 */ return;
|
|
L_0252800C: ; // 0x252800c
|
|
/* 0252800C */ cpu->r[9] = 0x101D0000u;
|
|
/* 02528010 */ _t7 = cpu->r[9] + 0xFFFFDDF0u;
|
|
/* 02528010 */ cpu->r[9] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02528014 */ cpu->r[11] = 0x101D0000u;
|
|
/* 02528018 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0252801C */ cpu->r[11] = cpu->r[11] + 0xFFFFFF40u;
|
|
/* 02528020 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02528020 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02528020 */ if (_t9) goto L_02528024; else goto L_0252803C;
|
|
L_02528024: ; // 0x2528024
|
|
/* 02528024 */ cpu->r[9] = 0x100C0000u;
|
|
/* 02528028 */ cpu->r[0] = 0x00000001u;
|
|
/* 0252802C */ cpu->r[10] = 0x101D0000u;
|
|
/* 02528030 */ cpu->r[9] = cpu->r[9] + 0x0000291Cu;
|
|
/* 02528034 */ _t10 = cpu->r[10] + 0xFFFFDDF0u;
|
|
/* 02528034 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 02528038 */ _t11 = cpu->r[11] + 0x00000000u;
|
|
/* 02528038 */ rbrew_write32(cpu->mem, _t11, cpu->r[9]);
|
|
L_0252803C: ; // 0x252803c
|
|
/* 0252803C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[11]);
|
|
/* 02528040 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02528040 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02528040 */ if (_t13) goto L_02528044; else goto L_0252804C;
|
|
L_02528044: ; // 0x2528044
|
|
/* 02528044 */ cpu->r[0] = 0x00000001u;
|
|
/* 02528048 */ goto L_02528104;
|
|
L_0252804C: ; // 0x252804c
|
|
/* 0252804C */ cpu->r[11] = 0x101D0000u;
|
|
/* 02528050 */ _t14 = cpu->r[11] + 0xFFFFDA10u;
|
|
/* 02528050 */ cpu->r[11] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02528054 */ cpu->r[9] = 0x101D0000u;
|
|
/* 02528058 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0252805C */ cpu->r[9] = cpu->r[9] + 0xFFFFFBBCu;
|
|
/* 02528060 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02528060 */ _t16 = _t15 & 0x00000001u;
|
|
/* 02528060 */ if (_t16) goto L_02528064; else goto L_0252807C;
|
|
L_02528064: ; // 0x2528064
|
|
/* 02528064 */ cpu->r[11] = 0x100C0000u;
|
|
/* 02528068 */ cpu->r[10] = 0x00000001u;
|
|
/* 0252806C */ cpu->r[12] = 0x101D0000u;
|
|
/* 02528070 */ cpu->r[11] = cpu->r[11] + 0x0000290Cu;
|
|
/* 02528074 */ _t17 = cpu->r[12] + 0xFFFFDA10u;
|
|
/* 02528074 */ rbrew_write32(cpu->mem, _t17, cpu->r[10]);
|
|
/* 02528078 */ _t18 = cpu->r[9] + 0x00000000u;
|
|
/* 02528078 */ rbrew_write32(cpu->mem, _t18, cpu->r[11]);
|
|
L_0252807C: ; // 0x252807c
|
|
/* 0252807C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[9]);
|
|
/* 02528080 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02528080 */ _t20 = _t19 & 0x00000001u;
|
|
/* 02528080 */ if (_t20) goto L_02528084; else goto L_0252808C;
|
|
L_02528084: ; // 0x2528084
|
|
/* 02528084 */ cpu->r[0] = 0x00000001u;
|
|
/* 02528088 */ goto L_02528100;
|
|
L_0252808C: ; // 0x252808c
|
|
/* 0252808C */ cpu->r[9] = 0x101D0000u;
|
|
/* 02528090 */ _t21 = cpu->r[9] + 0xFFFFD4E8u;
|
|
/* 02528090 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02528090 */ cpu->r[9] = _t21;
|
|
/* 02528094 */ cpu->r[10] = 0x101D0000u;
|
|
/* 02528098 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0252809C */ cpu->r[10] = cpu->r[10] + 0xFFFFD4ECu;
|
|
/* 025280A0 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025280A0 */ _t23 = _t22 & 0x00000001u;
|
|
/* 025280A0 */ if (_t23) goto L_025280A4; else goto L_025280B8;
|
|
L_025280A4: ; // 0x25280a4
|
|
/* 025280A4 */ cpu->r[0] = 0x100C0000u;
|
|
/* 025280A8 */ cpu->r[11] = 0x00000001u;
|
|
/* 025280AC */ cpu->r[0] = cpu->r[0] + 0x000028FCu;
|
|
/* 025280B0 */ _t24 = cpu->r[9] + 0x00000000u;
|
|
/* 025280B0 */ rbrew_write32(cpu->mem, _t24, cpu->r[11]);
|
|
/* 025280B4 */ _t25 = cpu->r[10] + 0x00000000u;
|
|
/* 025280B4 */ rbrew_write32(cpu->mem, _t25, cpu->r[0]);
|
|
L_025280B8: ; // 0x25280b8
|
|
/* 025280B8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[10]);
|
|
/* 025280BC */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025280BC */ _t27 = _t26 & 0x00000001u;
|
|
/* 025280BC */ if (_t27) goto L_025280C0; else goto L_025280C8;
|
|
L_025280C0: ; // 0x25280c0
|
|
/* 025280C0 */ cpu->r[0] = 0x00000001u;
|
|
/* 025280C4 */ goto L_02528100;
|
|
L_025280C8: ; // 0x25280c8
|
|
/* 025280C8 */ cpu->r[10] = 0x101D0000u;
|
|
/* 025280CC */ _t28 = cpu->r[10] + 0xFFFFD4E0u;
|
|
/* 025280CC */ cpu->r[9] = rbrew_read32(cpu->mem, _t28);
|
|
/* 025280CC */ cpu->r[10] = _t28;
|
|
/* 025280D0 */ cpu->r[11] = 0x101D0000u;
|
|
/* 025280D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 025280D8 */ cpu->r[11] = cpu->r[11] + 0xFFFFD4E4u;
|
|
/* 025280DC */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025280DC */ _t30 = _t29 & 0x00000001u;
|
|
/* 025280DC */ if (_t30) goto L_025280E0; else goto L_025280F4;
|
|
L_025280E0: ; // 0x25280e0
|
|
/* 025280E0 */ cpu->r[9] = 0x100C0000u;
|
|
/* 025280E4 */ cpu->r[0] = 0x00000001u;
|
|
/* 025280E8 */ cpu->r[9] = cpu->r[9] + 0x0000288Cu;
|
|
/* 025280EC */ _t31 = cpu->r[10] + 0x00000000u;
|
|
/* 025280EC */ rbrew_write32(cpu->mem, _t31, cpu->r[0]);
|
|
/* 025280F0 */ _t32 = cpu->r[11] + 0x00000000u;
|
|
/* 025280F0 */ rbrew_write32(cpu->mem, _t32, cpu->r[9]);
|
|
L_025280F4: ; // 0x25280f4
|
|
/* 025280F4 */ cpu->r[0] = cpu->r[4] ^ cpu->r[11];
|
|
/* 025280F8 */ cpu->r[0] = rbrew_clz32(cpu->r[0]);
|
|
/* 025280FC */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
L_02528100: ; // 0x2528100
|
|
/* 02528100 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
L_02528104: ; // 0x2528104
|
|
/* 02528104 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 02528108 */ return;
|
|
}
|
|
|
|
// fn_0252810C @ 0x252810c
|
|
void Gambit_fn_0252810C(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0252810C: ; // 0x252810c
|
|
/* 0252810C */ cpu->r[12] = 0x100C0000u;
|
|
/* 02528110 */ _t0 = cpu->r[12] + 0x0000297Cu;
|
|
/* 02528110 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 02528114 */ return;
|
|
}
|
|
|
|
// fn_02528124 @ 0x2528124
|
|
void Gambit_fn_02528124(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_023A3674: ; // 0x23a3674
|
|
/* 023A3674 */ cpu->r[0] = cpu->lr;
|
|
/* 023A3678 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 023A3678 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 023A3678 */ cpu->r[1] = _t0;
|
|
/* 023A367C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023A367C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 023A3680 */ cpu->r[31] = cpu->r[3];
|
|
/* 023A3684 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 023A3684 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 023A3688 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 023A3688 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 023A368C */ cpu->r[12] = 0x00000000u;
|
|
/* 023A3690 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 023A3694 */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 023A3694 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 023A3698 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A3698 */ _t6 = _t5 & 0x00000001u;
|
|
/* 023A3698 */ if (_t6) goto L_023A36C0; else goto L_023A369C;
|
|
L_023A369C: ; // 0x23a369c
|
|
/* 023A369C */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 023A369C */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 023A36A0 */ /* nop */
|
|
/* 023A36A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 023A36A8 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A36A8 */ _t9 = _t8 & 0x00000001u;
|
|
/* 023A36A8 */ if (_t9) goto L_023A36AC; else goto L_023A36C0;
|
|
L_023A36AC: ; // 0x23a36ac
|
|
/* 023A36AC */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 023A36AC */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 023A36B0 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 023A36B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 023A36B4 */ cpu->ctr = cpu->r[0];
|
|
/* 023A36B8 */ cpu->r[3] = cpu->r[31];
|
|
/* 023A36BC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_023A36C0: ; // 0x23a36c0
|
|
/* 023A36C0 */ cpu->r[3] = cpu->r[31];
|
|
/* 023A36C4 */ Gambit_fn_023A35EC(cpu);
|
|
/* 023A36C8 */ cpu->r[3] = cpu->r[31];
|
|
/* 023A36CC */ Gambit_fn_027FC37C(cpu);
|
|
/* 023A36D0 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 023A36D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 023A36D4 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023A36D4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 023A36D8 */ cpu->lr = cpu->r[0];
|
|
/* 023A36DC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 023A36E0 */ return;
|
|
L_02528124: ; // 0x2528124
|
|
/* 02528124 */ cpu->r[3] = cpu->r[3] + 0x000001B0u;
|
|
/* 02528128 */ goto L_023A3674;
|
|
}
|
|
|
|
// fn_0252812C @ 0x252812c
|
|
void Gambit_fn_0252812C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0252812C: ; // 0x252812c
|
|
/* 0252812C */ cpu->r[0] = cpu->lr;
|
|
/* 02528130 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02528130 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02528130 */ cpu->r[1] = _t0;
|
|
/* 02528134 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02528134 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02528138 */ cpu->r[31] = cpu->r[3];
|
|
/* 0252813C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0252813C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02528140 */ _t3 = cpu->r[31] + 0x000001BEu;
|
|
/* 02528140 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02528144 */ cpu->r[3] = cpu->r[31] + 0x000001B0u;
|
|
/* 02528148 */ /* nop */
|
|
/* 0252814C */ Gambit_fn_027FC35C(cpu);
|
|
/* 02528150 */ cpu->r[3] = cpu->r[31] + 0x000001B0u;
|
|
/* 02528154 */ Gambit_fn_023A3564(cpu);
|
|
/* 02528158 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 02528158 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0252815C */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252815C */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02528160 */ cpu->lr = cpu->r[0];
|
|
/* 02528164 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02528168 */ return;
|
|
}
|
|
|
|
// fn_02528130 @ 0x2528130
|
|
void Gambit_fn_02528130(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02528130: ; // 0x2528130
|
|
/* 02528130 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02528130 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02528130 */ cpu->r[1] = _t0;
|
|
/* 02528134 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02528134 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02528138 */ cpu->r[31] = cpu->r[3];
|
|
/* 0252813C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0252813C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02528140 */ _t3 = cpu->r[31] + 0x000001BEu;
|
|
/* 02528140 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02528144 */ cpu->r[3] = cpu->r[31] + 0x000001B0u;
|
|
/* 02528148 */ /* nop */
|
|
/* 0252814C */ Gambit_fn_027FC35C(cpu);
|
|
/* 02528150 */ cpu->r[3] = cpu->r[31] + 0x000001B0u;
|
|
/* 02528154 */ Gambit_fn_023A3564(cpu);
|
|
/* 02528158 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 02528158 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0252815C */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252815C */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02528160 */ cpu->lr = cpu->r[0];
|
|
/* 02528164 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02528168 */ return;
|
|
}
|
|
|
|
// fn_0252816C @ 0x252816c
|
|
void Gambit_fn_0252816C(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_0252816C: ; // 0x252816c
|
|
/* 0252816C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02528170 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02528170 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02528170 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02528170 */ goto L_02528174;
|
|
L_02528174: ; // 0x2528174
|
|
/* 02528174 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02528174 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02528178 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02528178 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02528178 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02528178 */ goto L_0252817C;
|
|
L_0252817C: ; // 0x252817c
|
|
/* 0252817C */ 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_02528180 @ 0x2528180
|
|
void Gambit_fn_02528180(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_02528180: ; // 0x2528180
|
|
/* 02528180 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02528184 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02528184 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02528184 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02528184 */ goto L_02528188;
|
|
L_02528188: ; // 0x2528188
|
|
/* 02528188 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02528188 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0252818C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252818C */ _t3 = _t2 & 0x00000001u;
|
|
/* 0252818C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0252818C */ goto L_02528190;
|
|
L_02528190: ; // 0x2528190
|
|
/* 02528190 */ 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_02528194 @ 0x2528194
|
|
void Gambit_fn_02528194(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _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_02528194: ; // 0x2528194
|
|
/* 02528194 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 02528194 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02528194 */ cpu->r[1] = _t0;
|
|
/* 02528198 */ /* nop */
|
|
/* 0252819C */ cpu->r[0] = cpu->lr;
|
|
/* 025281A0 */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 025281A0 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 025281A4 */ cpu->r[29] = cpu->r[6];
|
|
/* 025281A8 */ cpu->r[28] = cpu->r[3];
|
|
/* 025281AC */ cpu->r[30] = cpu->r[5];
|
|
/* 025281B0 */ _t2 = cpu->r[30] + 0x00000000u;
|
|
/* 025281B0 */ cpu->r[27] = rbrew_read8(cpu->mem, _t2);
|
|
/* 025281B4 */ cpu->r[31] = 0x101D0000u;
|
|
/* 025281B8 */ _t3 = cpu->r[28] + 0x0000001Cu;
|
|
/* 025281B8 */ rbrew_write32(cpu->mem, _t3, cpu->r[4]);
|
|
/* 025281BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 025281C0 */ _t4 = cpu->r[28] + 0x0000000Fu;
|
|
/* 025281C0 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[27]);
|
|
/* 025281C4 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025281C4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 025281C4 */ if (_t6) goto L_02528208; else goto L_025281C8;
|
|
L_025281C8: ; // 0x25281c8
|
|
/* 025281C8 */ _t7 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 025281C8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 025281CC */ Gambit_fn_02826F20(cpu);
|
|
/* 025281D0 */ _t8 = cpu->r[3] + 0x0000000Cu;
|
|
/* 025281D0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t8);
|
|
/* 025281D4 */ _t9 = cpu->r[9] + 0x00000034u;
|
|
/* 025281D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 025281D8 */ cpu->ctr = cpu->r[0];
|
|
/* 025281DC */ cpu->r[5] = 0x00000004u;
|
|
/* 025281E0 */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 025281E4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 025281E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 025281EC */ cpu->r[0] = cpu->r[27];
|
|
/* 025281F0 */ _t10 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 025281F0 */ _t11 = _t10 & 0x00000001u;
|
|
/* 025281F0 */ if (_t11) goto L_025281F8; else goto L_025281F4;
|
|
L_025281F4: ; // 0x25281f4
|
|
/* 025281F4 */ cpu->r[0] = 0x00000001u;
|
|
L_025281F8: ; // 0x25281f8
|
|
/* 025281F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 025281FC */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025281FC */ _t13 = _t12 & 0x00000001u;
|
|
/* 025281FC */ if (_t13) goto L_02528208; else goto L_02528200;
|
|
L_02528200: ; // 0x2528200
|
|
/* 02528200 */ _t14 = cpu->r[28] + 0x00000024u;
|
|
/* 02528200 */ rbrew_write32(cpu->mem, _t14, cpu->r[3]);
|
|
/* 02528204 */ _t15 = cpu->r[28] + 0x00000020u;
|
|
/* 02528204 */ rbrew_write32(cpu->mem, _t15, cpu->r[27]);
|
|
L_02528208: ; // 0x2528208
|
|
/* 02528208 */ _t16 = cpu->r[28] + 0x00000020u;
|
|
/* 02528208 */ cpu->r[7] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0252820C */ cpu->r[0] = 0x00000000u;
|
|
/* 02528210 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 02528214 */ cpu->r[12] = cpu->r[0];
|
|
/* 02528218 */ _t17 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02528218 */ _t18 = _t17 & 0x00000001u;
|
|
/* 02528218 */ if (_t18) goto L_0252821C; else goto L_02528240;
|
|
L_0252821C: ; // 0x252821c
|
|
/* 0252821C */ cpu->ctr = cpu->r[7];
|
|
/* 02528220 */ cpu->r[10] = 0x00000000u;
|
|
L_02528224: ; // 0x2528224
|
|
/* 02528224 */ _t19 = cpu->r[28] + 0x00000024u;
|
|
/* 02528224 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02528228 */ _t20 = cpu->r[11] + cpu->r[10];
|
|
/* 02528228 */ rbrew_write16(cpu->mem, _t20, (uint16_t)cpu->r[0]);
|
|
/* 0252822C */ cpu->r[8] = cpu->r[11] + cpu->r[10];
|
|
/* 02528230 */ _t21 = cpu->r[8] + 0x00000004u;
|
|
/* 02528230 */ rbrew_write32(cpu->mem, _t21, cpu->r[12]);
|
|
/* 02528234 */ cpu->r[10] = cpu->r[10] + 0x00000008u;
|
|
/* 02528238 */ _t22 = cpu->r[8] + 0x00000002u;
|
|
/* 02528238 */ rbrew_write16(cpu->mem, _t22, (uint16_t)cpu->r[0]);
|
|
/* 0252823C */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0252823C */ _t23 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0252823C */ _t24 = _t23 >> (0x00000002u & 31u);
|
|
/* 0252823C */ _t25 = _t24 & 0x00000001u;
|
|
/* 0252823C */ if (_t25) goto L_02528224; else goto L_02528240;
|
|
L_02528240: ; // 0x2528240
|
|
/* 02528240 */ _t26 = cpu->r[28] + 0x0000000Fu;
|
|
/* 02528240 */ cpu->r[27] = rbrew_read8(cpu->mem, _t26);
|
|
/* 02528244 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02528248 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02528248 */ _t28 = _t27 & 0x00000001u;
|
|
/* 02528248 */ if (_t28) goto L_0252828C; else goto L_0252824C;
|
|
L_0252824C: ; // 0x252824c
|
|
/* 0252824C */ _t29 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 0252824C */ cpu->r[3] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02528250 */ Gambit_fn_02826F20(cpu);
|
|
/* 02528254 */ _t30 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02528254 */ cpu->r[12] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02528258 */ _t31 = cpu->r[12] + 0x00000034u;
|
|
/* 02528258 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0252825C */ cpu->ctr = cpu->r[0];
|
|
/* 02528260 */ cpu->r[5] = 0x00000004u;
|
|
/* 02528264 */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02528268 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252826C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02528270 */ cpu->r[11] = cpu->r[27];
|
|
/* 02528274 */ _t32 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02528274 */ _t33 = _t32 & 0x00000001u;
|
|
/* 02528274 */ if (_t33) goto L_0252827C; else goto L_02528278;
|
|
L_02528278: ; // 0x2528278
|
|
/* 02528278 */ cpu->r[11] = 0x00000001u;
|
|
L_0252827C: ; // 0x252827c
|
|
/* 0252827C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02528280 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02528280 */ _t35 = _t34 & 0x00000001u;
|
|
/* 02528280 */ if (_t35) goto L_0252828C; else goto L_02528284;
|
|
L_02528284: ; // 0x2528284
|
|
/* 02528284 */ _t36 = cpu->r[28] + 0x0000002Cu;
|
|
/* 02528284 */ rbrew_write32(cpu->mem, _t36, cpu->r[3]);
|
|
/* 02528288 */ _t37 = cpu->r[28] + 0x00000028u;
|
|
/* 02528288 */ rbrew_write32(cpu->mem, _t37, cpu->r[27]);
|
|
L_0252828C: ; // 0x252828c
|
|
/* 0252828C */ _t38 = cpu->r[28] + 0x00000028u;
|
|
/* 0252828C */ cpu->r[6] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02528290 */ cpu->r[0] = 0x00000000u;
|
|
/* 02528294 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 02528298 */ cpu->r[12] = cpu->r[0];
|
|
/* 0252829C */ _t39 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252829C */ _t40 = _t39 & 0x00000001u;
|
|
/* 0252829C */ if (_t40) goto L_025282A0; else goto L_025282C4;
|
|
L_025282A0: ; // 0x25282a0
|
|
/* 025282A0 */ cpu->ctr = cpu->r[6];
|
|
/* 025282A4 */ cpu->r[9] = 0x00000000u;
|
|
L_025282A8: ; // 0x25282a8
|
|
/* 025282A8 */ _t41 = cpu->r[28] + 0x0000002Cu;
|
|
/* 025282A8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t41);
|
|
/* 025282AC */ _t42 = cpu->r[5] + cpu->r[9];
|
|
/* 025282AC */ rbrew_write16(cpu->mem, _t42, (uint16_t)cpu->r[0]);
|
|
/* 025282B0 */ cpu->r[7] = cpu->r[5] + cpu->r[9];
|
|
/* 025282B4 */ _t43 = cpu->r[7] + 0x00000004u;
|
|
/* 025282B4 */ rbrew_write32(cpu->mem, _t43, cpu->r[12]);
|
|
/* 025282B8 */ cpu->r[9] = cpu->r[9] + 0x00000008u;
|
|
/* 025282BC */ _t44 = cpu->r[7] + 0x00000002u;
|
|
/* 025282BC */ rbrew_write16(cpu->mem, _t44, (uint16_t)cpu->r[0]);
|
|
/* 025282C0 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 025282C0 */ _t45 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 025282C0 */ _t46 = _t45 >> (0x00000002u & 31u);
|
|
/* 025282C0 */ _t47 = _t46 & 0x00000001u;
|
|
/* 025282C0 */ if (_t47) goto L_025282A8; else goto L_025282C4;
|
|
L_025282C4: ; // 0x25282c4
|
|
/* 025282C4 */ _t48 = cpu->r[28] + 0x0000000Fu;
|
|
/* 025282C4 */ cpu->r[27] = rbrew_read8(cpu->mem, _t48);
|
|
/* 025282C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 025282CC */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025282CC */ _t50 = _t49 & 0x00000001u;
|
|
/* 025282CC */ if (_t50) goto L_02528310; else goto L_025282D0;
|
|
L_025282D0: ; // 0x25282d0
|
|
/* 025282D0 */ _t51 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 025282D0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t51);
|
|
/* 025282D4 */ Gambit_fn_02826F20(cpu);
|
|
/* 025282D8 */ _t52 = cpu->r[3] + 0x0000000Cu;
|
|
/* 025282D8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t52);
|
|
/* 025282DC */ _t53 = cpu->r[6] + 0x00000034u;
|
|
/* 025282DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t53);
|
|
/* 025282E0 */ cpu->ctr = cpu->r[0];
|
|
/* 025282E4 */ cpu->r[5] = 0x00000004u;
|
|
/* 025282E8 */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 025282EC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 025282F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 025282F4 */ cpu->r[10] = cpu->r[27];
|
|
/* 025282F8 */ _t54 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 025282F8 */ _t55 = _t54 & 0x00000001u;
|
|
/* 025282F8 */ if (_t55) goto L_02528300; else goto L_025282FC;
|
|
L_025282FC: ; // 0x25282fc
|
|
/* 025282FC */ cpu->r[10] = 0x00000001u;
|
|
L_02528300: ; // 0x2528300
|
|
/* 02528300 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02528304 */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02528304 */ _t57 = _t56 & 0x00000001u;
|
|
/* 02528304 */ if (_t57) goto L_02528310; else goto L_02528308;
|
|
L_02528308: ; // 0x2528308
|
|
/* 02528308 */ _t58 = cpu->r[28] + 0x00000034u;
|
|
/* 02528308 */ rbrew_write32(cpu->mem, _t58, cpu->r[3]);
|
|
/* 0252830C */ _t59 = cpu->r[28] + 0x00000030u;
|
|
/* 0252830C */ rbrew_write32(cpu->mem, _t59, cpu->r[27]);
|
|
L_02528310: ; // 0x2528310
|
|
/* 02528310 */ _t60 = cpu->r[28] + 0x00000030u;
|
|
/* 02528310 */ cpu->r[12] = rbrew_read32(cpu->mem, _t60);
|
|
/* 02528314 */ cpu->r[0] = 0x00000000u;
|
|
/* 02528318 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0252831C */ cpu->r[5] = cpu->r[0];
|
|
/* 02528320 */ _t61 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02528320 */ _t62 = _t61 & 0x00000001u;
|
|
/* 02528320 */ if (_t62) goto L_02528324; else goto L_02528348;
|
|
L_02528324: ; // 0x2528324
|
|
/* 02528324 */ cpu->ctr = cpu->r[12];
|
|
/* 02528328 */ cpu->r[8] = 0x00000000u;
|
|
L_0252832C: ; // 0x252832c
|
|
/* 0252832C */ _t63 = cpu->r[28] + 0x00000034u;
|
|
/* 0252832C */ cpu->r[9] = rbrew_read32(cpu->mem, _t63);
|
|
/* 02528330 */ _t64 = cpu->r[9] + cpu->r[8];
|
|
/* 02528330 */ rbrew_write16(cpu->mem, _t64, (uint16_t)cpu->r[0]);
|
|
/* 02528334 */ cpu->r[6] = cpu->r[9] + cpu->r[8];
|
|
/* 02528338 */ _t65 = cpu->r[6] + 0x00000004u;
|
|
/* 02528338 */ rbrew_write32(cpu->mem, _t65, cpu->r[5]);
|
|
/* 0252833C */ cpu->r[8] = cpu->r[8] + 0x00000008u;
|
|
/* 02528340 */ _t66 = cpu->r[6] + 0x00000002u;
|
|
/* 02528340 */ rbrew_write16(cpu->mem, _t66, (uint16_t)cpu->r[0]);
|
|
/* 02528344 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02528344 */ _t67 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02528344 */ _t68 = _t67 >> (0x00000002u & 31u);
|
|
/* 02528344 */ _t69 = _t68 & 0x00000001u;
|
|
/* 02528344 */ if (_t69) goto L_0252832C; else goto L_02528348;
|
|
L_02528348: ; // 0x2528348
|
|
/* 02528348 */ _t70 = cpu->r[30] + 0x00000000u;
|
|
/* 02528348 */ cpu->r[25] = rbrew_read8(cpu->mem, _t70);
|
|
/* 0252834C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 02528350 */ _t71 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02528350 */ _t72 = _t71 & 0x00000001u;
|
|
/* 02528350 */ if (_t72) goto L_0252842C; else goto L_02528354;
|
|
L_02528354: ; // 0x2528354
|
|
/* 02528354 */ _t73 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 02528354 */ cpu->r[3] = rbrew_read32(cpu->mem, _t73);
|
|
/* 02528358 */ Gambit_fn_02826F20(cpu);
|
|
/* 0252835C */ _t74 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0252835C */ cpu->r[10] = rbrew_read32(cpu->mem, _t74);
|
|
/* 02528360 */ _t75 = cpu->r[10] + 0x00000034u;
|
|
/* 02528360 */ cpu->r[12] = rbrew_read32(cpu->mem, _t75);
|
|
/* 02528364 */ cpu->ctr = cpu->r[12];
|
|
/* 02528368 */ cpu->r[5] = 0x00000004u;
|
|
/* 0252836C */ cpu->r[4] = (uint32_t)((int32_t)cpu->r[25] * (int32_t)0x00000024u);
|
|
/* 02528370 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02528374 */ cpu->r[24] = cpu->r[3];
|
|
/* 02528378 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 0252837C */ cpu->r[30] = cpu->r[25];
|
|
/* 02528380 */ cpu->r[7] = 0x00000000u;
|
|
/* 02528384 */ _t76 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02528384 */ _t77 = _t76 & 0x00000001u;
|
|
/* 02528384 */ if (_t77) goto L_0252838C; else goto L_02528388;
|
|
L_02528388: ; // 0x2528388
|
|
/* 02528388 */ cpu->r[30] = 0x00000001u;
|
|
L_0252838C: ; // 0x252838c
|
|
/* 0252838C */ cpu->r[31] = 0x10110000u;
|
|
/* 02528390 */ cpu->r[22] = (uint32_t)((int32_t)cpu->r[7] * (int32_t)0x00000024u);
|
|
/* 02528394 */ _t78 = cpu->r[31] + 0x00007399u;
|
|
/* 02528394 */ cpu->r[31] = rbrew_read8(cpu->mem, _t78);
|
|
/* 02528398 */ cpu->r[23] = 0x00000018u;
|
|
L_0252839C: ; // 0x252839c
|
|
/* 0252839C */ cpu->r[27] = cpu->r[24] + cpu->r[22];
|
|
/* 0252839C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 025283A0 */ _t79 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025283A0 */ _t80 = _t79 & 0x00000001u;
|
|
/* 025283A0 */ if (_t80) goto L_02528410; else goto L_025283A4;
|
|
L_025283A4: ; // 0x25283a4
|
|
/* 025283A4 */ cpu->r[26] = cpu->r[27];
|
|
/* 025283A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 025283A8 */ _t81 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025283A8 */ _t82 = _t81 & 0x00000001u;
|
|
/* 025283A8 */ if (_t82) goto L_025283AC; else goto L_025283BC;
|
|
L_025283AC: ; // 0x25283ac
|
|
/* 025283AC */ cpu->r[3] = 0x00000024u;
|
|
/* 025283B0 */ Gambit_fn_02801A78(cpu);
|
|
/* 025283B4 */ cpu->r[26] = cpu->r[3];
|
|
/* 025283B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 025283B8 */ _t83 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025283B8 */ _t84 = _t83 & 0x00000001u;
|
|
/* 025283B8 */ if (_t84) goto L_02528404; else goto L_025283BC;
|
|
L_025283BC: ; // 0x25283bc
|
|
/* 025283BC */ cpu->r[11] = cpu->r[26];
|
|
/* 025283BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 025283C0 */ _t85 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025283C0 */ _t86 = _t85 & 0x00000001u;
|
|
/* 025283C0 */ if (_t86) goto L_025283C4; else goto L_025283D4;
|
|
L_025283C4: ; // 0x25283c4
|
|
/* 025283C4 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 025283C8 */ Gambit_fn_02801A78(cpu);
|
|
/* 025283CC */ cpu->r[11] = cpu->r[3];
|
|
/* 025283CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 025283D0 */ _t87 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025283D0 */ _t88 = _t87 & 0x00000001u;
|
|
/* 025283D0 */ if (_t88) goto L_025283F0; else goto L_025283D4;
|
|
L_025283D4: ; // 0x25283d4
|
|
/* 025283D4 */ cpu->r[5] = 0x100C0000u;
|
|
/* 025283D8 */ _t89 = cpu->r[11] + 0x00000008u;
|
|
/* 025283D8 */ rbrew_write32(cpu->mem, _t89, cpu->r[23]);
|
|
/* 025283DC */ cpu->r[0] = cpu->r[26] + 0x0000000Cu;
|
|
/* 025283E0 */ cpu->r[5] = cpu->r[5] + 0x000028B4u;
|
|
/* 025283E4 */ _t90 = cpu->r[11] + 0x00000000u;
|
|
/* 025283E4 */ rbrew_write32(cpu->mem, _t90, cpu->r[0]);
|
|
/* 025283E8 */ _t91 = cpu->r[11] + 0x00000004u;
|
|
/* 025283E8 */ rbrew_write32(cpu->mem, _t91, cpu->r[5]);
|
|
/* 025283EC */ _t92 = cpu->r[26] + 0x00000023u;
|
|
/* 025283EC */ rbrew_write8(cpu->mem, _t92, (uint8_t)cpu->r[31]);
|
|
L_025283F0: ; // 0x25283f0
|
|
/* 025283F0 */ cpu->r[6] = 0x100C0000u;
|
|
/* 025283F4 */ _t93 = cpu->r[26] + 0x00000000u;
|
|
/* 025283F4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t93);
|
|
/* 025283F8 */ cpu->r[6] = cpu->r[6] + 0x000028CCu;
|
|
/* 025283FC */ _t94 = cpu->r[26] + 0x00000004u;
|
|
/* 025283FC */ rbrew_write32(cpu->mem, _t94, cpu->r[6]);
|
|
/* 02528400 */ _t95 = cpu->r[7] + 0x00000000u;
|
|
/* 02528400 */ rbrew_write8(cpu->mem, _t95, (uint8_t)cpu->r[31]);
|
|
L_02528404: ; // 0x2528404
|
|
/* 02528404 */ cpu->r[0] = 0x100C0000u;
|
|
/* 02528408 */ cpu->r[0] = cpu->r[0] + 0x000028E4u;
|
|
/* 0252840C */ _t96 = cpu->r[27] + 0x00000004u;
|
|
/* 0252840C */ rbrew_write32(cpu->mem, _t96, cpu->r[0]);
|
|
L_02528410: ; // 0x2528410
|
|
/* 02528410 */ cpu->r[30] = cpu->r[30] + 0xFFFFFFFFu;
|
|
/* 02528410 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02528414 */ cpu->r[22] = cpu->r[22] + 0x00000024u;
|
|
/* 02528418 */ _t97 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02528418 */ _t98 = _t97 & 0x00000001u;
|
|
/* 02528418 */ if (_t98) goto L_0252841C; else goto L_0252839C;
|
|
L_0252841C: ; // 0x252841c
|
|
/* 0252841C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 02528420 */ _t99 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02528420 */ _t100 = _t99 & 0x00000001u;
|
|
/* 02528420 */ if (_t100) goto L_0252842C; else goto L_02528424;
|
|
L_02528424: ; // 0x2528424
|
|
/* 02528424 */ _t101 = cpu->r[28] + 0x00000018u;
|
|
/* 02528424 */ rbrew_write32(cpu->mem, _t101, cpu->r[24]);
|
|
/* 02528428 */ _t102 = cpu->r[28] + 0x00000014u;
|
|
/* 02528428 */ rbrew_write32(cpu->mem, _t102, cpu->r[25]);
|
|
L_0252842C: ; // 0x252842c
|
|
/* 0252842C */ _t103 = cpu->r[28] + 0x0000000Eu;
|
|
/* 0252842C */ rbrew_write8(cpu->mem, _t103, (uint8_t)cpu->r[29]);
|
|
/* 02528430 */ /* nop */
|
|
/* 02528434 */ _t104 = cpu->r[1] + 0x00000034u;
|
|
/* 02528434 */ cpu->r[0] = rbrew_read32(cpu->mem, _t104);
|
|
/* 02528438 */ cpu->lr = cpu->r[0];
|
|
/* 0252843C */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 02528440 */ return;
|
|
}
|
|
|
|
// fn_02528444 @ 0x2528444
|
|
void Gambit_fn_02528444(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _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_02528444: ; // 0x2528444
|
|
/* 02528444 */ _t0 = cpu->r[7] + 0x00000000u;
|
|
/* 02528444 */ cpu->r[8] = rbrew_read8(cpu->mem, _t0);
|
|
/* 02528448 */ _t1 = cpu->r[3] + 0x00000020u;
|
|
/* 02528448 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0252844C */ _t2 = cpu->r[3] + 0x00000024u;
|
|
/* 0252844C */ cpu->r[11] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02528450 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[12]);
|
|
/* 02528454 */ _t3 = cpu->r[4] + 0x00000000u;
|
|
/* 02528454 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02528458 */ _t4 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02528458 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02528458 */ if (_t5) goto L_0252845C; else goto L_02528464;
|
|
L_0252845C: ; // 0x252845c
|
|
/* 0252845C */ cpu->r[10] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02528460 */ cpu->r[11] = cpu->r[11] + cpu->r[10];
|
|
L_02528464: ; // 0x2528464
|
|
/* 02528464 */ _t6 = cpu->r[11] + 0x00000000u;
|
|
/* 02528464 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02528468 */ _t7 = cpu->r[4] + 0x00000004u;
|
|
/* 02528468 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0252846C */ _t8 = cpu->r[11] + 0x00000004u;
|
|
/* 0252846C */ rbrew_write32(cpu->mem, _t8, cpu->r[8]);
|
|
/* 02528470 */ _t9 = cpu->r[7] + 0x00000000u;
|
|
/* 02528470 */ cpu->r[9] = rbrew_read8(cpu->mem, _t9);
|
|
/* 02528474 */ _t10 = cpu->r[3] + 0x00000028u;
|
|
/* 02528474 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02528478 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[12]);
|
|
/* 0252847C */ _t11 = cpu->r[3] + 0x0000002Cu;
|
|
/* 0252847C */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02528480 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02528480 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02528480 */ if (_t13) goto L_02528484; else goto L_0252848C;
|
|
L_02528484: ; // 0x2528484
|
|
/* 02528484 */ cpu->r[0] = rbrew_rlwinm(cpu->r[9], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02528488 */ cpu->r[10] = cpu->r[10] + cpu->r[0];
|
|
L_0252848C: ; // 0x252848c
|
|
/* 0252848C */ _t14 = cpu->r[5] + 0x00000000u;
|
|
/* 0252848C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02528490 */ _t15 = cpu->r[10] + 0x00000000u;
|
|
/* 02528490 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 02528494 */ _t16 = cpu->r[5] + 0x00000004u;
|
|
/* 02528494 */ cpu->r[8] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02528498 */ _t17 = cpu->r[10] + 0x00000004u;
|
|
/* 02528498 */ rbrew_write32(cpu->mem, _t17, cpu->r[8]);
|
|
/* 0252849C */ _t18 = cpu->r[3] + 0x00000030u;
|
|
/* 0252849C */ cpu->r[9] = rbrew_read32(cpu->mem, _t18);
|
|
/* 025284A0 */ _t19 = cpu->r[7] + 0x00000000u;
|
|
/* 025284A0 */ cpu->r[11] = rbrew_read8(cpu->mem, _t19);
|
|
/* 025284A4 */ _t20 = cpu->r[3] + 0x00000034u;
|
|
/* 025284A4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t20);
|
|
/* 025284A8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[9]);
|
|
/* 025284AC */ _t21 = cpu->r[6] + 0x00000000u;
|
|
/* 025284AC */ cpu->r[7] = rbrew_read32(cpu->mem, _t21);
|
|
/* 025284B0 */ _t22 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 025284B0 */ _t23 = _t22 & 0x00000001u;
|
|
/* 025284B0 */ if (_t23) goto L_025284B4; else goto L_025284BC;
|
|
L_025284B4: ; // 0x25284b4
|
|
/* 025284B4 */ cpu->r[11] = rbrew_rlwinm(cpu->r[11], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 025284B8 */ cpu->r[12] = cpu->r[12] + cpu->r[11];
|
|
L_025284BC: ; // 0x25284bc
|
|
/* 025284BC */ _t24 = cpu->r[12] + 0x00000000u;
|
|
/* 025284BC */ rbrew_write32(cpu->mem, _t24, cpu->r[7]);
|
|
/* 025284C0 */ _t25 = cpu->r[6] + 0x00000004u;
|
|
/* 025284C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 025284C4 */ _t26 = cpu->r[12] + 0x00000004u;
|
|
/* 025284C4 */ rbrew_write32(cpu->mem, _t26, cpu->r[0]);
|
|
/* 025284C8 */ return;
|
|
}
|
|
|
|
// fn_025284CC @ 0x25284cc
|
|
void Gambit_fn_025284CC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_025284CC: ; // 0x25284cc
|
|
/* 025284CC */ cpu->r[0] = cpu->lr;
|
|
/* 025284D0 */ cpu->r[12] = 0x101D0000u;
|
|
/* 025284D4 */ cpu->r[7] = 0x02520000u;
|
|
/* 025284D8 */ cpu->r[6] = 0x02520000u;
|
|
/* 025284DC */ cpu->r[10] = 0x101C0000u;
|
|
/* 025284E0 */ cpu->r[7] = cpu->r[7] + 0x00007E94u;
|
|
/* 025284E4 */ cpu->r[6] = cpu->r[6] + 0x00007E94u;
|
|
/* 025284E8 */ cpu->r[10] = cpu->r[10] + 0x0000689Cu;
|
|
/* 025284EC */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 025284EC */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 025284F0 */ cpu->r[0] = 0x101C0000u;
|
|
/* 025284F4 */ _t1 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 025284F4 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 025284F4 */ cpu->r[1] = _t1;
|
|
/* 025284F8 */ cpu->r[0] = cpu->r[0] + 0x00006898u;
|
|
/* 025284FC */ _t2 = cpu->r[12] + 0xFFFF9034u;
|
|
/* 025284FC */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02528500 */ cpu->r[8] = 0x00000000u;
|
|
/* 02528504 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 02528504 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02528508 */ cpu->r[9] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252850C */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252850C */ rbrew_write32(cpu->mem, _t4, cpu->r[12]);
|
|
/* 02528510 */ Gambit_fn_02791B10(cpu);
|
|
/* 02528514 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 02528514 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02528518 */ cpu->lr = cpu->r[0];
|
|
/* 0252851C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02528520 */ return;
|
|
}
|
|
|
|
// fn_025284F4 @ 0x25284f4
|
|
void Gambit_fn_025284F4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_025284F4: ; // 0x25284f4
|
|
/* 025284F4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 025284F4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 025284F4 */ cpu->r[1] = _t0;
|
|
/* 025284F8 */ cpu->r[0] = cpu->r[0] + 0x00006898u;
|
|
/* 025284FC */ _t1 = cpu->r[12] + 0xFFFF9034u;
|
|
/* 025284FC */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02528500 */ cpu->r[8] = 0x00000000u;
|
|
/* 02528504 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02528504 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02528508 */ cpu->r[9] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252850C */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252850C */ rbrew_write32(cpu->mem, _t3, cpu->r[12]);
|
|
/* 02528510 */ Gambit_fn_02791B10(cpu);
|
|
/* 02528514 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 02528514 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02528518 */ cpu->lr = cpu->r[0];
|
|
/* 0252851C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02528520 */ return;
|
|
}
|
|
|
|
// fn_02528524 @ 0x2528524
|
|
void Gambit_fn_02528524(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106, _t107, _t108, _t109, _t110, _t111, _t112, _t113, _t114, _t115, _t116, _t117, _t118, _t119, _t120, _t121, _t122, _t123, _t124, _t125, _t126, _t127, _t128, _t129, _t130, _t131, _t132, _t133, _t134, _t135, _t136, _t137, _t138, _t139, _t140, _t141, _t142, _t143, _t144, _t145, _t146, _t147, _t148;
|
|
|
|
L_02528524: ; // 0x2528524
|
|
/* 02528524 */ _t0 = cpu->r[1] + 0xFFFFFEB8u;
|
|
/* 02528524 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02528524 */ cpu->r[1] = _t0;
|
|
/* 02528528 */ /* nop */
|
|
/* 0252852C */ _t1 = cpu->r[1] + 0x000000E8u;
|
|
/* 0252852C */ rbrew_write_f64(cpu->mem, _t1, cpu->f[26]);
|
|
/* 02528530 */ _t2 = cpu->r[1] + 0x000000F8u;
|
|
/* 02528530 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[27]);
|
|
/* 02528534 */ cpu->r[0] = cpu->lr;
|
|
/* 02528538 */ _t3 = cpu->r[1] + 0x00000108u;
|
|
/* 02528538 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[28]);
|
|
/* 0252853C */ _t4 = cpu->r[1] + 0x00000118u;
|
|
/* 0252853C */ rbrew_write_f64(cpu->mem, _t4, cpu->f[29]);
|
|
/* 02528540 */ _t5 = cpu->r[1] + 0x00000128u;
|
|
/* 02528540 */ rbrew_write_f64(cpu->mem, _t5, cpu->f[30]);
|
|
/* 02528544 */ /* nop */
|
|
/* 02528548 */ _t6 = cpu->r[1] + 0x00000138u;
|
|
/* 02528548 */ rbrew_write_f64(cpu->mem, _t6, cpu->f[31]);
|
|
/* 0252854C */ _t7 = cpu->r[1] + 0x0000014Cu;
|
|
/* 0252854C */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 02528550 */ /* nop */
|
|
/* 02528554 */ /* nop */
|
|
/* 02528558 */ /* nop */
|
|
/* 0252855C */ _t8 = cpu->r[1] + 0x000000F0u;
|
|
/* 0252855C */ rbrew_write_f32(cpu->mem, _t8, cpu->f[26]);
|
|
/* 02528560 */ /* nop */
|
|
/* 02528564 */ _t9 = cpu->r[1] + 0x00000100u;
|
|
/* 02528564 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[27]);
|
|
/* 02528568 */ /* nop */
|
|
/* 0252856C */ _t10 = cpu->r[1] + 0x00000110u;
|
|
/* 0252856C */ rbrew_write_f32(cpu->mem, _t10, cpu->f[28]);
|
|
/* 02528570 */ _t11 = cpu->r[1] + 0x00000120u;
|
|
/* 02528570 */ rbrew_write_f32(cpu->mem, _t11, cpu->f[29]);
|
|
/* 02528574 */ _t12 = cpu->r[1] + 0x00000130u;
|
|
/* 02528574 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[30]);
|
|
/* 02528578 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0252857C */ cpu->r[22] = cpu->r[3];
|
|
/* 02528580 */ _t13 = cpu->r[1] + 0x00000140u;
|
|
/* 02528580 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[31]);
|
|
/* 02528584 */ cpu->r[3] = cpu->r[1] + 0x00000070u;
|
|
/* 02528588 */ _t14 = cpu->r[12] + 0x00006000u;
|
|
/* 02528588 */ cpu->r[12] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0252858C */ cpu->r[24] = cpu->r[5];
|
|
/* 02528590 */ cpu->r[23] = cpu->r[4];
|
|
/* 02528594 */ cpu->r[4] = cpu->r[22];
|
|
/* 02528598 */ _t15 = cpu->r[12] + 0x00000274u;
|
|
/* 02528598 */ cpu->r[20] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0252859C */ Gambit_fn_028300A4(cpu);
|
|
/* 025285A0 */ cpu->r[4] = 0x101F0000u;
|
|
/* 025285A4 */ _t16 = cpu->r[23] + 0x00000044u;
|
|
/* 025285A4 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 025285A8 */ _t17 = cpu->r[4] + 0x00006350u;
|
|
/* 025285A8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 025285A8 */ cpu->r[4] = _t17;
|
|
/* 025285AC */ cpu->r[21] = 0x00000000u;
|
|
/* 025285B0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[12]);
|
|
/* 025285B4 */ cpu->r[25] = cpu->r[21];
|
|
/* 025285B8 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025285B8 */ _t19 = _t18 & 0x00000001u;
|
|
/* 025285B8 */ if (_t19) goto L_025285BC; else goto L_025285DC;
|
|
L_025285BC: ; // 0x25285bc
|
|
/* 025285BC */ _t20 = cpu->r[23] + 0x00000048u;
|
|
/* 025285BC */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 025285C0 */ _t21 = cpu->r[4] + 0x00000004u;
|
|
/* 025285C0 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 025285C4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[6], cpu->f[7]);
|
|
/* 025285C8 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025285C8 */ _t23 = _t22 & 0x00000001u;
|
|
/* 025285C8 */ if (_t23) goto L_025285CC; else goto L_025285DC;
|
|
L_025285CC: ; // 0x25285cc
|
|
/* 025285CC */ _t24 = cpu->r[23] + 0x0000004Cu;
|
|
/* 025285CC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 025285D0 */ _t25 = cpu->r[4] + 0x00000008u;
|
|
/* 025285D0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 025285D4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[10]);
|
|
/* 025285D8 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025285D8 */ _t27 = _t26 & 0x00000001u;
|
|
/* 025285D8 */ if (_t27) goto L_0252860C; else goto L_025285DC;
|
|
L_025285DC: ; // 0x25285dc
|
|
/* 025285DC */ cpu->r[5] = cpu->r[23] + 0x00000044u;
|
|
/* 025285E0 */ cpu->r[3] = cpu->r[1] + 0x00000080u;
|
|
/* 025285E4 */ Gambit_fn_021C6DD8(cpu);
|
|
/* 025285E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 025285EC */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025285EC */ _t29 = _t28 & 0x00000001u;
|
|
/* 025285EC */ if (_t29) goto L_025285F0; else goto L_02528608;
|
|
L_025285F0: ; // 0x25285f0
|
|
/* 025285F0 */ _t30 = cpu->r[23] + 0x00000004u;
|
|
/* 025285F0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t30);
|
|
/* 025285F4 */ cpu->r[19] = 0x00000000u;
|
|
/* 025285F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[19], cpu->r[7]);
|
|
/* 025285FC */ cpu->r[25] = 0x00000001u;
|
|
/* 02528600 */ _t31 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02528600 */ _t32 = _t31 & 0x00000001u;
|
|
/* 02528600 */ if (_t32) goto L_02528604; else goto L_02528914;
|
|
L_02528604: ; // 0x2528604
|
|
/* 02528604 */ goto L_0252861C;
|
|
L_02528608: ; // 0x2528608
|
|
/* 02528608 */ cpu->r[21] = 0x00000001u;
|
|
L_0252860C: ; // 0x252860c
|
|
/* 0252860C */ _t33 = cpu->r[23] + 0x00000004u;
|
|
/* 0252860C */ cpu->r[7] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02528610 */ cpu->r[19] = 0x00000000u;
|
|
/* 02528614 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[19], cpu->r[7]);
|
|
/* 02528618 */ _t34 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02528618 */ _t35 = _t34 & 0x00000001u;
|
|
/* 02528618 */ if (_t35) goto L_0252861C; else goto L_02528914;
|
|
L_0252861C: ; // 0x252861c
|
|
/* 0252861C */ cpu->r[7] = 0x100C0000u;
|
|
/* 02528620 */ cpu->r[6] = 0x100C0000u;
|
|
/* 02528624 */ cpu->r[10] = 0x100C0000u;
|
|
/* 02528628 */ _t36 = cpu->r[7] + 0x0000286Cu;
|
|
/* 02528628 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 0252862C */ cpu->r[28] = 0x101F0000u;
|
|
/* 02528630 */ cpu->r[31] = 0x101C0000u;
|
|
/* 02528634 */ _t37 = cpu->r[6] + 0x00002870u;
|
|
/* 02528634 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 02528638 */ cpu->r[30] = cpu->r[1] + 0x00000054u;
|
|
/* 0252863C */ cpu->r[18] = cpu->r[1] + 0x00000080u;
|
|
/* 02528640 */ _t38 = cpu->r[10] + 0x000029E0u;
|
|
/* 02528640 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 02528644 */ cpu->r[29] = 0x101F0000u;
|
|
/* 02528648 */ cpu->r[27] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252864C */ cpu->r[26] = cpu->r[1] + 0x00000018u;
|
|
L_02528650: ; // 0x2528650
|
|
/* 02528650 */ _t39 = cpu->r[23] + 0x00000008u;
|
|
/* 02528650 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t39);
|
|
/* 02528654 */ /* nop */
|
|
/* 02528658 */ _t40 = cpu->r[23] + 0x00000000u;
|
|
/* 02528658 */ cpu->r[6] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0252865C */ /* nop */
|
|
/* 02528660 */ _t41 = cpu->r[23] + 0x0000004Cu;
|
|
/* 02528660 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 02528664 */ /* nop */
|
|
/* 02528668 */ _t42 = cpu->r[1] + 0x00000030u;
|
|
/* 02528668 */ cpu->r[0] = rbrew_read32(cpu->mem, _t42);
|
|
/* 0252866C */ cpu->f[8] = cpu->f[10] * cpu->f[11];
|
|
/* 02528670 */ _t43 = cpu->r[1] + 0x00000034u;
|
|
/* 02528670 */ cpu->r[4] = rbrew_read32(cpu->mem, _t43);
|
|
/* 02528674 */ _t44 = cpu->r[1] + 0x00000058u;
|
|
/* 02528674 */ rbrew_write32(cpu->mem, _t44, cpu->r[0]);
|
|
/* 02528678 */ _t45 = cpu->r[1] + 0x00000038u;
|
|
/* 02528678 */ rbrew_write_f32(cpu->mem, _t45, cpu->f[8]);
|
|
/* 0252867C */ _t46 = cpu->r[1] + 0x00000038u;
|
|
/* 0252867C */ cpu->r[5] = rbrew_read32(cpu->mem, _t46);
|
|
/* 02528680 */ _t47 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02528680 */ rbrew_write32(cpu->mem, _t47, cpu->r[4]);
|
|
/* 02528684 */ /* nop */
|
|
/* 02528688 */ _t48 = cpu->r[1] + 0x00000060u;
|
|
/* 02528688 */ rbrew_write32(cpu->mem, _t48, cpu->r[5]);
|
|
/* 0252868C */ /* nop */
|
|
/* 02528690 */ _t49 = cpu->r[1] + 0x00000060u;
|
|
/* 02528690 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t49);
|
|
/* 02528694 */ /* nop */
|
|
/* 02528698 */ /* nop */
|
|
/* 0252869C */ _t50 = cpu->r[6] + 0x00000008u;
|
|
/* 0252869C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t50);
|
|
/* 025286A0 */ _t51 = cpu->r[1] + 0x0000003Cu;
|
|
/* 025286A0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t51);
|
|
/* 025286A4 */ _t52 = cpu->r[1] + 0x00000040u;
|
|
/* 025286A4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t52);
|
|
/* 025286A8 */ _t53 = cpu->r[1] + 0x00000048u;
|
|
/* 025286A8 */ rbrew_write32(cpu->mem, _t53, cpu->r[11]);
|
|
/* 025286AC */ _t54 = cpu->r[1] + 0x00000048u;
|
|
/* 025286AC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 025286B0 */ cpu->f[12] = cpu->f[0] + cpu->f[7];
|
|
/* 025286B4 */ _t55 = cpu->r[1] + 0x0000004Cu;
|
|
/* 025286B4 */ rbrew_write32(cpu->mem, _t55, cpu->r[12]);
|
|
/* 025286B8 */ _t56 = cpu->r[1] + 0x0000004Cu;
|
|
/* 025286B8 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 025286BC */ _t57 = cpu->r[1] + 0x00000044u;
|
|
/* 025286BC */ rbrew_write_f32(cpu->mem, _t57, cpu->f[12]);
|
|
/* 025286C0 */ _t58 = cpu->r[1] + 0x00000044u;
|
|
/* 025286C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t58);
|
|
/* 025286C4 */ _t59 = cpu->r[1] + 0x00000024u;
|
|
/* 025286C4 */ rbrew_write_f32(cpu->mem, _t59, cpu->f[13]);
|
|
/* 025286C8 */ _t60 = cpu->r[1] + 0x00000050u;
|
|
/* 025286C8 */ rbrew_write32(cpu->mem, _t60, cpu->r[0]);
|
|
/* 025286CC */ _t61 = cpu->r[1] + 0x00000050u;
|
|
/* 025286CC */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t61);
|
|
/* 025286D0 */ _t62 = cpu->r[1] + 0x00000028u;
|
|
/* 025286D0 */ rbrew_write_f32(cpu->mem, _t62, cpu->f[6]);
|
|
/* 025286D4 */ cpu->r[3] = cpu->r[1] + 0x00000070u;
|
|
/* 025286D8 */ _t63 = cpu->r[1] + 0x0000002Cu;
|
|
/* 025286D8 */ rbrew_write_f32(cpu->mem, _t63, cpu->f[8]);
|
|
/* 025286DC */ Gambit_fn_02830138(cpu);
|
|
/* 025286E0 */ cpu->r[4] = rbrew_rlwinm(cpu->r[3], 0x00000017u, 0x00000009u, 0x0000001Fu);
|
|
/* 025286E4 */ _t64 = cpu->r[23] + 0x00000010u;
|
|
/* 025286E4 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t64);
|
|
/* 025286E8 */ cpu->r[5] = cpu->r[4] | 0x3F800000u;
|
|
/* 025286EC */ _t65 = cpu->r[23] + 0x0000000Cu;
|
|
/* 025286EC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t65);
|
|
/* 025286F0 */ _t66 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025286F0 */ rbrew_write32(cpu->mem, _t66, cpu->r[5]);
|
|
/* 025286F4 */ _t67 = cpu->r[27] + 0x00000000u;
|
|
/* 025286F4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t67);
|
|
/* 025286F8 */ cpu->f[6] = cpu->f[7] - cpu->f[13];
|
|
/* 025286FC */ _t68 = cpu->r[23] + 0x00000034u;
|
|
/* 025286FC */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t68);
|
|
/* 02528700 */ cpu->f[27] = cpu->f[0] - cpu->f[29];
|
|
/* 02528704 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[28], cpu->f[30]);
|
|
/* 02528708 */ cpu->f[26] = fma(cpu->f[6], cpu->f[27], cpu->f[13]);
|
|
/* 0252870C */ _t69 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0252870C */ _t70 = _t69 & 0x00000001u;
|
|
/* 0252870C */ if (_t70) goto L_02528710; else goto L_02528738;
|
|
L_02528710: ; // 0x2528710
|
|
/* 02528710 */ cpu->r[8] = 0x100C0000u;
|
|
/* 02528714 */ _t71 = cpu->r[8] + 0x00002A18u;
|
|
/* 02528714 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t71);
|
|
/* 02528718 */ cpu->r[9] = 0x43300000u;
|
|
/* 0252871C */ _t72 = cpu->r[23] + 0x00000004u;
|
|
/* 0252871C */ cpu->r[8] = rbrew_read32(cpu->mem, _t72);
|
|
/* 02528720 */ _t73 = cpu->r[1] + 0x00000010u;
|
|
/* 02528720 */ rbrew_write32(cpu->mem, _t73, cpu->r[9]);
|
|
/* 02528724 */ cpu->r[0] = cpu->r[8] ^ 0x80000000u;
|
|
/* 02528728 */ _t74 = cpu->r[1] + 0x00000014u;
|
|
/* 02528728 */ rbrew_write32(cpu->mem, _t74, cpu->r[0]);
|
|
/* 0252872C */ _t75 = cpu->r[1] + 0x00000010u;
|
|
/* 0252872C */ cpu->f[8] = rbrew_read_f64(cpu->mem, _t75);
|
|
/* 02528730 */ cpu->f[9] = cpu->f[8] - cpu->f[0];
|
|
/* 02528734 */ cpu->f[28] = (double)(float)cpu->f[9];
|
|
L_02528738: ; // 0x2528738
|
|
/* 02528738 */ cpu->r[3] = cpu->r[1] + 0x00000070u;
|
|
/* 0252873C */ Gambit_fn_02830138(cpu);
|
|
/* 02528740 */ _t76 = cpu->r[23] + 0x00000004u;
|
|
/* 02528740 */ cpu->r[8] = rbrew_read32(cpu->mem, _t76);
|
|
/* 02528744 */ cpu->r[7] = 0x100C0000u;
|
|
/* 02528748 */ cpu->r[9] = 0x43300000u;
|
|
/* 0252874C */ cpu->r[5] = cpu->r[19] ^ 0x80000000u;
|
|
/* 02528750 */ _t77 = cpu->r[7] + 0x00002A18u;
|
|
/* 02528750 */ cpu->f[11] = rbrew_read_f64(cpu->mem, _t77);
|
|
/* 02528754 */ cpu->r[10] = cpu->r[8] ^ 0x80000000u;
|
|
/* 02528758 */ cpu->r[0] = rbrew_rlwinm(cpu->r[3], 0x00000017u, 0x00000009u, 0x0000001Fu);
|
|
/* 0252875C */ _t78 = cpu->r[1] + 0x00000010u;
|
|
/* 0252875C */ rbrew_write32(cpu->mem, _t78, cpu->r[9]);
|
|
/* 02528760 */ cpu->f[9] = cpu->f[26] * cpu->f[31];
|
|
/* 02528764 */ _t79 = cpu->r[1] + 0x00000014u;
|
|
/* 02528764 */ rbrew_write32(cpu->mem, _t79, cpu->r[10]);
|
|
/* 02528768 */ _t80 = cpu->r[1] + 0x00000010u;
|
|
/* 02528768 */ cpu->f[8] = rbrew_read_f64(cpu->mem, _t80);
|
|
/* 0252876C */ cpu->r[0] = cpu->r[0] | 0x3F800000u;
|
|
/* 02528770 */ _t81 = cpu->r[1] + 0x00000014u;
|
|
/* 02528770 */ rbrew_write32(cpu->mem, _t81, cpu->r[5]);
|
|
/* 02528774 */ _t82 = cpu->r[1] + 0x00000010u;
|
|
/* 02528774 */ cpu->f[12] = rbrew_read_f64(cpu->mem, _t82);
|
|
/* 02528778 */ cpu->f[10] = cpu->f[8] - cpu->f[11];
|
|
/* 0252877C */ cpu->f[13] = cpu->f[12] - cpu->f[11];
|
|
/* 02528780 */ _t83 = cpu->r[1] + 0x00000054u;
|
|
/* 02528780 */ rbrew_write32(cpu->mem, _t83, cpu->r[0]);
|
|
/* 02528784 */ cpu->r[10] = 0x100C0000u;
|
|
/* 02528788 */ cpu->f[7] = (double)(float)cpu->f[10];
|
|
/* 0252878C */ _t84 = cpu->r[30] + 0x00000000u;
|
|
/* 0252878C */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t84);
|
|
/* 02528790 */ cpu->f[8] = (double)(float)cpu->f[13];
|
|
/* 02528794 */ _t85 = cpu->r[10] + 0x00002A20u;
|
|
/* 02528794 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t85);
|
|
/* 02528798 */ cpu->f[11] = cpu->f[6] - cpu->f[29];
|
|
/* 0252879C */ cpu->f[13] = cpu->f[12] / cpu->f[7];
|
|
/* 025287A0 */ cpu->f[0] = fma(cpu->f[11], cpu->f[28], cpu->f[8]);
|
|
/* 025287A4 */ cpu->r[3] = cpu->r[1] + 0x00000018u;
|
|
/* 025287A8 */ cpu->f[1] = -cpu->f[9];
|
|
/* 025287AC */ cpu->r[5] = cpu->r[28] + 0x00006344u;
|
|
/* 025287B0 */ cpu->r[4] = cpu->r[29] + 0x0000635Cu;
|
|
/* 025287B4 */ cpu->f[28] = cpu->f[13] * cpu->f[0];
|
|
/* 025287B8 */ Gambit_fn_0204EF20(cpu);
|
|
/* 025287BC */ _t86 = cpu->r[1] + 0x00000018u;
|
|
/* 025287BC */ cpu->r[6] = rbrew_read32(cpu->mem, _t86);
|
|
/* 025287C0 */ _t87 = cpu->r[1] + 0x0000001Cu;
|
|
/* 025287C0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t87);
|
|
/* 025287C4 */ _t88 = cpu->r[1] + 0x00000020u;
|
|
/* 025287C4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t88);
|
|
/* 025287C8 */ cpu->f[1] = cpu->f[28] * cpu->f[31];
|
|
/* 025287CC */ _t89 = cpu->r[1] + 0x00000064u;
|
|
/* 025287CC */ rbrew_write32(cpu->mem, _t89, cpu->r[6]);
|
|
/* 025287D0 */ cpu->r[3] = cpu->r[1] + 0x00000018u;
|
|
/* 025287D4 */ _t90 = cpu->r[1] + 0x00000068u;
|
|
/* 025287D4 */ rbrew_write32(cpu->mem, _t90, cpu->r[7]);
|
|
/* 025287D8 */ cpu->r[4] = cpu->r[1] + 0x00000064u;
|
|
/* 025287DC */ _t91 = cpu->r[1] + 0x0000006Cu;
|
|
/* 025287DC */ rbrew_write32(cpu->mem, _t91, cpu->r[8]);
|
|
/* 025287E0 */ Gambit_fn_0204EFD8(cpu);
|
|
/* 025287E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], 0x00000000u);
|
|
/* 025287E8 */ _t92 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025287E8 */ _t93 = _t92 & 0x00000001u;
|
|
/* 025287E8 */ if (_t93) goto L_02528830; else goto L_025287EC;
|
|
L_025287EC: ; // 0x25287ec
|
|
/* 025287EC */ cpu->r[5] = cpu->r[26];
|
|
/* 025287F0 */ cpu->r[4] = cpu->r[26];
|
|
/* 025287F4 */ cpu->r[3] = cpu->r[18];
|
|
/* 025287F8 */ Gambit_fn_02C69468(cpu);
|
|
/* 025287FC */ _t94 = cpu->r[23] + 0x00000018u;
|
|
/* 025287FC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t94);
|
|
/* 02528800 */ _t95 = cpu->r[23] + 0x00000014u;
|
|
/* 02528800 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t95);
|
|
/* 02528804 */ cpu->f[9] = cpu->f[10] - cpu->f[13];
|
|
/* 02528808 */ /* nop */
|
|
/* 0252880C */ cpu->f[10] = fma(cpu->f[9], cpu->f[27], cpu->f[13]);
|
|
/* 02528810 */ _t96 = cpu->r[1] + 0x00000020u;
|
|
/* 02528810 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t96);
|
|
/* 02528814 */ /* nop */
|
|
/* 02528818 */ cpu->f[10] = cpu->f[12] * cpu->f[10];
|
|
/* 0252881C */ /* nop */
|
|
/* 02528820 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 02528824 */ _t97 = cpu->r[1] + 0x00000020u;
|
|
/* 02528824 */ rbrew_write_f32(cpu->mem, _t97, cpu->f[10]);
|
|
/* 02528828 */ _t98 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02528828 */ _t99 = _t98 & 0x00000001u;
|
|
/* 02528828 */ if (_t99) goto L_02528890; else goto L_0252882C;
|
|
L_0252882C: ; // 0x252882c
|
|
/* 0252882C */ goto L_02528874;
|
|
L_02528830: ; // 0x2528830
|
|
/* 02528830 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 02528834 */ _t100 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02528834 */ _t101 = _t100 & 0x00000001u;
|
|
/* 02528834 */ if (_t101) goto L_02528844; else goto L_02528838;
|
|
L_02528838: ; // 0x2528838
|
|
/* 02528838 */ _t102 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02528838 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t102);
|
|
/* 0252883C */ cpu->f[6] = -cpu->f[8];
|
|
/* 02528840 */ _t103 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02528840 */ rbrew_write_f32(cpu->mem, _t103, cpu->f[6]);
|
|
L_02528844: ; // 0x2528844
|
|
/* 02528844 */ _t104 = cpu->r[23] + 0x00000018u;
|
|
/* 02528844 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t104);
|
|
/* 02528848 */ _t105 = cpu->r[23] + 0x00000014u;
|
|
/* 02528848 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t105);
|
|
/* 0252884C */ cpu->f[9] = cpu->f[10] - cpu->f[13];
|
|
/* 02528850 */ /* nop */
|
|
/* 02528854 */ cpu->f[10] = fma(cpu->f[9], cpu->f[27], cpu->f[13]);
|
|
/* 02528858 */ _t106 = cpu->r[1] + 0x00000020u;
|
|
/* 02528858 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t106);
|
|
/* 0252885C */ /* nop */
|
|
/* 02528860 */ cpu->f[10] = cpu->f[12] * cpu->f[10];
|
|
/* 02528864 */ /* nop */
|
|
/* 02528868 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 0252886C */ _t107 = cpu->r[1] + 0x00000020u;
|
|
/* 0252886C */ rbrew_write_f32(cpu->mem, _t107, cpu->f[10]);
|
|
/* 02528870 */ _t108 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02528870 */ _t109 = _t108 & 0x00000001u;
|
|
/* 02528870 */ if (_t109) goto L_02528890; else goto L_02528874;
|
|
L_02528874: ; // 0x2528874
|
|
/* 02528874 */ /* nop */
|
|
/* 02528878 */ /* nop */
|
|
/* 0252887C */ _t110 = cpu->r[24] + 0x00000008u;
|
|
/* 0252887C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t110);
|
|
/* 02528880 */ /* nop */
|
|
/* 02528884 */ cpu->f[13] = fma(cpu->f[12], cpu->f[10], cpu->f[9]);
|
|
/* 02528888 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[30]);
|
|
/* 0252888C */ _t111 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252888C */ _t112 = _t111 & 0x00000001u;
|
|
/* 0252888C */ if (_t112) goto L_02528890; else goto L_02528904;
|
|
L_02528890: ; // 0x2528890
|
|
/* 02528890 */ _t113 = cpu->r[31] + 0x00005050u;
|
|
/* 02528890 */ cpu->r[7] = rbrew_read32(cpu->mem, _t113);
|
|
/* 02528894 */ cpu->r[6] = cpu->r[20] + cpu->r[7];
|
|
/* 02528898 */ _t114 = cpu->r[6] + 0x00000104u;
|
|
/* 02528898 */ cpu->r[4] = rbrew_read8(cpu->mem, _t114);
|
|
/* 0252889C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x000000FFu);
|
|
/* 025288A0 */ _t115 = cpu->r[23] + 0x00000040u;
|
|
/* 025288A0 */ cpu->r[5] = rbrew_read8(cpu->mem, _t115);
|
|
/* 025288A4 */ _t116 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025288A4 */ _t117 = _t116 & 0x00000001u;
|
|
/* 025288A4 */ if (_t117) goto L_02528904; else goto L_025288A8;
|
|
L_025288A8: ; // 0x25288a8
|
|
/* 025288A8 */ cpu->r[7] = cpu->r[1] + 0x00000018u;
|
|
/* 025288AC */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 025288B0 */ cpu->r[3] = cpu->r[20];
|
|
/* 025288B4 */ Gambit_fn_021F000C(cpu);
|
|
/* 025288B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 025288BC */ _t118 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025288BC */ _t119 = _t118 & 0x00000001u;
|
|
/* 025288BC */ if (_t119) goto L_02528904; else goto L_025288C0;
|
|
L_025288C0: ; // 0x25288c0
|
|
/* 025288C0 */ _t120 = cpu->r[3] + 0x00000004u;
|
|
/* 025288C0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t120);
|
|
/* 025288C4 */ cpu->r[11] = cpu->r[22] + cpu->r[19];
|
|
/* 025288C8 */ _t121 = cpu->r[23] + 0x00000028u;
|
|
/* 025288C8 */ cpu->f[4] = rbrew_read_f32(cpu->mem, _t121);
|
|
/* 025288CC */ _t122 = cpu->r[23] + 0x0000001Cu;
|
|
/* 025288CC */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t122);
|
|
/* 025288D0 */ _t123 = cpu->r[23] + 0x00000038u;
|
|
/* 025288D0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t123);
|
|
/* 025288D4 */ _t124 = cpu->r[23] + 0x0000002Cu;
|
|
/* 025288D4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t124);
|
|
/* 025288D8 */ _t125 = cpu->r[23] + 0x00000040u;
|
|
/* 025288D8 */ cpu->r[9] = rbrew_read8(cpu->mem, _t125);
|
|
/* 025288DC */ _t126 = cpu->r[23] + 0x00000024u;
|
|
/* 025288DC */ cpu->f[3] = rbrew_read_f32(cpu->mem, _t126);
|
|
/* 025288E0 */ _t127 = cpu->r[23] + 0x00000030u;
|
|
/* 025288E0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t127);
|
|
/* 025288E4 */ _t128 = cpu->r[23] + 0x00000020u;
|
|
/* 025288E4 */ cpu->f[2] = rbrew_read_f32(cpu->mem, _t128);
|
|
/* 025288E8 */ _t129 = cpu->r[1] + 0x00000008u;
|
|
/* 025288E8 */ rbrew_write32(cpu->mem, _t129, cpu->r[11]);
|
|
/* 025288EC */ _t130 = cpu->r[12] + 0x0000046Cu;
|
|
/* 025288EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t130);
|
|
/* 025288F0 */ cpu->ctr = cpu->r[0];
|
|
/* 025288F4 */ cpu->r[8] = cpu->r[1] + 0x00000018u;
|
|
/* 025288F8 */ cpu->r[7] = cpu->r[1] + 0x00000024u;
|
|
/* 025288FC */ cpu->r[10] = cpu->r[23] + 0x0000003Cu;
|
|
/* 02528900 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02528904: ; // 0x2528904
|
|
/* 02528904 */ _t131 = cpu->r[23] + 0x00000004u;
|
|
/* 02528904 */ cpu->r[4] = rbrew_read32(cpu->mem, _t131);
|
|
/* 02528908 */ cpu->r[19] = cpu->r[19] + 0x00000001u;
|
|
/* 0252890C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[19], cpu->r[4]);
|
|
/* 02528910 */ _t132 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02528910 */ _t133 = _t132 & 0x00000001u;
|
|
/* 02528910 */ if (_t133) goto L_02528650; else goto L_02528914;
|
|
L_02528914: ; // 0x2528914
|
|
/* 02528914 */ /* nop */
|
|
/* 02528918 */ _t134 = cpu->r[1] + 0x00000130u;
|
|
/* 02528918 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t134);
|
|
/* 0252891C */ _t135 = cpu->r[1] + 0x00000110u;
|
|
/* 0252891C */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t135);
|
|
/* 02528920 */ _t136 = cpu->r[1] + 0x00000128u;
|
|
/* 02528920 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t136);
|
|
/* 02528924 */ _t137 = cpu->r[1] + 0x00000108u;
|
|
/* 02528924 */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t137);
|
|
/* 02528928 */ _t138 = cpu->r[1] + 0x00000100u;
|
|
/* 02528928 */ cpu->f[27] = rbrew_read_f32(cpu->mem, _t138);
|
|
/* 0252892C */ _t139 = cpu->r[1] + 0x00000120u;
|
|
/* 0252892C */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t139);
|
|
/* 02528930 */ _t140 = cpu->r[1] + 0x000000F8u;
|
|
/* 02528930 */ cpu->f[27] = rbrew_read_f64(cpu->mem, _t140);
|
|
/* 02528934 */ _t141 = cpu->r[1] + 0x00000118u;
|
|
/* 02528934 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t141);
|
|
/* 02528938 */ _t142 = cpu->r[1] + 0x000000F0u;
|
|
/* 02528938 */ cpu->f[26] = rbrew_read_f32(cpu->mem, _t142);
|
|
/* 0252893C */ _t143 = cpu->r[1] + 0x00000140u;
|
|
/* 0252893C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t143);
|
|
/* 02528940 */ _t144 = cpu->r[1] + 0x000000E8u;
|
|
/* 02528940 */ cpu->f[26] = rbrew_read_f64(cpu->mem, _t144);
|
|
/* 02528944 */ _t145 = cpu->r[1] + 0x00000138u;
|
|
/* 02528944 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t145);
|
|
/* 02528948 */ _t146 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02528948 */ _t147 = _t146 & 0x00000001u;
|
|
/* 02528948 */ if (_t147) goto L_0252894C; // else: addr-0 trap, fall-through
|
|
L_0252894C: ; // 0x252894c
|
|
/* 0252894C */ _t148 = cpu->r[1] + 0x0000014Cu;
|
|
/* 0252894C */ cpu->r[0] = rbrew_read32(cpu->mem, _t148);
|
|
/* 02528950 */ cpu->lr = cpu->r[0];
|
|
/* 02528954 */ cpu->r[1] = cpu->r[1] + 0x00000148u;
|
|
/* 02528958 */ return;
|
|
}
|
|
|
|
// fn_0252895C @ 0x252895c
|
|
void Gambit_fn_0252895C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0252895C: ; // 0x252895c
|
|
/* 0252895C */ cpu->r[0] = cpu->lr;
|
|
/* 02528960 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02528960 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02528960 */ cpu->r[1] = _t0;
|
|
/* 02528964 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02528964 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02528968 */ cpu->r[31] = cpu->r[3];
|
|
/* 0252896C */ cpu->r[3] = 0x101D0000u;
|
|
/* 02528970 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02528970 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02528974 */ _t3 = cpu->r[3] + 0xFFFF9918u;
|
|
/* 02528974 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02528978 */ Gambit_fn_02830138(cpu);
|
|
/* 0252897C */ cpu->r[5] = 0x00000000u;
|
|
/* 02528980 */ cpu->r[4] = cpu->r[31];
|
|
/* 02528984 */ Gambit_fn_02528524(cpu);
|
|
/* 02528988 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 02528988 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0252898C */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252898C */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02528990 */ cpu->lr = cpu->r[0];
|
|
/* 02528994 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02528998 */ return;
|
|
}
|
|
|
|
// fn_02528960 @ 0x2528960
|
|
void Gambit_fn_02528960(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02528960: ; // 0x2528960
|
|
/* 02528960 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02528960 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02528960 */ cpu->r[1] = _t0;
|
|
/* 02528964 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02528964 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02528968 */ cpu->r[31] = cpu->r[3];
|
|
/* 0252896C */ cpu->r[3] = 0x101D0000u;
|
|
/* 02528970 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02528970 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02528974 */ _t3 = cpu->r[3] + 0xFFFF9918u;
|
|
/* 02528974 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02528978 */ Gambit_fn_02830138(cpu);
|
|
/* 0252897C */ cpu->r[5] = 0x00000000u;
|
|
/* 02528980 */ cpu->r[4] = cpu->r[31];
|
|
/* 02528984 */ Gambit_fn_02528524(cpu);
|
|
/* 02528988 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 02528988 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0252898C */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252898C */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02528990 */ cpu->lr = cpu->r[0];
|
|
/* 02528994 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02528998 */ return;
|
|
}
|
|
|
|
// fn_0252899C @ 0x252899c
|
|
void Gambit_fn_0252899C(CPUState* cpu) {
|
|
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_0252899C: ; // 0x252899c
|
|
/* 0252899C */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 0252899C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252899C */ cpu->r[1] = _t0;
|
|
/* 025289A0 */ cpu->r[0] = cpu->lr;
|
|
/* 025289A4 */ /* nop */
|
|
/* 025289A8 */ cpu->r[30] = cpu->r[5];
|
|
/* 025289AC */ cpu->r[26] = cpu->r[3];
|
|
/* 025289B0 */ cpu->r[27] = cpu->r[7];
|
|
/* 025289B4 */ cpu->r[3] = cpu->r[30];
|
|
/* 025289B8 */ cpu->r[31] = cpu->r[6];
|
|
/* 025289BC */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 025289BC */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 025289C0 */ cpu->r[29] = cpu->r[4];
|
|
/* 025289C4 */ cpu->r[4] = cpu->r[27];
|
|
/* 025289C8 */ Gambit_fn_027DB318(cpu);
|
|
/* 025289CC */ cpu->r[28] = cpu->r[3] + cpu->r[31];
|
|
/* 025289CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 025289D0 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025289D0 */ _t3 = _t2 & 0x00000001u;
|
|
/* 025289D0 */ if (_t3) goto L_02528A64; else goto L_025289D4;
|
|
L_025289D4: ; // 0x25289d4
|
|
/* 025289D4 */ cpu->r[5] = cpu->r[28];
|
|
/* 025289D8 */ cpu->r[4] = cpu->r[29];
|
|
/* 025289DC */ cpu->r[3] = cpu->r[26];
|
|
/* 025289E0 */ Gambit_fn_025284CC(cpu);
|
|
/* 025289E4 */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 025289E4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t4);
|
|
/* 025289E8 */ _t5 = cpu->r[30] + 0x00000004u;
|
|
/* 025289E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 025289EC */ cpu->r[30] = cpu->r[30] - cpu->r[29];
|
|
/* 025289F0 */ cpu->r[31] = cpu->r[0] - cpu->r[29];
|
|
/* 025289F4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]);
|
|
/* 025289F8 */ cpu->r[25] = 0x00000000u;
|
|
/* 025289FC */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025289FC */ _t7 = _t6 & 0x00000001u;
|
|
/* 025289FC */ if (_t7) goto L_02528A64; else goto L_02528A00;
|
|
L_02528A00: ; // 0x2528a00
|
|
/* 02528A00 */ cpu->r[24] = 0x101C0000u;
|
|
L_02528A04: ; // 0x2528a04
|
|
/* 02528A04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02528A08 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02528A08 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02528A08 */ if (_t9) goto L_02528A20; else goto L_02528A0C;
|
|
L_02528A0C: ; // 0x2528a0c
|
|
/* 02528A0C */ cpu->ctr = cpu->r[27];
|
|
/* 02528A10 */ cpu->r[3] = cpu->r[31];
|
|
/* 02528A14 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02528A18 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02528A1C */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02528A1C */ _t11 = _t10 & 0x00000001u;
|
|
/* 02528A1C */ if (_t11) goto L_02528A50; else goto L_02528A20;
|
|
L_02528A20: ; // 0x2528a20
|
|
/* 02528A20 */ _t12 = cpu->r[24] + 0x00006898u;
|
|
/* 02528A20 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02528A24 */ cpu->r[6] = cpu->r[26] + cpu->r[0];
|
|
/* 02528A28 */ _t13 = cpu->r[6] + 0x00000104u;
|
|
/* 02528A28 */ cpu->r[12] = rbrew_read8(cpu->mem, _t13);
|
|
/* 02528A2C */ _t14 = cpu->r[26] + 0x00000030u;
|
|
/* 02528A2C */ cpu->r[10] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02528A30 */ cpu->r[9] = rbrew_rlwinm(cpu->r[12], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02528A34 */ _t15 = cpu->r[9] + cpu->r[10];
|
|
/* 02528A34 */ cpu->r[11] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02528A38 */ cpu->r[8] = rbrew_rlwinm(cpu->r[25], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02528A3C */ _t16 = cpu->r[11] + 0x00000004u;
|
|
/* 02528A3C */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02528A40 */ cpu->r[4] = cpu->r[31];
|
|
/* 02528A44 */ _t17 = cpu->r[8] + cpu->r[0];
|
|
/* 02528A44 */ cpu->r[3] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02528A48 */ cpu->r[25] = cpu->r[25] + 0x00000001u;
|
|
/* 02528A4C */ Gambit_fn_025260F4(cpu);
|
|
L_02528A50: ; // 0x2528a50
|
|
/* 02528A50 */ cpu->r[12] = cpu->r[31] + cpu->r[29];
|
|
/* 02528A54 */ _t18 = cpu->r[12] + 0x00000004u;
|
|
/* 02528A54 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02528A58 */ cpu->r[31] = cpu->r[0] - cpu->r[29];
|
|
/* 02528A5C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]);
|
|
/* 02528A60 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02528A60 */ _t20 = _t19 & 0x00000001u;
|
|
/* 02528A60 */ if (_t20) goto L_02528A64; else goto L_02528A04;
|
|
L_02528A64: ; // 0x2528a64
|
|
/* 02528A64 */ cpu->r[3] = cpu->r[28];
|
|
/* 02528A68 */ /* nop */
|
|
/* 02528A6C */ _t21 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02528A6C */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02528A70 */ cpu->lr = cpu->r[0];
|
|
/* 02528A74 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 02528A78 */ return;
|
|
}
|
|
|
|
// fn_02528A80 @ 0x2528a80
|
|
void Gambit_fn_02528A80(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _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_02528A80: ; // 0x2528a80
|
|
/* 02528A80 */ _t0 = cpu->r[1] + 0xFFFFFFA0u;
|
|
/* 02528A80 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02528A80 */ cpu->r[1] = _t0;
|
|
/* 02528A84 */ _t1 = cpu->r[1] + 0x00000050u;
|
|
/* 02528A84 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 02528A88 */ /* nop */
|
|
/* 02528A8C */ _t2 = cpu->r[1] + 0x00000058u;
|
|
/* 02528A8C */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 02528A90 */ _t3 = cpu->r[1] + 0x00000064u;
|
|
/* 02528A90 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02528A94 */ /* nop */
|
|
/* 02528A98 */ cpu->r[29] = cpu->r[3];
|
|
/* 02528A98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 02528A9C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02528A9C */ _t5 = _t4 & 0x00000001u;
|
|
/* 02528A9C */ if (_t5) goto L_02528AA0; else goto L_02528AB0;
|
|
L_02528AA0: ; // 0x2528aa0
|
|
/* 02528AA0 */ cpu->r[3] = 0x000002E8u;
|
|
/* 02528AA4 */ Gambit_fn_02801A78(cpu);
|
|
/* 02528AA8 */ cpu->r[29] = cpu->r[3];
|
|
/* 02528AA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 02528AAC */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02528AAC */ _t7 = _t6 & 0x00000001u;
|
|
/* 02528AAC */ if (_t7) goto L_02528FBC; else goto L_02528AB0;
|
|
L_02528AB0: ; // 0x2528ab0
|
|
/* 02528AB0 */ cpu->r[3] = cpu->r[29];
|
|
/* 02528AB4 */ Gambit_fn_024F6F3C(cpu);
|
|
/* 02528AB8 */ cpu->r[0] = 0x100C0000u;
|
|
/* 02528ABC */ cpu->r[31] = cpu->r[29] + 0x000001B0u;
|
|
/* 02528ABC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02528AC0 */ cpu->r[0] = cpu->r[0] + 0x00002FE8u;
|
|
/* 02528AC4 */ cpu->r[28] = 0x00000000u;
|
|
/* 02528AC8 */ _t8 = cpu->r[29] + 0x00000004u;
|
|
/* 02528AC8 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 02528ACC */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02528ACC */ _t10 = _t9 & 0x00000001u;
|
|
/* 02528ACC */ if (_t10) goto L_02528AD0; else goto L_02528AE0;
|
|
L_02528AD0: ; // 0x2528ad0
|
|
/* 02528AD0 */ cpu->r[3] = 0x00000038u;
|
|
/* 02528AD4 */ Gambit_fn_02801A78(cpu);
|
|
/* 02528AD8 */ cpu->r[31] = cpu->r[3];
|
|
/* 02528AD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02528ADC */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02528ADC */ _t12 = _t11 & 0x00000001u;
|
|
/* 02528ADC */ if (_t12) goto L_02528B10; else goto L_02528AE0;
|
|
L_02528AE0: ; // 0x2528ae0
|
|
/* 02528AE0 */ cpu->r[3] = cpu->r[31];
|
|
/* 02528AE4 */ Gambit_fn_027FC29C(cpu);
|
|
/* 02528AE8 */ cpu->r[5] = 0x10080000u;
|
|
/* 02528AEC */ _t13 = cpu->r[31] + 0x00000030u;
|
|
/* 02528AEC */ rbrew_write32(cpu->mem, _t13, cpu->r[28]);
|
|
/* 02528AF0 */ cpu->r[5] = cpu->r[5] + 0x000072F4u;
|
|
/* 02528AF4 */ _t14 = cpu->r[31] + 0x00000034u;
|
|
/* 02528AF4 */ rbrew_write32(cpu->mem, _t14, cpu->r[28]);
|
|
/* 02528AF8 */ _t15 = cpu->r[31] + 0x00000004u;
|
|
/* 02528AF8 */ rbrew_write32(cpu->mem, _t15, cpu->r[5]);
|
|
/* 02528AFC */ _t16 = cpu->r[31] + 0x00000024u;
|
|
/* 02528AFC */ rbrew_write32(cpu->mem, _t16, cpu->r[28]);
|
|
/* 02528B00 */ _t17 = cpu->r[31] + 0x00000028u;
|
|
/* 02528B00 */ rbrew_write32(cpu->mem, _t17, cpu->r[28]);
|
|
/* 02528B04 */ _t18 = cpu->r[31] + 0x0000002Cu;
|
|
/* 02528B04 */ rbrew_write32(cpu->mem, _t18, cpu->r[28]);
|
|
/* 02528B08 */ _t19 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02528B08 */ rbrew_write32(cpu->mem, _t19, cpu->r[28]);
|
|
/* 02528B0C */ _t20 = cpu->r[31] + 0x00000020u;
|
|
/* 02528B0C */ rbrew_write32(cpu->mem, _t20, cpu->r[28]);
|
|
L_02528B10: ; // 0x2528b10
|
|
/* 02528B10 */ _t21 = cpu->r[29] + 0x000001ECu;
|
|
/* 02528B10 */ rbrew_write32(cpu->mem, _t21, cpu->r[28]);
|
|
/* 02528B14 */ cpu->r[3] = cpu->r[29] + 0x000001F4u;
|
|
/* 02528B14 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02528B18 */ _t22 = cpu->r[29] + 0x000001F0u;
|
|
/* 02528B18 */ rbrew_write32(cpu->mem, _t22, cpu->r[28]);
|
|
/* 02528B1C */ _t23 = cpu->r[29] + 0x000001E8u;
|
|
/* 02528B1C */ rbrew_write32(cpu->mem, _t23, cpu->r[28]);
|
|
/* 02528B20 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02528B20 */ _t25 = _t24 & 0x00000001u;
|
|
/* 02528B20 */ if (_t25) goto L_02528B24; else goto L_02528B34;
|
|
L_02528B24: ; // 0x2528b24
|
|
/* 02528B24 */ cpu->r[3] = 0x00000008u;
|
|
/* 02528B28 */ Gambit_fn_02801A78(cpu);
|
|
/* 02528B2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02528B30 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02528B30 */ _t27 = _t26 & 0x00000001u;
|
|
/* 02528B30 */ if (_t27) goto L_02528B3C; else goto L_02528B34;
|
|
L_02528B34: ; // 0x2528b34
|
|
/* 02528B34 */ _t28 = cpu->r[3] + 0x00000004u;
|
|
/* 02528B34 */ rbrew_write32(cpu->mem, _t28, cpu->r[28]);
|
|
/* 02528B38 */ _t29 = cpu->r[3] + 0x00000000u;
|
|
/* 02528B38 */ rbrew_write32(cpu->mem, _t29, cpu->r[28]);
|
|
L_02528B3C: ; // 0x2528b3c
|
|
/* 02528B3C */ _t30 = cpu->r[29] + 0x00000200u;
|
|
/* 02528B3C */ rbrew_write32(cpu->mem, _t30, cpu->r[28]);
|
|
/* 02528B40 */ cpu->r[12] = 0x100C0000u;
|
|
/* 02528B44 */ _t31 = cpu->r[29] + 0x0000020Cu;
|
|
/* 02528B44 */ rbrew_write32(cpu->mem, _t31, cpu->r[28]);
|
|
/* 02528B48 */ _t32 = cpu->r[12] + 0x00002EBCu;
|
|
/* 02528B48 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 02528B4C */ _t33 = cpu->r[29] + 0x00000204u;
|
|
/* 02528B4C */ rbrew_write32(cpu->mem, _t33, cpu->r[28]);
|
|
/* 02528B50 */ _t34 = cpu->r[29] + 0x00000208u;
|
|
/* 02528B50 */ rbrew_write_f32(cpu->mem, _t34, cpu->f[31]);
|
|
/* 02528B54 */ cpu->r[31] = cpu->r[29] + 0x00000210u;
|
|
/* 02528B54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02528B58 */ _t35 = cpu->r[29] + 0x000001FCu;
|
|
/* 02528B58 */ rbrew_write_f32(cpu->mem, _t35, cpu->f[31]);
|
|
/* 02528B5C */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02528B5C */ _t37 = _t36 & 0x00000001u;
|
|
/* 02528B5C */ if (_t37) goto L_02528B60; else goto L_02528B70;
|
|
L_02528B60: ; // 0x2528b60
|
|
/* 02528B60 */ cpu->r[3] = 0x00000038u;
|
|
/* 02528B64 */ Gambit_fn_02801A78(cpu);
|
|
/* 02528B68 */ cpu->r[31] = cpu->r[3];
|
|
/* 02528B68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02528B6C */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02528B6C */ _t39 = _t38 & 0x00000001u;
|
|
/* 02528B6C */ if (_t39) goto L_02528BB4; else goto L_02528B70;
|
|
L_02528B70: ; // 0x2528b70
|
|
/* 02528B70 */ cpu->r[3] = cpu->r[31];
|
|
/* 02528B70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02528B74 */ _t40 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02528B74 */ _t41 = _t40 & 0x00000001u;
|
|
/* 02528B74 */ if (_t41) goto L_02528B78; else goto L_02528B88;
|
|
L_02528B78: ; // 0x2528b78
|
|
/* 02528B78 */ cpu->r[3] = 0x00000010u;
|
|
/* 02528B7C */ Gambit_fn_02801A78(cpu);
|
|
/* 02528B80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02528B84 */ _t42 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02528B84 */ _t43 = _t42 & 0x00000001u;
|
|
/* 02528B84 */ if (_t43) goto L_02528B98; else goto L_02528B88;
|
|
L_02528B88: ; // 0x2528b88
|
|
/* 02528B88 */ _t44 = cpu->r[3] + 0x00000004u;
|
|
/* 02528B88 */ rbrew_write32(cpu->mem, _t44, cpu->r[28]);
|
|
/* 02528B8C */ _t45 = cpu->r[3] + 0x00000008u;
|
|
/* 02528B8C */ rbrew_write32(cpu->mem, _t45, cpu->r[28]);
|
|
/* 02528B90 */ _t46 = cpu->r[3] + 0x00000000u;
|
|
/* 02528B90 */ rbrew_write32(cpu->mem, _t46, cpu->r[28]);
|
|
/* 02528B94 */ _t47 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02528B94 */ rbrew_write32(cpu->mem, _t47, cpu->r[28]);
|
|
L_02528B98: ; // 0x2528b98
|
|
/* 02528B98 */ cpu->r[9] = cpu->r[31] + 0x00000010u;
|
|
/* 02528B98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02528B9C */ _t48 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02528B9C */ _t49 = _t48 & 0x00000001u;
|
|
/* 02528B9C */ if (_t49) goto L_02528BB4; else goto L_02528BA0;
|
|
L_02528BA0: ; // 0x2528ba0
|
|
/* 02528BA0 */ _t50 = cpu->r[31] + 0x00000000u;
|
|
/* 02528BA0 */ rbrew_write32(cpu->mem, _t50, cpu->r[9]);
|
|
/* 02528BA4 */ cpu->r[6] = 0x0000000Au;
|
|
/* 02528BA8 */ _t51 = cpu->r[31] + 0x00000008u;
|
|
/* 02528BA8 */ rbrew_write32(cpu->mem, _t51, cpu->r[28]);
|
|
/* 02528BAC */ _t52 = cpu->r[31] + 0x00000004u;
|
|
/* 02528BAC */ rbrew_write32(cpu->mem, _t52, cpu->r[6]);
|
|
/* 02528BB0 */ _t53 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02528BB0 */ rbrew_write32(cpu->mem, _t53, cpu->r[28]);
|
|
L_02528BB4: ; // 0x2528bb4
|
|
/* 02528BB4 */ cpu->r[30] = cpu->r[29] + 0x0000024Cu;
|
|
/* 02528BB4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02528BB8 */ _t54 = cpu->r[29] + 0x00000248u;
|
|
/* 02528BB8 */ rbrew_write8(cpu->mem, _t54, (uint8_t)cpu->r[28]);
|
|
/* 02528BBC */ _t55 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02528BBC */ _t56 = _t55 & 0x00000001u;
|
|
/* 02528BBC */ if (_t56) goto L_02528BC0; else goto L_02528BD0;
|
|
L_02528BC0: ; // 0x2528bc0
|
|
/* 02528BC0 */ cpu->r[3] = 0x00000088u;
|
|
/* 02528BC4 */ Gambit_fn_02801A78(cpu);
|
|
/* 02528BC8 */ cpu->r[30] = cpu->r[3];
|
|
/* 02528BC8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02528BCC */ _t57 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02528BCC */ _t58 = _t57 & 0x00000001u;
|
|
/* 02528BCC */ if (_t58) goto L_02528C30; else goto L_02528BD0;
|
|
L_02528BD0: ; // 0x2528bd0
|
|
/* 02528BD0 */ cpu->r[3] = cpu->r[30];
|
|
/* 02528BD0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02528BD4 */ _t59 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02528BD4 */ _t60 = _t59 & 0x00000001u;
|
|
/* 02528BD4 */ if (_t60) goto L_02528BD8; else goto L_02528BE8;
|
|
L_02528BD8: ; // 0x2528bd8
|
|
/* 02528BD8 */ cpu->r[3] = 0x00000010u;
|
|
/* 02528BDC */ Gambit_fn_02801A78(cpu);
|
|
/* 02528BE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02528BE4 */ _t61 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02528BE4 */ _t62 = _t61 & 0x00000001u;
|
|
/* 02528BE4 */ if (_t62) goto L_02528BF8; else goto L_02528BE8;
|
|
L_02528BE8: ; // 0x2528be8
|
|
/* 02528BE8 */ _t63 = cpu->r[3] + 0x00000004u;
|
|
/* 02528BE8 */ rbrew_write32(cpu->mem, _t63, cpu->r[28]);
|
|
/* 02528BEC */ _t64 = cpu->r[3] + 0x00000008u;
|
|
/* 02528BEC */ rbrew_write32(cpu->mem, _t64, cpu->r[28]);
|
|
/* 02528BF0 */ _t65 = cpu->r[3] + 0x00000000u;
|
|
/* 02528BF0 */ rbrew_write32(cpu->mem, _t65, cpu->r[28]);
|
|
/* 02528BF4 */ _t66 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02528BF4 */ rbrew_write32(cpu->mem, _t66, cpu->r[28]);
|
|
L_02528BF8: ; // 0x2528bf8
|
|
/* 02528BF8 */ cpu->r[6] = 0x02530000u;
|
|
/* 02528BFC */ cpu->r[31] = cpu->r[30] + 0x00000010u;
|
|
/* 02528C00 */ cpu->r[4] = 0x0000000Au;
|
|
/* 02528C04 */ cpu->r[6] = cpu->r[6] + 0xFFFFAE78u;
|
|
/* 02528C08 */ cpu->r[3] = cpu->r[31];
|
|
/* 02528C0C */ cpu->r[5] = 0x0000000Cu;
|
|
/* 02528C10 */ Gambit_fn_02C82E00(cpu);
|
|
/* 02528C14 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02528C18 */ _t67 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02528C18 */ _t68 = _t67 & 0x00000001u;
|
|
/* 02528C18 */ if (_t68) goto L_02528C30; else goto L_02528C1C;
|
|
L_02528C1C: ; // 0x2528c1c
|
|
/* 02528C1C */ _t69 = cpu->r[30] + 0x00000000u;
|
|
/* 02528C1C */ rbrew_write32(cpu->mem, _t69, cpu->r[31]);
|
|
/* 02528C20 */ cpu->r[7] = 0x0000000Au;
|
|
/* 02528C24 */ _t70 = cpu->r[30] + 0x00000008u;
|
|
/* 02528C24 */ rbrew_write32(cpu->mem, _t70, cpu->r[28]);
|
|
/* 02528C28 */ _t71 = cpu->r[30] + 0x00000004u;
|
|
/* 02528C28 */ rbrew_write32(cpu->mem, _t71, cpu->r[7]);
|
|
/* 02528C2C */ _t72 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02528C2C */ rbrew_write32(cpu->mem, _t72, cpu->r[28]);
|
|
L_02528C30: ; // 0x2528c30
|
|
/* 02528C30 */ _t73 = cpu->r[29] + 0x000002D4u;
|
|
/* 02528C30 */ rbrew_write8(cpu->mem, _t73, (uint8_t)cpu->r[28]);
|
|
/* 02528C34 */ cpu->r[0] = 0x00000001u;
|
|
/* 02528C38 */ cpu->r[3] = cpu->r[29] + 0x000002D8u;
|
|
/* 02528C38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02528C3C */ _t74 = cpu->r[29] + 0x000002D5u;
|
|
/* 02528C3C */ rbrew_write8(cpu->mem, _t74, (uint8_t)cpu->r[0]);
|
|
/* 02528C40 */ _t75 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02528C40 */ _t76 = _t75 & 0x00000001u;
|
|
/* 02528C40 */ if (_t76) goto L_02528C44; else goto L_02528C54;
|
|
L_02528C44: ; // 0x2528c44
|
|
/* 02528C44 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02528C48 */ Gambit_fn_02801A78(cpu);
|
|
/* 02528C4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02528C50 */ _t77 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02528C50 */ _t78 = _t77 & 0x00000001u;
|
|
/* 02528C50 */ if (_t78) goto L_02528C78; else goto L_02528C54;
|
|
L_02528C54: ; // 0x2528c54
|
|
/* 02528C54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02528C58 */ _t79 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02528C58 */ _t80 = _t79 & 0x00000001u;
|
|
/* 02528C58 */ if (_t80) goto L_02528C5C; else goto L_02528C6C;
|
|
L_02528C5C: ; // 0x2528c5c
|
|
/* 02528C5C */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02528C60 */ Gambit_fn_02801A78(cpu);
|
|
/* 02528C64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02528C68 */ _t81 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02528C68 */ _t82 = _t81 & 0x00000001u;
|
|
/* 02528C68 */ if (_t82) goto L_02528C78; else goto L_02528C6C;
|
|
L_02528C6C: ; // 0x2528c6c
|
|
/* 02528C6C */ _t83 = cpu->r[3] + 0x00000004u;
|
|
/* 02528C6C */ rbrew_write_f32(cpu->mem, _t83, cpu->f[31]);
|
|
/* 02528C70 */ _t84 = cpu->r[3] + 0x00000000u;
|
|
/* 02528C70 */ rbrew_write_f32(cpu->mem, _t84, cpu->f[31]);
|
|
/* 02528C74 */ _t85 = cpu->r[3] + 0x00000008u;
|
|
/* 02528C74 */ rbrew_write_f32(cpu->mem, _t85, cpu->f[31]);
|
|
L_02528C78: ; // 0x2528c78
|
|
/* 02528C78 */ cpu->r[0] = 0x00000003u;
|
|
/* 02528C7C */ _t86 = cpu->r[29] + 0x000002E4u;
|
|
/* 02528C7C */ rbrew_write8(cpu->mem, _t86, (uint8_t)cpu->r[28]);
|
|
/* 02528C80 */ cpu->r[3] = cpu->r[29] + 0x000001B0u;
|
|
/* 02528C84 */ cpu->r[4] = cpu->r[29];
|
|
/* 02528C88 */ cpu->r[6] = 0x00000000u;
|
|
/* 02528C8C */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02528C90 */ _t87 = cpu->r[1] + 0x00000008u;
|
|
/* 02528C90 */ rbrew_write8(cpu->mem, _t87, (uint8_t)cpu->r[0]);
|
|
/* 02528C94 */ Gambit_fn_0252B1EC(cpu);
|
|
/* 02528C98 */ cpu->r[3] = cpu->r[29];
|
|
/* 02528C9C */ cpu->r[4] = cpu->r[29] + 0x000001B0u;
|
|
/* 02528CA0 */ Gambit_fn_02000834(cpu);
|
|
/* 02528CA4 */ cpu->r[25] = 0x100C0000u;
|
|
/* 02528CA8 */ cpu->r[27] = 0x02530000u;
|
|
/* 02528CAC */ cpu->r[25] = cpu->r[25] + 0x00002DE4u;
|
|
/* 02528CB0 */ cpu->r[9] = 0x100C0000u;
|
|
/* 02528CB4 */ cpu->r[27] = cpu->r[27] + 0xFFFFAD10u;
|
|
/* 02528CB8 */ cpu->r[9] = cpu->r[9] + 0x00002ED0u;
|
|
/* 02528CBC */ cpu->ctr = cpu->r[27];
|
|
/* 02528CC0 */ _t88 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02528CC0 */ rbrew_write32(cpu->mem, _t88, cpu->r[9]);
|
|
/* 02528CC4 */ _t89 = cpu->r[1] + 0x00000010u;
|
|
/* 02528CC4 */ rbrew_write32(cpu->mem, _t89, cpu->r[25]);
|
|
/* 02528CC8 */ _t90 = cpu->r[29] + 0x000001C8u;
|
|
/* 02528CC8 */ cpu->r[24] = rbrew_read32(cpu->mem, _t90);
|
|
/* 02528CCC */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02528CD0 */ _t91 = cpu->r[24] + 0x00000000u;
|
|
/* 02528CD0 */ cpu->r[26] = rbrew_read32(cpu->mem, _t91);
|
|
/* 02528CD4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02528CD8 */ cpu->r[31] = 0x10110000u;
|
|
/* 02528CDC */ _t92 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02528CDC */ cpu->r[8] = rbrew_read32(cpu->mem, _t92);
|
|
/* 02528CE0 */ _t93 = cpu->r[31] + 0x00007399u;
|
|
/* 02528CE0 */ cpu->r[31] = rbrew_read8(cpu->mem, _t93);
|
|
/* 02528CE4 */ _t94 = cpu->r[8] + 0x00000000u;
|
|
/* 02528CE4 */ cpu->r[10] = rbrew_read8(cpu->mem, _t94);
|
|
/* 02528CE8 */ cpu->r[30] = 0x00000000u;
|
|
/* 02528CEC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[31]);
|
|
/* 02528CF0 */ cpu->r[11] = 0x00080000u;
|
|
/* 02528CF4 */ _t95 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02528CF4 */ _t96 = _t95 & 0x00000001u;
|
|
/* 02528CF4 */ if (_t96) goto L_02528D1C; else goto L_02528CF8;
|
|
L_02528CF8: ; // 0x2528cf8
|
|
/* 02528CF8 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 02528CFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[11]);
|
|
/* 02528D00 */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 02528D04 */ _t97 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02528D04 */ _t98 = _t97 & 0x00000001u;
|
|
/* 02528D04 */ if (_t98) goto L_02528D18; else goto L_02528D08;
|
|
L_02528D08: ; // 0x2528d08
|
|
/* 02528D08 */ _t99 = cpu->r[8] + 0x00000000u;
|
|
/* 02528D08 */ cpu->r[0] = rbrew_read8(cpu->mem, _t99);
|
|
/* 02528D0C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 02528D10 */ _t100 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02528D10 */ _t101 = _t100 & 0x00000001u;
|
|
/* 02528D10 */ if (_t101) goto L_02528D14; else goto L_02528CF8;
|
|
L_02528D14: ; // 0x2528d14
|
|
/* 02528D14 */ goto L_02528D1C;
|
|
L_02528D18: ; // 0x2528d18
|
|
/* 02528D18 */ cpu->r[30] = 0x00000000u;
|
|
L_02528D1C: ; // 0x2528d1c
|
|
/* 02528D1C */ _t102 = cpu->r[24] + 0x00000008u;
|
|
/* 02528D1C */ cpu->r[8] = rbrew_read32(cpu->mem, _t102);
|
|
/* 02528D20 */ _t103 = cpu->r[1] + 0x00000010u;
|
|
/* 02528D20 */ cpu->r[12] = rbrew_read32(cpu->mem, _t103);
|
|
/* 02528D24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[8]);
|
|
/* 02528D28 */ _t104 = cpu->r[12] + 0x00000014u;
|
|
/* 02528D28 */ cpu->r[5] = rbrew_read32(cpu->mem, _t104);
|
|
/* 02528D2C */ _t105 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02528D2C */ _t106 = _t105 & 0x00000001u;
|
|
/* 02528D2C */ if (_t106) goto L_02528D34; else goto L_02528D30;
|
|
L_02528D30: ; // 0x2528d30
|
|
/* 02528D30 */ cpu->r[30] = cpu->r[8] + 0xFFFFFFFFu;
|
|
L_02528D34: ; // 0x2528d34
|
|
/* 02528D34 */ cpu->ctr = cpu->r[5];
|
|
/* 02528D38 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02528D3C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02528D40 */ _t107 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02528D40 */ cpu->r[4] = rbrew_read32(cpu->mem, _t107);
|
|
/* 02528D44 */ cpu->r[3] = cpu->r[26];
|
|
/* 02528D48 */ cpu->r[5] = cpu->r[30];
|
|
/* 02528D4C */ cpu->r[6] = 0x00000000u;
|
|
/* 02528D50 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 02528D54 */ _t108 = cpu->r[26] + cpu->r[30];
|
|
/* 02528D54 */ rbrew_write8(cpu->mem, _t108, (uint8_t)cpu->r[31]);
|
|
/* 02528D58 */ cpu->r[11] = 0x00000000u;
|
|
/* 02528D5C */ _t109 = cpu->r[1] + 0x00000026u;
|
|
/* 02528D5C */ rbrew_write16(cpu->mem, _t109, (uint16_t)cpu->r[28]);
|
|
/* 02528D60 */ cpu->r[7] = 0xFFFFFFFFu;
|
|
/* 02528D64 */ _t110 = cpu->r[1] + 0x00000008u;
|
|
/* 02528D64 */ rbrew_write8(cpu->mem, _t110, (uint8_t)cpu->r[11]);
|
|
/* 02528D68 */ cpu->r[0] = 0x02530000u;
|
|
/* 02528D6C */ _t111 = cpu->r[1] + 0x00000024u;
|
|
/* 02528D6C */ rbrew_write16(cpu->mem, _t111, (uint16_t)cpu->r[28]);
|
|
/* 02528D70 */ cpu->r[0] = cpu->r[0] + 0xFFFFAAA4u;
|
|
/* 02528D74 */ _t112 = cpu->r[1] + 0x0000001Eu;
|
|
/* 02528D74 */ rbrew_write16(cpu->mem, _t112, (uint16_t)cpu->r[7]);
|
|
/* 02528D78 */ _t113 = cpu->r[1] + 0x00000028u;
|
|
/* 02528D78 */ rbrew_write32(cpu->mem, _t113, cpu->r[28]);
|
|
/* 02528D7C */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 02528D80 */ _t114 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02528D80 */ rbrew_write16(cpu->mem, _t114, (uint16_t)cpu->r[28]);
|
|
/* 02528D84 */ cpu->r[8] = 0x02530000u;
|
|
/* 02528D88 */ cpu->r[5] = cpu->r[1] + 0x0000001Cu;
|
|
/* 02528D8C */ _t115 = cpu->r[1] + 0x00000018u;
|
|
/* 02528D8C */ rbrew_write32(cpu->mem, _t115, cpu->r[0]);
|
|
/* 02528D90 */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 02528D94 */ cpu->r[3] = cpu->r[29] + 0x000001B0u;
|
|
/* 02528D98 */ _t116 = cpu->r[1] + 0x00000014u;
|
|
/* 02528D98 */ rbrew_write16(cpu->mem, _t116, (uint16_t)cpu->r[28]);
|
|
/* 02528D9C */ cpu->r[8] = cpu->r[8] + 0xFFFFAAB8u;
|
|
/* 02528DA0 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 02528DA4 */ _t117 = cpu->r[1] + 0x00000016u;
|
|
/* 02528DA4 */ rbrew_write16(cpu->mem, _t117, (uint16_t)cpu->r[0]);
|
|
/* 02528DA8 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 02528DAC */ _t118 = cpu->r[1] + 0x00000020u;
|
|
/* 02528DAC */ rbrew_write32(cpu->mem, _t118, cpu->r[8]);
|
|
/* 02528DB0 */ Gambit_fn_0252B49C(cpu);
|
|
/* 02528DB4 */ cpu->r[9] = 0x100C0000u;
|
|
/* 02528DB8 */ _t119 = cpu->r[1] + 0x00000010u;
|
|
/* 02528DB8 */ rbrew_write32(cpu->mem, _t119, cpu->r[25]);
|
|
/* 02528DBC */ cpu->r[9] = cpu->r[9] + 0x00002EE0u;
|
|
/* 02528DC0 */ _t120 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02528DC0 */ rbrew_write32(cpu->mem, _t120, cpu->r[9]);
|
|
/* 02528DC4 */ _t121 = cpu->r[29] + 0x000001C4u;
|
|
/* 02528DC4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t121);
|
|
/* 02528DC8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000001u);
|
|
/* 02528DCC */ _t122 = cpu->r[29] + 0x000001C8u;
|
|
/* 02528DCC */ cpu->r[26] = rbrew_read32(cpu->mem, _t122);
|
|
/* 02528DD0 */ _t123 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02528DD0 */ _t124 = _t123 & 0x00000001u;
|
|
/* 02528DD0 */ if (_t124) goto L_02528DD4; else goto L_02528DD8;
|
|
L_02528DD4: ; // 0x2528dd4
|
|
/* 02528DD4 */ cpu->r[26] = cpu->r[26] + 0x00000024u;
|
|
L_02528DD8: ; // 0x2528dd8
|
|
/* 02528DD8 */ cpu->ctr = cpu->r[27];
|
|
/* 02528DDC */ _t125 = cpu->r[26] + 0x00000000u;
|
|
/* 02528DDC */ cpu->r[24] = rbrew_read32(cpu->mem, _t125);
|
|
/* 02528DE0 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02528DE4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02528DE8 */ _t126 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02528DE8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t126);
|
|
/* 02528DEC */ _t127 = cpu->r[12] + 0x00000000u;
|
|
/* 02528DEC */ cpu->r[11] = rbrew_read8(cpu->mem, _t127);
|
|
/* 02528DF0 */ cpu->r[30] = 0x00000000u;
|
|
/* 02528DF4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[31]);
|
|
/* 02528DF8 */ cpu->r[6] = 0x00080000u;
|
|
/* 02528DFC */ _t128 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02528DFC */ _t129 = _t128 & 0x00000001u;
|
|
/* 02528DFC */ if (_t129) goto L_02528E24; else goto L_02528E00;
|
|
L_02528E00: ; // 0x2528e00
|
|
/* 02528E00 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 02528E04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[6]);
|
|
/* 02528E08 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 02528E0C */ _t130 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02528E0C */ _t131 = _t130 & 0x00000001u;
|
|
/* 02528E0C */ if (_t131) goto L_02528E20; else goto L_02528E10;
|
|
L_02528E10: ; // 0x2528e10
|
|
/* 02528E10 */ _t132 = cpu->r[12] + 0x00000000u;
|
|
/* 02528E10 */ cpu->r[0] = rbrew_read8(cpu->mem, _t132);
|
|
/* 02528E14 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 02528E18 */ _t133 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02528E18 */ _t134 = _t133 & 0x00000001u;
|
|
/* 02528E18 */ if (_t134) goto L_02528E1C; else goto L_02528E00;
|
|
L_02528E1C: ; // 0x2528e1c
|
|
/* 02528E1C */ goto L_02528E24;
|
|
L_02528E20: ; // 0x2528e20
|
|
/* 02528E20 */ cpu->r[30] = 0x00000000u;
|
|
L_02528E24: ; // 0x2528e24
|
|
/* 02528E24 */ _t135 = cpu->r[26] + 0x00000008u;
|
|
/* 02528E24 */ cpu->r[10] = rbrew_read32(cpu->mem, _t135);
|
|
/* 02528E28 */ _t136 = cpu->r[1] + 0x00000010u;
|
|
/* 02528E28 */ cpu->r[5] = rbrew_read32(cpu->mem, _t136);
|
|
/* 02528E2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[10]);
|
|
/* 02528E30 */ _t137 = cpu->r[5] + 0x00000014u;
|
|
/* 02528E30 */ cpu->r[0] = rbrew_read32(cpu->mem, _t137);
|
|
/* 02528E34 */ _t138 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02528E34 */ _t139 = _t138 & 0x00000001u;
|
|
/* 02528E34 */ if (_t139) goto L_02528E3C; else goto L_02528E38;
|
|
L_02528E38: ; // 0x2528e38
|
|
/* 02528E38 */ cpu->r[30] = cpu->r[10] + 0xFFFFFFFFu;
|
|
L_02528E3C: ; // 0x2528e3c
|
|
/* 02528E3C */ cpu->ctr = cpu->r[0];
|
|
/* 02528E40 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02528E44 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02528E48 */ _t140 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02528E48 */ cpu->r[4] = rbrew_read32(cpu->mem, _t140);
|
|
/* 02528E4C */ cpu->r[6] = 0x00000000u;
|
|
/* 02528E50 */ cpu->r[5] = cpu->r[30];
|
|
/* 02528E54 */ cpu->r[3] = cpu->r[24];
|
|
/* 02528E58 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 02528E5C */ _t141 = cpu->r[24] + cpu->r[30];
|
|
/* 02528E5C */ rbrew_write8(cpu->mem, _t141, (uint8_t)cpu->r[31]);
|
|
/* 02528E60 */ cpu->r[10] = 0x00000001u;
|
|
/* 02528E64 */ _t142 = cpu->r[1] + 0x00000026u;
|
|
/* 02528E64 */ rbrew_write16(cpu->mem, _t142, (uint16_t)cpu->r[28]);
|
|
/* 02528E68 */ cpu->r[9] = 0x02530000u;
|
|
/* 02528E6C */ _t143 = cpu->r[1] + 0x00000008u;
|
|
/* 02528E6C */ rbrew_write8(cpu->mem, _t143, (uint8_t)cpu->r[10]);
|
|
/* 02528E70 */ cpu->r[6] = 0xFFFFFFFFu;
|
|
/* 02528E74 */ _t144 = cpu->r[1] + 0x00000014u;
|
|
/* 02528E74 */ rbrew_write16(cpu->mem, _t144, (uint16_t)cpu->r[28]);
|
|
/* 02528E78 */ cpu->r[0] = 0x02530000u;
|
|
/* 02528E7C */ _t145 = cpu->r[1] + 0x0000001Eu;
|
|
/* 02528E7C */ rbrew_write16(cpu->mem, _t145, (uint16_t)cpu->r[6]);
|
|
/* 02528E80 */ _t146 = cpu->r[1] + 0x00000024u;
|
|
/* 02528E80 */ rbrew_write16(cpu->mem, _t146, (uint16_t)cpu->r[28]);
|
|
/* 02528E84 */ cpu->r[9] = cpu->r[9] + 0xFFFFAAD0u;
|
|
/* 02528E88 */ _t147 = cpu->r[1] + 0x00000016u;
|
|
/* 02528E88 */ rbrew_write16(cpu->mem, _t147, (uint16_t)cpu->r[6]);
|
|
/* 02528E8C */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 02528E90 */ cpu->r[0] = cpu->r[0] + 0xFFFFAAE4u;
|
|
/* 02528E94 */ _t148 = cpu->r[1] + 0x00000020u;
|
|
/* 02528E94 */ rbrew_write32(cpu->mem, _t148, cpu->r[9]);
|
|
/* 02528E98 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 02528E9C */ _t149 = cpu->r[1] + 0x00000018u;
|
|
/* 02528E9C */ rbrew_write32(cpu->mem, _t149, cpu->r[0]);
|
|
/* 02528EA0 */ cpu->r[3] = cpu->r[29] + 0x000001B0u;
|
|
/* 02528EA4 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 02528EA8 */ _t150 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02528EA8 */ rbrew_write16(cpu->mem, _t150, (uint16_t)cpu->r[28]);
|
|
/* 02528EAC */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 02528EB0 */ _t151 = cpu->r[1] + 0x00000028u;
|
|
/* 02528EB0 */ rbrew_write32(cpu->mem, _t151, cpu->r[28]);
|
|
/* 02528EB4 */ Gambit_fn_0252B49C(cpu);
|
|
/* 02528EB8 */ cpu->r[7] = 0x100C0000u;
|
|
/* 02528EBC */ _t152 = cpu->r[1] + 0x00000010u;
|
|
/* 02528EBC */ rbrew_write32(cpu->mem, _t152, cpu->r[25]);
|
|
/* 02528EC0 */ cpu->r[7] = cpu->r[7] + 0x00002EC0u;
|
|
/* 02528EC4 */ _t153 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02528EC4 */ rbrew_write32(cpu->mem, _t153, cpu->r[7]);
|
|
/* 02528EC8 */ _t154 = cpu->r[29] + 0x000001C4u;
|
|
/* 02528EC8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t154);
|
|
/* 02528ECC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], 0x00000002u);
|
|
/* 02528ED0 */ _t155 = cpu->r[29] + 0x000001C8u;
|
|
/* 02528ED0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t155);
|
|
/* 02528ED4 */ _t156 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02528ED4 */ _t157 = _t156 & 0x00000001u;
|
|
/* 02528ED4 */ if (_t157) goto L_02528ED8; else goto L_02528EDC;
|
|
L_02528ED8: ; // 0x2528ed8
|
|
/* 02528ED8 */ cpu->r[30] = cpu->r[30] + 0x00000048u;
|
|
L_02528EDC: ; // 0x2528edc
|
|
/* 02528EDC */ cpu->ctr = cpu->r[27];
|
|
/* 02528EE0 */ _t158 = cpu->r[30] + 0x00000000u;
|
|
/* 02528EE0 */ cpu->r[26] = rbrew_read32(cpu->mem, _t158);
|
|
/* 02528EE4 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02528EE8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02528EEC */ _t159 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02528EEC */ cpu->r[7] = rbrew_read32(cpu->mem, _t159);
|
|
/* 02528EF0 */ _t160 = cpu->r[7] + 0x00000000u;
|
|
/* 02528EF0 */ cpu->r[12] = rbrew_read8(cpu->mem, _t160);
|
|
/* 02528EF4 */ cpu->r[27] = 0x00000000u;
|
|
/* 02528EF8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[31]);
|
|
/* 02528EFC */ cpu->r[8] = 0x00080000u;
|
|
/* 02528F00 */ _t161 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02528F00 */ _t162 = _t161 & 0x00000001u;
|
|
/* 02528F00 */ if (_t162) goto L_02528F28; else goto L_02528F04;
|
|
L_02528F04: ; // 0x2528f04
|
|
/* 02528F04 */ cpu->r[27] = cpu->r[27] + 0x00000001u;
|
|
/* 02528F08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], cpu->r[8]);
|
|
/* 02528F0C */ cpu->r[7] = cpu->r[7] + 0x00000001u;
|
|
/* 02528F10 */ _t163 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02528F10 */ _t164 = _t163 & 0x00000001u;
|
|
/* 02528F10 */ if (_t164) goto L_02528F24; else goto L_02528F14;
|
|
L_02528F14: ; // 0x2528f14
|
|
/* 02528F14 */ _t165 = cpu->r[7] + 0x00000000u;
|
|
/* 02528F14 */ cpu->r[0] = rbrew_read8(cpu->mem, _t165);
|
|
/* 02528F18 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 02528F1C */ _t166 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02528F1C */ _t167 = _t166 & 0x00000001u;
|
|
/* 02528F1C */ if (_t167) goto L_02528F20; else goto L_02528F04;
|
|
L_02528F20: ; // 0x2528f20
|
|
/* 02528F20 */ goto L_02528F28;
|
|
L_02528F24: ; // 0x2528f24
|
|
/* 02528F24 */ cpu->r[27] = 0x00000000u;
|
|
L_02528F28: ; // 0x2528f28
|
|
/* 02528F28 */ _t168 = cpu->r[30] + 0x00000008u;
|
|
/* 02528F28 */ cpu->r[6] = rbrew_read32(cpu->mem, _t168);
|
|
/* 02528F2C */ _t169 = cpu->r[1] + 0x00000010u;
|
|
/* 02528F2C */ cpu->r[5] = rbrew_read32(cpu->mem, _t169);
|
|
/* 02528F30 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], cpu->r[6]);
|
|
/* 02528F34 */ _t170 = cpu->r[5] + 0x00000014u;
|
|
/* 02528F34 */ cpu->r[0] = rbrew_read32(cpu->mem, _t170);
|
|
/* 02528F38 */ _t171 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02528F38 */ _t172 = _t171 & 0x00000001u;
|
|
/* 02528F38 */ if (_t172) goto L_02528F40; else goto L_02528F3C;
|
|
L_02528F3C: ; // 0x2528f3c
|
|
/* 02528F3C */ cpu->r[27] = cpu->r[6] + 0xFFFFFFFFu;
|
|
L_02528F40: ; // 0x2528f40
|
|
/* 02528F40 */ cpu->ctr = cpu->r[0];
|
|
/* 02528F44 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02528F48 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02528F4C */ _t173 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02528F4C */ cpu->r[4] = rbrew_read32(cpu->mem, _t173);
|
|
/* 02528F50 */ cpu->r[6] = 0x00000000u;
|
|
/* 02528F54 */ cpu->r[5] = cpu->r[27];
|
|
/* 02528F58 */ cpu->r[3] = cpu->r[26];
|
|
/* 02528F5C */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 02528F60 */ _t174 = cpu->r[26] + cpu->r[27];
|
|
/* 02528F60 */ rbrew_write8(cpu->mem, _t174, (uint8_t)cpu->r[31]);
|
|
/* 02528F64 */ cpu->r[0] = 0x00000002u;
|
|
/* 02528F68 */ _t175 = cpu->r[1] + 0x00000014u;
|
|
/* 02528F68 */ rbrew_write16(cpu->mem, _t175, (uint16_t)cpu->r[28]);
|
|
/* 02528F6C */ cpu->r[12] = 0x02530000u;
|
|
/* 02528F70 */ _t176 = cpu->r[1] + 0x00000026u;
|
|
/* 02528F70 */ rbrew_write16(cpu->mem, _t176, (uint16_t)cpu->r[28]);
|
|
/* 02528F74 */ cpu->r[12] = cpu->r[12] + 0xFFFFAB80u;
|
|
/* 02528F78 */ _t177 = cpu->r[1] + 0x00000008u;
|
|
/* 02528F78 */ rbrew_write8(cpu->mem, _t177, (uint8_t)cpu->r[0]);
|
|
/* 02528F7C */ cpu->r[0] = 0x02530000u;
|
|
/* 02528F80 */ _t178 = cpu->r[1] + 0x00000020u;
|
|
/* 02528F80 */ rbrew_write32(cpu->mem, _t178, cpu->r[12]);
|
|
/* 02528F84 */ cpu->r[0] = cpu->r[0] + 0xFFFFAB8Cu;
|
|
/* 02528F88 */ _t179 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02528F88 */ rbrew_write16(cpu->mem, _t179, (uint16_t)cpu->r[28]);
|
|
/* 02528F8C */ cpu->r[10] = 0xFFFFFFFFu;
|
|
/* 02528F90 */ _t180 = cpu->r[1] + 0x00000024u;
|
|
/* 02528F90 */ rbrew_write16(cpu->mem, _t180, (uint16_t)cpu->r[28]);
|
|
/* 02528F94 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 02528F98 */ _t181 = cpu->r[1] + 0x0000001Eu;
|
|
/* 02528F98 */ rbrew_write16(cpu->mem, _t181, (uint16_t)cpu->r[10]);
|
|
/* 02528F9C */ cpu->r[3] = cpu->r[29] + 0x000001B0u;
|
|
/* 02528FA0 */ _t182 = cpu->r[1] + 0x00000018u;
|
|
/* 02528FA0 */ rbrew_write32(cpu->mem, _t182, cpu->r[0]);
|
|
/* 02528FA4 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 02528FA8 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 02528FAC */ _t183 = cpu->r[1] + 0x00000028u;
|
|
/* 02528FAC */ rbrew_write32(cpu->mem, _t183, cpu->r[28]);
|
|
/* 02528FB0 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 02528FB4 */ _t184 = cpu->r[1] + 0x00000016u;
|
|
/* 02528FB4 */ rbrew_write16(cpu->mem, _t184, (uint16_t)cpu->r[10]);
|
|
/* 02528FB8 */ Gambit_fn_0252B49C(cpu);
|
|
L_02528FBC: ; // 0x2528fbc
|
|
/* 02528FBC */ cpu->r[3] = cpu->r[29];
|
|
/* 02528FC0 */ /* nop */
|
|
/* 02528FC4 */ _t185 = cpu->r[1] + 0x00000058u;
|
|
/* 02528FC4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t185);
|
|
/* 02528FC8 */ _t186 = cpu->r[1] + 0x00000050u;
|
|
/* 02528FC8 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t186);
|
|
/* 02528FCC */ _t187 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02528FCC */ _t188 = _t187 & 0x00000001u;
|
|
/* 02528FCC */ if (_t188) goto L_02528FD0; // else: addr-0 trap, fall-through
|
|
L_02528FD0: ; // 0x2528fd0
|
|
/* 02528FD0 */ _t189 = cpu->r[1] + 0x00000064u;
|
|
/* 02528FD0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t189);
|
|
/* 02528FD4 */ cpu->lr = cpu->r[0];
|
|
/* 02528FD8 */ cpu->r[1] = cpu->r[1] + 0x00000060u;
|
|
/* 02528FDC */ return;
|
|
}
|
|
|
|
// fn_02528FE0 @ 0x2528fe0
|
|
void Gambit_fn_02528FE0(CPUState* cpu) {
|
|
uint32_t _t0, _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_02528FE0: ; // 0x2528fe0
|
|
/* 02528FE0 */ cpu->r[0] = cpu->lr;
|
|
/* 02528FE4 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 02528FE4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02528FE4 */ cpu->r[1] = _t0;
|
|
/* 02528FE8 */ _t1 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02528FE8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02528FEC */ _t2 = cpu->r[1] + 0x00000018u;
|
|
/* 02528FEC */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02528FF0 */ cpu->r[30] = cpu->r[3];
|
|
/* 02528FF4 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02528FF8 */ cpu->r[31] = cpu->r[4];
|
|
/* 02528FFC */ _t3 = cpu->r[1] + 0x00000024u;
|
|
/* 02528FFC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02529000 */ Gambit_fn_024F6710(cpu);
|
|
/* 02529004 */ cpu->r[0] = 0x00000001u;
|
|
/* 02529008 */ cpu->r[3] = cpu->r[30];
|
|
/* 0252900C */ cpu->r[4] = cpu->r[31];
|
|
/* 02529010 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02529014 */ _t4 = cpu->r[1] + 0x00000008u;
|
|
/* 02529014 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[0]);
|
|
/* 02529018 */ Gambit_fn_024F4798(cpu);
|
|
/* 0252901C */ cpu->r[7] = 0x100C0000u;
|
|
/* 02529020 */ cpu->r[3] = cpu->r[31];
|
|
/* 02529024 */ cpu->r[7] = cpu->r[7] + 0x00002DE4u;
|
|
/* 02529028 */ cpu->r[0] = 0x100C0000u;
|
|
/* 0252902C */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 0252902C */ rbrew_write32(cpu->mem, _t5, cpu->r[7]);
|
|
/* 02529030 */ cpu->r[0] = cpu->r[0] + 0x00002EF4u;
|
|
/* 02529034 */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02529038 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02529038 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0252903C */ Gambit_fn_020F0AA8(cpu);
|
|
/* 02529040 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02529044 */ cpu->r[9] = cpu->r[3];
|
|
/* 02529048 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02529048 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02529048 */ if (_t8) goto L_0252908C; else goto L_0252904C;
|
|
L_0252904C: ; // 0x252904c
|
|
/* 0252904C */ cpu->r[12] = 0x101C0000u;
|
|
/* 02529050 */ _t9 = cpu->r[12] + 0x00006000u;
|
|
/* 02529050 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02529054 */ _t10 = cpu->r[12] + 0x00000254u;
|
|
/* 02529054 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02529058 */ cpu->r[4] = cpu->r[9] + 0x0000008Cu;
|
|
/* 0252905C */ Gambit_fn_020EF0E4(cpu);
|
|
/* 02529060 */ _t11 = cpu->r[30] + 0x000001E8u;
|
|
/* 02529060 */ rbrew_write32(cpu->mem, _t11, cpu->r[3]);
|
|
/* 02529064 */ _t12 = cpu->r[3] + 0x000046BCu;
|
|
/* 02529064 */ cpu->r[10] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02529068 */ _t13 = cpu->r[10] + 0x0000002Cu;
|
|
/* 02529068 */ cpu->r[11] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0252906C */ cpu->ctr = cpu->r[11];
|
|
/* 02529070 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02529074 */ _t14 = cpu->r[3] + 0x00000000u;
|
|
/* 02529074 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 02529078 */ _t15 = cpu->r[30] + 0x000000D8u;
|
|
/* 02529078 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[0]);
|
|
/* 0252907C */ _t16 = cpu->r[3] + 0x00000004u;
|
|
/* 0252907C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 02529080 */ _t17 = cpu->r[30] + 0x000000DCu;
|
|
/* 02529080 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[0]);
|
|
/* 02529084 */ _t18 = cpu->r[3] + 0x00000008u;
|
|
/* 02529084 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 02529088 */ _t19 = cpu->r[30] + 0x000000E0u;
|
|
/* 02529088 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[0]);
|
|
L_0252908C: ; // 0x252908c
|
|
/* 0252908C */ _t20 = cpu->r[31] + 0x000046C0u;
|
|
/* 0252908C */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02529090 */ cpu->r[12] = cpu->r[0] ^ 0x00000001u;
|
|
/* 02529094 */ cpu->r[6] = rbrew_clz32(cpu->r[12]);
|
|
/* 02529098 */ cpu->r[11] = rbrew_rlwinm(cpu->r[6], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 0252909C */ _t21 = cpu->r[30] + 0x000002E4u;
|
|
/* 0252909C */ rbrew_write8(cpu->mem, _t21, (uint8_t)cpu->r[11]);
|
|
/* 025290A0 */ _t22 = cpu->r[1] + 0x00000024u;
|
|
/* 025290A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 025290A4 */ _t23 = cpu->r[1] + 0x00000018u;
|
|
/* 025290A4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t23);
|
|
/* 025290A8 */ cpu->lr = cpu->r[0];
|
|
/* 025290AC */ _t24 = cpu->r[1] + 0x0000001Cu;
|
|
/* 025290AC */ cpu->r[31] = rbrew_read32(cpu->mem, _t24);
|
|
/* 025290B0 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 025290B4 */ return;
|
|
}
|
|
|
|
// fn_02528FE4 @ 0x2528fe4
|
|
void Gambit_fn_02528FE4(CPUState* cpu) {
|
|
uint32_t _t0, _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_02528FE4: ; // 0x2528fe4
|
|
/* 02528FE4 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 02528FE4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02528FE4 */ cpu->r[1] = _t0;
|
|
/* 02528FE8 */ _t1 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02528FE8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02528FEC */ _t2 = cpu->r[1] + 0x00000018u;
|
|
/* 02528FEC */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02528FF0 */ cpu->r[30] = cpu->r[3];
|
|
/* 02528FF4 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02528FF8 */ cpu->r[31] = cpu->r[4];
|
|
/* 02528FFC */ _t3 = cpu->r[1] + 0x00000024u;
|
|
/* 02528FFC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02529000 */ Gambit_fn_024F6710(cpu);
|
|
/* 02529004 */ cpu->r[0] = 0x00000001u;
|
|
/* 02529008 */ cpu->r[3] = cpu->r[30];
|
|
/* 0252900C */ cpu->r[4] = cpu->r[31];
|
|
/* 02529010 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02529014 */ _t4 = cpu->r[1] + 0x00000008u;
|
|
/* 02529014 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[0]);
|
|
/* 02529018 */ Gambit_fn_024F4798(cpu);
|
|
/* 0252901C */ cpu->r[7] = 0x100C0000u;
|
|
/* 02529020 */ cpu->r[3] = cpu->r[31];
|
|
/* 02529024 */ cpu->r[7] = cpu->r[7] + 0x00002DE4u;
|
|
/* 02529028 */ cpu->r[0] = 0x100C0000u;
|
|
/* 0252902C */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 0252902C */ rbrew_write32(cpu->mem, _t5, cpu->r[7]);
|
|
/* 02529030 */ cpu->r[0] = cpu->r[0] + 0x00002EF4u;
|
|
/* 02529034 */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02529038 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02529038 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0252903C */ Gambit_fn_020F0AA8(cpu);
|
|
/* 02529040 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02529044 */ cpu->r[9] = cpu->r[3];
|
|
/* 02529048 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02529048 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02529048 */ if (_t8) goto L_0252908C; else goto L_0252904C;
|
|
L_0252904C: ; // 0x252904c
|
|
/* 0252904C */ cpu->r[12] = 0x101C0000u;
|
|
/* 02529050 */ _t9 = cpu->r[12] + 0x00006000u;
|
|
/* 02529050 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02529054 */ _t10 = cpu->r[12] + 0x00000254u;
|
|
/* 02529054 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02529058 */ cpu->r[4] = cpu->r[9] + 0x0000008Cu;
|
|
/* 0252905C */ Gambit_fn_020EF0E4(cpu);
|
|
/* 02529060 */ _t11 = cpu->r[30] + 0x000001E8u;
|
|
/* 02529060 */ rbrew_write32(cpu->mem, _t11, cpu->r[3]);
|
|
/* 02529064 */ _t12 = cpu->r[3] + 0x000046BCu;
|
|
/* 02529064 */ cpu->r[10] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02529068 */ _t13 = cpu->r[10] + 0x0000002Cu;
|
|
/* 02529068 */ cpu->r[11] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0252906C */ cpu->ctr = cpu->r[11];
|
|
/* 02529070 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02529074 */ _t14 = cpu->r[3] + 0x00000000u;
|
|
/* 02529074 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 02529078 */ _t15 = cpu->r[30] + 0x000000D8u;
|
|
/* 02529078 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[0]);
|
|
/* 0252907C */ _t16 = cpu->r[3] + 0x00000004u;
|
|
/* 0252907C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 02529080 */ _t17 = cpu->r[30] + 0x000000DCu;
|
|
/* 02529080 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[0]);
|
|
/* 02529084 */ _t18 = cpu->r[3] + 0x00000008u;
|
|
/* 02529084 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 02529088 */ _t19 = cpu->r[30] + 0x000000E0u;
|
|
/* 02529088 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[0]);
|
|
L_0252908C: ; // 0x252908c
|
|
/* 0252908C */ _t20 = cpu->r[31] + 0x000046C0u;
|
|
/* 0252908C */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02529090 */ cpu->r[12] = cpu->r[0] ^ 0x00000001u;
|
|
/* 02529094 */ cpu->r[6] = rbrew_clz32(cpu->r[12]);
|
|
/* 02529098 */ cpu->r[11] = rbrew_rlwinm(cpu->r[6], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 0252909C */ _t21 = cpu->r[30] + 0x000002E4u;
|
|
/* 0252909C */ rbrew_write8(cpu->mem, _t21, (uint8_t)cpu->r[11]);
|
|
/* 025290A0 */ _t22 = cpu->r[1] + 0x00000024u;
|
|
/* 025290A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 025290A4 */ _t23 = cpu->r[1] + 0x00000018u;
|
|
/* 025290A4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t23);
|
|
/* 025290A8 */ cpu->lr = cpu->r[0];
|
|
/* 025290AC */ _t24 = cpu->r[1] + 0x0000001Cu;
|
|
/* 025290AC */ cpu->r[31] = rbrew_read32(cpu->mem, _t24);
|
|
/* 025290B0 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 025290B4 */ return;
|
|
}
|
|
|
|
// fn_025290B8 @ 0x25290b8
|
|
void Gambit_fn_025290B8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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_025290B8: ; // 0x25290b8
|
|
/* 025290B8 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 025290B8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 025290B8 */ cpu->r[1] = _t0;
|
|
/* 025290BC */ /* nop */
|
|
/* 025290C0 */ cpu->r[0] = cpu->lr;
|
|
/* 025290C4 */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 025290C4 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 025290C8 */ cpu->r[28] = cpu->r[3];
|
|
/* 025290CC */ _t2 = cpu->r[28] + 0x000001E8u;
|
|
/* 025290CC */ cpu->r[7] = rbrew_read32(cpu->mem, _t2);
|
|
/* 025290D0 */ _t3 = cpu->r[7] + 0x000046C0u;
|
|
/* 025290D0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t3);
|
|
/* 025290D4 */ _t4 = cpu->r[9] + 0x00000000u;
|
|
/* 025290D4 */ cpu->r[25] = rbrew_read32(cpu->mem, _t4);
|
|
/* 025290D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 025290DC */ _t5 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 025290DC */ _t6 = _t5 & 0x00000001u;
|
|
/* 025290DC */ if (_t6) goto L_025290E0; else goto L_02529180;
|
|
L_025290E0: ; // 0x25290e0
|
|
/* 025290E0 */ cpu->r[3] = 0x101D0000u;
|
|
/* 025290E4 */ _t7 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 025290E4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 025290E8 */ Gambit_fn_02826F20(cpu);
|
|
/* 025290EC */ _t8 = cpu->r[3] + 0x0000000Cu;
|
|
/* 025290EC */ cpu->r[5] = rbrew_read32(cpu->mem, _t8);
|
|
/* 025290F0 */ _t9 = cpu->r[5] + 0x00000034u;
|
|
/* 025290F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 025290F4 */ cpu->ctr = cpu->r[0];
|
|
/* 025290F8 */ cpu->r[5] = 0x00000004u;
|
|
/* 025290FC */ cpu->r[4] = (uint32_t)((int32_t)cpu->r[25] * (int32_t)0x0000000Cu);
|
|
/* 02529100 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02529104 */ cpu->r[29] = cpu->r[3];
|
|
/* 02529108 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 0252910C */ cpu->r[31] = cpu->r[25];
|
|
/* 02529110 */ cpu->r[0] = 0x00000000u;
|
|
/* 02529114 */ _t10 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02529114 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02529114 */ if (_t11) goto L_0252911C; else goto L_02529118;
|
|
L_02529118: ; // 0x2529118
|
|
/* 02529118 */ cpu->r[31] = 0x00000001u;
|
|
L_0252911C: ; // 0x252911c
|
|
/* 0252911C */ cpu->r[26] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x0000000Cu);
|
|
/* 02529120 */ cpu->r[27] = 0x00000000u;
|
|
L_02529124: ; // 0x2529124
|
|
/* 02529124 */ cpu->r[30] = cpu->r[29] + cpu->r[26];
|
|
/* 02529124 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02529128 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02529128 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02529128 */ if (_t13) goto L_02529164; else goto L_0252912C;
|
|
L_0252912C: ; // 0x252912c
|
|
/* 0252912C */ cpu->r[6] = cpu->r[30];
|
|
/* 0252912C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 02529130 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02529130 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02529130 */ if (_t15) goto L_02529134; else goto L_02529144;
|
|
L_02529134: ; // 0x2529134
|
|
/* 02529134 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02529138 */ Gambit_fn_02801A78(cpu);
|
|
/* 0252913C */ cpu->r[6] = cpu->r[3];
|
|
/* 0252913C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 02529140 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02529140 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02529140 */ if (_t17) goto L_02529158; else goto L_02529144;
|
|
L_02529144: ; // 0x2529144
|
|
/* 02529144 */ cpu->r[8] = 0x100C0000u;
|
|
/* 02529148 */ _t18 = cpu->r[6] + 0x00000004u;
|
|
/* 02529148 */ rbrew_write32(cpu->mem, _t18, cpu->r[27]);
|
|
/* 0252914C */ cpu->r[8] = cpu->r[8] + 0x00002E74u;
|
|
/* 02529150 */ _t19 = cpu->r[6] + 0x00000000u;
|
|
/* 02529150 */ rbrew_write32(cpu->mem, _t19, cpu->r[27]);
|
|
/* 02529154 */ _t20 = cpu->r[6] + 0x00000008u;
|
|
/* 02529154 */ rbrew_write32(cpu->mem, _t20, cpu->r[8]);
|
|
L_02529158: ; // 0x2529158
|
|
/* 02529158 */ cpu->r[0] = 0x100C0000u;
|
|
/* 0252915C */ cpu->r[0] = cpu->r[0] + 0x00002E84u;
|
|
/* 02529160 */ _t21 = cpu->r[30] + 0x00000008u;
|
|
/* 02529160 */ rbrew_write32(cpu->mem, _t21, cpu->r[0]);
|
|
L_02529164: ; // 0x2529164
|
|
/* 02529164 */ cpu->r[31] = cpu->r[31] + 0xFFFFFFFFu;
|
|
/* 02529164 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02529168 */ cpu->r[26] = cpu->r[26] + 0x0000000Cu;
|
|
/* 0252916C */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252916C */ _t23 = _t22 & 0x00000001u;
|
|
/* 0252916C */ if (_t23) goto L_02529170; else goto L_02529124;
|
|
L_02529170: ; // 0x2529170
|
|
/* 02529170 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 02529174 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02529174 */ _t25 = _t24 & 0x00000001u;
|
|
/* 02529174 */ if (_t25) goto L_02529180; else goto L_02529178;
|
|
L_02529178: ; // 0x2529178
|
|
/* 02529178 */ _t26 = cpu->r[28] + 0x000001F8u;
|
|
/* 02529178 */ rbrew_write32(cpu->mem, _t26, cpu->r[29]);
|
|
/* 0252917C */ _t27 = cpu->r[28] + 0x000001F4u;
|
|
/* 0252917C */ rbrew_write32(cpu->mem, _t27, cpu->r[25]);
|
|
L_02529180: ; // 0x2529180
|
|
/* 02529180 */ cpu->r[10] = 0x100C0000u;
|
|
/* 02529184 */ _t28 = cpu->r[28] + 0x00000008u;
|
|
/* 02529184 */ cpu->r[3] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02529188 */ cpu->r[10] = cpu->r[10] + 0x00002DE4u;
|
|
/* 0252918C */ cpu->r[0] = 0x100C0000u;
|
|
/* 02529190 */ _t29 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02529190 */ rbrew_write32(cpu->mem, _t29, cpu->r[10]);
|
|
/* 02529194 */ cpu->r[0] = cpu->r[0] + 0x00002F04u;
|
|
/* 02529198 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0252919C */ _t30 = cpu->r[1] + 0x00000008u;
|
|
/* 0252919C */ rbrew_write32(cpu->mem, _t30, cpu->r[0]);
|
|
/* 025291A0 */ Gambit_fn_029807A8(cpu);
|
|
/* 025291A4 */ cpu->r[29] = cpu->r[3];
|
|
/* 025291A8 */ _t31 = cpu->r[28] + 0x00000008u;
|
|
/* 025291A8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t31);
|
|
/* 025291AC */ /* nop */
|
|
/* 025291B0 */ cpu->r[4] = cpu->r[31];
|
|
/* 025291B4 */ cpu->r[3] = cpu->r[30];
|
|
/* 025291B8 */ Gambit_fn_0297FC7C(cpu);
|
|
/* 025291BC */ _t32 = cpu->r[30] + 0x0000001Cu;
|
|
/* 025291BC */ cpu->r[6] = rbrew_read32(cpu->mem, _t32);
|
|
/* 025291C0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[6]);
|
|
/* 025291C4 */ cpu->r[12] = 0x00000000u;
|
|
/* 025291C8 */ _t33 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 025291C8 */ _t34 = _t33 & 0x00000001u;
|
|
/* 025291C8 */ if (_t34) goto L_025291CC; else goto L_025291D8;
|
|
L_025291CC: ; // 0x25291cc
|
|
/* 025291CC */ _t35 = cpu->r[30] + 0x00000024u;
|
|
/* 025291CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t35);
|
|
/* 025291D0 */ cpu->r[8] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 025291D4 */ _t36 = cpu->r[8] + cpu->r[0];
|
|
/* 025291D4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t36);
|
|
L_025291D8: ; // 0x25291d8
|
|
/* 025291D8 */ _t37 = cpu->r[12] + 0x00000000u;
|
|
/* 025291D8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t37);
|
|
/* 025291DC */ _t38 = cpu->r[3] + 0x00000088u;
|
|
/* 025291DC */ cpu->r[11] = rbrew_read32(cpu->mem, _t38);
|
|
/* 025291E0 */ _t39 = cpu->r[11] + 0x0000007Cu;
|
|
/* 025291E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t39);
|
|
/* 025291E4 */ cpu->ctr = cpu->r[0];
|
|
/* 025291E8 */ /* nop */
|
|
/* 025291EC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 025291F0 */ _t40 = cpu->r[28] + 0x00000200u;
|
|
/* 025291F0 */ rbrew_write32(cpu->mem, _t40, cpu->r[3]);
|
|
/* 025291F4 */ /* nop */
|
|
/* 025291F8 */ _t41 = cpu->r[1] + 0x00000034u;
|
|
/* 025291F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t41);
|
|
/* 025291FC */ cpu->lr = cpu->r[0];
|
|
/* 02529200 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 02529204 */ return;
|
|
}
|
|
|
|
// fn_02529208 @ 0x2529208
|
|
void Gambit_fn_02529208(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17;
|
|
|
|
L_02529208: ; // 0x2529208
|
|
/* 02529208 */ cpu->r[12] = 0x100C0000u;
|
|
/* 0252920C */ cpu->r[10] = 0x00000000u;
|
|
/* 02529210 */ _t0 = cpu->r[12] + 0x00002EBCu;
|
|
/* 02529210 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 02529214 */ _t1 = cpu->r[3] + 0x00000204u;
|
|
/* 02529214 */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 02529218 */ _t2 = cpu->r[3] + 0x000002D8u;
|
|
/* 02529218 */ rbrew_write_f32(cpu->mem, _t2, cpu->f[0]);
|
|
/* 0252921C */ cpu->r[0] = 0x00000001u;
|
|
/* 02529220 */ _t3 = cpu->r[3] + 0x000001FCu;
|
|
/* 02529220 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[0]);
|
|
/* 02529224 */ _t4 = cpu->r[3] + 0x000002D5u;
|
|
/* 02529224 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[0]);
|
|
/* 02529228 */ _t5 = cpu->r[3] + 0x00000258u;
|
|
/* 02529228 */ rbrew_write32(cpu->mem, _t5, cpu->r[10]);
|
|
/* 0252922C */ _t6 = cpu->r[3] + 0x000002DCu;
|
|
/* 0252922C */ rbrew_write_f32(cpu->mem, _t6, cpu->f[0]);
|
|
/* 02529230 */ _t7 = cpu->r[3] + 0x000002D4u;
|
|
/* 02529230 */ rbrew_write8(cpu->mem, _t7, (uint8_t)cpu->r[10]);
|
|
/* 02529234 */ _t8 = cpu->r[3] + 0x000002E0u;
|
|
/* 02529234 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[0]);
|
|
/* 02529238 */ _t9 = cpu->r[3] + 0x00000208u;
|
|
/* 02529238 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[0]);
|
|
/* 0252923C */ _t10 = cpu->r[3] + 0x00000218u;
|
|
/* 0252923C */ rbrew_write32(cpu->mem, _t10, cpu->r[10]);
|
|
/* 02529240 */ _t11 = cpu->r[3] + 0x00000254u;
|
|
/* 02529240 */ rbrew_write32(cpu->mem, _t11, cpu->r[10]);
|
|
/* 02529244 */ _t12 = cpu->r[3] + 0x0000020Cu;
|
|
/* 02529244 */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 02529248 */ _t13 = cpu->r[3] + 0x00000248u;
|
|
/* 02529248 */ rbrew_write8(cpu->mem, _t13, (uint8_t)cpu->r[10]);
|
|
/* 0252924C */ _t14 = cpu->r[3] + 0x000001E8u;
|
|
/* 0252924C */ cpu->r[12] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02529250 */ _t15 = cpu->r[3] + 0x0000021Cu;
|
|
/* 02529250 */ rbrew_write32(cpu->mem, _t15, cpu->r[10]);
|
|
/* 02529254 */ _t16 = cpu->r[3] + 0x000001F0u;
|
|
/* 02529254 */ rbrew_write32(cpu->mem, _t16, cpu->r[10]);
|
|
/* 02529258 */ _t17 = cpu->r[3] + 0x000001ECu;
|
|
/* 02529258 */ rbrew_write32(cpu->mem, _t17, cpu->r[12]);
|
|
/* 0252925C */ return;
|
|
}
|
|
|
|
// fn_02529260 @ 0x2529260
|
|
void Gambit_fn_02529260(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_02529260: ; // 0x2529260
|
|
/* 02529260 */ _t0 = cpu->r[3] + 0x00000198u;
|
|
/* 02529260 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02529264 */ _t1 = cpu->r[3] + 0x00000204u;
|
|
/* 02529264 */ cpu->r[11] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02529268 */ cpu->r[12] = rbrew_rlwinm(cpu->r[12], 0x00000000u, 0x0000001Fu, 0x0000001Du);
|
|
/* 0252926C */ cpu->r[10] = 0x00000000u;
|
|
/* 02529270 */ cpu->r[0] = cpu->r[11] + 0xFFFFFFFFu;
|
|
/* 02529270 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02529274 */ _t2 = cpu->r[3] + 0x00000198u;
|
|
/* 02529274 */ rbrew_write32(cpu->mem, _t2, cpu->r[12]);
|
|
/* 02529278 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02529278 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02529278 */ if (_t4) goto L_0252927C; else goto L_0252928C;
|
|
L_0252927C: ; // 0x252927c
|
|
/* 0252927C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02529280 */ _t5 = cpu->r[3] + 0x00000204u;
|
|
/* 02529280 */ rbrew_write32(cpu->mem, _t5, cpu->r[10]);
|
|
/* 02529284 */ _t6 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02529284 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02529284 */ if (_t7) goto L_025292A0; else goto L_02529288;
|
|
L_02529288: ; // 0x2529288
|
|
/* 02529288 */ goto L_025292B4;
|
|
L_0252928C: ; // 0x252928c
|
|
/* 0252928C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02529290 */ _t8 = cpu->r[3] + 0x00000204u;
|
|
/* 02529290 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 02529294 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02529294 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02529294 */ if (_t10) goto L_02529298; else goto L_025292B4;
|
|
L_02529298: ; // 0x2529298
|
|
/* 02529298 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0252929C */ _t11 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252929C */ _t12 = _t11 & 0x00000001u;
|
|
/* 0252929C */ if (_t12) goto L_025292A0; else goto L_025292B4;
|
|
L_025292A0: ; // 0x25292a0
|
|
/* 025292A0 */ cpu->r[8] = 0x100C0000u;
|
|
/* 025292A4 */ cpu->r[9] = 0x00000005u;
|
|
/* 025292A8 */ _t13 = cpu->r[8] + 0x00002EBCu;
|
|
/* 025292A8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 025292AC */ _t14 = cpu->r[3] + 0x0000020Cu;
|
|
/* 025292AC */ rbrew_write32(cpu->mem, _t14, cpu->r[9]);
|
|
/* 025292B0 */ _t15 = cpu->r[3] + 0x00000208u;
|
|
/* 025292B0 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[0]);
|
|
L_025292B4: ; // 0x25292b4
|
|
/* 025292B4 */ _t16 = cpu->r[3] + 0x000002D4u;
|
|
/* 025292B4 */ rbrew_write8(cpu->mem, _t16, (uint8_t)cpu->r[10]);
|
|
/* 025292B8 */ return;
|
|
}
|
|
|
|
// fn_025292BC @ 0x25292bc
|
|
void Gambit_fn_025292BC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _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, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92;
|
|
double _ft63, _ft64;
|
|
|
|
L_025292BC: ; // 0x25292bc
|
|
/* 025292BC */ cpu->r[0] = cpu->lr;
|
|
/* 025292C0 */ _t0 = cpu->r[1] + 0xFFFFFFA8u;
|
|
/* 025292C0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 025292C0 */ cpu->r[1] = _t0;
|
|
/* 025292C4 */ _t1 = cpu->r[1] + 0x00000054u;
|
|
/* 025292C4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 025292C8 */ _t2 = cpu->r[1] + 0x00000050u;
|
|
/* 025292C8 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 025292CC */ cpu->r[31] = cpu->r[3];
|
|
/* 025292D0 */ _t3 = cpu->r[1] + 0x0000005Cu;
|
|
/* 025292D0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 025292D4 */ _t4 = cpu->r[31] + 0x0000020Cu;
|
|
/* 025292D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 025292D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 025292DC */ _t5 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 025292DC */ _t6 = _t5 & 0x00000001u;
|
|
/* 025292DC */ if (_t6) goto L_025292E0; else goto L_0252952C;
|
|
L_025292E0: ; // 0x25292e0
|
|
/* 025292E0 */ cpu->r[10] = 0x100C0000u;
|
|
/* 025292E4 */ _t7 = cpu->r[31] + 0x00000208u;
|
|
/* 025292E4 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 025292E8 */ _t8 = cpu->r[10] + 0x00002F10u;
|
|
/* 025292E8 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 025292EC */ cpu->r[10] = 0x100C0000u;
|
|
/* 025292F0 */ cpu->f[10] = cpu->f[7] + cpu->f[8];
|
|
/* 025292F4 */ _t9 = cpu->r[10] + 0x00002F14u;
|
|
/* 025292F4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 025292F8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[0]);
|
|
/* 025292FC */ cpu->f[11] = cpu->f[10];
|
|
/* 02529300 */ _t10 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02529300 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02529300 */ if (_t11) goto L_02529304; else goto L_02529320;
|
|
L_02529304: ; // 0x2529304
|
|
/* 02529304 */ _t12 = cpu->r[31] + 0x00000208u;
|
|
/* 02529304 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[11]);
|
|
/* 02529308 */ _t13 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02529308 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0252930C */ _t14 = cpu->r[1] + 0x00000050u;
|
|
/* 0252930C */ cpu->r[30] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02529310 */ cpu->lr = cpu->r[0];
|
|
/* 02529314 */ _t15 = cpu->r[1] + 0x00000054u;
|
|
/* 02529314 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02529318 */ cpu->r[1] = cpu->r[1] + 0x00000058u;
|
|
/* 0252931C */ return;
|
|
L_02529320: ; // 0x2529320
|
|
/* 02529320 */ cpu->f[9] = cpu->f[10] - cpu->f[0];
|
|
/* 02529324 */ cpu->r[3] = cpu->r[1] + 0x00000014u;
|
|
/* 02529328 */ _t16 = cpu->r[31] + 0x00000200u;
|
|
/* 02529328 */ cpu->r[4] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0252932C */ _t17 = cpu->r[31] + 0x00000208u;
|
|
/* 0252932C */ rbrew_write_f32(cpu->mem, _t17, cpu->f[9]);
|
|
/* 02529330 */ Gambit_fn_0200D450(cpu);
|
|
/* 02529334 */ _t18 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02529334 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 02529338 */ /* nop */
|
|
/* 0252933C */ _t19 = cpu->r[31] + 0x000002E0u;
|
|
/* 0252933C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 02529340 */ /* nop */
|
|
/* 02529344 */ cpu->f[7] = cpu->f[7] + cpu->f[8];
|
|
/* 02529348 */ _t20 = cpu->r[31] + 0x00000200u;
|
|
/* 02529348 */ cpu->r[8] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0252934C */ /* nop */
|
|
/* 02529350 */ /* nop */
|
|
/* 02529354 */ _t21 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02529354 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[7]);
|
|
/* 02529358 */ _t22 = cpu->r[8] + 0x00000010u;
|
|
/* 02529358 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 0252935C */ _t23 = cpu->r[8] + 0x00000020u;
|
|
/* 0252935C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 02529360 */ _t24 = cpu->r[8] + 0x00000000u;
|
|
/* 02529360 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 02529364 */ _t25 = cpu->r[1] + 0x00000024u;
|
|
/* 02529364 */ rbrew_write_f32(cpu->mem, _t25, cpu->f[11]);
|
|
/* 02529368 */ _t26 = cpu->r[1] + 0x00000020u;
|
|
/* 02529368 */ rbrew_write_f32(cpu->mem, _t26, cpu->f[10]);
|
|
/* 0252936C */ _t27 = cpu->r[1] + 0x00000028u;
|
|
/* 0252936C */ rbrew_write_f32(cpu->mem, _t27, cpu->f[13]);
|
|
/* 02529370 */ _t28 = cpu->r[8] + 0x00000024u;
|
|
/* 02529370 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 02529374 */ _t29 = cpu->r[8] + 0x00000004u;
|
|
/* 02529374 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 02529378 */ _t30 = cpu->r[8] + 0x00000014u;
|
|
/* 02529378 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 0252937C */ _t31 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0252937C */ rbrew_write_f32(cpu->mem, _t31, cpu->f[9]);
|
|
/* 02529380 */ _t32 = cpu->r[1] + 0x00000034u;
|
|
/* 02529380 */ rbrew_write_f32(cpu->mem, _t32, cpu->f[11]);
|
|
/* 02529384 */ _t33 = cpu->r[1] + 0x00000030u;
|
|
/* 02529384 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[10]);
|
|
/* 02529388 */ _t34 = cpu->r[8] + 0x00000018u;
|
|
/* 02529388 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 0252938C */ _t35 = cpu->r[8] + 0x00000028u;
|
|
/* 0252938C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 02529390 */ _t36 = cpu->r[8] + 0x00000008u;
|
|
/* 02529390 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 02529394 */ _t37 = cpu->r[1] + 0x00000040u;
|
|
/* 02529394 */ rbrew_write_f32(cpu->mem, _t37, cpu->f[10]);
|
|
/* 02529398 */ cpu->f[7] = cpu->f[0] * cpu->f[0];
|
|
/* 0252939C */ _t38 = cpu->r[1] + 0x00000038u;
|
|
/* 0252939C */ rbrew_write_f32(cpu->mem, _t38, cpu->f[9]);
|
|
/* 025293A0 */ cpu->f[11] = fma(cpu->f[9], cpu->f[9], cpu->f[7]);
|
|
/* 025293A4 */ _t39 = cpu->r[1] + 0x0000003Cu;
|
|
/* 025293A4 */ rbrew_write_f32(cpu->mem, _t39, cpu->f[0]);
|
|
/* 025293A8 */ _t40 = cpu->r[8] + 0x0000000Cu;
|
|
/* 025293A8 */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 025293AC */ _t41 = cpu->r[8] + 0x0000001Cu;
|
|
/* 025293AC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 025293B0 */ cpu->f[7] = fma(cpu->f[10], cpu->f[10], cpu->f[11]);
|
|
/* 025293B4 */ _t42 = cpu->r[8] + 0x0000002Cu;
|
|
/* 025293B4 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 025293B8 */ cpu->r[10] = 0x100C0000u;
|
|
/* 025293BC */ _t43 = cpu->r[1] + 0x00000008u;
|
|
/* 025293BC */ rbrew_write_f32(cpu->mem, _t43, cpu->f[9]);
|
|
/* 025293C0 */ cpu->r[12] = 0x100C0000u;
|
|
/* 025293C4 */ _t44 = cpu->r[10] + 0x00002EBCu;
|
|
/* 025293C4 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 025293C8 */ _t45 = cpu->r[12] + 0x00002F18u;
|
|
/* 025293C8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t45);
|
|
/* 025293CC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[7], cpu->f[9]);
|
|
/* 025293D0 */ _t46 = cpu->r[1] + 0x0000004Cu;
|
|
/* 025293D0 */ rbrew_write_f32(cpu->mem, _t46, cpu->f[8]);
|
|
/* 025293D4 */ _t47 = cpu->r[1] + 0x00000010u;
|
|
/* 025293D4 */ rbrew_write_f32(cpu->mem, _t47, cpu->f[10]);
|
|
/* 025293D8 */ _t48 = cpu->r[1] + 0x00000044u;
|
|
/* 025293D8 */ rbrew_write_f32(cpu->mem, _t48, cpu->f[5]);
|
|
/* 025293DC */ _t49 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025293DC */ rbrew_write_f32(cpu->mem, _t49, cpu->f[0]);
|
|
/* 025293E0 */ _t50 = cpu->r[1] + 0x00000048u;
|
|
/* 025293E0 */ rbrew_write_f32(cpu->mem, _t50, cpu->f[12]);
|
|
/* 025293E4 */ _t51 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 025293E4 */ _t52 = _t51 & 0x00000001u;
|
|
/* 025293E4 */ if (_t52) goto L_02529428; else goto L_025293E8;
|
|
L_025293E8: ; // 0x25293e8
|
|
/* 025293E8 */ /* nop */
|
|
/* 025293EC */ cpu->r[11] = 0x101C0000u;
|
|
/* 025293F0 */ cpu->r[12] = 0x101C0000u;
|
|
/* 025293F4 */ _t53 = cpu->r[31] + 0x000002E0u;
|
|
/* 025293F4 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t53);
|
|
/* 025293F8 */ /* nop */
|
|
/* 025293FC */ _t54 = cpu->r[12] + 0x000054A0u;
|
|
/* 025293FC */ cpu->r[12] = rbrew_read32(cpu->mem, _t54);
|
|
/* 02529400 */ cpu->f[0] = cpu->f[10] + cpu->f[8];
|
|
/* 02529404 */ _t55 = cpu->r[11] + 0x00006000u;
|
|
/* 02529404 */ cpu->r[11] = rbrew_read32(cpu->mem, _t55);
|
|
/* 02529408 */ /* nop */
|
|
/* 0252940C */ _t56 = cpu->r[1] + 0x00000010u;
|
|
/* 0252940C */ rbrew_write_f32(cpu->mem, _t56, cpu->f[0]);
|
|
/* 02529410 */ _t57 = cpu->r[11] + 0x00000274u;
|
|
/* 02529410 */ cpu->r[3] = rbrew_read32(cpu->mem, _t57);
|
|
/* 02529414 */ cpu->r[12] = cpu->r[3] + cpu->r[12];
|
|
/* 02529418 */ _t58 = cpu->r[12] + 0x00000104u;
|
|
/* 02529418 */ cpu->r[4] = rbrew_read8(cpu->mem, _t58);
|
|
/* 0252941C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x000000FFu);
|
|
/* 02529420 */ _t59 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02529420 */ _t60 = _t59 & 0x00000001u;
|
|
/* 02529420 */ if (_t60) goto L_0252952C; else goto L_02529424;
|
|
L_02529424: ; // 0x2529424
|
|
/* 02529424 */ goto L_02529498;
|
|
L_02529428: ; // 0x2529428
|
|
/* 02529428 */ cpu->r[8] = 0x100C0000u;
|
|
/* 0252942C */ cpu->r[11] = 0x100C0000u;
|
|
/* 02529430 */ _t61 = cpu->r[8] + 0x00002F1Cu;
|
|
/* 02529430 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t61);
|
|
/* 02529434 */ _t62 = cpu->r[11] + 0x00002F20u;
|
|
/* 02529434 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t62);
|
|
/* 02529438 */ _ft63 = sqrt(cpu->f[7]);
|
|
/* 02529438 */ _ft64 = (double)(int32_t)0x00000001u;
|
|
/* 02529438 */ cpu->f[9] = _ft64 / _ft63;
|
|
/* 0252943C */ cpu->f[11] = cpu->f[9] * cpu->f[9];
|
|
/* 02529440 */ cpu->f[0] = cpu->f[9] * cpu->f[13];
|
|
/* 02529444 */ cpu->f[11] = -fma(cpu->f[11], cpu->f[7], -(cpu->f[12]));
|
|
/* 02529448 */ cpu->f[0] = cpu->f[0] * cpu->f[10];
|
|
/* 0252944C */ cpu->f[9] = cpu->f[11] * cpu->f[0];
|
|
/* 02529450 */ /* nop */
|
|
/* 02529454 */ /* nop */
|
|
/* 02529458 */ /* nop */
|
|
/* 0252945C */ _t65 = cpu->r[1] + 0x00000010u;
|
|
/* 0252945C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t65);
|
|
/* 02529460 */ cpu->r[12] = 0x101C0000u;
|
|
/* 02529464 */ _t66 = cpu->r[31] + 0x000002E0u;
|
|
/* 02529464 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t66);
|
|
/* 02529468 */ cpu->r[11] = 0x101C0000u;
|
|
/* 0252946C */ /* nop */
|
|
/* 02529470 */ _t67 = cpu->r[12] + 0x000054A0u;
|
|
/* 02529470 */ cpu->r[12] = rbrew_read32(cpu->mem, _t67);
|
|
/* 02529474 */ cpu->f[0] = fma(cpu->f[10], cpu->f[9], cpu->f[8]);
|
|
/* 02529478 */ _t68 = cpu->r[11] + 0x00006000u;
|
|
/* 02529478 */ cpu->r[11] = rbrew_read32(cpu->mem, _t68);
|
|
/* 0252947C */ /* nop */
|
|
/* 02529480 */ _t69 = cpu->r[1] + 0x00000010u;
|
|
/* 02529480 */ rbrew_write_f32(cpu->mem, _t69, cpu->f[0]);
|
|
/* 02529484 */ _t70 = cpu->r[11] + 0x00000274u;
|
|
/* 02529484 */ cpu->r[3] = rbrew_read32(cpu->mem, _t70);
|
|
/* 02529488 */ cpu->r[12] = cpu->r[3] + cpu->r[12];
|
|
/* 0252948C */ _t71 = cpu->r[12] + 0x00000104u;
|
|
/* 0252948C */ cpu->r[4] = rbrew_read8(cpu->mem, _t71);
|
|
/* 02529490 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x000000FFu);
|
|
/* 02529494 */ _t72 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02529494 */ _t73 = _t72 & 0x00000001u;
|
|
/* 02529494 */ if (_t73) goto L_0252952C; else goto L_02529498;
|
|
L_02529498: ; // 0x2529498
|
|
/* 02529498 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 0252949C */ cpu->r[6] = cpu->r[1] + 0x00000014u;
|
|
/* 025294A0 */ cpu->r[5] = 0x00000001u;
|
|
/* 025294A4 */ Gambit_fn_021F000C(cpu);
|
|
/* 025294A8 */ cpu->r[30] = cpu->r[3];
|
|
/* 025294A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 025294AC */ _t74 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025294AC */ _t75 = _t74 & 0x00000001u;
|
|
/* 025294AC */ if (_t75) goto L_0252952C; else goto L_025294B0;
|
|
L_025294B0: ; // 0x25294b0
|
|
/* 025294B0 */ cpu->r[3] = 0x101D0000u;
|
|
/* 025294B4 */ _t76 = cpu->r[3] + 0xFFFF9918u;
|
|
/* 025294B4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t76);
|
|
/* 025294B8 */ Gambit_fn_02830138(cpu);
|
|
/* 025294BC */ cpu->r[9] = cpu->r[3];
|
|
/* 025294C0 */ cpu->r[5] = 0x00000000u;
|
|
/* 025294C4 */ cpu->r[3] = cpu->r[30];
|
|
/* 025294C8 */ cpu->r[4] = cpu->r[31];
|
|
/* 025294CC */ cpu->r[6] = cpu->r[5];
|
|
/* 025294D0 */ cpu->r[8] = cpu->r[1] + 0x00000008u;
|
|
/* 025294D4 */ cpu->r[7] = cpu->r[1] + 0x00000014u;
|
|
/* 025294D8 */ Gambit_fn_02223618(cpu);
|
|
/* 025294DC */ cpu->r[4] = 0x100C0000u;
|
|
/* 025294E0 */ _t77 = cpu->r[31] + 0x00000130u;
|
|
/* 025294E0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t77);
|
|
/* 025294E4 */ cpu->r[5] = 0x00000001u;
|
|
/* 025294E8 */ cpu->r[4] = cpu->r[4] + 0x00002F24u;
|
|
/* 025294EC */ Gambit_fn_02398850(cpu);
|
|
/* 025294F0 */ _t78 = cpu->r[31] + 0x0000020Cu;
|
|
/* 025294F0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t78);
|
|
/* 025294F4 */ cpu->r[0] = cpu->r[9] + 0xFFFFFFFFu;
|
|
/* 025294F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 025294F8 */ _t79 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 025294F8 */ _t80 = _t79 & 0x00000001u;
|
|
/* 025294F8 */ if (_t80) goto L_025294FC; else goto L_02529510;
|
|
L_025294FC: ; // 0x25294fc
|
|
/* 025294FC */ cpu->r[8] = 0x00000000u;
|
|
/* 02529500 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02529504 */ _t81 = cpu->r[31] + 0x0000020Cu;
|
|
/* 02529504 */ rbrew_write32(cpu->mem, _t81, cpu->r[8]);
|
|
/* 02529508 */ _t82 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02529508 */ _t83 = _t82 & 0x00000001u;
|
|
/* 02529508 */ if (_t83) goto L_02529524; else goto L_0252950C;
|
|
L_0252950C: ; // 0x252950c
|
|
/* 0252950C */ goto L_0252952C;
|
|
L_02529510: ; // 0x2529510
|
|
/* 02529510 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02529514 */ _t84 = cpu->r[31] + 0x0000020Cu;
|
|
/* 02529514 */ rbrew_write32(cpu->mem, _t84, cpu->r[0]);
|
|
/* 02529518 */ _t85 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02529518 */ _t86 = _t85 & 0x00000001u;
|
|
/* 02529518 */ if (_t86) goto L_0252951C; else goto L_0252952C;
|
|
L_0252951C: ; // 0x252951c
|
|
/* 0252951C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02529520 */ _t87 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02529520 */ _t88 = _t87 & 0x00000001u;
|
|
/* 02529520 */ if (_t88) goto L_02529524; else goto L_0252952C;
|
|
L_02529524: ; // 0x2529524
|
|
/* 02529524 */ cpu->r[9] = 0x0000012Cu;
|
|
/* 02529528 */ _t89 = cpu->r[31] + 0x00000204u;
|
|
/* 02529528 */ rbrew_write32(cpu->mem, _t89, cpu->r[9]);
|
|
L_0252952C: ; // 0x252952c
|
|
/* 0252952C */ _t90 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0252952C */ cpu->r[0] = rbrew_read32(cpu->mem, _t90);
|
|
/* 02529530 */ _t91 = cpu->r[1] + 0x00000050u;
|
|
/* 02529530 */ cpu->r[30] = rbrew_read32(cpu->mem, _t91);
|
|
/* 02529534 */ cpu->lr = cpu->r[0];
|
|
/* 02529538 */ _t92 = cpu->r[1] + 0x00000054u;
|
|
/* 02529538 */ cpu->r[31] = rbrew_read32(cpu->mem, _t92);
|
|
/* 0252953C */ cpu->r[1] = cpu->r[1] + 0x00000058u;
|
|
/* 02529540 */ return;
|
|
}
|
|
|
|
// fn_025292C0 @ 0x25292c0
|
|
void Gambit_fn_025292C0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _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, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92;
|
|
double _ft63, _ft64;
|
|
|
|
L_025292C0: ; // 0x25292c0
|
|
/* 025292C0 */ _t0 = cpu->r[1] + 0xFFFFFFA8u;
|
|
/* 025292C0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 025292C0 */ cpu->r[1] = _t0;
|
|
/* 025292C4 */ _t1 = cpu->r[1] + 0x00000054u;
|
|
/* 025292C4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 025292C8 */ _t2 = cpu->r[1] + 0x00000050u;
|
|
/* 025292C8 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 025292CC */ cpu->r[31] = cpu->r[3];
|
|
/* 025292D0 */ _t3 = cpu->r[1] + 0x0000005Cu;
|
|
/* 025292D0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 025292D4 */ _t4 = cpu->r[31] + 0x0000020Cu;
|
|
/* 025292D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 025292D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 025292DC */ _t5 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 025292DC */ _t6 = _t5 & 0x00000001u;
|
|
/* 025292DC */ if (_t6) goto L_025292E0; else goto L_0252952C;
|
|
L_025292E0: ; // 0x25292e0
|
|
/* 025292E0 */ cpu->r[10] = 0x100C0000u;
|
|
/* 025292E4 */ _t7 = cpu->r[31] + 0x00000208u;
|
|
/* 025292E4 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 025292E8 */ _t8 = cpu->r[10] + 0x00002F10u;
|
|
/* 025292E8 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 025292EC */ cpu->r[10] = 0x100C0000u;
|
|
/* 025292F0 */ cpu->f[10] = cpu->f[7] + cpu->f[8];
|
|
/* 025292F4 */ _t9 = cpu->r[10] + 0x00002F14u;
|
|
/* 025292F4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 025292F8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[0]);
|
|
/* 025292FC */ cpu->f[11] = cpu->f[10];
|
|
/* 02529300 */ _t10 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02529300 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02529300 */ if (_t11) goto L_02529304; else goto L_02529320;
|
|
L_02529304: ; // 0x2529304
|
|
/* 02529304 */ _t12 = cpu->r[31] + 0x00000208u;
|
|
/* 02529304 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[11]);
|
|
/* 02529308 */ _t13 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02529308 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0252930C */ _t14 = cpu->r[1] + 0x00000050u;
|
|
/* 0252930C */ cpu->r[30] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02529310 */ cpu->lr = cpu->r[0];
|
|
/* 02529314 */ _t15 = cpu->r[1] + 0x00000054u;
|
|
/* 02529314 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02529318 */ cpu->r[1] = cpu->r[1] + 0x00000058u;
|
|
/* 0252931C */ return;
|
|
L_02529320: ; // 0x2529320
|
|
/* 02529320 */ cpu->f[9] = cpu->f[10] - cpu->f[0];
|
|
/* 02529324 */ cpu->r[3] = cpu->r[1] + 0x00000014u;
|
|
/* 02529328 */ _t16 = cpu->r[31] + 0x00000200u;
|
|
/* 02529328 */ cpu->r[4] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0252932C */ _t17 = cpu->r[31] + 0x00000208u;
|
|
/* 0252932C */ rbrew_write_f32(cpu->mem, _t17, cpu->f[9]);
|
|
/* 02529330 */ Gambit_fn_0200D450(cpu);
|
|
/* 02529334 */ _t18 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02529334 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 02529338 */ /* nop */
|
|
/* 0252933C */ _t19 = cpu->r[31] + 0x000002E0u;
|
|
/* 0252933C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 02529340 */ /* nop */
|
|
/* 02529344 */ cpu->f[7] = cpu->f[7] + cpu->f[8];
|
|
/* 02529348 */ _t20 = cpu->r[31] + 0x00000200u;
|
|
/* 02529348 */ cpu->r[8] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0252934C */ /* nop */
|
|
/* 02529350 */ /* nop */
|
|
/* 02529354 */ _t21 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02529354 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[7]);
|
|
/* 02529358 */ _t22 = cpu->r[8] + 0x00000010u;
|
|
/* 02529358 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 0252935C */ _t23 = cpu->r[8] + 0x00000020u;
|
|
/* 0252935C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 02529360 */ _t24 = cpu->r[8] + 0x00000000u;
|
|
/* 02529360 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 02529364 */ _t25 = cpu->r[1] + 0x00000024u;
|
|
/* 02529364 */ rbrew_write_f32(cpu->mem, _t25, cpu->f[11]);
|
|
/* 02529368 */ _t26 = cpu->r[1] + 0x00000020u;
|
|
/* 02529368 */ rbrew_write_f32(cpu->mem, _t26, cpu->f[10]);
|
|
/* 0252936C */ _t27 = cpu->r[1] + 0x00000028u;
|
|
/* 0252936C */ rbrew_write_f32(cpu->mem, _t27, cpu->f[13]);
|
|
/* 02529370 */ _t28 = cpu->r[8] + 0x00000024u;
|
|
/* 02529370 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 02529374 */ _t29 = cpu->r[8] + 0x00000004u;
|
|
/* 02529374 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 02529378 */ _t30 = cpu->r[8] + 0x00000014u;
|
|
/* 02529378 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 0252937C */ _t31 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0252937C */ rbrew_write_f32(cpu->mem, _t31, cpu->f[9]);
|
|
/* 02529380 */ _t32 = cpu->r[1] + 0x00000034u;
|
|
/* 02529380 */ rbrew_write_f32(cpu->mem, _t32, cpu->f[11]);
|
|
/* 02529384 */ _t33 = cpu->r[1] + 0x00000030u;
|
|
/* 02529384 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[10]);
|
|
/* 02529388 */ _t34 = cpu->r[8] + 0x00000018u;
|
|
/* 02529388 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 0252938C */ _t35 = cpu->r[8] + 0x00000028u;
|
|
/* 0252938C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 02529390 */ _t36 = cpu->r[8] + 0x00000008u;
|
|
/* 02529390 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 02529394 */ _t37 = cpu->r[1] + 0x00000040u;
|
|
/* 02529394 */ rbrew_write_f32(cpu->mem, _t37, cpu->f[10]);
|
|
/* 02529398 */ cpu->f[7] = cpu->f[0] * cpu->f[0];
|
|
/* 0252939C */ _t38 = cpu->r[1] + 0x00000038u;
|
|
/* 0252939C */ rbrew_write_f32(cpu->mem, _t38, cpu->f[9]);
|
|
/* 025293A0 */ cpu->f[11] = fma(cpu->f[9], cpu->f[9], cpu->f[7]);
|
|
/* 025293A4 */ _t39 = cpu->r[1] + 0x0000003Cu;
|
|
/* 025293A4 */ rbrew_write_f32(cpu->mem, _t39, cpu->f[0]);
|
|
/* 025293A8 */ _t40 = cpu->r[8] + 0x0000000Cu;
|
|
/* 025293A8 */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 025293AC */ _t41 = cpu->r[8] + 0x0000001Cu;
|
|
/* 025293AC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 025293B0 */ cpu->f[7] = fma(cpu->f[10], cpu->f[10], cpu->f[11]);
|
|
/* 025293B4 */ _t42 = cpu->r[8] + 0x0000002Cu;
|
|
/* 025293B4 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 025293B8 */ cpu->r[10] = 0x100C0000u;
|
|
/* 025293BC */ _t43 = cpu->r[1] + 0x00000008u;
|
|
/* 025293BC */ rbrew_write_f32(cpu->mem, _t43, cpu->f[9]);
|
|
/* 025293C0 */ cpu->r[12] = 0x100C0000u;
|
|
/* 025293C4 */ _t44 = cpu->r[10] + 0x00002EBCu;
|
|
/* 025293C4 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 025293C8 */ _t45 = cpu->r[12] + 0x00002F18u;
|
|
/* 025293C8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t45);
|
|
/* 025293CC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[7], cpu->f[9]);
|
|
/* 025293D0 */ _t46 = cpu->r[1] + 0x0000004Cu;
|
|
/* 025293D0 */ rbrew_write_f32(cpu->mem, _t46, cpu->f[8]);
|
|
/* 025293D4 */ _t47 = cpu->r[1] + 0x00000010u;
|
|
/* 025293D4 */ rbrew_write_f32(cpu->mem, _t47, cpu->f[10]);
|
|
/* 025293D8 */ _t48 = cpu->r[1] + 0x00000044u;
|
|
/* 025293D8 */ rbrew_write_f32(cpu->mem, _t48, cpu->f[5]);
|
|
/* 025293DC */ _t49 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025293DC */ rbrew_write_f32(cpu->mem, _t49, cpu->f[0]);
|
|
/* 025293E0 */ _t50 = cpu->r[1] + 0x00000048u;
|
|
/* 025293E0 */ rbrew_write_f32(cpu->mem, _t50, cpu->f[12]);
|
|
/* 025293E4 */ _t51 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 025293E4 */ _t52 = _t51 & 0x00000001u;
|
|
/* 025293E4 */ if (_t52) goto L_02529428; else goto L_025293E8;
|
|
L_025293E8: ; // 0x25293e8
|
|
/* 025293E8 */ /* nop */
|
|
/* 025293EC */ cpu->r[11] = 0x101C0000u;
|
|
/* 025293F0 */ cpu->r[12] = 0x101C0000u;
|
|
/* 025293F4 */ _t53 = cpu->r[31] + 0x000002E0u;
|
|
/* 025293F4 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t53);
|
|
/* 025293F8 */ /* nop */
|
|
/* 025293FC */ _t54 = cpu->r[12] + 0x000054A0u;
|
|
/* 025293FC */ cpu->r[12] = rbrew_read32(cpu->mem, _t54);
|
|
/* 02529400 */ cpu->f[0] = cpu->f[10] + cpu->f[8];
|
|
/* 02529404 */ _t55 = cpu->r[11] + 0x00006000u;
|
|
/* 02529404 */ cpu->r[11] = rbrew_read32(cpu->mem, _t55);
|
|
/* 02529408 */ /* nop */
|
|
/* 0252940C */ _t56 = cpu->r[1] + 0x00000010u;
|
|
/* 0252940C */ rbrew_write_f32(cpu->mem, _t56, cpu->f[0]);
|
|
/* 02529410 */ _t57 = cpu->r[11] + 0x00000274u;
|
|
/* 02529410 */ cpu->r[3] = rbrew_read32(cpu->mem, _t57);
|
|
/* 02529414 */ cpu->r[12] = cpu->r[3] + cpu->r[12];
|
|
/* 02529418 */ _t58 = cpu->r[12] + 0x00000104u;
|
|
/* 02529418 */ cpu->r[4] = rbrew_read8(cpu->mem, _t58);
|
|
/* 0252941C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x000000FFu);
|
|
/* 02529420 */ _t59 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02529420 */ _t60 = _t59 & 0x00000001u;
|
|
/* 02529420 */ if (_t60) goto L_0252952C; else goto L_02529424;
|
|
L_02529424: ; // 0x2529424
|
|
/* 02529424 */ goto L_02529498;
|
|
L_02529428: ; // 0x2529428
|
|
/* 02529428 */ cpu->r[8] = 0x100C0000u;
|
|
/* 0252942C */ cpu->r[11] = 0x100C0000u;
|
|
/* 02529430 */ _t61 = cpu->r[8] + 0x00002F1Cu;
|
|
/* 02529430 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t61);
|
|
/* 02529434 */ _t62 = cpu->r[11] + 0x00002F20u;
|
|
/* 02529434 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t62);
|
|
/* 02529438 */ _ft63 = sqrt(cpu->f[7]);
|
|
/* 02529438 */ _ft64 = (double)(int32_t)0x00000001u;
|
|
/* 02529438 */ cpu->f[9] = _ft64 / _ft63;
|
|
/* 0252943C */ cpu->f[11] = cpu->f[9] * cpu->f[9];
|
|
/* 02529440 */ cpu->f[0] = cpu->f[9] * cpu->f[13];
|
|
/* 02529444 */ cpu->f[11] = -fma(cpu->f[11], cpu->f[7], -(cpu->f[12]));
|
|
/* 02529448 */ cpu->f[0] = cpu->f[0] * cpu->f[10];
|
|
/* 0252944C */ cpu->f[9] = cpu->f[11] * cpu->f[0];
|
|
/* 02529450 */ /* nop */
|
|
/* 02529454 */ /* nop */
|
|
/* 02529458 */ /* nop */
|
|
/* 0252945C */ _t65 = cpu->r[1] + 0x00000010u;
|
|
/* 0252945C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t65);
|
|
/* 02529460 */ cpu->r[12] = 0x101C0000u;
|
|
/* 02529464 */ _t66 = cpu->r[31] + 0x000002E0u;
|
|
/* 02529464 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t66);
|
|
/* 02529468 */ cpu->r[11] = 0x101C0000u;
|
|
/* 0252946C */ /* nop */
|
|
/* 02529470 */ _t67 = cpu->r[12] + 0x000054A0u;
|
|
/* 02529470 */ cpu->r[12] = rbrew_read32(cpu->mem, _t67);
|
|
/* 02529474 */ cpu->f[0] = fma(cpu->f[10], cpu->f[9], cpu->f[8]);
|
|
/* 02529478 */ _t68 = cpu->r[11] + 0x00006000u;
|
|
/* 02529478 */ cpu->r[11] = rbrew_read32(cpu->mem, _t68);
|
|
/* 0252947C */ /* nop */
|
|
/* 02529480 */ _t69 = cpu->r[1] + 0x00000010u;
|
|
/* 02529480 */ rbrew_write_f32(cpu->mem, _t69, cpu->f[0]);
|
|
/* 02529484 */ _t70 = cpu->r[11] + 0x00000274u;
|
|
/* 02529484 */ cpu->r[3] = rbrew_read32(cpu->mem, _t70);
|
|
/* 02529488 */ cpu->r[12] = cpu->r[3] + cpu->r[12];
|
|
/* 0252948C */ _t71 = cpu->r[12] + 0x00000104u;
|
|
/* 0252948C */ cpu->r[4] = rbrew_read8(cpu->mem, _t71);
|
|
/* 02529490 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x000000FFu);
|
|
/* 02529494 */ _t72 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02529494 */ _t73 = _t72 & 0x00000001u;
|
|
/* 02529494 */ if (_t73) goto L_0252952C; else goto L_02529498;
|
|
L_02529498: ; // 0x2529498
|
|
/* 02529498 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 0252949C */ cpu->r[6] = cpu->r[1] + 0x00000014u;
|
|
/* 025294A0 */ cpu->r[5] = 0x00000001u;
|
|
/* 025294A4 */ Gambit_fn_021F000C(cpu);
|
|
/* 025294A8 */ cpu->r[30] = cpu->r[3];
|
|
/* 025294A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 025294AC */ _t74 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025294AC */ _t75 = _t74 & 0x00000001u;
|
|
/* 025294AC */ if (_t75) goto L_0252952C; else goto L_025294B0;
|
|
L_025294B0: ; // 0x25294b0
|
|
/* 025294B0 */ cpu->r[3] = 0x101D0000u;
|
|
/* 025294B4 */ _t76 = cpu->r[3] + 0xFFFF9918u;
|
|
/* 025294B4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t76);
|
|
/* 025294B8 */ Gambit_fn_02830138(cpu);
|
|
/* 025294BC */ cpu->r[9] = cpu->r[3];
|
|
/* 025294C0 */ cpu->r[5] = 0x00000000u;
|
|
/* 025294C4 */ cpu->r[3] = cpu->r[30];
|
|
/* 025294C8 */ cpu->r[4] = cpu->r[31];
|
|
/* 025294CC */ cpu->r[6] = cpu->r[5];
|
|
/* 025294D0 */ cpu->r[8] = cpu->r[1] + 0x00000008u;
|
|
/* 025294D4 */ cpu->r[7] = cpu->r[1] + 0x00000014u;
|
|
/* 025294D8 */ Gambit_fn_02223618(cpu);
|
|
/* 025294DC */ cpu->r[4] = 0x100C0000u;
|
|
/* 025294E0 */ _t77 = cpu->r[31] + 0x00000130u;
|
|
/* 025294E0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t77);
|
|
/* 025294E4 */ cpu->r[5] = 0x00000001u;
|
|
/* 025294E8 */ cpu->r[4] = cpu->r[4] + 0x00002F24u;
|
|
/* 025294EC */ Gambit_fn_02398850(cpu);
|
|
/* 025294F0 */ _t78 = cpu->r[31] + 0x0000020Cu;
|
|
/* 025294F0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t78);
|
|
/* 025294F4 */ cpu->r[0] = cpu->r[9] + 0xFFFFFFFFu;
|
|
/* 025294F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 025294F8 */ _t79 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 025294F8 */ _t80 = _t79 & 0x00000001u;
|
|
/* 025294F8 */ if (_t80) goto L_025294FC; else goto L_02529510;
|
|
L_025294FC: ; // 0x25294fc
|
|
/* 025294FC */ cpu->r[8] = 0x00000000u;
|
|
/* 02529500 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02529504 */ _t81 = cpu->r[31] + 0x0000020Cu;
|
|
/* 02529504 */ rbrew_write32(cpu->mem, _t81, cpu->r[8]);
|
|
/* 02529508 */ _t82 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02529508 */ _t83 = _t82 & 0x00000001u;
|
|
/* 02529508 */ if (_t83) goto L_02529524; else goto L_0252950C;
|
|
L_0252950C: ; // 0x252950c
|
|
/* 0252950C */ goto L_0252952C;
|
|
L_02529510: ; // 0x2529510
|
|
/* 02529510 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02529514 */ _t84 = cpu->r[31] + 0x0000020Cu;
|
|
/* 02529514 */ rbrew_write32(cpu->mem, _t84, cpu->r[0]);
|
|
/* 02529518 */ _t85 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02529518 */ _t86 = _t85 & 0x00000001u;
|
|
/* 02529518 */ if (_t86) goto L_0252951C; else goto L_0252952C;
|
|
L_0252951C: ; // 0x252951c
|
|
/* 0252951C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02529520 */ _t87 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02529520 */ _t88 = _t87 & 0x00000001u;
|
|
/* 02529520 */ if (_t88) goto L_02529524; else goto L_0252952C;
|
|
L_02529524: ; // 0x2529524
|
|
/* 02529524 */ cpu->r[9] = 0x0000012Cu;
|
|
/* 02529528 */ _t89 = cpu->r[31] + 0x00000204u;
|
|
/* 02529528 */ rbrew_write32(cpu->mem, _t89, cpu->r[9]);
|
|
L_0252952C: ; // 0x252952c
|
|
/* 0252952C */ _t90 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0252952C */ cpu->r[0] = rbrew_read32(cpu->mem, _t90);
|
|
/* 02529530 */ _t91 = cpu->r[1] + 0x00000050u;
|
|
/* 02529530 */ cpu->r[30] = rbrew_read32(cpu->mem, _t91);
|
|
/* 02529534 */ cpu->lr = cpu->r[0];
|
|
/* 02529538 */ _t92 = cpu->r[1] + 0x00000054u;
|
|
/* 02529538 */ cpu->r[31] = rbrew_read32(cpu->mem, _t92);
|
|
/* 0252953C */ cpu->r[1] = cpu->r[1] + 0x00000058u;
|
|
/* 02529540 */ return;
|
|
}
|
|
|
|
// fn_02529544 @ 0x2529544
|
|
void Gambit_fn_02529544(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _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_02529544: ; // 0x2529544
|
|
/* 02529544 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 02529544 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02529544 */ cpu->r[1] = _t0;
|
|
/* 02529548 */ /* nop */
|
|
/* 0252954C */ cpu->r[0] = cpu->lr;
|
|
/* 02529550 */ cpu->r[28] = 0x00000001u;
|
|
/* 02529554 */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 02529554 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02529558 */ cpu->r[31] = cpu->r[3] + 0x0000024Cu;
|
|
/* 0252955C */ cpu->r[27] = cpu->r[28];
|
|
/* 02529560 */ _t2 = cpu->r[3] + 0x00000258u;
|
|
/* 02529560 */ cpu->r[26] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02529564 */ cpu->r[29] = 0x00000000u;
|
|
/* 02529568 */ goto L_025295D4;
|
|
L_0252956C: ; // 0x252956c
|
|
/* 0252956C */ _t3 = cpu->r[31] + 0x00000008u;
|
|
/* 0252956C */ cpu->r[10] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02529570 */ _t4 = cpu->r[31] + 0x00000004u;
|
|
/* 02529570 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02529574 */ cpu->r[11] = cpu->r[10] + cpu->r[29];
|
|
/* 02529578 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], cpu->r[0]);
|
|
/* 0252957C */ _t5 = cpu->r[31] + 0x00000000u;
|
|
/* 0252957C */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02529580 */ _t6 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02529580 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02529580 */ if (_t7) goto L_02529588; else goto L_02529584;
|
|
L_02529584: ; // 0x2529584
|
|
/* 02529584 */ cpu->r[11] = cpu->r[11] - cpu->r[0];
|
|
L_02529588: ; // 0x2529588
|
|
/* 02529588 */ cpu->r[11] = (uint32_t)((int32_t)cpu->r[11] * (int32_t)0x0000000Cu);
|
|
/* 0252958C */ _t8 = cpu->r[12] + cpu->r[11];
|
|
/* 0252958C */ cpu->r[30] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02529590 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02529594 */ cpu->r[7] = cpu->r[12] + cpu->r[11];
|
|
/* 02529598 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02529598 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02529598 */ if (_t10) goto L_025295D0; else goto L_0252959C;
|
|
L_0252959C: ; // 0x252959c
|
|
/* 0252959C */ _t11 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0252959C */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 025295A0 */ _t12 = cpu->r[7] + 0x00000004u;
|
|
/* 025295A0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t12);
|
|
/* 025295A4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[6]);
|
|
/* 025295A8 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025295A8 */ _t14 = _t13 & 0x00000001u;
|
|
/* 025295A8 */ if (_t14) goto L_025295AC; else goto L_025295D0;
|
|
L_025295AC: ; // 0x25295ac
|
|
/* 025295AC */ _t15 = cpu->r[30] + 0x00000028u;
|
|
/* 025295AC */ cpu->r[3] = rbrew_read32(cpu->mem, _t15);
|
|
/* 025295B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 025295B4 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025295B4 */ _t17 = _t16 & 0x00000001u;
|
|
/* 025295B4 */ if (_t17) goto L_025295CC; else goto L_025295B8;
|
|
L_025295B8: ; // 0x25295b8
|
|
/* 025295B8 */ _t18 = cpu->r[3] + 0x00000050u;
|
|
/* 025295B8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t18);
|
|
/* 025295BC */ _t19 = cpu->r[8] + 0x00000024u;
|
|
/* 025295BC */ cpu->r[9] = rbrew_read32(cpu->mem, _t19);
|
|
/* 025295C0 */ cpu->ctr = cpu->r[9];
|
|
/* 025295C4 */ cpu->r[4] = 0xFFFFFFFFu;
|
|
/* 025295C8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_025295CC: ; // 0x25295cc
|
|
/* 025295CC */ _t20 = cpu->r[30] + 0x0000004Cu;
|
|
/* 025295CC */ rbrew_write8(cpu->mem, _t20, (uint8_t)cpu->r[27]);
|
|
L_025295D0: ; // 0x25295d0
|
|
/* 025295D0 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
L_025295D4: ; // 0x25295d4
|
|
/* 025295D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 025295D8 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025295D8 */ _t22 = _t21 & 0x00000001u;
|
|
/* 025295D8 */ if (_t22) goto L_0252956C; else goto L_025295DC;
|
|
L_025295DC: ; // 0x25295dc
|
|
/* 025295DC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[26]);
|
|
/* 025295E0 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025295E0 */ _t24 = _t23 & 0x00000001u;
|
|
/* 025295E0 */ if (_t24) goto L_025295E4; else goto L_0252956C;
|
|
L_025295E4: ; // 0x25295e4
|
|
/* 025295E4 */ cpu->r[10] = 0x00000000u;
|
|
/* 025295E8 */ _t25 = cpu->r[31] + 0x00000008u;
|
|
/* 025295E8 */ rbrew_write32(cpu->mem, _t25, cpu->r[10]);
|
|
/* 025295EC */ _t26 = cpu->r[31] + 0x0000000Cu;
|
|
/* 025295EC */ rbrew_write32(cpu->mem, _t26, cpu->r[10]);
|
|
/* 025295F0 */ /* nop */
|
|
/* 025295F4 */ _t27 = cpu->r[1] + 0x00000024u;
|
|
/* 025295F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 025295F8 */ cpu->lr = cpu->r[0];
|
|
/* 025295FC */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 02529600 */ return;
|
|
}
|
|
|
|
// fn_02529604 @ 0x2529604
|
|
void Gambit_fn_02529604(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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_02529604: ; // 0x2529604
|
|
/* 02529604 */ cpu->r[0] = cpu->lr;
|
|
/* 02529608 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02529608 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02529608 */ cpu->r[1] = _t0;
|
|
/* 0252960C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252960C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02529610 */ cpu->r[31] = cpu->r[3];
|
|
/* 02529614 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02529614 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02529618 */ _t3 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02529618 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0252961C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02529620 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02529620 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02529620 */ if (_t5) goto L_025296BC; else goto L_02529624;
|
|
L_02529624: ; // 0x2529624
|
|
/* 02529624 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02529628 */ _t6 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02529628 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02529628 */ if (_t7) goto L_0252962C; else goto L_02529680;
|
|
L_0252962C: ; // 0x252962c
|
|
/* 0252962C */ _t8 = cpu->r[31] + 0x00000218u;
|
|
/* 0252962C */ cpu->r[9] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02529630 */ _t9 = cpu->r[31] + 0x00000214u;
|
|
/* 02529630 */ cpu->r[10] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02529634 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], cpu->r[10]);
|
|
/* 02529638 */ _t10 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02529638 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02529638 */ if (_t11) goto L_02529640; else goto L_0252963C;
|
|
L_0252963C: ; // 0x252963c
|
|
/* 0252963C */ cpu->r[9] = cpu->r[9] - cpu->r[10];
|
|
L_02529640: ; // 0x2529640
|
|
/* 02529640 */ _t12 = cpu->r[31] + 0x00000210u;
|
|
/* 02529640 */ cpu->r[10] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02529644 */ cpu->r[9] = rbrew_rlwinm(cpu->r[9], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02529648 */ cpu->r[11] = 0x00000000u;
|
|
/* 0252964C */ _t13 = cpu->r[10] + cpu->r[9];
|
|
/* 0252964C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02529650 */ _t14 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02529650 */ rbrew_write32(cpu->mem, _t14, cpu->r[11]);
|
|
/* 02529654 */ _t15 = cpu->r[31] + 0x000001F0u;
|
|
/* 02529654 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 02529658 */ _t16 = cpu->r[31] + 0x00000218u;
|
|
/* 02529658 */ rbrew_write32(cpu->mem, _t16, cpu->r[11]);
|
|
/* 0252965C */ cpu->r[3] = cpu->r[31];
|
|
/* 02529660 */ _t17 = cpu->r[31] + 0x00000248u;
|
|
/* 02529660 */ rbrew_write8(cpu->mem, _t17, (uint8_t)cpu->r[11]);
|
|
/* 02529664 */ Gambit_fn_02529544(cpu);
|
|
/* 02529668 */ cpu->r[12] = 0x100C0000u;
|
|
/* 0252966C */ _t18 = cpu->r[12] + 0x00002EBCu;
|
|
/* 0252966C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 02529670 */ _t19 = cpu->r[31] + 0x000002D8u;
|
|
/* 02529670 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[0]);
|
|
/* 02529674 */ _t20 = cpu->r[31] + 0x000002E0u;
|
|
/* 02529674 */ rbrew_write_f32(cpu->mem, _t20, cpu->f[0]);
|
|
/* 02529678 */ _t21 = cpu->r[31] + 0x000002DCu;
|
|
/* 02529678 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[0]);
|
|
/* 0252967C */ goto L_025296EC;
|
|
L_02529680: ; // 0x2529680
|
|
/* 02529680 */ _t22 = cpu->r[31] + 0x00000210u;
|
|
/* 02529680 */ cpu->r[12] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02529684 */ cpu->r[11] = 0x00000000u;
|
|
/* 02529688 */ _t23 = cpu->r[12] + 0x00000000u;
|
|
/* 02529688 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0252968C */ _t24 = cpu->r[31] + 0x0000021Cu;
|
|
/* 0252968C */ rbrew_write32(cpu->mem, _t24, cpu->r[11]);
|
|
/* 02529690 */ _t25 = cpu->r[31] + 0x000001F0u;
|
|
/* 02529690 */ rbrew_write32(cpu->mem, _t25, cpu->r[0]);
|
|
/* 02529694 */ _t26 = cpu->r[31] + 0x00000218u;
|
|
/* 02529694 */ rbrew_write32(cpu->mem, _t26, cpu->r[11]);
|
|
/* 02529698 */ cpu->r[3] = cpu->r[31];
|
|
/* 0252969C */ _t27 = cpu->r[31] + 0x00000248u;
|
|
/* 0252969C */ rbrew_write8(cpu->mem, _t27, (uint8_t)cpu->r[11]);
|
|
/* 025296A0 */ Gambit_fn_02529544(cpu);
|
|
/* 025296A4 */ cpu->r[12] = 0x100C0000u;
|
|
/* 025296A8 */ _t28 = cpu->r[12] + 0x00002EBCu;
|
|
/* 025296A8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 025296AC */ _t29 = cpu->r[31] + 0x000002D8u;
|
|
/* 025296AC */ rbrew_write_f32(cpu->mem, _t29, cpu->f[0]);
|
|
/* 025296B0 */ _t30 = cpu->r[31] + 0x000002E0u;
|
|
/* 025296B0 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[0]);
|
|
/* 025296B4 */ _t31 = cpu->r[31] + 0x000002DCu;
|
|
/* 025296B4 */ rbrew_write_f32(cpu->mem, _t31, cpu->f[0]);
|
|
/* 025296B8 */ goto L_025296EC;
|
|
L_025296BC: ; // 0x25296bc
|
|
/* 025296BC */ cpu->r[0] = 0x00000000u;
|
|
/* 025296C0 */ _t32 = cpu->r[31] + 0x00000248u;
|
|
/* 025296C0 */ rbrew_write8(cpu->mem, _t32, (uint8_t)cpu->r[0]);
|
|
/* 025296C4 */ _t33 = cpu->r[31] + 0x000001F0u;
|
|
/* 025296C4 */ rbrew_write32(cpu->mem, _t33, cpu->r[0]);
|
|
/* 025296C8 */ _t34 = cpu->r[31] + 0x0000021Cu;
|
|
/* 025296C8 */ rbrew_write32(cpu->mem, _t34, cpu->r[0]);
|
|
/* 025296CC */ cpu->r[3] = cpu->r[31];
|
|
/* 025296D0 */ _t35 = cpu->r[31] + 0x00000218u;
|
|
/* 025296D0 */ rbrew_write32(cpu->mem, _t35, cpu->r[0]);
|
|
/* 025296D4 */ Gambit_fn_02529544(cpu);
|
|
/* 025296D8 */ cpu->r[12] = 0x100C0000u;
|
|
/* 025296DC */ _t36 = cpu->r[12] + 0x00002EBCu;
|
|
/* 025296DC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 025296E0 */ _t37 = cpu->r[31] + 0x000002D8u;
|
|
/* 025296E0 */ rbrew_write_f32(cpu->mem, _t37, cpu->f[0]);
|
|
/* 025296E4 */ _t38 = cpu->r[31] + 0x000002E0u;
|
|
/* 025296E4 */ rbrew_write_f32(cpu->mem, _t38, cpu->f[0]);
|
|
/* 025296E8 */ _t39 = cpu->r[31] + 0x000002DCu;
|
|
/* 025296E8 */ rbrew_write_f32(cpu->mem, _t39, cpu->f[0]);
|
|
L_025296EC: ; // 0x25296ec
|
|
/* 025296EC */ _t40 = cpu->r[1] + 0x00000014u;
|
|
/* 025296EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t40);
|
|
/* 025296F0 */ _t41 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025296F0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t41);
|
|
/* 025296F4 */ cpu->lr = cpu->r[0];
|
|
/* 025296F8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 025296FC */ return;
|
|
}
|
|
|
|
// fn_02529608 @ 0x2529608
|
|
void Gambit_fn_02529608(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _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_02529608: ; // 0x2529608
|
|
/* 02529608 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02529608 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02529608 */ cpu->r[1] = _t0;
|
|
/* 0252960C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252960C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02529610 */ cpu->r[31] = cpu->r[3];
|
|
/* 02529614 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02529614 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02529618 */ _t3 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02529618 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0252961C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02529620 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02529620 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02529620 */ if (_t5) goto L_025296BC; else goto L_02529624;
|
|
L_02529624: ; // 0x2529624
|
|
/* 02529624 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02529628 */ _t6 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02529628 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02529628 */ if (_t7) goto L_0252962C; else goto L_02529680;
|
|
L_0252962C: ; // 0x252962c
|
|
/* 0252962C */ _t8 = cpu->r[31] + 0x00000218u;
|
|
/* 0252962C */ cpu->r[9] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02529630 */ _t9 = cpu->r[31] + 0x00000214u;
|
|
/* 02529630 */ cpu->r[10] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02529634 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], cpu->r[10]);
|
|
/* 02529638 */ _t10 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02529638 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02529638 */ if (_t11) goto L_02529640; else goto L_0252963C;
|
|
L_0252963C: ; // 0x252963c
|
|
/* 0252963C */ cpu->r[9] = cpu->r[9] - cpu->r[10];
|
|
L_02529640: ; // 0x2529640
|
|
/* 02529640 */ _t12 = cpu->r[31] + 0x00000210u;
|
|
/* 02529640 */ cpu->r[10] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02529644 */ cpu->r[9] = rbrew_rlwinm(cpu->r[9], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02529648 */ cpu->r[11] = 0x00000000u;
|
|
/* 0252964C */ _t13 = cpu->r[10] + cpu->r[9];
|
|
/* 0252964C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02529650 */ _t14 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02529650 */ rbrew_write32(cpu->mem, _t14, cpu->r[11]);
|
|
/* 02529654 */ _t15 = cpu->r[31] + 0x000001F0u;
|
|
/* 02529654 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 02529658 */ _t16 = cpu->r[31] + 0x00000218u;
|
|
/* 02529658 */ rbrew_write32(cpu->mem, _t16, cpu->r[11]);
|
|
/* 0252965C */ cpu->r[3] = cpu->r[31];
|
|
/* 02529660 */ _t17 = cpu->r[31] + 0x00000248u;
|
|
/* 02529660 */ rbrew_write8(cpu->mem, _t17, (uint8_t)cpu->r[11]);
|
|
/* 02529664 */ Gambit_fn_02529544(cpu);
|
|
/* 02529668 */ cpu->r[12] = 0x100C0000u;
|
|
/* 0252966C */ _t18 = cpu->r[12] + 0x00002EBCu;
|
|
/* 0252966C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 02529670 */ _t19 = cpu->r[31] + 0x000002D8u;
|
|
/* 02529670 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[0]);
|
|
/* 02529674 */ _t20 = cpu->r[31] + 0x000002E0u;
|
|
/* 02529674 */ rbrew_write_f32(cpu->mem, _t20, cpu->f[0]);
|
|
/* 02529678 */ _t21 = cpu->r[31] + 0x000002DCu;
|
|
/* 02529678 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[0]);
|
|
/* 0252967C */ goto L_025296EC;
|
|
L_02529680: ; // 0x2529680
|
|
/* 02529680 */ _t22 = cpu->r[31] + 0x00000210u;
|
|
/* 02529680 */ cpu->r[12] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02529684 */ cpu->r[11] = 0x00000000u;
|
|
/* 02529688 */ _t23 = cpu->r[12] + 0x00000000u;
|
|
/* 02529688 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0252968C */ _t24 = cpu->r[31] + 0x0000021Cu;
|
|
/* 0252968C */ rbrew_write32(cpu->mem, _t24, cpu->r[11]);
|
|
/* 02529690 */ _t25 = cpu->r[31] + 0x000001F0u;
|
|
/* 02529690 */ rbrew_write32(cpu->mem, _t25, cpu->r[0]);
|
|
/* 02529694 */ _t26 = cpu->r[31] + 0x00000218u;
|
|
/* 02529694 */ rbrew_write32(cpu->mem, _t26, cpu->r[11]);
|
|
/* 02529698 */ cpu->r[3] = cpu->r[31];
|
|
/* 0252969C */ _t27 = cpu->r[31] + 0x00000248u;
|
|
/* 0252969C */ rbrew_write8(cpu->mem, _t27, (uint8_t)cpu->r[11]);
|
|
/* 025296A0 */ Gambit_fn_02529544(cpu);
|
|
/* 025296A4 */ cpu->r[12] = 0x100C0000u;
|
|
/* 025296A8 */ _t28 = cpu->r[12] + 0x00002EBCu;
|
|
/* 025296A8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 025296AC */ _t29 = cpu->r[31] + 0x000002D8u;
|
|
/* 025296AC */ rbrew_write_f32(cpu->mem, _t29, cpu->f[0]);
|
|
/* 025296B0 */ _t30 = cpu->r[31] + 0x000002E0u;
|
|
/* 025296B0 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[0]);
|
|
/* 025296B4 */ _t31 = cpu->r[31] + 0x000002DCu;
|
|
/* 025296B4 */ rbrew_write_f32(cpu->mem, _t31, cpu->f[0]);
|
|
/* 025296B8 */ goto L_025296EC;
|
|
L_025296BC: ; // 0x25296bc
|
|
/* 025296BC */ cpu->r[0] = 0x00000000u;
|
|
/* 025296C0 */ _t32 = cpu->r[31] + 0x00000248u;
|
|
/* 025296C0 */ rbrew_write8(cpu->mem, _t32, (uint8_t)cpu->r[0]);
|
|
/* 025296C4 */ _t33 = cpu->r[31] + 0x000001F0u;
|
|
/* 025296C4 */ rbrew_write32(cpu->mem, _t33, cpu->r[0]);
|
|
/* 025296C8 */ _t34 = cpu->r[31] + 0x0000021Cu;
|
|
/* 025296C8 */ rbrew_write32(cpu->mem, _t34, cpu->r[0]);
|
|
/* 025296CC */ cpu->r[3] = cpu->r[31];
|
|
/* 025296D0 */ _t35 = cpu->r[31] + 0x00000218u;
|
|
/* 025296D0 */ rbrew_write32(cpu->mem, _t35, cpu->r[0]);
|
|
/* 025296D4 */ Gambit_fn_02529544(cpu);
|
|
/* 025296D8 */ cpu->r[12] = 0x100C0000u;
|
|
/* 025296DC */ _t36 = cpu->r[12] + 0x00002EBCu;
|
|
/* 025296DC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 025296E0 */ _t37 = cpu->r[31] + 0x000002D8u;
|
|
/* 025296E0 */ rbrew_write_f32(cpu->mem, _t37, cpu->f[0]);
|
|
/* 025296E4 */ _t38 = cpu->r[31] + 0x000002E0u;
|
|
/* 025296E4 */ rbrew_write_f32(cpu->mem, _t38, cpu->f[0]);
|
|
/* 025296E8 */ _t39 = cpu->r[31] + 0x000002DCu;
|
|
/* 025296E8 */ rbrew_write_f32(cpu->mem, _t39, cpu->f[0]);
|
|
L_025296EC: ; // 0x25296ec
|
|
/* 025296EC */ _t40 = cpu->r[1] + 0x00000014u;
|
|
/* 025296EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t40);
|
|
/* 025296F0 */ _t41 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025296F0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t41);
|
|
/* 025296F4 */ cpu->lr = cpu->r[0];
|
|
/* 025296F8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 025296FC */ return;
|
|
}
|
|
|
|
// fn_02529700 @ 0x2529700
|
|
void Gambit_fn_02529700(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106, _t107, _t108, _t109, _t110, _t111, _t112, _t113, _t114, _t115, _t116, _t117, _t118, _t119, _t120, _t121, _t122, _t123, _t124, _t125, _t126, _t127, _t128, _t129, _t130, _t131, _t132, _t133, _t134, _t135, _t136, _t137, _t138, _t139, _t140, _t141, _t142, _t143, _t144, _t145, _t146, _t147, _t148, _t149, _t150, _t151, _t152, _t153, _t154, _t155, _t156, _t157, _t158, _t159, _t160, _t161, _t162, _t163, _t164, _t165, _t166, _t167, _t168, _t169, _t170, _t171, _t172;
|
|
double _ft87, _ft88;
|
|
|
|
L_02529700: ; // 0x2529700
|
|
/* 02529700 */ _t0 = cpu->r[1] + 0xFFFFFF50u;
|
|
/* 02529700 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02529700 */ cpu->r[1] = _t0;
|
|
/* 02529704 */ _t1 = cpu->r[1] + 0x00000078u;
|
|
/* 02529704 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02529708 */ cpu->r[0] = cpu->lr;
|
|
/* 0252970C */ _t2 = cpu->r[1] + 0x000000A0u;
|
|
/* 0252970C */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 02529710 */ /* nop */
|
|
/* 02529714 */ _t3 = cpu->r[1] + 0x000000A8u;
|
|
/* 02529714 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 02529718 */ _t4 = cpu->r[1] + 0x00000080u;
|
|
/* 02529718 */ rbrew_write_f64(cpu->mem, _t4, cpu->f[29]);
|
|
/* 0252971C */ _t5 = cpu->r[1] + 0x00000090u;
|
|
/* 0252971C */ rbrew_write_f64(cpu->mem, _t5, cpu->f[30]);
|
|
/* 02529720 */ _t6 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02529720 */ rbrew_write32(cpu->mem, _t6, cpu->r[31]);
|
|
/* 02529724 */ /* nop */
|
|
/* 02529728 */ _t7 = cpu->r[1] + 0x000000B4u;
|
|
/* 02529728 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 0252972C */ /* nop */
|
|
/* 02529730 */ _t8 = cpu->r[1] + 0x00000098u;
|
|
/* 02529730 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[30]);
|
|
/* 02529734 */ cpu->r[31] = cpu->r[3];
|
|
/* 02529738 */ _t9 = cpu->r[1] + 0x00000088u;
|
|
/* 02529738 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[29]);
|
|
/* 0252973C */ _t10 = cpu->r[31] + 0x00000080u;
|
|
/* 0252973C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 02529740 */ _t11 = cpu->r[31] + 0x0000007Cu;
|
|
/* 02529740 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 02529744 */ _t12 = cpu->r[31] + 0x00000078u;
|
|
/* 02529744 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 02529748 */ _t13 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02529748 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0252974C */ _t14 = cpu->r[1] + 0x00000008u;
|
|
/* 0252974C */ rbrew_write_f32(cpu->mem, _t14, cpu->f[12]);
|
|
/* 02529750 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02529750 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[0]);
|
|
/* 02529754 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02529758 */ _t16 = cpu->r[1] + 0x00000010u;
|
|
/* 02529758 */ rbrew_write_f32(cpu->mem, _t16, cpu->f[8]);
|
|
/* 0252975C */ _t17 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252975C */ _t18 = _t17 & 0x00000001u;
|
|
/* 0252975C */ if (_t18) goto L_02529760; else goto L_02529840;
|
|
L_02529760: ; // 0x2529760
|
|
/* 02529760 */ _t19 = cpu->r[31] + 0x00000218u;
|
|
/* 02529760 */ cpu->r[9] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02529764 */ _t20 = cpu->r[31] + 0x00000214u;
|
|
/* 02529764 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02529768 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], cpu->r[0]);
|
|
/* 0252976C */ _t21 = cpu->r[31] + 0x00000210u;
|
|
/* 0252976C */ cpu->r[10] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02529770 */ _t22 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02529770 */ _t23 = _t22 & 0x00000001u;
|
|
/* 02529770 */ if (_t23) goto L_02529778; else goto L_02529774;
|
|
L_02529774: ; // 0x2529774
|
|
/* 02529774 */ cpu->r[9] = cpu->r[9] - cpu->r[0];
|
|
L_02529778: ; // 0x2529778
|
|
/* 02529778 */ cpu->r[0] = rbrew_rlwinm(cpu->r[9], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0252977C */ _t24 = cpu->r[10] + cpu->r[0];
|
|
/* 0252977C */ cpu->r[3] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02529780 */ _t25 = cpu->r[3] + 0x000046BCu;
|
|
/* 02529780 */ cpu->r[11] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02529784 */ _t26 = cpu->r[11] + 0x0000002Cu;
|
|
/* 02529784 */ cpu->r[9] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02529788 */ cpu->ctr = cpu->r[9];
|
|
/* 0252978C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02529790 */ _t27 = cpu->r[3] + 0x00000000u;
|
|
/* 02529790 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 02529794 */ cpu->r[12] = 0x100C0000u;
|
|
/* 02529798 */ _t28 = cpu->r[1] + 0x00000008u;
|
|
/* 02529798 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 0252979C */ _t29 = cpu->r[12] + 0x00002F2Cu;
|
|
/* 0252979C */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 025297A0 */ cpu->f[0] = cpu->f[7] - cpu->f[12];
|
|
/* 025297A4 */ cpu->f[8] = fma(cpu->f[0], cpu->f[30], cpu->f[12]);
|
|
/* 025297A8 */ _t30 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025297A8 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 025297AC */ _t31 = cpu->r[1] + 0x00000008u;
|
|
/* 025297AC */ rbrew_write_f32(cpu->mem, _t31, cpu->f[8]);
|
|
/* 025297B0 */ _t32 = cpu->r[3] + 0x00000004u;
|
|
/* 025297B0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 025297B4 */ _t33 = cpu->r[31] + 0x00000080u;
|
|
/* 025297B4 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 025297B8 */ cpu->f[10] = cpu->f[12] - cpu->f[9];
|
|
/* 025297BC */ /* nop */
|
|
/* 025297C0 */ cpu->f[0] = fma(cpu->f[10], cpu->f[30], cpu->f[9]);
|
|
/* 025297C4 */ _t34 = cpu->r[1] + 0x00000010u;
|
|
/* 025297C4 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 025297C8 */ _t35 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025297C8 */ rbrew_write_f32(cpu->mem, _t35, cpu->f[0]);
|
|
/* 025297CC */ _t36 = cpu->r[3] + 0x00000008u;
|
|
/* 025297CC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 025297D0 */ cpu->r[11] = 0x100C0000u;
|
|
/* 025297D4 */ /* nop */
|
|
/* 025297D8 */ cpu->f[8] = cpu->f[10] - cpu->f[6];
|
|
/* 025297DC */ _t37 = cpu->r[11] + 0x00002EBCu;
|
|
/* 025297DC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 025297E0 */ /* nop */
|
|
/* 025297E4 */ /* nop */
|
|
/* 025297E8 */ _t38 = cpu->r[1] + 0x0000003Cu;
|
|
/* 025297E8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t38);
|
|
/* 025297EC */ cpu->f[6] = fma(cpu->f[8], cpu->f[30], cpu->f[6]);
|
|
/* 025297F0 */ _t39 = cpu->r[1] + 0x00000038u;
|
|
/* 025297F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t39);
|
|
/* 025297F4 */ _t40 = cpu->r[1] + 0x0000006Cu;
|
|
/* 025297F4 */ rbrew_write32(cpu->mem, _t40, cpu->r[10]);
|
|
/* 025297F8 */ _t41 = cpu->r[1] + 0x0000006Cu;
|
|
/* 025297F8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 025297FC */ cpu->f[0] = cpu->f[6] - cpu->f[7];
|
|
/* 02529800 */ _t42 = cpu->r[1] + 0x00000068u;
|
|
/* 02529800 */ rbrew_write32(cpu->mem, _t42, cpu->r[0]);
|
|
/* 02529804 */ _t43 = cpu->r[1] + 0x00000068u;
|
|
/* 02529804 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t43);
|
|
/* 02529808 */ cpu->f[8] = cpu->f[12] * cpu->f[12];
|
|
/* 0252980C */ _t44 = cpu->r[1] + 0x00000040u;
|
|
/* 0252980C */ rbrew_write_f32(cpu->mem, _t44, cpu->f[0]);
|
|
/* 02529810 */ _t45 = cpu->r[1] + 0x00000040u;
|
|
/* 02529810 */ cpu->r[0] = rbrew_read32(cpu->mem, _t45);
|
|
/* 02529814 */ cpu->f[9] = fma(cpu->f[13], cpu->f[13], cpu->f[8]);
|
|
/* 02529818 */ _t46 = cpu->r[1] + 0x00000070u;
|
|
/* 02529818 */ rbrew_write32(cpu->mem, _t46, cpu->r[0]);
|
|
/* 0252981C */ _t47 = cpu->r[1] + 0x00000070u;
|
|
/* 0252981C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 02529820 */ _t48 = cpu->r[1] + 0x00000014u;
|
|
/* 02529820 */ rbrew_write_f32(cpu->mem, _t48, cpu->f[13]);
|
|
/* 02529824 */ cpu->f[7] = fma(cpu->f[11], cpu->f[11], cpu->f[9]);
|
|
/* 02529828 */ _t49 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02529828 */ rbrew_write_f32(cpu->mem, _t49, cpu->f[11]);
|
|
/* 0252982C */ _t50 = cpu->r[1] + 0x00000010u;
|
|
/* 0252982C */ rbrew_write_f32(cpu->mem, _t50, cpu->f[6]);
|
|
/* 02529830 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[7], cpu->f[31]);
|
|
/* 02529834 */ _t51 = cpu->r[1] + 0x00000018u;
|
|
/* 02529834 */ rbrew_write_f32(cpu->mem, _t51, cpu->f[12]);
|
|
/* 02529838 */ _t52 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02529838 */ _t53 = _t52 & 0x00000001u;
|
|
/* 02529838 */ if (_t53) goto L_0252983C; else goto L_02529948;
|
|
L_0252983C: ; // 0x252983c
|
|
/* 0252983C */ goto L_02529904;
|
|
L_02529840: ; // 0x2529840
|
|
/* 02529840 */ _t54 = cpu->r[31] + 0x00000210u;
|
|
/* 02529840 */ cpu->r[12] = rbrew_read32(cpu->mem, _t54);
|
|
/* 02529844 */ _t55 = cpu->r[12] + 0x00000000u;
|
|
/* 02529844 */ cpu->r[3] = rbrew_read32(cpu->mem, _t55);
|
|
/* 02529848 */ _t56 = cpu->r[3] + 0x000046BCu;
|
|
/* 02529848 */ cpu->r[11] = rbrew_read32(cpu->mem, _t56);
|
|
/* 0252984C */ _t57 = cpu->r[11] + 0x0000002Cu;
|
|
/* 0252984C */ cpu->r[9] = rbrew_read32(cpu->mem, _t57);
|
|
/* 02529850 */ cpu->ctr = cpu->r[9];
|
|
/* 02529854 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02529858 */ _t58 = cpu->r[3] + 0x00000000u;
|
|
/* 02529858 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 0252985C */ cpu->r[12] = 0x100C0000u;
|
|
/* 02529860 */ _t59 = cpu->r[1] + 0x00000008u;
|
|
/* 02529860 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t59);
|
|
/* 02529864 */ _t60 = cpu->r[12] + 0x00002F2Cu;
|
|
/* 02529864 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t60);
|
|
/* 02529868 */ cpu->f[0] = cpu->f[7] - cpu->f[12];
|
|
/* 0252986C */ cpu->f[8] = fma(cpu->f[0], cpu->f[30], cpu->f[12]);
|
|
/* 02529870 */ _t61 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02529870 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t61);
|
|
/* 02529874 */ _t62 = cpu->r[1] + 0x00000008u;
|
|
/* 02529874 */ rbrew_write_f32(cpu->mem, _t62, cpu->f[8]);
|
|
/* 02529878 */ _t63 = cpu->r[3] + 0x00000004u;
|
|
/* 02529878 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t63);
|
|
/* 0252987C */ _t64 = cpu->r[31] + 0x00000080u;
|
|
/* 0252987C */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t64);
|
|
/* 02529880 */ cpu->f[10] = cpu->f[12] - cpu->f[9];
|
|
/* 02529884 */ /* nop */
|
|
/* 02529888 */ cpu->f[0] = fma(cpu->f[10], cpu->f[30], cpu->f[9]);
|
|
/* 0252988C */ _t65 = cpu->r[1] + 0x00000010u;
|
|
/* 0252988C */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t65);
|
|
/* 02529890 */ _t66 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02529890 */ rbrew_write_f32(cpu->mem, _t66, cpu->f[0]);
|
|
/* 02529894 */ _t67 = cpu->r[3] + 0x00000008u;
|
|
/* 02529894 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t67);
|
|
/* 02529898 */ cpu->r[11] = 0x100C0000u;
|
|
/* 0252989C */ /* nop */
|
|
/* 025298A0 */ cpu->f[8] = cpu->f[10] - cpu->f[6];
|
|
/* 025298A4 */ _t68 = cpu->r[11] + 0x00002EBCu;
|
|
/* 025298A4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t68);
|
|
/* 025298A8 */ /* nop */
|
|
/* 025298AC */ /* nop */
|
|
/* 025298B0 */ _t69 = cpu->r[1] + 0x0000003Cu;
|
|
/* 025298B0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t69);
|
|
/* 025298B4 */ cpu->f[6] = fma(cpu->f[8], cpu->f[30], cpu->f[6]);
|
|
/* 025298B8 */ _t70 = cpu->r[1] + 0x00000038u;
|
|
/* 025298B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t70);
|
|
/* 025298BC */ _t71 = cpu->r[1] + 0x0000006Cu;
|
|
/* 025298BC */ rbrew_write32(cpu->mem, _t71, cpu->r[10]);
|
|
/* 025298C0 */ _t72 = cpu->r[1] + 0x0000006Cu;
|
|
/* 025298C0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t72);
|
|
/* 025298C4 */ cpu->f[0] = cpu->f[6] - cpu->f[7];
|
|
/* 025298C8 */ _t73 = cpu->r[1] + 0x00000068u;
|
|
/* 025298C8 */ rbrew_write32(cpu->mem, _t73, cpu->r[0]);
|
|
/* 025298CC */ _t74 = cpu->r[1] + 0x00000068u;
|
|
/* 025298CC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t74);
|
|
/* 025298D0 */ cpu->f[8] = cpu->f[12] * cpu->f[12];
|
|
/* 025298D4 */ _t75 = cpu->r[1] + 0x00000040u;
|
|
/* 025298D4 */ rbrew_write_f32(cpu->mem, _t75, cpu->f[0]);
|
|
/* 025298D8 */ _t76 = cpu->r[1] + 0x00000040u;
|
|
/* 025298D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t76);
|
|
/* 025298DC */ cpu->f[9] = fma(cpu->f[13], cpu->f[13], cpu->f[8]);
|
|
/* 025298E0 */ _t77 = cpu->r[1] + 0x00000070u;
|
|
/* 025298E0 */ rbrew_write32(cpu->mem, _t77, cpu->r[0]);
|
|
/* 025298E4 */ _t78 = cpu->r[1] + 0x00000070u;
|
|
/* 025298E4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t78);
|
|
/* 025298E8 */ _t79 = cpu->r[1] + 0x00000014u;
|
|
/* 025298E8 */ rbrew_write_f32(cpu->mem, _t79, cpu->f[13]);
|
|
/* 025298EC */ cpu->f[7] = fma(cpu->f[11], cpu->f[11], cpu->f[9]);
|
|
/* 025298F0 */ _t80 = cpu->r[1] + 0x0000001Cu;
|
|
/* 025298F0 */ rbrew_write_f32(cpu->mem, _t80, cpu->f[11]);
|
|
/* 025298F4 */ _t81 = cpu->r[1] + 0x00000010u;
|
|
/* 025298F4 */ rbrew_write_f32(cpu->mem, _t81, cpu->f[6]);
|
|
/* 025298F8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[7], cpu->f[31]);
|
|
/* 025298FC */ _t82 = cpu->r[1] + 0x00000018u;
|
|
/* 025298FC */ rbrew_write_f32(cpu->mem, _t82, cpu->f[12]);
|
|
/* 02529900 */ _t83 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02529900 */ _t84 = _t83 & 0x00000001u;
|
|
/* 02529900 */ if (_t84) goto L_02529904; else goto L_02529948;
|
|
L_02529904: ; // 0x2529904
|
|
/* 02529904 */ cpu->r[10] = 0x100C0000u;
|
|
/* 02529908 */ cpu->r[12] = 0x100C0000u;
|
|
/* 0252990C */ _t85 = cpu->r[10] + 0x00002F20u;
|
|
/* 0252990C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t85);
|
|
/* 02529910 */ _t86 = cpu->r[12] + 0x00002F1Cu;
|
|
/* 02529910 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t86);
|
|
/* 02529914 */ _ft87 = sqrt(cpu->f[7]);
|
|
/* 02529914 */ _ft88 = (double)(int32_t)0x00000001u;
|
|
/* 02529914 */ cpu->f[13] = _ft88 / _ft87;
|
|
/* 02529918 */ cpu->f[8] = cpu->f[13] * cpu->f[13];
|
|
/* 0252991C */ cpu->f[9] = cpu->f[13] * cpu->f[0];
|
|
/* 02529920 */ cpu->f[8] = -fma(cpu->f[8], cpu->f[7], -(cpu->f[10]));
|
|
/* 02529924 */ cpu->f[13] = cpu->f[8] * cpu->f[9];
|
|
/* 02529928 */ /* nop */
|
|
/* 0252992C */ _t89 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252992C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t89);
|
|
/* 02529930 */ /* nop */
|
|
/* 02529934 */ /* nop */
|
|
/* 02529938 */ cpu->f[11] = cpu->f[11] * cpu->f[13];
|
|
/* 0252993C */ _t90 = cpu->r[1] + 0x00000014u;
|
|
/* 0252993C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t90);
|
|
/* 02529940 */ _t91 = cpu->r[1] + 0x00000018u;
|
|
/* 02529940 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t91);
|
|
/* 02529944 */ _t92 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02529944 */ rbrew_write_f32(cpu->mem, _t92, cpu->f[11]);
|
|
L_02529948: ; // 0x2529948
|
|
/* 02529948 */ _t93 = cpu->r[31] + 0x00000060u;
|
|
/* 02529948 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t93);
|
|
/* 0252994C */ cpu->r[4] = 0x100C0000u;
|
|
/* 02529950 */ _t94 = cpu->r[1] + 0x00000064u;
|
|
/* 02529950 */ rbrew_write_f32(cpu->mem, _t94, cpu->f[11]);
|
|
/* 02529954 */ cpu->r[4] = cpu->r[4] + 0x00002F3Cu;
|
|
/* 02529958 */ _t95 = cpu->r[1] + 0x00000050u;
|
|
/* 02529958 */ rbrew_write_f32(cpu->mem, _t95, cpu->f[8]);
|
|
/* 0252995C */ _t96 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0252995C */ rbrew_write_f32(cpu->mem, _t96, cpu->f[13]);
|
|
/* 02529960 */ cpu->r[5] = 0x0000029Au;
|
|
/* 02529964 */ _t97 = cpu->r[31] + 0x00000064u;
|
|
/* 02529964 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t97);
|
|
/* 02529968 */ _t98 = cpu->r[31] + 0x00000068u;
|
|
/* 02529968 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t98);
|
|
/* 0252996C */ _t99 = cpu->r[1] + 0x00000054u;
|
|
/* 0252996C */ rbrew_write_f32(cpu->mem, _t99, cpu->f[9]);
|
|
/* 02529970 */ _t100 = cpu->r[1] + 0x00000060u;
|
|
/* 02529970 */ rbrew_write_f32(cpu->mem, _t100, cpu->f[12]);
|
|
/* 02529974 */ cpu->r[3] = cpu->r[1] + 0x00000044u;
|
|
/* 02529978 */ _t101 = cpu->r[1] + 0x00000058u;
|
|
/* 02529978 */ rbrew_write_f32(cpu->mem, _t101, cpu->f[10]);
|
|
/* 0252997C */ Gambit_fn_0204D380(cpu);
|
|
/* 02529980 */ cpu->f[1] = cpu->f[30];
|
|
/* 02529984 */ cpu->r[3] = cpu->r[31] + 0x00000054u;
|
|
/* 02529988 */ cpu->r[4] = cpu->r[1] + 0x00000044u;
|
|
/* 0252998C */ Gambit_fn_0204B794(cpu);
|
|
/* 02529990 */ cpu->r[4] = cpu->r[1] + 0x0000005Cu;
|
|
/* 02529994 */ cpu->r[3] = cpu->r[31] + 0x0000006Cu;
|
|
/* 02529998 */ Gambit_fn_0204E7A8(cpu);
|
|
/* 0252999C */ cpu->r[11] = 0x100C0000u;
|
|
/* 025299A0 */ _t102 = cpu->r[11] + 0x00002F30u;
|
|
/* 025299A0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t102);
|
|
/* 025299A4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[1]);
|
|
/* 025299A8 */ _t103 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 025299A8 */ _t104 = _t103 & 0x00000001u;
|
|
/* 025299A8 */ if (_t104) goto L_02529B4C; else goto L_025299AC;
|
|
L_025299AC: ; // 0x25299ac
|
|
/* 025299AC */ cpu->r[11] = 0x100C0000u;
|
|
/* 025299B0 */ _t105 = cpu->r[11] + 0x00002F34u;
|
|
/* 025299B0 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t105);
|
|
/* 025299B4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[29]);
|
|
/* 025299B8 */ _t106 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 025299B8 */ _t107 = _t106 & 0x00000001u;
|
|
/* 025299B8 */ if (_t107) goto L_02529B4C; else goto L_025299BC;
|
|
L_025299BC: ; // 0x25299bc
|
|
/* 025299BC */ _t108 = cpu->r[1] + 0x00000010u;
|
|
/* 025299BC */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t108);
|
|
/* 025299C0 */ cpu->r[12] = 0x100C0000u;
|
|
/* 025299C4 */ _t109 = cpu->r[31] + 0x00000080u;
|
|
/* 025299C4 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t109);
|
|
/* 025299C8 */ /* nop */
|
|
/* 025299CC */ cpu->f[0] = cpu->f[7] - cpu->f[8];
|
|
/* 025299D0 */ _t110 = cpu->r[12] + 0x00002F1Cu;
|
|
/* 025299D0 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t110);
|
|
/* 025299D4 */ /* nop */
|
|
/* 025299D8 */ cpu->r[30] = 0x00000000u;
|
|
/* 025299DC */ _t111 = cpu->r[1] + 0x00000028u;
|
|
/* 025299DC */ rbrew_write_f32(cpu->mem, _t111, cpu->f[0]);
|
|
/* 025299E0 */ /* nop */
|
|
/* 025299E4 */ _t112 = cpu->r[31] + 0x000002D5u;
|
|
/* 025299E4 */ rbrew_write8(cpu->mem, _t112, (uint8_t)cpu->r[30]);
|
|
/* 025299E8 */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 025299EC */ /* nop */
|
|
/* 025299F0 */ Gambit_fn_0204ECF0(cpu);
|
|
/* 025299F4 */ /* nop */
|
|
/* 025299F8 */ _t113 = cpu->r[31] + 0x000002E0u;
|
|
/* 025299F8 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t113);
|
|
/* 025299FC */ _t114 = cpu->r[1] + 0x00000028u;
|
|
/* 025299FC */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t114);
|
|
/* 02529A00 */ cpu->f[1] = cpu->f[30];
|
|
/* 02529A04 */ /* nop */
|
|
/* 02529A08 */ cpu->f[13] = cpu->f[7] - cpu->f[9];
|
|
/* 02529A0C */ /* nop */
|
|
/* 02529A10 */ /* nop */
|
|
/* 02529A14 */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 02529A18 */ _t115 = cpu->r[1] + 0x00000034u;
|
|
/* 02529A18 */ rbrew_write_f32(cpu->mem, _t115, cpu->f[13]);
|
|
/* 02529A1C */ Gambit_fn_0204ECF0(cpu);
|
|
/* 02529A20 */ _t116 = cpu->r[1] + 0x00000034u;
|
|
/* 02529A20 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t116);
|
|
/* 02529A24 */ cpu->r[10] = 0x100C0000u;
|
|
/* 02529A28 */ /* nop */
|
|
/* 02529A2C */ _t117 = cpu->r[10] + 0x00002F38u;
|
|
/* 02529A2C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t117);
|
|
/* 02529A30 */ _t118 = cpu->r[31] + 0x000002E0u;
|
|
/* 02529A30 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t118);
|
|
/* 02529A34 */ /* nop */
|
|
/* 02529A38 */ cpu->f[12] = fma(cpu->f[11], cpu->f[12], cpu->f[13]);
|
|
/* 02529A3C */ /* nop */
|
|
/* 02529A40 */ /* nop */
|
|
/* 02529A44 */ _t119 = cpu->r[31] + 0x000002E0u;
|
|
/* 02529A44 */ rbrew_write_f32(cpu->mem, _t119, cpu->f[12]);
|
|
/* 02529A48 */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 02529A4C */ /* nop */
|
|
/* 02529A50 */ Gambit_fn_02C69350(cpu);
|
|
/* 02529A54 */ cpu->r[3] = cpu->r[31] + 0x000002D8u;
|
|
/* 02529A58 */ Gambit_fn_0204ECF0(cpu);
|
|
/* 02529A5C */ _t120 = cpu->r[31] + 0x00000080u;
|
|
/* 02529A5C */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t120);
|
|
/* 02529A60 */ _t121 = cpu->r[31] + 0x000002E0u;
|
|
/* 02529A60 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t121);
|
|
/* 02529A64 */ /* nop */
|
|
/* 02529A68 */ cpu->f[7] = cpu->f[7] + cpu->f[9];
|
|
/* 02529A6C */ /* nop */
|
|
/* 02529A70 */ /* nop */
|
|
/* 02529A74 */ cpu->r[3] = cpu->r[31] + 0x00000078u;
|
|
/* 02529A78 */ /* nop */
|
|
/* 02529A7C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02529A80 */ _t122 = cpu->r[31] + 0x00000080u;
|
|
/* 02529A80 */ rbrew_write_f32(cpu->mem, _t122, cpu->f[7]);
|
|
/* 02529A84 */ Gambit_fn_02C693A4(cpu);
|
|
/* 02529A88 */ cpu->r[12] = 0x100C0000u;
|
|
/* 02529A8C */ _t123 = cpu->r[12] + 0x00002F30u;
|
|
/* 02529A8C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t123);
|
|
/* 02529A90 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[1]);
|
|
/* 02529A94 */ _t124 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02529A94 */ _t125 = _t124 & 0x00000001u;
|
|
/* 02529A94 */ if (_t125) goto L_02529B4C; else goto L_02529A98;
|
|
L_02529A98: ; // 0x2529a98
|
|
/* 02529A98 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[29]);
|
|
/* 02529A9C */ _t126 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02529A9C */ _t127 = _t126 & 0x00000001u;
|
|
/* 02529A9C */ if (_t127) goto L_02529B4C; else goto L_02529AA0;
|
|
L_02529AA0: ; // 0x2529aa0
|
|
/* 02529AA0 */ _t128 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02529AA0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t128);
|
|
/* 02529AA4 */ cpu->r[11] = 0x00000001u;
|
|
/* 02529AA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02529AAC */ _t129 = cpu->r[31] + 0x000002D5u;
|
|
/* 02529AAC */ rbrew_write8(cpu->mem, _t129, (uint8_t)cpu->r[11]);
|
|
/* 02529AB0 */ _t130 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02529AB0 */ _t131 = _t130 & 0x00000001u;
|
|
/* 02529AB0 */ if (_t131) goto L_02529AB4; else goto L_02529AEC;
|
|
L_02529AB4: ; // 0x2529ab4
|
|
/* 02529AB4 */ _t132 = cpu->r[31] + 0x00000218u;
|
|
/* 02529AB4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t132);
|
|
/* 02529AB8 */ _t133 = cpu->r[31] + 0x00000214u;
|
|
/* 02529AB8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t133);
|
|
/* 02529ABC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], cpu->r[0]);
|
|
/* 02529AC0 */ _t134 = cpu->r[31] + 0x00000210u;
|
|
/* 02529AC0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t134);
|
|
/* 02529AC4 */ _t135 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02529AC4 */ _t136 = _t135 & 0x00000001u;
|
|
/* 02529AC4 */ if (_t136) goto L_02529ACC; else goto L_02529AC8;
|
|
L_02529AC8: ; // 0x2529ac8
|
|
/* 02529AC8 */ cpu->r[9] = cpu->r[9] - cpu->r[0];
|
|
L_02529ACC: ; // 0x2529acc
|
|
/* 02529ACC */ cpu->r[0] = rbrew_rlwinm(cpu->r[9], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02529AD0 */ cpu->r[12] = cpu->r[10] + cpu->r[0];
|
|
/* 02529AD4 */ _t137 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02529AD4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t137);
|
|
/* 02529AD8 */ _t138 = cpu->r[12] + 0x00000000u;
|
|
/* 02529AD8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t138);
|
|
/* 02529ADC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02529AE0 */ _t139 = cpu->r[31] + 0x000001ECu;
|
|
/* 02529AE0 */ rbrew_write32(cpu->mem, _t139, cpu->r[0]);
|
|
/* 02529AE4 */ _t140 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02529AE4 */ _t141 = _t140 & 0x00000001u;
|
|
/* 02529AE4 */ if (_t141) goto L_02529B04; else goto L_02529AE8;
|
|
L_02529AE8: ; // 0x2529ae8
|
|
/* 02529AE8 */ goto L_02529B2C;
|
|
L_02529AEC: ; // 0x2529aec
|
|
/* 02529AEC */ _t142 = cpu->r[31] + 0x00000210u;
|
|
/* 02529AEC */ cpu->r[12] = rbrew_read32(cpu->mem, _t142);
|
|
/* 02529AF0 */ _t143 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02529AF0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t143);
|
|
/* 02529AF4 */ _t144 = cpu->r[12] + 0x00000000u;
|
|
/* 02529AF4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t144);
|
|
/* 02529AF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02529AFC */ _t145 = cpu->r[31] + 0x000001ECu;
|
|
/* 02529AFC */ rbrew_write32(cpu->mem, _t145, cpu->r[0]);
|
|
/* 02529B00 */ _t146 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02529B00 */ _t147 = _t146 & 0x00000001u;
|
|
/* 02529B00 */ if (_t147) goto L_02529B04; else goto L_02529B2C;
|
|
L_02529B04: ; // 0x2529b04
|
|
/* 02529B04 */ _t148 = cpu->r[31] + 0x00000218u;
|
|
/* 02529B04 */ cpu->r[11] = rbrew_read32(cpu->mem, _t148);
|
|
/* 02529B08 */ _t149 = cpu->r[31] + 0x00000214u;
|
|
/* 02529B08 */ cpu->r[12] = rbrew_read32(cpu->mem, _t149);
|
|
/* 02529B0C */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 02529B10 */ _t150 = cpu->r[31] + 0x00000218u;
|
|
/* 02529B10 */ rbrew_write32(cpu->mem, _t150, cpu->r[11]);
|
|
/* 02529B14 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], cpu->r[12]);
|
|
/* 02529B18 */ _t151 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02529B18 */ cpu->r[9] = rbrew_read32(cpu->mem, _t151);
|
|
/* 02529B1C */ _t152 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02529B1C */ _t153 = _t152 & 0x00000001u;
|
|
/* 02529B1C */ if (_t153) goto L_02529B24; else goto L_02529B20;
|
|
L_02529B20: ; // 0x2529b20
|
|
/* 02529B20 */ _t154 = cpu->r[31] + 0x00000218u;
|
|
/* 02529B20 */ rbrew_write32(cpu->mem, _t154, cpu->r[30]);
|
|
L_02529B24: ; // 0x2529b24
|
|
/* 02529B24 */ cpu->r[9] = cpu->r[9] + 0xFFFFFFFFu;
|
|
/* 02529B28 */ _t155 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02529B28 */ rbrew_write32(cpu->mem, _t155, cpu->r[9]);
|
|
L_02529B2C: ; // 0x2529b2c
|
|
/* 02529B2C */ _t156 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02529B2C */ cpu->r[0] = rbrew_read32(cpu->mem, _t156);
|
|
/* 02529B30 */ _t157 = cpu->r[31] + 0x000002D8u;
|
|
/* 02529B30 */ rbrew_write_f32(cpu->mem, _t157, cpu->f[31]);
|
|
/* 02529B34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02529B38 */ _t158 = cpu->r[31] + 0x000002E0u;
|
|
/* 02529B38 */ rbrew_write_f32(cpu->mem, _t158, cpu->f[31]);
|
|
/* 02529B3C */ _t159 = cpu->r[31] + 0x000002DCu;
|
|
/* 02529B3C */ rbrew_write_f32(cpu->mem, _t159, cpu->f[31]);
|
|
/* 02529B40 */ _t160 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02529B40 */ _t161 = _t160 & 0x00000001u;
|
|
/* 02529B40 */ if (_t161) goto L_02529B44; else goto L_02529B4C;
|
|
L_02529B44: ; // 0x2529b44
|
|
/* 02529B44 */ cpu->r[3] = cpu->r[31];
|
|
/* 02529B48 */ Gambit_fn_02529604(cpu);
|
|
L_02529B4C: ; // 0x2529b4c
|
|
/* 02529B4C */ _t162 = cpu->r[1] + 0x000000A8u;
|
|
/* 02529B4C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t162);
|
|
/* 02529B50 */ _t163 = cpu->r[1] + 0x00000088u;
|
|
/* 02529B50 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t163);
|
|
/* 02529B54 */ _t164 = cpu->r[1] + 0x000000A0u;
|
|
/* 02529B54 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t164);
|
|
/* 02529B58 */ _t165 = cpu->r[1] + 0x00000098u;
|
|
/* 02529B58 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t165);
|
|
/* 02529B5C */ _t166 = cpu->r[1] + 0x00000080u;
|
|
/* 02529B5C */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t166);
|
|
/* 02529B60 */ _t167 = cpu->r[1] + 0x00000090u;
|
|
/* 02529B60 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t167);
|
|
/* 02529B64 */ _t168 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02529B64 */ cpu->r[31] = rbrew_read32(cpu->mem, _t168);
|
|
/* 02529B68 */ _t169 = cpu->r[1] + 0x00000078u;
|
|
/* 02529B68 */ cpu->r[30] = rbrew_read32(cpu->mem, _t169);
|
|
/* 02529B6C */ _t170 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02529B6C */ _t171 = _t170 & 0x00000001u;
|
|
/* 02529B6C */ if (_t171) goto L_02529B70; // else: addr-0 trap, fall-through
|
|
L_02529B70: ; // 0x2529b70
|
|
/* 02529B70 */ _t172 = cpu->r[1] + 0x000000B4u;
|
|
/* 02529B70 */ cpu->r[0] = rbrew_read32(cpu->mem, _t172);
|
|
/* 02529B74 */ cpu->lr = cpu->r[0];
|
|
/* 02529B78 */ cpu->r[1] = cpu->r[1] + 0x000000B0u;
|
|
/* 02529B7C */ return;
|
|
}
|
|
|
|
// fn_02529B80 @ 0x2529b80
|
|
void Gambit_fn_02529B80(CPUState* 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_02529B80: ; // 0x2529b80
|
|
/* 02529B80 */ cpu->r[0] = cpu->lr;
|
|
/* 02529B84 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02529B84 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02529B84 */ cpu->r[1] = _t0;
|
|
/* 02529B88 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02529B88 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02529B8C */ cpu->r[31] = cpu->r[3];
|
|
/* 02529B90 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02529B90 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02529B94 */ Gambit_fn_02529260(cpu);
|
|
/* 02529B98 */ _t3 = cpu->r[31] + 0x000001BCu;
|
|
/* 02529B98 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02529B9C */ /* nop */
|
|
/* 02529BA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000002u);
|
|
/* 02529BA4 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02529BA4 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02529BA4 */ if (_t5) goto L_02529BD8; else goto L_02529BA8;
|
|
L_02529BA8: ; // 0x2529ba8
|
|
/* 02529BA8 */ cpu->r[12] = 0x100C0000u;
|
|
/* 02529BAC */ _t6 = cpu->r[31] + 0x000001FCu;
|
|
/* 02529BAC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 02529BB0 */ _t7 = cpu->r[12] + 0x00002F14u;
|
|
/* 02529BB0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 02529BB4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[0]);
|
|
/* 02529BB8 */ _t8 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02529BB8 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02529BB8 */ if (_t9) goto L_02529C04; else goto L_02529BBC;
|
|
L_02529BBC: ; // 0x2529bbc
|
|
/* 02529BBC */ cpu->r[3] = cpu->r[31] + 0x000001B0u;
|
|
/* 02529BC0 */ cpu->r[4] = 0x00000002u;
|
|
/* 02529BC4 */ Gambit_fn_023A39EC(cpu);
|
|
/* 02529BC8 */ _t10 = cpu->r[31] + 0x000001BCu;
|
|
/* 02529BC8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t10);
|
|
/* 02529BCC */ /* nop */
|
|
/* 02529BD0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000002u);
|
|
/* 02529BD4 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02529BD4 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02529BD4 */ if (_t12) goto L_02529BD8; else goto L_02529C04;
|
|
L_02529BD8: ; // 0x2529bd8
|
|
/* 02529BD8 */ cpu->r[3] = cpu->r[31];
|
|
/* 02529BDC */ Gambit_fn_025292BC(cpu);
|
|
/* 02529BE0 */ _t13 = cpu->r[31] + 0x000001BCu;
|
|
/* 02529BE0 */ cpu->r[11] = rbrew_read8(cpu->mem, _t13);
|
|
/* 02529BE4 */ /* nop */
|
|
/* 02529BE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000002u);
|
|
/* 02529BEC */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02529BEC */ _t15 = _t14 & 0x00000001u;
|
|
/* 02529BEC */ if (_t15) goto L_02529BF0; else goto L_02529C04;
|
|
L_02529BF0: ; // 0x2529bf0
|
|
/* 02529BF0 */ _t16 = cpu->r[31] + 0x00000248u;
|
|
/* 02529BF0 */ cpu->r[12] = rbrew_read8(cpu->mem, _t16);
|
|
/* 02529BF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02529BF8 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02529BF8 */ _t18 = _t17 & 0x00000001u;
|
|
/* 02529BF8 */ if (_t18) goto L_02529C04; else goto L_02529BFC;
|
|
L_02529BFC: ; // 0x2529bfc
|
|
/* 02529BFC */ cpu->r[3] = cpu->r[31];
|
|
/* 02529C00 */ Gambit_fn_02529700(cpu);
|
|
L_02529C04: ; // 0x2529c04
|
|
/* 02529C04 */ cpu->r[3] = cpu->r[31];
|
|
/* 02529C08 */ Gambit_fn_024F7158(cpu);
|
|
/* 02529C0C */ _t19 = cpu->r[1] + 0x00000014u;
|
|
/* 02529C0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02529C10 */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02529C10 */ cpu->r[31] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02529C14 */ cpu->lr = cpu->r[0];
|
|
/* 02529C18 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02529C1C */ return;
|
|
}
|
|
|
|
// fn_02529B84 @ 0x2529b84
|
|
void Gambit_fn_02529B84(CPUState* 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_02529B84: ; // 0x2529b84
|
|
/* 02529B84 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02529B84 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02529B84 */ cpu->r[1] = _t0;
|
|
/* 02529B88 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02529B88 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02529B8C */ cpu->r[31] = cpu->r[3];
|
|
/* 02529B90 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02529B90 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02529B94 */ Gambit_fn_02529260(cpu);
|
|
/* 02529B98 */ _t3 = cpu->r[31] + 0x000001BCu;
|
|
/* 02529B98 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02529B9C */ /* nop */
|
|
/* 02529BA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000002u);
|
|
/* 02529BA4 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02529BA4 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02529BA4 */ if (_t5) goto L_02529BD8; else goto L_02529BA8;
|
|
L_02529BA8: ; // 0x2529ba8
|
|
/* 02529BA8 */ cpu->r[12] = 0x100C0000u;
|
|
/* 02529BAC */ _t6 = cpu->r[31] + 0x000001FCu;
|
|
/* 02529BAC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 02529BB0 */ _t7 = cpu->r[12] + 0x00002F14u;
|
|
/* 02529BB0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 02529BB4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[0]);
|
|
/* 02529BB8 */ _t8 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02529BB8 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02529BB8 */ if (_t9) goto L_02529C04; else goto L_02529BBC;
|
|
L_02529BBC: ; // 0x2529bbc
|
|
/* 02529BBC */ cpu->r[3] = cpu->r[31] + 0x000001B0u;
|
|
/* 02529BC0 */ cpu->r[4] = 0x00000002u;
|
|
/* 02529BC4 */ Gambit_fn_023A39EC(cpu);
|
|
/* 02529BC8 */ _t10 = cpu->r[31] + 0x000001BCu;
|
|
/* 02529BC8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t10);
|
|
/* 02529BCC */ /* nop */
|
|
/* 02529BD0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000002u);
|
|
/* 02529BD4 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02529BD4 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02529BD4 */ if (_t12) goto L_02529BD8; else goto L_02529C04;
|
|
L_02529BD8: ; // 0x2529bd8
|
|
/* 02529BD8 */ cpu->r[3] = cpu->r[31];
|
|
/* 02529BDC */ Gambit_fn_025292BC(cpu);
|
|
/* 02529BE0 */ _t13 = cpu->r[31] + 0x000001BCu;
|
|
/* 02529BE0 */ cpu->r[11] = rbrew_read8(cpu->mem, _t13);
|
|
/* 02529BE4 */ /* nop */
|
|
/* 02529BE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000002u);
|
|
/* 02529BEC */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02529BEC */ _t15 = _t14 & 0x00000001u;
|
|
/* 02529BEC */ if (_t15) goto L_02529BF0; else goto L_02529C04;
|
|
L_02529BF0: ; // 0x2529bf0
|
|
/* 02529BF0 */ _t16 = cpu->r[31] + 0x00000248u;
|
|
/* 02529BF0 */ cpu->r[12] = rbrew_read8(cpu->mem, _t16);
|
|
/* 02529BF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02529BF8 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02529BF8 */ _t18 = _t17 & 0x00000001u;
|
|
/* 02529BF8 */ if (_t18) goto L_02529C04; else goto L_02529BFC;
|
|
L_02529BFC: ; // 0x2529bfc
|
|
/* 02529BFC */ cpu->r[3] = cpu->r[31];
|
|
/* 02529C00 */ Gambit_fn_02529700(cpu);
|
|
L_02529C04: ; // 0x2529c04
|
|
/* 02529C04 */ cpu->r[3] = cpu->r[31];
|
|
/* 02529C08 */ Gambit_fn_024F7158(cpu);
|
|
/* 02529C0C */ _t19 = cpu->r[1] + 0x00000014u;
|
|
/* 02529C0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02529C10 */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02529C10 */ cpu->r[31] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02529C14 */ cpu->lr = cpu->r[0];
|
|
/* 02529C18 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02529C1C */ return;
|
|
}
|
|
|
|
// fn_02529C20 @ 0x2529c20
|
|
void Gambit_fn_02529C20(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_02529C20: ; // 0x2529c20
|
|
/* 02529C20 */ cpu->r[0] = cpu->lr;
|
|
/* 02529C24 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02529C24 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02529C24 */ cpu->r[1] = _t0;
|
|
/* 02529C28 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02529C28 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02529C2C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02529C2C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02529C30 */ _t3 = cpu->r[3] + 0x00000134u;
|
|
/* 02529C30 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02529C34 */ cpu->r[0] = 0x00000000u;
|
|
/* 02529C38 */ cpu->r[31] = cpu->r[3];
|
|
/* 02529C3C */ _t4 = cpu->r[12] + 0x000001C8u;
|
|
/* 02529C3C */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[0]);
|
|
/* 02529C40 */ Gambit_fn_024F5B90(cpu);
|
|
/* 02529C44 */ _t5 = cpu->r[31] + 0x00000134u;
|
|
/* 02529C44 */ cpu->r[11] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02529C48 */ cpu->r[0] = 0x00000001u;
|
|
/* 02529C4C */ _t6 = cpu->r[11] + 0x000001C8u;
|
|
/* 02529C4C */ rbrew_write8(cpu->mem, _t6, (uint8_t)cpu->r[0]);
|
|
/* 02529C50 */ _t7 = cpu->r[31] + 0x00000248u;
|
|
/* 02529C50 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 02529C54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02529C58 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02529C58 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02529C58 */ if (_t9) goto L_02529C70; else goto L_02529C5C;
|
|
L_02529C5C: ; // 0x2529c5c
|
|
/* 02529C5C */ _t10 = cpu->r[31] + 0x00000158u;
|
|
/* 02529C5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02529C60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02529C64 */ _t11 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02529C64 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02529C64 */ if (_t12) goto L_02529C68; else goto L_02529C70;
|
|
L_02529C68: ; // 0x2529c68
|
|
/* 02529C68 */ cpu->r[3] = cpu->r[31];
|
|
/* 02529C6C */ Gambit_fn_02529604(cpu);
|
|
L_02529C70: ; // 0x2529c70
|
|
/* 02529C70 */ _t13 = cpu->r[1] + 0x00000014u;
|
|
/* 02529C70 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02529C74 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02529C74 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02529C78 */ cpu->lr = cpu->r[0];
|
|
/* 02529C7C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02529C80 */ return;
|
|
}
|
|
|
|
// fn_02529C24 @ 0x2529c24
|
|
void Gambit_fn_02529C24(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_02529C24: ; // 0x2529c24
|
|
/* 02529C24 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02529C24 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02529C24 */ cpu->r[1] = _t0;
|
|
/* 02529C28 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02529C28 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02529C2C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02529C2C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02529C30 */ _t3 = cpu->r[3] + 0x00000134u;
|
|
/* 02529C30 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02529C34 */ cpu->r[0] = 0x00000000u;
|
|
/* 02529C38 */ cpu->r[31] = cpu->r[3];
|
|
/* 02529C3C */ _t4 = cpu->r[12] + 0x000001C8u;
|
|
/* 02529C3C */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[0]);
|
|
/* 02529C40 */ Gambit_fn_024F5B90(cpu);
|
|
/* 02529C44 */ _t5 = cpu->r[31] + 0x00000134u;
|
|
/* 02529C44 */ cpu->r[11] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02529C48 */ cpu->r[0] = 0x00000001u;
|
|
/* 02529C4C */ _t6 = cpu->r[11] + 0x000001C8u;
|
|
/* 02529C4C */ rbrew_write8(cpu->mem, _t6, (uint8_t)cpu->r[0]);
|
|
/* 02529C50 */ _t7 = cpu->r[31] + 0x00000248u;
|
|
/* 02529C50 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 02529C54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02529C58 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02529C58 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02529C58 */ if (_t9) goto L_02529C70; else goto L_02529C5C;
|
|
L_02529C5C: ; // 0x2529c5c
|
|
/* 02529C5C */ _t10 = cpu->r[31] + 0x00000158u;
|
|
/* 02529C5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02529C60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02529C64 */ _t11 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02529C64 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02529C64 */ if (_t12) goto L_02529C68; else goto L_02529C70;
|
|
L_02529C68: ; // 0x2529c68
|
|
/* 02529C68 */ cpu->r[3] = cpu->r[31];
|
|
/* 02529C6C */ Gambit_fn_02529604(cpu);
|
|
L_02529C70: ; // 0x2529c70
|
|
/* 02529C70 */ _t13 = cpu->r[1] + 0x00000014u;
|
|
/* 02529C70 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02529C74 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02529C74 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02529C78 */ cpu->lr = cpu->r[0];
|
|
/* 02529C7C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02529C80 */ return;
|
|
}
|
|
|
|
// fn_02529C84 @ 0x2529c84
|
|
void Gambit_fn_02529C84(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _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;
|
|
|
|
L_02529C84: ; // 0x2529c84
|
|
/* 02529C84 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 02529C84 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02529C84 */ cpu->r[1] = _t0;
|
|
/* 02529C88 */ /* nop */
|
|
/* 02529C8C */ cpu->r[0] = cpu->lr;
|
|
/* 02529C90 */ _t1 = cpu->r[1] + 0x00000030u;
|
|
/* 02529C90 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 02529C94 */ _t2 = cpu->r[1] + 0x00000044u;
|
|
/* 02529C94 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02529C98 */ /* nop */
|
|
/* 02529C9C */ _t3 = cpu->r[1] + 0x00000038u;
|
|
/* 02529C9C */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 02529CA0 */ cpu->r[30] = cpu->r[3];
|
|
/* 02529CA4 */ _t4 = cpu->r[30] + 0x000002D4u;
|
|
/* 02529CA4 */ cpu->r[10] = rbrew_read8(cpu->mem, _t4);
|
|
/* 02529CA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02529CAC */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02529CAC */ _t6 = _t5 & 0x00000001u;
|
|
/* 02529CAC */ if (_t6) goto L_02529DD8; else goto L_02529CB0;
|
|
L_02529CB0: ; // 0x2529cb0
|
|
/* 02529CB0 */ _t7 = cpu->r[30] + 0x000001ECu;
|
|
/* 02529CB0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02529CB4 */ _t8 = cpu->r[7] + 0x000046C0u;
|
|
/* 02529CB4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02529CB8 */ _t9 = cpu->r[9] + 0x00000000u;
|
|
/* 02529CB8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02529CBC */ _t10 = cpu->r[9] + 0x00000008u;
|
|
/* 02529CBC */ cpu->r[28] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02529CC0 */ cpu->r[6] = rbrew_rlwinm(cpu->r[8], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02529CC4 */ cpu->r[29] = cpu->r[28] + cpu->r[6];
|
|
/* 02529CC8 */ cpu->r[27] = 0x00000000u;
|
|
/* 02529CCC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], cpu->r[29]);
|
|
/* 02529CD0 */ _t11 = cpu->r[30] + 0x00000030u;
|
|
/* 02529CD0 */ cpu->r[26] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02529CD4 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02529CD4 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02529CD4 */ if (_t13) goto L_02529E5C; else goto L_02529CD8;
|
|
L_02529CD8: ; // 0x2529cd8
|
|
/* 02529CD8 */ cpu->r[12] = 0x100C0000u;
|
|
/* 02529CDC */ _t14 = cpu->r[12] + 0x00002F14u;
|
|
/* 02529CDC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t14);
|
|
L_02529CE0: ; // 0x2529ce0
|
|
/* 02529CE0 */ cpu->r[0] = cpu->r[27];
|
|
/* 02529CE4 */ _t15 = cpu->r[30] + 0x000001F4u;
|
|
/* 02529CE4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02529CE8 */ cpu->r[27] = cpu->r[27] + 0x00000001u;
|
|
/* 02529CEC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[10]);
|
|
/* 02529CF0 */ _t16 = cpu->r[30] + 0x000001F8u;
|
|
/* 02529CF0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02529CF4 */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02529CF4 */ _t18 = _t17 & 0x00000001u;
|
|
/* 02529CF4 */ if (_t18) goto L_02529CF8; else goto L_02529D00;
|
|
L_02529CF8: ; // 0x2529cf8
|
|
/* 02529CF8 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x0000000Cu);
|
|
/* 02529CFC */ cpu->r[31] = cpu->r[31] + cpu->r[0];
|
|
L_02529D00: ; // 0x2529d00
|
|
/* 02529D00 */ _t19 = cpu->r[31] + 0x00000000u;
|
|
/* 02529D00 */ cpu->r[8] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02529D04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02529D08 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02529D08 */ _t21 = _t20 & 0x00000001u;
|
|
/* 02529D08 */ if (_t21) goto L_02529D1C; else goto L_02529D0C;
|
|
L_02529D0C: ; // 0x2529d0c
|
|
/* 02529D0C */ _t22 = cpu->r[8] + 0x0000000Cu;
|
|
/* 02529D0C */ cpu->r[12] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02529D10 */ _t23 = cpu->r[31] + 0x00000004u;
|
|
/* 02529D10 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02529D14 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[0]);
|
|
/* 02529D18 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02529D18 */ _t25 = _t24 & 0x00000001u;
|
|
/* 02529D18 */ if (_t25) goto L_02529DAC; else goto L_02529D1C;
|
|
L_02529D1C: ; // 0x2529d1c
|
|
/* 02529D1C */ cpu->r[5] = 0x100C0000u;
|
|
/* 02529D20 */ cpu->r[4] = cpu->r[31];
|
|
/* 02529D24 */ cpu->r[3] = cpu->r[26];
|
|
/* 02529D28 */ cpu->r[5] = cpu->r[5] + 0x00002F50u;
|
|
/* 02529D2C */ cpu->r[6] = 0x00000000u;
|
|
/* 02529D30 */ Gambit_fn_027B72F0(cpu);
|
|
/* 02529D34 */ _t26 = cpu->r[28] + 0x00000000u;
|
|
/* 02529D34 */ cpu->r[3] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02529D38 */ _t27 = cpu->r[3] + 0x000046BCu;
|
|
/* 02529D38 */ cpu->r[5] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02529D3C */ _t28 = cpu->r[5] + 0x0000002Cu;
|
|
/* 02529D3C */ cpu->r[6] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02529D40 */ cpu->ctr = cpu->r[6];
|
|
/* 02529D44 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02529D48 */ _t29 = cpu->r[31] + 0x00000000u;
|
|
/* 02529D48 */ cpu->r[8] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02529D4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02529D50 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02529D50 */ _t31 = _t30 & 0x00000001u;
|
|
/* 02529D50 */ if (_t31) goto L_02529DAC; else goto L_02529D54;
|
|
L_02529D54: ; // 0x2529d54
|
|
/* 02529D54 */ _t32 = cpu->r[8] + 0x0000000Cu;
|
|
/* 02529D54 */ cpu->r[7] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02529D58 */ _t33 = cpu->r[31] + 0x00000004u;
|
|
/* 02529D58 */ cpu->r[9] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02529D5C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[9]);
|
|
/* 02529D60 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02529D60 */ _t35 = _t34 & 0x00000001u;
|
|
/* 02529D60 */ if (_t35) goto L_02529D64; else goto L_02529DAC;
|
|
L_02529D64: ; // 0x2529d64
|
|
/* 02529D64 */ _t36 = cpu->r[1] + 0x00000008u;
|
|
/* 02529D64 */ rbrew_write_f32(cpu->mem, _t36, cpu->f[31]);
|
|
/* 02529D68 */ _t37 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02529D68 */ rbrew_write_f32(cpu->mem, _t37, cpu->f[31]);
|
|
/* 02529D6C */ _t38 = cpu->r[1] + 0x00000010u;
|
|
/* 02529D6C */ rbrew_write_f32(cpu->mem, _t38, cpu->f[31]);
|
|
/* 02529D70 */ _t39 = cpu->r[3] + 0x00000000u;
|
|
/* 02529D70 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t39);
|
|
/* 02529D74 */ _t40 = cpu->r[8] + 0x00000064u;
|
|
/* 02529D74 */ rbrew_write_f32(cpu->mem, _t40, cpu->f[10]);
|
|
/* 02529D78 */ _t41 = cpu->r[3] + 0x00000004u;
|
|
/* 02529D78 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 02529D7C */ _t42 = cpu->r[8] + 0x00000068u;
|
|
/* 02529D7C */ rbrew_write_f32(cpu->mem, _t42, cpu->f[11]);
|
|
/* 02529D80 */ _t43 = cpu->r[3] + 0x00000008u;
|
|
/* 02529D80 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t43);
|
|
/* 02529D84 */ _t44 = cpu->r[8] + 0x0000006Cu;
|
|
/* 02529D84 */ rbrew_write_f32(cpu->mem, _t44, cpu->f[12]);
|
|
/* 02529D88 */ _t45 = cpu->r[1] + 0x00000008u;
|
|
/* 02529D88 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t45);
|
|
/* 02529D8C */ _t46 = cpu->r[8] + 0x0000012Cu;
|
|
/* 02529D8C */ cpu->r[4] = rbrew_read32(cpu->mem, _t46);
|
|
/* 02529D90 */ _t47 = cpu->r[8] + 0x00000070u;
|
|
/* 02529D90 */ rbrew_write_f32(cpu->mem, _t47, cpu->f[13]);
|
|
/* 02529D94 */ _t48 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02529D94 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 02529D98 */ cpu->r[4] = cpu->r[4] | 0x00000004u;
|
|
/* 02529D9C */ _t49 = cpu->r[8] + 0x00000074u;
|
|
/* 02529D9C */ rbrew_write_f32(cpu->mem, _t49, cpu->f[0]);
|
|
/* 02529DA0 */ _t50 = cpu->r[1] + 0x00000010u;
|
|
/* 02529DA0 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t50);
|
|
/* 02529DA4 */ _t51 = cpu->r[8] + 0x0000012Cu;
|
|
/* 02529DA4 */ rbrew_write32(cpu->mem, _t51, cpu->r[4]);
|
|
/* 02529DA8 */ _t52 = cpu->r[8] + 0x00000078u;
|
|
/* 02529DA8 */ rbrew_write_f32(cpu->mem, _t52, cpu->f[9]);
|
|
L_02529DAC: ; // 0x2529dac
|
|
/* 02529DAC */ cpu->r[28] = cpu->r[28] + 0x00000004u;
|
|
/* 02529DB0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], cpu->r[29]);
|
|
/* 02529DB4 */ _t53 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02529DB4 */ _t54 = _t53 & 0x00000001u;
|
|
/* 02529DB4 */ if (_t54) goto L_02529DB8; else goto L_02529CE0;
|
|
L_02529DB8: ; // 0x2529db8
|
|
/* 02529DB8 */ /* nop */
|
|
/* 02529DBC */ _t55 = cpu->r[1] + 0x00000038u;
|
|
/* 02529DBC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t55);
|
|
/* 02529DC0 */ _t56 = cpu->r[1] + 0x00000030u;
|
|
/* 02529DC0 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t56);
|
|
/* 02529DC4 */ _t57 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02529DC4 */ _t58 = _t57 & 0x00000001u;
|
|
/* 02529DC4 */ if (_t58) goto L_02529DC8; // else: addr-0 trap, fall-through
|
|
L_02529DC8: ; // 0x2529dc8
|
|
/* 02529DC8 */ _t59 = cpu->r[1] + 0x00000044u;
|
|
/* 02529DC8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t59);
|
|
/* 02529DCC */ cpu->lr = cpu->r[0];
|
|
/* 02529DD0 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 02529DD4 */ return;
|
|
L_02529DD8: ; // 0x2529dd8
|
|
/* 02529DD8 */ _t60 = cpu->r[30] + 0x000001F4u;
|
|
/* 02529DD8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t60);
|
|
/* 02529DDC */ _t61 = cpu->r[30] + 0x000001F8u;
|
|
/* 02529DDC */ cpu->r[30] = rbrew_read32(cpu->mem, _t61);
|
|
/* 02529DE0 */ cpu->r[5] = (uint32_t)((int32_t)cpu->r[10] * (int32_t)0x0000000Cu);
|
|
/* 02529DE4 */ cpu->r[31] = cpu->r[30] + cpu->r[5];
|
|
/* 02529DE8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[31]);
|
|
/* 02529DEC */ _t62 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02529DEC */ _t63 = _t62 & 0x00000001u;
|
|
/* 02529DEC */ if (_t63) goto L_02529E5C; else goto L_02529DF0;
|
|
L_02529DF0: ; // 0x2529df0
|
|
/* 02529DF0 */ cpu->r[28] = 0x00000001u;
|
|
L_02529DF4: ; // 0x2529df4
|
|
/* 02529DF4 */ _t64 = cpu->r[30] + 0x00000000u;
|
|
/* 02529DF4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t64);
|
|
/* 02529DF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 02529DFC */ _t65 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02529DFC */ _t66 = _t65 & 0x00000001u;
|
|
/* 02529DFC */ if (_t66) goto L_02529E50; else goto L_02529E00;
|
|
L_02529E00: ; // 0x2529e00
|
|
/* 02529E00 */ _t67 = cpu->r[6] + 0x0000000Cu;
|
|
/* 02529E00 */ cpu->r[7] = rbrew_read32(cpu->mem, _t67);
|
|
/* 02529E04 */ _t68 = cpu->r[30] + 0x00000004u;
|
|
/* 02529E04 */ cpu->r[0] = rbrew_read32(cpu->mem, _t68);
|
|
/* 02529E08 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[0]);
|
|
/* 02529E0C */ _t69 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02529E0C */ _t70 = _t69 & 0x00000001u;
|
|
/* 02529E0C */ if (_t70) goto L_02529E10; else goto L_02529E50;
|
|
L_02529E10: ; // 0x2529e10
|
|
/* 02529E10 */ _t71 = cpu->r[30] + 0x00000000u;
|
|
/* 02529E10 */ cpu->r[29] = rbrew_read32(cpu->mem, _t71);
|
|
/* 02529E14 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 02529E18 */ _t72 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02529E18 */ _t73 = _t72 & 0x00000001u;
|
|
/* 02529E18 */ if (_t73) goto L_02529E50; else goto L_02529E1C;
|
|
L_02529E1C: ; // 0x2529e1c
|
|
/* 02529E1C */ _t74 = cpu->r[29] + 0x0000000Cu;
|
|
/* 02529E1C */ cpu->r[9] = rbrew_read32(cpu->mem, _t74);
|
|
/* 02529E20 */ _t75 = cpu->r[30] + 0x00000004u;
|
|
/* 02529E20 */ cpu->r[0] = rbrew_read32(cpu->mem, _t75);
|
|
/* 02529E24 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[0]);
|
|
/* 02529E28 */ _t76 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02529E28 */ _t77 = _t76 & 0x00000001u;
|
|
/* 02529E28 */ if (_t77) goto L_02529E2C; else goto L_02529E50;
|
|
L_02529E2C: ; // 0x2529e2c
|
|
/* 02529E2C */ _t78 = cpu->r[29] + 0x00000028u;
|
|
/* 02529E2C */ cpu->r[3] = rbrew_read32(cpu->mem, _t78);
|
|
/* 02529E30 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02529E34 */ _t79 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02529E34 */ _t80 = _t79 & 0x00000001u;
|
|
/* 02529E34 */ if (_t80) goto L_02529E4C; else goto L_02529E38;
|
|
L_02529E38: ; // 0x2529e38
|
|
/* 02529E38 */ _t81 = cpu->r[3] + 0x00000050u;
|
|
/* 02529E38 */ cpu->r[12] = rbrew_read32(cpu->mem, _t81);
|
|
/* 02529E3C */ _t82 = cpu->r[12] + 0x00000024u;
|
|
/* 02529E3C */ cpu->r[5] = rbrew_read32(cpu->mem, _t82);
|
|
/* 02529E40 */ cpu->ctr = cpu->r[5];
|
|
/* 02529E44 */ cpu->r[4] = 0xFFFFFFFFu;
|
|
/* 02529E48 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02529E4C: ; // 0x2529e4c
|
|
/* 02529E4C */ _t83 = cpu->r[29] + 0x0000004Cu;
|
|
/* 02529E4C */ rbrew_write8(cpu->mem, _t83, (uint8_t)cpu->r[28]);
|
|
L_02529E50: ; // 0x2529e50
|
|
/* 02529E50 */ cpu->r[30] = cpu->r[30] + 0x0000000Cu;
|
|
/* 02529E54 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[31]);
|
|
/* 02529E58 */ _t84 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02529E58 */ _t85 = _t84 & 0x00000001u;
|
|
/* 02529E58 */ if (_t85) goto L_02529E5C; else goto L_02529DF4;
|
|
L_02529E5C: ; // 0x2529e5c
|
|
/* 02529E5C */ /* nop */
|
|
/* 02529E60 */ _t86 = cpu->r[1] + 0x00000038u;
|
|
/* 02529E60 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t86);
|
|
/* 02529E64 */ _t87 = cpu->r[1] + 0x00000030u;
|
|
/* 02529E64 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t87);
|
|
/* 02529E68 */ _t88 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02529E68 */ _t89 = _t88 & 0x00000001u;
|
|
/* 02529E68 */ if (_t89) goto L_02529E6C; // else: addr-0 trap, fall-through
|
|
L_02529E6C: ; // 0x2529e6c
|
|
/* 02529E6C */ _t90 = cpu->r[1] + 0x00000044u;
|
|
/* 02529E6C */ cpu->r[0] = rbrew_read32(cpu->mem, _t90);
|
|
/* 02529E70 */ cpu->lr = cpu->r[0];
|
|
/* 02529E74 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 02529E78 */ return;
|
|
}
|
|
|
|
// fn_02529E7C @ 0x2529e7c
|
|
void Gambit_fn_02529E7C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_02529E7C: ; // 0x2529e7c
|
|
/* 02529E7C */ cpu->r[0] = cpu->lr;
|
|
/* 02529E80 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02529E80 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02529E80 */ cpu->r[1] = _t0;
|
|
/* 02529E84 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02529E84 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02529E88 */ cpu->r[31] = cpu->r[3];
|
|
/* 02529E8C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02529E8C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02529E90 */ Gambit_fn_02529C84(cpu);
|
|
/* 02529E94 */ cpu->r[3] = cpu->r[31];
|
|
/* 02529E98 */ Gambit_fn_024F606C(cpu);
|
|
/* 02529E9C */ cpu->r[3] = cpu->r[31];
|
|
/* 02529EA0 */ Gambit_fn_024F607C(cpu);
|
|
/* 02529EA4 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02529EA4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02529EA8 */ cpu->lr = cpu->r[0];
|
|
/* 02529EAC */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02529EAC */ cpu->r[31] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02529EB0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02529EB4 */ return;
|
|
}
|
|
|
|
// fn_02529E80 @ 0x2529e80
|
|
void Gambit_fn_02529E80(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_02529E80: ; // 0x2529e80
|
|
/* 02529E80 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02529E80 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02529E80 */ cpu->r[1] = _t0;
|
|
/* 02529E84 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02529E84 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02529E88 */ cpu->r[31] = cpu->r[3];
|
|
/* 02529E8C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02529E8C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02529E90 */ Gambit_fn_02529C84(cpu);
|
|
/* 02529E94 */ cpu->r[3] = cpu->r[31];
|
|
/* 02529E98 */ Gambit_fn_024F606C(cpu);
|
|
/* 02529E9C */ cpu->r[3] = cpu->r[31];
|
|
/* 02529EA0 */ Gambit_fn_024F607C(cpu);
|
|
/* 02529EA4 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02529EA4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02529EA8 */ cpu->lr = cpu->r[0];
|
|
/* 02529EAC */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02529EAC */ cpu->r[31] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02529EB0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02529EB4 */ return;
|
|
}
|
|
|
|
// fn_02529EB8 @ 0x2529eb8
|
|
void Gambit_fn_02529EB8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02529EB8: ; // 0x2529eb8
|
|
/* 02529EB8 */ _t0 = cpu->r[3] + 0x000001BCu;
|
|
/* 02529EB8 */ cpu->r[12] = rbrew_read8(cpu->mem, _t0);
|
|
/* 02529EBC */ /* nop */
|
|
/* 02529EC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000002u);
|
|
/* 02529EC4 */ cpu->r[0] = 0x00000000u;
|
|
/* 02529EC8 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02529EC8 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02529EC8 */ if (_t2) goto L_02529ECC; else goto L_02529EDC;
|
|
L_02529ECC: ; // 0x2529ecc
|
|
/* 02529ECC */ _t3 = cpu->r[3] + 0x000002E4u;
|
|
/* 02529ECC */ cpu->r[12] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02529ED0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02529ED4 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02529ED4 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02529ED4 */ if (_t5) goto L_02529ED8; else goto L_02529EDC;
|
|
L_02529ED8: ; // 0x2529ed8
|
|
/* 02529ED8 */ cpu->r[0] = 0x00000001u;
|
|
L_02529EDC: ; // 0x2529edc
|
|
/* 02529EDC */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 02529EE0 */ return;
|
|
}
|
|
|
|
// fn_02529EE4 @ 0x2529ee4
|
|
void Gambit_fn_02529EE4(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02529EE4: ; // 0x2529ee4
|
|
/* 02529EE4 */ _t0 = cpu->r[3] + 0x000001BCu;
|
|
/* 02529EE4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 02529EE8 */ /* nop */
|
|
/* 02529EEC */ cpu->r[0] = cpu->r[0] ^ 0x00000002u;
|
|
/* 02529EF0 */ cpu->r[0] = rbrew_clz32(cpu->r[0]);
|
|
/* 02529EF4 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 02529EF8 */ return;
|
|
}
|
|
|
|
// fn_02529EFC @ 0x2529efc
|
|
void Gambit_fn_02529EFC(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02529EFC: ; // 0x2529efc
|
|
/* 02529EFC */ _t0 = cpu->r[3] + 0x000002D5u;
|
|
/* 02529EFC */ cpu->r[3] = rbrew_read8(cpu->mem, _t0);
|
|
/* 02529F00 */ return;
|
|
}
|
|
|
|
// fn_02529F04 @ 0x2529f04
|
|
void Gambit_fn_02529F04(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _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, _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;
|
|
double _ft208, _ft209;
|
|
|
|
L_02529F04: ; // 0x2529f04
|
|
/* 02529F04 */ _t0 = cpu->r[1] + 0xFFFFFEC0u;
|
|
/* 02529F04 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02529F04 */ cpu->r[1] = _t0;
|
|
/* 02529F08 */ /* nop */
|
|
/* 02529F0C */ cpu->r[0] = cpu->lr;
|
|
/* 02529F10 */ _t1 = cpu->r[1] + 0x00000130u;
|
|
/* 02529F10 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 02529F14 */ /* nop */
|
|
/* 02529F18 */ _t2 = cpu->r[1] + 0x00000138u;
|
|
/* 02529F18 */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 02529F1C */ _t3 = cpu->r[1] + 0x00000120u;
|
|
/* 02529F1C */ rbrew_write_f64(cpu->mem, _t3, cpu->f[30]);
|
|
/* 02529F20 */ _t4 = cpu->r[1] + 0x00000144u;
|
|
/* 02529F20 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02529F24 */ /* nop */
|
|
/* 02529F28 */ _t5 = cpu->r[1] + 0x00000128u;
|
|
/* 02529F28 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[30]);
|
|
/* 02529F2C */ cpu->r[30] = cpu->r[3];
|
|
/* 02529F30 */ _t6 = cpu->r[30] + 0x00000248u;
|
|
/* 02529F30 */ cpu->r[0] = rbrew_read8(cpu->mem, _t6);
|
|
/* 02529F34 */ cpu->r[28] = cpu->r[4];
|
|
/* 02529F38 */ cpu->r[10] = 0x00000001u;
|
|
/* 02529F3C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02529F40 */ _t7 = cpu->r[30] + 0x000002D4u;
|
|
/* 02529F40 */ rbrew_write8(cpu->mem, _t7, (uint8_t)cpu->r[10]);
|
|
/* 02529F44 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02529F44 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02529F44 */ if (_t9) goto L_02529F50; else goto L_02529F48;
|
|
L_02529F48: ; // 0x2529f48
|
|
/* 02529F48 */ cpu->r[3] = cpu->r[30];
|
|
/* 02529F4C */ Gambit_fn_02529604(cpu);
|
|
L_02529F50: ; // 0x2529f50
|
|
/* 02529F50 */ _t10 = cpu->r[30] + 0x0000021Cu;
|
|
/* 02529F50 */ cpu->r[7] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02529F54 */ _t11 = cpu->r[30] + 0x00000214u;
|
|
/* 02529F54 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02529F58 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], cpu->r[0]);
|
|
/* 02529F5C */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02529F5C */ _t13 = _t12 & 0x00000001u;
|
|
/* 02529F5C */ if (_t13) goto L_02529F60; else goto L_0252A64C;
|
|
L_02529F60: ; // 0x2529f60
|
|
/* 02529F60 */ cpu->r[10] = 0x100C0000u;
|
|
/* 02529F64 */ cpu->r[8] = 0x100C0000u;
|
|
/* 02529F68 */ cpu->r[27] = 0x00000000u;
|
|
/* 02529F6C */ _t14 = cpu->r[10] + 0x00002F58u;
|
|
/* 02529F6C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 02529F70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 02529F74 */ _t15 = cpu->r[8] + 0x00002F5Cu;
|
|
/* 02529F74 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 02529F78 */ cpu->r[29] = cpu->r[27];
|
|
/* 02529F7C */ _t16 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02529F7C */ _t17 = _t16 & 0x00000001u;
|
|
/* 02529F7C */ if (_t17) goto L_0252A204; else goto L_02529F80;
|
|
L_02529F80: ; // 0x2529f80
|
|
/* 02529F80 */ _t18 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02529F80 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02529F80 */ if (_t19) goto L_0252A1DC; else goto L_02529F84;
|
|
L_02529F84: ; // 0x2529f84
|
|
/* 02529F84 */ cpu->r[3] = cpu->r[30];
|
|
/* 02529F88 */ Gambit_fn_02529EFC(cpu);
|
|
/* 02529F8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02529F90 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02529F90 */ _t21 = _t20 & 0x00000001u;
|
|
/* 02529F90 */ if (_t21) goto L_02529F94; else goto L_0252A190;
|
|
L_02529F94: ; // 0x2529f94
|
|
/* 02529F94 */ _t22 = cpu->r[30] + 0x00000078u;
|
|
/* 02529F94 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 02529F98 */ _t23 = cpu->r[30] + 0x0000007Cu;
|
|
/* 02529F98 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 02529F9C */ _t24 = cpu->r[1] + 0x00000008u;
|
|
/* 02529F9C */ rbrew_write_f32(cpu->mem, _t24, cpu->f[6]);
|
|
/* 02529FA0 */ _t25 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02529FA0 */ rbrew_write_f32(cpu->mem, _t25, cpu->f[9]);
|
|
/* 02529FA4 */ cpu->r[5] = cpu->r[1] + 0x0000005Cu;
|
|
/* 02529FA8 */ _t26 = cpu->r[1] + 0x00000054u;
|
|
/* 02529FA8 */ rbrew_write32(cpu->mem, _t26, cpu->r[27]);
|
|
/* 02529FAC */ _t27 = cpu->r[30] + 0x00000080u;
|
|
/* 02529FAC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 02529FB0 */ _t28 = cpu->r[1] + 0x00000050u;
|
|
/* 02529FB0 */ rbrew_write32(cpu->mem, _t28, cpu->r[27]);
|
|
/* 02529FB4 */ cpu->r[4] = 0x00000002u;
|
|
/* 02529FB8 */ _t29 = cpu->r[1] + 0x00000058u;
|
|
/* 02529FB8 */ rbrew_write32(cpu->mem, _t29, cpu->r[27]);
|
|
/* 02529FBC */ cpu->r[3] = cpu->r[1] + 0x00000050u;
|
|
/* 02529FC0 */ _t30 = cpu->r[1] + 0x00000010u;
|
|
/* 02529FC0 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[10]);
|
|
/* 02529FC4 */ Gambit_fn_028023A8(cpu);
|
|
/* 02529FC8 */ _t31 = cpu->r[1] + 0x00000050u;
|
|
/* 02529FC8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t31);
|
|
/* 02529FCC */ _t32 = cpu->r[1] + 0x00000054u;
|
|
/* 02529FCC */ cpu->r[0] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02529FD0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], cpu->r[0]);
|
|
/* 02529FD4 */ _t33 = cpu->r[30] + 0x000001ECu;
|
|
/* 02529FD4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02529FD8 */ _t34 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02529FD8 */ _t35 = _t34 & 0x00000001u;
|
|
/* 02529FD8 */ if (_t35) goto L_02529FDC; else goto L_02529FF8;
|
|
L_02529FDC: ; // 0x2529fdc
|
|
/* 02529FDC */ _t36 = cpu->r[1] + 0x00000058u;
|
|
/* 02529FDC */ cpu->r[8] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02529FE0 */ cpu->r[5] = rbrew_rlwinm(cpu->r[5], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02529FE4 */ _t37 = cpu->r[5] + cpu->r[8];
|
|
/* 02529FE4 */ rbrew_write32(cpu->mem, _t37, cpu->r[7]);
|
|
/* 02529FE8 */ _t38 = cpu->r[1] + 0x00000050u;
|
|
/* 02529FE8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02529FEC */ _t39 = cpu->r[1] + 0x00000054u;
|
|
/* 02529FEC */ cpu->r[0] = rbrew_read32(cpu->mem, _t39);
|
|
/* 02529FF0 */ cpu->r[5] = cpu->r[5] + 0x00000001u;
|
|
/* 02529FF4 */ _t40 = cpu->r[1] + 0x00000050u;
|
|
/* 02529FF4 */ rbrew_write32(cpu->mem, _t40, cpu->r[5]);
|
|
L_02529FF8: ; // 0x2529ff8
|
|
/* 02529FF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], cpu->r[0]);
|
|
/* 02529FFC */ _t41 = cpu->r[30] + 0x000001F0u;
|
|
/* 02529FFC */ cpu->r[0] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0252A000 */ _t42 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0252A000 */ _t43 = _t42 & 0x00000001u;
|
|
/* 0252A000 */ if (_t43) goto L_0252A004; else goto L_0252A01C;
|
|
L_0252A004: ; // 0x252a004
|
|
/* 0252A004 */ _t44 = cpu->r[1] + 0x00000058u;
|
|
/* 0252A004 */ cpu->r[4] = rbrew_read32(cpu->mem, _t44);
|
|
/* 0252A008 */ cpu->r[10] = rbrew_rlwinm(cpu->r[5], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0252A00C */ _t45 = cpu->r[10] + cpu->r[4];
|
|
/* 0252A00C */ rbrew_write32(cpu->mem, _t45, cpu->r[0]);
|
|
/* 0252A010 */ _t46 = cpu->r[1] + 0x00000050u;
|
|
/* 0252A010 */ cpu->r[5] = rbrew_read32(cpu->mem, _t46);
|
|
/* 0252A014 */ cpu->r[5] = cpu->r[5] + 0x00000001u;
|
|
/* 0252A018 */ _t47 = cpu->r[1] + 0x00000050u;
|
|
/* 0252A018 */ rbrew_write32(cpu->mem, _t47, cpu->r[5]);
|
|
L_0252A01C: ; // 0x252a01c
|
|
/* 0252A01C */ _t48 = cpu->r[1] + 0x00000058u;
|
|
/* 0252A01C */ cpu->r[31] = rbrew_read32(cpu->mem, _t48);
|
|
/* 0252A020 */ cpu->r[0] = rbrew_rlwinm(cpu->r[5], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0252A024 */ cpu->r[25] = cpu->r[31] + cpu->r[0];
|
|
/* 0252A028 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[25]);
|
|
/* 0252A02C */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252A02C */ _t50 = _t49 & 0x00000001u;
|
|
/* 0252A02C */ if (_t50) goto L_0252A098; else goto L_0252A030;
|
|
L_0252A030: ; // 0x252a030
|
|
/* 0252A030 */ cpu->r[26] = cpu->r[1] + 0x000000A0u;
|
|
L_0252A034: ; // 0x252a034
|
|
/* 0252A034 */ _t51 = cpu->r[31] + 0x00000000u;
|
|
/* 0252A034 */ cpu->r[3] = rbrew_read32(cpu->mem, _t51);
|
|
/* 0252A038 */ _t52 = cpu->r[3] + 0x000046BCu;
|
|
/* 0252A038 */ cpu->r[10] = rbrew_read32(cpu->mem, _t52);
|
|
/* 0252A03C */ _t53 = cpu->r[10] + 0x0000002Cu;
|
|
/* 0252A03C */ cpu->r[5] = rbrew_read32(cpu->mem, _t53);
|
|
/* 0252A040 */ cpu->ctr = cpu->r[5];
|
|
/* 0252A044 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252A048 */ _t54 = cpu->r[3] + 0x00000004u;
|
|
/* 0252A048 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 0252A04C */ cpu->r[3] = cpu->r[1] + 0x000000A0u;
|
|
/* 0252A050 */ cpu->r[4] = cpu->r[28];
|
|
/* 0252A054 */ Gambit_fn_0239F80C(cpu);
|
|
/* 0252A058 */ _t55 = cpu->r[31] + 0x00000000u;
|
|
/* 0252A058 */ cpu->r[3] = rbrew_read32(cpu->mem, _t55);
|
|
/* 0252A05C */ _t56 = cpu->r[3] + 0x000046BCu;
|
|
/* 0252A05C */ cpu->r[7] = rbrew_read32(cpu->mem, _t56);
|
|
/* 0252A060 */ _t57 = cpu->r[7] + 0x0000002Cu;
|
|
/* 0252A060 */ cpu->r[8] = rbrew_read32(cpu->mem, _t57);
|
|
/* 0252A064 */ cpu->ctr = cpu->r[8];
|
|
/* 0252A068 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252A06C */ cpu->r[4] = cpu->r[26];
|
|
/* 0252A070 */ Gambit_fn_02C693A4(cpu);
|
|
/* 0252A074 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[31]);
|
|
/* 0252A078 */ _t58 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252A078 */ _t59 = _t58 & 0x00000001u;
|
|
/* 0252A078 */ if (_t59) goto L_0252A08C; else goto L_0252A07C;
|
|
L_0252A07C: ; // 0x252a07c
|
|
/* 0252A07C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[30]);
|
|
/* 0252A080 */ _t60 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0252A080 */ _t61 = _t60 & 0x00000001u;
|
|
/* 0252A080 */ if (_t61) goto L_0252A084; else goto L_0252A08C;
|
|
L_0252A084: ; // 0x252a084
|
|
/* 0252A084 */ cpu->f[30] = cpu->f[1];
|
|
/* 0252A088 */ _t62 = cpu->r[31] + 0x00000000u;
|
|
/* 0252A088 */ cpu->r[29] = rbrew_read32(cpu->mem, _t62);
|
|
L_0252A08C: ; // 0x252a08c
|
|
/* 0252A08C */ cpu->r[31] = cpu->r[31] + 0x00000004u;
|
|
/* 0252A090 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[25]);
|
|
/* 0252A094 */ _t63 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252A094 */ _t64 = _t63 & 0x00000001u;
|
|
/* 0252A094 */ if (_t64) goto L_0252A098; else goto L_0252A034;
|
|
L_0252A098: ; // 0x252a098
|
|
/* 0252A098 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0252A09C */ _t65 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252A09C */ _t66 = _t65 & 0x00000001u;
|
|
/* 0252A09C */ if (_t66) goto L_0252A64C; else goto L_0252A0A0;
|
|
L_0252A0A0: ; // 0x252a0a0
|
|
/* 0252A0A0 */ _t67 = cpu->r[30] + 0x000001ECu;
|
|
/* 0252A0A0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t67);
|
|
/* 0252A0A4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[9]);
|
|
/* 0252A0A8 */ _t68 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252A0A8 */ _t69 = _t68 & 0x00000001u;
|
|
/* 0252A0A8 */ if (_t69) goto L_0252A0AC; else goto L_0252A348;
|
|
L_0252A0AC: ; // 0x252a0ac
|
|
/* 0252A0AC */ _t70 = cpu->r[30] + 0x000001F0u;
|
|
/* 0252A0AC */ cpu->r[10] = rbrew_read32(cpu->mem, _t70);
|
|
/* 0252A0B0 */ cpu->r[0] = 0x100C0000u;
|
|
/* 0252A0B4 */ _t71 = cpu->r[1] + 0x00000064u;
|
|
/* 0252A0B4 */ rbrew_write32(cpu->mem, _t71, cpu->r[27]);
|
|
/* 0252A0B8 */ cpu->r[0] = cpu->r[0] + 0x00002E84u;
|
|
/* 0252A0BC */ _t72 = cpu->r[30] + 0x000001ECu;
|
|
/* 0252A0BC */ rbrew_write32(cpu->mem, _t72, cpu->r[10]);
|
|
/* 0252A0C0 */ cpu->r[5] = 0x100C0000u;
|
|
/* 0252A0C4 */ _t73 = cpu->r[1] + 0x0000006Cu;
|
|
/* 0252A0C4 */ rbrew_write32(cpu->mem, _t73, cpu->r[0]);
|
|
/* 0252A0C8 */ cpu->r[5] = cpu->r[5] + 0x00002F64u;
|
|
/* 0252A0CC */ _t74 = cpu->r[30] + 0x00000030u;
|
|
/* 0252A0CC */ cpu->r[3] = rbrew_read32(cpu->mem, _t74);
|
|
/* 0252A0D0 */ cpu->r[6] = 0x00000000u;
|
|
/* 0252A0D4 */ cpu->r[4] = cpu->r[1] + 0x00000064u;
|
|
/* 0252A0D8 */ _t75 = cpu->r[1] + 0x00000068u;
|
|
/* 0252A0D8 */ rbrew_write32(cpu->mem, _t75, cpu->r[27]);
|
|
/* 0252A0DC */ Gambit_fn_027B72F0(cpu);
|
|
/* 0252A0E0 */ cpu->r[10] = 0x101F0000u;
|
|
/* 0252A0E4 */ _t76 = cpu->r[1] + 0x00000010u;
|
|
/* 0252A0E4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t76);
|
|
/* 0252A0E8 */ cpu->r[10] = cpu->r[10] + 0x00006350u;
|
|
/* 0252A0EC */ _t77 = cpu->r[10] + 0x00000008u;
|
|
/* 0252A0EC */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t77);
|
|
/* 0252A0F0 */ _t78 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252A0F0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t78);
|
|
/* 0252A0F4 */ _t79 = cpu->r[1] + 0x00000034u;
|
|
/* 0252A0F4 */ rbrew_write_f32(cpu->mem, _t79, cpu->f[8]);
|
|
/* 0252A0F8 */ _t80 = cpu->r[10] + 0x00000000u;
|
|
/* 0252A0F8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t80);
|
|
/* 0252A0FC */ _t81 = cpu->r[1] + 0x00000048u;
|
|
/* 0252A0FC */ rbrew_write_f32(cpu->mem, _t81, cpu->f[0]);
|
|
/* 0252A100 */ _t82 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0252A100 */ rbrew_write_f32(cpu->mem, _t82, cpu->f[12]);
|
|
/* 0252A104 */ _t83 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0252A104 */ rbrew_write_f32(cpu->mem, _t83, cpu->f[11]);
|
|
/* 0252A108 */ _t84 = cpu->r[1] + 0x00000008u;
|
|
/* 0252A108 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t84);
|
|
/* 0252A10C */ _t85 = cpu->r[10] + 0x00000004u;
|
|
/* 0252A10C */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t85);
|
|
/* 0252A110 */ _t86 = cpu->r[1] + 0x00000044u;
|
|
/* 0252A110 */ rbrew_write_f32(cpu->mem, _t86, cpu->f[11]);
|
|
/* 0252A114 */ _t87 = cpu->r[1] + 0x00000030u;
|
|
/* 0252A114 */ rbrew_write_f32(cpu->mem, _t87, cpu->f[7]);
|
|
/* 0252A118 */ _t88 = cpu->r[29] + 0x000046BCu;
|
|
/* 0252A118 */ cpu->r[7] = rbrew_read32(cpu->mem, _t88);
|
|
/* 0252A11C */ _t89 = cpu->r[7] + 0x0000002Cu;
|
|
/* 0252A11C */ cpu->r[0] = rbrew_read32(cpu->mem, _t89);
|
|
/* 0252A120 */ cpu->ctr = cpu->r[0];
|
|
/* 0252A124 */ cpu->r[3] = cpu->r[29];
|
|
/* 0252A128 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252A12C */ /* nop */
|
|
/* 0252A130 */ /* nop */
|
|
/* 0252A134 */ _t90 = cpu->r[1] + 0x00000010u;
|
|
/* 0252A134 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t90);
|
|
/* 0252A138 */ /* nop */
|
|
/* 0252A13C */ /* nop */
|
|
/* 0252A140 */ _t91 = cpu->r[3] + 0x00000008u;
|
|
/* 0252A140 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t91);
|
|
/* 0252A144 */ _t92 = cpu->r[1] + 0x000000BCu;
|
|
/* 0252A144 */ cpu->r[7] = rbrew_read32(cpu->mem, _t92);
|
|
/* 0252A148 */ cpu->f[0] = cpu->f[6] - cpu->f[7];
|
|
/* 0252A14C */ _t93 = cpu->r[1] + 0x000000B8u;
|
|
/* 0252A14C */ cpu->r[6] = rbrew_read32(cpu->mem, _t93);
|
|
/* 0252A150 */ _t94 = cpu->r[1] + 0x00000018u;
|
|
/* 0252A150 */ rbrew_write32(cpu->mem, _t94, cpu->r[7]);
|
|
/* 0252A154 */ _t95 = cpu->r[1] + 0x00000018u;
|
|
/* 0252A154 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t95);
|
|
/* 0252A158 */ _t96 = cpu->r[1] + 0x000000C0u;
|
|
/* 0252A158 */ rbrew_write_f32(cpu->mem, _t96, cpu->f[0]);
|
|
/* 0252A15C */ _t97 = cpu->r[1] + 0x000000C0u;
|
|
/* 0252A15C */ cpu->r[0] = rbrew_read32(cpu->mem, _t97);
|
|
/* 0252A160 */ cpu->f[8] = cpu->f[12] * cpu->f[12];
|
|
/* 0252A164 */ _t98 = cpu->r[1] + 0x00000014u;
|
|
/* 0252A164 */ rbrew_write32(cpu->mem, _t98, cpu->r[6]);
|
|
/* 0252A168 */ _t99 = cpu->r[1] + 0x00000014u;
|
|
/* 0252A168 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t99);
|
|
/* 0252A16C */ _t100 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252A16C */ rbrew_write32(cpu->mem, _t100, cpu->r[0]);
|
|
/* 0252A170 */ _t101 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252A170 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t101);
|
|
/* 0252A174 */ cpu->f[9] = fma(cpu->f[13], cpu->f[13], cpu->f[8]);
|
|
/* 0252A178 */ cpu->r[4] = 0x100C0000u;
|
|
/* 0252A17C */ cpu->f[6] = fma(cpu->f[11], cpu->f[11], cpu->f[9]);
|
|
/* 0252A180 */ _t102 = cpu->r[4] + 0x00002EBCu;
|
|
/* 0252A180 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t102);
|
|
/* 0252A184 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[6], cpu->f[0]);
|
|
/* 0252A188 */ _t103 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252A188 */ _t104 = _t103 & 0x00000001u;
|
|
/* 0252A188 */ if (_t104) goto L_0252A18C; else goto L_0252A464;
|
|
L_0252A18C: ; // 0x252a18c
|
|
/* 0252A18C */ goto L_0252A420;
|
|
L_0252A190: ; // 0x252a190
|
|
/* 0252A190 */ _t105 = cpu->r[30] + 0x000001ECu;
|
|
/* 0252A190 */ cpu->r[31] = rbrew_read32(cpu->mem, _t105);
|
|
/* 0252A194 */ _t106 = cpu->r[31] + 0x000046BCu;
|
|
/* 0252A194 */ cpu->r[6] = rbrew_read32(cpu->mem, _t106);
|
|
/* 0252A198 */ _t107 = cpu->r[6] + 0x0000002Cu;
|
|
/* 0252A198 */ cpu->r[9] = rbrew_read32(cpu->mem, _t107);
|
|
/* 0252A19C */ cpu->ctr = cpu->r[9];
|
|
/* 0252A1A0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0252A1A4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252A1A8 */ _t108 = cpu->r[3] + 0x00000000u;
|
|
/* 0252A1A8 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t108);
|
|
/* 0252A1AC */ _t109 = cpu->r[1] + 0x00000008u;
|
|
/* 0252A1AC */ rbrew_write_f32(cpu->mem, _t109, cpu->f[9]);
|
|
/* 0252A1B0 */ _t110 = cpu->r[3] + 0x00000004u;
|
|
/* 0252A1B0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t110);
|
|
/* 0252A1B4 */ _t111 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252A1B4 */ rbrew_write_f32(cpu->mem, _t111, cpu->f[10]);
|
|
/* 0252A1B8 */ _t112 = cpu->r[3] + 0x00000008u;
|
|
/* 0252A1B8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t112);
|
|
/* 0252A1BC */ _t113 = cpu->r[1] + 0x00000010u;
|
|
/* 0252A1BC */ rbrew_write_f32(cpu->mem, _t113, cpu->f[11]);
|
|
/* 0252A1C0 */ _t114 = cpu->r[31] + 0x000046C4u;
|
|
/* 0252A1C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t114);
|
|
/* 0252A1C4 */ _t115 = cpu->r[31] + 0x000046CCu;
|
|
/* 0252A1C4 */ cpu->r[26] = rbrew_read32(cpu->mem, _t115);
|
|
/* 0252A1C8 */ cpu->r[4] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0252A1CC */ cpu->r[31] = cpu->r[26] + cpu->r[4];
|
|
/* 0252A1D0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], cpu->r[31]);
|
|
/* 0252A1D4 */ _t116 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252A1D4 */ _t117 = _t116 & 0x00000001u;
|
|
/* 0252A1D4 */ if (_t117) goto L_0252A340; else goto L_0252A1D8;
|
|
L_0252A1D8: ; // 0x252a1d8
|
|
/* 0252A1D8 */ goto L_0252A250;
|
|
L_0252A1DC: ; // 0x252a1dc
|
|
/* 0252A1DC */ _t118 = cpu->r[30] + 0x00000218u;
|
|
/* 0252A1DC */ cpu->r[12] = rbrew_read32(cpu->mem, _t118);
|
|
/* 0252A1E0 */ cpu->r[11] = cpu->r[12] + cpu->r[7];
|
|
/* 0252A1E4 */ cpu->r[12] = cpu->r[11] + 0xFFFFFFFFu;
|
|
/* 0252A1E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], cpu->r[0]);
|
|
/* 0252A1EC */ _t119 = cpu->r[30] + 0x00000210u;
|
|
/* 0252A1EC */ cpu->r[4] = rbrew_read32(cpu->mem, _t119);
|
|
/* 0252A1F0 */ _t120 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0252A1F0 */ _t121 = _t120 & 0x00000001u;
|
|
/* 0252A1F0 */ if (_t121) goto L_0252A1F8; else goto L_0252A1F4;
|
|
L_0252A1F4: ; // 0x252a1f4
|
|
/* 0252A1F4 */ cpu->r[12] = cpu->r[12] - cpu->r[0];
|
|
L_0252A1F8: ; // 0x252a1f8
|
|
/* 0252A1F8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[12], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0252A1FC */ _t122 = cpu->r[4] + cpu->r[0];
|
|
/* 0252A1FC */ cpu->r[31] = rbrew_read32(cpu->mem, _t122);
|
|
/* 0252A200 */ goto L_0252A20C;
|
|
L_0252A204: ; // 0x252a204
|
|
/* 0252A204 */ _t123 = cpu->r[30] + 0x00000210u;
|
|
/* 0252A204 */ cpu->r[10] = rbrew_read32(cpu->mem, _t123);
|
|
/* 0252A208 */ _t124 = cpu->r[10] + 0x00000000u;
|
|
/* 0252A208 */ cpu->r[31] = rbrew_read32(cpu->mem, _t124);
|
|
L_0252A20C: ; // 0x252a20c
|
|
/* 0252A20C */ _t125 = cpu->r[31] + 0x000046BCu;
|
|
/* 0252A20C */ cpu->r[6] = rbrew_read32(cpu->mem, _t125);
|
|
/* 0252A210 */ _t126 = cpu->r[6] + 0x0000002Cu;
|
|
/* 0252A210 */ cpu->r[9] = rbrew_read32(cpu->mem, _t126);
|
|
/* 0252A214 */ cpu->ctr = cpu->r[9];
|
|
/* 0252A218 */ cpu->r[3] = cpu->r[31];
|
|
/* 0252A21C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252A220 */ _t127 = cpu->r[3] + 0x00000000u;
|
|
/* 0252A220 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t127);
|
|
/* 0252A224 */ _t128 = cpu->r[1] + 0x00000008u;
|
|
/* 0252A224 */ rbrew_write_f32(cpu->mem, _t128, cpu->f[9]);
|
|
/* 0252A228 */ _t129 = cpu->r[3] + 0x00000004u;
|
|
/* 0252A228 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t129);
|
|
/* 0252A22C */ _t130 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252A22C */ rbrew_write_f32(cpu->mem, _t130, cpu->f[10]);
|
|
/* 0252A230 */ _t131 = cpu->r[3] + 0x00000008u;
|
|
/* 0252A230 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t131);
|
|
/* 0252A234 */ _t132 = cpu->r[1] + 0x00000010u;
|
|
/* 0252A234 */ rbrew_write_f32(cpu->mem, _t132, cpu->f[11]);
|
|
/* 0252A238 */ _t133 = cpu->r[31] + 0x000046C4u;
|
|
/* 0252A238 */ cpu->r[0] = rbrew_read32(cpu->mem, _t133);
|
|
/* 0252A23C */ _t134 = cpu->r[31] + 0x000046CCu;
|
|
/* 0252A23C */ cpu->r[26] = rbrew_read32(cpu->mem, _t134);
|
|
/* 0252A240 */ cpu->r[4] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0252A244 */ cpu->r[31] = cpu->r[26] + cpu->r[4];
|
|
/* 0252A248 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], cpu->r[31]);
|
|
/* 0252A24C */ _t135 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252A24C */ _t136 = _t135 & 0x00000001u;
|
|
/* 0252A24C */ if (_t136) goto L_0252A340; else goto L_0252A250;
|
|
L_0252A250: ; // 0x252a250
|
|
/* 0252A250 */ cpu->r[25] = cpu->r[1] + 0x000000ACu;
|
|
L_0252A254: ; // 0x252a254
|
|
/* 0252A254 */ _t137 = cpu->r[30] + 0x0000021Cu;
|
|
/* 0252A254 */ cpu->r[7] = rbrew_read32(cpu->mem, _t137);
|
|
/* 0252A258 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 0252A25C */ _t138 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252A25C */ _t139 = _t138 & 0x00000001u;
|
|
/* 0252A25C */ if (_t139) goto L_0252A2AC; else goto L_0252A260;
|
|
L_0252A260: ; // 0x252a260
|
|
/* 0252A260 */ _t140 = cpu->r[26] + 0x00000000u;
|
|
/* 0252A260 */ cpu->r[3] = rbrew_read32(cpu->mem, _t140);
|
|
/* 0252A264 */ _t141 = cpu->r[3] + 0x000046BCu;
|
|
/* 0252A264 */ cpu->r[4] = rbrew_read32(cpu->mem, _t141);
|
|
/* 0252A268 */ _t142 = cpu->r[4] + 0x0000002Cu;
|
|
/* 0252A268 */ cpu->r[0] = rbrew_read32(cpu->mem, _t142);
|
|
/* 0252A26C */ cpu->ctr = cpu->r[0];
|
|
/* 0252A270 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252A274 */ _t143 = cpu->r[3] + 0x00000004u;
|
|
/* 0252A274 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t143);
|
|
/* 0252A278 */ cpu->r[3] = cpu->r[1] + 0x000000ACu;
|
|
/* 0252A27C */ cpu->r[4] = cpu->r[28];
|
|
/* 0252A280 */ Gambit_fn_0239F80C(cpu);
|
|
/* 0252A284 */ _t144 = cpu->r[26] + 0x00000000u;
|
|
/* 0252A284 */ cpu->r[3] = rbrew_read32(cpu->mem, _t144);
|
|
/* 0252A288 */ _t145 = cpu->r[3] + 0x000046BCu;
|
|
/* 0252A288 */ cpu->r[6] = rbrew_read32(cpu->mem, _t145);
|
|
/* 0252A28C */ _t146 = cpu->r[6] + 0x0000002Cu;
|
|
/* 0252A28C */ cpu->r[7] = rbrew_read32(cpu->mem, _t146);
|
|
/* 0252A290 */ cpu->ctr = cpu->r[7];
|
|
/* 0252A294 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252A298 */ cpu->r[4] = cpu->r[25];
|
|
/* 0252A29C */ Gambit_fn_02C693A4(cpu);
|
|
/* 0252A2A0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[31]);
|
|
/* 0252A2A4 */ _t147 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252A2A4 */ _t148 = _t147 & 0x00000001u;
|
|
/* 0252A2A4 */ if (_t148) goto L_0252A334; else goto L_0252A2A8;
|
|
L_0252A2A8: ; // 0x252a2a8
|
|
/* 0252A2A8 */ goto L_0252A324;
|
|
L_0252A2AC: ; // 0x252a2ac
|
|
/* 0252A2AC */ _t149 = cpu->r[30] + 0x00000218u;
|
|
/* 0252A2AC */ cpu->r[8] = rbrew_read32(cpu->mem, _t149);
|
|
/* 0252A2B0 */ _t150 = cpu->r[30] + 0x00000214u;
|
|
/* 0252A2B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t150);
|
|
/* 0252A2B4 */ cpu->r[7] = cpu->r[8] + cpu->r[7];
|
|
/* 0252A2B8 */ cpu->r[4] = cpu->r[7] + 0xFFFFFFFFu;
|
|
/* 0252A2BC */ _t151 = cpu->r[30] + 0x00000210u;
|
|
/* 0252A2BC */ cpu->r[11] = rbrew_read32(cpu->mem, _t151);
|
|
/* 0252A2C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], cpu->r[0]);
|
|
/* 0252A2C4 */ _t152 = cpu->r[26] + 0x00000000u;
|
|
/* 0252A2C4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t152);
|
|
/* 0252A2C8 */ _t153 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0252A2C8 */ _t154 = _t153 & 0x00000001u;
|
|
/* 0252A2C8 */ if (_t154) goto L_0252A2D0; else goto L_0252A2CC;
|
|
L_0252A2CC: ; // 0x252a2cc
|
|
/* 0252A2CC */ cpu->r[4] = cpu->r[4] - cpu->r[0];
|
|
L_0252A2D0: ; // 0x252a2d0
|
|
/* 0252A2D0 */ cpu->r[9] = rbrew_rlwinm(cpu->r[4], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0252A2D4 */ _t155 = cpu->r[11] + cpu->r[9];
|
|
/* 0252A2D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t155);
|
|
/* 0252A2D8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], cpu->r[0]);
|
|
/* 0252A2DC */ _t156 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252A2DC */ _t157 = _t156 & 0x00000001u;
|
|
/* 0252A2DC */ if (_t157) goto L_0252A334; else goto L_0252A2E0;
|
|
L_0252A2E0: ; // 0x252a2e0
|
|
/* 0252A2E0 */ _t158 = cpu->r[3] + 0x000046BCu;
|
|
/* 0252A2E0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t158);
|
|
/* 0252A2E4 */ _t159 = cpu->r[4] + 0x0000002Cu;
|
|
/* 0252A2E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t159);
|
|
/* 0252A2E8 */ cpu->ctr = cpu->r[0];
|
|
/* 0252A2EC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252A2F0 */ _t160 = cpu->r[3] + 0x00000004u;
|
|
/* 0252A2F0 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t160);
|
|
/* 0252A2F4 */ cpu->r[3] = cpu->r[1] + 0x000000ACu;
|
|
/* 0252A2F8 */ cpu->r[4] = cpu->r[28];
|
|
/* 0252A2FC */ Gambit_fn_0239F80C(cpu);
|
|
/* 0252A300 */ _t161 = cpu->r[26] + 0x00000000u;
|
|
/* 0252A300 */ cpu->r[3] = rbrew_read32(cpu->mem, _t161);
|
|
/* 0252A304 */ _t162 = cpu->r[3] + 0x000046BCu;
|
|
/* 0252A304 */ cpu->r[6] = rbrew_read32(cpu->mem, _t162);
|
|
/* 0252A308 */ _t163 = cpu->r[6] + 0x0000002Cu;
|
|
/* 0252A308 */ cpu->r[7] = rbrew_read32(cpu->mem, _t163);
|
|
/* 0252A30C */ cpu->ctr = cpu->r[7];
|
|
/* 0252A310 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252A314 */ cpu->r[4] = cpu->r[25];
|
|
/* 0252A318 */ Gambit_fn_02C693A4(cpu);
|
|
/* 0252A31C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[31]);
|
|
/* 0252A320 */ _t164 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252A320 */ _t165 = _t164 & 0x00000001u;
|
|
/* 0252A320 */ if (_t165) goto L_0252A334; else goto L_0252A324;
|
|
L_0252A324: ; // 0x252a324
|
|
/* 0252A324 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[30]);
|
|
/* 0252A328 */ _t166 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0252A328 */ _t167 = _t166 & 0x00000001u;
|
|
/* 0252A328 */ if (_t167) goto L_0252A32C; else goto L_0252A334;
|
|
L_0252A32C: ; // 0x252a32c
|
|
/* 0252A32C */ cpu->f[30] = cpu->f[1];
|
|
/* 0252A330 */ _t168 = cpu->r[26] + 0x00000000u;
|
|
/* 0252A330 */ cpu->r[29] = rbrew_read32(cpu->mem, _t168);
|
|
L_0252A334: ; // 0x252a334
|
|
/* 0252A334 */ cpu->r[26] = cpu->r[26] + 0x00000004u;
|
|
/* 0252A338 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], cpu->r[31]);
|
|
/* 0252A33C */ _t169 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252A33C */ _t170 = _t169 & 0x00000001u;
|
|
/* 0252A33C */ if (_t170) goto L_0252A340; else goto L_0252A254;
|
|
L_0252A340: ; // 0x252a340
|
|
/* 0252A340 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0252A344 */ _t171 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252A344 */ _t172 = _t171 & 0x00000001u;
|
|
/* 0252A344 */ if (_t172) goto L_0252A64C; else goto L_0252A348;
|
|
L_0252A348: ; // 0x252a348
|
|
/* 0252A348 */ _t173 = cpu->r[1] + 0x00000064u;
|
|
/* 0252A348 */ rbrew_write32(cpu->mem, _t173, cpu->r[27]);
|
|
/* 0252A34C */ cpu->r[5] = 0x100C0000u;
|
|
/* 0252A350 */ cpu->r[0] = 0x100C0000u;
|
|
/* 0252A354 */ _t174 = cpu->r[30] + 0x00000030u;
|
|
/* 0252A354 */ cpu->r[3] = rbrew_read32(cpu->mem, _t174);
|
|
/* 0252A358 */ cpu->r[5] = cpu->r[5] + 0x00002F64u;
|
|
/* 0252A35C */ cpu->r[0] = cpu->r[0] + 0x00002E84u;
|
|
/* 0252A360 */ _t175 = cpu->r[1] + 0x00000068u;
|
|
/* 0252A360 */ rbrew_write32(cpu->mem, _t175, cpu->r[27]);
|
|
/* 0252A364 */ cpu->r[4] = cpu->r[1] + 0x00000064u;
|
|
/* 0252A368 */ cpu->r[6] = 0x00000000u;
|
|
/* 0252A36C */ _t176 = cpu->r[1] + 0x0000006Cu;
|
|
/* 0252A36C */ rbrew_write32(cpu->mem, _t176, cpu->r[0]);
|
|
/* 0252A370 */ Gambit_fn_027B72F0(cpu);
|
|
/* 0252A374 */ cpu->r[10] = 0x101F0000u;
|
|
/* 0252A378 */ _t177 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252A378 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t177);
|
|
/* 0252A37C */ cpu->r[10] = cpu->r[10] + 0x00006350u;
|
|
/* 0252A380 */ _t178 = cpu->r[1] + 0x00000010u;
|
|
/* 0252A380 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t178);
|
|
/* 0252A384 */ _t179 = cpu->r[10] + 0x00000008u;
|
|
/* 0252A384 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t179);
|
|
/* 0252A388 */ _t180 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0252A388 */ rbrew_write_f32(cpu->mem, _t180, cpu->f[11]);
|
|
/* 0252A38C */ _t181 = cpu->r[1] + 0x00000008u;
|
|
/* 0252A38C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t181);
|
|
/* 0252A390 */ _t182 = cpu->r[1] + 0x00000034u;
|
|
/* 0252A390 */ rbrew_write_f32(cpu->mem, _t182, cpu->f[8]);
|
|
/* 0252A394 */ _t183 = cpu->r[1] + 0x00000044u;
|
|
/* 0252A394 */ rbrew_write_f32(cpu->mem, _t183, cpu->f[11]);
|
|
/* 0252A398 */ _t184 = cpu->r[1] + 0x00000048u;
|
|
/* 0252A398 */ rbrew_write_f32(cpu->mem, _t184, cpu->f[0]);
|
|
/* 0252A39C */ _t185 = cpu->r[10] + 0x00000004u;
|
|
/* 0252A39C */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t185);
|
|
/* 0252A3A0 */ _t186 = cpu->r[10] + 0x00000000u;
|
|
/* 0252A3A0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t186);
|
|
/* 0252A3A4 */ _t187 = cpu->r[1] + 0x00000030u;
|
|
/* 0252A3A4 */ rbrew_write_f32(cpu->mem, _t187, cpu->f[7]);
|
|
/* 0252A3A8 */ _t188 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0252A3A8 */ rbrew_write_f32(cpu->mem, _t188, cpu->f[12]);
|
|
/* 0252A3AC */ _t189 = cpu->r[29] + 0x000046BCu;
|
|
/* 0252A3AC */ cpu->r[7] = rbrew_read32(cpu->mem, _t189);
|
|
/* 0252A3B0 */ _t190 = cpu->r[7] + 0x0000002Cu;
|
|
/* 0252A3B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t190);
|
|
/* 0252A3B4 */ cpu->ctr = cpu->r[0];
|
|
/* 0252A3B8 */ cpu->r[3] = cpu->r[29];
|
|
/* 0252A3BC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252A3C0 */ /* nop */
|
|
/* 0252A3C4 */ /* nop */
|
|
/* 0252A3C8 */ /* nop */
|
|
/* 0252A3CC */ _t191 = cpu->r[1] + 0x00000010u;
|
|
/* 0252A3CC */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t191);
|
|
/* 0252A3D0 */ /* nop */
|
|
/* 0252A3D4 */ _t192 = cpu->r[1] + 0x000000B8u;
|
|
/* 0252A3D4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t192);
|
|
/* 0252A3D8 */ _t193 = cpu->r[1] + 0x000000BCu;
|
|
/* 0252A3D8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t193);
|
|
/* 0252A3DC */ _t194 = cpu->r[3] + 0x00000008u;
|
|
/* 0252A3DC */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t194);
|
|
/* 0252A3E0 */ _t195 = cpu->r[1] + 0x00000018u;
|
|
/* 0252A3E0 */ rbrew_write32(cpu->mem, _t195, cpu->r[7]);
|
|
/* 0252A3E4 */ _t196 = cpu->r[1] + 0x00000018u;
|
|
/* 0252A3E4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t196);
|
|
/* 0252A3E8 */ cpu->f[0] = cpu->f[6] - cpu->f[7];
|
|
/* 0252A3EC */ _t197 = cpu->r[1] + 0x00000014u;
|
|
/* 0252A3EC */ rbrew_write32(cpu->mem, _t197, cpu->r[6]);
|
|
/* 0252A3F0 */ _t198 = cpu->r[1] + 0x00000014u;
|
|
/* 0252A3F0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t198);
|
|
/* 0252A3F4 */ cpu->f[8] = cpu->f[12] * cpu->f[12];
|
|
/* 0252A3F8 */ _t199 = cpu->r[1] + 0x000000C0u;
|
|
/* 0252A3F8 */ rbrew_write_f32(cpu->mem, _t199, cpu->f[0]);
|
|
/* 0252A3FC */ _t200 = cpu->r[1] + 0x000000C0u;
|
|
/* 0252A3FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t200);
|
|
/* 0252A400 */ cpu->f[9] = fma(cpu->f[13], cpu->f[13], cpu->f[8]);
|
|
/* 0252A404 */ _t201 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252A404 */ rbrew_write32(cpu->mem, _t201, cpu->r[0]);
|
|
/* 0252A408 */ _t202 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252A408 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t202);
|
|
/* 0252A40C */ cpu->r[4] = 0x100C0000u;
|
|
/* 0252A410 */ cpu->f[6] = fma(cpu->f[11], cpu->f[11], cpu->f[9]);
|
|
/* 0252A414 */ _t203 = cpu->r[4] + 0x00002EBCu;
|
|
/* 0252A414 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t203);
|
|
/* 0252A418 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[6], cpu->f[0]);
|
|
/* 0252A41C */ _t204 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252A41C */ _t205 = _t204 & 0x00000001u;
|
|
/* 0252A41C */ if (_t205) goto L_0252A420; else goto L_0252A464;
|
|
L_0252A420: ; // 0x252a420
|
|
/* 0252A420 */ cpu->r[11] = 0x100C0000u;
|
|
/* 0252A424 */ cpu->r[10] = 0x100C0000u;
|
|
/* 0252A428 */ _t206 = cpu->r[11] + 0x00002F20u;
|
|
/* 0252A428 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t206);
|
|
/* 0252A42C */ _t207 = cpu->r[10] + 0x00002F1Cu;
|
|
/* 0252A42C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t207);
|
|
/* 0252A430 */ _ft208 = sqrt(cpu->f[6]);
|
|
/* 0252A430 */ _ft209 = (double)(int32_t)0x00000001u;
|
|
/* 0252A430 */ cpu->f[10] = _ft209 / _ft208;
|
|
/* 0252A434 */ cpu->f[7] = cpu->f[10] * cpu->f[10];
|
|
/* 0252A438 */ cpu->f[8] = cpu->f[10] * cpu->f[12];
|
|
/* 0252A43C */ cpu->f[7] = -fma(cpu->f[7], cpu->f[6], -(cpu->f[13]));
|
|
/* 0252A440 */ cpu->f[10] = cpu->f[7] * cpu->f[8];
|
|
/* 0252A444 */ _t210 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252A444 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t210);
|
|
/* 0252A448 */ /* nop */
|
|
/* 0252A44C */ cpu->f[11] = cpu->f[11] * cpu->f[10];
|
|
/* 0252A450 */ /* nop */
|
|
/* 0252A454 */ /* nop */
|
|
/* 0252A458 */ _t211 = cpu->r[1] + 0x00000014u;
|
|
/* 0252A458 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t211);
|
|
/* 0252A45C */ _t212 = cpu->r[1] + 0x00000018u;
|
|
/* 0252A45C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t212);
|
|
/* 0252A460 */ _t213 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252A460 */ rbrew_write_f32(cpu->mem, _t213, cpu->f[11]);
|
|
L_0252A464: ; // 0x252a464
|
|
/* 0252A464 */ _t214 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0252A464 */ rbrew_write_f32(cpu->mem, _t214, cpu->f[12]);
|
|
/* 0252A468 */ cpu->r[4] = 0x100C0000u;
|
|
/* 0252A46C */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 0252A470 */ _t215 = cpu->r[1] + 0x00000038u;
|
|
/* 0252A470 */ rbrew_write_f32(cpu->mem, _t215, cpu->f[13]);
|
|
/* 0252A474 */ cpu->r[4] = cpu->r[4] + 0x00002F6Cu;
|
|
/* 0252A478 */ cpu->r[5] = 0x00000189u;
|
|
/* 0252A47C */ _t216 = cpu->r[1] + 0x00000040u;
|
|
/* 0252A47C */ rbrew_write_f32(cpu->mem, _t216, cpu->f[11]);
|
|
/* 0252A480 */ Gambit_fn_0204D380(cpu);
|
|
/* 0252A484 */ _t217 = cpu->r[29] + 0x000046BCu;
|
|
/* 0252A484 */ cpu->r[12] = rbrew_read32(cpu->mem, _t217);
|
|
/* 0252A488 */ _t218 = cpu->r[12] + 0x0000002Cu;
|
|
/* 0252A488 */ cpu->r[0] = rbrew_read32(cpu->mem, _t218);
|
|
/* 0252A48C */ cpu->ctr = cpu->r[0];
|
|
/* 0252A490 */ cpu->r[3] = cpu->r[29];
|
|
/* 0252A494 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252A498 */ cpu->r[4] = cpu->r[3];
|
|
/* 0252A49C */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0252A4A0 */ Gambit_fn_02C693A4(cpu);
|
|
/* 0252A4A4 */ cpu->r[9] = 0x100C0000u;
|
|
/* 0252A4A8 */ cpu->r[5] = 0x100C0000u;
|
|
/* 0252A4AC */ _t219 = cpu->r[9] + 0x00002F60u;
|
|
/* 0252A4AC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t219);
|
|
/* 0252A4B0 */ _t220 = cpu->r[5] + 0x00002F14u;
|
|
/* 0252A4B0 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t220);
|
|
/* 0252A4B4 */ cpu->f[11] = cpu->f[1] / cpu->f[11];
|
|
/* 0252A4B8 */ _t221 = cpu->r[1] + 0x000000CCu;
|
|
/* 0252A4B8 */ rbrew_write_f32(cpu->mem, _t221, cpu->f[31]);
|
|
/* 0252A4BC */ _t222 = cpu->r[1] + 0x00000040u;
|
|
/* 0252A4BC */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t222);
|
|
/* 0252A4C0 */ /* nop */
|
|
/* 0252A4C4 */ /* nop */
|
|
/* 0252A4C8 */ /* nop */
|
|
/* 0252A4CC */ _t223 = cpu->r[1] + 0x00000028u;
|
|
/* 0252A4CC */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t223);
|
|
/* 0252A4D0 */ /* nop */
|
|
/* 0252A4D4 */ _t224 = cpu->r[1] + 0x00000034u;
|
|
/* 0252A4D4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t224);
|
|
/* 0252A4D8 */ /* nop */
|
|
/* 0252A4DC */ _t225 = cpu->r[1] + 0x00000048u;
|
|
/* 0252A4DC */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t225);
|
|
/* 0252A4E0 */ /* nop */
|
|
/* 0252A4E4 */ /* nop */
|
|
/* 0252A4E8 */ _t226 = cpu->r[1] + 0x00000024u;
|
|
/* 0252A4E8 */ cpu->f[4] = rbrew_read_f32(cpu->mem, _t226);
|
|
/* 0252A4EC */ /* nop */
|
|
/* 0252A4F0 */ _t227 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0252A4F0 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t227);
|
|
/* 0252A4F4 */ /* nop */
|
|
/* 0252A4F8 */ _t228 = cpu->r[1] + 0x00000038u;
|
|
/* 0252A4F8 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t228);
|
|
/* 0252A4FC */ _t229 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0252A4FC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t229);
|
|
/* 0252A500 */ _t230 = cpu->r[1] + 0x00000078u;
|
|
/* 0252A500 */ rbrew_write_f32(cpu->mem, _t230, cpu->f[10]);
|
|
/* 0252A504 */ _t231 = cpu->r[1] + 0x00000080u;
|
|
/* 0252A504 */ rbrew_write_f32(cpu->mem, _t231, cpu->f[4]);
|
|
/* 0252A508 */ _t232 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0252A508 */ rbrew_write_f32(cpu->mem, _t232, cpu->f[6]);
|
|
/* 0252A50C */ _t233 = cpu->r[1] + 0x00000020u;
|
|
/* 0252A50C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t233);
|
|
/* 0252A510 */ _t234 = cpu->r[1] + 0x00000030u;
|
|
/* 0252A510 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t234);
|
|
/* 0252A514 */ cpu->f[7] = cpu->f[7] * cpu->f[31];
|
|
/* 0252A518 */ _t235 = cpu->r[1] + 0x00000070u;
|
|
/* 0252A518 */ rbrew_write_f32(cpu->mem, _t235, cpu->f[8]);
|
|
/* 0252A51C */ _t236 = cpu->r[1] + 0x00000084u;
|
|
/* 0252A51C */ rbrew_write_f32(cpu->mem, _t236, cpu->f[10]);
|
|
/* 0252A520 */ cpu->f[0] = cpu->f[0] * cpu->f[11];
|
|
/* 0252A524 */ _t237 = cpu->r[1] + 0x00000088u;
|
|
/* 0252A524 */ rbrew_write_f32(cpu->mem, _t237, cpu->f[12]);
|
|
/* 0252A528 */ _t238 = cpu->r[1] + 0x00000098u;
|
|
/* 0252A528 */ rbrew_write_f32(cpu->mem, _t238, cpu->f[7]);
|
|
/* 0252A52C */ _t239 = cpu->r[1] + 0x00000034u;
|
|
/* 0252A52C */ rbrew_write_f32(cpu->mem, _t239, cpu->f[0]);
|
|
/* 0252A530 */ _t240 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0252A530 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t240);
|
|
/* 0252A534 */ cpu->r[9] = cpu->r[1] + 0x000000CCu;
|
|
/* 0252A538 */ _t241 = cpu->r[1] + 0x00000090u;
|
|
/* 0252A538 */ rbrew_write_f32(cpu->mem, _t241, cpu->f[5]);
|
|
/* 0252A53C */ cpu->r[12] = cpu->r[1] + 0x0000006Cu;
|
|
/* 0252A540 */ _t242 = cpu->r[1] + 0x00000040u;
|
|
/* 0252A540 */ rbrew_write_f32(cpu->mem, _t242, cpu->f[7]);
|
|
/* 0252A544 */ _t243 = cpu->r[1] + 0x00000074u;
|
|
/* 0252A544 */ rbrew_write_f32(cpu->mem, _t243, cpu->f[9]);
|
|
/* 0252A548 */ _t244 = cpu->r[1] + 0x00000044u;
|
|
/* 0252A548 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t244);
|
|
/* 0252A54C */ _t245 = cpu->r[1] + 0x00000094u;
|
|
/* 0252A54C */ rbrew_write_f32(cpu->mem, _t245, cpu->f[0]);
|
|
/* 0252A550 */ cpu->r[10] = 0x00000003u;
|
|
/* 0252A554 */ _t246 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0252A554 */ rbrew_write_f32(cpu->mem, _t246, cpu->f[9]);
|
|
/* 0252A558 */ cpu->ctr = cpu->r[10];
|
|
/* 0252A55C */ _t247 = cpu->r[1] + 0x0000009Cu;
|
|
/* 0252A55C */ rbrew_write_f32(cpu->mem, _t247, cpu->f[13]);
|
|
L_0252A560: ; // 0x252a560
|
|
/* 0252A560 */ _t248 = cpu->r[12] + 0x00000004u;
|
|
/* 0252A560 */ cpu->r[11] = rbrew_read32(cpu->mem, _t248);
|
|
/* 0252A564 */ _t249 = cpu->r[9] + 0x00000004u;
|
|
/* 0252A564 */ rbrew_write32(cpu->mem, _t249, cpu->r[11]);
|
|
/* 0252A568 */ _t250 = cpu->r[12] + 0x00000008u;
|
|
/* 0252A568 */ cpu->r[0] = rbrew_read32(cpu->mem, _t250);
|
|
/* 0252A56C */ _t251 = cpu->r[9] + 0x00000008u;
|
|
/* 0252A56C */ rbrew_write32(cpu->mem, _t251, cpu->r[0]);
|
|
/* 0252A570 */ _t252 = cpu->r[12] + 0x0000000Cu;
|
|
/* 0252A570 */ cpu->r[4] = rbrew_read32(cpu->mem, _t252);
|
|
/* 0252A574 */ _t253 = cpu->r[9] + 0x0000000Cu;
|
|
/* 0252A574 */ rbrew_write32(cpu->mem, _t253, cpu->r[4]);
|
|
/* 0252A578 */ _t254 = cpu->r[12] + 0x00000010u;
|
|
/* 0252A578 */ cpu->r[5] = rbrew_read32(cpu->mem, _t254);
|
|
/* 0252A578 */ cpu->r[12] = _t254;
|
|
/* 0252A57C */ _t255 = cpu->r[9] + 0x00000010u;
|
|
/* 0252A57C */ rbrew_write32(cpu->mem, _t255, cpu->r[5]);
|
|
/* 0252A57C */ cpu->r[9] = _t255;
|
|
/* 0252A580 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0252A580 */ _t256 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0252A580 */ _t257 = _t256 >> (0x00000002u & 31u);
|
|
/* 0252A580 */ _t258 = _t257 & 0x00000001u;
|
|
/* 0252A580 */ if (_t258) goto L_0252A560; else goto L_0252A584;
|
|
L_0252A584: ; // 0x252a584
|
|
/* 0252A584 */ _t259 = cpu->r[1] + 0x00000064u;
|
|
/* 0252A584 */ cpu->r[31] = rbrew_read32(cpu->mem, _t259);
|
|
/* 0252A588 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0252A58C */ _t260 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252A58C */ _t261 = _t260 & 0x00000001u;
|
|
/* 0252A58C */ if (_t261) goto L_0252A5C4; else goto L_0252A590;
|
|
L_0252A590: ; // 0x252a590
|
|
/* 0252A590 */ _t262 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0252A590 */ cpu->r[6] = rbrew_read32(cpu->mem, _t262);
|
|
/* 0252A594 */ _t263 = cpu->r[1] + 0x00000068u;
|
|
/* 0252A594 */ cpu->r[7] = rbrew_read32(cpu->mem, _t263);
|
|
/* 0252A598 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[7]);
|
|
/* 0252A59C */ _t264 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252A59C */ _t265 = _t264 & 0x00000001u;
|
|
/* 0252A59C */ if (_t265) goto L_0252A5A0; else goto L_0252A5C4;
|
|
L_0252A5A0: ; // 0x252a5a0
|
|
/* 0252A5A0 */ cpu->r[3] = cpu->r[1] + 0x000000D0u;
|
|
/* 0252A5A4 */ cpu->r[4] = cpu->r[31] + 0x0000007Cu;
|
|
/* 0252A5A8 */ Gambit_fn_02C69510(cpu);
|
|
/* 0252A5AC */ _t266 = cpu->r[31] + 0x0000012Cu;
|
|
/* 0252A5AC */ cpu->r[8] = rbrew_read32(cpu->mem, _t266);
|
|
/* 0252A5B0 */ _t267 = cpu->r[31] + 0x00000074u;
|
|
/* 0252A5B0 */ rbrew_write_f32(cpu->mem, _t267, cpu->f[31]);
|
|
/* 0252A5B4 */ cpu->r[8] = cpu->r[8] | 0x00000008u;
|
|
/* 0252A5B8 */ _t268 = cpu->r[31] + 0x00000070u;
|
|
/* 0252A5B8 */ rbrew_write_f32(cpu->mem, _t268, cpu->f[31]);
|
|
/* 0252A5BC */ _t269 = cpu->r[31] + 0x0000012Cu;
|
|
/* 0252A5BC */ rbrew_write32(cpu->mem, _t269, cpu->r[8]);
|
|
/* 0252A5C0 */ _t270 = cpu->r[31] + 0x00000078u;
|
|
/* 0252A5C0 */ rbrew_write_f32(cpu->mem, _t270, cpu->f[31]);
|
|
L_0252A5C4: ; // 0x252a5c4
|
|
/* 0252A5C4 */ _t271 = cpu->r[30] + 0x00000258u;
|
|
/* 0252A5C4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t271);
|
|
/* 0252A5C8 */ _t272 = cpu->r[30] + 0x00000250u;
|
|
/* 0252A5C8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t272);
|
|
/* 0252A5CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], cpu->r[9]);
|
|
/* 0252A5D0 */ _t273 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0252A5D0 */ _t274 = _t273 & 0x00000001u;
|
|
/* 0252A5D0 */ if (_t274) goto L_0252A5D4; else goto L_0252A610;
|
|
L_0252A5D4: ; // 0x252a5d4
|
|
/* 0252A5D4 */ _t275 = cpu->r[30] + 0x00000254u;
|
|
/* 0252A5D4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t275);
|
|
/* 0252A5D8 */ cpu->r[0] = cpu->r[6] + 0x00000001u;
|
|
/* 0252A5DC */ _t276 = cpu->r[30] + 0x00000250u;
|
|
/* 0252A5DC */ cpu->r[12] = rbrew_read32(cpu->mem, _t276);
|
|
/* 0252A5E0 */ cpu->r[4] = cpu->r[11] + cpu->r[6];
|
|
/* 0252A5E4 */ _t277 = cpu->r[30] + 0x00000258u;
|
|
/* 0252A5E4 */ rbrew_write32(cpu->mem, _t277, cpu->r[0]);
|
|
/* 0252A5E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], cpu->r[12]);
|
|
/* 0252A5EC */ _t278 = cpu->r[1] + 0x00000064u;
|
|
/* 0252A5EC */ cpu->r[9] = rbrew_read32(cpu->mem, _t278);
|
|
/* 0252A5F0 */ _t279 = cpu->r[30] + 0x0000024Cu;
|
|
/* 0252A5F0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t279);
|
|
/* 0252A5F4 */ _t280 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0252A5F4 */ _t281 = _t280 & 0x00000001u;
|
|
/* 0252A5F4 */ if (_t281) goto L_0252A5FC; else goto L_0252A5F8;
|
|
L_0252A5F8: ; // 0x252a5f8
|
|
/* 0252A5F8 */ cpu->r[4] = cpu->r[4] - cpu->r[12];
|
|
L_0252A5FC: ; // 0x252a5fc
|
|
/* 0252A5FC */ cpu->r[4] = (uint32_t)((int32_t)cpu->r[4] * (int32_t)0x0000000Cu);
|
|
/* 0252A600 */ _t282 = cpu->r[6] + cpu->r[4];
|
|
/* 0252A600 */ rbrew_write32(cpu->mem, _t282, cpu->r[9]);
|
|
/* 0252A604 */ _t283 = cpu->r[1] + 0x00000068u;
|
|
/* 0252A604 */ cpu->r[11] = rbrew_read32(cpu->mem, _t283);
|
|
/* 0252A608 */ cpu->r[12] = cpu->r[6] + cpu->r[4];
|
|
/* 0252A60C */ _t284 = cpu->r[12] + 0x00000004u;
|
|
/* 0252A60C */ rbrew_write32(cpu->mem, _t284, cpu->r[11]);
|
|
L_0252A610: ; // 0x252a610
|
|
/* 0252A610 */ _t285 = cpu->r[30] + 0x0000021Cu;
|
|
/* 0252A610 */ cpu->r[7] = rbrew_read32(cpu->mem, _t285);
|
|
/* 0252A614 */ _t286 = cpu->r[30] + 0x00000214u;
|
|
/* 0252A614 */ cpu->r[6] = rbrew_read32(cpu->mem, _t286);
|
|
/* 0252A618 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], cpu->r[6]);
|
|
/* 0252A61C */ _t287 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0252A61C */ _t288 = _t287 & 0x00000001u;
|
|
/* 0252A61C */ if (_t288) goto L_0252A620; else goto L_0252A64C;
|
|
L_0252A620: ; // 0x252a620
|
|
/* 0252A620 */ _t289 = cpu->r[30] + 0x00000218u;
|
|
/* 0252A620 */ cpu->r[9] = rbrew_read32(cpu->mem, _t289);
|
|
/* 0252A624 */ _t290 = cpu->r[30] + 0x00000214u;
|
|
/* 0252A624 */ cpu->r[0] = rbrew_read32(cpu->mem, _t290);
|
|
/* 0252A628 */ cpu->r[6] = cpu->r[9] + cpu->r[7];
|
|
/* 0252A62C */ cpu->r[8] = cpu->r[7] + 0x00000001u;
|
|
/* 0252A630 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], cpu->r[0]);
|
|
/* 0252A634 */ _t291 = cpu->r[30] + 0x0000021Cu;
|
|
/* 0252A634 */ rbrew_write32(cpu->mem, _t291, cpu->r[8]);
|
|
/* 0252A638 */ _t292 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0252A638 */ _t293 = _t292 & 0x00000001u;
|
|
/* 0252A638 */ if (_t293) goto L_0252A640; else goto L_0252A63C;
|
|
L_0252A63C: ; // 0x252a63c
|
|
/* 0252A63C */ cpu->r[6] = cpu->r[6] - cpu->r[0];
|
|
L_0252A640: ; // 0x252a640
|
|
/* 0252A640 */ _t294 = cpu->r[30] + 0x00000210u;
|
|
/* 0252A640 */ cpu->r[0] = rbrew_read32(cpu->mem, _t294);
|
|
/* 0252A644 */ cpu->r[11] = rbrew_rlwinm(cpu->r[6], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0252A648 */ _t295 = cpu->r[11] + cpu->r[0];
|
|
/* 0252A648 */ rbrew_write32(cpu->mem, _t295, cpu->r[29]);
|
|
L_0252A64C: ; // 0x252a64c
|
|
/* 0252A64C */ /* nop */
|
|
/* 0252A650 */ _t296 = cpu->r[1] + 0x00000128u;
|
|
/* 0252A650 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t296);
|
|
/* 0252A654 */ _t297 = cpu->r[1] + 0x00000138u;
|
|
/* 0252A654 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t297);
|
|
/* 0252A658 */ _t298 = cpu->r[1] + 0x00000120u;
|
|
/* 0252A658 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t298);
|
|
/* 0252A65C */ _t299 = cpu->r[1] + 0x00000130u;
|
|
/* 0252A65C */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t299);
|
|
/* 0252A660 */ _t300 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0252A660 */ _t301 = _t300 & 0x00000001u;
|
|
/* 0252A660 */ if (_t301) goto L_0252A664; // else: addr-0 trap, fall-through
|
|
L_0252A664: ; // 0x252a664
|
|
/* 0252A664 */ _t302 = cpu->r[1] + 0x00000144u;
|
|
/* 0252A664 */ cpu->r[0] = rbrew_read32(cpu->mem, _t302);
|
|
/* 0252A668 */ cpu->lr = cpu->r[0];
|
|
/* 0252A66C */ cpu->r[1] = cpu->r[1] + 0x00000140u;
|
|
/* 0252A670 */ return;
|
|
}
|
|
|
|
// fn_0252A674 @ 0x252a674
|
|
void Gambit_fn_0252A674(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_0252A674: ; // 0x252a674
|
|
/* 0252A674 */ _t0 = cpu->r[3] + 0x0000021Cu;
|
|
/* 0252A674 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0252A678 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0252A67C */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252A67C */ _t2 = _t1 & 0x00000001u;
|
|
/* 0252A67C */ if (_t2) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0252A67C */ goto L_0252A680;
|
|
L_0252A680: ; // 0x252a680
|
|
/* 0252A680 */ cpu->r[12] = 0x00000001u;
|
|
/* 0252A684 */ _t3 = cpu->r[3] + 0x00000248u;
|
|
/* 0252A684 */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[12]);
|
|
/* 0252A688 */ return;
|
|
}
|
|
|
|
// fn_0252A68C @ 0x252a68c
|
|
void Gambit_fn_0252A68C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_0252A68C: ; // 0x252a68c
|
|
/* 0252A68C */ cpu->r[0] = cpu->lr;
|
|
/* 0252A690 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0252A690 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252A690 */ cpu->r[1] = _t0;
|
|
/* 0252A694 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252A694 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0252A698 */ cpu->r[31] = cpu->r[3];
|
|
/* 0252A69C */ cpu->r[3] = cpu->r[4];
|
|
/* 0252A6A0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0252A6A0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0252A6A4 */ _t3 = cpu->r[3] + 0x000046BCu;
|
|
/* 0252A6A4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0252A6A8 */ _t4 = cpu->r[11] + 0x0000002Cu;
|
|
/* 0252A6A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0252A6AC */ cpu->ctr = cpu->r[0];
|
|
/* 0252A6B0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252A6B4 */ cpu->r[4] = cpu->r[3];
|
|
/* 0252A6B8 */ cpu->r[3] = cpu->r[31] + 0x00000078u;
|
|
/* 0252A6BC */ Gambit_fn_02C69328(cpu);
|
|
/* 0252A6C0 */ cpu->r[12] = 0x100C0000u;
|
|
/* 0252A6C4 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 0252A6C4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0252A6C8 */ _t6 = cpu->r[12] + 0x00002F80u;
|
|
/* 0252A6C8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 0252A6CC */ cpu->lr = cpu->r[0];
|
|
/* 0252A6D0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[0]);
|
|
/* 0252A6D4 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252A6D4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0252A6D8 */ /* nop */
|
|
/* 0252A6DC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0252A6E0 */ cpu->r[3] = rbrew_rlwinm(cpu->r[10], 0x00000002u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0252A6E4 */ return;
|
|
}
|
|
|
|
// fn_0252A690 @ 0x252a690
|
|
void Gambit_fn_0252A690(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_0252A690: ; // 0x252a690
|
|
/* 0252A690 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0252A690 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252A690 */ cpu->r[1] = _t0;
|
|
/* 0252A694 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252A694 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0252A698 */ cpu->r[31] = cpu->r[3];
|
|
/* 0252A69C */ cpu->r[3] = cpu->r[4];
|
|
/* 0252A6A0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0252A6A0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0252A6A4 */ _t3 = cpu->r[3] + 0x000046BCu;
|
|
/* 0252A6A4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0252A6A8 */ _t4 = cpu->r[11] + 0x0000002Cu;
|
|
/* 0252A6A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0252A6AC */ cpu->ctr = cpu->r[0];
|
|
/* 0252A6B0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252A6B4 */ cpu->r[4] = cpu->r[3];
|
|
/* 0252A6B8 */ cpu->r[3] = cpu->r[31] + 0x00000078u;
|
|
/* 0252A6BC */ Gambit_fn_02C69328(cpu);
|
|
/* 0252A6C0 */ cpu->r[12] = 0x100C0000u;
|
|
/* 0252A6C4 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 0252A6C4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0252A6C8 */ _t6 = cpu->r[12] + 0x00002F80u;
|
|
/* 0252A6C8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 0252A6CC */ cpu->lr = cpu->r[0];
|
|
/* 0252A6D0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[0]);
|
|
/* 0252A6D4 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252A6D4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0252A6D8 */ /* nop */
|
|
/* 0252A6DC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0252A6E0 */ cpu->r[3] = rbrew_rlwinm(cpu->r[10], 0x00000002u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0252A6E4 */ return;
|
|
}
|
|
|
|
// fn_0252A6E8 @ 0x252a6e8
|
|
void Gambit_fn_0252A6E8(CPUState* cpu) {
|
|
uint32_t _t0, _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_0252A6E8: ; // 0x252a6e8
|
|
/* 0252A6E8 */ cpu->r[0] = cpu->lr;
|
|
/* 0252A6EC */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0252A6EC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252A6EC */ cpu->r[1] = _t0;
|
|
/* 0252A6F0 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0252A6F0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0252A6F4 */ cpu->r[31] = cpu->r[3];
|
|
/* 0252A6F8 */ cpu->r[3] = cpu->r[4];
|
|
/* 0252A6FC */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252A6FC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0252A700 */ _t3 = cpu->r[31] + 0x0000002Cu;
|
|
/* 0252A700 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0252A704 */ cpu->r[9] = 0x00000000u;
|
|
/* 0252A708 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 0252A708 */ cpu->r[10] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0252A70C */ _t5 = cpu->r[1] + 0x00000008u;
|
|
/* 0252A70C */ rbrew_write32(cpu->mem, _t5, cpu->r[9]);
|
|
/* 0252A710 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252A710 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0252A714 */ _t7 = cpu->r[10] + 0x0000024Cu;
|
|
/* 0252A714 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0252A718 */ cpu->ctr = cpu->r[0];
|
|
/* 0252A71C */ cpu->r[10] = cpu->r[9];
|
|
/* 0252A720 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 0252A724 */ cpu->r[6] = cpu->r[31] + 0x00000078u;
|
|
/* 0252A728 */ cpu->r[4] = cpu->r[31];
|
|
/* 0252A72C */ cpu->r[8] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252A730 */ cpu->r[7] = 0x00000004u;
|
|
/* 0252A734 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252A738 */ cpu->r[12] = 0x100C0000u;
|
|
/* 0252A73C */ _t8 = cpu->r[1] + 0x00000010u;
|
|
/* 0252A73C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 0252A740 */ _t9 = cpu->r[12] + 0x00002EBCu;
|
|
/* 0252A740 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 0252A744 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[12]);
|
|
/* 0252A748 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252A748 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0252A748 */ if (_t11) goto L_0252A794; else goto L_0252A74C;
|
|
L_0252A74C: ; // 0x252a74c
|
|
/* 0252A74C */ cpu->r[9] = 0x100C0000u;
|
|
/* 0252A750 */ _t12 = cpu->r[31] + 0x000001FCu;
|
|
/* 0252A750 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 0252A754 */ _t13 = cpu->r[9] + 0x00002F84u;
|
|
/* 0252A754 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 0252A758 */ cpu->r[12] = 0x100C0000u;
|
|
/* 0252A75C */ _t14 = cpu->r[31] + 0x00000198u;
|
|
/* 0252A75C */ cpu->r[10] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0252A760 */ cpu->f[11] = fma(cpu->f[11], cpu->f[13], cpu->f[0]);
|
|
/* 0252A764 */ _t15 = cpu->r[12] + 0x00002F14u;
|
|
/* 0252A764 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 0252A768 */ cpu->r[10] = cpu->r[10] | 0x00000002u;
|
|
/* 0252A76C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[11]);
|
|
/* 0252A770 */ _t16 = cpu->r[31] + 0x00000198u;
|
|
/* 0252A770 */ rbrew_write32(cpu->mem, _t16, cpu->r[10]);
|
|
/* 0252A774 */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0252A774 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0252A774 */ if (_t18) goto L_0252A790; else goto L_0252A778;
|
|
L_0252A778: ; // 0x252a778
|
|
/* 0252A778 */ _t19 = cpu->r[31] + 0x000001FCu;
|
|
/* 0252A778 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[11]);
|
|
/* 0252A77C */ _t20 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252A77C */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0252A780 */ _t21 = cpu->r[1] + 0x00000014u;
|
|
/* 0252A780 */ cpu->r[31] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0252A784 */ cpu->lr = cpu->r[0];
|
|
/* 0252A788 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0252A78C */ return;
|
|
L_0252A790: ; // 0x252a790
|
|
/* 0252A790 */ _t22 = cpu->r[31] + 0x000001FCu;
|
|
/* 0252A790 */ rbrew_write_f32(cpu->mem, _t22, cpu->f[0]);
|
|
L_0252A794: ; // 0x252a794
|
|
/* 0252A794 */ _t23 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252A794 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0252A798 */ _t24 = cpu->r[1] + 0x00000014u;
|
|
/* 0252A798 */ cpu->r[31] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0252A79C */ cpu->lr = cpu->r[0];
|
|
/* 0252A7A0 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0252A7A4 */ return;
|
|
}
|
|
|
|
// fn_0252A6EC @ 0x252a6ec
|
|
void Gambit_fn_0252A6EC(CPUState* cpu) {
|
|
uint32_t _t0, _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_0252A6EC: ; // 0x252a6ec
|
|
/* 0252A6EC */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0252A6EC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252A6EC */ cpu->r[1] = _t0;
|
|
/* 0252A6F0 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0252A6F0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0252A6F4 */ cpu->r[31] = cpu->r[3];
|
|
/* 0252A6F8 */ cpu->r[3] = cpu->r[4];
|
|
/* 0252A6FC */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252A6FC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0252A700 */ _t3 = cpu->r[31] + 0x0000002Cu;
|
|
/* 0252A700 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0252A704 */ cpu->r[9] = 0x00000000u;
|
|
/* 0252A708 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 0252A708 */ cpu->r[10] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0252A70C */ _t5 = cpu->r[1] + 0x00000008u;
|
|
/* 0252A70C */ rbrew_write32(cpu->mem, _t5, cpu->r[9]);
|
|
/* 0252A710 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252A710 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0252A714 */ _t7 = cpu->r[10] + 0x0000024Cu;
|
|
/* 0252A714 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0252A718 */ cpu->ctr = cpu->r[0];
|
|
/* 0252A71C */ cpu->r[10] = cpu->r[9];
|
|
/* 0252A720 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 0252A724 */ cpu->r[6] = cpu->r[31] + 0x00000078u;
|
|
/* 0252A728 */ cpu->r[4] = cpu->r[31];
|
|
/* 0252A72C */ cpu->r[8] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252A730 */ cpu->r[7] = 0x00000004u;
|
|
/* 0252A734 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252A738 */ cpu->r[12] = 0x100C0000u;
|
|
/* 0252A73C */ _t8 = cpu->r[1] + 0x00000010u;
|
|
/* 0252A73C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 0252A740 */ _t9 = cpu->r[12] + 0x00002EBCu;
|
|
/* 0252A740 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 0252A744 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[12]);
|
|
/* 0252A748 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252A748 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0252A748 */ if (_t11) goto L_0252A794; else goto L_0252A74C;
|
|
L_0252A74C: ; // 0x252a74c
|
|
/* 0252A74C */ cpu->r[9] = 0x100C0000u;
|
|
/* 0252A750 */ _t12 = cpu->r[31] + 0x000001FCu;
|
|
/* 0252A750 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 0252A754 */ _t13 = cpu->r[9] + 0x00002F84u;
|
|
/* 0252A754 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 0252A758 */ cpu->r[12] = 0x100C0000u;
|
|
/* 0252A75C */ _t14 = cpu->r[31] + 0x00000198u;
|
|
/* 0252A75C */ cpu->r[10] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0252A760 */ cpu->f[11] = fma(cpu->f[11], cpu->f[13], cpu->f[0]);
|
|
/* 0252A764 */ _t15 = cpu->r[12] + 0x00002F14u;
|
|
/* 0252A764 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 0252A768 */ cpu->r[10] = cpu->r[10] | 0x00000002u;
|
|
/* 0252A76C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[11]);
|
|
/* 0252A770 */ _t16 = cpu->r[31] + 0x00000198u;
|
|
/* 0252A770 */ rbrew_write32(cpu->mem, _t16, cpu->r[10]);
|
|
/* 0252A774 */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0252A774 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0252A774 */ if (_t18) goto L_0252A790; else goto L_0252A778;
|
|
L_0252A778: ; // 0x252a778
|
|
/* 0252A778 */ _t19 = cpu->r[31] + 0x000001FCu;
|
|
/* 0252A778 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[11]);
|
|
/* 0252A77C */ _t20 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252A77C */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0252A780 */ _t21 = cpu->r[1] + 0x00000014u;
|
|
/* 0252A780 */ cpu->r[31] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0252A784 */ cpu->lr = cpu->r[0];
|
|
/* 0252A788 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0252A78C */ return;
|
|
L_0252A790: ; // 0x252a790
|
|
/* 0252A790 */ _t22 = cpu->r[31] + 0x000001FCu;
|
|
/* 0252A790 */ rbrew_write_f32(cpu->mem, _t22, cpu->f[0]);
|
|
L_0252A794: ; // 0x252a794
|
|
/* 0252A794 */ _t23 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252A794 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0252A798 */ _t24 = cpu->r[1] + 0x00000014u;
|
|
/* 0252A798 */ cpu->r[31] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0252A79C */ cpu->lr = cpu->r[0];
|
|
/* 0252A7A0 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0252A7A4 */ return;
|
|
}
|
|
|
|
// fn_0252A7A8 @ 0x252a7a8
|
|
void Gambit_fn_0252A7A8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _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_0252A7A8: ; // 0x252a7a8
|
|
/* 0252A7A8 */ cpu->r[0] = cpu->lr;
|
|
/* 0252A7AC */ _t0 = cpu->r[1] + 0xFFFFFF90u;
|
|
/* 0252A7AC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252A7AC */ cpu->r[1] = _t0;
|
|
/* 0252A7B0 */ _t1 = cpu->r[1] + 0x0000006Cu;
|
|
/* 0252A7B0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0252A7B4 */ _t2 = cpu->r[1] + 0x00000068u;
|
|
/* 0252A7B4 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0252A7B8 */ cpu->r[30] = cpu->r[3];
|
|
/* 0252A7BC */ cpu->r[31] = cpu->r[4];
|
|
/* 0252A7C0 */ _t3 = cpu->r[1] + 0x00000074u;
|
|
/* 0252A7C0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0252A7C4 */ _t4 = cpu->r[30] + 0x00000200u;
|
|
/* 0252A7C4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0252A7C8 */ cpu->r[3] = cpu->r[1] + 0x00000050u;
|
|
/* 0252A7CC */ Gambit_fn_0200D450(cpu);
|
|
/* 0252A7D0 */ _t5 = cpu->r[30] + 0x0000006Cu;
|
|
/* 0252A7D0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 0252A7D4 */ _t6 = cpu->r[30] + 0x00000070u;
|
|
/* 0252A7D4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 0252A7D8 */ cpu->f[0] = -cpu->f[0];
|
|
/* 0252A7DC */ _t7 = cpu->r[30] + 0x00000074u;
|
|
/* 0252A7DC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 0252A7E0 */ _t8 = cpu->r[30] + 0x00000004u;
|
|
/* 0252A7E0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0252A7E4 */ cpu->f[12] = -cpu->f[13];
|
|
/* 0252A7E8 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0252A7E8 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[0]);
|
|
/* 0252A7EC */ cpu->f[0] = -cpu->f[11];
|
|
/* 0252A7F0 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0252A7F0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0252A7F4 */ _t11 = cpu->r[1] + 0x00000018u;
|
|
/* 0252A7F4 */ rbrew_write_f32(cpu->mem, _t11, cpu->f[12]);
|
|
/* 0252A7F8 */ _t12 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252A7F8 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[0]);
|
|
/* 0252A7FC */ _t13 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252A7FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0252A800 */ _t14 = cpu->r[1] + 0x00000018u;
|
|
/* 0252A800 */ cpu->r[10] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0252A804 */ _t15 = cpu->r[1] + 0x00000010u;
|
|
/* 0252A804 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 0252A808 */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252A808 */ rbrew_write32(cpu->mem, _t16, cpu->r[10]);
|
|
/* 0252A80C */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 0252A80C */ rbrew_write32(cpu->mem, _t17, cpu->r[9]);
|
|
/* 0252A810 */ _t18 = cpu->r[12] + 0x0000029Cu;
|
|
/* 0252A810 */ cpu->r[7] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0252A814 */ cpu->ctr = cpu->r[7];
|
|
/* 0252A818 */ cpu->r[3] = cpu->r[30];
|
|
/* 0252A81C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252A820 */ /* nop */
|
|
/* 0252A824 */ /* nop */
|
|
/* 0252A828 */ /* nop */
|
|
/* 0252A82C */ /* nop */
|
|
/* 0252A830 */ _t19 = cpu->r[1] + 0x00000010u;
|
|
/* 0252A830 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 0252A834 */ /* nop */
|
|
/* 0252A838 */ _t20 = cpu->r[30] + 0x00000080u;
|
|
/* 0252A838 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 0252A83C */ /* nop */
|
|
/* 0252A840 */ cpu->f[0] = cpu->f[13] * cpu->f[1];
|
|
/* 0252A844 */ _t21 = cpu->r[1] + 0x00000058u;
|
|
/* 0252A844 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 0252A848 */ /* nop */
|
|
/* 0252A84C */ _t22 = cpu->r[1] + 0x00000020u;
|
|
/* 0252A84C */ cpu->r[8] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0252A850 */ cpu->f[13] = cpu->f[10] - cpu->f[12];
|
|
/* 0252A854 */ _t23 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0252A854 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0252A858 */ _t24 = cpu->r[1] + 0x00000030u;
|
|
/* 0252A858 */ cpu->r[5] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0252A85C */ _t25 = cpu->r[1] + 0x00000044u;
|
|
/* 0252A85C */ rbrew_write32(cpu->mem, _t25, cpu->r[0]);
|
|
/* 0252A860 */ _t26 = cpu->r[1] + 0x00000028u;
|
|
/* 0252A860 */ rbrew_write_f32(cpu->mem, _t26, cpu->f[0]);
|
|
/* 0252A864 */ _t27 = cpu->r[1] + 0x00000028u;
|
|
/* 0252A864 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0252A868 */ _t28 = cpu->r[1] + 0x00000034u;
|
|
/* 0252A868 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[13]);
|
|
/* 0252A86C */ _t29 = cpu->r[1] + 0x00000048u;
|
|
/* 0252A86C */ rbrew_write32(cpu->mem, _t29, cpu->r[5]);
|
|
/* 0252A870 */ /* nop */
|
|
/* 0252A874 */ _t30 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0252A874 */ rbrew_write32(cpu->mem, _t30, cpu->r[8]);
|
|
/* 0252A878 */ _t31 = cpu->r[1] + 0x00000024u;
|
|
/* 0252A878 */ cpu->r[6] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0252A87C */ _t32 = cpu->r[1] + 0x00000034u;
|
|
/* 0252A87C */ cpu->r[7] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0252A880 */ _t33 = cpu->r[1] + 0x00000060u;
|
|
/* 0252A880 */ rbrew_write32(cpu->mem, _t33, cpu->r[6]);
|
|
/* 0252A884 */ /* nop */
|
|
/* 0252A888 */ _t34 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0252A888 */ rbrew_write32(cpu->mem, _t34, cpu->r[7]);
|
|
/* 0252A88C */ _t35 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0252A88C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 0252A890 */ /* nop */
|
|
/* 0252A894 */ /* nop */
|
|
/* 0252A898 */ _t36 = cpu->r[1] + 0x00000038u;
|
|
/* 0252A898 */ cpu->r[8] = rbrew_read32(cpu->mem, _t36);
|
|
/* 0252A89C */ _t37 = cpu->r[1] + 0x00000064u;
|
|
/* 0252A89C */ rbrew_write32(cpu->mem, _t37, cpu->r[0]);
|
|
/* 0252A8A0 */ _t38 = cpu->r[1] + 0x00000064u;
|
|
/* 0252A8A0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 0252A8A4 */ _t39 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0252A8A4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t39);
|
|
/* 0252A8A8 */ _t40 = cpu->r[1] + 0x00000008u;
|
|
/* 0252A8A8 */ rbrew_write32(cpu->mem, _t40, cpu->r[8]);
|
|
/* 0252A8AC */ _t41 = cpu->r[1] + 0x00000008u;
|
|
/* 0252A8AC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 0252A8B0 */ cpu->f[0] = cpu->f[13] + cpu->f[0];
|
|
/* 0252A8B4 */ _t42 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252A8B4 */ rbrew_write32(cpu->mem, _t42, cpu->r[9]);
|
|
/* 0252A8B8 */ _t43 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252A8B8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t43);
|
|
/* 0252A8BC */ _t44 = cpu->r[1] + 0x00000040u;
|
|
/* 0252A8BC */ rbrew_write_f32(cpu->mem, _t44, cpu->f[0]);
|
|
/* 0252A8C0 */ _t45 = cpu->r[1] + 0x00000040u;
|
|
/* 0252A8C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t45);
|
|
/* 0252A8C4 */ _t46 = cpu->r[31] + 0x00000000u;
|
|
/* 0252A8C4 */ rbrew_write_f32(cpu->mem, _t46, cpu->f[11]);
|
|
/* 0252A8C8 */ _t47 = cpu->r[1] + 0x00000010u;
|
|
/* 0252A8C8 */ rbrew_write32(cpu->mem, _t47, cpu->r[0]);
|
|
/* 0252A8CC */ _t48 = cpu->r[1] + 0x00000010u;
|
|
/* 0252A8CC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 0252A8D0 */ _t49 = cpu->r[31] + 0x00000004u;
|
|
/* 0252A8D0 */ rbrew_write_f32(cpu->mem, _t49, cpu->f[12]);
|
|
/* 0252A8D4 */ _t50 = cpu->r[31] + 0x00000008u;
|
|
/* 0252A8D4 */ rbrew_write_f32(cpu->mem, _t50, cpu->f[0]);
|
|
/* 0252A8D8 */ _t51 = cpu->r[1] + 0x00000074u;
|
|
/* 0252A8D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t51);
|
|
/* 0252A8DC */ _t52 = cpu->r[1] + 0x00000068u;
|
|
/* 0252A8DC */ cpu->r[30] = rbrew_read32(cpu->mem, _t52);
|
|
/* 0252A8E0 */ cpu->lr = cpu->r[0];
|
|
/* 0252A8E4 */ _t53 = cpu->r[1] + 0x0000006Cu;
|
|
/* 0252A8E4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t53);
|
|
/* 0252A8E8 */ cpu->r[1] = cpu->r[1] + 0x00000070u;
|
|
/* 0252A8EC */ return;
|
|
}
|
|
|
|
// fn_0252A7AC @ 0x252a7ac
|
|
void Gambit_fn_0252A7AC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _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_0252A7AC: ; // 0x252a7ac
|
|
/* 0252A7AC */ _t0 = cpu->r[1] + 0xFFFFFF90u;
|
|
/* 0252A7AC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252A7AC */ cpu->r[1] = _t0;
|
|
/* 0252A7B0 */ _t1 = cpu->r[1] + 0x0000006Cu;
|
|
/* 0252A7B0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0252A7B4 */ _t2 = cpu->r[1] + 0x00000068u;
|
|
/* 0252A7B4 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0252A7B8 */ cpu->r[30] = cpu->r[3];
|
|
/* 0252A7BC */ cpu->r[31] = cpu->r[4];
|
|
/* 0252A7C0 */ _t3 = cpu->r[1] + 0x00000074u;
|
|
/* 0252A7C0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0252A7C4 */ _t4 = cpu->r[30] + 0x00000200u;
|
|
/* 0252A7C4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0252A7C8 */ cpu->r[3] = cpu->r[1] + 0x00000050u;
|
|
/* 0252A7CC */ Gambit_fn_0200D450(cpu);
|
|
/* 0252A7D0 */ _t5 = cpu->r[30] + 0x0000006Cu;
|
|
/* 0252A7D0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 0252A7D4 */ _t6 = cpu->r[30] + 0x00000070u;
|
|
/* 0252A7D4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 0252A7D8 */ cpu->f[0] = -cpu->f[0];
|
|
/* 0252A7DC */ _t7 = cpu->r[30] + 0x00000074u;
|
|
/* 0252A7DC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 0252A7E0 */ _t8 = cpu->r[30] + 0x00000004u;
|
|
/* 0252A7E0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0252A7E4 */ cpu->f[12] = -cpu->f[13];
|
|
/* 0252A7E8 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0252A7E8 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[0]);
|
|
/* 0252A7EC */ cpu->f[0] = -cpu->f[11];
|
|
/* 0252A7F0 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0252A7F0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0252A7F4 */ _t11 = cpu->r[1] + 0x00000018u;
|
|
/* 0252A7F4 */ rbrew_write_f32(cpu->mem, _t11, cpu->f[12]);
|
|
/* 0252A7F8 */ _t12 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252A7F8 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[0]);
|
|
/* 0252A7FC */ _t13 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252A7FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0252A800 */ _t14 = cpu->r[1] + 0x00000018u;
|
|
/* 0252A800 */ cpu->r[10] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0252A804 */ _t15 = cpu->r[1] + 0x00000010u;
|
|
/* 0252A804 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 0252A808 */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252A808 */ rbrew_write32(cpu->mem, _t16, cpu->r[10]);
|
|
/* 0252A80C */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 0252A80C */ rbrew_write32(cpu->mem, _t17, cpu->r[9]);
|
|
/* 0252A810 */ _t18 = cpu->r[12] + 0x0000029Cu;
|
|
/* 0252A810 */ cpu->r[7] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0252A814 */ cpu->ctr = cpu->r[7];
|
|
/* 0252A818 */ cpu->r[3] = cpu->r[30];
|
|
/* 0252A81C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252A820 */ /* nop */
|
|
/* 0252A824 */ /* nop */
|
|
/* 0252A828 */ /* nop */
|
|
/* 0252A82C */ /* nop */
|
|
/* 0252A830 */ _t19 = cpu->r[1] + 0x00000010u;
|
|
/* 0252A830 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 0252A834 */ /* nop */
|
|
/* 0252A838 */ _t20 = cpu->r[30] + 0x00000080u;
|
|
/* 0252A838 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 0252A83C */ /* nop */
|
|
/* 0252A840 */ cpu->f[0] = cpu->f[13] * cpu->f[1];
|
|
/* 0252A844 */ _t21 = cpu->r[1] + 0x00000058u;
|
|
/* 0252A844 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 0252A848 */ /* nop */
|
|
/* 0252A84C */ _t22 = cpu->r[1] + 0x00000020u;
|
|
/* 0252A84C */ cpu->r[8] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0252A850 */ cpu->f[13] = cpu->f[10] - cpu->f[12];
|
|
/* 0252A854 */ _t23 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0252A854 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0252A858 */ _t24 = cpu->r[1] + 0x00000030u;
|
|
/* 0252A858 */ cpu->r[5] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0252A85C */ _t25 = cpu->r[1] + 0x00000044u;
|
|
/* 0252A85C */ rbrew_write32(cpu->mem, _t25, cpu->r[0]);
|
|
/* 0252A860 */ _t26 = cpu->r[1] + 0x00000028u;
|
|
/* 0252A860 */ rbrew_write_f32(cpu->mem, _t26, cpu->f[0]);
|
|
/* 0252A864 */ _t27 = cpu->r[1] + 0x00000028u;
|
|
/* 0252A864 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0252A868 */ _t28 = cpu->r[1] + 0x00000034u;
|
|
/* 0252A868 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[13]);
|
|
/* 0252A86C */ _t29 = cpu->r[1] + 0x00000048u;
|
|
/* 0252A86C */ rbrew_write32(cpu->mem, _t29, cpu->r[5]);
|
|
/* 0252A870 */ /* nop */
|
|
/* 0252A874 */ _t30 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0252A874 */ rbrew_write32(cpu->mem, _t30, cpu->r[8]);
|
|
/* 0252A878 */ _t31 = cpu->r[1] + 0x00000024u;
|
|
/* 0252A878 */ cpu->r[6] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0252A87C */ _t32 = cpu->r[1] + 0x00000034u;
|
|
/* 0252A87C */ cpu->r[7] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0252A880 */ _t33 = cpu->r[1] + 0x00000060u;
|
|
/* 0252A880 */ rbrew_write32(cpu->mem, _t33, cpu->r[6]);
|
|
/* 0252A884 */ /* nop */
|
|
/* 0252A888 */ _t34 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0252A888 */ rbrew_write32(cpu->mem, _t34, cpu->r[7]);
|
|
/* 0252A88C */ _t35 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0252A88C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 0252A890 */ /* nop */
|
|
/* 0252A894 */ /* nop */
|
|
/* 0252A898 */ _t36 = cpu->r[1] + 0x00000038u;
|
|
/* 0252A898 */ cpu->r[8] = rbrew_read32(cpu->mem, _t36);
|
|
/* 0252A89C */ _t37 = cpu->r[1] + 0x00000064u;
|
|
/* 0252A89C */ rbrew_write32(cpu->mem, _t37, cpu->r[0]);
|
|
/* 0252A8A0 */ _t38 = cpu->r[1] + 0x00000064u;
|
|
/* 0252A8A0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 0252A8A4 */ _t39 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0252A8A4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t39);
|
|
/* 0252A8A8 */ _t40 = cpu->r[1] + 0x00000008u;
|
|
/* 0252A8A8 */ rbrew_write32(cpu->mem, _t40, cpu->r[8]);
|
|
/* 0252A8AC */ _t41 = cpu->r[1] + 0x00000008u;
|
|
/* 0252A8AC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 0252A8B0 */ cpu->f[0] = cpu->f[13] + cpu->f[0];
|
|
/* 0252A8B4 */ _t42 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252A8B4 */ rbrew_write32(cpu->mem, _t42, cpu->r[9]);
|
|
/* 0252A8B8 */ _t43 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252A8B8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t43);
|
|
/* 0252A8BC */ _t44 = cpu->r[1] + 0x00000040u;
|
|
/* 0252A8BC */ rbrew_write_f32(cpu->mem, _t44, cpu->f[0]);
|
|
/* 0252A8C0 */ _t45 = cpu->r[1] + 0x00000040u;
|
|
/* 0252A8C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t45);
|
|
/* 0252A8C4 */ _t46 = cpu->r[31] + 0x00000000u;
|
|
/* 0252A8C4 */ rbrew_write_f32(cpu->mem, _t46, cpu->f[11]);
|
|
/* 0252A8C8 */ _t47 = cpu->r[1] + 0x00000010u;
|
|
/* 0252A8C8 */ rbrew_write32(cpu->mem, _t47, cpu->r[0]);
|
|
/* 0252A8CC */ _t48 = cpu->r[1] + 0x00000010u;
|
|
/* 0252A8CC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 0252A8D0 */ _t49 = cpu->r[31] + 0x00000004u;
|
|
/* 0252A8D0 */ rbrew_write_f32(cpu->mem, _t49, cpu->f[12]);
|
|
/* 0252A8D4 */ _t50 = cpu->r[31] + 0x00000008u;
|
|
/* 0252A8D4 */ rbrew_write_f32(cpu->mem, _t50, cpu->f[0]);
|
|
/* 0252A8D8 */ _t51 = cpu->r[1] + 0x00000074u;
|
|
/* 0252A8D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t51);
|
|
/* 0252A8DC */ _t52 = cpu->r[1] + 0x00000068u;
|
|
/* 0252A8DC */ cpu->r[30] = rbrew_read32(cpu->mem, _t52);
|
|
/* 0252A8E0 */ cpu->lr = cpu->r[0];
|
|
/* 0252A8E4 */ _t53 = cpu->r[1] + 0x0000006Cu;
|
|
/* 0252A8E4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t53);
|
|
/* 0252A8E8 */ cpu->r[1] = cpu->r[1] + 0x00000070u;
|
|
/* 0252A8EC */ return;
|
|
}
|
|
|
|
// fn_0252A8F0 @ 0x252a8f0
|
|
void Gambit_fn_0252A8F0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _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_0252A8F0: ; // 0x252a8f0
|
|
/* 0252A8F0 */ _t0 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 0252A8F0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252A8F0 */ cpu->r[1] = _t0;
|
|
/* 0252A8F4 */ /* nop */
|
|
/* 0252A8F8 */ cpu->r[0] = cpu->lr;
|
|
/* 0252A8FC */ _t1 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0252A8FC */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0252A900 */ cpu->r[28] = cpu->r[3];
|
|
/* 0252A904 */ _t2 = cpu->r[28] + 0x00000050u;
|
|
/* 0252A904 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0252A908 */ _t3 = cpu->r[12] + 0x000023B8u;
|
|
/* 0252A908 */ cpu->r[24] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0252A90C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 0252A910 */ cpu->r[29] = 0x00000000u;
|
|
/* 0252A914 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252A914 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0252A914 */ if (_t5) goto L_0252AA74; else goto L_0252A918;
|
|
L_0252A918: ; // 0x252a918
|
|
/* 0252A918 */ cpu->r[31] = 0x10110000u;
|
|
/* 0252A91C */ cpu->r[25] = 0x00080000u;
|
|
/* 0252A920 */ cpu->r[27] = 0x100C0000u;
|
|
/* 0252A924 */ cpu->r[26] = 0x100C0000u;
|
|
/* 0252A928 */ _t6 = cpu->r[31] + 0x00007399u;
|
|
/* 0252A928 */ cpu->r[31] = rbrew_read8(cpu->mem, _t6);
|
|
/* 0252A92C */ cpu->r[25] = cpu->r[25] + 0x00000001u;
|
|
/* 0252A930 */ cpu->r[26] = cpu->r[26] + 0x00002F88u;
|
|
/* 0252A934 */ cpu->r[27] = cpu->r[27] + 0x00002DE4u;
|
|
/* 0252A938 */ cpu->r[23] = 0x101C0000u;
|
|
L_0252A93C: ; // 0x252a93c
|
|
/* 0252A93C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], 0x00000020u);
|
|
/* 0252A940 */ cpu->r[30] = cpu->r[12] + 0x000023BCu;
|
|
/* 0252A944 */ _t7 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0252A944 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0252A944 */ if (_t8) goto L_0252A948; else goto L_0252A950;
|
|
L_0252A948: ; // 0x252a948
|
|
/* 0252A948 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[29] * (int32_t)0x00000118u);
|
|
/* 0252A94C */ cpu->r[30] = cpu->r[30] + cpu->r[0];
|
|
L_0252A950: ; // 0x252a950
|
|
/* 0252A950 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 0252A950 */ rbrew_write32(cpu->mem, _t9, cpu->r[26]);
|
|
/* 0252A954 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252A954 */ rbrew_write32(cpu->mem, _t10, cpu->r[27]);
|
|
/* 0252A958 */ _t11 = cpu->r[30] + 0x00000004u;
|
|
/* 0252A958 */ cpu->r[4] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0252A95C */ _t12 = cpu->r[4] + 0x00000014u;
|
|
/* 0252A95C */ cpu->r[6] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0252A960 */ cpu->ctr = cpu->r[6];
|
|
/* 0252A964 */ cpu->r[3] = cpu->r[30];
|
|
/* 0252A968 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252A96C */ _t13 = cpu->r[30] + 0x00000004u;
|
|
/* 0252A96C */ cpu->r[11] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0252A970 */ _t14 = cpu->r[11] + 0x00000014u;
|
|
/* 0252A970 */ cpu->r[5] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0252A974 */ cpu->ctr = cpu->r[5];
|
|
/* 0252A978 */ cpu->r[3] = cpu->r[30];
|
|
/* 0252A97C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252A980 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252A980 */ cpu->r[7] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0252A984 */ _t16 = cpu->r[7] + 0x00000014u;
|
|
/* 0252A984 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0252A988 */ cpu->ctr = cpu->r[0];
|
|
/* 0252A98C */ _t17 = cpu->r[30] + 0x00000000u;
|
|
/* 0252A98C */ cpu->r[22] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0252A990 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0252A994 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252A998 */ _t18 = cpu->r[1] + 0x00000008u;
|
|
/* 0252A998 */ cpu->r[9] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0252A99C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[22], cpu->r[9]);
|
|
/* 0252A9A0 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252A9A0 */ _t20 = _t19 & 0x00000001u;
|
|
/* 0252A9A0 */ if (_t20) goto L_0252A9E4; else goto L_0252A9A4;
|
|
L_0252A9A4: ; // 0x252a9a4
|
|
/* 0252A9A4 */ _t21 = cpu->r[30] + 0x00000000u;
|
|
/* 0252A9A4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0252A9A8 */ _t22 = cpu->r[1] + 0x00000008u;
|
|
/* 0252A9A8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0252A9AC */ cpu->r[12] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 0252A9B0 */ cpu->ctr = cpu->r[25];
|
|
/* 0252A9B4 */ cpu->r[11] = cpu->r[11] + 0xFFFFFFFFu;
|
|
L_0252A9B8: ; // 0x252a9b8
|
|
/* 0252A9B8 */ _t23 = cpu->r[12] + 0x00000001u;
|
|
/* 0252A9B8 */ cpu->r[7] = rbrew_read8(cpu->mem, _t23);
|
|
/* 0252A9B8 */ cpu->r[12] = _t23;
|
|
/* 0252A9BC */ _t24 = cpu->r[11] + 0x00000001u;
|
|
/* 0252A9BC */ cpu->r[0] = rbrew_read8(cpu->mem, _t24);
|
|
/* 0252A9BC */ cpu->r[11] = _t24;
|
|
/* 0252A9C0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[0]);
|
|
/* 0252A9C4 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252A9C4 */ _t26 = _t25 & 0x00000001u;
|
|
/* 0252A9C4 */ if (_t26) goto L_0252A9C8; else goto L_0252AA60;
|
|
L_0252A9C8: ; // 0x252a9c8
|
|
/* 0252A9C8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[31]);
|
|
/* 0252A9CC */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252A9CC */ _t28 = _t27 & 0x00000001u;
|
|
/* 0252A9CC */ if (_t28) goto L_0252A9E4; else goto L_0252A9D0;
|
|
L_0252A9D0: ; // 0x252a9d0
|
|
/* 0252A9D0 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0252A9D0 */ _t29 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0252A9D0 */ _t30 = _t29 >> (0x00000002u & 31u);
|
|
/* 0252A9D0 */ _t31 = _t30 & 0x00000001u;
|
|
/* 0252A9D0 */ if (_t31) goto L_0252A9B8; else goto L_0252A9D4;
|
|
L_0252A9D4: ; // 0x252a9d4
|
|
/* 0252A9D4 */ cpu->r[24] = cpu->r[24] + 0xFFFFFFFFu;
|
|
/* 0252A9D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 0252A9D8 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 0252A9DC */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252A9DC */ _t33 = _t32 & 0x00000001u;
|
|
/* 0252A9DC */ if (_t33) goto L_0252A9E0; else goto L_0252AA6C;
|
|
L_0252A9E0: ; // 0x252a9e0
|
|
/* 0252A9E0 */ goto L_0252AA74;
|
|
L_0252A9E4: ; // 0x252a9e4
|
|
/* 0252A9E4 */ _t34 = cpu->r[23] + 0x00006000u;
|
|
/* 0252A9E4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t34);
|
|
/* 0252A9E8 */ _t35 = cpu->r[11] + 0x00000254u;
|
|
/* 0252A9E8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t35);
|
|
/* 0252A9EC */ cpu->r[4] = cpu->r[30] + 0x0000008Cu;
|
|
/* 0252A9F0 */ Gambit_fn_020EF0E4(cpu);
|
|
/* 0252A9F4 */ _t36 = cpu->r[23] + 0x00006000u;
|
|
/* 0252A9F4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t36);
|
|
/* 0252A9F8 */ cpu->r[30] = cpu->r[3];
|
|
/* 0252A9FC */ _t37 = cpu->r[10] + 0x00000264u;
|
|
/* 0252A9FC */ cpu->r[3] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0252AA00 */ cpu->r[4] = cpu->r[30];
|
|
/* 0252AA04 */ Gambit_fn_024FD2E4(cpu);
|
|
/* 0252AA08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252AA0C */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252AA0C */ _t39 = _t38 & 0x00000001u;
|
|
/* 0252AA0C */ if (_t39) goto L_0252AA60; else goto L_0252AA10;
|
|
L_0252AA10: ; // 0x252aa10
|
|
/* 0252AA10 */ _t40 = cpu->r[28] + 0x000001E8u;
|
|
/* 0252AA10 */ rbrew_write32(cpu->mem, _t40, cpu->r[30]);
|
|
/* 0252AA14 */ _t41 = cpu->r[30] + 0x000046BCu;
|
|
/* 0252AA14 */ cpu->r[5] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0252AA18 */ _t42 = cpu->r[5] + 0x0000002Cu;
|
|
/* 0252AA18 */ cpu->r[0] = rbrew_read32(cpu->mem, _t42);
|
|
/* 0252AA1C */ cpu->ctr = cpu->r[0];
|
|
/* 0252AA20 */ cpu->r[3] = cpu->r[30];
|
|
/* 0252AA24 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252AA28 */ _t43 = cpu->r[3] + 0x00000000u;
|
|
/* 0252AA28 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t43);
|
|
/* 0252AA2C */ _t44 = cpu->r[28] + 0x000000D8u;
|
|
/* 0252AA2C */ rbrew_write_f32(cpu->mem, _t44, cpu->f[12]);
|
|
/* 0252AA30 */ _t45 = cpu->r[3] + 0x00000004u;
|
|
/* 0252AA30 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t45);
|
|
/* 0252AA34 */ _t46 = cpu->r[28] + 0x000000DCu;
|
|
/* 0252AA34 */ rbrew_write_f32(cpu->mem, _t46, cpu->f[13]);
|
|
/* 0252AA38 */ _t47 = cpu->r[3] + 0x00000008u;
|
|
/* 0252AA38 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 0252AA3C */ cpu->r[3] = cpu->r[28];
|
|
/* 0252AA40 */ _t48 = cpu->r[28] + 0x000000E0u;
|
|
/* 0252AA40 */ rbrew_write_f32(cpu->mem, _t48, cpu->f[0]);
|
|
/* 0252AA44 */ Gambit_fn_02790458(cpu);
|
|
/* 0252AA48 */ _t49 = cpu->r[28] + 0x00000004u;
|
|
/* 0252AA48 */ cpu->r[8] = rbrew_read32(cpu->mem, _t49);
|
|
/* 0252AA4C */ _t50 = cpu->r[8] + 0x000000ECu;
|
|
/* 0252AA4C */ cpu->r[0] = rbrew_read32(cpu->mem, _t50);
|
|
/* 0252AA50 */ cpu->ctr = cpu->r[0];
|
|
/* 0252AA54 */ cpu->r[3] = cpu->r[28];
|
|
/* 0252AA58 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252AA5C */ goto L_0252AA90;
|
|
L_0252AA60: ; // 0x252aa60
|
|
/* 0252AA60 */ cpu->r[24] = cpu->r[24] + 0xFFFFFFFFu;
|
|
/* 0252AA60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 0252AA64 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 0252AA68 */ _t51 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252AA68 */ _t52 = _t51 & 0x00000001u;
|
|
/* 0252AA68 */ if (_t52) goto L_0252AA74; else goto L_0252AA6C;
|
|
L_0252AA6C: ; // 0x252aa6c
|
|
/* 0252AA6C */ _t53 = cpu->r[28] + 0x00000050u;
|
|
/* 0252AA6C */ cpu->r[12] = rbrew_read32(cpu->mem, _t53);
|
|
/* 0252AA70 */ goto L_0252A93C;
|
|
L_0252AA74: ; // 0x252aa74
|
|
/* 0252AA74 */ cpu->r[3] = cpu->r[28];
|
|
/* 0252AA78 */ Gambit_fn_02790458(cpu);
|
|
/* 0252AA7C */ _t54 = cpu->r[28] + 0x00000004u;
|
|
/* 0252AA7C */ cpu->r[8] = rbrew_read32(cpu->mem, _t54);
|
|
/* 0252AA80 */ _t55 = cpu->r[8] + 0x000000ECu;
|
|
/* 0252AA80 */ cpu->r[0] = rbrew_read32(cpu->mem, _t55);
|
|
/* 0252AA84 */ cpu->ctr = cpu->r[0];
|
|
/* 0252AA88 */ cpu->r[3] = cpu->r[28];
|
|
/* 0252AA8C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0252AA90: ; // 0x252aa90
|
|
/* 0252AA90 */ /* nop */
|
|
/* 0252AA94 */ _t56 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0252AA94 */ cpu->r[0] = rbrew_read32(cpu->mem, _t56);
|
|
/* 0252AA98 */ cpu->lr = cpu->r[0];
|
|
/* 0252AA9C */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 0252AAA0 */ return;
|
|
}
|
|
|
|
// fn_0252AAE8 @ 0x252aae8
|
|
void Gambit_fn_0252AAE8(CPUState* 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_0252AAE8: ; // 0x252aae8
|
|
/* 0252AAE8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0252AAE8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252AAE8 */ cpu->r[1] = _t0;
|
|
/* 0252AAEC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252AAEC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0252AAF0 */ cpu->r[31] = cpu->r[3];
|
|
/* 0252AAF4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0252AAF4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0252AAF8 */ _t3 = cpu->r[31] + 0x00000198u;
|
|
/* 0252AAF8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0252AAFC */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0252AAFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0252AB00 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252AB00 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0252AB00 */ if (_t5) goto L_0252AB04; else goto L_0252AB40;
|
|
L_0252AB04: ; // 0x252ab04
|
|
/* 0252AB04 */ _t6 = cpu->r[31] + 0x00000130u;
|
|
/* 0252AB04 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0252AB08 */ Gambit_fn_02398FA8(cpu);
|
|
/* 0252AB0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252AB10 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252AB10 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0252AB10 */ if (_t8) goto L_0252AB34; else goto L_0252AB14;
|
|
L_0252AB14: ; // 0x252ab14
|
|
/* 0252AB14 */ cpu->r[3] = cpu->r[31] + 0x000001B0u;
|
|
/* 0252AB18 */ cpu->r[4] = 0x00000000u;
|
|
/* 0252AB1C */ Gambit_fn_023A39EC(cpu);
|
|
/* 0252AB20 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0252AB20 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0252AB24 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252AB24 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0252AB28 */ cpu->lr = cpu->r[0];
|
|
/* 0252AB2C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0252AB30 */ return;
|
|
L_0252AB34: ; // 0x252ab34
|
|
/* 0252AB34 */ _t11 = cpu->r[31] + 0x00000198u;
|
|
/* 0252AB34 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0252AB38 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0252AB38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0252AB3C */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252AB3C */ _t13 = _t12 & 0x00000001u;
|
|
/* 0252AB3C */ if (_t13) goto L_0252AB6C; else goto L_0252AB40;
|
|
L_0252AB40: ; // 0x252ab40
|
|
/* 0252AB40 */ _t14 = cpu->r[31] + 0x00000130u;
|
|
/* 0252AB40 */ cpu->r[3] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0252AB44 */ Gambit_fn_02398F10(cpu);
|
|
/* 0252AB48 */ cpu->r[12] = 0x100C0000u;
|
|
/* 0252AB4C */ _t15 = cpu->r[12] + 0x00002FACu;
|
|
/* 0252AB4C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 0252AB50 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[0]);
|
|
/* 0252AB54 */ _t16 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0252AB54 */ _t17 = _t16 & 0x00000001u;
|
|
/* 0252AB54 */ if (_t17) goto L_0252AB6C; else goto L_0252AB58;
|
|
L_0252AB58: ; // 0x252ab58
|
|
/* 0252AB58 */ cpu->r[4] = 0x100C0000u;
|
|
/* 0252AB5C */ cpu->r[5] = 0x00000001u;
|
|
/* 0252AB60 */ _t18 = cpu->r[31] + 0x00000130u;
|
|
/* 0252AB60 */ cpu->r[3] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0252AB64 */ cpu->r[4] = cpu->r[4] + 0x00002FB0u;
|
|
/* 0252AB68 */ Gambit_fn_02398850(cpu);
|
|
L_0252AB6C: ; // 0x252ab6c
|
|
/* 0252AB6C */ _t19 = cpu->r[1] + 0x00000014u;
|
|
/* 0252AB6C */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0252AB70 */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252AB70 */ cpu->r[31] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0252AB74 */ cpu->lr = cpu->r[0];
|
|
/* 0252AB78 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0252AB7C */ return;
|
|
}
|
|
|
|
// fn_0252AB8C @ 0x252ab8c
|
|
void Gambit_fn_0252AB8C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _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_0252AB8C: ; // 0x252ab8c
|
|
/* 0252AB8C */ _t0 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 0252AB8C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252AB8C */ cpu->r[1] = _t0;
|
|
/* 0252AB90 */ cpu->r[0] = cpu->lr;
|
|
/* 0252AB94 */ /* nop */
|
|
/* 0252AB98 */ _t1 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0252AB98 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0252AB9C */ cpu->r[29] = cpu->r[3];
|
|
/* 0252ABA0 */ cpu->r[3] = cpu->r[29] + 0x000002D8u;
|
|
/* 0252ABA4 */ Gambit_fn_02C69350(cpu);
|
|
/* 0252ABA8 */ cpu->r[12] = 0x100C0000u;
|
|
/* 0252ABAC */ cpu->r[27] = 0x100C0000u;
|
|
/* 0252ABB0 */ _t2 = cpu->r[12] + 0x00002EBCu;
|
|
/* 0252ABB0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 0252ABB4 */ cpu->r[27] = cpu->r[27] + 0x00002DE4u;
|
|
/* 0252ABB8 */ cpu->r[31] = 0x100C0000u;
|
|
/* 0252ABBC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[0]);
|
|
/* 0252ABC0 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252ABC0 */ rbrew_write32(cpu->mem, _t3, cpu->r[27]);
|
|
/* 0252ABC4 */ cpu->r[31] = cpu->r[31] + 0x00002FC4u;
|
|
/* 0252ABC8 */ /* nop */
|
|
/* 0252ABCC */ _t4 = cpu->r[29] + 0x00000130u;
|
|
/* 0252ABCC */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0252ABD0 */ _t5 = cpu->r[1] + 0x00000008u;
|
|
/* 0252ABD0 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 0252ABD4 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0252ABD8 */ cpu->r[28] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0252ABDC */ Gambit_fn_023989C0(cpu);
|
|
/* 0252ABE0 */ cpu->r[30] = 0x100C0000u;
|
|
/* 0252ABE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252ABE8 */ cpu->r[30] = cpu->r[30] + 0x00002FCCu;
|
|
/* 0252ABEC */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252ABEC */ _t7 = _t6 & 0x00000001u;
|
|
/* 0252ABEC */ if (_t7) goto L_0252AC0C; else goto L_0252ABF0;
|
|
L_0252ABF0: ; // 0x252abf0
|
|
/* 0252ABF0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 0252ABF4 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252ABF4 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0252ABF4 */ if (_t9) goto L_0252AC84; else goto L_0252ABF8;
|
|
L_0252ABF8: ; // 0x252abf8
|
|
/* 0252ABF8 */ _t10 = cpu->r[29] + 0x00000130u;
|
|
/* 0252ABF8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0252ABFC */ cpu->r[4] = cpu->r[30];
|
|
/* 0252AC00 */ cpu->r[5] = 0x00000001u;
|
|
/* 0252AC04 */ Gambit_fn_02398850(cpu);
|
|
/* 0252AC08 */ goto L_0252AC84;
|
|
L_0252AC0C: ; // 0x252ac0c
|
|
/* 0252AC0C */ _t11 = cpu->r[29] + 0x00000130u;
|
|
/* 0252AC0C */ cpu->r[3] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0252AC10 */ _t12 = cpu->r[1] + 0x00000010u;
|
|
/* 0252AC10 */ rbrew_write32(cpu->mem, _t12, cpu->r[30]);
|
|
/* 0252AC14 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 0252AC18 */ _t13 = cpu->r[1] + 0x00000014u;
|
|
/* 0252AC18 */ rbrew_write32(cpu->mem, _t13, cpu->r[27]);
|
|
/* 0252AC1C */ Gambit_fn_023989C0(cpu);
|
|
/* 0252AC20 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252AC24 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252AC24 */ _t15 = _t14 & 0x00000001u;
|
|
/* 0252AC24 */ if (_t15) goto L_0252AC34; else goto L_0252AC28;
|
|
L_0252AC28: ; // 0x252ac28
|
|
/* 0252AC28 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 0252AC2C */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252AC2C */ _t17 = _t16 & 0x00000001u;
|
|
/* 0252AC2C */ if (_t17) goto L_0252AC30; else goto L_0252AC84;
|
|
L_0252AC30: ; // 0x252ac30
|
|
/* 0252AC30 */ goto L_0252AC74;
|
|
L_0252AC34: ; // 0x252ac34
|
|
/* 0252AC34 */ _t18 = cpu->r[29] + 0x00000130u;
|
|
/* 0252AC34 */ cpu->r[3] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0252AC38 */ cpu->r[0] = 0x100C0000u;
|
|
/* 0252AC3C */ _t19 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252AC3C */ rbrew_write32(cpu->mem, _t19, cpu->r[27]);
|
|
/* 0252AC40 */ cpu->r[0] = cpu->r[0] + 0x00002FBCu;
|
|
/* 0252AC44 */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 0252AC48 */ _t20 = cpu->r[1] + 0x00000018u;
|
|
/* 0252AC48 */ rbrew_write32(cpu->mem, _t20, cpu->r[0]);
|
|
/* 0252AC4C */ Gambit_fn_023989C0(cpu);
|
|
/* 0252AC50 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252AC54 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252AC54 */ _t22 = _t21 & 0x00000001u;
|
|
/* 0252AC54 */ if (_t22) goto L_0252AC84; else goto L_0252AC58;
|
|
L_0252AC58: ; // 0x252ac58
|
|
/* 0252AC58 */ _t23 = cpu->r[29] + 0x00000130u;
|
|
/* 0252AC58 */ cpu->r[3] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0252AC5C */ Gambit_fn_02398FA8(cpu);
|
|
/* 0252AC60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252AC64 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252AC64 */ _t25 = _t24 & 0x00000001u;
|
|
/* 0252AC64 */ if (_t25) goto L_0252AC84; else goto L_0252AC68;
|
|
L_0252AC68: ; // 0x252ac68
|
|
/* 0252AC68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 0252AC6C */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252AC6C */ _t27 = _t26 & 0x00000001u;
|
|
/* 0252AC6C */ if (_t27) goto L_0252AC74; else goto L_0252AC70;
|
|
L_0252AC70: ; // 0x252ac70
|
|
/* 0252AC70 */ cpu->r[31] = cpu->r[30];
|
|
L_0252AC74: ; // 0x252ac74
|
|
/* 0252AC74 */ _t28 = cpu->r[29] + 0x00000130u;
|
|
/* 0252AC74 */ cpu->r[3] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0252AC78 */ cpu->r[4] = cpu->r[31];
|
|
/* 0252AC7C */ cpu->r[5] = 0x00000001u;
|
|
/* 0252AC80 */ Gambit_fn_02398850(cpu);
|
|
L_0252AC84: ; // 0x252ac84
|
|
/* 0252AC84 */ /* nop */
|
|
/* 0252AC88 */ _t29 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0252AC88 */ cpu->r[0] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0252AC8C */ cpu->lr = cpu->r[0];
|
|
/* 0252AC90 */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 0252AC94 */ return;
|
|
}
|
|
|
|
// fn_0252AC98 @ 0x252ac98
|
|
void Gambit_fn_0252AC98(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_0252AC98: ; // 0x252ac98
|
|
/* 0252AC98 */ cpu->r[0] = cpu->lr;
|
|
/* 0252AC9C */ cpu->r[12] = 0x100C0000u;
|
|
/* 0252ACA0 */ cpu->r[11] = 0x100C0000u;
|
|
/* 0252ACA4 */ cpu->r[12] = cpu->r[12] + 0x00002FD4u;
|
|
/* 0252ACA8 */ cpu->r[11] = cpu->r[11] + 0x00002DE4u;
|
|
/* 0252ACAC */ cpu->r[3] = 0x101F0000u;
|
|
/* 0252ACB0 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 0252ACB0 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 0252ACB4 */ cpu->r[0] = 0x02530000u;
|
|
/* 0252ACB8 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 0252ACB8 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 0252ACB8 */ cpu->r[1] = _t1;
|
|
/* 0252ACBC */ cpu->r[0] = cpu->r[0] + 0xFFFFB57Cu;
|
|
/* 0252ACC0 */ _t2 = cpu->r[3] + 0xFFFF9B68u;
|
|
/* 0252ACC0 */ rbrew_write32(cpu->mem, _t2, cpu->r[12]);
|
|
/* 0252ACC0 */ cpu->r[3] = _t2;
|
|
/* 0252ACC4 */ cpu->r[12] = 0x100C0000u;
|
|
/* 0252ACC8 */ _t3 = cpu->r[3] + 0x00000004u;
|
|
/* 0252ACC8 */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 0252ACCC */ cpu->r[12] = cpu->r[12] + 0x00002EA4u;
|
|
/* 0252ACD0 */ _t4 = cpu->r[3] + 0x00000010u;
|
|
/* 0252ACD0 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0252ACD4 */ _t5 = cpu->r[3] + 0x00000008u;
|
|
/* 0252ACD4 */ rbrew_write32(cpu->mem, _t5, cpu->r[12]);
|
|
/* 0252ACD8 */ _t6 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0252ACD8 */ rbrew_write32(cpu->mem, _t6, cpu->r[11]);
|
|
/* 0252ACDC */ Gambit_fn_027DB2F8(cpu);
|
|
/* 0252ACE0 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0252ACE4 */ cpu->r[3] = cpu->r[3] + 0x000068A4u;
|
|
/* 0252ACE8 */ Gambit_fn_02C83090(cpu);
|
|
/* 0252ACEC */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252ACEC */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0252ACF0 */ cpu->lr = cpu->r[0];
|
|
/* 0252ACF4 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 0252ACF8 */ return;
|
|
}
|
|
|
|
// fn_0252ACB8 @ 0x252acb8
|
|
void Gambit_fn_0252ACB8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_0252ACB8: ; // 0x252acb8
|
|
/* 0252ACB8 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 0252ACB8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252ACB8 */ cpu->r[1] = _t0;
|
|
/* 0252ACBC */ cpu->r[0] = cpu->r[0] + 0xFFFFB57Cu;
|
|
/* 0252ACC0 */ _t1 = cpu->r[3] + 0xFFFF9B68u;
|
|
/* 0252ACC0 */ rbrew_write32(cpu->mem, _t1, cpu->r[12]);
|
|
/* 0252ACC0 */ cpu->r[3] = _t1;
|
|
/* 0252ACC4 */ cpu->r[12] = 0x100C0000u;
|
|
/* 0252ACC8 */ _t2 = cpu->r[3] + 0x00000004u;
|
|
/* 0252ACC8 */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 0252ACCC */ cpu->r[12] = cpu->r[12] + 0x00002EA4u;
|
|
/* 0252ACD0 */ _t3 = cpu->r[3] + 0x00000010u;
|
|
/* 0252ACD0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0252ACD4 */ _t4 = cpu->r[3] + 0x00000008u;
|
|
/* 0252ACD4 */ rbrew_write32(cpu->mem, _t4, cpu->r[12]);
|
|
/* 0252ACD8 */ _t5 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0252ACD8 */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 0252ACDC */ Gambit_fn_027DB2F8(cpu);
|
|
/* 0252ACE0 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0252ACE4 */ cpu->r[3] = cpu->r[3] + 0x000068A4u;
|
|
/* 0252ACE8 */ Gambit_fn_02C83090(cpu);
|
|
/* 0252ACEC */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252ACEC */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0252ACF0 */ cpu->lr = cpu->r[0];
|
|
/* 0252ACF4 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 0252ACF8 */ return;
|
|
}
|
|
|
|
// fn_0252ACFC @ 0x252acfc
|
|
void Gambit_fn_0252ACFC(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_0252ACFC: ; // 0x252acfc
|
|
/* 0252ACFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252AD00 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252AD00 */ _t1 = _t0 & 0x00000001u;
|
|
/* 0252AD00 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0252AD00 */ goto L_0252AD04;
|
|
L_0252AD04: ; // 0x252ad04
|
|
/* 0252AD04 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0252AD04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0252AD08 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252AD08 */ _t3 = _t2 & 0x00000001u;
|
|
/* 0252AD08 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0252AD08 */ goto L_0252AD0C;
|
|
L_0252AD0C: ; // 0x252ad0c
|
|
/* 0252AD0C */ 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_0252AD10 @ 0x252ad10
|
|
void Gambit_fn_0252AD10(CPUState* cpu) {
|
|
L_0252AD10: ; // 0x252ad10
|
|
/* 0252AD10 */ return;
|
|
}
|
|
|
|
// fn_0252AD14 @ 0x252ad14
|
|
void Gambit_fn_0252AD14(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_0252AD14: ; // 0x252ad14
|
|
/* 0252AD14 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252AD18 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252AD18 */ _t1 = _t0 & 0x00000001u;
|
|
/* 0252AD18 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0252AD18 */ goto L_0252AD1C;
|
|
L_0252AD1C: ; // 0x252ad1c
|
|
/* 0252AD1C */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0252AD1C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0252AD20 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252AD20 */ _t3 = _t2 & 0x00000001u;
|
|
/* 0252AD20 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0252AD20 */ goto L_0252AD24;
|
|
L_0252AD24: ; // 0x252ad24
|
|
/* 0252AD24 */ 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_0252AD28 @ 0x252ad28
|
|
void Gambit_fn_0252AD28(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_0252AD28: ; // 0x252ad28
|
|
/* 0252AD28 */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 0252AD28 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0252AD2C */ _t1 = cpu->r[3] + 0x00000008u;
|
|
/* 0252AD2C */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0252AD30 */ cpu->r[12] = cpu->r[11] + cpu->r[12];
|
|
/* 0252AD34 */ cpu->r[11] = 0x10110000u;
|
|
/* 0252AD38 */ _t2 = cpu->r[11] + 0x00007399u;
|
|
/* 0252AD38 */ cpu->r[0] = rbrew_read8(cpu->mem, _t2);
|
|
/* 0252AD3C */ _t3 = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 0252AD3C */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[0]);
|
|
/* 0252AD40 */ return;
|
|
}
|
|
|
|
// fn_0252AD44 @ 0x252ad44
|
|
void Gambit_fn_0252AD44(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_0252AD44: ; // 0x252ad44
|
|
/* 0252AD44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252AD48 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252AD48 */ _t1 = _t0 & 0x00000001u;
|
|
/* 0252AD48 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0252AD48 */ goto L_0252AD4C;
|
|
L_0252AD4C: ; // 0x252ad4c
|
|
/* 0252AD4C */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0252AD4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0252AD50 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252AD50 */ _t3 = _t2 & 0x00000001u;
|
|
/* 0252AD50 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0252AD50 */ goto L_0252AD54;
|
|
L_0252AD54: ; // 0x252ad54
|
|
/* 0252AD54 */ 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_0252AD58 @ 0x252ad58
|
|
void Gambit_fn_0252AD58(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_0252AD58: ; // 0x252ad58
|
|
/* 0252AD58 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252AD5C */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252AD5C */ _t1 = _t0 & 0x00000001u;
|
|
/* 0252AD5C */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0252AD5C */ goto L_0252AD60;
|
|
L_0252AD60: ; // 0x252ad60
|
|
/* 0252AD60 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0252AD60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0252AD64 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252AD64 */ _t3 = _t2 & 0x00000001u;
|
|
/* 0252AD64 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0252AD64 */ goto L_0252AD68;
|
|
L_0252AD68: ; // 0x252ad68
|
|
/* 0252AD68 */ 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_0252AD6C @ 0x252ad6c
|
|
void Gambit_fn_0252AD6C(CPUState* cpu) {
|
|
L_0252AD6C: ; // 0x252ad6c
|
|
/* 0252AD6C */ return;
|
|
}
|
|
|
|
// fn_0252AD70 @ 0x252ad70
|
|
void Gambit_fn_0252AD70(CPUState* cpu) {
|
|
L_0252AD70: ; // 0x252ad70
|
|
/* 0252AD70 */ return;
|
|
}
|
|
|
|
// fn_0252AD74 @ 0x252ad74
|
|
void Gambit_fn_0252AD74(CPUState* cpu) {
|
|
L_0252AD74: ; // 0x252ad74
|
|
/* 0252AD74 */ return;
|
|
}
|
|
|
|
// fn_0252AD78 @ 0x252ad78
|
|
void Gambit_fn_0252AD78(CPUState* cpu) {
|
|
L_0252AD78: ; // 0x252ad78
|
|
/* 0252AD78 */ return;
|
|
}
|
|
|
|
// fn_0252AD7C @ 0x252ad7c
|
|
void Gambit_fn_0252AD7C(CPUState* cpu) {
|
|
L_0252AD7C: ; // 0x252ad7c
|
|
/* 0252AD7C */ return;
|
|
}
|
|
|
|
// fn_0252AD80 @ 0x252ad80
|
|
void Gambit_fn_0252AD80(CPUState* cpu) {
|
|
L_0252AD80: ; // 0x252ad80
|
|
/* 0252AD80 */ return;
|
|
}
|
|
|
|
// fn_0252AD84 @ 0x252ad84
|
|
void Gambit_fn_0252AD84(CPUState* cpu) {
|
|
L_0252AD84: ; // 0x252ad84
|
|
/* 0252AD84 */ return;
|
|
}
|
|
|
|
// fn_0252AD88 @ 0x252ad88
|
|
void Gambit_fn_0252AD88(CPUState* cpu) {
|
|
L_0252AD88: ; // 0x252ad88
|
|
/* 0252AD88 */ return;
|
|
}
|
|
|
|
// fn_0252AD8C @ 0x252ad8c
|
|
void Gambit_fn_0252AD8C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_0252AD8C: ; // 0x252ad8c
|
|
/* 0252AD8C */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 0252AD8C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0252AD90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0252AD94 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252AD94 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0252AD94 */ if (_t2) goto L_0252ADA0; else goto L_0252AD98;
|
|
L_0252AD98: ; // 0x252ad98
|
|
/* 0252AD98 */ cpu->r[3] = cpu->r[12] + 0x00000034u;
|
|
/* 0252AD9C */ return;
|
|
L_0252ADA0: ; // 0x252ada0
|
|
/* 0252ADA0 */ cpu->r[3] = 0x00000000u;
|
|
/* 0252ADA4 */ return;
|
|
}
|
|
|
|
// fn_0252ADA8 @ 0x252ada8
|
|
void Gambit_fn_0252ADA8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_0252ADA8: ; // 0x252ada8
|
|
/* 0252ADA8 */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 0252ADA8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0252ADAC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0252ADB0 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252ADB0 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0252ADB0 */ if (_t2) goto L_0252ADBC; else goto L_0252ADB4;
|
|
L_0252ADB4: ; // 0x252adb4
|
|
/* 0252ADB4 */ cpu->r[3] = cpu->r[12] + 0x00000064u;
|
|
/* 0252ADB8 */ return;
|
|
L_0252ADBC: ; // 0x252adbc
|
|
/* 0252ADBC */ cpu->r[3] = 0x00000000u;
|
|
/* 0252ADC0 */ return;
|
|
}
|
|
|
|
// fn_0252ADC4 @ 0x252adc4
|
|
void Gambit_fn_0252ADC4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0252ADC4: ; // 0x252adc4
|
|
/* 0252ADC4 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0252ADC4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0252ADC8 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0252ADC8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0252ADCC */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252ADCC */ _t2 = _t1 & 0x00000001u;
|
|
/* 0252ADCC */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 0252ADCC */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0252ADCC */ goto L_0252ADD0;
|
|
L_0252ADD0: ; // 0x252add0
|
|
/* 0252ADD0 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 0252ADD0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0252ADD4 */ _t5 = cpu->r[12] + 0x0000004Cu;
|
|
/* 0252ADD4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0252ADD8 */ cpu->ctr = cpu->r[0];
|
|
/* 0252ADDC */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0252ADE0 @ 0x252ade0
|
|
void Gambit_fn_0252ADE0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0252ADE0: ; // 0x252ade0
|
|
/* 0252ADE0 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0252ADE0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0252ADE4 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Du, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0252ADE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0252ADE8 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252ADE8 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0252ADE8 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 0252ADE8 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0252ADE8 */ goto L_0252ADEC;
|
|
L_0252ADEC: ; // 0x252adec
|
|
/* 0252ADEC */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 0252ADEC */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0252ADF0 */ _t5 = cpu->r[12] + 0x0000005Cu;
|
|
/* 0252ADF0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0252ADF4 */ cpu->ctr = cpu->r[0];
|
|
/* 0252ADF8 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0252ADFC @ 0x252adfc
|
|
void Gambit_fn_0252ADFC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0252ADFC: ; // 0x252adfc
|
|
/* 0252ADFC */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0252ADFC */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0252AE00 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Au, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0252AE00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0252AE04 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252AE04 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0252AE04 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 0252AE04 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0252AE04 */ goto L_0252AE08;
|
|
L_0252AE08: ; // 0x252ae08
|
|
/* 0252AE08 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 0252AE08 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0252AE0C */ _t5 = cpu->r[11] + 0x00000074u;
|
|
/* 0252AE0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0252AE10 */ cpu->ctr = cpu->r[0];
|
|
/* 0252AE14 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0252AE18 @ 0x252ae18
|
|
void Gambit_fn_0252AE18(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0252AE18: ; // 0x252ae18
|
|
/* 0252AE18 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0252AE18 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0252AE1C */ _t1 = cpu->r[12] + 0x0000002Cu;
|
|
/* 0252AE1C */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0252AE20 */ cpu->ctr = cpu->r[0];
|
|
/* 0252AE24 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0252AE28 @ 0x252ae28
|
|
void Gambit_fn_0252AE28(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0252AE28: ; // 0x252ae28
|
|
/* 0252AE28 */ cpu->r[0] = cpu->lr;
|
|
/* 0252AE2C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0252AE2C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252AE2C */ cpu->r[1] = _t0;
|
|
/* 0252AE30 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252AE30 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0252AE34 */ cpu->r[31] = cpu->r[3];
|
|
/* 0252AE38 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0252AE38 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0252AE3C */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0252AE3C */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0252AE40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 0252AE44 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252AE44 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0252AE44 */ if (_t5) goto L_0252AE48; else goto L_0252AE64;
|
|
L_0252AE48: ; // 0x252ae48
|
|
/* 0252AE48 */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 0252AE48 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0252AE4C */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 0252AE4C */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0252AE50 */ cpu->ctr = cpu->r[0];
|
|
/* 0252AE54 */ cpu->r[3] = cpu->r[31];
|
|
/* 0252AE58 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252AE5C */ cpu->r[0] = 0x00000002u;
|
|
/* 0252AE60 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0252AE60 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_0252AE64: ; // 0x252ae64
|
|
/* 0252AE64 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0252AE64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0252AE68 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252AE68 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0252AE6C */ cpu->lr = cpu->r[0];
|
|
/* 0252AE70 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0252AE74 */ return;
|
|
}
|
|
|
|
// fn_0252AE2C @ 0x252ae2c
|
|
void Gambit_fn_0252AE2C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0252AE2C: ; // 0x252ae2c
|
|
/* 0252AE2C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0252AE2C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252AE2C */ cpu->r[1] = _t0;
|
|
/* 0252AE30 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252AE30 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0252AE34 */ cpu->r[31] = cpu->r[3];
|
|
/* 0252AE38 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0252AE38 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0252AE3C */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0252AE3C */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0252AE40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 0252AE44 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252AE44 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0252AE44 */ if (_t5) goto L_0252AE48; else goto L_0252AE64;
|
|
L_0252AE48: ; // 0x252ae48
|
|
/* 0252AE48 */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 0252AE48 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0252AE4C */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 0252AE4C */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0252AE50 */ cpu->ctr = cpu->r[0];
|
|
/* 0252AE54 */ cpu->r[3] = cpu->r[31];
|
|
/* 0252AE58 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252AE5C */ cpu->r[0] = 0x00000002u;
|
|
/* 0252AE60 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0252AE60 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_0252AE64: ; // 0x252ae64
|
|
/* 0252AE64 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0252AE64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0252AE68 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252AE68 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0252AE6C */ cpu->lr = cpu->r[0];
|
|
/* 0252AE70 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0252AE74 */ return;
|
|
}
|
|
|
|
// fn_0252AE7C @ 0x252ae7c
|
|
void Gambit_fn_0252AE7C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_0252AE7C: ; // 0x252ae7c
|
|
/* 0252AE7C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0252AE7C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252AE7C */ cpu->r[1] = _t0;
|
|
/* 0252AE80 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252AE80 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0252AE84 */ cpu->r[31] = cpu->r[3];
|
|
/* 0252AE84 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0252AE88 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0252AE88 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0252AE8C */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252AE8C */ _t4 = _t3 & 0x00000001u;
|
|
/* 0252AE8C */ if (_t4) goto L_0252AE90; else goto L_0252AEA0;
|
|
L_0252AE90: ; // 0x252ae90
|
|
/* 0252AE90 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0252AE94 */ Gambit_fn_02801A78(cpu);
|
|
/* 0252AE98 */ cpu->r[31] = cpu->r[3];
|
|
/* 0252AE98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0252AE9C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252AE9C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0252AE9C */ if (_t6) goto L_0252AEDC; else goto L_0252AEA0;
|
|
L_0252AEA0: ; // 0x252aea0
|
|
/* 0252AEA0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0252AEA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252AEA4 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252AEA4 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0252AEA4 */ if (_t8) goto L_0252AEA8; else goto L_0252AEB8;
|
|
L_0252AEA8: ; // 0x252aea8
|
|
/* 0252AEA8 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0252AEAC */ Gambit_fn_02801A78(cpu);
|
|
/* 0252AEB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252AEB4 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252AEB4 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0252AEB4 */ if (_t10) goto L_0252AED0; else goto L_0252AEB8;
|
|
L_0252AEB8: ; // 0x252aeb8
|
|
/* 0252AEB8 */ cpu->r[12] = 0x100C0000u;
|
|
/* 0252AEBC */ cpu->r[0] = 0x00000000u;
|
|
/* 0252AEC0 */ cpu->r[12] = cpu->r[12] + 0x00002E74u;
|
|
/* 0252AEC4 */ _t11 = cpu->r[3] + 0x00000004u;
|
|
/* 0252AEC4 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 0252AEC8 */ _t12 = cpu->r[3] + 0x00000008u;
|
|
/* 0252AEC8 */ rbrew_write32(cpu->mem, _t12, cpu->r[12]);
|
|
/* 0252AECC */ _t13 = cpu->r[3] + 0x00000000u;
|
|
/* 0252AECC */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
L_0252AED0: ; // 0x252aed0
|
|
/* 0252AED0 */ cpu->r[11] = 0x100C0000u;
|
|
/* 0252AED4 */ cpu->r[11] = cpu->r[11] + 0x00002E84u;
|
|
/* 0252AED8 */ _t14 = cpu->r[31] + 0x00000008u;
|
|
/* 0252AED8 */ rbrew_write32(cpu->mem, _t14, cpu->r[11]);
|
|
L_0252AEDC: ; // 0x252aedc
|
|
/* 0252AEDC */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 0252AEDC */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0252AEE0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0252AEE4 */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252AEE4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0252AEE8 */ cpu->lr = cpu->r[0];
|
|
/* 0252AEEC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0252AEF0 */ return;
|
|
}
|
|
|
|
// fn_0252AEFC @ 0x252aefc
|
|
void Gambit_fn_0252AEFC(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_0252AEFC: ; // 0x252aefc
|
|
/* 0252AEFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252AF00 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252AF00 */ _t1 = _t0 & 0x00000001u;
|
|
/* 0252AF00 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0252AF00 */ goto L_0252AF04;
|
|
L_0252AF04: ; // 0x252af04
|
|
/* 0252AF04 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0252AF04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0252AF08 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252AF08 */ _t3 = _t2 & 0x00000001u;
|
|
/* 0252AF08 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0252AF08 */ goto L_0252AF0C;
|
|
L_0252AF0C: ; // 0x252af0c
|
|
/* 0252AF0C */ 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_0252AF10 @ 0x252af10
|
|
void Gambit_fn_0252AF10(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0252AF10: ; // 0x252af10
|
|
/* 0252AF10 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0252AF10 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0252AF14 */ _t1 = cpu->r[12] + 0x0000008Cu;
|
|
/* 0252AF14 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0252AF18 */ cpu->ctr = cpu->r[0];
|
|
/* 0252AF1C */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0252AF20 @ 0x252af20
|
|
void Gambit_fn_0252AF20(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0252AF20: ; // 0x252af20
|
|
/* 0252AF20 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0252AF20 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0252AF24 */ _t1 = cpu->r[12] + 0x00000124u;
|
|
/* 0252AF24 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0252AF28 */ cpu->ctr = cpu->r[0];
|
|
/* 0252AF2C */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0252AF30 @ 0x252af30
|
|
void Gambit_fn_0252AF30(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0252AF30: ; // 0x252af30
|
|
/* 0252AF30 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0252AF30 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0252AF34 */ _t1 = cpu->r[12] + 0x00000124u;
|
|
/* 0252AF34 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0252AF38 */ cpu->ctr = cpu->r[0];
|
|
/* 0252AF3C */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0252AF40 @ 0x252af40
|
|
void Gambit_fn_0252AF40(CPUState* cpu) {
|
|
L_0252AF40: ; // 0x252af40
|
|
/* 0252AF40 */ cpu->r[3] = 0x00000001u;
|
|
/* 0252AF44 */ return;
|
|
}
|
|
|
|
// fn_0252AF48 @ 0x252af48
|
|
void Gambit_fn_0252AF48(CPUState* cpu) {
|
|
L_0252AF48: ; // 0x252af48
|
|
/* 0252AF48 */ return;
|
|
}
|
|
|
|
// fn_0252AF4C @ 0x252af4c
|
|
void Gambit_fn_0252AF4C(CPUState* cpu) {
|
|
L_0252AF4C: ; // 0x252af4c
|
|
/* 0252AF4C */ return;
|
|
}
|
|
|
|
// fn_0252AF50 @ 0x252af50
|
|
void Gambit_fn_0252AF50(CPUState* cpu) {
|
|
L_0252AF50: ; // 0x252af50
|
|
/* 0252AF50 */ return;
|
|
}
|
|
|
|
// fn_0252AF54 @ 0x252af54
|
|
void Gambit_fn_0252AF54(CPUState* cpu) {
|
|
L_0252AF54: ; // 0x252af54
|
|
/* 0252AF54 */ cpu->r[3] = 0x00000001u;
|
|
/* 0252AF58 */ return;
|
|
}
|
|
|
|
// fn_0252AF5C @ 0x252af5c
|
|
void Gambit_fn_0252AF5C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0252AF5C: ; // 0x252af5c
|
|
/* 0252AF5C */ cpu->r[10] = 0x101F0000u;
|
|
/* 0252AF60 */ _t0 = cpu->r[10] + 0x00006338u;
|
|
/* 0252AF60 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0252AF60 */ cpu->r[10] = _t0;
|
|
/* 0252AF64 */ _t1 = cpu->r[3] + 0x00000000u;
|
|
/* 0252AF64 */ rbrew_write32(cpu->mem, _t1, cpu->r[11]);
|
|
/* 0252AF68 */ _t2 = cpu->r[10] + 0x00000004u;
|
|
/* 0252AF68 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0252AF6C */ _t3 = cpu->r[3] + 0x00000004u;
|
|
/* 0252AF6C */ rbrew_write32(cpu->mem, _t3, cpu->r[12]);
|
|
/* 0252AF70 */ _t4 = cpu->r[10] + 0x00000008u;
|
|
/* 0252AF70 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0252AF74 */ _t5 = cpu->r[3] + 0x00000008u;
|
|
/* 0252AF74 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0252AF78 */ return;
|
|
}
|
|
|
|
// fn_0252AF7C @ 0x252af7c
|
|
void Gambit_fn_0252AF7C(CPUState* cpu) {
|
|
L_0252AF7C: ; // 0x252af7c
|
|
/* 0252AF7C */ return;
|
|
}
|
|
|
|
// fn_0252AF80 @ 0x252af80
|
|
void Gambit_fn_0252AF80(CPUState* cpu) {
|
|
L_0252AF80: ; // 0x252af80
|
|
/* 0252AF80 */ return;
|
|
}
|
|
|
|
// fn_0252AF84 @ 0x252af84
|
|
void Gambit_fn_0252AF84(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0252AF84: ; // 0x252af84
|
|
/* 0252AF84 */ _t0 = cpu->r[3] + 0x00000140u;
|
|
/* 0252AF84 */ cpu->r[3] = rbrew_read8(cpu->mem, _t0);
|
|
/* 0252AF88 */ return;
|
|
}
|
|
|
|
// fn_0252AF8C @ 0x252af8c
|
|
void Gambit_fn_0252AF8C(CPUState* cpu) {
|
|
L_0252AF8C: ; // 0x252af8c
|
|
/* 0252AF8C */ cpu->r[3] = 0x00000001u;
|
|
/* 0252AF90 */ return;
|
|
}
|
|
|
|
// fn_0252AF94 @ 0x252af94
|
|
void Gambit_fn_0252AF94(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0252AF94: ; // 0x252af94
|
|
/* 0252AF94 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0252AF94 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0252AF98 */ _t1 = cpu->r[12] + 0x00000234u;
|
|
/* 0252AF98 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0252AF9C */ cpu->ctr = cpu->r[0];
|
|
/* 0252AFA0 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0252AFA4 @ 0x252afa4
|
|
void Gambit_fn_0252AFA4(CPUState* cpu) {
|
|
L_0252AFA4: ; // 0x252afa4
|
|
/* 0252AFA4 */ return;
|
|
}
|
|
|
|
// fn_0252AFA8 @ 0x252afa8
|
|
void Gambit_fn_0252AFA8(CPUState* cpu) {
|
|
L_0252AFA8: ; // 0x252afa8
|
|
/* 0252AFA8 */ return;
|
|
}
|
|
|
|
// fn_0252AFAC @ 0x252afac
|
|
void Gambit_fn_0252AFAC(CPUState* cpu) {
|
|
L_0252AFAC: ; // 0x252afac
|
|
/* 0252AFAC */ return;
|
|
}
|
|
|
|
// fn_0252AFB0 @ 0x252afb0
|
|
void Gambit_fn_0252AFB0(CPUState* cpu) {
|
|
L_0252AFB0: ; // 0x252afb0
|
|
/* 0252AFB0 */ return;
|
|
}
|
|
|
|
// fn_0252AFB4 @ 0x252afb4
|
|
void Gambit_fn_0252AFB4(CPUState* cpu) {
|
|
L_0252AFB4: ; // 0x252afb4
|
|
/* 0252AFB4 */ return;
|
|
}
|
|
|
|
// fn_0252AFB8 @ 0x252afb8
|
|
void Gambit_fn_0252AFB8(CPUState* cpu) {
|
|
L_0252AFB8: ; // 0x252afb8
|
|
/* 0252AFB8 */ return;
|
|
}
|
|
|
|
// fn_0252AFBC @ 0x252afbc
|
|
void Gambit_fn_0252AFBC(CPUState* cpu) {
|
|
L_0252AFBC: ; // 0x252afbc
|
|
/* 0252AFBC */ return;
|
|
}
|
|
|
|
// fn_0252AFC0 @ 0x252afc0
|
|
void Gambit_fn_0252AFC0(CPUState* cpu) {
|
|
L_0252AFC0: ; // 0x252afc0
|
|
/* 0252AFC0 */ return;
|
|
}
|
|
|
|
// fn_0252AFC4 @ 0x252afc4
|
|
void Gambit_fn_0252AFC4(CPUState* cpu) {
|
|
L_0252AFC4: ; // 0x252afc4
|
|
/* 0252AFC4 */ cpu->r[3] = 0x00000000u;
|
|
/* 0252AFC8 */ return;
|
|
}
|
|
|
|
// fn_0252AFCC @ 0x252afcc
|
|
void Gambit_fn_0252AFCC(CPUState* cpu) {
|
|
L_0252AFCC: ; // 0x252afcc
|
|
/* 0252AFCC */ return;
|
|
}
|
|
|
|
// fn_0252AFD0 @ 0x252afd0
|
|
void Gambit_fn_0252AFD0(CPUState* cpu) {
|
|
L_0252AFD0: ; // 0x252afd0
|
|
/* 0252AFD0 */ return;
|
|
}
|
|
|
|
// fn_0252AFD4 @ 0x252afd4
|
|
void Gambit_fn_0252AFD4(CPUState* cpu) {
|
|
L_0252AFD4: ; // 0x252afd4
|
|
/* 0252AFD4 */ cpu->r[3] = 0x00000001u;
|
|
/* 0252AFD8 */ return;
|
|
}
|
|
|
|
// fn_0252AFDC @ 0x252afdc
|
|
void Gambit_fn_0252AFDC(CPUState* cpu) {
|
|
L_0252AFDC: ; // 0x252afdc
|
|
/* 0252AFDC */ cpu->r[3] = 0x00000000u;
|
|
/* 0252AFE0 */ return;
|
|
}
|
|
|
|
// fn_0252AFE4 @ 0x252afe4
|
|
void Gambit_fn_0252AFE4(CPUState* cpu) {
|
|
L_0252AFE4: ; // 0x252afe4
|
|
/* 0252AFE4 */ cpu->r[3] = 0x00000000u;
|
|
/* 0252AFE8 */ return;
|
|
}
|
|
|
|
// fn_0252AFEC @ 0x252afec
|
|
void Gambit_fn_0252AFEC(CPUState* cpu) {
|
|
L_0252AFEC: ; // 0x252afec
|
|
/* 0252AFEC */ cpu->r[3] = 0x00000000u;
|
|
/* 0252AFF0 */ return;
|
|
}
|
|
|
|
// fn_0252AFF4 @ 0x252aff4
|
|
void Gambit_fn_0252AFF4(CPUState* cpu) {
|
|
L_0252AFF4: ; // 0x252aff4
|
|
/* 0252AFF4 */ cpu->r[3] = 0x00000000u;
|
|
/* 0252AFF8 */ return;
|
|
}
|
|
|
|
// fn_0252AFFC @ 0x252affc
|
|
void Gambit_fn_0252AFFC(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0252AFFC: ; // 0x252affc
|
|
/* 0252AFFC */ _t0 = cpu->r[3] + 0x000000E4u;
|
|
/* 0252AFFC */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 0252B000 */ return;
|
|
}
|
|
|
|
// fn_0252B004 @ 0x252b004
|
|
void Gambit_fn_0252B004(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0252B004: ; // 0x252b004
|
|
/* 0252B004 */ _t0 = cpu->r[4] + 0x00000078u;
|
|
/* 0252B004 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0252B008 */ _t1 = cpu->r[3] + 0x00000000u;
|
|
/* 0252B008 */ rbrew_write32(cpu->mem, _t1, cpu->r[12]);
|
|
/* 0252B00C */ _t2 = cpu->r[4] + 0x0000007Cu;
|
|
/* 0252B00C */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0252B010 */ _t3 = cpu->r[3] + 0x00000004u;
|
|
/* 0252B010 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0252B014 */ _t4 = cpu->r[4] + 0x00000080u;
|
|
/* 0252B014 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0252B018 */ _t5 = cpu->r[3] + 0x00000008u;
|
|
/* 0252B018 */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 0252B01C */ return;
|
|
}
|
|
|
|
// fn_0252B020 @ 0x252b020
|
|
void Gambit_fn_0252B020(CPUState* cpu) {
|
|
L_0252B020: ; // 0x252b020
|
|
/* 0252B020 */ cpu->r[3] = 0x100C0000u;
|
|
/* 0252B024 */ cpu->r[3] = cpu->r[3] + 0x00002EB0u;
|
|
/* 0252B028 */ return;
|
|
}
|
|
|
|
// fn_0252B02C @ 0x252b02c
|
|
void Gambit_fn_0252B02C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32;
|
|
|
|
L_0252B02C: ; // 0x252b02c
|
|
/* 0252B02C */ cpu->r[10] = 0x101D0000u;
|
|
/* 0252B030 */ _t0 = cpu->r[10] + 0x000004C8u;
|
|
/* 0252B030 */ cpu->r[10] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0252B034 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0252B038 */ cpu->r[10] = 0x101D0000u;
|
|
/* 0252B03C */ cpu->r[10] = cpu->r[10] + 0x000009FCu;
|
|
/* 0252B040 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252B040 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0252B040 */ if (_t2) goto L_0252B044; else goto L_0252B05C;
|
|
L_0252B044: ; // 0x252b044
|
|
/* 0252B044 */ cpu->r[0] = 0x100C0000u;
|
|
/* 0252B048 */ cpu->r[9] = 0x00000001u;
|
|
/* 0252B04C */ cpu->r[11] = 0x101D0000u;
|
|
/* 0252B050 */ cpu->r[0] = cpu->r[0] + 0x00002E94u;
|
|
/* 0252B054 */ _t3 = cpu->r[11] + 0x000004C8u;
|
|
/* 0252B054 */ rbrew_write32(cpu->mem, _t3, cpu->r[9]);
|
|
/* 0252B058 */ _t4 = cpu->r[10] + 0x00000000u;
|
|
/* 0252B058 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
L_0252B05C: ; // 0x252b05c
|
|
/* 0252B05C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[10]);
|
|
/* 0252B060 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252B060 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0252B060 */ if (_t6) goto L_0252B064; else goto L_0252B06C;
|
|
L_0252B064: ; // 0x252b064
|
|
/* 0252B064 */ cpu->r[3] = 0x00000001u;
|
|
/* 0252B068 */ return;
|
|
L_0252B06C: ; // 0x252b06c
|
|
/* 0252B06C */ cpu->r[9] = 0x101D0000u;
|
|
/* 0252B070 */ _t7 = cpu->r[9] + 0xFFFFDDF0u;
|
|
/* 0252B070 */ cpu->r[9] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0252B074 */ cpu->r[11] = 0x101D0000u;
|
|
/* 0252B078 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0252B07C */ cpu->r[11] = cpu->r[11] + 0xFFFFFF40u;
|
|
/* 0252B080 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252B080 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0252B080 */ if (_t9) goto L_0252B084; else goto L_0252B09C;
|
|
L_0252B084: ; // 0x252b084
|
|
/* 0252B084 */ cpu->r[9] = 0x100C0000u;
|
|
/* 0252B088 */ cpu->r[0] = 0x00000001u;
|
|
/* 0252B08C */ cpu->r[10] = 0x101D0000u;
|
|
/* 0252B090 */ cpu->r[9] = cpu->r[9] + 0x00002E64u;
|
|
/* 0252B094 */ _t10 = cpu->r[10] + 0xFFFFDDF0u;
|
|
/* 0252B094 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 0252B098 */ _t11 = cpu->r[11] + 0x00000000u;
|
|
/* 0252B098 */ rbrew_write32(cpu->mem, _t11, cpu->r[9]);
|
|
L_0252B09C: ; // 0x252b09c
|
|
/* 0252B09C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[11]);
|
|
/* 0252B0A0 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252B0A0 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0252B0A0 */ if (_t13) goto L_0252B0A4; else goto L_0252B0AC;
|
|
L_0252B0A4: ; // 0x252b0a4
|
|
/* 0252B0A4 */ cpu->r[0] = 0x00000001u;
|
|
/* 0252B0A8 */ goto L_0252B164;
|
|
L_0252B0AC: ; // 0x252b0ac
|
|
/* 0252B0AC */ cpu->r[11] = 0x101D0000u;
|
|
/* 0252B0B0 */ _t14 = cpu->r[11] + 0xFFFFDA10u;
|
|
/* 0252B0B0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0252B0B4 */ cpu->r[9] = 0x101D0000u;
|
|
/* 0252B0B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0252B0BC */ cpu->r[9] = cpu->r[9] + 0xFFFFFBBCu;
|
|
/* 0252B0C0 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252B0C0 */ _t16 = _t15 & 0x00000001u;
|
|
/* 0252B0C0 */ if (_t16) goto L_0252B0C4; else goto L_0252B0DC;
|
|
L_0252B0C4: ; // 0x252b0c4
|
|
/* 0252B0C4 */ cpu->r[11] = 0x100C0000u;
|
|
/* 0252B0C8 */ cpu->r[10] = 0x00000001u;
|
|
/* 0252B0CC */ cpu->r[12] = 0x101D0000u;
|
|
/* 0252B0D0 */ cpu->r[11] = cpu->r[11] + 0x00002E54u;
|
|
/* 0252B0D4 */ _t17 = cpu->r[12] + 0xFFFFDA10u;
|
|
/* 0252B0D4 */ rbrew_write32(cpu->mem, _t17, cpu->r[10]);
|
|
/* 0252B0D8 */ _t18 = cpu->r[9] + 0x00000000u;
|
|
/* 0252B0D8 */ rbrew_write32(cpu->mem, _t18, cpu->r[11]);
|
|
L_0252B0DC: ; // 0x252b0dc
|
|
/* 0252B0DC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[9]);
|
|
/* 0252B0E0 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252B0E0 */ _t20 = _t19 & 0x00000001u;
|
|
/* 0252B0E0 */ if (_t20) goto L_0252B0E4; else goto L_0252B0EC;
|
|
L_0252B0E4: ; // 0x252b0e4
|
|
/* 0252B0E4 */ cpu->r[0] = 0x00000001u;
|
|
/* 0252B0E8 */ goto L_0252B160;
|
|
L_0252B0EC: ; // 0x252b0ec
|
|
/* 0252B0EC */ cpu->r[9] = 0x101D0000u;
|
|
/* 0252B0F0 */ _t21 = cpu->r[9] + 0xFFFFD4E8u;
|
|
/* 0252B0F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0252B0F0 */ cpu->r[9] = _t21;
|
|
/* 0252B0F4 */ cpu->r[10] = 0x101D0000u;
|
|
/* 0252B0F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0252B0FC */ cpu->r[10] = cpu->r[10] + 0xFFFFD4ECu;
|
|
/* 0252B100 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252B100 */ _t23 = _t22 & 0x00000001u;
|
|
/* 0252B100 */ if (_t23) goto L_0252B104; else goto L_0252B118;
|
|
L_0252B104: ; // 0x252b104
|
|
/* 0252B104 */ cpu->r[0] = 0x100C0000u;
|
|
/* 0252B108 */ cpu->r[11] = 0x00000001u;
|
|
/* 0252B10C */ cpu->r[0] = cpu->r[0] + 0x00002E44u;
|
|
/* 0252B110 */ _t24 = cpu->r[9] + 0x00000000u;
|
|
/* 0252B110 */ rbrew_write32(cpu->mem, _t24, cpu->r[11]);
|
|
/* 0252B114 */ _t25 = cpu->r[10] + 0x00000000u;
|
|
/* 0252B114 */ rbrew_write32(cpu->mem, _t25, cpu->r[0]);
|
|
L_0252B118: ; // 0x252b118
|
|
/* 0252B118 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[10]);
|
|
/* 0252B11C */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252B11C */ _t27 = _t26 & 0x00000001u;
|
|
/* 0252B11C */ if (_t27) goto L_0252B120; else goto L_0252B128;
|
|
L_0252B120: ; // 0x252b120
|
|
/* 0252B120 */ cpu->r[0] = 0x00000001u;
|
|
/* 0252B124 */ goto L_0252B160;
|
|
L_0252B128: ; // 0x252b128
|
|
/* 0252B128 */ cpu->r[10] = 0x101D0000u;
|
|
/* 0252B12C */ _t28 = cpu->r[10] + 0xFFFFD4E0u;
|
|
/* 0252B12C */ cpu->r[9] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0252B12C */ cpu->r[10] = _t28;
|
|
/* 0252B130 */ cpu->r[11] = 0x101D0000u;
|
|
/* 0252B134 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0252B138 */ cpu->r[11] = cpu->r[11] + 0xFFFFD4E4u;
|
|
/* 0252B13C */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252B13C */ _t30 = _t29 & 0x00000001u;
|
|
/* 0252B13C */ if (_t30) goto L_0252B140; else goto L_0252B154;
|
|
L_0252B140: ; // 0x252b140
|
|
/* 0252B140 */ cpu->r[9] = 0x100C0000u;
|
|
/* 0252B144 */ cpu->r[0] = 0x00000001u;
|
|
/* 0252B148 */ cpu->r[9] = cpu->r[9] + 0x00002DD4u;
|
|
/* 0252B14C */ _t31 = cpu->r[10] + 0x00000000u;
|
|
/* 0252B14C */ rbrew_write32(cpu->mem, _t31, cpu->r[0]);
|
|
/* 0252B150 */ _t32 = cpu->r[11] + 0x00000000u;
|
|
/* 0252B150 */ rbrew_write32(cpu->mem, _t32, cpu->r[9]);
|
|
L_0252B154: ; // 0x252b154
|
|
/* 0252B154 */ cpu->r[0] = cpu->r[4] ^ cpu->r[11];
|
|
/* 0252B158 */ cpu->r[0] = rbrew_clz32(cpu->r[0]);
|
|
/* 0252B15C */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
L_0252B160: ; // 0x252b160
|
|
/* 0252B160 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
L_0252B164: ; // 0x252b164
|
|
/* 0252B164 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 0252B168 */ return;
|
|
}
|
|
|
|
// fn_0252B16C @ 0x252b16c
|
|
void Gambit_fn_0252B16C(CPUState* cpu) {
|
|
L_0252B16C: ; // 0x252b16c
|
|
/* 0252B16C */ return;
|
|
}
|
|
|
|
// fn_0252B170 @ 0x252b170
|
|
void Gambit_fn_0252B170(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0252B170: ; // 0x252b170
|
|
/* 0252B170 */ cpu->r[12] = 0x100C0000u;
|
|
/* 0252B174 */ _t0 = cpu->r[12] + 0x00002FE4u;
|
|
/* 0252B174 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 0252B178 */ return;
|
|
}
|
|
|
|
// fn_0252B17C @ 0x252b17c
|
|
void Gambit_fn_0252B17C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_023A38F4: ; // 0x23a38f4
|
|
/* 023A38F4 */ cpu->r[0] = cpu->lr;
|
|
/* 023A38F8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 023A38F8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 023A38F8 */ cpu->r[1] = _t0;
|
|
/* 023A38FC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023A38FC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 023A3900 */ cpu->r[31] = cpu->r[3];
|
|
/* 023A3904 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 023A3904 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 023A3908 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 023A3908 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 023A390C */ cpu->r[12] = 0x00000000u;
|
|
/* 023A3910 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 023A3914 */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 023A3914 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 023A3918 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A3918 */ _t6 = _t5 & 0x00000001u;
|
|
/* 023A3918 */ if (_t6) goto L_023A3940; else goto L_023A391C;
|
|
L_023A391C: ; // 0x23a391c
|
|
/* 023A391C */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 023A391C */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 023A3920 */ /* nop */
|
|
/* 023A3924 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 023A3928 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A3928 */ _t9 = _t8 & 0x00000001u;
|
|
/* 023A3928 */ if (_t9) goto L_023A392C; else goto L_023A3940;
|
|
L_023A392C: ; // 0x23a392c
|
|
/* 023A392C */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 023A392C */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 023A3930 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 023A3930 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 023A3934 */ cpu->ctr = cpu->r[0];
|
|
/* 023A3938 */ cpu->r[3] = cpu->r[31];
|
|
/* 023A393C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_023A3940: ; // 0x23a3940
|
|
/* 023A3940 */ cpu->r[3] = cpu->r[31];
|
|
/* 023A3944 */ Gambit_fn_023A386C(cpu);
|
|
/* 023A3948 */ cpu->r[3] = cpu->r[31];
|
|
/* 023A394C */ Gambit_fn_027FC37C(cpu);
|
|
/* 023A3950 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 023A3950 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 023A3954 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023A3954 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 023A3958 */ cpu->lr = cpu->r[0];
|
|
/* 023A395C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 023A3960 */ return;
|
|
L_0252B17C: ; // 0x252b17c
|
|
/* 0252B17C */ cpu->r[3] = cpu->r[3] + 0x000001B0u;
|
|
/* 0252B180 */ goto L_023A38F4;
|
|
}
|
|
|
|
// fn_0252B184 @ 0x252b184
|
|
void Gambit_fn_0252B184(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0252B184: ; // 0x252b184
|
|
/* 0252B184 */ cpu->r[0] = cpu->lr;
|
|
/* 0252B188 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0252B188 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252B188 */ cpu->r[1] = _t0;
|
|
/* 0252B18C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252B18C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0252B190 */ cpu->r[31] = cpu->r[3];
|
|
/* 0252B194 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0252B194 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0252B198 */ _t3 = cpu->r[31] + 0x000001BEu;
|
|
/* 0252B198 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0252B19C */ cpu->r[3] = cpu->r[31] + 0x000001B0u;
|
|
/* 0252B1A0 */ /* nop */
|
|
/* 0252B1A4 */ Gambit_fn_027FC35C(cpu);
|
|
/* 0252B1A8 */ cpu->r[3] = cpu->r[31] + 0x000001B0u;
|
|
/* 0252B1AC */ Gambit_fn_023A37E4(cpu);
|
|
/* 0252B1B0 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 0252B1B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0252B1B4 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252B1B4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0252B1B8 */ cpu->lr = cpu->r[0];
|
|
/* 0252B1BC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0252B1C0 */ return;
|
|
}
|
|
|
|
// fn_0252B188 @ 0x252b188
|
|
void Gambit_fn_0252B188(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0252B188: ; // 0x252b188
|
|
/* 0252B188 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0252B188 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252B188 */ cpu->r[1] = _t0;
|
|
/* 0252B18C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252B18C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0252B190 */ cpu->r[31] = cpu->r[3];
|
|
/* 0252B194 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0252B194 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0252B198 */ _t3 = cpu->r[31] + 0x000001BEu;
|
|
/* 0252B198 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0252B19C */ cpu->r[3] = cpu->r[31] + 0x000001B0u;
|
|
/* 0252B1A0 */ /* nop */
|
|
/* 0252B1A4 */ Gambit_fn_027FC35C(cpu);
|
|
/* 0252B1A8 */ cpu->r[3] = cpu->r[31] + 0x000001B0u;
|
|
/* 0252B1AC */ Gambit_fn_023A37E4(cpu);
|
|
/* 0252B1B0 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 0252B1B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0252B1B4 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252B1B4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0252B1B8 */ cpu->lr = cpu->r[0];
|
|
/* 0252B1BC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0252B1C0 */ return;
|
|
}
|
|
|
|
// fn_0252B1C4 @ 0x252b1c4
|
|
void Gambit_fn_0252B1C4(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_0252B1C4: ; // 0x252b1c4
|
|
/* 0252B1C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252B1C8 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252B1C8 */ _t1 = _t0 & 0x00000001u;
|
|
/* 0252B1C8 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0252B1C8 */ goto L_0252B1CC;
|
|
L_0252B1CC: ; // 0x252b1cc
|
|
/* 0252B1CC */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0252B1CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0252B1D0 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252B1D0 */ _t3 = _t2 & 0x00000001u;
|
|
/* 0252B1D0 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0252B1D0 */ goto L_0252B1D4;
|
|
L_0252B1D4: ; // 0x252b1d4
|
|
/* 0252B1D4 */ 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_0252B1D8 @ 0x252b1d8
|
|
void Gambit_fn_0252B1D8(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_0252B1D8: ; // 0x252b1d8
|
|
/* 0252B1D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252B1DC */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252B1DC */ _t1 = _t0 & 0x00000001u;
|
|
/* 0252B1DC */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0252B1DC */ goto L_0252B1E0;
|
|
L_0252B1E0: ; // 0x252b1e0
|
|
/* 0252B1E0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0252B1E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0252B1E4 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252B1E4 */ _t3 = _t2 & 0x00000001u;
|
|
/* 0252B1E4 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0252B1E4 */ goto L_0252B1E8;
|
|
L_0252B1E8: ; // 0x252b1e8
|
|
/* 0252B1E8 */ 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_0252B1EC @ 0x252b1ec
|
|
void Gambit_fn_0252B1EC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _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_0252B1EC: ; // 0x252b1ec
|
|
/* 0252B1EC */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 0252B1EC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252B1EC */ cpu->r[1] = _t0;
|
|
/* 0252B1F0 */ /* nop */
|
|
/* 0252B1F4 */ cpu->r[0] = cpu->lr;
|
|
/* 0252B1F8 */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 0252B1F8 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0252B1FC */ cpu->r[29] = cpu->r[6];
|
|
/* 0252B200 */ cpu->r[28] = cpu->r[3];
|
|
/* 0252B204 */ cpu->r[30] = cpu->r[5];
|
|
/* 0252B208 */ _t2 = cpu->r[30] + 0x00000000u;
|
|
/* 0252B208 */ cpu->r[27] = rbrew_read8(cpu->mem, _t2);
|
|
/* 0252B20C */ cpu->r[31] = 0x101D0000u;
|
|
/* 0252B210 */ _t3 = cpu->r[28] + 0x0000001Cu;
|
|
/* 0252B210 */ rbrew_write32(cpu->mem, _t3, cpu->r[4]);
|
|
/* 0252B214 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0252B218 */ _t4 = cpu->r[28] + 0x0000000Fu;
|
|
/* 0252B218 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[27]);
|
|
/* 0252B21C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252B21C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0252B21C */ if (_t6) goto L_0252B260; else goto L_0252B220;
|
|
L_0252B220: ; // 0x252b220
|
|
/* 0252B220 */ _t7 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 0252B220 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0252B224 */ Gambit_fn_02826F20(cpu);
|
|
/* 0252B228 */ _t8 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0252B228 */ cpu->r[9] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0252B22C */ _t9 = cpu->r[9] + 0x00000034u;
|
|
/* 0252B22C */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0252B230 */ cpu->ctr = cpu->r[0];
|
|
/* 0252B234 */ cpu->r[5] = 0x00000004u;
|
|
/* 0252B238 */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0252B23C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252B240 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0252B244 */ cpu->r[0] = cpu->r[27];
|
|
/* 0252B248 */ _t10 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252B248 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0252B248 */ if (_t11) goto L_0252B250; else goto L_0252B24C;
|
|
L_0252B24C: ; // 0x252b24c
|
|
/* 0252B24C */ cpu->r[0] = 0x00000001u;
|
|
L_0252B250: ; // 0x252b250
|
|
/* 0252B250 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252B254 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252B254 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0252B254 */ if (_t13) goto L_0252B260; else goto L_0252B258;
|
|
L_0252B258: ; // 0x252b258
|
|
/* 0252B258 */ _t14 = cpu->r[28] + 0x00000024u;
|
|
/* 0252B258 */ rbrew_write32(cpu->mem, _t14, cpu->r[3]);
|
|
/* 0252B25C */ _t15 = cpu->r[28] + 0x00000020u;
|
|
/* 0252B25C */ rbrew_write32(cpu->mem, _t15, cpu->r[27]);
|
|
L_0252B260: ; // 0x252b260
|
|
/* 0252B260 */ _t16 = cpu->r[28] + 0x00000020u;
|
|
/* 0252B260 */ cpu->r[7] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0252B264 */ cpu->r[0] = 0x00000000u;
|
|
/* 0252B268 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 0252B26C */ cpu->r[12] = cpu->r[0];
|
|
/* 0252B270 */ _t17 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252B270 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0252B270 */ if (_t18) goto L_0252B274; else goto L_0252B298;
|
|
L_0252B274: ; // 0x252b274
|
|
/* 0252B274 */ cpu->ctr = cpu->r[7];
|
|
/* 0252B278 */ cpu->r[10] = 0x00000000u;
|
|
L_0252B27C: ; // 0x252b27c
|
|
/* 0252B27C */ _t19 = cpu->r[28] + 0x00000024u;
|
|
/* 0252B27C */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0252B280 */ _t20 = cpu->r[11] + cpu->r[10];
|
|
/* 0252B280 */ rbrew_write16(cpu->mem, _t20, (uint16_t)cpu->r[0]);
|
|
/* 0252B284 */ cpu->r[8] = cpu->r[11] + cpu->r[10];
|
|
/* 0252B288 */ _t21 = cpu->r[8] + 0x00000004u;
|
|
/* 0252B288 */ rbrew_write32(cpu->mem, _t21, cpu->r[12]);
|
|
/* 0252B28C */ cpu->r[10] = cpu->r[10] + 0x00000008u;
|
|
/* 0252B290 */ _t22 = cpu->r[8] + 0x00000002u;
|
|
/* 0252B290 */ rbrew_write16(cpu->mem, _t22, (uint16_t)cpu->r[0]);
|
|
/* 0252B294 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0252B294 */ _t23 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0252B294 */ _t24 = _t23 >> (0x00000002u & 31u);
|
|
/* 0252B294 */ _t25 = _t24 & 0x00000001u;
|
|
/* 0252B294 */ if (_t25) goto L_0252B27C; else goto L_0252B298;
|
|
L_0252B298: ; // 0x252b298
|
|
/* 0252B298 */ _t26 = cpu->r[28] + 0x0000000Fu;
|
|
/* 0252B298 */ cpu->r[27] = rbrew_read8(cpu->mem, _t26);
|
|
/* 0252B29C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0252B2A0 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252B2A0 */ _t28 = _t27 & 0x00000001u;
|
|
/* 0252B2A0 */ if (_t28) goto L_0252B2E4; else goto L_0252B2A4;
|
|
L_0252B2A4: ; // 0x252b2a4
|
|
/* 0252B2A4 */ _t29 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 0252B2A4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0252B2A8 */ Gambit_fn_02826F20(cpu);
|
|
/* 0252B2AC */ _t30 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0252B2AC */ cpu->r[12] = rbrew_read32(cpu->mem, _t30);
|
|
/* 0252B2B0 */ _t31 = cpu->r[12] + 0x00000034u;
|
|
/* 0252B2B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0252B2B4 */ cpu->ctr = cpu->r[0];
|
|
/* 0252B2B8 */ cpu->r[5] = 0x00000004u;
|
|
/* 0252B2BC */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0252B2C0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252B2C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0252B2C8 */ cpu->r[11] = cpu->r[27];
|
|
/* 0252B2CC */ _t32 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252B2CC */ _t33 = _t32 & 0x00000001u;
|
|
/* 0252B2CC */ if (_t33) goto L_0252B2D4; else goto L_0252B2D0;
|
|
L_0252B2D0: ; // 0x252b2d0
|
|
/* 0252B2D0 */ cpu->r[11] = 0x00000001u;
|
|
L_0252B2D4: ; // 0x252b2d4
|
|
/* 0252B2D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252B2D8 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252B2D8 */ _t35 = _t34 & 0x00000001u;
|
|
/* 0252B2D8 */ if (_t35) goto L_0252B2E4; else goto L_0252B2DC;
|
|
L_0252B2DC: ; // 0x252b2dc
|
|
/* 0252B2DC */ _t36 = cpu->r[28] + 0x0000002Cu;
|
|
/* 0252B2DC */ rbrew_write32(cpu->mem, _t36, cpu->r[3]);
|
|
/* 0252B2E0 */ _t37 = cpu->r[28] + 0x00000028u;
|
|
/* 0252B2E0 */ rbrew_write32(cpu->mem, _t37, cpu->r[27]);
|
|
L_0252B2E4: ; // 0x252b2e4
|
|
/* 0252B2E4 */ _t38 = cpu->r[28] + 0x00000028u;
|
|
/* 0252B2E4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t38);
|
|
/* 0252B2E8 */ cpu->r[0] = 0x00000000u;
|
|
/* 0252B2EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 0252B2F0 */ cpu->r[12] = cpu->r[0];
|
|
/* 0252B2F4 */ _t39 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252B2F4 */ _t40 = _t39 & 0x00000001u;
|
|
/* 0252B2F4 */ if (_t40) goto L_0252B2F8; else goto L_0252B31C;
|
|
L_0252B2F8: ; // 0x252b2f8
|
|
/* 0252B2F8 */ cpu->ctr = cpu->r[6];
|
|
/* 0252B2FC */ cpu->r[9] = 0x00000000u;
|
|
L_0252B300: ; // 0x252b300
|
|
/* 0252B300 */ _t41 = cpu->r[28] + 0x0000002Cu;
|
|
/* 0252B300 */ cpu->r[5] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0252B304 */ _t42 = cpu->r[5] + cpu->r[9];
|
|
/* 0252B304 */ rbrew_write16(cpu->mem, _t42, (uint16_t)cpu->r[0]);
|
|
/* 0252B308 */ cpu->r[7] = cpu->r[5] + cpu->r[9];
|
|
/* 0252B30C */ _t43 = cpu->r[7] + 0x00000004u;
|
|
/* 0252B30C */ rbrew_write32(cpu->mem, _t43, cpu->r[12]);
|
|
/* 0252B310 */ cpu->r[9] = cpu->r[9] + 0x00000008u;
|
|
/* 0252B314 */ _t44 = cpu->r[7] + 0x00000002u;
|
|
/* 0252B314 */ rbrew_write16(cpu->mem, _t44, (uint16_t)cpu->r[0]);
|
|
/* 0252B318 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0252B318 */ _t45 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0252B318 */ _t46 = _t45 >> (0x00000002u & 31u);
|
|
/* 0252B318 */ _t47 = _t46 & 0x00000001u;
|
|
/* 0252B318 */ if (_t47) goto L_0252B300; else goto L_0252B31C;
|
|
L_0252B31C: ; // 0x252b31c
|
|
/* 0252B31C */ _t48 = cpu->r[28] + 0x0000000Fu;
|
|
/* 0252B31C */ cpu->r[27] = rbrew_read8(cpu->mem, _t48);
|
|
/* 0252B320 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0252B324 */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252B324 */ _t50 = _t49 & 0x00000001u;
|
|
/* 0252B324 */ if (_t50) goto L_0252B368; else goto L_0252B328;
|
|
L_0252B328: ; // 0x252b328
|
|
/* 0252B328 */ _t51 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 0252B328 */ cpu->r[3] = rbrew_read32(cpu->mem, _t51);
|
|
/* 0252B32C */ Gambit_fn_02826F20(cpu);
|
|
/* 0252B330 */ _t52 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0252B330 */ cpu->r[6] = rbrew_read32(cpu->mem, _t52);
|
|
/* 0252B334 */ _t53 = cpu->r[6] + 0x00000034u;
|
|
/* 0252B334 */ cpu->r[0] = rbrew_read32(cpu->mem, _t53);
|
|
/* 0252B338 */ cpu->ctr = cpu->r[0];
|
|
/* 0252B33C */ cpu->r[5] = 0x00000004u;
|
|
/* 0252B340 */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0252B344 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252B348 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0252B34C */ cpu->r[10] = cpu->r[27];
|
|
/* 0252B350 */ _t54 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252B350 */ _t55 = _t54 & 0x00000001u;
|
|
/* 0252B350 */ if (_t55) goto L_0252B358; else goto L_0252B354;
|
|
L_0252B354: ; // 0x252b354
|
|
/* 0252B354 */ cpu->r[10] = 0x00000001u;
|
|
L_0252B358: ; // 0x252b358
|
|
/* 0252B358 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252B35C */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252B35C */ _t57 = _t56 & 0x00000001u;
|
|
/* 0252B35C */ if (_t57) goto L_0252B368; else goto L_0252B360;
|
|
L_0252B360: ; // 0x252b360
|
|
/* 0252B360 */ _t58 = cpu->r[28] + 0x00000034u;
|
|
/* 0252B360 */ rbrew_write32(cpu->mem, _t58, cpu->r[3]);
|
|
/* 0252B364 */ _t59 = cpu->r[28] + 0x00000030u;
|
|
/* 0252B364 */ rbrew_write32(cpu->mem, _t59, cpu->r[27]);
|
|
L_0252B368: ; // 0x252b368
|
|
/* 0252B368 */ _t60 = cpu->r[28] + 0x00000030u;
|
|
/* 0252B368 */ cpu->r[12] = rbrew_read32(cpu->mem, _t60);
|
|
/* 0252B36C */ cpu->r[0] = 0x00000000u;
|
|
/* 0252B370 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0252B374 */ cpu->r[5] = cpu->r[0];
|
|
/* 0252B378 */ _t61 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252B378 */ _t62 = _t61 & 0x00000001u;
|
|
/* 0252B378 */ if (_t62) goto L_0252B37C; else goto L_0252B3A0;
|
|
L_0252B37C: ; // 0x252b37c
|
|
/* 0252B37C */ cpu->ctr = cpu->r[12];
|
|
/* 0252B380 */ cpu->r[8] = 0x00000000u;
|
|
L_0252B384: ; // 0x252b384
|
|
/* 0252B384 */ _t63 = cpu->r[28] + 0x00000034u;
|
|
/* 0252B384 */ cpu->r[9] = rbrew_read32(cpu->mem, _t63);
|
|
/* 0252B388 */ _t64 = cpu->r[9] + cpu->r[8];
|
|
/* 0252B388 */ rbrew_write16(cpu->mem, _t64, (uint16_t)cpu->r[0]);
|
|
/* 0252B38C */ cpu->r[6] = cpu->r[9] + cpu->r[8];
|
|
/* 0252B390 */ _t65 = cpu->r[6] + 0x00000004u;
|
|
/* 0252B390 */ rbrew_write32(cpu->mem, _t65, cpu->r[5]);
|
|
/* 0252B394 */ cpu->r[8] = cpu->r[8] + 0x00000008u;
|
|
/* 0252B398 */ _t66 = cpu->r[6] + 0x00000002u;
|
|
/* 0252B398 */ rbrew_write16(cpu->mem, _t66, (uint16_t)cpu->r[0]);
|
|
/* 0252B39C */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0252B39C */ _t67 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0252B39C */ _t68 = _t67 >> (0x00000002u & 31u);
|
|
/* 0252B39C */ _t69 = _t68 & 0x00000001u;
|
|
/* 0252B39C */ if (_t69) goto L_0252B384; else goto L_0252B3A0;
|
|
L_0252B3A0: ; // 0x252b3a0
|
|
/* 0252B3A0 */ _t70 = cpu->r[30] + 0x00000000u;
|
|
/* 0252B3A0 */ cpu->r[25] = rbrew_read8(cpu->mem, _t70);
|
|
/* 0252B3A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 0252B3A8 */ _t71 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252B3A8 */ _t72 = _t71 & 0x00000001u;
|
|
/* 0252B3A8 */ if (_t72) goto L_0252B484; else goto L_0252B3AC;
|
|
L_0252B3AC: ; // 0x252b3ac
|
|
/* 0252B3AC */ _t73 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 0252B3AC */ cpu->r[3] = rbrew_read32(cpu->mem, _t73);
|
|
/* 0252B3B0 */ Gambit_fn_02826F20(cpu);
|
|
/* 0252B3B4 */ _t74 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0252B3B4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t74);
|
|
/* 0252B3B8 */ _t75 = cpu->r[10] + 0x00000034u;
|
|
/* 0252B3B8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t75);
|
|
/* 0252B3BC */ cpu->ctr = cpu->r[12];
|
|
/* 0252B3C0 */ cpu->r[5] = 0x00000004u;
|
|
/* 0252B3C4 */ cpu->r[4] = (uint32_t)((int32_t)cpu->r[25] * (int32_t)0x00000024u);
|
|
/* 0252B3C8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252B3CC */ cpu->r[24] = cpu->r[3];
|
|
/* 0252B3D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 0252B3D4 */ cpu->r[30] = cpu->r[25];
|
|
/* 0252B3D8 */ cpu->r[7] = 0x00000000u;
|
|
/* 0252B3DC */ _t76 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252B3DC */ _t77 = _t76 & 0x00000001u;
|
|
/* 0252B3DC */ if (_t77) goto L_0252B3E4; else goto L_0252B3E0;
|
|
L_0252B3E0: ; // 0x252b3e0
|
|
/* 0252B3E0 */ cpu->r[30] = 0x00000001u;
|
|
L_0252B3E4: ; // 0x252b3e4
|
|
/* 0252B3E4 */ cpu->r[31] = 0x10110000u;
|
|
/* 0252B3E8 */ cpu->r[22] = (uint32_t)((int32_t)cpu->r[7] * (int32_t)0x00000024u);
|
|
/* 0252B3EC */ _t78 = cpu->r[31] + 0x00007399u;
|
|
/* 0252B3EC */ cpu->r[31] = rbrew_read8(cpu->mem, _t78);
|
|
/* 0252B3F0 */ cpu->r[23] = 0x00000018u;
|
|
L_0252B3F4: ; // 0x252b3f4
|
|
/* 0252B3F4 */ cpu->r[27] = cpu->r[24] + cpu->r[22];
|
|
/* 0252B3F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0252B3F8 */ _t79 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252B3F8 */ _t80 = _t79 & 0x00000001u;
|
|
/* 0252B3F8 */ if (_t80) goto L_0252B468; else goto L_0252B3FC;
|
|
L_0252B3FC: ; // 0x252b3fc
|
|
/* 0252B3FC */ cpu->r[26] = cpu->r[27];
|
|
/* 0252B3FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 0252B400 */ _t81 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252B400 */ _t82 = _t81 & 0x00000001u;
|
|
/* 0252B400 */ if (_t82) goto L_0252B404; else goto L_0252B414;
|
|
L_0252B404: ; // 0x252b404
|
|
/* 0252B404 */ cpu->r[3] = 0x00000024u;
|
|
/* 0252B408 */ Gambit_fn_02801A78(cpu);
|
|
/* 0252B40C */ cpu->r[26] = cpu->r[3];
|
|
/* 0252B40C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 0252B410 */ _t83 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252B410 */ _t84 = _t83 & 0x00000001u;
|
|
/* 0252B410 */ if (_t84) goto L_0252B45C; else goto L_0252B414;
|
|
L_0252B414: ; // 0x252b414
|
|
/* 0252B414 */ cpu->r[11] = cpu->r[26];
|
|
/* 0252B414 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0252B418 */ _t85 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252B418 */ _t86 = _t85 & 0x00000001u;
|
|
/* 0252B418 */ if (_t86) goto L_0252B41C; else goto L_0252B42C;
|
|
L_0252B41C: ; // 0x252b41c
|
|
/* 0252B41C */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0252B420 */ Gambit_fn_02801A78(cpu);
|
|
/* 0252B424 */ cpu->r[11] = cpu->r[3];
|
|
/* 0252B424 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0252B428 */ _t87 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252B428 */ _t88 = _t87 & 0x00000001u;
|
|
/* 0252B428 */ if (_t88) goto L_0252B448; else goto L_0252B42C;
|
|
L_0252B42C: ; // 0x252b42c
|
|
/* 0252B42C */ cpu->r[5] = 0x100C0000u;
|
|
/* 0252B430 */ _t89 = cpu->r[11] + 0x00000008u;
|
|
/* 0252B430 */ rbrew_write32(cpu->mem, _t89, cpu->r[23]);
|
|
/* 0252B434 */ cpu->r[0] = cpu->r[26] + 0x0000000Cu;
|
|
/* 0252B438 */ cpu->r[5] = cpu->r[5] + 0x00002DFCu;
|
|
/* 0252B43C */ _t90 = cpu->r[11] + 0x00000000u;
|
|
/* 0252B43C */ rbrew_write32(cpu->mem, _t90, cpu->r[0]);
|
|
/* 0252B440 */ _t91 = cpu->r[11] + 0x00000004u;
|
|
/* 0252B440 */ rbrew_write32(cpu->mem, _t91, cpu->r[5]);
|
|
/* 0252B444 */ _t92 = cpu->r[26] + 0x00000023u;
|
|
/* 0252B444 */ rbrew_write8(cpu->mem, _t92, (uint8_t)cpu->r[31]);
|
|
L_0252B448: ; // 0x252b448
|
|
/* 0252B448 */ cpu->r[6] = 0x100C0000u;
|
|
/* 0252B44C */ _t93 = cpu->r[26] + 0x00000000u;
|
|
/* 0252B44C */ cpu->r[7] = rbrew_read32(cpu->mem, _t93);
|
|
/* 0252B450 */ cpu->r[6] = cpu->r[6] + 0x00002E14u;
|
|
/* 0252B454 */ _t94 = cpu->r[26] + 0x00000004u;
|
|
/* 0252B454 */ rbrew_write32(cpu->mem, _t94, cpu->r[6]);
|
|
/* 0252B458 */ _t95 = cpu->r[7] + 0x00000000u;
|
|
/* 0252B458 */ rbrew_write8(cpu->mem, _t95, (uint8_t)cpu->r[31]);
|
|
L_0252B45C: ; // 0x252b45c
|
|
/* 0252B45C */ cpu->r[0] = 0x100C0000u;
|
|
/* 0252B460 */ cpu->r[0] = cpu->r[0] + 0x00002E2Cu;
|
|
/* 0252B464 */ _t96 = cpu->r[27] + 0x00000004u;
|
|
/* 0252B464 */ rbrew_write32(cpu->mem, _t96, cpu->r[0]);
|
|
L_0252B468: ; // 0x252b468
|
|
/* 0252B468 */ cpu->r[30] = cpu->r[30] + 0xFFFFFFFFu;
|
|
/* 0252B468 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0252B46C */ cpu->r[22] = cpu->r[22] + 0x00000024u;
|
|
/* 0252B470 */ _t97 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252B470 */ _t98 = _t97 & 0x00000001u;
|
|
/* 0252B470 */ if (_t98) goto L_0252B474; else goto L_0252B3F4;
|
|
L_0252B474: ; // 0x252b474
|
|
/* 0252B474 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 0252B478 */ _t99 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252B478 */ _t100 = _t99 & 0x00000001u;
|
|
/* 0252B478 */ if (_t100) goto L_0252B484; else goto L_0252B47C;
|
|
L_0252B47C: ; // 0x252b47c
|
|
/* 0252B47C */ _t101 = cpu->r[28] + 0x00000018u;
|
|
/* 0252B47C */ rbrew_write32(cpu->mem, _t101, cpu->r[24]);
|
|
/* 0252B480 */ _t102 = cpu->r[28] + 0x00000014u;
|
|
/* 0252B480 */ rbrew_write32(cpu->mem, _t102, cpu->r[25]);
|
|
L_0252B484: ; // 0x252b484
|
|
/* 0252B484 */ _t103 = cpu->r[28] + 0x0000000Eu;
|
|
/* 0252B484 */ rbrew_write8(cpu->mem, _t103, (uint8_t)cpu->r[29]);
|
|
/* 0252B488 */ /* nop */
|
|
/* 0252B48C */ _t104 = cpu->r[1] + 0x00000034u;
|
|
/* 0252B48C */ cpu->r[0] = rbrew_read32(cpu->mem, _t104);
|
|
/* 0252B490 */ cpu->lr = cpu->r[0];
|
|
/* 0252B494 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 0252B498 */ return;
|
|
}
|
|
|
|
// fn_0252B49C @ 0x252b49c
|
|
void Gambit_fn_0252B49C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _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_0252B49C: ; // 0x252b49c
|
|
/* 0252B49C */ _t0 = cpu->r[7] + 0x00000000u;
|
|
/* 0252B49C */ cpu->r[8] = rbrew_read8(cpu->mem, _t0);
|
|
/* 0252B4A0 */ _t1 = cpu->r[3] + 0x00000020u;
|
|
/* 0252B4A0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0252B4A4 */ _t2 = cpu->r[3] + 0x00000024u;
|
|
/* 0252B4A4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0252B4A8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[12]);
|
|
/* 0252B4AC */ _t3 = cpu->r[4] + 0x00000000u;
|
|
/* 0252B4AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0252B4B0 */ _t4 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0252B4B0 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0252B4B0 */ if (_t5) goto L_0252B4B4; else goto L_0252B4BC;
|
|
L_0252B4B4: ; // 0x252b4b4
|
|
/* 0252B4B4 */ cpu->r[10] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0252B4B8 */ cpu->r[11] = cpu->r[11] + cpu->r[10];
|
|
L_0252B4BC: ; // 0x252b4bc
|
|
/* 0252B4BC */ _t6 = cpu->r[11] + 0x00000000u;
|
|
/* 0252B4BC */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0252B4C0 */ _t7 = cpu->r[4] + 0x00000004u;
|
|
/* 0252B4C0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0252B4C4 */ _t8 = cpu->r[11] + 0x00000004u;
|
|
/* 0252B4C4 */ rbrew_write32(cpu->mem, _t8, cpu->r[8]);
|
|
/* 0252B4C8 */ _t9 = cpu->r[7] + 0x00000000u;
|
|
/* 0252B4C8 */ cpu->r[9] = rbrew_read8(cpu->mem, _t9);
|
|
/* 0252B4CC */ _t10 = cpu->r[3] + 0x00000028u;
|
|
/* 0252B4CC */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0252B4D0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[12]);
|
|
/* 0252B4D4 */ _t11 = cpu->r[3] + 0x0000002Cu;
|
|
/* 0252B4D4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0252B4D8 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0252B4D8 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0252B4D8 */ if (_t13) goto L_0252B4DC; else goto L_0252B4E4;
|
|
L_0252B4DC: ; // 0x252b4dc
|
|
/* 0252B4DC */ cpu->r[0] = rbrew_rlwinm(cpu->r[9], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0252B4E0 */ cpu->r[10] = cpu->r[10] + cpu->r[0];
|
|
L_0252B4E4: ; // 0x252b4e4
|
|
/* 0252B4E4 */ _t14 = cpu->r[5] + 0x00000000u;
|
|
/* 0252B4E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0252B4E8 */ _t15 = cpu->r[10] + 0x00000000u;
|
|
/* 0252B4E8 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 0252B4EC */ _t16 = cpu->r[5] + 0x00000004u;
|
|
/* 0252B4EC */ cpu->r[8] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0252B4F0 */ _t17 = cpu->r[10] + 0x00000004u;
|
|
/* 0252B4F0 */ rbrew_write32(cpu->mem, _t17, cpu->r[8]);
|
|
/* 0252B4F4 */ _t18 = cpu->r[3] + 0x00000030u;
|
|
/* 0252B4F4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0252B4F8 */ _t19 = cpu->r[7] + 0x00000000u;
|
|
/* 0252B4F8 */ cpu->r[11] = rbrew_read8(cpu->mem, _t19);
|
|
/* 0252B4FC */ _t20 = cpu->r[3] + 0x00000034u;
|
|
/* 0252B4FC */ cpu->r[12] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0252B500 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[9]);
|
|
/* 0252B504 */ _t21 = cpu->r[6] + 0x00000000u;
|
|
/* 0252B504 */ cpu->r[7] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0252B508 */ _t22 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0252B508 */ _t23 = _t22 & 0x00000001u;
|
|
/* 0252B508 */ if (_t23) goto L_0252B50C; else goto L_0252B514;
|
|
L_0252B50C: ; // 0x252b50c
|
|
/* 0252B50C */ cpu->r[11] = rbrew_rlwinm(cpu->r[11], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0252B510 */ cpu->r[12] = cpu->r[12] + cpu->r[11];
|
|
L_0252B514: ; // 0x252b514
|
|
/* 0252B514 */ _t24 = cpu->r[12] + 0x00000000u;
|
|
/* 0252B514 */ rbrew_write32(cpu->mem, _t24, cpu->r[7]);
|
|
/* 0252B518 */ _t25 = cpu->r[6] + 0x00000004u;
|
|
/* 0252B518 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0252B51C */ _t26 = cpu->r[12] + 0x00000004u;
|
|
/* 0252B51C */ rbrew_write32(cpu->mem, _t26, cpu->r[0]);
|
|
/* 0252B520 */ return;
|
|
}
|
|
|
|
// fn_0252B524 @ 0x252b524
|
|
void Gambit_fn_0252B524(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0252B524: ; // 0x252b524
|
|
/* 0252B524 */ cpu->r[0] = cpu->lr;
|
|
/* 0252B528 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0252B52C */ cpu->r[7] = 0x02530000u;
|
|
/* 0252B530 */ cpu->r[6] = 0x02530000u;
|
|
/* 0252B534 */ cpu->r[10] = 0x101C0000u;
|
|
/* 0252B538 */ cpu->r[7] = cpu->r[7] + 0xFFFFAEF4u;
|
|
/* 0252B53C */ cpu->r[6] = cpu->r[6] + 0xFFFFAEF4u;
|
|
/* 0252B540 */ cpu->r[10] = cpu->r[10] + 0x000068B4u;
|
|
/* 0252B544 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 0252B544 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 0252B548 */ cpu->r[0] = 0x101C0000u;
|
|
/* 0252B54C */ _t1 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0252B54C */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 0252B54C */ cpu->r[1] = _t1;
|
|
/* 0252B550 */ cpu->r[0] = cpu->r[0] + 0x000068B0u;
|
|
/* 0252B554 */ _t2 = cpu->r[12] + 0xFFFF9034u;
|
|
/* 0252B554 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0252B558 */ cpu->r[8] = 0x00000000u;
|
|
/* 0252B55C */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 0252B55C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0252B560 */ cpu->r[9] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252B564 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252B564 */ rbrew_write32(cpu->mem, _t4, cpu->r[12]);
|
|
/* 0252B568 */ Gambit_fn_02791B10(cpu);
|
|
/* 0252B56C */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 0252B56C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0252B570 */ cpu->lr = cpu->r[0];
|
|
/* 0252B574 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0252B578 */ return;
|
|
}
|
|
|
|
// fn_0252B54C @ 0x252b54c
|
|
void Gambit_fn_0252B54C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_0252B54C: ; // 0x252b54c
|
|
/* 0252B54C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0252B54C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252B54C */ cpu->r[1] = _t0;
|
|
/* 0252B550 */ cpu->r[0] = cpu->r[0] + 0x000068B0u;
|
|
/* 0252B554 */ _t1 = cpu->r[12] + 0xFFFF9034u;
|
|
/* 0252B554 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0252B558 */ cpu->r[8] = 0x00000000u;
|
|
/* 0252B55C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0252B55C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0252B560 */ cpu->r[9] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252B564 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252B564 */ rbrew_write32(cpu->mem, _t3, cpu->r[12]);
|
|
/* 0252B568 */ Gambit_fn_02791B10(cpu);
|
|
/* 0252B56C */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 0252B56C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0252B570 */ cpu->lr = cpu->r[0];
|
|
/* 0252B574 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0252B578 */ return;
|
|
}
|
|
|
|
// fn_0252B57C @ 0x252b57c
|
|
void Gambit_fn_0252B57C(CPUState* cpu) {
|
|
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_0252B57C: ; // 0x252b57c
|
|
/* 0252B57C */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 0252B57C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252B57C */ cpu->r[1] = _t0;
|
|
/* 0252B580 */ cpu->r[0] = cpu->lr;
|
|
/* 0252B584 */ /* nop */
|
|
/* 0252B588 */ cpu->r[30] = cpu->r[5];
|
|
/* 0252B58C */ cpu->r[26] = cpu->r[3];
|
|
/* 0252B590 */ cpu->r[27] = cpu->r[7];
|
|
/* 0252B594 */ cpu->r[3] = cpu->r[30];
|
|
/* 0252B598 */ cpu->r[31] = cpu->r[6];
|
|
/* 0252B59C */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0252B59C */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0252B5A0 */ cpu->r[29] = cpu->r[4];
|
|
/* 0252B5A4 */ cpu->r[4] = cpu->r[27];
|
|
/* 0252B5A8 */ Gambit_fn_027DB318(cpu);
|
|
/* 0252B5AC */ cpu->r[28] = cpu->r[3] + cpu->r[31];
|
|
/* 0252B5AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 0252B5B0 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252B5B0 */ _t3 = _t2 & 0x00000001u;
|
|
/* 0252B5B0 */ if (_t3) goto L_0252B644; else goto L_0252B5B4;
|
|
L_0252B5B4: ; // 0x252b5b4
|
|
/* 0252B5B4 */ cpu->r[5] = cpu->r[28];
|
|
/* 0252B5B8 */ cpu->r[4] = cpu->r[29];
|
|
/* 0252B5BC */ cpu->r[3] = cpu->r[26];
|
|
/* 0252B5C0 */ Gambit_fn_0252B524(cpu);
|
|
/* 0252B5C4 */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0252B5C4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0252B5C8 */ _t5 = cpu->r[30] + 0x00000004u;
|
|
/* 0252B5C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0252B5CC */ cpu->r[30] = cpu->r[30] - cpu->r[29];
|
|
/* 0252B5D0 */ cpu->r[31] = cpu->r[0] - cpu->r[29];
|
|
/* 0252B5D4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]);
|
|
/* 0252B5D8 */ cpu->r[25] = 0x00000000u;
|
|
/* 0252B5DC */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252B5DC */ _t7 = _t6 & 0x00000001u;
|
|
/* 0252B5DC */ if (_t7) goto L_0252B644; else goto L_0252B5E0;
|
|
L_0252B5E0: ; // 0x252b5e0
|
|
/* 0252B5E0 */ cpu->r[24] = 0x101C0000u;
|
|
L_0252B5E4: ; // 0x252b5e4
|
|
/* 0252B5E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0252B5E8 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252B5E8 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0252B5E8 */ if (_t9) goto L_0252B600; else goto L_0252B5EC;
|
|
L_0252B5EC: ; // 0x252b5ec
|
|
/* 0252B5EC */ cpu->ctr = cpu->r[27];
|
|
/* 0252B5F0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0252B5F4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252B5F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252B5FC */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252B5FC */ _t11 = _t10 & 0x00000001u;
|
|
/* 0252B5FC */ if (_t11) goto L_0252B630; else goto L_0252B600;
|
|
L_0252B600: ; // 0x252b600
|
|
/* 0252B600 */ _t12 = cpu->r[24] + 0x000068B0u;
|
|
/* 0252B600 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0252B604 */ cpu->r[6] = cpu->r[26] + cpu->r[0];
|
|
/* 0252B608 */ _t13 = cpu->r[6] + 0x00000104u;
|
|
/* 0252B608 */ cpu->r[12] = rbrew_read8(cpu->mem, _t13);
|
|
/* 0252B60C */ _t14 = cpu->r[26] + 0x00000030u;
|
|
/* 0252B60C */ cpu->r[10] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0252B610 */ cpu->r[9] = rbrew_rlwinm(cpu->r[12], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0252B614 */ _t15 = cpu->r[9] + cpu->r[10];
|
|
/* 0252B614 */ cpu->r[11] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0252B618 */ cpu->r[8] = rbrew_rlwinm(cpu->r[25], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0252B61C */ _t16 = cpu->r[11] + 0x00000004u;
|
|
/* 0252B61C */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0252B620 */ cpu->r[4] = cpu->r[31];
|
|
/* 0252B624 */ _t17 = cpu->r[8] + cpu->r[0];
|
|
/* 0252B624 */ cpu->r[3] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0252B628 */ cpu->r[25] = cpu->r[25] + 0x00000001u;
|
|
/* 0252B62C */ Gambit_fn_02528FE0(cpu);
|
|
L_0252B630: ; // 0x252b630
|
|
/* 0252B630 */ cpu->r[12] = cpu->r[31] + cpu->r[29];
|
|
/* 0252B634 */ _t18 = cpu->r[12] + 0x00000004u;
|
|
/* 0252B634 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0252B638 */ cpu->r[31] = cpu->r[0] - cpu->r[29];
|
|
/* 0252B63C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]);
|
|
/* 0252B640 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252B640 */ _t20 = _t19 & 0x00000001u;
|
|
/* 0252B640 */ if (_t20) goto L_0252B644; else goto L_0252B5E4;
|
|
L_0252B644: ; // 0x252b644
|
|
/* 0252B644 */ cpu->r[3] = cpu->r[28];
|
|
/* 0252B648 */ /* nop */
|
|
/* 0252B64C */ _t21 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0252B64C */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0252B650 */ cpu->lr = cpu->r[0];
|
|
/* 0252B654 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 0252B658 */ return;
|
|
}
|
|
|
|
// fn_0252B65C @ 0x252b65c
|
|
void Gambit_fn_0252B65C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97;
|
|
|
|
L_0252B65C: ; // 0x252b65c
|
|
/* 0252B65C */ _t0 = cpu->r[1] + 0xFFFFFFB0u;
|
|
/* 0252B65C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252B65C */ cpu->r[1] = _t0;
|
|
/* 0252B660 */ cpu->r[0] = cpu->lr;
|
|
/* 0252B664 */ /* nop */
|
|
/* 0252B668 */ cpu->r[30] = cpu->r[3];
|
|
/* 0252B668 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0252B66C */ _t1 = cpu->r[1] + 0x00000054u;
|
|
/* 0252B66C */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0252B670 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252B670 */ _t3 = _t2 & 0x00000001u;
|
|
/* 0252B670 */ if (_t3) goto L_0252B674; else goto L_0252B684;
|
|
L_0252B674: ; // 0x252b674
|
|
/* 0252B674 */ cpu->r[3] = 0x00000210u;
|
|
/* 0252B678 */ Gambit_fn_02801A78(cpu);
|
|
/* 0252B67C */ cpu->r[30] = cpu->r[3];
|
|
/* 0252B67C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0252B680 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252B680 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0252B680 */ if (_t5) goto L_0252B958; else goto L_0252B684;
|
|
L_0252B684: ; // 0x252b684
|
|
/* 0252B684 */ cpu->r[3] = cpu->r[30];
|
|
/* 0252B688 */ Gambit_fn_024F6F3C(cpu);
|
|
/* 0252B68C */ cpu->r[6] = 0x100C0000u;
|
|
/* 0252B690 */ cpu->r[31] = cpu->r[30] + 0x000001B0u;
|
|
/* 0252B690 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0252B694 */ cpu->r[6] = cpu->r[6] + 0x00003710u;
|
|
/* 0252B698 */ cpu->r[27] = 0x00000000u;
|
|
/* 0252B69C */ _t6 = cpu->r[30] + 0x00000004u;
|
|
/* 0252B69C */ rbrew_write32(cpu->mem, _t6, cpu->r[6]);
|
|
/* 0252B6A0 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252B6A0 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0252B6A0 */ if (_t8) goto L_0252B6A4; else goto L_0252B6B4;
|
|
L_0252B6A4: ; // 0x252b6a4
|
|
/* 0252B6A4 */ cpu->r[3] = 0x00000038u;
|
|
/* 0252B6A8 */ Gambit_fn_02801A78(cpu);
|
|
/* 0252B6AC */ cpu->r[31] = cpu->r[3];
|
|
/* 0252B6AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0252B6B0 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252B6B0 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0252B6B0 */ if (_t10) goto L_0252B6E4; else goto L_0252B6B4;
|
|
L_0252B6B4: ; // 0x252b6b4
|
|
/* 0252B6B4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0252B6B8 */ Gambit_fn_027FC29C(cpu);
|
|
/* 0252B6BC */ cpu->r[0] = 0x10000000u;
|
|
/* 0252B6C0 */ _t11 = cpu->r[31] + 0x00000030u;
|
|
/* 0252B6C0 */ rbrew_write32(cpu->mem, _t11, cpu->r[27]);
|
|
/* 0252B6C4 */ cpu->r[0] = cpu->r[0] + 0x00006A64u;
|
|
/* 0252B6C8 */ _t12 = cpu->r[31] + 0x00000034u;
|
|
/* 0252B6C8 */ rbrew_write32(cpu->mem, _t12, cpu->r[27]);
|
|
/* 0252B6CC */ _t13 = cpu->r[31] + 0x00000004u;
|
|
/* 0252B6CC */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 0252B6D0 */ _t14 = cpu->r[31] + 0x00000024u;
|
|
/* 0252B6D0 */ rbrew_write32(cpu->mem, _t14, cpu->r[27]);
|
|
/* 0252B6D4 */ _t15 = cpu->r[31] + 0x00000028u;
|
|
/* 0252B6D4 */ rbrew_write32(cpu->mem, _t15, cpu->r[27]);
|
|
/* 0252B6D8 */ _t16 = cpu->r[31] + 0x0000002Cu;
|
|
/* 0252B6D8 */ rbrew_write32(cpu->mem, _t16, cpu->r[27]);
|
|
/* 0252B6DC */ _t17 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0252B6DC */ rbrew_write32(cpu->mem, _t17, cpu->r[27]);
|
|
/* 0252B6E0 */ _t18 = cpu->r[31] + 0x00000020u;
|
|
/* 0252B6E0 */ rbrew_write32(cpu->mem, _t18, cpu->r[27]);
|
|
L_0252B6E4: ; // 0x252b6e4
|
|
/* 0252B6E4 */ _t19 = cpu->r[30] + 0x000001ECu;
|
|
/* 0252B6E4 */ rbrew_write32(cpu->mem, _t19, cpu->r[27]);
|
|
/* 0252B6E8 */ cpu->r[8] = 0x101F0000u;
|
|
/* 0252B6EC */ _t20 = cpu->r[30] + 0x000001F4u;
|
|
/* 0252B6EC */ rbrew_write32(cpu->mem, _t20, cpu->r[27]);
|
|
/* 0252B6F0 */ _t21 = cpu->r[30] + 0x000001E8u;
|
|
/* 0252B6F0 */ rbrew_write32(cpu->mem, _t21, cpu->r[27]);
|
|
/* 0252B6F4 */ _t22 = cpu->r[30] + 0x000001F0u;
|
|
/* 0252B6F4 */ rbrew_write32(cpu->mem, _t22, cpu->r[27]);
|
|
/* 0252B6F8 */ _t23 = cpu->r[30] + 0x000001F8u;
|
|
/* 0252B6F8 */ rbrew_write32(cpu->mem, _t23, cpu->r[27]);
|
|
/* 0252B6FC */ _t24 = cpu->r[30] + 0x000001FCu;
|
|
/* 0252B6FC */ rbrew_write32(cpu->mem, _t24, cpu->r[27]);
|
|
/* 0252B700 */ _t25 = cpu->r[8] + 0x0000635Cu;
|
|
/* 0252B700 */ cpu->r[9] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0252B700 */ cpu->r[8] = _t25;
|
|
/* 0252B704 */ _t26 = cpu->r[30] + 0x00000200u;
|
|
/* 0252B704 */ rbrew_write32(cpu->mem, _t26, cpu->r[9]);
|
|
/* 0252B708 */ _t27 = cpu->r[8] + 0x00000004u;
|
|
/* 0252B708 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0252B70C */ cpu->r[3] = cpu->r[30] + 0x000001B0u;
|
|
/* 0252B710 */ _t28 = cpu->r[30] + 0x00000204u;
|
|
/* 0252B710 */ rbrew_write32(cpu->mem, _t28, cpu->r[0]);
|
|
/* 0252B714 */ _t29 = cpu->r[8] + 0x00000008u;
|
|
/* 0252B714 */ cpu->r[11] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0252B718 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0252B71C */ _t30 = cpu->r[30] + 0x0000020Cu;
|
|
/* 0252B71C */ rbrew_write32(cpu->mem, _t30, cpu->r[27]);
|
|
/* 0252B720 */ cpu->r[0] = 0x00000002u;
|
|
/* 0252B724 */ _t31 = cpu->r[30] + 0x00000208u;
|
|
/* 0252B724 */ rbrew_write32(cpu->mem, _t31, cpu->r[11]);
|
|
/* 0252B728 */ cpu->r[6] = 0x00000000u;
|
|
/* 0252B72C */ cpu->r[4] = cpu->r[30];
|
|
/* 0252B730 */ _t32 = cpu->r[1] + 0x00000008u;
|
|
/* 0252B730 */ rbrew_write8(cpu->mem, _t32, (uint8_t)cpu->r[0]);
|
|
/* 0252B734 */ Gambit_fn_0252CE38(cpu);
|
|
/* 0252B738 */ cpu->r[4] = cpu->r[30] + 0x000001B0u;
|
|
/* 0252B73C */ cpu->r[3] = cpu->r[30];
|
|
/* 0252B740 */ Gambit_fn_02000834(cpu);
|
|
/* 0252B744 */ cpu->r[28] = 0x100C0000u;
|
|
/* 0252B748 */ cpu->r[26] = 0x02530000u;
|
|
/* 0252B74C */ cpu->r[28] = cpu->r[28] + 0x00003340u;
|
|
/* 0252B750 */ cpu->r[12] = 0x100C0000u;
|
|
/* 0252B754 */ cpu->r[26] = cpu->r[26] + 0xFFFFC78Cu;
|
|
/* 0252B758 */ cpu->r[12] = cpu->r[12] + 0x000035A4u;
|
|
/* 0252B75C */ cpu->ctr = cpu->r[26];
|
|
/* 0252B760 */ _t33 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252B760 */ rbrew_write32(cpu->mem, _t33, cpu->r[12]);
|
|
/* 0252B764 */ _t34 = cpu->r[1] + 0x00000010u;
|
|
/* 0252B764 */ rbrew_write32(cpu->mem, _t34, cpu->r[28]);
|
|
/* 0252B768 */ _t35 = cpu->r[30] + 0x000001C8u;
|
|
/* 0252B768 */ cpu->r[24] = rbrew_read32(cpu->mem, _t35);
|
|
/* 0252B76C */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252B770 */ _t36 = cpu->r[24] + 0x00000000u;
|
|
/* 0252B770 */ cpu->r[25] = rbrew_read32(cpu->mem, _t36);
|
|
/* 0252B774 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252B778 */ cpu->r[31] = 0x10110000u;
|
|
/* 0252B77C */ _t37 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252B77C */ cpu->r[6] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0252B780 */ _t38 = cpu->r[31] + 0x00007399u;
|
|
/* 0252B780 */ cpu->r[31] = rbrew_read8(cpu->mem, _t38);
|
|
/* 0252B784 */ _t39 = cpu->r[6] + 0x00000000u;
|
|
/* 0252B784 */ cpu->r[0] = rbrew_read8(cpu->mem, _t39);
|
|
/* 0252B788 */ cpu->r[29] = 0x00000000u;
|
|
/* 0252B78C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 0252B790 */ cpu->r[0] = 0x00080000u;
|
|
/* 0252B794 */ _t40 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252B794 */ _t41 = _t40 & 0x00000001u;
|
|
/* 0252B794 */ if (_t41) goto L_0252B7BC; else goto L_0252B798;
|
|
L_0252B798: ; // 0x252b798
|
|
/* 0252B798 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 0252B79C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[0]);
|
|
/* 0252B7A0 */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 0252B7A4 */ _t42 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252B7A4 */ _t43 = _t42 & 0x00000001u;
|
|
/* 0252B7A4 */ if (_t43) goto L_0252B7B8; else goto L_0252B7A8;
|
|
L_0252B7A8: ; // 0x252b7a8
|
|
/* 0252B7A8 */ _t44 = cpu->r[6] + 0x00000000u;
|
|
/* 0252B7A8 */ cpu->r[5] = rbrew_read8(cpu->mem, _t44);
|
|
/* 0252B7AC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[31]);
|
|
/* 0252B7B0 */ _t45 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252B7B0 */ _t46 = _t45 & 0x00000001u;
|
|
/* 0252B7B0 */ if (_t46) goto L_0252B7B4; else goto L_0252B798;
|
|
L_0252B7B4: ; // 0x252b7b4
|
|
/* 0252B7B4 */ goto L_0252B7BC;
|
|
L_0252B7B8: ; // 0x252b7b8
|
|
/* 0252B7B8 */ cpu->r[29] = 0x00000000u;
|
|
L_0252B7BC: ; // 0x252b7bc
|
|
/* 0252B7BC */ _t47 = cpu->r[24] + 0x00000008u;
|
|
/* 0252B7BC */ cpu->r[8] = rbrew_read32(cpu->mem, _t47);
|
|
/* 0252B7C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[8]);
|
|
/* 0252B7C4 */ _t48 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0252B7C4 */ _t49 = _t48 & 0x00000001u;
|
|
/* 0252B7C4 */ if (_t49) goto L_0252B7CC; else goto L_0252B7C8;
|
|
L_0252B7C8: ; // 0x252b7c8
|
|
/* 0252B7C8 */ cpu->r[29] = cpu->r[8] + 0xFFFFFFFFu;
|
|
L_0252B7CC: ; // 0x252b7cc
|
|
/* 0252B7CC */ _t50 = cpu->r[1] + 0x00000010u;
|
|
/* 0252B7CC */ cpu->r[7] = rbrew_read32(cpu->mem, _t50);
|
|
/* 0252B7D0 */ _t51 = cpu->r[7] + 0x00000014u;
|
|
/* 0252B7D0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t51);
|
|
/* 0252B7D4 */ cpu->ctr = cpu->r[8];
|
|
/* 0252B7D8 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252B7DC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252B7E0 */ _t52 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252B7E0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t52);
|
|
/* 0252B7E4 */ cpu->r[3] = cpu->r[25];
|
|
/* 0252B7E8 */ cpu->r[5] = cpu->r[29];
|
|
/* 0252B7EC */ cpu->r[6] = 0x00000000u;
|
|
/* 0252B7F0 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0252B7F4 */ cpu->r[9] = 0x02530000u;
|
|
/* 0252B7F8 */ _t53 = cpu->r[25] + cpu->r[29];
|
|
/* 0252B7F8 */ rbrew_write8(cpu->mem, _t53, (uint8_t)cpu->r[31]);
|
|
/* 0252B7FC */ cpu->r[9] = cpu->r[9] + 0xFFFFC660u;
|
|
/* 0252B800 */ _t54 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252B800 */ rbrew_write16(cpu->mem, _t54, (uint16_t)cpu->r[27]);
|
|
/* 0252B804 */ cpu->r[0] = 0x00000000u;
|
|
/* 0252B808 */ _t55 = cpu->r[1] + 0x00000018u;
|
|
/* 0252B808 */ rbrew_write32(cpu->mem, _t55, cpu->r[9]);
|
|
/* 0252B80C */ cpu->r[11] = 0x02530000u;
|
|
/* 0252B810 */ _t56 = cpu->r[1] + 0x00000008u;
|
|
/* 0252B810 */ rbrew_write8(cpu->mem, _t56, (uint8_t)cpu->r[0]);
|
|
/* 0252B814 */ cpu->r[11] = cpu->r[11] + 0xFFFFC67Cu;
|
|
/* 0252B818 */ _t57 = cpu->r[1] + 0x00000028u;
|
|
/* 0252B818 */ rbrew_write32(cpu->mem, _t57, cpu->r[27]);
|
|
/* 0252B81C */ cpu->r[7] = 0xFFFFFFFFu;
|
|
/* 0252B820 */ _t58 = cpu->r[1] + 0x00000014u;
|
|
/* 0252B820 */ rbrew_write16(cpu->mem, _t58, (uint16_t)cpu->r[27]);
|
|
/* 0252B824 */ cpu->r[12] = 0xFFFFFFFFu;
|
|
/* 0252B828 */ _t59 = cpu->r[1] + 0x0000001Eu;
|
|
/* 0252B828 */ rbrew_write16(cpu->mem, _t59, (uint16_t)cpu->r[7]);
|
|
/* 0252B82C */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 0252B830 */ _t60 = cpu->r[1] + 0x00000016u;
|
|
/* 0252B830 */ rbrew_write16(cpu->mem, _t60, (uint16_t)cpu->r[12]);
|
|
/* 0252B834 */ cpu->r[5] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252B838 */ _t61 = cpu->r[1] + 0x00000020u;
|
|
/* 0252B838 */ rbrew_write32(cpu->mem, _t61, cpu->r[11]);
|
|
/* 0252B83C */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 0252B840 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 0252B844 */ _t62 = cpu->r[1] + 0x00000024u;
|
|
/* 0252B844 */ rbrew_write16(cpu->mem, _t62, (uint16_t)cpu->r[27]);
|
|
/* 0252B848 */ cpu->r[3] = cpu->r[30] + 0x000001B0u;
|
|
/* 0252B84C */ _t63 = cpu->r[1] + 0x00000026u;
|
|
/* 0252B84C */ rbrew_write16(cpu->mem, _t63, (uint16_t)cpu->r[27]);
|
|
/* 0252B850 */ Gambit_fn_0252D0E8(cpu);
|
|
/* 0252B854 */ cpu->r[6] = 0x100C0000u;
|
|
/* 0252B858 */ _t64 = cpu->r[1] + 0x00000010u;
|
|
/* 0252B858 */ rbrew_write32(cpu->mem, _t64, cpu->r[28]);
|
|
/* 0252B85C */ cpu->r[6] = cpu->r[6] + 0x00003598u;
|
|
/* 0252B860 */ _t65 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252B860 */ rbrew_write32(cpu->mem, _t65, cpu->r[6]);
|
|
/* 0252B864 */ _t66 = cpu->r[30] + 0x000001C4u;
|
|
/* 0252B864 */ cpu->r[7] = rbrew_read32(cpu->mem, _t66);
|
|
/* 0252B868 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], 0x00000001u);
|
|
/* 0252B86C */ _t67 = cpu->r[30] + 0x000001C8u;
|
|
/* 0252B86C */ cpu->r[28] = rbrew_read32(cpu->mem, _t67);
|
|
/* 0252B870 */ _t68 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252B870 */ _t69 = _t68 & 0x00000001u;
|
|
/* 0252B870 */ if (_t69) goto L_0252B874; else goto L_0252B878;
|
|
L_0252B874: ; // 0x252b874
|
|
/* 0252B874 */ cpu->r[28] = cpu->r[28] + 0x00000024u;
|
|
L_0252B878: ; // 0x252b878
|
|
/* 0252B878 */ cpu->ctr = cpu->r[26];
|
|
/* 0252B87C */ _t70 = cpu->r[28] + 0x00000000u;
|
|
/* 0252B87C */ cpu->r[25] = rbrew_read32(cpu->mem, _t70);
|
|
/* 0252B880 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252B884 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252B888 */ _t71 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252B888 */ cpu->r[12] = rbrew_read32(cpu->mem, _t71);
|
|
/* 0252B88C */ _t72 = cpu->r[12] + 0x00000000u;
|
|
/* 0252B88C */ cpu->r[10] = rbrew_read8(cpu->mem, _t72);
|
|
/* 0252B890 */ cpu->r[5] = 0x00080000u;
|
|
/* 0252B894 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[31]);
|
|
/* 0252B898 */ cpu->r[29] = 0x00000000u;
|
|
/* 0252B89C */ _t73 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252B89C */ _t74 = _t73 & 0x00000001u;
|
|
/* 0252B89C */ if (_t74) goto L_0252B8C4; else goto L_0252B8A0;
|
|
L_0252B8A0: ; // 0x252b8a0
|
|
/* 0252B8A0 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 0252B8A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[5]);
|
|
/* 0252B8A8 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 0252B8AC */ _t75 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252B8AC */ _t76 = _t75 & 0x00000001u;
|
|
/* 0252B8AC */ if (_t76) goto L_0252B8C0; else goto L_0252B8B0;
|
|
L_0252B8B0: ; // 0x252b8b0
|
|
/* 0252B8B0 */ _t77 = cpu->r[12] + 0x00000000u;
|
|
/* 0252B8B0 */ cpu->r[11] = rbrew_read8(cpu->mem, _t77);
|
|
/* 0252B8B4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[31]);
|
|
/* 0252B8B8 */ _t78 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252B8B8 */ _t79 = _t78 & 0x00000001u;
|
|
/* 0252B8B8 */ if (_t79) goto L_0252B8BC; else goto L_0252B8A0;
|
|
L_0252B8BC: ; // 0x252b8bc
|
|
/* 0252B8BC */ goto L_0252B8C4;
|
|
L_0252B8C0: ; // 0x252b8c0
|
|
/* 0252B8C0 */ cpu->r[29] = 0x00000000u;
|
|
L_0252B8C4: ; // 0x252b8c4
|
|
/* 0252B8C4 */ _t80 = cpu->r[28] + 0x00000008u;
|
|
/* 0252B8C4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t80);
|
|
/* 0252B8C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[9]);
|
|
/* 0252B8CC */ _t81 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0252B8CC */ _t82 = _t81 & 0x00000001u;
|
|
/* 0252B8CC */ if (_t82) goto L_0252B8D4; else goto L_0252B8D0;
|
|
L_0252B8D0: ; // 0x252b8d0
|
|
/* 0252B8D0 */ cpu->r[29] = cpu->r[9] + 0xFFFFFFFFu;
|
|
L_0252B8D4: ; // 0x252b8d4
|
|
/* 0252B8D4 */ _t83 = cpu->r[1] + 0x00000010u;
|
|
/* 0252B8D4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t83);
|
|
/* 0252B8D8 */ _t84 = cpu->r[6] + 0x00000014u;
|
|
/* 0252B8D8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t84);
|
|
/* 0252B8DC */ cpu->ctr = cpu->r[8];
|
|
/* 0252B8E0 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252B8E4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252B8E8 */ _t85 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252B8E8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t85);
|
|
/* 0252B8EC */ cpu->r[6] = 0x00000000u;
|
|
/* 0252B8F0 */ cpu->r[5] = cpu->r[29];
|
|
/* 0252B8F4 */ cpu->r[3] = cpu->r[25];
|
|
/* 0252B8F8 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0252B8FC */ _t86 = cpu->r[25] + cpu->r[29];
|
|
/* 0252B8FC */ rbrew_write8(cpu->mem, _t86, (uint8_t)cpu->r[31]);
|
|
/* 0252B900 */ cpu->r[0] = 0x00000001u;
|
|
/* 0252B904 */ _t87 = cpu->r[1] + 0x00000014u;
|
|
/* 0252B904 */ rbrew_write16(cpu->mem, _t87, (uint16_t)cpu->r[27]);
|
|
/* 0252B908 */ cpu->r[9] = 0x02530000u;
|
|
/* 0252B90C */ _t88 = cpu->r[1] + 0x00000028u;
|
|
/* 0252B90C */ rbrew_write32(cpu->mem, _t88, cpu->r[27]);
|
|
/* 0252B910 */ cpu->r[9] = cpu->r[9] + 0xFFFFC694u;
|
|
/* 0252B914 */ _t89 = cpu->r[1] + 0x00000024u;
|
|
/* 0252B914 */ rbrew_write16(cpu->mem, _t89, (uint16_t)cpu->r[27]);
|
|
/* 0252B918 */ cpu->r[8] = 0xFFFFFFFFu;
|
|
/* 0252B91C */ _t90 = cpu->r[1] + 0x00000026u;
|
|
/* 0252B91C */ rbrew_write16(cpu->mem, _t90, (uint16_t)cpu->r[27]);
|
|
/* 0252B920 */ cpu->r[3] = cpu->r[30] + 0x000001B0u;
|
|
/* 0252B924 */ _t91 = cpu->r[1] + 0x0000001Eu;
|
|
/* 0252B924 */ rbrew_write16(cpu->mem, _t91, (uint16_t)cpu->r[8]);
|
|
/* 0252B928 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 0252B92C */ _t92 = cpu->r[1] + 0x00000020u;
|
|
/* 0252B92C */ rbrew_write32(cpu->mem, _t92, cpu->r[9]);
|
|
/* 0252B930 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252B934 */ _t93 = cpu->r[1] + 0x00000008u;
|
|
/* 0252B934 */ rbrew_write8(cpu->mem, _t93, (uint8_t)cpu->r[0]);
|
|
/* 0252B938 */ cpu->r[0] = 0x02530000u;
|
|
/* 0252B93C */ _t94 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252B93C */ rbrew_write16(cpu->mem, _t94, (uint16_t)cpu->r[27]);
|
|
/* 0252B940 */ cpu->r[0] = cpu->r[0] + 0xFFFFC6B0u;
|
|
/* 0252B944 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 0252B948 */ _t95 = cpu->r[1] + 0x00000016u;
|
|
/* 0252B948 */ rbrew_write16(cpu->mem, _t95, (uint16_t)cpu->r[8]);
|
|
/* 0252B94C */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 0252B950 */ _t96 = cpu->r[1] + 0x00000018u;
|
|
/* 0252B950 */ rbrew_write32(cpu->mem, _t96, cpu->r[0]);
|
|
/* 0252B954 */ Gambit_fn_0252D0E8(cpu);
|
|
L_0252B958: ; // 0x252b958
|
|
/* 0252B958 */ cpu->r[3] = cpu->r[30];
|
|
/* 0252B95C */ /* nop */
|
|
/* 0252B960 */ _t97 = cpu->r[1] + 0x00000054u;
|
|
/* 0252B960 */ cpu->r[0] = rbrew_read32(cpu->mem, _t97);
|
|
/* 0252B964 */ cpu->lr = cpu->r[0];
|
|
/* 0252B968 */ cpu->r[1] = cpu->r[1] + 0x00000050u;
|
|
/* 0252B96C */ return;
|
|
}
|
|
|
|
// fn_0252B970 @ 0x252b970
|
|
void Gambit_fn_0252B970(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_0252B970: ; // 0x252b970
|
|
/* 0252B970 */ cpu->r[0] = cpu->lr;
|
|
/* 0252B974 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0252B974 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252B974 */ cpu->r[1] = _t0;
|
|
/* 0252B978 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0252B978 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0252B97C */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 0252B97C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0252B980 */ cpu->r[30] = cpu->r[3];
|
|
/* 0252B984 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0252B988 */ cpu->r[31] = cpu->r[4];
|
|
/* 0252B98C */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252B98C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0252B990 */ Gambit_fn_024F6710(cpu);
|
|
/* 0252B994 */ cpu->r[5] = cpu->r[3];
|
|
/* 0252B998 */ cpu->r[4] = cpu->r[31];
|
|
/* 0252B99C */ cpu->r[3] = cpu->r[30];
|
|
/* 0252B9A0 */ Gambit_fn_024F4798(cpu);
|
|
/* 0252B9A4 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252B9A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0252B9A8 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 0252B9A8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0252B9AC */ cpu->lr = cpu->r[0];
|
|
/* 0252B9B0 */ _t6 = cpu->r[1] + 0x00000010u;
|
|
/* 0252B9B0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0252B9B4 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0252B9B8 */ return;
|
|
}
|
|
|
|
// fn_0252B974 @ 0x252b974
|
|
void Gambit_fn_0252B974(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_0252B974: ; // 0x252b974
|
|
/* 0252B974 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0252B974 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252B974 */ cpu->r[1] = _t0;
|
|
/* 0252B978 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0252B978 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0252B97C */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 0252B97C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0252B980 */ cpu->r[30] = cpu->r[3];
|
|
/* 0252B984 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0252B988 */ cpu->r[31] = cpu->r[4];
|
|
/* 0252B98C */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252B98C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0252B990 */ Gambit_fn_024F6710(cpu);
|
|
/* 0252B994 */ cpu->r[5] = cpu->r[3];
|
|
/* 0252B998 */ cpu->r[4] = cpu->r[31];
|
|
/* 0252B99C */ cpu->r[3] = cpu->r[30];
|
|
/* 0252B9A0 */ Gambit_fn_024F4798(cpu);
|
|
/* 0252B9A4 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252B9A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0252B9A8 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 0252B9A8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0252B9AC */ cpu->lr = cpu->r[0];
|
|
/* 0252B9B0 */ _t6 = cpu->r[1] + 0x00000010u;
|
|
/* 0252B9B0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0252B9B4 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0252B9B8 */ return;
|
|
}
|
|
|
|
// fn_0252B9C0 @ 0x252b9c0
|
|
void Gambit_fn_0252B9C0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _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_0252B9C0: ; // 0x252b9c0
|
|
/* 0252B9C0 */ _t0 = cpu->r[1] + 0xFFFFFF10u;
|
|
/* 0252B9C0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252B9C0 */ cpu->r[1] = _t0;
|
|
/* 0252B9C4 */ _t1 = cpu->r[1] + 0x000000E8u;
|
|
/* 0252B9C4 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0252B9C8 */ cpu->r[30] = cpu->r[3];
|
|
/* 0252B9CC */ _t2 = cpu->r[1] + 0x000000E0u;
|
|
/* 0252B9CC */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 0252B9D0 */ _t3 = cpu->r[1] + 0x000000ECu;
|
|
/* 0252B9D0 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 0252B9D4 */ cpu->r[28] = 0x100C0000u;
|
|
/* 0252B9D8 */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 0252B9DC */ _t4 = cpu->r[1] + 0x000000E4u;
|
|
/* 0252B9DC */ rbrew_write32(cpu->mem, _t4, cpu->r[29]);
|
|
/* 0252B9E0 */ cpu->r[3] = cpu->r[1] + 0x0000003Cu;
|
|
/* 0252B9E4 */ cpu->r[28] = cpu->r[28] + 0x00003340u;
|
|
/* 0252B9E8 */ cpu->r[31] = 0x100C0000u;
|
|
/* 0252B9EC */ _t5 = cpu->r[1] + 0x000000F4u;
|
|
/* 0252B9EC */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0252B9F0 */ cpu->r[29] = 0x00000000u;
|
|
/* 0252B9F4 */ cpu->r[31] = cpu->r[31] + 0x000035B8u;
|
|
/* 0252B9F8 */ cpu->r[5] = cpu->r[29];
|
|
/* 0252B9FC */ _t6 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252B9FC */ rbrew_write32(cpu->mem, _t6, cpu->r[28]);
|
|
/* 0252BA00 */ cpu->r[6] = cpu->r[5];
|
|
/* 0252BA04 */ _t7 = cpu->r[1] + 0x00000018u;
|
|
/* 0252BA04 */ rbrew_write32(cpu->mem, _t7, cpu->r[31]);
|
|
/* 0252BA08 */ Gambit_fn_027C6980(cpu);
|
|
/* 0252BA0C */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 0252BA10 */ Gambit_fn_02982574(cpu);
|
|
/* 0252BA14 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0252BA18 */ cpu->r[10] = 0x101D0000u;
|
|
/* 0252BA1C */ _t8 = cpu->r[12] + 0xFFFF97D0u;
|
|
/* 0252BA1C */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0252BA20 */ cpu->r[9] = 0x101D0000u;
|
|
/* 0252BA24 */ _t9 = cpu->r[10] + 0xFFFF97D4u;
|
|
/* 0252BA24 */ cpu->r[10] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0252BA28 */ _t10 = cpu->r[9] + 0xFFFF97D8u;
|
|
/* 0252BA28 */ cpu->r[0] = rbrew_read8(cpu->mem, _t10);
|
|
/* 0252BA2C */ _t11 = cpu->r[1] + 0x00000024u;
|
|
/* 0252BA2C */ rbrew_write32(cpu->mem, _t11, cpu->r[12]);
|
|
/* 0252BA30 */ cpu->r[11] = 0x101D0000u;
|
|
/* 0252BA34 */ _t12 = cpu->r[1] + 0x00000038u;
|
|
/* 0252BA34 */ rbrew_write8(cpu->mem, _t12, (uint8_t)cpu->r[0]);
|
|
/* 0252BA38 */ _t13 = cpu->r[11] + 0xFFFF97D9u;
|
|
/* 0252BA38 */ cpu->r[0] = rbrew_read8(cpu->mem, _t13);
|
|
/* 0252BA3C */ _t14 = cpu->r[1] + 0x00000034u;
|
|
/* 0252BA3C */ rbrew_write32(cpu->mem, _t14, cpu->r[10]);
|
|
/* 0252BA40 */ cpu->r[3] = cpu->r[1] + 0x00000044u;
|
|
/* 0252BA44 */ _t15 = cpu->r[1] + 0x00000039u;
|
|
/* 0252BA44 */ rbrew_write8(cpu->mem, _t15, (uint8_t)cpu->r[0]);
|
|
/* 0252BA48 */ Gambit_fn_02984F3C(cpu);
|
|
/* 0252BA4C */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0252BA50 */ cpu->r[5] = cpu->r[1] + 0x00000020u;
|
|
/* 0252BA54 */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252BA54 */ rbrew_write32(cpu->mem, _t16, cpu->r[28]);
|
|
/* 0252BA58 */ cpu->r[6] = cpu->r[1] + 0x00000044u;
|
|
/* 0252BA5C */ cpu->r[10] = 0x00000006u;
|
|
/* 0252BA60 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 0252BA60 */ rbrew_write32(cpu->mem, _t17, cpu->r[31]);
|
|
/* 0252BA64 */ cpu->r[4] = cpu->r[1] + 0x0000003Cu;
|
|
/* 0252BA68 */ cpu->r[0] = 0x00000001u;
|
|
/* 0252BA6C */ _t18 = cpu->r[1] + 0x00000048u;
|
|
/* 0252BA6C */ rbrew_write32(cpu->mem, _t18, cpu->r[10]);
|
|
/* 0252BA70 */ cpu->r[8] = cpu->r[29];
|
|
/* 0252BA74 */ cpu->r[7] = cpu->r[1] + 0x00000010u;
|
|
/* 0252BA78 */ _t19 = cpu->r[1] + 0x00000010u;
|
|
/* 0252BA78 */ rbrew_write32(cpu->mem, _t19, cpu->r[0]);
|
|
/* 0252BA7C */ Gambit_fn_023C9758(cpu);
|
|
/* 0252BA80 */ cpu->r[8] = 0x101C0000u;
|
|
/* 0252BA84 */ _t20 = cpu->r[30] + 0x000001E8u;
|
|
/* 0252BA84 */ rbrew_write32(cpu->mem, _t20, cpu->r[3]);
|
|
/* 0252BA88 */ _t21 = cpu->r[8] + 0x00006000u;
|
|
/* 0252BA88 */ cpu->r[8] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0252BA8C */ _t22 = cpu->r[8] + 0x0000025Cu;
|
|
/* 0252BA8C */ cpu->r[6] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0252BA90 */ _t23 = cpu->r[6] + 0x00000008u;
|
|
/* 0252BA90 */ cpu->r[4] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0252BA94 */ Gambit_fn_0297FD44(cpu);
|
|
/* 0252BA98 */ cpu->r[3] = 0x00000008u;
|
|
/* 0252BA9C */ Gambit_fn_02801A78(cpu);
|
|
/* 0252BAA0 */ cpu->r[12] = cpu->r[3];
|
|
/* 0252BAA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0252BAA4 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252BAA4 */ _t25 = _t24 & 0x00000001u;
|
|
/* 0252BAA4 */ if (_t25) goto L_0252BAB8; else goto L_0252BAA8;
|
|
L_0252BAA8: ; // 0x252baa8
|
|
/* 0252BAA8 */ cpu->r[0] = 0x100C0000u;
|
|
/* 0252BAAC */ _t26 = cpu->r[12] + 0x00000004u;
|
|
/* 0252BAAC */ rbrew_write32(cpu->mem, _t26, cpu->r[30]);
|
|
/* 0252BAB0 */ cpu->r[0] = cpu->r[0] + 0x000036E8u;
|
|
/* 0252BAB4 */ _t27 = cpu->r[12] + 0x00000000u;
|
|
/* 0252BAB4 */ rbrew_write32(cpu->mem, _t27, cpu->r[0]);
|
|
L_0252BAB8: ; // 0x252bab8
|
|
/* 0252BAB8 */ _t28 = cpu->r[30] + 0x000001E8u;
|
|
/* 0252BAB8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0252BABC */ _t29 = cpu->r[30] + 0x000001ECu;
|
|
/* 0252BABC */ rbrew_write32(cpu->mem, _t29, cpu->r[12]);
|
|
/* 0252BAC0 */ cpu->r[3] = 0x00000028u;
|
|
/* 0252BAC4 */ _t30 = cpu->r[7] + 0x000000A8u;
|
|
/* 0252BAC4 */ rbrew_write32(cpu->mem, _t30, cpu->r[12]);
|
|
/* 0252BAC8 */ Gambit_fn_02801A78(cpu);
|
|
/* 0252BACC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252BAD0 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252BAD0 */ _t32 = _t31 & 0x00000001u;
|
|
/* 0252BAD0 */ if (_t32) goto L_0252BAE0; else goto L_0252BAD4;
|
|
L_0252BAD4: ; // 0x252bad4
|
|
/* 0252BAD4 */ cpu->r[5] = 0x00000000u;
|
|
/* 0252BAD8 */ cpu->r[4] = 0x00000003u;
|
|
/* 0252BADC */ Gambit_fn_02398200(cpu);
|
|
L_0252BAE0: ; // 0x252bae0
|
|
/* 0252BAE0 */ _t33 = cpu->r[30] + 0x000001E8u;
|
|
/* 0252BAE0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t33);
|
|
/* 0252BAE4 */ _t34 = cpu->r[30] + 0x000001F0u;
|
|
/* 0252BAE4 */ rbrew_write32(cpu->mem, _t34, cpu->r[3]);
|
|
/* 0252BAE8 */ _t35 = cpu->r[3] + 0x00000014u;
|
|
/* 0252BAE8 */ rbrew_write32(cpu->mem, _t35, cpu->r[9]);
|
|
/* 0252BAEC */ _t36 = cpu->r[30] + 0x000001F0u;
|
|
/* 0252BAEC */ cpu->r[3] = rbrew_read32(cpu->mem, _t36);
|
|
/* 0252BAF0 */ cpu->r[4] = 0x00000002u;
|
|
/* 0252BAF4 */ Gambit_fn_023982F0(cpu);
|
|
/* 0252BAF8 */ cpu->r[3] = 0x000001FCu;
|
|
/* 0252BAFC */ Gambit_fn_02801A78(cpu);
|
|
/* 0252BB00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252BB04 */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252BB04 */ _t38 = _t37 & 0x00000001u;
|
|
/* 0252BB04 */ if (_t38) goto L_0252BB0C; else goto L_0252BB08;
|
|
L_0252BB08: ; // 0x252bb08
|
|
/* 0252BB08 */ Gambit_fn_02397560(cpu);
|
|
L_0252BB0C: ; // 0x252bb0c
|
|
/* 0252BB0C */ _t39 = cpu->r[30] + 0x00000004u;
|
|
/* 0252BB0C */ cpu->r[11] = rbrew_read32(cpu->mem, _t39);
|
|
/* 0252BB10 */ _t40 = cpu->r[30] + 0x000001F4u;
|
|
/* 0252BB10 */ rbrew_write32(cpu->mem, _t40, cpu->r[3]);
|
|
/* 0252BB14 */ _t41 = cpu->r[11] + 0x00000314u;
|
|
/* 0252BB14 */ cpu->r[6] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0252BB18 */ cpu->ctr = cpu->r[6];
|
|
/* 0252BB1C */ cpu->r[3] = cpu->r[30];
|
|
/* 0252BB20 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252BB24 */ cpu->r[4] = 0x100C0000u;
|
|
/* 0252BB28 */ cpu->r[5] = cpu->r[3];
|
|
/* 0252BB2C */ cpu->r[3] = cpu->r[1] + 0x00000054u;
|
|
/* 0252BB30 */ cpu->r[4] = cpu->r[4] + 0x000035CCu;
|
|
/* 0252BB34 */ _t42 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 0252BB34 */ _t43 = _t42 & 0x00000001u;
|
|
/* 0252BB34 */ if (_t43) goto L_0252BB38; // else: addr-0 trap, fall-through
|
|
L_0252BB38: ; // 0x252bb38
|
|
/* 0252BB38 */ Gambit_fn_0252C7E8(cpu);
|
|
/* 0252BB3C */ _t44 = cpu->r[3] + 0x00000004u;
|
|
/* 0252BB3C */ cpu->r[7] = rbrew_read32(cpu->mem, _t44);
|
|
/* 0252BB40 */ _t45 = cpu->r[7] + 0x00000014u;
|
|
/* 0252BB40 */ cpu->r[8] = rbrew_read32(cpu->mem, _t45);
|
|
/* 0252BB44 */ cpu->ctr = cpu->r[8];
|
|
/* 0252BB48 */ cpu->r[31] = cpu->r[3];
|
|
/* 0252BB4C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252BB50 */ _t46 = cpu->r[30] + 0x000001E8u;
|
|
/* 0252BB50 */ cpu->r[4] = rbrew_read32(cpu->mem, _t46);
|
|
/* 0252BB54 */ _t47 = cpu->r[30] + 0x000001F4u;
|
|
/* 0252BB54 */ cpu->r[3] = rbrew_read32(cpu->mem, _t47);
|
|
/* 0252BB58 */ _t48 = cpu->r[31] + 0x00000000u;
|
|
/* 0252BB58 */ cpu->r[5] = rbrew_read32(cpu->mem, _t48);
|
|
/* 0252BB5C */ Gambit_fn_023979A0(cpu);
|
|
/* 0252BB60 */ _t49 = cpu->r[30] + 0x000001F0u;
|
|
/* 0252BB60 */ cpu->r[12] = rbrew_read32(cpu->mem, _t49);
|
|
/* 0252BB64 */ _t50 = cpu->r[30] + 0x000001F4u;
|
|
/* 0252BB64 */ cpu->r[8] = rbrew_read32(cpu->mem, _t50);
|
|
/* 0252BB68 */ _t51 = cpu->r[12] + 0x00000020u;
|
|
/* 0252BB68 */ rbrew_write32(cpu->mem, _t51, cpu->r[8]);
|
|
/* 0252BB6C */ _t52 = cpu->r[30] + 0x00000024u;
|
|
/* 0252BB6C */ cpu->r[9] = rbrew_read32(cpu->mem, _t52);
|
|
/* 0252BB70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0252BB74 */ _t53 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252BB74 */ _t54 = _t53 & 0x00000001u;
|
|
/* 0252BB74 */ if (_t54) goto L_0252BB78; else goto L_0252BB80;
|
|
L_0252BB78: ; // 0x252bb78
|
|
/* 0252BB78 */ cpu->r[3] = cpu->r[30];
|
|
/* 0252BB7C */ Gambit_fn_024F3230(cpu);
|
|
L_0252BB80: ; // 0x252bb80
|
|
/* 0252BB80 */ cpu->r[3] = cpu->r[30];
|
|
/* 0252BB84 */ Gambit_fn_024F65FC(cpu);
|
|
/* 0252BB88 */ cpu->r[6] = 0x101D0000u;
|
|
/* 0252BB8C */ _t55 = cpu->r[6] + 0xFFFFEA64u;
|
|
/* 0252BB8C */ cpu->r[11] = rbrew_read32(cpu->mem, _t55);
|
|
/* 0252BB8C */ cpu->r[6] = _t55;
|
|
/* 0252BB90 */ cpu->r[4] = 0x101D0000u;
|
|
/* 0252BB94 */ cpu->r[31] = cpu->r[3];
|
|
/* 0252BB98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0252BB9C */ cpu->r[4] = cpu->r[4] + 0x00000A04u;
|
|
/* 0252BBA0 */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252BBA0 */ _t57 = _t56 & 0x00000001u;
|
|
/* 0252BBA0 */ if (_t57) goto L_0252BBA4; else goto L_0252BBB8;
|
|
L_0252BBA4: ; // 0x252bba4
|
|
/* 0252BBA4 */ cpu->r[11] = 0x100C0000u;
|
|
/* 0252BBA8 */ cpu->r[0] = 0x00000001u;
|
|
/* 0252BBAC */ cpu->r[11] = cpu->r[11] + 0x00003420u;
|
|
/* 0252BBB0 */ _t58 = cpu->r[6] + 0x00000000u;
|
|
/* 0252BBB0 */ rbrew_write32(cpu->mem, _t58, cpu->r[0]);
|
|
/* 0252BBB4 */ _t59 = cpu->r[4] + 0x00000000u;
|
|
/* 0252BBB4 */ rbrew_write32(cpu->mem, _t59, cpu->r[11]);
|
|
L_0252BBB8: ; // 0x252bbb8
|
|
/* 0252BBB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0252BBBC */ _t60 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252BBBC */ _t61 = _t60 & 0x00000001u;
|
|
/* 0252BBBC */ if (_t61) goto L_0252BBDC; else goto L_0252BBC0;
|
|
L_0252BBC0: ; // 0x252bbc0
|
|
/* 0252BBC0 */ _t62 = cpu->r[31] + 0x00000000u;
|
|
/* 0252BBC0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t62);
|
|
/* 0252BBC4 */ _t63 = cpu->r[12] + 0x0000006Cu;
|
|
/* 0252BBC4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t63);
|
|
/* 0252BBC8 */ cpu->ctr = cpu->r[0];
|
|
/* 0252BBCC */ cpu->r[3] = cpu->r[31];
|
|
/* 0252BBD0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252BBD4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252BBD8 */ _t64 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252BBD8 */ _t65 = _t64 & 0x00000001u;
|
|
/* 0252BBD8 */ if (_t65) goto L_0252BBDC; else goto L_0252BBE0;
|
|
L_0252BBDC: ; // 0x252bbdc
|
|
/* 0252BBDC */ cpu->r[31] = 0x00000000u;
|
|
L_0252BBE0: ; // 0x252bbe0
|
|
/* 0252BBE0 */ _t66 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252BBE0 */ rbrew_write32(cpu->mem, _t66, cpu->r[28]);
|
|
/* 0252BBE4 */ cpu->r[0] = 0x100C0000u;
|
|
/* 0252BBE8 */ _t67 = cpu->r[30] + 0x000001E8u;
|
|
/* 0252BBE8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t67);
|
|
/* 0252BBEC */ cpu->r[0] = cpu->r[0] + 0x000035D8u;
|
|
/* 0252BBF0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0252BBF4 */ cpu->r[31] = cpu->r[31] + 0x000002FCu;
|
|
/* 0252BBF8 */ _t68 = cpu->r[1] + 0x00000008u;
|
|
/* 0252BBF8 */ rbrew_write32(cpu->mem, _t68, cpu->r[0]);
|
|
/* 0252BBFC */ Gambit_fn_029807A8(cpu);
|
|
/* 0252BC00 */ cpu->r[4] = cpu->r[31];
|
|
/* 0252BC04 */ _t69 = cpu->r[30] + 0x000001E8u;
|
|
/* 0252BC04 */ cpu->r[5] = rbrew_read32(cpu->mem, _t69);
|
|
/* 0252BC08 */ _t70 = cpu->r[1] + 0x00000050u;
|
|
/* 0252BC08 */ rbrew_write32(cpu->mem, _t70, cpu->r[3]);
|
|
/* 0252BC0C */ cpu->r[6] = cpu->r[1] + 0x00000014u;
|
|
/* 0252BC10 */ _t71 = cpu->r[1] + 0x00000014u;
|
|
/* 0252BC10 */ rbrew_write32(cpu->mem, _t71, cpu->r[3]);
|
|
/* 0252BC14 */ cpu->r[3] = 0x00000000u;
|
|
/* 0252BC18 */ Gambit_fn_0224A290(cpu);
|
|
/* 0252BC1C */ cpu->r[5] = 0x00000001u;
|
|
/* 0252BC20 */ cpu->r[4] = 0x00000004u;
|
|
/* 0252BC24 */ _t72 = cpu->r[30] + 0x000001FCu;
|
|
/* 0252BC24 */ rbrew_write32(cpu->mem, _t72, cpu->r[3]);
|
|
/* 0252BC28 */ Gambit_fn_0224A390(cpu);
|
|
/* 0252BC2C */ cpu->r[3] = 0x00000010u;
|
|
/* 0252BC30 */ Gambit_fn_02801A78(cpu);
|
|
/* 0252BC34 */ cpu->r[31] = cpu->r[3];
|
|
/* 0252BC34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0252BC38 */ _t73 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252BC38 */ _t74 = _t73 & 0x00000001u;
|
|
/* 0252BC38 */ if (_t74) goto L_0252BC88; else goto L_0252BC3C;
|
|
L_0252BC3C: ; // 0x252bc3c
|
|
/* 0252BC3C */ cpu->r[3] = cpu->r[31];
|
|
/* 0252BC3C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252BC40 */ _t75 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252BC40 */ _t76 = _t75 & 0x00000001u;
|
|
/* 0252BC40 */ if (_t76) goto L_0252BC44; else goto L_0252BC54;
|
|
L_0252BC44: ; // 0x252bc44
|
|
/* 0252BC44 */ cpu->r[3] = 0x00000008u;
|
|
/* 0252BC48 */ Gambit_fn_02801A78(cpu);
|
|
/* 0252BC4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252BC50 */ _t77 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252BC50 */ _t78 = _t77 & 0x00000001u;
|
|
/* 0252BC50 */ if (_t78) goto L_0252BC64; else goto L_0252BC54;
|
|
L_0252BC54: ; // 0x252bc54
|
|
/* 0252BC54 */ cpu->r[7] = 0x100C0000u;
|
|
/* 0252BC58 */ _t79 = cpu->r[3] + 0x00000000u;
|
|
/* 0252BC58 */ rbrew_write32(cpu->mem, _t79, cpu->r[29]);
|
|
/* 0252BC5C */ cpu->r[7] = cpu->r[7] + 0x000033A0u;
|
|
/* 0252BC60 */ _t80 = cpu->r[3] + 0x00000004u;
|
|
/* 0252BC60 */ rbrew_write32(cpu->mem, _t80, cpu->r[7]);
|
|
L_0252BC64: ; // 0x252bc64
|
|
/* 0252BC64 */ cpu->r[0] = 0x100C0000u;
|
|
/* 0252BC68 */ cpu->r[12] = 0x100C0000u;
|
|
/* 0252BC6C */ _t81 = cpu->r[31] + 0x00000008u;
|
|
/* 0252BC6C */ rbrew_write32(cpu->mem, _t81, cpu->r[29]);
|
|
/* 0252BC70 */ cpu->r[0] = cpu->r[0] + 0x00003440u;
|
|
/* 0252BC74 */ _t82 = cpu->r[12] + 0x000035B4u;
|
|
/* 0252BC74 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t82);
|
|
/* 0252BC78 */ _t83 = cpu->r[31] + 0x00000004u;
|
|
/* 0252BC78 */ rbrew_write32(cpu->mem, _t83, cpu->r[0]);
|
|
/* 0252BC7C */ _t84 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0252BC7C */ rbrew_write_f32(cpu->mem, _t84, cpu->f[0]);
|
|
/* 0252BC80 */ _t85 = cpu->r[30] + 0x0000020Cu;
|
|
/* 0252BC80 */ rbrew_write32(cpu->mem, _t85, cpu->r[31]);
|
|
/* 0252BC84 */ goto L_0252BC90;
|
|
L_0252BC88: ; // 0x252bc88
|
|
/* 0252BC88 */ cpu->r[31] = 0x00000000u;
|
|
/* 0252BC8C */ _t86 = cpu->r[30] + 0x0000020Cu;
|
|
/* 0252BC8C */ rbrew_write32(cpu->mem, _t86, cpu->r[31]);
|
|
L_0252BC90: ; // 0x252bc90
|
|
/* 0252BC90 */ _t87 = cpu->r[1] + 0x000000E0u;
|
|
/* 0252BC90 */ cpu->r[28] = rbrew_read32(cpu->mem, _t87);
|
|
/* 0252BC94 */ _t88 = cpu->r[1] + 0x000000E4u;
|
|
/* 0252BC94 */ cpu->r[29] = rbrew_read32(cpu->mem, _t88);
|
|
/* 0252BC98 */ _t89 = cpu->r[1] + 0x000000F4u;
|
|
/* 0252BC98 */ cpu->r[0] = rbrew_read32(cpu->mem, _t89);
|
|
/* 0252BC9C */ _t90 = cpu->r[1] + 0x000000E8u;
|
|
/* 0252BC9C */ cpu->r[30] = rbrew_read32(cpu->mem, _t90);
|
|
/* 0252BCA0 */ cpu->lr = cpu->r[0];
|
|
/* 0252BCA4 */ _t91 = cpu->r[1] + 0x000000ECu;
|
|
/* 0252BCA4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t91);
|
|
/* 0252BCA8 */ cpu->r[1] = cpu->r[1] + 0x000000F0u;
|
|
/* 0252BCAC */ return;
|
|
}
|
|
|
|
// fn_0252BCB0 @ 0x252bcb0
|
|
void Gambit_fn_0252BCB0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _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_0252B9BC: ; // 0x252b9bc
|
|
/* 0252B9BC */ cpu->r[0] = cpu->lr;
|
|
/* 0252B9C0 */ _t0 = cpu->r[1] + 0xFFFFFF10u;
|
|
/* 0252B9C0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252B9C0 */ cpu->r[1] = _t0;
|
|
/* 0252B9C4 */ _t1 = cpu->r[1] + 0x000000E8u;
|
|
/* 0252B9C4 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0252B9C8 */ cpu->r[30] = cpu->r[3];
|
|
/* 0252B9CC */ _t2 = cpu->r[1] + 0x000000E0u;
|
|
/* 0252B9CC */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 0252B9D0 */ _t3 = cpu->r[1] + 0x000000ECu;
|
|
/* 0252B9D0 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 0252B9D4 */ cpu->r[28] = 0x100C0000u;
|
|
/* 0252B9D8 */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 0252B9DC */ _t4 = cpu->r[1] + 0x000000E4u;
|
|
/* 0252B9DC */ rbrew_write32(cpu->mem, _t4, cpu->r[29]);
|
|
/* 0252B9E0 */ cpu->r[3] = cpu->r[1] + 0x0000003Cu;
|
|
/* 0252B9E4 */ cpu->r[28] = cpu->r[28] + 0x00003340u;
|
|
/* 0252B9E8 */ cpu->r[31] = 0x100C0000u;
|
|
/* 0252B9EC */ _t5 = cpu->r[1] + 0x000000F4u;
|
|
/* 0252B9EC */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0252B9F0 */ cpu->r[29] = 0x00000000u;
|
|
/* 0252B9F4 */ cpu->r[31] = cpu->r[31] + 0x000035B8u;
|
|
/* 0252B9F8 */ cpu->r[5] = cpu->r[29];
|
|
/* 0252B9FC */ _t6 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252B9FC */ rbrew_write32(cpu->mem, _t6, cpu->r[28]);
|
|
/* 0252BA00 */ cpu->r[6] = cpu->r[5];
|
|
/* 0252BA04 */ _t7 = cpu->r[1] + 0x00000018u;
|
|
/* 0252BA04 */ rbrew_write32(cpu->mem, _t7, cpu->r[31]);
|
|
/* 0252BA08 */ Gambit_fn_027C6980(cpu);
|
|
/* 0252BA0C */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 0252BA10 */ Gambit_fn_02982574(cpu);
|
|
/* 0252BA14 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0252BA18 */ cpu->r[10] = 0x101D0000u;
|
|
/* 0252BA1C */ _t8 = cpu->r[12] + 0xFFFF97D0u;
|
|
/* 0252BA1C */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0252BA20 */ cpu->r[9] = 0x101D0000u;
|
|
/* 0252BA24 */ _t9 = cpu->r[10] + 0xFFFF97D4u;
|
|
/* 0252BA24 */ cpu->r[10] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0252BA28 */ _t10 = cpu->r[9] + 0xFFFF97D8u;
|
|
/* 0252BA28 */ cpu->r[0] = rbrew_read8(cpu->mem, _t10);
|
|
/* 0252BA2C */ _t11 = cpu->r[1] + 0x00000024u;
|
|
/* 0252BA2C */ rbrew_write32(cpu->mem, _t11, cpu->r[12]);
|
|
/* 0252BA30 */ cpu->r[11] = 0x101D0000u;
|
|
/* 0252BA34 */ _t12 = cpu->r[1] + 0x00000038u;
|
|
/* 0252BA34 */ rbrew_write8(cpu->mem, _t12, (uint8_t)cpu->r[0]);
|
|
/* 0252BA38 */ _t13 = cpu->r[11] + 0xFFFF97D9u;
|
|
/* 0252BA38 */ cpu->r[0] = rbrew_read8(cpu->mem, _t13);
|
|
/* 0252BA3C */ _t14 = cpu->r[1] + 0x00000034u;
|
|
/* 0252BA3C */ rbrew_write32(cpu->mem, _t14, cpu->r[10]);
|
|
/* 0252BA40 */ cpu->r[3] = cpu->r[1] + 0x00000044u;
|
|
/* 0252BA44 */ _t15 = cpu->r[1] + 0x00000039u;
|
|
/* 0252BA44 */ rbrew_write8(cpu->mem, _t15, (uint8_t)cpu->r[0]);
|
|
/* 0252BA48 */ Gambit_fn_02984F3C(cpu);
|
|
/* 0252BA4C */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0252BA50 */ cpu->r[5] = cpu->r[1] + 0x00000020u;
|
|
/* 0252BA54 */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252BA54 */ rbrew_write32(cpu->mem, _t16, cpu->r[28]);
|
|
/* 0252BA58 */ cpu->r[6] = cpu->r[1] + 0x00000044u;
|
|
/* 0252BA5C */ cpu->r[10] = 0x00000006u;
|
|
/* 0252BA60 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 0252BA60 */ rbrew_write32(cpu->mem, _t17, cpu->r[31]);
|
|
/* 0252BA64 */ cpu->r[4] = cpu->r[1] + 0x0000003Cu;
|
|
/* 0252BA68 */ cpu->r[0] = 0x00000001u;
|
|
/* 0252BA6C */ _t18 = cpu->r[1] + 0x00000048u;
|
|
/* 0252BA6C */ rbrew_write32(cpu->mem, _t18, cpu->r[10]);
|
|
/* 0252BA70 */ cpu->r[8] = cpu->r[29];
|
|
/* 0252BA74 */ cpu->r[7] = cpu->r[1] + 0x00000010u;
|
|
/* 0252BA78 */ _t19 = cpu->r[1] + 0x00000010u;
|
|
/* 0252BA78 */ rbrew_write32(cpu->mem, _t19, cpu->r[0]);
|
|
/* 0252BA7C */ Gambit_fn_023C9758(cpu);
|
|
/* 0252BA80 */ cpu->r[8] = 0x101C0000u;
|
|
/* 0252BA84 */ _t20 = cpu->r[30] + 0x000001E8u;
|
|
/* 0252BA84 */ rbrew_write32(cpu->mem, _t20, cpu->r[3]);
|
|
/* 0252BA88 */ _t21 = cpu->r[8] + 0x00006000u;
|
|
/* 0252BA88 */ cpu->r[8] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0252BA8C */ _t22 = cpu->r[8] + 0x0000025Cu;
|
|
/* 0252BA8C */ cpu->r[6] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0252BA90 */ _t23 = cpu->r[6] + 0x00000008u;
|
|
/* 0252BA90 */ cpu->r[4] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0252BA94 */ Gambit_fn_0297FD44(cpu);
|
|
/* 0252BA98 */ cpu->r[3] = 0x00000008u;
|
|
/* 0252BA9C */ Gambit_fn_02801A78(cpu);
|
|
/* 0252BAA0 */ cpu->r[12] = cpu->r[3];
|
|
/* 0252BAA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0252BAA4 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252BAA4 */ _t25 = _t24 & 0x00000001u;
|
|
/* 0252BAA4 */ if (_t25) goto L_0252BAB8; else goto L_0252BAA8;
|
|
L_0252BAA8: ; // 0x252baa8
|
|
/* 0252BAA8 */ cpu->r[0] = 0x100C0000u;
|
|
/* 0252BAAC */ _t26 = cpu->r[12] + 0x00000004u;
|
|
/* 0252BAAC */ rbrew_write32(cpu->mem, _t26, cpu->r[30]);
|
|
/* 0252BAB0 */ cpu->r[0] = cpu->r[0] + 0x000036E8u;
|
|
/* 0252BAB4 */ _t27 = cpu->r[12] + 0x00000000u;
|
|
/* 0252BAB4 */ rbrew_write32(cpu->mem, _t27, cpu->r[0]);
|
|
L_0252BAB8: ; // 0x252bab8
|
|
/* 0252BAB8 */ _t28 = cpu->r[30] + 0x000001E8u;
|
|
/* 0252BAB8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0252BABC */ _t29 = cpu->r[30] + 0x000001ECu;
|
|
/* 0252BABC */ rbrew_write32(cpu->mem, _t29, cpu->r[12]);
|
|
/* 0252BAC0 */ cpu->r[3] = 0x00000028u;
|
|
/* 0252BAC4 */ _t30 = cpu->r[7] + 0x000000A8u;
|
|
/* 0252BAC4 */ rbrew_write32(cpu->mem, _t30, cpu->r[12]);
|
|
/* 0252BAC8 */ Gambit_fn_02801A78(cpu);
|
|
/* 0252BACC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252BAD0 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252BAD0 */ _t32 = _t31 & 0x00000001u;
|
|
/* 0252BAD0 */ if (_t32) goto L_0252BAE0; else goto L_0252BAD4;
|
|
L_0252BAD4: ; // 0x252bad4
|
|
/* 0252BAD4 */ cpu->r[5] = 0x00000000u;
|
|
/* 0252BAD8 */ cpu->r[4] = 0x00000003u;
|
|
/* 0252BADC */ Gambit_fn_02398200(cpu);
|
|
L_0252BAE0: ; // 0x252bae0
|
|
/* 0252BAE0 */ _t33 = cpu->r[30] + 0x000001E8u;
|
|
/* 0252BAE0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t33);
|
|
/* 0252BAE4 */ _t34 = cpu->r[30] + 0x000001F0u;
|
|
/* 0252BAE4 */ rbrew_write32(cpu->mem, _t34, cpu->r[3]);
|
|
/* 0252BAE8 */ _t35 = cpu->r[3] + 0x00000014u;
|
|
/* 0252BAE8 */ rbrew_write32(cpu->mem, _t35, cpu->r[9]);
|
|
/* 0252BAEC */ _t36 = cpu->r[30] + 0x000001F0u;
|
|
/* 0252BAEC */ cpu->r[3] = rbrew_read32(cpu->mem, _t36);
|
|
/* 0252BAF0 */ cpu->r[4] = 0x00000002u;
|
|
/* 0252BAF4 */ Gambit_fn_023982F0(cpu);
|
|
/* 0252BAF8 */ cpu->r[3] = 0x000001FCu;
|
|
/* 0252BAFC */ Gambit_fn_02801A78(cpu);
|
|
/* 0252BB00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252BB04 */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252BB04 */ _t38 = _t37 & 0x00000001u;
|
|
/* 0252BB04 */ if (_t38) goto L_0252BB0C; else goto L_0252BB08;
|
|
L_0252BB08: ; // 0x252bb08
|
|
/* 0252BB08 */ Gambit_fn_02397560(cpu);
|
|
L_0252BB0C: ; // 0x252bb0c
|
|
/* 0252BB0C */ _t39 = cpu->r[30] + 0x00000004u;
|
|
/* 0252BB0C */ cpu->r[11] = rbrew_read32(cpu->mem, _t39);
|
|
/* 0252BB10 */ _t40 = cpu->r[30] + 0x000001F4u;
|
|
/* 0252BB10 */ rbrew_write32(cpu->mem, _t40, cpu->r[3]);
|
|
/* 0252BB14 */ _t41 = cpu->r[11] + 0x00000314u;
|
|
/* 0252BB14 */ cpu->r[6] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0252BB18 */ cpu->ctr = cpu->r[6];
|
|
/* 0252BB1C */ cpu->r[3] = cpu->r[30];
|
|
/* 0252BB20 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252BB24 */ cpu->r[4] = 0x100C0000u;
|
|
/* 0252BB28 */ cpu->r[5] = cpu->r[3];
|
|
/* 0252BB2C */ cpu->r[3] = cpu->r[1] + 0x00000054u;
|
|
/* 0252BB30 */ cpu->r[4] = cpu->r[4] + 0x000035CCu;
|
|
/* 0252BB34 */ _t42 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 0252BB34 */ _t43 = _t42 & 0x00000001u;
|
|
/* 0252BB34 */ if (_t43) goto L_0252BB38; // else: addr-0 trap, fall-through
|
|
L_0252BB38: ; // 0x252bb38
|
|
/* 0252BB38 */ Gambit_fn_0252C7E8(cpu);
|
|
/* 0252BB3C */ _t44 = cpu->r[3] + 0x00000004u;
|
|
/* 0252BB3C */ cpu->r[7] = rbrew_read32(cpu->mem, _t44);
|
|
/* 0252BB40 */ _t45 = cpu->r[7] + 0x00000014u;
|
|
/* 0252BB40 */ cpu->r[8] = rbrew_read32(cpu->mem, _t45);
|
|
/* 0252BB44 */ cpu->ctr = cpu->r[8];
|
|
/* 0252BB48 */ cpu->r[31] = cpu->r[3];
|
|
/* 0252BB4C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252BB50 */ _t46 = cpu->r[30] + 0x000001E8u;
|
|
/* 0252BB50 */ cpu->r[4] = rbrew_read32(cpu->mem, _t46);
|
|
/* 0252BB54 */ _t47 = cpu->r[30] + 0x000001F4u;
|
|
/* 0252BB54 */ cpu->r[3] = rbrew_read32(cpu->mem, _t47);
|
|
/* 0252BB58 */ _t48 = cpu->r[31] + 0x00000000u;
|
|
/* 0252BB58 */ cpu->r[5] = rbrew_read32(cpu->mem, _t48);
|
|
/* 0252BB5C */ Gambit_fn_023979A0(cpu);
|
|
/* 0252BB60 */ _t49 = cpu->r[30] + 0x000001F0u;
|
|
/* 0252BB60 */ cpu->r[12] = rbrew_read32(cpu->mem, _t49);
|
|
/* 0252BB64 */ _t50 = cpu->r[30] + 0x000001F4u;
|
|
/* 0252BB64 */ cpu->r[8] = rbrew_read32(cpu->mem, _t50);
|
|
/* 0252BB68 */ _t51 = cpu->r[12] + 0x00000020u;
|
|
/* 0252BB68 */ rbrew_write32(cpu->mem, _t51, cpu->r[8]);
|
|
/* 0252BB6C */ _t52 = cpu->r[30] + 0x00000024u;
|
|
/* 0252BB6C */ cpu->r[9] = rbrew_read32(cpu->mem, _t52);
|
|
/* 0252BB70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0252BB74 */ _t53 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252BB74 */ _t54 = _t53 & 0x00000001u;
|
|
/* 0252BB74 */ if (_t54) goto L_0252BB78; else goto L_0252BB80;
|
|
L_0252BB78: ; // 0x252bb78
|
|
/* 0252BB78 */ cpu->r[3] = cpu->r[30];
|
|
/* 0252BB7C */ Gambit_fn_024F3230(cpu);
|
|
L_0252BB80: ; // 0x252bb80
|
|
/* 0252BB80 */ cpu->r[3] = cpu->r[30];
|
|
/* 0252BB84 */ Gambit_fn_024F65FC(cpu);
|
|
/* 0252BB88 */ cpu->r[6] = 0x101D0000u;
|
|
/* 0252BB8C */ _t55 = cpu->r[6] + 0xFFFFEA64u;
|
|
/* 0252BB8C */ cpu->r[11] = rbrew_read32(cpu->mem, _t55);
|
|
/* 0252BB8C */ cpu->r[6] = _t55;
|
|
/* 0252BB90 */ cpu->r[4] = 0x101D0000u;
|
|
/* 0252BB94 */ cpu->r[31] = cpu->r[3];
|
|
/* 0252BB98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0252BB9C */ cpu->r[4] = cpu->r[4] + 0x00000A04u;
|
|
/* 0252BBA0 */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252BBA0 */ _t57 = _t56 & 0x00000001u;
|
|
/* 0252BBA0 */ if (_t57) goto L_0252BBA4; else goto L_0252BBB8;
|
|
L_0252BBA4: ; // 0x252bba4
|
|
/* 0252BBA4 */ cpu->r[11] = 0x100C0000u;
|
|
/* 0252BBA8 */ cpu->r[0] = 0x00000001u;
|
|
/* 0252BBAC */ cpu->r[11] = cpu->r[11] + 0x00003420u;
|
|
/* 0252BBB0 */ _t58 = cpu->r[6] + 0x00000000u;
|
|
/* 0252BBB0 */ rbrew_write32(cpu->mem, _t58, cpu->r[0]);
|
|
/* 0252BBB4 */ _t59 = cpu->r[4] + 0x00000000u;
|
|
/* 0252BBB4 */ rbrew_write32(cpu->mem, _t59, cpu->r[11]);
|
|
L_0252BBB8: ; // 0x252bbb8
|
|
/* 0252BBB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0252BBBC */ _t60 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252BBBC */ _t61 = _t60 & 0x00000001u;
|
|
/* 0252BBBC */ if (_t61) goto L_0252BBDC; else goto L_0252BBC0;
|
|
L_0252BBC0: ; // 0x252bbc0
|
|
/* 0252BBC0 */ _t62 = cpu->r[31] + 0x00000000u;
|
|
/* 0252BBC0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t62);
|
|
/* 0252BBC4 */ _t63 = cpu->r[12] + 0x0000006Cu;
|
|
/* 0252BBC4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t63);
|
|
/* 0252BBC8 */ cpu->ctr = cpu->r[0];
|
|
/* 0252BBCC */ cpu->r[3] = cpu->r[31];
|
|
/* 0252BBD0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252BBD4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252BBD8 */ _t64 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252BBD8 */ _t65 = _t64 & 0x00000001u;
|
|
/* 0252BBD8 */ if (_t65) goto L_0252BBDC; else goto L_0252BBE0;
|
|
L_0252BBDC: ; // 0x252bbdc
|
|
/* 0252BBDC */ cpu->r[31] = 0x00000000u;
|
|
L_0252BBE0: ; // 0x252bbe0
|
|
/* 0252BBE0 */ _t66 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252BBE0 */ rbrew_write32(cpu->mem, _t66, cpu->r[28]);
|
|
/* 0252BBE4 */ cpu->r[0] = 0x100C0000u;
|
|
/* 0252BBE8 */ _t67 = cpu->r[30] + 0x000001E8u;
|
|
/* 0252BBE8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t67);
|
|
/* 0252BBEC */ cpu->r[0] = cpu->r[0] + 0x000035D8u;
|
|
/* 0252BBF0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0252BBF4 */ cpu->r[31] = cpu->r[31] + 0x000002FCu;
|
|
/* 0252BBF8 */ _t68 = cpu->r[1] + 0x00000008u;
|
|
/* 0252BBF8 */ rbrew_write32(cpu->mem, _t68, cpu->r[0]);
|
|
/* 0252BBFC */ Gambit_fn_029807A8(cpu);
|
|
/* 0252BC00 */ cpu->r[4] = cpu->r[31];
|
|
/* 0252BC04 */ _t69 = cpu->r[30] + 0x000001E8u;
|
|
/* 0252BC04 */ cpu->r[5] = rbrew_read32(cpu->mem, _t69);
|
|
/* 0252BC08 */ _t70 = cpu->r[1] + 0x00000050u;
|
|
/* 0252BC08 */ rbrew_write32(cpu->mem, _t70, cpu->r[3]);
|
|
/* 0252BC0C */ cpu->r[6] = cpu->r[1] + 0x00000014u;
|
|
/* 0252BC10 */ _t71 = cpu->r[1] + 0x00000014u;
|
|
/* 0252BC10 */ rbrew_write32(cpu->mem, _t71, cpu->r[3]);
|
|
/* 0252BC14 */ cpu->r[3] = 0x00000000u;
|
|
/* 0252BC18 */ Gambit_fn_0224A290(cpu);
|
|
/* 0252BC1C */ cpu->r[5] = 0x00000001u;
|
|
/* 0252BC20 */ cpu->r[4] = 0x00000004u;
|
|
/* 0252BC24 */ _t72 = cpu->r[30] + 0x000001FCu;
|
|
/* 0252BC24 */ rbrew_write32(cpu->mem, _t72, cpu->r[3]);
|
|
/* 0252BC28 */ Gambit_fn_0224A390(cpu);
|
|
/* 0252BC2C */ cpu->r[3] = 0x00000010u;
|
|
/* 0252BC30 */ Gambit_fn_02801A78(cpu);
|
|
/* 0252BC34 */ cpu->r[31] = cpu->r[3];
|
|
/* 0252BC34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0252BC38 */ _t73 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252BC38 */ _t74 = _t73 & 0x00000001u;
|
|
/* 0252BC38 */ if (_t74) goto L_0252BC88; else goto L_0252BC3C;
|
|
L_0252BC3C: ; // 0x252bc3c
|
|
/* 0252BC3C */ cpu->r[3] = cpu->r[31];
|
|
/* 0252BC3C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252BC40 */ _t75 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252BC40 */ _t76 = _t75 & 0x00000001u;
|
|
/* 0252BC40 */ if (_t76) goto L_0252BC44; else goto L_0252BC54;
|
|
L_0252BC44: ; // 0x252bc44
|
|
/* 0252BC44 */ cpu->r[3] = 0x00000008u;
|
|
/* 0252BC48 */ Gambit_fn_02801A78(cpu);
|
|
/* 0252BC4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252BC50 */ _t77 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252BC50 */ _t78 = _t77 & 0x00000001u;
|
|
/* 0252BC50 */ if (_t78) goto L_0252BC64; else goto L_0252BC54;
|
|
L_0252BC54: ; // 0x252bc54
|
|
/* 0252BC54 */ cpu->r[7] = 0x100C0000u;
|
|
/* 0252BC58 */ _t79 = cpu->r[3] + 0x00000000u;
|
|
/* 0252BC58 */ rbrew_write32(cpu->mem, _t79, cpu->r[29]);
|
|
/* 0252BC5C */ cpu->r[7] = cpu->r[7] + 0x000033A0u;
|
|
/* 0252BC60 */ _t80 = cpu->r[3] + 0x00000004u;
|
|
/* 0252BC60 */ rbrew_write32(cpu->mem, _t80, cpu->r[7]);
|
|
L_0252BC64: ; // 0x252bc64
|
|
/* 0252BC64 */ cpu->r[0] = 0x100C0000u;
|
|
/* 0252BC68 */ cpu->r[12] = 0x100C0000u;
|
|
/* 0252BC6C */ _t81 = cpu->r[31] + 0x00000008u;
|
|
/* 0252BC6C */ rbrew_write32(cpu->mem, _t81, cpu->r[29]);
|
|
/* 0252BC70 */ cpu->r[0] = cpu->r[0] + 0x00003440u;
|
|
/* 0252BC74 */ _t82 = cpu->r[12] + 0x000035B4u;
|
|
/* 0252BC74 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t82);
|
|
/* 0252BC78 */ _t83 = cpu->r[31] + 0x00000004u;
|
|
/* 0252BC78 */ rbrew_write32(cpu->mem, _t83, cpu->r[0]);
|
|
/* 0252BC7C */ _t84 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0252BC7C */ rbrew_write_f32(cpu->mem, _t84, cpu->f[0]);
|
|
/* 0252BC80 */ _t85 = cpu->r[30] + 0x0000020Cu;
|
|
/* 0252BC80 */ rbrew_write32(cpu->mem, _t85, cpu->r[31]);
|
|
/* 0252BC84 */ goto L_0252BC90;
|
|
L_0252BC88: ; // 0x252bc88
|
|
/* 0252BC88 */ cpu->r[31] = 0x00000000u;
|
|
/* 0252BC8C */ _t86 = cpu->r[30] + 0x0000020Cu;
|
|
/* 0252BC8C */ rbrew_write32(cpu->mem, _t86, cpu->r[31]);
|
|
L_0252BC90: ; // 0x252bc90
|
|
/* 0252BC90 */ _t87 = cpu->r[1] + 0x000000E0u;
|
|
/* 0252BC90 */ cpu->r[28] = rbrew_read32(cpu->mem, _t87);
|
|
/* 0252BC94 */ _t88 = cpu->r[1] + 0x000000E4u;
|
|
/* 0252BC94 */ cpu->r[29] = rbrew_read32(cpu->mem, _t88);
|
|
/* 0252BC98 */ _t89 = cpu->r[1] + 0x000000F4u;
|
|
/* 0252BC98 */ cpu->r[0] = rbrew_read32(cpu->mem, _t89);
|
|
/* 0252BC9C */ _t90 = cpu->r[1] + 0x000000E8u;
|
|
/* 0252BC9C */ cpu->r[30] = rbrew_read32(cpu->mem, _t90);
|
|
/* 0252BCA0 */ cpu->lr = cpu->r[0];
|
|
/* 0252BCA4 */ _t91 = cpu->r[1] + 0x000000ECu;
|
|
/* 0252BCA4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t91);
|
|
/* 0252BCA8 */ cpu->r[1] = cpu->r[1] + 0x000000F0u;
|
|
/* 0252BCAC */ return;
|
|
L_0252BCB0: ; // 0x252bcb0
|
|
/* 0252BCB0 */ goto L_0252B9BC;
|
|
}
|
|
|
|
// fn_0252BCB4 @ 0x252bcb4
|
|
void Gambit_fn_0252BCB4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0252BCB4: ; // 0x252bcb4
|
|
/* 0252BCB4 */ cpu->r[0] = cpu->lr;
|
|
/* 0252BCB8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0252BCB8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252BCB8 */ cpu->r[1] = _t0;
|
|
/* 0252BCBC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252BCBC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0252BCC0 */ cpu->r[31] = cpu->r[3];
|
|
/* 0252BCC4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0252BCC4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0252BCC8 */ _t3 = cpu->r[31] + 0x000001FCu;
|
|
/* 0252BCC8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0252BCCC */ Gambit_fn_0224A688(cpu);
|
|
/* 0252BCD0 */ _t4 = cpu->r[31] + 0x00000074u;
|
|
/* 0252BCD0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 0252BCD4 */ _t5 = cpu->r[31] + 0x0000006Cu;
|
|
/* 0252BCD4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 0252BCD8 */ _t6 = cpu->r[31] + 0x00000208u;
|
|
/* 0252BCD8 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[13]);
|
|
/* 0252BCDC */ _t7 = cpu->r[31] + 0x00000200u;
|
|
/* 0252BCDC */ rbrew_write_f32(cpu->mem, _t7, cpu->f[0]);
|
|
/* 0252BCE0 */ _t8 = cpu->r[31] + 0x00000070u;
|
|
/* 0252BCE0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 0252BCE4 */ _t9 = cpu->r[31] + 0x0000020Cu;
|
|
/* 0252BCE4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0252BCE8 */ cpu->r[0] = 0x00000001u;
|
|
/* 0252BCEC */ _t10 = cpu->r[31] + 0x00000204u;
|
|
/* 0252BCEC */ rbrew_write_f32(cpu->mem, _t10, cpu->f[0]);
|
|
/* 0252BCF0 */ _t11 = cpu->r[12] + 0x00000008u;
|
|
/* 0252BCF0 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 0252BCF4 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0252BCF4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0252BCF8 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252BCF8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0252BCFC */ cpu->lr = cpu->r[0];
|
|
/* 0252BD00 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0252BD04 */ return;
|
|
}
|
|
|
|
// fn_0252BCB8 @ 0x252bcb8
|
|
void Gambit_fn_0252BCB8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0252BCB8: ; // 0x252bcb8
|
|
/* 0252BCB8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0252BCB8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252BCB8 */ cpu->r[1] = _t0;
|
|
/* 0252BCBC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252BCBC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0252BCC0 */ cpu->r[31] = cpu->r[3];
|
|
/* 0252BCC4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0252BCC4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0252BCC8 */ _t3 = cpu->r[31] + 0x000001FCu;
|
|
/* 0252BCC8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0252BCCC */ Gambit_fn_0224A688(cpu);
|
|
/* 0252BCD0 */ _t4 = cpu->r[31] + 0x00000074u;
|
|
/* 0252BCD0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 0252BCD4 */ _t5 = cpu->r[31] + 0x0000006Cu;
|
|
/* 0252BCD4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 0252BCD8 */ _t6 = cpu->r[31] + 0x00000208u;
|
|
/* 0252BCD8 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[13]);
|
|
/* 0252BCDC */ _t7 = cpu->r[31] + 0x00000200u;
|
|
/* 0252BCDC */ rbrew_write_f32(cpu->mem, _t7, cpu->f[0]);
|
|
/* 0252BCE0 */ _t8 = cpu->r[31] + 0x00000070u;
|
|
/* 0252BCE0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 0252BCE4 */ _t9 = cpu->r[31] + 0x0000020Cu;
|
|
/* 0252BCE4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0252BCE8 */ cpu->r[0] = 0x00000001u;
|
|
/* 0252BCEC */ _t10 = cpu->r[31] + 0x00000204u;
|
|
/* 0252BCEC */ rbrew_write_f32(cpu->mem, _t10, cpu->f[0]);
|
|
/* 0252BCF0 */ _t11 = cpu->r[12] + 0x00000008u;
|
|
/* 0252BCF0 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 0252BCF4 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0252BCF4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0252BCF8 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252BCF8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0252BCFC */ cpu->lr = cpu->r[0];
|
|
/* 0252BD00 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0252BD04 */ return;
|
|
}
|
|
|
|
// fn_0252BD08 @ 0x252bd08
|
|
void Gambit_fn_0252BD08(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_0252BD08: ; // 0x252bd08
|
|
/* 0252BD08 */ cpu->r[0] = cpu->lr;
|
|
/* 0252BD0C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0252BD0C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252BD0C */ cpu->r[1] = _t0;
|
|
/* 0252BD10 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0252BD10 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0252BD14 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252BD14 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0252BD18 */ cpu->r[30] = cpu->r[3];
|
|
/* 0252BD1C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0252BD1C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0252BD20 */ _t4 = cpu->r[30] + 0x000001F8u;
|
|
/* 0252BD20 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0252BD24 */ cpu->r[0] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 0252BD24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0252BD28 */ _t5 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0252BD28 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0252BD28 */ if (_t6) goto L_0252BD2C; else goto L_0252BD30;
|
|
L_0252BD2C: ; // 0x252bd2c
|
|
/* 0252BD2C */ cpu->r[0] = 0x00000000u;
|
|
L_0252BD30: ; // 0x252bd30
|
|
/* 0252BD30 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0252BD34 */ _t7 = cpu->r[30] + 0x000001F8u;
|
|
/* 0252BD34 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 0252BD38 */ _t8 = cpu->r[3] + 0x00006000u;
|
|
/* 0252BD38 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0252BD3C */ _t9 = cpu->r[3] + 0x00000004u;
|
|
/* 0252BD3C */ cpu->r[9] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0252BD40 */ _t10 = cpu->r[9] + 0x00000154u;
|
|
/* 0252BD40 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0252BD44 */ cpu->ctr = cpu->r[0];
|
|
/* 0252BD48 */ cpu->r[31] = 0x00000000u;
|
|
/* 0252BD4C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252BD50 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000001u);
|
|
/* 0252BD54 */ _t11 = cpu->r[30] + 0x000001FCu;
|
|
/* 0252BD54 */ cpu->r[3] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0252BD58 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252BD58 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0252BD58 */ if (_t13) goto L_0252BD5C; else goto L_0252BD60;
|
|
L_0252BD5C: ; // 0x252bd5c
|
|
/* 0252BD5C */ cpu->r[31] = 0x00000001u;
|
|
L_0252BD60: ; // 0x252bd60
|
|
/* 0252BD60 */ cpu->r[4] = cpu->r[31];
|
|
/* 0252BD64 */ Gambit_fn_0224AE84(cpu);
|
|
/* 0252BD68 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 0252BD68 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0252BD6C */ _t15 = cpu->r[1] + 0x00000008u;
|
|
/* 0252BD6C */ cpu->r[30] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0252BD70 */ cpu->lr = cpu->r[0];
|
|
/* 0252BD74 */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252BD74 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0252BD78 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0252BD7C */ return;
|
|
}
|
|
|
|
// fn_0252BD0C @ 0x252bd0c
|
|
void Gambit_fn_0252BD0C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_0252BD0C: ; // 0x252bd0c
|
|
/* 0252BD0C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0252BD0C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252BD0C */ cpu->r[1] = _t0;
|
|
/* 0252BD10 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0252BD10 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0252BD14 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252BD14 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0252BD18 */ cpu->r[30] = cpu->r[3];
|
|
/* 0252BD1C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0252BD1C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0252BD20 */ _t4 = cpu->r[30] + 0x000001F8u;
|
|
/* 0252BD20 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0252BD24 */ cpu->r[0] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 0252BD24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0252BD28 */ _t5 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0252BD28 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0252BD28 */ if (_t6) goto L_0252BD2C; else goto L_0252BD30;
|
|
L_0252BD2C: ; // 0x252bd2c
|
|
/* 0252BD2C */ cpu->r[0] = 0x00000000u;
|
|
L_0252BD30: ; // 0x252bd30
|
|
/* 0252BD30 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0252BD34 */ _t7 = cpu->r[30] + 0x000001F8u;
|
|
/* 0252BD34 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 0252BD38 */ _t8 = cpu->r[3] + 0x00006000u;
|
|
/* 0252BD38 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0252BD3C */ _t9 = cpu->r[3] + 0x00000004u;
|
|
/* 0252BD3C */ cpu->r[9] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0252BD40 */ _t10 = cpu->r[9] + 0x00000154u;
|
|
/* 0252BD40 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0252BD44 */ cpu->ctr = cpu->r[0];
|
|
/* 0252BD48 */ cpu->r[31] = 0x00000000u;
|
|
/* 0252BD4C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252BD50 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000001u);
|
|
/* 0252BD54 */ _t11 = cpu->r[30] + 0x000001FCu;
|
|
/* 0252BD54 */ cpu->r[3] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0252BD58 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252BD58 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0252BD58 */ if (_t13) goto L_0252BD5C; else goto L_0252BD60;
|
|
L_0252BD5C: ; // 0x252bd5c
|
|
/* 0252BD5C */ cpu->r[31] = 0x00000001u;
|
|
L_0252BD60: ; // 0x252bd60
|
|
/* 0252BD60 */ cpu->r[4] = cpu->r[31];
|
|
/* 0252BD64 */ Gambit_fn_0224AE84(cpu);
|
|
/* 0252BD68 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 0252BD68 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0252BD6C */ _t15 = cpu->r[1] + 0x00000008u;
|
|
/* 0252BD6C */ cpu->r[30] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0252BD70 */ cpu->lr = cpu->r[0];
|
|
/* 0252BD74 */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252BD74 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0252BD78 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0252BD7C */ return;
|
|
}
|
|
|
|
// fn_0252BD80 @ 0x252bd80
|
|
void Gambit_fn_0252BD80(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _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_0252BD80: ; // 0x252bd80
|
|
/* 0252BD80 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 0252BD80 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252BD80 */ cpu->r[1] = _t0;
|
|
/* 0252BD84 */ /* nop */
|
|
/* 0252BD88 */ cpu->r[0] = cpu->lr;
|
|
/* 0252BD8C */ _t1 = cpu->r[1] + 0x00000020u;
|
|
/* 0252BD8C */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0252BD90 */ /* nop */
|
|
/* 0252BD94 */ _t2 = cpu->r[1] + 0x00000028u;
|
|
/* 0252BD94 */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 0252BD98 */ _t3 = cpu->r[1] + 0x00000034u;
|
|
/* 0252BD98 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0252BD9C */ cpu->r[12] = 0x101C0000u;
|
|
/* 0252BDA0 */ _t4 = cpu->r[12] + 0x00006000u;
|
|
/* 0252BDA0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0252BDA4 */ cpu->r[30] = cpu->r[3];
|
|
/* 0252BDA8 */ _t5 = cpu->r[12] + 0x00000268u;
|
|
/* 0252BDA8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0252BDAC */ Gambit_fn_0261F73C(cpu);
|
|
/* 0252BDB0 */ cpu->r[28] = cpu->r[3];
|
|
/* 0252BDB4 */ cpu->r[3] = cpu->r[30];
|
|
/* 0252BDB8 */ cpu->r[29] = 0x00000000u;
|
|
/* 0252BDBC */ cpu->r[27] = cpu->r[28] + 0x00000244u;
|
|
/* 0252BDC0 */ Gambit_fn_024F65FC(cpu);
|
|
/* 0252BDC4 */ cpu->r[10] = 0x101D0000u;
|
|
/* 0252BDC8 */ _t6 = cpu->r[10] + 0xFFFFEA64u;
|
|
/* 0252BDC8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0252BDC8 */ cpu->r[10] = _t6;
|
|
/* 0252BDCC */ cpu->r[31] = cpu->r[3];
|
|
/* 0252BDD0 */ cpu->r[4] = 0x101D0000u;
|
|
/* 0252BDD4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0252BDD8 */ cpu->r[4] = cpu->r[4] + 0x00000A04u;
|
|
/* 0252BDDC */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252BDDC */ _t8 = _t7 & 0x00000001u;
|
|
/* 0252BDDC */ if (_t8) goto L_0252BDE0; else goto L_0252BDF4;
|
|
L_0252BDE0: ; // 0x252bde0
|
|
/* 0252BDE0 */ cpu->r[7] = 0x100C0000u;
|
|
/* 0252BDE4 */ cpu->r[0] = 0x00000001u;
|
|
/* 0252BDE8 */ cpu->r[7] = cpu->r[7] + 0x00003420u;
|
|
/* 0252BDEC */ _t9 = cpu->r[10] + 0x00000000u;
|
|
/* 0252BDEC */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 0252BDF0 */ _t10 = cpu->r[4] + 0x00000000u;
|
|
/* 0252BDF0 */ rbrew_write32(cpu->mem, _t10, cpu->r[7]);
|
|
L_0252BDF4: ; // 0x252bdf4
|
|
/* 0252BDF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0252BDF8 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252BDF8 */ _t12 = _t11 & 0x00000001u;
|
|
/* 0252BDF8 */ if (_t12) goto L_0252BE18; else goto L_0252BDFC;
|
|
L_0252BDFC: ; // 0x252bdfc
|
|
/* 0252BDFC */ _t13 = cpu->r[31] + 0x00000000u;
|
|
/* 0252BDFC */ cpu->r[8] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0252BE00 */ _t14 = cpu->r[8] + 0x0000006Cu;
|
|
/* 0252BE00 */ cpu->r[9] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0252BE04 */ cpu->ctr = cpu->r[9];
|
|
/* 0252BE08 */ cpu->r[3] = cpu->r[31];
|
|
/* 0252BE0C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252BE10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252BE14 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252BE14 */ _t16 = _t15 & 0x00000001u;
|
|
/* 0252BE14 */ if (_t16) goto L_0252BE18; else goto L_0252BE1C;
|
|
L_0252BE18: ; // 0x252be18
|
|
/* 0252BE18 */ cpu->r[31] = 0x00000000u;
|
|
L_0252BE1C: ; // 0x252be1c
|
|
/* 0252BE1C */ _t17 = cpu->r[31] + 0x0000023Cu;
|
|
/* 0252BE1C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 0252BE20 */ cpu->r[3] = cpu->r[30] + 0x00000078u;
|
|
/* 0252BE24 */ cpu->r[4] = cpu->r[27];
|
|
/* 0252BE28 */ Gambit_fn_02C69328(cpu);
|
|
/* 0252BE2C */ cpu->f[0] = cpu->f[31] * cpu->f[31];
|
|
/* 0252BE30 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[0]);
|
|
/* 0252BE34 */ /* nop */
|
|
/* 0252BE38 */ cpu->r[0] = rbrew_rlwinm(cpu->r[11], 0x00000001u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0252BE38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0252BE3C */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252BE3C */ _t19 = _t18 & 0x00000001u;
|
|
/* 0252BE3C */ if (_t19) goto L_0252BE50; else goto L_0252BE40;
|
|
L_0252BE40: ; // 0x252be40
|
|
/* 0252BE40 */ _t20 = cpu->r[28] + 0x00000518u;
|
|
/* 0252BE40 */ cpu->r[0] = rbrew_read8(cpu->mem, _t20);
|
|
/* 0252BE44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0252BE48 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252BE48 */ _t22 = _t21 & 0x00000001u;
|
|
/* 0252BE48 */ if (_t22) goto L_0252BE4C; else goto L_0252BE50;
|
|
L_0252BE4C: ; // 0x252be4c
|
|
/* 0252BE4C */ cpu->r[29] = 0x00000001u;
|
|
L_0252BE50: ; // 0x252be50
|
|
/* 0252BE50 */ cpu->r[3] = rbrew_rlwinm(cpu->r[29], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 0252BE54 */ /* nop */
|
|
/* 0252BE58 */ _t23 = cpu->r[1] + 0x00000028u;
|
|
/* 0252BE58 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 0252BE5C */ _t24 = cpu->r[1] + 0x00000020u;
|
|
/* 0252BE5C */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t24);
|
|
/* 0252BE60 */ _t25 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0252BE60 */ _t26 = _t25 & 0x00000001u;
|
|
/* 0252BE60 */ if (_t26) goto L_0252BE64; // else: addr-0 trap, fall-through
|
|
L_0252BE64: ; // 0x252be64
|
|
/* 0252BE64 */ _t27 = cpu->r[1] + 0x00000034u;
|
|
/* 0252BE64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0252BE68 */ cpu->lr = cpu->r[0];
|
|
/* 0252BE6C */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 0252BE70 */ return;
|
|
}
|
|
|
|
// fn_0252BE74 @ 0x252be74
|
|
void Gambit_fn_0252BE74(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _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_0252BE74: ; // 0x252be74
|
|
/* 0252BE74 */ cpu->r[0] = cpu->lr;
|
|
/* 0252BE78 */ _t0 = cpu->r[1] + 0xFFFFFFB8u;
|
|
/* 0252BE78 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252BE78 */ cpu->r[1] = _t0;
|
|
/* 0252BE7C */ _t1 = cpu->r[1] + 0x00000040u;
|
|
/* 0252BE7C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0252BE80 */ _t2 = cpu->r[1] + 0x00000044u;
|
|
/* 0252BE80 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0252BE84 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0252BE88 */ _t3 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0252BE88 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0252BE8C */ _t4 = cpu->r[12] + 0x00006000u;
|
|
/* 0252BE8C */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0252BE90 */ _t5 = cpu->r[12] + 0x00000268u;
|
|
/* 0252BE90 */ cpu->r[30] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0252BE94 */ cpu->r[31] = cpu->r[3];
|
|
/* 0252BE98 */ cpu->r[3] = cpu->r[30];
|
|
/* 0252BE9C */ Gambit_fn_0261F774(cpu);
|
|
/* 0252BEA0 */ cpu->r[4] = cpu->r[3];
|
|
/* 0252BEA4 */ cpu->r[3] = cpu->r[30];
|
|
/* 0252BEA8 */ Gambit_fn_0261F55C(cpu);
|
|
/* 0252BEAC */ cpu->r[7] = 0x100C0000u;
|
|
/* 0252BEB0 */ /* nop */
|
|
/* 0252BEB4 */ _t6 = cpu->r[7] + 0x000035ECu;
|
|
/* 0252BEB4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 0252BEB8 */ /* nop */
|
|
/* 0252BEBC */ /* nop */
|
|
/* 0252BEC0 */ _t7 = cpu->r[3] + 0x00000234u;
|
|
/* 0252BEC0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 0252BEC4 */ _t8 = cpu->r[1] + 0x00000010u;
|
|
/* 0252BEC4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0252BEC8 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0252BEC8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0252BECC */ cpu->f[12] = cpu->f[13] * cpu->f[0];
|
|
/* 0252BED0 */ _t10 = cpu->r[1] + 0x00000028u;
|
|
/* 0252BED0 */ rbrew_write32(cpu->mem, _t10, cpu->r[8]);
|
|
/* 0252BED4 */ _t11 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0252BED4 */ rbrew_write32(cpu->mem, _t11, cpu->r[9]);
|
|
/* 0252BED8 */ _t12 = cpu->r[1] + 0x00000018u;
|
|
/* 0252BED8 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[12]);
|
|
/* 0252BEDC */ _t13 = cpu->r[1] + 0x00000018u;
|
|
/* 0252BEDC */ cpu->r[10] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0252BEE0 */ /* nop */
|
|
/* 0252BEE4 */ _t14 = cpu->r[1] + 0x00000030u;
|
|
/* 0252BEE4 */ rbrew_write32(cpu->mem, _t14, cpu->r[10]);
|
|
/* 0252BEE8 */ /* nop */
|
|
/* 0252BEEC */ /* nop */
|
|
/* 0252BEF0 */ /* nop */
|
|
/* 0252BEF4 */ _t15 = cpu->r[1] + 0x00000030u;
|
|
/* 0252BEF4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 0252BEF8 */ _t16 = cpu->r[3] + 0x0000024Cu;
|
|
/* 0252BEF8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 0252BEFC */ _t17 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252BEFC */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0252BF00 */ cpu->f[13] = cpu->f[0] + cpu->f[11];
|
|
/* 0252BF04 */ _t18 = cpu->r[1] + 0x00000020u;
|
|
/* 0252BF04 */ cpu->r[12] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0252BF08 */ _t19 = cpu->r[1] + 0x00000034u;
|
|
/* 0252BF08 */ rbrew_write32(cpu->mem, _t19, cpu->r[0]);
|
|
/* 0252BF0C */ _t20 = cpu->r[1] + 0x00000024u;
|
|
/* 0252BF0C */ rbrew_write_f32(cpu->mem, _t20, cpu->f[13]);
|
|
/* 0252BF10 */ _t21 = cpu->r[1] + 0x00000024u;
|
|
/* 0252BF10 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0252BF14 */ _t22 = cpu->r[1] + 0x00000038u;
|
|
/* 0252BF14 */ rbrew_write32(cpu->mem, _t22, cpu->r[12]);
|
|
/* 0252BF18 */ cpu->r[3] = cpu->r[31];
|
|
/* 0252BF1C */ _t23 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0252BF1C */ rbrew_write32(cpu->mem, _t23, cpu->r[0]);
|
|
/* 0252BF20 */ Gambit_fn_0252BD80(cpu);
|
|
/* 0252BF24 */ cpu->r[0] = cpu->r[3] ^ 0x00000001u;
|
|
/* 0252BF28 */ _t24 = cpu->r[31] + 0x000001FCu;
|
|
/* 0252BF28 */ cpu->r[3] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0252BF2C */ cpu->r[11] = cpu->r[1] + 0x00000034u;
|
|
/* 0252BF30 */ _t25 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252BF30 */ rbrew_write8(cpu->mem, _t25, (uint8_t)cpu->r[0]);
|
|
/* 0252BF34 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0252BF38 */ _t26 = cpu->r[1] + 0x00000008u;
|
|
/* 0252BF38 */ rbrew_write32(cpu->mem, _t26, cpu->r[11]);
|
|
/* 0252BF3C */ Gambit_fn_0224A93C(cpu);
|
|
/* 0252BF40 */ _t27 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0252BF40 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0252BF44 */ _t28 = cpu->r[1] + 0x00000044u;
|
|
/* 0252BF44 */ cpu->r[31] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0252BF48 */ cpu->lr = cpu->r[0];
|
|
/* 0252BF4C */ _t29 = cpu->r[1] + 0x00000040u;
|
|
/* 0252BF4C */ cpu->r[30] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0252BF50 */ cpu->r[1] = cpu->r[1] + 0x00000048u;
|
|
/* 0252BF54 */ return;
|
|
}
|
|
|
|
// fn_0252BE78 @ 0x252be78
|
|
void Gambit_fn_0252BE78(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _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_0252BE78: ; // 0x252be78
|
|
/* 0252BE78 */ _t0 = cpu->r[1] + 0xFFFFFFB8u;
|
|
/* 0252BE78 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252BE78 */ cpu->r[1] = _t0;
|
|
/* 0252BE7C */ _t1 = cpu->r[1] + 0x00000040u;
|
|
/* 0252BE7C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0252BE80 */ _t2 = cpu->r[1] + 0x00000044u;
|
|
/* 0252BE80 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0252BE84 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0252BE88 */ _t3 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0252BE88 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0252BE8C */ _t4 = cpu->r[12] + 0x00006000u;
|
|
/* 0252BE8C */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0252BE90 */ _t5 = cpu->r[12] + 0x00000268u;
|
|
/* 0252BE90 */ cpu->r[30] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0252BE94 */ cpu->r[31] = cpu->r[3];
|
|
/* 0252BE98 */ cpu->r[3] = cpu->r[30];
|
|
/* 0252BE9C */ Gambit_fn_0261F774(cpu);
|
|
/* 0252BEA0 */ cpu->r[4] = cpu->r[3];
|
|
/* 0252BEA4 */ cpu->r[3] = cpu->r[30];
|
|
/* 0252BEA8 */ Gambit_fn_0261F55C(cpu);
|
|
/* 0252BEAC */ cpu->r[7] = 0x100C0000u;
|
|
/* 0252BEB0 */ /* nop */
|
|
/* 0252BEB4 */ _t6 = cpu->r[7] + 0x000035ECu;
|
|
/* 0252BEB4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 0252BEB8 */ /* nop */
|
|
/* 0252BEBC */ /* nop */
|
|
/* 0252BEC0 */ _t7 = cpu->r[3] + 0x00000234u;
|
|
/* 0252BEC0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 0252BEC4 */ _t8 = cpu->r[1] + 0x00000010u;
|
|
/* 0252BEC4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0252BEC8 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0252BEC8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0252BECC */ cpu->f[12] = cpu->f[13] * cpu->f[0];
|
|
/* 0252BED0 */ _t10 = cpu->r[1] + 0x00000028u;
|
|
/* 0252BED0 */ rbrew_write32(cpu->mem, _t10, cpu->r[8]);
|
|
/* 0252BED4 */ _t11 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0252BED4 */ rbrew_write32(cpu->mem, _t11, cpu->r[9]);
|
|
/* 0252BED8 */ _t12 = cpu->r[1] + 0x00000018u;
|
|
/* 0252BED8 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[12]);
|
|
/* 0252BEDC */ _t13 = cpu->r[1] + 0x00000018u;
|
|
/* 0252BEDC */ cpu->r[10] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0252BEE0 */ /* nop */
|
|
/* 0252BEE4 */ _t14 = cpu->r[1] + 0x00000030u;
|
|
/* 0252BEE4 */ rbrew_write32(cpu->mem, _t14, cpu->r[10]);
|
|
/* 0252BEE8 */ /* nop */
|
|
/* 0252BEEC */ /* nop */
|
|
/* 0252BEF0 */ /* nop */
|
|
/* 0252BEF4 */ _t15 = cpu->r[1] + 0x00000030u;
|
|
/* 0252BEF4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 0252BEF8 */ _t16 = cpu->r[3] + 0x0000024Cu;
|
|
/* 0252BEF8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 0252BEFC */ _t17 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252BEFC */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0252BF00 */ cpu->f[13] = cpu->f[0] + cpu->f[11];
|
|
/* 0252BF04 */ _t18 = cpu->r[1] + 0x00000020u;
|
|
/* 0252BF04 */ cpu->r[12] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0252BF08 */ _t19 = cpu->r[1] + 0x00000034u;
|
|
/* 0252BF08 */ rbrew_write32(cpu->mem, _t19, cpu->r[0]);
|
|
/* 0252BF0C */ _t20 = cpu->r[1] + 0x00000024u;
|
|
/* 0252BF0C */ rbrew_write_f32(cpu->mem, _t20, cpu->f[13]);
|
|
/* 0252BF10 */ _t21 = cpu->r[1] + 0x00000024u;
|
|
/* 0252BF10 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0252BF14 */ _t22 = cpu->r[1] + 0x00000038u;
|
|
/* 0252BF14 */ rbrew_write32(cpu->mem, _t22, cpu->r[12]);
|
|
/* 0252BF18 */ cpu->r[3] = cpu->r[31];
|
|
/* 0252BF1C */ _t23 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0252BF1C */ rbrew_write32(cpu->mem, _t23, cpu->r[0]);
|
|
/* 0252BF20 */ Gambit_fn_0252BD80(cpu);
|
|
/* 0252BF24 */ cpu->r[0] = cpu->r[3] ^ 0x00000001u;
|
|
/* 0252BF28 */ _t24 = cpu->r[31] + 0x000001FCu;
|
|
/* 0252BF28 */ cpu->r[3] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0252BF2C */ cpu->r[11] = cpu->r[1] + 0x00000034u;
|
|
/* 0252BF30 */ _t25 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252BF30 */ rbrew_write8(cpu->mem, _t25, (uint8_t)cpu->r[0]);
|
|
/* 0252BF34 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0252BF38 */ _t26 = cpu->r[1] + 0x00000008u;
|
|
/* 0252BF38 */ rbrew_write32(cpu->mem, _t26, cpu->r[11]);
|
|
/* 0252BF3C */ Gambit_fn_0224A93C(cpu);
|
|
/* 0252BF40 */ _t27 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0252BF40 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0252BF44 */ _t28 = cpu->r[1] + 0x00000044u;
|
|
/* 0252BF44 */ cpu->r[31] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0252BF48 */ cpu->lr = cpu->r[0];
|
|
/* 0252BF4C */ _t29 = cpu->r[1] + 0x00000040u;
|
|
/* 0252BF4C */ cpu->r[30] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0252BF50 */ cpu->r[1] = cpu->r[1] + 0x00000048u;
|
|
/* 0252BF54 */ return;
|
|
}
|
|
|
|
// fn_0252BF58 @ 0x252bf58
|
|
void Gambit_fn_0252BF58(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _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, _t61, _t62, _t63, _t64, _t65, _t66;
|
|
double _ft59, _ft60;
|
|
|
|
L_0252BF58: ; // 0x252bf58
|
|
/* 0252BF58 */ cpu->r[0] = cpu->lr;
|
|
/* 0252BF5C */ _t0 = cpu->r[1] + 0xFFFFFFB8u;
|
|
/* 0252BF5C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252BF5C */ cpu->r[1] = _t0;
|
|
/* 0252BF60 */ _t1 = cpu->r[1] + 0x00000040u;
|
|
/* 0252BF60 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0252BF64 */ _t2 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0252BF64 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 0252BF68 */ cpu->r[30] = cpu->r[3];
|
|
/* 0252BF6C */ _t3 = cpu->r[1] + 0x00000044u;
|
|
/* 0252BF6C */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 0252BF70 */ _t4 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0252BF70 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0252BF74 */ Gambit_fn_0252BD80(cpu);
|
|
/* 0252BF78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252BF7C */ cpu->r[29] = cpu->r[30] + 0x00000078u;
|
|
/* 0252BF80 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252BF80 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0252BF80 */ if (_t6) goto L_0252BFE4; else goto L_0252BF84;
|
|
L_0252BF84: ; // 0x252bf84
|
|
/* 0252BF84 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0252BF88 */ _t7 = cpu->r[12] + 0x00006000u;
|
|
/* 0252BF88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0252BF8C */ _t8 = cpu->r[12] + 0x00000268u;
|
|
/* 0252BF8C */ cpu->r[31] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0252BF90 */ cpu->r[3] = cpu->r[31];
|
|
/* 0252BF94 */ Gambit_fn_0261F774(cpu);
|
|
/* 0252BF98 */ cpu->r[4] = cpu->r[3];
|
|
/* 0252BF9C */ cpu->r[3] = cpu->r[31];
|
|
/* 0252BFA0 */ Gambit_fn_0261F55C(cpu);
|
|
/* 0252BFA4 */ _t9 = cpu->r[3] + 0x00000244u;
|
|
/* 0252BFA4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 0252BFA8 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 0252BFA8 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[13]);
|
|
/* 0252BFAC */ _t11 = cpu->r[3] + 0x00000248u;
|
|
/* 0252BFAC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 0252BFB0 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252BFB0 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[9]);
|
|
/* 0252BFB4 */ _t13 = cpu->r[3] + 0x0000024Cu;
|
|
/* 0252BFB4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 0252BFB8 */ cpu->r[3] = cpu->r[30];
|
|
/* 0252BFBC */ _t14 = cpu->r[1] + 0x00000010u;
|
|
/* 0252BFBC */ rbrew_write_f32(cpu->mem, _t14, cpu->f[13]);
|
|
/* 0252BFC0 */ Gambit_fn_024F65FC(cpu);
|
|
/* 0252BFC4 */ cpu->r[11] = 0x101D0000u;
|
|
/* 0252BFC8 */ _t15 = cpu->r[11] + 0xFFFFEA64u;
|
|
/* 0252BFC8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0252BFC8 */ cpu->r[11] = _t15;
|
|
/* 0252BFCC */ cpu->r[4] = 0x101D0000u;
|
|
/* 0252BFD0 */ cpu->r[31] = cpu->r[3];
|
|
/* 0252BFD4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0252BFD8 */ cpu->r[4] = cpu->r[4] + 0x00000A04u;
|
|
/* 0252BFDC */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252BFDC */ _t17 = _t16 & 0x00000001u;
|
|
/* 0252BFDC */ if (_t17) goto L_0252BFE0; else goto L_0252C06C;
|
|
L_0252BFE0: ; // 0x252bfe0
|
|
/* 0252BFE0 */ goto L_0252C058;
|
|
L_0252BFE4: ; // 0x252bfe4
|
|
/* 0252BFE4 */ /* nop */
|
|
/* 0252BFE8 */ /* nop */
|
|
/* 0252BFEC */ _t18 = cpu->r[30] + 0x00000080u;
|
|
/* 0252BFEC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 0252BFF0 */ /* nop */
|
|
/* 0252BFF4 */ _t19 = cpu->r[30] + 0x00000074u;
|
|
/* 0252BFF4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 0252BFF8 */ /* nop */
|
|
/* 0252BFFC */ _t20 = cpu->r[1] + 0x00000014u;
|
|
/* 0252BFFC */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0252C000 */ _t21 = cpu->r[1] + 0x00000018u;
|
|
/* 0252C000 */ cpu->r[8] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0252C004 */ cpu->f[13] = cpu->f[9] + cpu->f[11];
|
|
/* 0252C008 */ _t22 = cpu->r[1] + 0x00000030u;
|
|
/* 0252C008 */ rbrew_write32(cpu->mem, _t22, cpu->r[0]);
|
|
/* 0252C00C */ _t23 = cpu->r[1] + 0x00000030u;
|
|
/* 0252C00C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 0252C010 */ _t24 = cpu->r[1] + 0x00000034u;
|
|
/* 0252C010 */ rbrew_write32(cpu->mem, _t24, cpu->r[8]);
|
|
/* 0252C014 */ _t25 = cpu->r[1] + 0x00000034u;
|
|
/* 0252C014 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 0252C018 */ _t26 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252C018 */ rbrew_write_f32(cpu->mem, _t26, cpu->f[13]);
|
|
/* 0252C01C */ _t27 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252C01C */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0252C020 */ _t28 = cpu->r[1] + 0x00000008u;
|
|
/* 0252C020 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[10]);
|
|
/* 0252C024 */ _t29 = cpu->r[1] + 0x00000038u;
|
|
/* 0252C024 */ rbrew_write32(cpu->mem, _t29, cpu->r[0]);
|
|
/* 0252C028 */ _t30 = cpu->r[1] + 0x00000038u;
|
|
/* 0252C028 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 0252C02C */ _t31 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252C02C */ rbrew_write_f32(cpu->mem, _t31, cpu->f[12]);
|
|
/* 0252C030 */ cpu->r[3] = cpu->r[30];
|
|
/* 0252C034 */ _t32 = cpu->r[1] + 0x00000010u;
|
|
/* 0252C034 */ rbrew_write_f32(cpu->mem, _t32, cpu->f[13]);
|
|
/* 0252C038 */ Gambit_fn_024F65FC(cpu);
|
|
/* 0252C03C */ cpu->r[11] = 0x101D0000u;
|
|
/* 0252C040 */ _t33 = cpu->r[11] + 0xFFFFEA64u;
|
|
/* 0252C040 */ cpu->r[12] = rbrew_read32(cpu->mem, _t33);
|
|
/* 0252C040 */ cpu->r[11] = _t33;
|
|
/* 0252C044 */ cpu->r[31] = cpu->r[3];
|
|
/* 0252C048 */ cpu->r[4] = 0x101D0000u;
|
|
/* 0252C04C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0252C050 */ cpu->r[4] = cpu->r[4] + 0x00000A04u;
|
|
/* 0252C054 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252C054 */ _t35 = _t34 & 0x00000001u;
|
|
/* 0252C054 */ if (_t35) goto L_0252C058; else goto L_0252C06C;
|
|
L_0252C058: ; // 0x252c058
|
|
/* 0252C058 */ cpu->r[7] = 0x100C0000u;
|
|
/* 0252C05C */ cpu->r[0] = 0x00000001u;
|
|
/* 0252C060 */ cpu->r[7] = cpu->r[7] + 0x00003420u;
|
|
/* 0252C064 */ _t36 = cpu->r[11] + 0x00000000u;
|
|
/* 0252C064 */ rbrew_write32(cpu->mem, _t36, cpu->r[0]);
|
|
/* 0252C068 */ _t37 = cpu->r[4] + 0x00000000u;
|
|
/* 0252C068 */ rbrew_write32(cpu->mem, _t37, cpu->r[7]);
|
|
L_0252C06C: ; // 0x252c06c
|
|
/* 0252C06C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0252C070 */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252C070 */ _t39 = _t38 & 0x00000001u;
|
|
/* 0252C070 */ if (_t39) goto L_0252C090; else goto L_0252C074;
|
|
L_0252C074: ; // 0x252c074
|
|
/* 0252C074 */ _t40 = cpu->r[31] + 0x00000000u;
|
|
/* 0252C074 */ cpu->r[8] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0252C078 */ _t41 = cpu->r[8] + 0x0000006Cu;
|
|
/* 0252C078 */ cpu->r[9] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0252C07C */ cpu->ctr = cpu->r[9];
|
|
/* 0252C080 */ cpu->r[3] = cpu->r[31];
|
|
/* 0252C084 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252C088 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252C08C */ _t42 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252C08C */ _t43 = _t42 & 0x00000001u;
|
|
/* 0252C08C */ if (_t43) goto L_0252C090; else goto L_0252C094;
|
|
L_0252C090: ; // 0x252c090
|
|
/* 0252C090 */ cpu->r[31] = 0x00000000u;
|
|
L_0252C094: ; // 0x252c094
|
|
/* 0252C094 */ _t44 = cpu->r[31] + 0x0000029Cu;
|
|
/* 0252C094 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 0252C098 */ cpu->r[10] = cpu->r[30] + 0x00000200u;
|
|
/* 0252C09C */ cpu->r[9] = 0x100C0000u;
|
|
/* 0252C0A0 */ _t45 = cpu->r[1] + 0x00000020u;
|
|
/* 0252C0A0 */ rbrew_write32(cpu->mem, _t45, cpu->r[10]);
|
|
/* 0252C0A4 */ _t46 = cpu->r[9] + 0x000035F0u;
|
|
/* 0252C0A4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t46);
|
|
/* 0252C0A8 */ cpu->r[0] = cpu->r[1] + 0x00000008u;
|
|
/* 0252C0AC */ _t47 = cpu->r[1] + 0x00000024u;
|
|
/* 0252C0AC */ rbrew_write32(cpu->mem, _t47, cpu->r[29]);
|
|
/* 0252C0B0 */ cpu->f[13] = cpu->f[0] * cpu->f[11];
|
|
/* 0252C0B4 */ _t48 = cpu->r[1] + 0x00000028u;
|
|
/* 0252C0B4 */ rbrew_write32(cpu->mem, _t48, cpu->r[0]);
|
|
/* 0252C0B8 */ _t49 = cpu->r[30] + 0x0000020Cu;
|
|
/* 0252C0B8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t49);
|
|
/* 0252C0BC */ cpu->r[4] = cpu->r[1] + 0x00000020u;
|
|
/* 0252C0C0 */ _t50 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0252C0C0 */ rbrew_write_f32(cpu->mem, _t50, cpu->f[13]);
|
|
/* 0252C0C4 */ Gambit_fn_02247510(cpu);
|
|
/* 0252C0C8 */ _t51 = cpu->r[30] + 0x00000204u;
|
|
/* 0252C0C8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t51);
|
|
/* 0252C0CC */ cpu->f[13] = cpu->f[0] * cpu->f[0];
|
|
/* 0252C0D0 */ _t52 = cpu->r[30] + 0x00000200u;
|
|
/* 0252C0D0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 0252C0D4 */ cpu->f[0] = fma(cpu->f[11], cpu->f[11], cpu->f[13]);
|
|
/* 0252C0D8 */ _t53 = cpu->r[30] + 0x00000208u;
|
|
/* 0252C0D8 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t53);
|
|
/* 0252C0DC */ cpu->r[10] = 0x100C0000u;
|
|
/* 0252C0E0 */ cpu->f[9] = fma(cpu->f[9], cpu->f[9], cpu->f[0]);
|
|
/* 0252C0E4 */ _t54 = cpu->r[10] + 0x000035B4u;
|
|
/* 0252C0E4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 0252C0E8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[0]);
|
|
/* 0252C0EC */ _t55 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252C0EC */ _t56 = _t55 & 0x00000001u;
|
|
/* 0252C0EC */ if (_t56) goto L_0252C0F0; else goto L_0252C12C;
|
|
L_0252C0F0: ; // 0x252c0f0
|
|
/* 0252C0F0 */ cpu->r[7] = 0x100C0000u;
|
|
/* 0252C0F4 */ cpu->r[12] = 0x100C0000u;
|
|
/* 0252C0F8 */ _t57 = cpu->r[7] + 0x000035F4u;
|
|
/* 0252C0F8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t57);
|
|
/* 0252C0FC */ _t58 = cpu->r[12] + 0x000035F8u;
|
|
/* 0252C0FC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 0252C100 */ _ft59 = sqrt(cpu->f[9]);
|
|
/* 0252C100 */ _ft60 = (double)(int32_t)0x00000001u;
|
|
/* 0252C100 */ cpu->f[11] = _ft60 / _ft59;
|
|
/* 0252C104 */ cpu->f[0] = cpu->f[11] * cpu->f[11];
|
|
/* 0252C108 */ cpu->f[10] = cpu->f[11] * cpu->f[13];
|
|
/* 0252C10C */ cpu->f[0] = -fma(cpu->f[0], cpu->f[9], -(cpu->f[12]));
|
|
/* 0252C110 */ cpu->f[11] = cpu->f[0] * cpu->f[10];
|
|
/* 0252C114 */ _t61 = cpu->r[30] + 0x00000208u;
|
|
/* 0252C114 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t61);
|
|
/* 0252C118 */ /* nop */
|
|
/* 0252C11C */ cpu->f[12] = cpu->f[12] * cpu->f[11];
|
|
/* 0252C120 */ /* nop */
|
|
/* 0252C124 */ _t62 = cpu->r[30] + 0x00000208u;
|
|
/* 0252C124 */ rbrew_write_f32(cpu->mem, _t62, cpu->f[12]);
|
|
/* 0252C128 */ /* nop */
|
|
L_0252C12C: ; // 0x252c12c
|
|
/* 0252C12C */ _t63 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0252C12C */ cpu->r[29] = rbrew_read32(cpu->mem, _t63);
|
|
/* 0252C130 */ _t64 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0252C130 */ cpu->r[0] = rbrew_read32(cpu->mem, _t64);
|
|
/* 0252C134 */ _t65 = cpu->r[1] + 0x00000040u;
|
|
/* 0252C134 */ cpu->r[30] = rbrew_read32(cpu->mem, _t65);
|
|
/* 0252C138 */ cpu->lr = cpu->r[0];
|
|
/* 0252C13C */ _t66 = cpu->r[1] + 0x00000044u;
|
|
/* 0252C13C */ cpu->r[31] = rbrew_read32(cpu->mem, _t66);
|
|
/* 0252C140 */ cpu->r[1] = cpu->r[1] + 0x00000048u;
|
|
/* 0252C144 */ return;
|
|
}
|
|
|
|
// fn_0252BF5C @ 0x252bf5c
|
|
void Gambit_fn_0252BF5C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _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, _t61, _t62, _t63, _t64, _t65, _t66;
|
|
double _ft59, _ft60;
|
|
|
|
L_0252BF5C: ; // 0x252bf5c
|
|
/* 0252BF5C */ _t0 = cpu->r[1] + 0xFFFFFFB8u;
|
|
/* 0252BF5C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252BF5C */ cpu->r[1] = _t0;
|
|
/* 0252BF60 */ _t1 = cpu->r[1] + 0x00000040u;
|
|
/* 0252BF60 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0252BF64 */ _t2 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0252BF64 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 0252BF68 */ cpu->r[30] = cpu->r[3];
|
|
/* 0252BF6C */ _t3 = cpu->r[1] + 0x00000044u;
|
|
/* 0252BF6C */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 0252BF70 */ _t4 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0252BF70 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0252BF74 */ Gambit_fn_0252BD80(cpu);
|
|
/* 0252BF78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252BF7C */ cpu->r[29] = cpu->r[30] + 0x00000078u;
|
|
/* 0252BF80 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252BF80 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0252BF80 */ if (_t6) goto L_0252BFE4; else goto L_0252BF84;
|
|
L_0252BF84: ; // 0x252bf84
|
|
/* 0252BF84 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0252BF88 */ _t7 = cpu->r[12] + 0x00006000u;
|
|
/* 0252BF88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0252BF8C */ _t8 = cpu->r[12] + 0x00000268u;
|
|
/* 0252BF8C */ cpu->r[31] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0252BF90 */ cpu->r[3] = cpu->r[31];
|
|
/* 0252BF94 */ Gambit_fn_0261F774(cpu);
|
|
/* 0252BF98 */ cpu->r[4] = cpu->r[3];
|
|
/* 0252BF9C */ cpu->r[3] = cpu->r[31];
|
|
/* 0252BFA0 */ Gambit_fn_0261F55C(cpu);
|
|
/* 0252BFA4 */ _t9 = cpu->r[3] + 0x00000244u;
|
|
/* 0252BFA4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 0252BFA8 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 0252BFA8 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[13]);
|
|
/* 0252BFAC */ _t11 = cpu->r[3] + 0x00000248u;
|
|
/* 0252BFAC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 0252BFB0 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252BFB0 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[9]);
|
|
/* 0252BFB4 */ _t13 = cpu->r[3] + 0x0000024Cu;
|
|
/* 0252BFB4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 0252BFB8 */ cpu->r[3] = cpu->r[30];
|
|
/* 0252BFBC */ _t14 = cpu->r[1] + 0x00000010u;
|
|
/* 0252BFBC */ rbrew_write_f32(cpu->mem, _t14, cpu->f[13]);
|
|
/* 0252BFC0 */ Gambit_fn_024F65FC(cpu);
|
|
/* 0252BFC4 */ cpu->r[11] = 0x101D0000u;
|
|
/* 0252BFC8 */ _t15 = cpu->r[11] + 0xFFFFEA64u;
|
|
/* 0252BFC8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0252BFC8 */ cpu->r[11] = _t15;
|
|
/* 0252BFCC */ cpu->r[4] = 0x101D0000u;
|
|
/* 0252BFD0 */ cpu->r[31] = cpu->r[3];
|
|
/* 0252BFD4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0252BFD8 */ cpu->r[4] = cpu->r[4] + 0x00000A04u;
|
|
/* 0252BFDC */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252BFDC */ _t17 = _t16 & 0x00000001u;
|
|
/* 0252BFDC */ if (_t17) goto L_0252BFE0; else goto L_0252C06C;
|
|
L_0252BFE0: ; // 0x252bfe0
|
|
/* 0252BFE0 */ goto L_0252C058;
|
|
L_0252BFE4: ; // 0x252bfe4
|
|
/* 0252BFE4 */ /* nop */
|
|
/* 0252BFE8 */ /* nop */
|
|
/* 0252BFEC */ _t18 = cpu->r[30] + 0x00000080u;
|
|
/* 0252BFEC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 0252BFF0 */ /* nop */
|
|
/* 0252BFF4 */ _t19 = cpu->r[30] + 0x00000074u;
|
|
/* 0252BFF4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 0252BFF8 */ /* nop */
|
|
/* 0252BFFC */ _t20 = cpu->r[1] + 0x00000014u;
|
|
/* 0252BFFC */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0252C000 */ _t21 = cpu->r[1] + 0x00000018u;
|
|
/* 0252C000 */ cpu->r[8] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0252C004 */ cpu->f[13] = cpu->f[9] + cpu->f[11];
|
|
/* 0252C008 */ _t22 = cpu->r[1] + 0x00000030u;
|
|
/* 0252C008 */ rbrew_write32(cpu->mem, _t22, cpu->r[0]);
|
|
/* 0252C00C */ _t23 = cpu->r[1] + 0x00000030u;
|
|
/* 0252C00C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 0252C010 */ _t24 = cpu->r[1] + 0x00000034u;
|
|
/* 0252C010 */ rbrew_write32(cpu->mem, _t24, cpu->r[8]);
|
|
/* 0252C014 */ _t25 = cpu->r[1] + 0x00000034u;
|
|
/* 0252C014 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 0252C018 */ _t26 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252C018 */ rbrew_write_f32(cpu->mem, _t26, cpu->f[13]);
|
|
/* 0252C01C */ _t27 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252C01C */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0252C020 */ _t28 = cpu->r[1] + 0x00000008u;
|
|
/* 0252C020 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[10]);
|
|
/* 0252C024 */ _t29 = cpu->r[1] + 0x00000038u;
|
|
/* 0252C024 */ rbrew_write32(cpu->mem, _t29, cpu->r[0]);
|
|
/* 0252C028 */ _t30 = cpu->r[1] + 0x00000038u;
|
|
/* 0252C028 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 0252C02C */ _t31 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252C02C */ rbrew_write_f32(cpu->mem, _t31, cpu->f[12]);
|
|
/* 0252C030 */ cpu->r[3] = cpu->r[30];
|
|
/* 0252C034 */ _t32 = cpu->r[1] + 0x00000010u;
|
|
/* 0252C034 */ rbrew_write_f32(cpu->mem, _t32, cpu->f[13]);
|
|
/* 0252C038 */ Gambit_fn_024F65FC(cpu);
|
|
/* 0252C03C */ cpu->r[11] = 0x101D0000u;
|
|
/* 0252C040 */ _t33 = cpu->r[11] + 0xFFFFEA64u;
|
|
/* 0252C040 */ cpu->r[12] = rbrew_read32(cpu->mem, _t33);
|
|
/* 0252C040 */ cpu->r[11] = _t33;
|
|
/* 0252C044 */ cpu->r[31] = cpu->r[3];
|
|
/* 0252C048 */ cpu->r[4] = 0x101D0000u;
|
|
/* 0252C04C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0252C050 */ cpu->r[4] = cpu->r[4] + 0x00000A04u;
|
|
/* 0252C054 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252C054 */ _t35 = _t34 & 0x00000001u;
|
|
/* 0252C054 */ if (_t35) goto L_0252C058; else goto L_0252C06C;
|
|
L_0252C058: ; // 0x252c058
|
|
/* 0252C058 */ cpu->r[7] = 0x100C0000u;
|
|
/* 0252C05C */ cpu->r[0] = 0x00000001u;
|
|
/* 0252C060 */ cpu->r[7] = cpu->r[7] + 0x00003420u;
|
|
/* 0252C064 */ _t36 = cpu->r[11] + 0x00000000u;
|
|
/* 0252C064 */ rbrew_write32(cpu->mem, _t36, cpu->r[0]);
|
|
/* 0252C068 */ _t37 = cpu->r[4] + 0x00000000u;
|
|
/* 0252C068 */ rbrew_write32(cpu->mem, _t37, cpu->r[7]);
|
|
L_0252C06C: ; // 0x252c06c
|
|
/* 0252C06C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0252C070 */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252C070 */ _t39 = _t38 & 0x00000001u;
|
|
/* 0252C070 */ if (_t39) goto L_0252C090; else goto L_0252C074;
|
|
L_0252C074: ; // 0x252c074
|
|
/* 0252C074 */ _t40 = cpu->r[31] + 0x00000000u;
|
|
/* 0252C074 */ cpu->r[8] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0252C078 */ _t41 = cpu->r[8] + 0x0000006Cu;
|
|
/* 0252C078 */ cpu->r[9] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0252C07C */ cpu->ctr = cpu->r[9];
|
|
/* 0252C080 */ cpu->r[3] = cpu->r[31];
|
|
/* 0252C084 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252C088 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252C08C */ _t42 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252C08C */ _t43 = _t42 & 0x00000001u;
|
|
/* 0252C08C */ if (_t43) goto L_0252C090; else goto L_0252C094;
|
|
L_0252C090: ; // 0x252c090
|
|
/* 0252C090 */ cpu->r[31] = 0x00000000u;
|
|
L_0252C094: ; // 0x252c094
|
|
/* 0252C094 */ _t44 = cpu->r[31] + 0x0000029Cu;
|
|
/* 0252C094 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 0252C098 */ cpu->r[10] = cpu->r[30] + 0x00000200u;
|
|
/* 0252C09C */ cpu->r[9] = 0x100C0000u;
|
|
/* 0252C0A0 */ _t45 = cpu->r[1] + 0x00000020u;
|
|
/* 0252C0A0 */ rbrew_write32(cpu->mem, _t45, cpu->r[10]);
|
|
/* 0252C0A4 */ _t46 = cpu->r[9] + 0x000035F0u;
|
|
/* 0252C0A4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t46);
|
|
/* 0252C0A8 */ cpu->r[0] = cpu->r[1] + 0x00000008u;
|
|
/* 0252C0AC */ _t47 = cpu->r[1] + 0x00000024u;
|
|
/* 0252C0AC */ rbrew_write32(cpu->mem, _t47, cpu->r[29]);
|
|
/* 0252C0B0 */ cpu->f[13] = cpu->f[0] * cpu->f[11];
|
|
/* 0252C0B4 */ _t48 = cpu->r[1] + 0x00000028u;
|
|
/* 0252C0B4 */ rbrew_write32(cpu->mem, _t48, cpu->r[0]);
|
|
/* 0252C0B8 */ _t49 = cpu->r[30] + 0x0000020Cu;
|
|
/* 0252C0B8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t49);
|
|
/* 0252C0BC */ cpu->r[4] = cpu->r[1] + 0x00000020u;
|
|
/* 0252C0C0 */ _t50 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0252C0C0 */ rbrew_write_f32(cpu->mem, _t50, cpu->f[13]);
|
|
/* 0252C0C4 */ Gambit_fn_02247510(cpu);
|
|
/* 0252C0C8 */ _t51 = cpu->r[30] + 0x00000204u;
|
|
/* 0252C0C8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t51);
|
|
/* 0252C0CC */ cpu->f[13] = cpu->f[0] * cpu->f[0];
|
|
/* 0252C0D0 */ _t52 = cpu->r[30] + 0x00000200u;
|
|
/* 0252C0D0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 0252C0D4 */ cpu->f[0] = fma(cpu->f[11], cpu->f[11], cpu->f[13]);
|
|
/* 0252C0D8 */ _t53 = cpu->r[30] + 0x00000208u;
|
|
/* 0252C0D8 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t53);
|
|
/* 0252C0DC */ cpu->r[10] = 0x100C0000u;
|
|
/* 0252C0E0 */ cpu->f[9] = fma(cpu->f[9], cpu->f[9], cpu->f[0]);
|
|
/* 0252C0E4 */ _t54 = cpu->r[10] + 0x000035B4u;
|
|
/* 0252C0E4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 0252C0E8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[0]);
|
|
/* 0252C0EC */ _t55 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252C0EC */ _t56 = _t55 & 0x00000001u;
|
|
/* 0252C0EC */ if (_t56) goto L_0252C0F0; else goto L_0252C12C;
|
|
L_0252C0F0: ; // 0x252c0f0
|
|
/* 0252C0F0 */ cpu->r[7] = 0x100C0000u;
|
|
/* 0252C0F4 */ cpu->r[12] = 0x100C0000u;
|
|
/* 0252C0F8 */ _t57 = cpu->r[7] + 0x000035F4u;
|
|
/* 0252C0F8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t57);
|
|
/* 0252C0FC */ _t58 = cpu->r[12] + 0x000035F8u;
|
|
/* 0252C0FC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 0252C100 */ _ft59 = sqrt(cpu->f[9]);
|
|
/* 0252C100 */ _ft60 = (double)(int32_t)0x00000001u;
|
|
/* 0252C100 */ cpu->f[11] = _ft60 / _ft59;
|
|
/* 0252C104 */ cpu->f[0] = cpu->f[11] * cpu->f[11];
|
|
/* 0252C108 */ cpu->f[10] = cpu->f[11] * cpu->f[13];
|
|
/* 0252C10C */ cpu->f[0] = -fma(cpu->f[0], cpu->f[9], -(cpu->f[12]));
|
|
/* 0252C110 */ cpu->f[11] = cpu->f[0] * cpu->f[10];
|
|
/* 0252C114 */ _t61 = cpu->r[30] + 0x00000208u;
|
|
/* 0252C114 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t61);
|
|
/* 0252C118 */ /* nop */
|
|
/* 0252C11C */ cpu->f[12] = cpu->f[12] * cpu->f[11];
|
|
/* 0252C120 */ /* nop */
|
|
/* 0252C124 */ _t62 = cpu->r[30] + 0x00000208u;
|
|
/* 0252C124 */ rbrew_write_f32(cpu->mem, _t62, cpu->f[12]);
|
|
/* 0252C128 */ /* nop */
|
|
L_0252C12C: ; // 0x252c12c
|
|
/* 0252C12C */ _t63 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0252C12C */ cpu->r[29] = rbrew_read32(cpu->mem, _t63);
|
|
/* 0252C130 */ _t64 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0252C130 */ cpu->r[0] = rbrew_read32(cpu->mem, _t64);
|
|
/* 0252C134 */ _t65 = cpu->r[1] + 0x00000040u;
|
|
/* 0252C134 */ cpu->r[30] = rbrew_read32(cpu->mem, _t65);
|
|
/* 0252C138 */ cpu->lr = cpu->r[0];
|
|
/* 0252C13C */ _t66 = cpu->r[1] + 0x00000044u;
|
|
/* 0252C13C */ cpu->r[31] = rbrew_read32(cpu->mem, _t66);
|
|
/* 0252C140 */ cpu->r[1] = cpu->r[1] + 0x00000048u;
|
|
/* 0252C144 */ return;
|
|
}
|
|
|
|
// fn_0252C148 @ 0x252c148
|
|
void Gambit_fn_0252C148(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_0252C148: ; // 0x252c148
|
|
/* 0252C148 */ cpu->r[0] = cpu->lr;
|
|
/* 0252C14C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0252C14C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252C14C */ cpu->r[1] = _t0;
|
|
/* 0252C150 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252C150 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0252C154 */ cpu->r[31] = cpu->r[3];
|
|
/* 0252C158 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0252C158 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0252C15C */ Gambit_fn_0252BD08(cpu);
|
|
/* 0252C160 */ cpu->r[3] = cpu->r[31];
|
|
/* 0252C164 */ Gambit_fn_0252BE74(cpu);
|
|
/* 0252C168 */ cpu->r[3] = cpu->r[31];
|
|
/* 0252C16C */ Gambit_fn_0252BF58(cpu);
|
|
/* 0252C170 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0252C170 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0252C174 */ cpu->lr = cpu->r[0];
|
|
/* 0252C178 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252C178 */ cpu->r[31] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0252C17C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0252C180 */ return;
|
|
}
|
|
|
|
// fn_0252C14C @ 0x252c14c
|
|
void Gambit_fn_0252C14C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_0252C14C: ; // 0x252c14c
|
|
/* 0252C14C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0252C14C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252C14C */ cpu->r[1] = _t0;
|
|
/* 0252C150 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252C150 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0252C154 */ cpu->r[31] = cpu->r[3];
|
|
/* 0252C158 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0252C158 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0252C15C */ Gambit_fn_0252BD08(cpu);
|
|
/* 0252C160 */ cpu->r[3] = cpu->r[31];
|
|
/* 0252C164 */ Gambit_fn_0252BE74(cpu);
|
|
/* 0252C168 */ cpu->r[3] = cpu->r[31];
|
|
/* 0252C16C */ Gambit_fn_0252BF58(cpu);
|
|
/* 0252C170 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0252C170 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0252C174 */ cpu->lr = cpu->r[0];
|
|
/* 0252C178 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252C178 */ cpu->r[31] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0252C17C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0252C180 */ return;
|
|
}
|
|
|
|
// fn_0252C184 @ 0x252c184
|
|
void Gambit_fn_0252C184(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60;
|
|
|
|
L_0252C184: ; // 0x252c184
|
|
/* 0252C184 */ cpu->r[0] = cpu->lr;
|
|
/* 0252C188 */ _t0 = cpu->r[1] + 0xFFFFFF60u;
|
|
/* 0252C188 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252C188 */ cpu->r[1] = _t0;
|
|
/* 0252C18C */ _t1 = cpu->r[1] + 0x0000009Cu;
|
|
/* 0252C18C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0252C190 */ cpu->r[31] = cpu->r[3];
|
|
/* 0252C194 */ _t2 = cpu->r[1] + 0x000000A4u;
|
|
/* 0252C194 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0252C198 */ _t3 = cpu->r[31] + 0x000001F0u;
|
|
/* 0252C198 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0252C19C */ Gambit_fn_0239859C(cpu);
|
|
/* 0252C1A0 */ cpu->r[0] = 0x00000003u;
|
|
/* 0252C1A4 */ cpu->r[11] = cpu->r[31] + 0x00000050u;
|
|
/* 0252C1A8 */ cpu->ctr = cpu->r[0];
|
|
/* 0252C1AC */ cpu->r[12] = cpu->r[1] + 0x00000034u;
|
|
L_0252C1B0: ; // 0x252c1b0
|
|
/* 0252C1B0 */ _t4 = cpu->r[11] + 0x00000004u;
|
|
/* 0252C1B0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0252C1B4 */ _t5 = cpu->r[12] + 0x00000004u;
|
|
/* 0252C1B4 */ rbrew_write32(cpu->mem, _t5, cpu->r[6]);
|
|
/* 0252C1B8 */ _t6 = cpu->r[11] + 0x00000008u;
|
|
/* 0252C1B8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0252C1BC */ _t7 = cpu->r[12] + 0x00000008u;
|
|
/* 0252C1BC */ rbrew_write32(cpu->mem, _t7, cpu->r[7]);
|
|
/* 0252C1C0 */ _t8 = cpu->r[11] + 0x0000000Cu;
|
|
/* 0252C1C0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0252C1C4 */ _t9 = cpu->r[12] + 0x0000000Cu;
|
|
/* 0252C1C4 */ rbrew_write32(cpu->mem, _t9, cpu->r[8]);
|
|
/* 0252C1C8 */ _t10 = cpu->r[11] + 0x00000010u;
|
|
/* 0252C1C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0252C1C8 */ cpu->r[11] = _t10;
|
|
/* 0252C1CC */ _t11 = cpu->r[12] + 0x00000010u;
|
|
/* 0252C1CC */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 0252C1CC */ cpu->r[12] = _t11;
|
|
/* 0252C1D0 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0252C1D0 */ _t12 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0252C1D0 */ _t13 = _t12 >> (0x00000002u & 31u);
|
|
/* 0252C1D0 */ _t14 = _t13 & 0x00000001u;
|
|
/* 0252C1D0 */ if (_t14) goto L_0252C1B0; else goto L_0252C1D4;
|
|
L_0252C1D4: ; // 0x252c1d4
|
|
/* 0252C1D4 */ cpu->r[4] = 0x100C0000u;
|
|
/* 0252C1D8 */ _t15 = cpu->r[31] + 0x00000200u;
|
|
/* 0252C1D8 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 0252C1DC */ cpu->r[4] = cpu->r[4] + 0x000035FCu;
|
|
/* 0252C1E0 */ _t16 = cpu->r[31] + 0x00000204u;
|
|
/* 0252C1E0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 0252C1E4 */ _t17 = cpu->r[1] + 0x00000050u;
|
|
/* 0252C1E4 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[10]);
|
|
/* 0252C1E8 */ _t18 = cpu->r[31] + 0x00000208u;
|
|
/* 0252C1E8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 0252C1EC */ cpu->r[3] = cpu->r[1] + 0x00000038u;
|
|
/* 0252C1F0 */ _t19 = cpu->r[1] + 0x00000054u;
|
|
/* 0252C1F0 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[12]);
|
|
/* 0252C1F4 */ cpu->r[5] = 0x00000125u;
|
|
/* 0252C1F8 */ _t20 = cpu->r[1] + 0x00000058u;
|
|
/* 0252C1F8 */ rbrew_write_f32(cpu->mem, _t20, cpu->f[0]);
|
|
/* 0252C1FC */ Gambit_fn_0204D64C(cpu);
|
|
/* 0252C200 */ _t21 = cpu->r[1] + 0x00000058u;
|
|
/* 0252C200 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 0252C204 */ _t22 = cpu->r[1] + 0x00000038u;
|
|
/* 0252C204 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 0252C208 */ _t23 = cpu->r[1] + 0x00000050u;
|
|
/* 0252C208 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 0252C20C */ _t24 = cpu->r[1] + 0x00000008u;
|
|
/* 0252C20C */ rbrew_write_f32(cpu->mem, _t24, cpu->f[13]);
|
|
/* 0252C210 */ _t25 = cpu->r[1] + 0x00000010u;
|
|
/* 0252C210 */ rbrew_write_f32(cpu->mem, _t25, cpu->f[9]);
|
|
/* 0252C214 */ _t26 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0252C214 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 0252C218 */ _t27 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0252C218 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 0252C21C */ _t28 = cpu->r[1] + 0x00000018u;
|
|
/* 0252C21C */ rbrew_write_f32(cpu->mem, _t28, cpu->f[13]);
|
|
/* 0252C220 */ _t29 = cpu->r[1] + 0x00000060u;
|
|
/* 0252C220 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 0252C224 */ _t30 = cpu->r[1] + 0x00000014u;
|
|
/* 0252C224 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[11]);
|
|
/* 0252C228 */ _t31 = cpu->r[1] + 0x00000044u;
|
|
/* 0252C228 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 0252C22C */ _t32 = cpu->r[1] + 0x00000054u;
|
|
/* 0252C22C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 0252C230 */ _t33 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252C230 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[0]);
|
|
/* 0252C234 */ _t34 = cpu->r[1] + 0x00000020u;
|
|
/* 0252C234 */ rbrew_write_f32(cpu->mem, _t34, cpu->f[11]);
|
|
/* 0252C238 */ _t35 = cpu->r[1] + 0x00000064u;
|
|
/* 0252C238 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 0252C23C */ _t36 = cpu->r[1] + 0x00000040u;
|
|
/* 0252C23C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 0252C240 */ _t37 = cpu->r[1] + 0x00000034u;
|
|
/* 0252C240 */ rbrew_write_f32(cpu->mem, _t37, cpu->f[12]);
|
|
/* 0252C244 */ _t38 = cpu->r[1] + 0x00000030u;
|
|
/* 0252C244 */ rbrew_write_f32(cpu->mem, _t38, cpu->f[10]);
|
|
/* 0252C248 */ _t39 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0252C248 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t39);
|
|
/* 0252C24C */ _t40 = cpu->r[1] + 0x00000028u;
|
|
/* 0252C24C */ rbrew_write_f32(cpu->mem, _t40, cpu->f[8]);
|
|
/* 0252C250 */ _t41 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0252C250 */ rbrew_write_f32(cpu->mem, _t41, cpu->f[0]);
|
|
/* 0252C254 */ cpu->r[9] = 0x00000003u;
|
|
/* 0252C258 */ _t42 = cpu->r[1] + 0x00000048u;
|
|
/* 0252C258 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 0252C25C */ cpu->r[8] = cpu->r[1] + 0x00000064u;
|
|
/* 0252C260 */ cpu->r[7] = cpu->r[1] + 0x00000004u;
|
|
/* 0252C264 */ _t43 = cpu->r[1] + 0x00000024u;
|
|
/* 0252C264 */ rbrew_write_f32(cpu->mem, _t43, cpu->f[13]);
|
|
/* 0252C268 */ cpu->ctr = cpu->r[9];
|
|
/* 0252C26C */ _t44 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252C26C */ rbrew_write_f32(cpu->mem, _t44, cpu->f[9]);
|
|
L_0252C270: ; // 0x252c270
|
|
/* 0252C270 */ _t45 = cpu->r[7] + 0x00000004u;
|
|
/* 0252C270 */ cpu->r[10] = rbrew_read32(cpu->mem, _t45);
|
|
/* 0252C274 */ _t46 = cpu->r[8] + 0x00000004u;
|
|
/* 0252C274 */ rbrew_write32(cpu->mem, _t46, cpu->r[10]);
|
|
/* 0252C278 */ _t47 = cpu->r[7] + 0x00000008u;
|
|
/* 0252C278 */ cpu->r[11] = rbrew_read32(cpu->mem, _t47);
|
|
/* 0252C27C */ _t48 = cpu->r[8] + 0x00000008u;
|
|
/* 0252C27C */ rbrew_write32(cpu->mem, _t48, cpu->r[11]);
|
|
/* 0252C280 */ _t49 = cpu->r[7] + 0x0000000Cu;
|
|
/* 0252C280 */ cpu->r[12] = rbrew_read32(cpu->mem, _t49);
|
|
/* 0252C284 */ _t50 = cpu->r[8] + 0x0000000Cu;
|
|
/* 0252C284 */ rbrew_write32(cpu->mem, _t50, cpu->r[12]);
|
|
/* 0252C288 */ _t51 = cpu->r[7] + 0x00000010u;
|
|
/* 0252C288 */ cpu->r[0] = rbrew_read32(cpu->mem, _t51);
|
|
/* 0252C288 */ cpu->r[7] = _t51;
|
|
/* 0252C28C */ _t52 = cpu->r[8] + 0x00000010u;
|
|
/* 0252C28C */ rbrew_write32(cpu->mem, _t52, cpu->r[0]);
|
|
/* 0252C28C */ cpu->r[8] = _t52;
|
|
/* 0252C290 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0252C290 */ _t53 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0252C290 */ _t54 = _t53 >> (0x00000002u & 31u);
|
|
/* 0252C290 */ _t55 = _t54 & 0x00000001u;
|
|
/* 0252C290 */ if (_t55) goto L_0252C270; else goto L_0252C294;
|
|
L_0252C294: ; // 0x252c294
|
|
/* 0252C294 */ _t56 = cpu->r[31] + 0x000001E8u;
|
|
/* 0252C294 */ cpu->r[31] = rbrew_read32(cpu->mem, _t56);
|
|
/* 0252C298 */ _t57 = cpu->r[31] + 0x0000007Cu;
|
|
/* 0252C298 */ cpu->r[0] = rbrew_read8(cpu->mem, _t57);
|
|
/* 0252C29C */ cpu->r[3] = cpu->r[1] + 0x00000068u;
|
|
/* 0252C2A0 */ cpu->r[0] = cpu->r[0] | 0x00000001u;
|
|
/* 0252C2A4 */ cpu->r[4] = cpu->r[31] + 0x00000034u;
|
|
/* 0252C2A8 */ _t58 = cpu->r[31] + 0x0000007Cu;
|
|
/* 0252C2A8 */ rbrew_write8(cpu->mem, _t58, (uint8_t)cpu->r[0]);
|
|
/* 0252C2AC */ Gambit_fn_02C69510(cpu);
|
|
/* 0252C2B0 */ cpu->r[4] = 0x00000003u;
|
|
/* 0252C2B4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0252C2B8 */ Gambit_fn_02980304(cpu);
|
|
/* 0252C2BC */ cpu->r[3] = cpu->r[31];
|
|
/* 0252C2C0 */ Gambit_fn_02980318(cpu);
|
|
/* 0252C2C4 */ _t59 = cpu->r[1] + 0x000000A4u;
|
|
/* 0252C2C4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t59);
|
|
/* 0252C2C8 */ _t60 = cpu->r[1] + 0x0000009Cu;
|
|
/* 0252C2C8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t60);
|
|
/* 0252C2CC */ cpu->lr = cpu->r[0];
|
|
/* 0252C2D0 */ cpu->r[1] = cpu->r[1] + 0x000000A0u;
|
|
/* 0252C2D4 */ return;
|
|
}
|
|
|
|
// fn_0252C188 @ 0x252c188
|
|
void Gambit_fn_0252C188(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60;
|
|
|
|
L_0252C188: ; // 0x252c188
|
|
/* 0252C188 */ _t0 = cpu->r[1] + 0xFFFFFF60u;
|
|
/* 0252C188 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252C188 */ cpu->r[1] = _t0;
|
|
/* 0252C18C */ _t1 = cpu->r[1] + 0x0000009Cu;
|
|
/* 0252C18C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0252C190 */ cpu->r[31] = cpu->r[3];
|
|
/* 0252C194 */ _t2 = cpu->r[1] + 0x000000A4u;
|
|
/* 0252C194 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0252C198 */ _t3 = cpu->r[31] + 0x000001F0u;
|
|
/* 0252C198 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0252C19C */ Gambit_fn_0239859C(cpu);
|
|
/* 0252C1A0 */ cpu->r[0] = 0x00000003u;
|
|
/* 0252C1A4 */ cpu->r[11] = cpu->r[31] + 0x00000050u;
|
|
/* 0252C1A8 */ cpu->ctr = cpu->r[0];
|
|
/* 0252C1AC */ cpu->r[12] = cpu->r[1] + 0x00000034u;
|
|
L_0252C1B0: ; // 0x252c1b0
|
|
/* 0252C1B0 */ _t4 = cpu->r[11] + 0x00000004u;
|
|
/* 0252C1B0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0252C1B4 */ _t5 = cpu->r[12] + 0x00000004u;
|
|
/* 0252C1B4 */ rbrew_write32(cpu->mem, _t5, cpu->r[6]);
|
|
/* 0252C1B8 */ _t6 = cpu->r[11] + 0x00000008u;
|
|
/* 0252C1B8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0252C1BC */ _t7 = cpu->r[12] + 0x00000008u;
|
|
/* 0252C1BC */ rbrew_write32(cpu->mem, _t7, cpu->r[7]);
|
|
/* 0252C1C0 */ _t8 = cpu->r[11] + 0x0000000Cu;
|
|
/* 0252C1C0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0252C1C4 */ _t9 = cpu->r[12] + 0x0000000Cu;
|
|
/* 0252C1C4 */ rbrew_write32(cpu->mem, _t9, cpu->r[8]);
|
|
/* 0252C1C8 */ _t10 = cpu->r[11] + 0x00000010u;
|
|
/* 0252C1C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0252C1C8 */ cpu->r[11] = _t10;
|
|
/* 0252C1CC */ _t11 = cpu->r[12] + 0x00000010u;
|
|
/* 0252C1CC */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 0252C1CC */ cpu->r[12] = _t11;
|
|
/* 0252C1D0 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0252C1D0 */ _t12 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0252C1D0 */ _t13 = _t12 >> (0x00000002u & 31u);
|
|
/* 0252C1D0 */ _t14 = _t13 & 0x00000001u;
|
|
/* 0252C1D0 */ if (_t14) goto L_0252C1B0; else goto L_0252C1D4;
|
|
L_0252C1D4: ; // 0x252c1d4
|
|
/* 0252C1D4 */ cpu->r[4] = 0x100C0000u;
|
|
/* 0252C1D8 */ _t15 = cpu->r[31] + 0x00000200u;
|
|
/* 0252C1D8 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 0252C1DC */ cpu->r[4] = cpu->r[4] + 0x000035FCu;
|
|
/* 0252C1E0 */ _t16 = cpu->r[31] + 0x00000204u;
|
|
/* 0252C1E0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 0252C1E4 */ _t17 = cpu->r[1] + 0x00000050u;
|
|
/* 0252C1E4 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[10]);
|
|
/* 0252C1E8 */ _t18 = cpu->r[31] + 0x00000208u;
|
|
/* 0252C1E8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 0252C1EC */ cpu->r[3] = cpu->r[1] + 0x00000038u;
|
|
/* 0252C1F0 */ _t19 = cpu->r[1] + 0x00000054u;
|
|
/* 0252C1F0 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[12]);
|
|
/* 0252C1F4 */ cpu->r[5] = 0x00000125u;
|
|
/* 0252C1F8 */ _t20 = cpu->r[1] + 0x00000058u;
|
|
/* 0252C1F8 */ rbrew_write_f32(cpu->mem, _t20, cpu->f[0]);
|
|
/* 0252C1FC */ Gambit_fn_0204D64C(cpu);
|
|
/* 0252C200 */ _t21 = cpu->r[1] + 0x00000058u;
|
|
/* 0252C200 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 0252C204 */ _t22 = cpu->r[1] + 0x00000038u;
|
|
/* 0252C204 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 0252C208 */ _t23 = cpu->r[1] + 0x00000050u;
|
|
/* 0252C208 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 0252C20C */ _t24 = cpu->r[1] + 0x00000008u;
|
|
/* 0252C20C */ rbrew_write_f32(cpu->mem, _t24, cpu->f[13]);
|
|
/* 0252C210 */ _t25 = cpu->r[1] + 0x00000010u;
|
|
/* 0252C210 */ rbrew_write_f32(cpu->mem, _t25, cpu->f[9]);
|
|
/* 0252C214 */ _t26 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0252C214 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 0252C218 */ _t27 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0252C218 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 0252C21C */ _t28 = cpu->r[1] + 0x00000018u;
|
|
/* 0252C21C */ rbrew_write_f32(cpu->mem, _t28, cpu->f[13]);
|
|
/* 0252C220 */ _t29 = cpu->r[1] + 0x00000060u;
|
|
/* 0252C220 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 0252C224 */ _t30 = cpu->r[1] + 0x00000014u;
|
|
/* 0252C224 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[11]);
|
|
/* 0252C228 */ _t31 = cpu->r[1] + 0x00000044u;
|
|
/* 0252C228 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 0252C22C */ _t32 = cpu->r[1] + 0x00000054u;
|
|
/* 0252C22C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 0252C230 */ _t33 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252C230 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[0]);
|
|
/* 0252C234 */ _t34 = cpu->r[1] + 0x00000020u;
|
|
/* 0252C234 */ rbrew_write_f32(cpu->mem, _t34, cpu->f[11]);
|
|
/* 0252C238 */ _t35 = cpu->r[1] + 0x00000064u;
|
|
/* 0252C238 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 0252C23C */ _t36 = cpu->r[1] + 0x00000040u;
|
|
/* 0252C23C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 0252C240 */ _t37 = cpu->r[1] + 0x00000034u;
|
|
/* 0252C240 */ rbrew_write_f32(cpu->mem, _t37, cpu->f[12]);
|
|
/* 0252C244 */ _t38 = cpu->r[1] + 0x00000030u;
|
|
/* 0252C244 */ rbrew_write_f32(cpu->mem, _t38, cpu->f[10]);
|
|
/* 0252C248 */ _t39 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0252C248 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t39);
|
|
/* 0252C24C */ _t40 = cpu->r[1] + 0x00000028u;
|
|
/* 0252C24C */ rbrew_write_f32(cpu->mem, _t40, cpu->f[8]);
|
|
/* 0252C250 */ _t41 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0252C250 */ rbrew_write_f32(cpu->mem, _t41, cpu->f[0]);
|
|
/* 0252C254 */ cpu->r[9] = 0x00000003u;
|
|
/* 0252C258 */ _t42 = cpu->r[1] + 0x00000048u;
|
|
/* 0252C258 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 0252C25C */ cpu->r[8] = cpu->r[1] + 0x00000064u;
|
|
/* 0252C260 */ cpu->r[7] = cpu->r[1] + 0x00000004u;
|
|
/* 0252C264 */ _t43 = cpu->r[1] + 0x00000024u;
|
|
/* 0252C264 */ rbrew_write_f32(cpu->mem, _t43, cpu->f[13]);
|
|
/* 0252C268 */ cpu->ctr = cpu->r[9];
|
|
/* 0252C26C */ _t44 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252C26C */ rbrew_write_f32(cpu->mem, _t44, cpu->f[9]);
|
|
L_0252C270: ; // 0x252c270
|
|
/* 0252C270 */ _t45 = cpu->r[7] + 0x00000004u;
|
|
/* 0252C270 */ cpu->r[10] = rbrew_read32(cpu->mem, _t45);
|
|
/* 0252C274 */ _t46 = cpu->r[8] + 0x00000004u;
|
|
/* 0252C274 */ rbrew_write32(cpu->mem, _t46, cpu->r[10]);
|
|
/* 0252C278 */ _t47 = cpu->r[7] + 0x00000008u;
|
|
/* 0252C278 */ cpu->r[11] = rbrew_read32(cpu->mem, _t47);
|
|
/* 0252C27C */ _t48 = cpu->r[8] + 0x00000008u;
|
|
/* 0252C27C */ rbrew_write32(cpu->mem, _t48, cpu->r[11]);
|
|
/* 0252C280 */ _t49 = cpu->r[7] + 0x0000000Cu;
|
|
/* 0252C280 */ cpu->r[12] = rbrew_read32(cpu->mem, _t49);
|
|
/* 0252C284 */ _t50 = cpu->r[8] + 0x0000000Cu;
|
|
/* 0252C284 */ rbrew_write32(cpu->mem, _t50, cpu->r[12]);
|
|
/* 0252C288 */ _t51 = cpu->r[7] + 0x00000010u;
|
|
/* 0252C288 */ cpu->r[0] = rbrew_read32(cpu->mem, _t51);
|
|
/* 0252C288 */ cpu->r[7] = _t51;
|
|
/* 0252C28C */ _t52 = cpu->r[8] + 0x00000010u;
|
|
/* 0252C28C */ rbrew_write32(cpu->mem, _t52, cpu->r[0]);
|
|
/* 0252C28C */ cpu->r[8] = _t52;
|
|
/* 0252C290 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0252C290 */ _t53 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0252C290 */ _t54 = _t53 >> (0x00000002u & 31u);
|
|
/* 0252C290 */ _t55 = _t54 & 0x00000001u;
|
|
/* 0252C290 */ if (_t55) goto L_0252C270; else goto L_0252C294;
|
|
L_0252C294: ; // 0x252c294
|
|
/* 0252C294 */ _t56 = cpu->r[31] + 0x000001E8u;
|
|
/* 0252C294 */ cpu->r[31] = rbrew_read32(cpu->mem, _t56);
|
|
/* 0252C298 */ _t57 = cpu->r[31] + 0x0000007Cu;
|
|
/* 0252C298 */ cpu->r[0] = rbrew_read8(cpu->mem, _t57);
|
|
/* 0252C29C */ cpu->r[3] = cpu->r[1] + 0x00000068u;
|
|
/* 0252C2A0 */ cpu->r[0] = cpu->r[0] | 0x00000001u;
|
|
/* 0252C2A4 */ cpu->r[4] = cpu->r[31] + 0x00000034u;
|
|
/* 0252C2A8 */ _t58 = cpu->r[31] + 0x0000007Cu;
|
|
/* 0252C2A8 */ rbrew_write8(cpu->mem, _t58, (uint8_t)cpu->r[0]);
|
|
/* 0252C2AC */ Gambit_fn_02C69510(cpu);
|
|
/* 0252C2B0 */ cpu->r[4] = 0x00000003u;
|
|
/* 0252C2B4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0252C2B8 */ Gambit_fn_02980304(cpu);
|
|
/* 0252C2BC */ cpu->r[3] = cpu->r[31];
|
|
/* 0252C2C0 */ Gambit_fn_02980318(cpu);
|
|
/* 0252C2C4 */ _t59 = cpu->r[1] + 0x000000A4u;
|
|
/* 0252C2C4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t59);
|
|
/* 0252C2C8 */ _t60 = cpu->r[1] + 0x0000009Cu;
|
|
/* 0252C2C8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t60);
|
|
/* 0252C2CC */ cpu->lr = cpu->r[0];
|
|
/* 0252C2D0 */ cpu->r[1] = cpu->r[1] + 0x000000A0u;
|
|
/* 0252C2D4 */ return;
|
|
}
|
|
|
|
// fn_0252C2D8 @ 0x252c2d8
|
|
void Gambit_fn_0252C2D8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_0252C2D8: ; // 0x252c2d8
|
|
/* 0252C2D8 */ cpu->r[0] = cpu->lr;
|
|
/* 0252C2DC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0252C2DC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252C2DC */ cpu->r[1] = _t0;
|
|
/* 0252C2E0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252C2E0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0252C2E4 */ cpu->r[31] = cpu->r[3];
|
|
/* 0252C2E8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0252C2E8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0252C2EC */ Gambit_fn_024F606C(cpu);
|
|
/* 0252C2F0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0252C2F4 */ Gambit_fn_024F607C(cpu);
|
|
/* 0252C2F8 */ _t3 = cpu->r[31] + 0x000001E8u;
|
|
/* 0252C2F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0252C2FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0252C300 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252C300 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0252C300 */ if (_t5) goto L_0252C30C; else goto L_0252C304;
|
|
L_0252C304: ; // 0x252c304
|
|
/* 0252C304 */ cpu->r[3] = cpu->r[31];
|
|
/* 0252C308 */ Gambit_fn_0252C184(cpu);
|
|
L_0252C30C: ; // 0x252c30c
|
|
/* 0252C30C */ _t6 = cpu->r[31] + 0x000001F8u;
|
|
/* 0252C30C */ cpu->r[11] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0252C310 */ cpu->r[0] = cpu->r[11] + 0xFFFFFFFFu;
|
|
/* 0252C314 */ cpu->r[4] = 0x00000006u;
|
|
/* 0252C318 */ cpu->r[0] = cpu->r[11] | cpu->r[0];
|
|
/* 0252C31C */ _t7 = cpu->r[31] + 0x00000030u;
|
|
/* 0252C31C */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0252C320 */ cpu->r[5] = rbrew_rlwinm(cpu->r[0], 0x00000001u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0252C324 */ Gambit_fn_027B8224(cpu);
|
|
/* 0252C328 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 0252C328 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0252C32C */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252C32C */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0252C330 */ cpu->lr = cpu->r[0];
|
|
/* 0252C334 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0252C338 */ return;
|
|
}
|
|
|
|
// fn_0252C2DC @ 0x252c2dc
|
|
void Gambit_fn_0252C2DC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_0252C2DC: ; // 0x252c2dc
|
|
/* 0252C2DC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0252C2DC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252C2DC */ cpu->r[1] = _t0;
|
|
/* 0252C2E0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252C2E0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0252C2E4 */ cpu->r[31] = cpu->r[3];
|
|
/* 0252C2E8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0252C2E8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0252C2EC */ Gambit_fn_024F606C(cpu);
|
|
/* 0252C2F0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0252C2F4 */ Gambit_fn_024F607C(cpu);
|
|
/* 0252C2F8 */ _t3 = cpu->r[31] + 0x000001E8u;
|
|
/* 0252C2F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0252C2FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0252C300 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252C300 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0252C300 */ if (_t5) goto L_0252C30C; else goto L_0252C304;
|
|
L_0252C304: ; // 0x252c304
|
|
/* 0252C304 */ cpu->r[3] = cpu->r[31];
|
|
/* 0252C308 */ Gambit_fn_0252C184(cpu);
|
|
L_0252C30C: ; // 0x252c30c
|
|
/* 0252C30C */ _t6 = cpu->r[31] + 0x000001F8u;
|
|
/* 0252C30C */ cpu->r[11] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0252C310 */ cpu->r[0] = cpu->r[11] + 0xFFFFFFFFu;
|
|
/* 0252C314 */ cpu->r[4] = 0x00000006u;
|
|
/* 0252C318 */ cpu->r[0] = cpu->r[11] | cpu->r[0];
|
|
/* 0252C31C */ _t7 = cpu->r[31] + 0x00000030u;
|
|
/* 0252C31C */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0252C320 */ cpu->r[5] = rbrew_rlwinm(cpu->r[0], 0x00000001u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0252C324 */ Gambit_fn_027B8224(cpu);
|
|
/* 0252C328 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 0252C328 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0252C32C */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252C32C */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0252C330 */ cpu->lr = cpu->r[0];
|
|
/* 0252C334 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0252C338 */ return;
|
|
}
|
|
|
|
// fn_0252C33C @ 0x252c33c
|
|
void Gambit_fn_0252C33C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _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_0252C33C: ; // 0x252c33c
|
|
/* 0252C33C */ cpu->r[0] = cpu->lr;
|
|
/* 0252C340 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 0252C340 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252C340 */ cpu->r[1] = _t0;
|
|
/* 0252C344 */ _t1 = cpu->r[1] + 0x00000018u;
|
|
/* 0252C344 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0252C348 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252C348 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 0252C34C */ /* nop */
|
|
/* 0252C350 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0252C350 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 0252C354 */ _t4 = cpu->r[1] + 0x00000020u;
|
|
/* 0252C354 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[31]);
|
|
/* 0252C358 */ cpu->r[31] = cpu->r[3];
|
|
/* 0252C358 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0252C35C */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 0252C35C */ rbrew_write32(cpu->mem, _t5, cpu->r[30]);
|
|
/* 0252C360 */ _t6 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0252C360 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0252C364 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252C364 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0252C364 */ if (_t8) goto L_0252C368; else goto L_0252C378;
|
|
L_0252C368: ; // 0x252c368
|
|
/* 0252C368 */ cpu->r[3] = 0x00000304u;
|
|
/* 0252C36C */ Gambit_fn_02801A78(cpu);
|
|
/* 0252C370 */ cpu->r[31] = cpu->r[3];
|
|
/* 0252C370 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0252C374 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252C374 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0252C374 */ if (_t10) goto L_0252C510; else goto L_0252C378;
|
|
L_0252C378: ; // 0x252c378
|
|
/* 0252C378 */ cpu->r[3] = cpu->r[31];
|
|
/* 0252C37C */ Gambit_fn_025015D0(cpu);
|
|
/* 0252C380 */ cpu->r[0] = 0x100C0000u;
|
|
/* 0252C384 */ cpu->r[0] = cpu->r[0] + 0x00003490u;
|
|
/* 0252C388 */ cpu->r[30] = cpu->r[31] + 0x00000188u;
|
|
/* 0252C388 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0252C38C */ _t11 = cpu->r[31] + 0x00000000u;
|
|
/* 0252C38C */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 0252C390 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252C390 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0252C390 */ if (_t13) goto L_0252C394; else goto L_0252C3A4;
|
|
L_0252C394: ; // 0x252c394
|
|
/* 0252C394 */ cpu->r[3] = 0x00000060u;
|
|
/* 0252C398 */ Gambit_fn_02801A78(cpu);
|
|
/* 0252C39C */ cpu->r[30] = cpu->r[3];
|
|
/* 0252C39C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0252C3A0 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252C3A0 */ _t15 = _t14 & 0x00000001u;
|
|
/* 0252C3A0 */ if (_t15) goto L_0252C3E8; else goto L_0252C3A4;
|
|
L_0252C3A4: ; // 0x252c3a4
|
|
/* 0252C3A4 */ cpu->r[5] = 0x100C0000u;
|
|
/* 0252C3A8 */ cpu->r[4] = cpu->r[31];
|
|
/* 0252C3AC */ cpu->r[6] = 0x100C0000u;
|
|
/* 0252C3B0 */ cpu->r[5] = cpu->r[5] + 0x00003654u;
|
|
/* 0252C3B4 */ cpu->r[8] = 0x00000000u;
|
|
/* 0252C3B8 */ cpu->r[6] = cpu->r[6] + 0x00003664u;
|
|
/* 0252C3BC */ cpu->r[7] = cpu->r[5];
|
|
/* 0252C3C0 */ cpu->r[3] = cpu->r[30];
|
|
/* 0252C3C4 */ Gambit_fn_027F84F0(cpu);
|
|
/* 0252C3C8 */ cpu->r[10] = 0x10110000u;
|
|
/* 0252C3CC */ cpu->r[0] = 0x0000000Cu;
|
|
/* 0252C3D0 */ cpu->r[10] = cpu->r[10] + 0x0000095Cu;
|
|
/* 0252C3D4 */ _t16 = cpu->r[30] + 0x00000054u;
|
|
/* 0252C3D4 */ rbrew_write32(cpu->mem, _t16, cpu->r[0]);
|
|
/* 0252C3D8 */ cpu->r[8] = 0x00000000u;
|
|
/* 0252C3DC */ _t17 = cpu->r[30] + 0x00000000u;
|
|
/* 0252C3DC */ rbrew_write32(cpu->mem, _t17, cpu->r[10]);
|
|
/* 0252C3E0 */ _t18 = cpu->r[30] + 0x00000058u;
|
|
/* 0252C3E0 */ rbrew_write32(cpu->mem, _t18, cpu->r[8]);
|
|
/* 0252C3E4 */ _t19 = cpu->r[30] + 0x0000005Cu;
|
|
/* 0252C3E4 */ rbrew_write32(cpu->mem, _t19, cpu->r[0]);
|
|
L_0252C3E8: ; // 0x252c3e8
|
|
/* 0252C3E8 */ cpu->r[8] = 0x100C0000u;
|
|
/* 0252C3EC */ _t20 = cpu->r[8] + 0x000035B4u;
|
|
/* 0252C3EC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 0252C3F0 */ cpu->r[29] = 0x10110000u;
|
|
/* 0252C3F4 */ cpu->r[30] = cpu->r[31] + 0x000001E8u;
|
|
/* 0252C3F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0252C3F8 */ cpu->r[29] = cpu->r[29] + 0x00000A2Cu;
|
|
/* 0252C3FC */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252C3FC */ _t22 = _t21 & 0x00000001u;
|
|
/* 0252C3FC */ if (_t22) goto L_0252C400; else goto L_0252C410;
|
|
L_0252C400: ; // 0x252c400
|
|
/* 0252C400 */ cpu->r[3] = 0x00000060u;
|
|
/* 0252C404 */ Gambit_fn_02801A78(cpu);
|
|
/* 0252C408 */ cpu->r[30] = cpu->r[3];
|
|
/* 0252C408 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0252C40C */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252C40C */ _t24 = _t23 & 0x00000001u;
|
|
/* 0252C40C */ if (_t24) goto L_0252C454; else goto L_0252C410;
|
|
L_0252C410: ; // 0x252c410
|
|
/* 0252C410 */ cpu->r[5] = 0x100C0000u;
|
|
/* 0252C414 */ cpu->r[4] = cpu->r[31];
|
|
/* 0252C418 */ cpu->r[6] = 0x100C0000u;
|
|
/* 0252C41C */ cpu->r[5] = cpu->r[5] + 0x0000362Cu;
|
|
/* 0252C420 */ cpu->r[8] = 0x00000000u;
|
|
/* 0252C424 */ cpu->r[6] = cpu->r[6] + 0x00003670u;
|
|
/* 0252C428 */ cpu->r[7] = cpu->r[5];
|
|
/* 0252C42C */ cpu->r[3] = cpu->r[30];
|
|
/* 0252C430 */ Gambit_fn_027F84F0(cpu);
|
|
/* 0252C434 */ cpu->r[11] = 0x100C0000u;
|
|
/* 0252C438 */ _t25 = cpu->r[30] + 0x00000000u;
|
|
/* 0252C438 */ rbrew_write32(cpu->mem, _t25, cpu->r[29]);
|
|
/* 0252C43C */ cpu->r[10] = 0x100C0000u;
|
|
/* 0252C440 */ _t26 = cpu->r[11] + 0x00003618u;
|
|
/* 0252C440 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 0252C444 */ _t27 = cpu->r[10] + 0x0000361Cu;
|
|
/* 0252C444 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 0252C448 */ _t28 = cpu->r[30] + 0x00000054u;
|
|
/* 0252C448 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[12]);
|
|
/* 0252C44C */ _t29 = cpu->r[30] + 0x0000005Cu;
|
|
/* 0252C44C */ rbrew_write_f32(cpu->mem, _t29, cpu->f[0]);
|
|
/* 0252C450 */ _t30 = cpu->r[30] + 0x00000058u;
|
|
/* 0252C450 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[31]);
|
|
L_0252C454: ; // 0x252c454
|
|
/* 0252C454 */ cpu->r[30] = cpu->r[31] + 0x00000248u;
|
|
/* 0252C454 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0252C458 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252C458 */ _t32 = _t31 & 0x00000001u;
|
|
/* 0252C458 */ if (_t32) goto L_0252C45C; else goto L_0252C46C;
|
|
L_0252C45C: ; // 0x252c45c
|
|
/* 0252C45C */ cpu->r[3] = 0x00000060u;
|
|
/* 0252C460 */ Gambit_fn_02801A78(cpu);
|
|
/* 0252C464 */ cpu->r[30] = cpu->r[3];
|
|
/* 0252C464 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0252C468 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252C468 */ _t34 = _t33 & 0x00000001u;
|
|
/* 0252C468 */ if (_t34) goto L_0252C4B0; else goto L_0252C46C;
|
|
L_0252C46C: ; // 0x252c46c
|
|
/* 0252C46C */ cpu->r[5] = 0x100C0000u;
|
|
/* 0252C470 */ cpu->r[4] = cpu->r[31];
|
|
/* 0252C474 */ cpu->r[6] = 0x100C0000u;
|
|
/* 0252C478 */ cpu->r[5] = cpu->r[5] + 0x0000367Cu;
|
|
/* 0252C47C */ cpu->r[8] = 0x00000000u;
|
|
/* 0252C480 */ cpu->r[6] = cpu->r[6] + 0x0000368Cu;
|
|
/* 0252C484 */ cpu->r[7] = cpu->r[5];
|
|
/* 0252C488 */ cpu->r[3] = cpu->r[30];
|
|
/* 0252C48C */ Gambit_fn_027F84F0(cpu);
|
|
/* 0252C490 */ cpu->r[12] = 0x100C0000u;
|
|
/* 0252C494 */ _t35 = cpu->r[30] + 0x00000000u;
|
|
/* 0252C494 */ rbrew_write32(cpu->mem, _t35, cpu->r[29]);
|
|
/* 0252C498 */ cpu->r[10] = 0x100C0000u;
|
|
/* 0252C49C */ _t36 = cpu->r[12] + 0x000035F4u;
|
|
/* 0252C49C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 0252C4A0 */ _t37 = cpu->r[10] + 0x00003620u;
|
|
/* 0252C4A0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 0252C4A4 */ _t38 = cpu->r[30] + 0x00000054u;
|
|
/* 0252C4A4 */ rbrew_write_f32(cpu->mem, _t38, cpu->f[0]);
|
|
/* 0252C4A8 */ _t39 = cpu->r[30] + 0x0000005Cu;
|
|
/* 0252C4A8 */ rbrew_write_f32(cpu->mem, _t39, cpu->f[13]);
|
|
/* 0252C4AC */ _t40 = cpu->r[30] + 0x00000058u;
|
|
/* 0252C4AC */ rbrew_write_f32(cpu->mem, _t40, cpu->f[31]);
|
|
L_0252C4B0: ; // 0x252c4b0
|
|
/* 0252C4B0 */ cpu->r[30] = cpu->r[31] + 0x000002A8u;
|
|
/* 0252C4B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0252C4B4 */ _t41 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252C4B4 */ _t42 = _t41 & 0x00000001u;
|
|
/* 0252C4B4 */ if (_t42) goto L_0252C4B8; else goto L_0252C4C8;
|
|
L_0252C4B8: ; // 0x252c4b8
|
|
/* 0252C4B8 */ cpu->r[3] = 0x0000005Cu;
|
|
/* 0252C4BC */ Gambit_fn_02801A78(cpu);
|
|
/* 0252C4C0 */ cpu->r[30] = cpu->r[3];
|
|
/* 0252C4C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0252C4C4 */ _t43 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252C4C4 */ _t44 = _t43 & 0x00000001u;
|
|
/* 0252C4C4 */ if (_t44) goto L_0252C510; else goto L_0252C4C8;
|
|
L_0252C4C8: ; // 0x252c4c8
|
|
/* 0252C4C8 */ cpu->r[5] = 0x100C0000u;
|
|
/* 0252C4CC */ cpu->r[4] = cpu->r[31];
|
|
/* 0252C4D0 */ cpu->r[6] = 0x100C0000u;
|
|
/* 0252C4D4 */ cpu->r[5] = cpu->r[5] + 0x0000363Cu;
|
|
/* 0252C4D8 */ cpu->r[8] = 0x00000000u;
|
|
/* 0252C4DC */ cpu->r[6] = cpu->r[6] + 0x0000369Cu;
|
|
/* 0252C4E0 */ cpu->r[7] = cpu->r[5];
|
|
/* 0252C4E4 */ cpu->r[3] = cpu->r[30];
|
|
/* 0252C4E8 */ Gambit_fn_027F84F0(cpu);
|
|
/* 0252C4EC */ cpu->r[12] = 0x100C0000u;
|
|
/* 0252C4F0 */ _t45 = cpu->r[12] + 0x00003624u;
|
|
/* 0252C4F0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t45);
|
|
/* 0252C4F4 */ cpu->r[12] = 0x100C0000u;
|
|
/* 0252C4F8 */ _t46 = cpu->r[12] + 0x00003628u;
|
|
/* 0252C4F8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t46);
|
|
/* 0252C4FC */ cpu->r[0] = 0x100C0000u;
|
|
/* 0252C500 */ _t47 = cpu->r[30] + 0x00000054u;
|
|
/* 0252C500 */ rbrew_write_f32(cpu->mem, _t47, cpu->f[13]);
|
|
/* 0252C504 */ cpu->r[0] = cpu->r[0] + 0x00003530u;
|
|
/* 0252C508 */ _t48 = cpu->r[30] + 0x00000058u;
|
|
/* 0252C508 */ rbrew_write_f32(cpu->mem, _t48, cpu->f[11]);
|
|
/* 0252C50C */ _t49 = cpu->r[30] + 0x00000000u;
|
|
/* 0252C50C */ rbrew_write32(cpu->mem, _t49, cpu->r[0]);
|
|
L_0252C510: ; // 0x252c510
|
|
/* 0252C510 */ _t50 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252C510 */ cpu->r[29] = rbrew_read32(cpu->mem, _t50);
|
|
/* 0252C514 */ _t51 = cpu->r[1] + 0x00000020u;
|
|
/* 0252C514 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t51);
|
|
/* 0252C518 */ _t52 = cpu->r[1] + 0x00000010u;
|
|
/* 0252C518 */ cpu->r[30] = rbrew_read32(cpu->mem, _t52);
|
|
/* 0252C51C */ _t53 = cpu->r[1] + 0x00000018u;
|
|
/* 0252C51C */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t53);
|
|
/* 0252C520 */ cpu->r[3] = cpu->r[31];
|
|
/* 0252C524 */ _t54 = cpu->r[1] + 0x00000014u;
|
|
/* 0252C524 */ cpu->r[31] = rbrew_read32(cpu->mem, _t54);
|
|
/* 0252C528 */ _t55 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0252C528 */ _t56 = _t55 & 0x00000001u;
|
|
/* 0252C528 */ if (_t56) goto L_0252C52C; // else: addr-0 trap, fall-through
|
|
L_0252C52C: ; // 0x252c52c
|
|
/* 0252C52C */ _t57 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0252C52C */ cpu->r[0] = rbrew_read32(cpu->mem, _t57);
|
|
/* 0252C530 */ cpu->lr = cpu->r[0];
|
|
/* 0252C534 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 0252C538 */ return;
|
|
}
|
|
|
|
// fn_0252C340 @ 0x252c340
|
|
void Gambit_fn_0252C340(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _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_0252C340: ; // 0x252c340
|
|
/* 0252C340 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 0252C340 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252C340 */ cpu->r[1] = _t0;
|
|
/* 0252C344 */ _t1 = cpu->r[1] + 0x00000018u;
|
|
/* 0252C344 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0252C348 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252C348 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 0252C34C */ /* nop */
|
|
/* 0252C350 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0252C350 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 0252C354 */ _t4 = cpu->r[1] + 0x00000020u;
|
|
/* 0252C354 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[31]);
|
|
/* 0252C358 */ cpu->r[31] = cpu->r[3];
|
|
/* 0252C358 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0252C35C */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 0252C35C */ rbrew_write32(cpu->mem, _t5, cpu->r[30]);
|
|
/* 0252C360 */ _t6 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0252C360 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0252C364 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252C364 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0252C364 */ if (_t8) goto L_0252C368; else goto L_0252C378;
|
|
L_0252C368: ; // 0x252c368
|
|
/* 0252C368 */ cpu->r[3] = 0x00000304u;
|
|
/* 0252C36C */ Gambit_fn_02801A78(cpu);
|
|
/* 0252C370 */ cpu->r[31] = cpu->r[3];
|
|
/* 0252C370 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0252C374 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252C374 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0252C374 */ if (_t10) goto L_0252C510; else goto L_0252C378;
|
|
L_0252C378: ; // 0x252c378
|
|
/* 0252C378 */ cpu->r[3] = cpu->r[31];
|
|
/* 0252C37C */ Gambit_fn_025015D0(cpu);
|
|
/* 0252C380 */ cpu->r[0] = 0x100C0000u;
|
|
/* 0252C384 */ cpu->r[0] = cpu->r[0] + 0x00003490u;
|
|
/* 0252C388 */ cpu->r[30] = cpu->r[31] + 0x00000188u;
|
|
/* 0252C388 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0252C38C */ _t11 = cpu->r[31] + 0x00000000u;
|
|
/* 0252C38C */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 0252C390 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252C390 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0252C390 */ if (_t13) goto L_0252C394; else goto L_0252C3A4;
|
|
L_0252C394: ; // 0x252c394
|
|
/* 0252C394 */ cpu->r[3] = 0x00000060u;
|
|
/* 0252C398 */ Gambit_fn_02801A78(cpu);
|
|
/* 0252C39C */ cpu->r[30] = cpu->r[3];
|
|
/* 0252C39C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0252C3A0 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252C3A0 */ _t15 = _t14 & 0x00000001u;
|
|
/* 0252C3A0 */ if (_t15) goto L_0252C3E8; else goto L_0252C3A4;
|
|
L_0252C3A4: ; // 0x252c3a4
|
|
/* 0252C3A4 */ cpu->r[5] = 0x100C0000u;
|
|
/* 0252C3A8 */ cpu->r[4] = cpu->r[31];
|
|
/* 0252C3AC */ cpu->r[6] = 0x100C0000u;
|
|
/* 0252C3B0 */ cpu->r[5] = cpu->r[5] + 0x00003654u;
|
|
/* 0252C3B4 */ cpu->r[8] = 0x00000000u;
|
|
/* 0252C3B8 */ cpu->r[6] = cpu->r[6] + 0x00003664u;
|
|
/* 0252C3BC */ cpu->r[7] = cpu->r[5];
|
|
/* 0252C3C0 */ cpu->r[3] = cpu->r[30];
|
|
/* 0252C3C4 */ Gambit_fn_027F84F0(cpu);
|
|
/* 0252C3C8 */ cpu->r[10] = 0x10110000u;
|
|
/* 0252C3CC */ cpu->r[0] = 0x0000000Cu;
|
|
/* 0252C3D0 */ cpu->r[10] = cpu->r[10] + 0x0000095Cu;
|
|
/* 0252C3D4 */ _t16 = cpu->r[30] + 0x00000054u;
|
|
/* 0252C3D4 */ rbrew_write32(cpu->mem, _t16, cpu->r[0]);
|
|
/* 0252C3D8 */ cpu->r[8] = 0x00000000u;
|
|
/* 0252C3DC */ _t17 = cpu->r[30] + 0x00000000u;
|
|
/* 0252C3DC */ rbrew_write32(cpu->mem, _t17, cpu->r[10]);
|
|
/* 0252C3E0 */ _t18 = cpu->r[30] + 0x00000058u;
|
|
/* 0252C3E0 */ rbrew_write32(cpu->mem, _t18, cpu->r[8]);
|
|
/* 0252C3E4 */ _t19 = cpu->r[30] + 0x0000005Cu;
|
|
/* 0252C3E4 */ rbrew_write32(cpu->mem, _t19, cpu->r[0]);
|
|
L_0252C3E8: ; // 0x252c3e8
|
|
/* 0252C3E8 */ cpu->r[8] = 0x100C0000u;
|
|
/* 0252C3EC */ _t20 = cpu->r[8] + 0x000035B4u;
|
|
/* 0252C3EC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 0252C3F0 */ cpu->r[29] = 0x10110000u;
|
|
/* 0252C3F4 */ cpu->r[30] = cpu->r[31] + 0x000001E8u;
|
|
/* 0252C3F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0252C3F8 */ cpu->r[29] = cpu->r[29] + 0x00000A2Cu;
|
|
/* 0252C3FC */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252C3FC */ _t22 = _t21 & 0x00000001u;
|
|
/* 0252C3FC */ if (_t22) goto L_0252C400; else goto L_0252C410;
|
|
L_0252C400: ; // 0x252c400
|
|
/* 0252C400 */ cpu->r[3] = 0x00000060u;
|
|
/* 0252C404 */ Gambit_fn_02801A78(cpu);
|
|
/* 0252C408 */ cpu->r[30] = cpu->r[3];
|
|
/* 0252C408 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0252C40C */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252C40C */ _t24 = _t23 & 0x00000001u;
|
|
/* 0252C40C */ if (_t24) goto L_0252C454; else goto L_0252C410;
|
|
L_0252C410: ; // 0x252c410
|
|
/* 0252C410 */ cpu->r[5] = 0x100C0000u;
|
|
/* 0252C414 */ cpu->r[4] = cpu->r[31];
|
|
/* 0252C418 */ cpu->r[6] = 0x100C0000u;
|
|
/* 0252C41C */ cpu->r[5] = cpu->r[5] + 0x0000362Cu;
|
|
/* 0252C420 */ cpu->r[8] = 0x00000000u;
|
|
/* 0252C424 */ cpu->r[6] = cpu->r[6] + 0x00003670u;
|
|
/* 0252C428 */ cpu->r[7] = cpu->r[5];
|
|
/* 0252C42C */ cpu->r[3] = cpu->r[30];
|
|
/* 0252C430 */ Gambit_fn_027F84F0(cpu);
|
|
/* 0252C434 */ cpu->r[11] = 0x100C0000u;
|
|
/* 0252C438 */ _t25 = cpu->r[30] + 0x00000000u;
|
|
/* 0252C438 */ rbrew_write32(cpu->mem, _t25, cpu->r[29]);
|
|
/* 0252C43C */ cpu->r[10] = 0x100C0000u;
|
|
/* 0252C440 */ _t26 = cpu->r[11] + 0x00003618u;
|
|
/* 0252C440 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 0252C444 */ _t27 = cpu->r[10] + 0x0000361Cu;
|
|
/* 0252C444 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 0252C448 */ _t28 = cpu->r[30] + 0x00000054u;
|
|
/* 0252C448 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[12]);
|
|
/* 0252C44C */ _t29 = cpu->r[30] + 0x0000005Cu;
|
|
/* 0252C44C */ rbrew_write_f32(cpu->mem, _t29, cpu->f[0]);
|
|
/* 0252C450 */ _t30 = cpu->r[30] + 0x00000058u;
|
|
/* 0252C450 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[31]);
|
|
L_0252C454: ; // 0x252c454
|
|
/* 0252C454 */ cpu->r[30] = cpu->r[31] + 0x00000248u;
|
|
/* 0252C454 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0252C458 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252C458 */ _t32 = _t31 & 0x00000001u;
|
|
/* 0252C458 */ if (_t32) goto L_0252C45C; else goto L_0252C46C;
|
|
L_0252C45C: ; // 0x252c45c
|
|
/* 0252C45C */ cpu->r[3] = 0x00000060u;
|
|
/* 0252C460 */ Gambit_fn_02801A78(cpu);
|
|
/* 0252C464 */ cpu->r[30] = cpu->r[3];
|
|
/* 0252C464 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0252C468 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252C468 */ _t34 = _t33 & 0x00000001u;
|
|
/* 0252C468 */ if (_t34) goto L_0252C4B0; else goto L_0252C46C;
|
|
L_0252C46C: ; // 0x252c46c
|
|
/* 0252C46C */ cpu->r[5] = 0x100C0000u;
|
|
/* 0252C470 */ cpu->r[4] = cpu->r[31];
|
|
/* 0252C474 */ cpu->r[6] = 0x100C0000u;
|
|
/* 0252C478 */ cpu->r[5] = cpu->r[5] + 0x0000367Cu;
|
|
/* 0252C47C */ cpu->r[8] = 0x00000000u;
|
|
/* 0252C480 */ cpu->r[6] = cpu->r[6] + 0x0000368Cu;
|
|
/* 0252C484 */ cpu->r[7] = cpu->r[5];
|
|
/* 0252C488 */ cpu->r[3] = cpu->r[30];
|
|
/* 0252C48C */ Gambit_fn_027F84F0(cpu);
|
|
/* 0252C490 */ cpu->r[12] = 0x100C0000u;
|
|
/* 0252C494 */ _t35 = cpu->r[30] + 0x00000000u;
|
|
/* 0252C494 */ rbrew_write32(cpu->mem, _t35, cpu->r[29]);
|
|
/* 0252C498 */ cpu->r[10] = 0x100C0000u;
|
|
/* 0252C49C */ _t36 = cpu->r[12] + 0x000035F4u;
|
|
/* 0252C49C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 0252C4A0 */ _t37 = cpu->r[10] + 0x00003620u;
|
|
/* 0252C4A0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 0252C4A4 */ _t38 = cpu->r[30] + 0x00000054u;
|
|
/* 0252C4A4 */ rbrew_write_f32(cpu->mem, _t38, cpu->f[0]);
|
|
/* 0252C4A8 */ _t39 = cpu->r[30] + 0x0000005Cu;
|
|
/* 0252C4A8 */ rbrew_write_f32(cpu->mem, _t39, cpu->f[13]);
|
|
/* 0252C4AC */ _t40 = cpu->r[30] + 0x00000058u;
|
|
/* 0252C4AC */ rbrew_write_f32(cpu->mem, _t40, cpu->f[31]);
|
|
L_0252C4B0: ; // 0x252c4b0
|
|
/* 0252C4B0 */ cpu->r[30] = cpu->r[31] + 0x000002A8u;
|
|
/* 0252C4B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0252C4B4 */ _t41 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252C4B4 */ _t42 = _t41 & 0x00000001u;
|
|
/* 0252C4B4 */ if (_t42) goto L_0252C4B8; else goto L_0252C4C8;
|
|
L_0252C4B8: ; // 0x252c4b8
|
|
/* 0252C4B8 */ cpu->r[3] = 0x0000005Cu;
|
|
/* 0252C4BC */ Gambit_fn_02801A78(cpu);
|
|
/* 0252C4C0 */ cpu->r[30] = cpu->r[3];
|
|
/* 0252C4C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0252C4C4 */ _t43 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252C4C4 */ _t44 = _t43 & 0x00000001u;
|
|
/* 0252C4C4 */ if (_t44) goto L_0252C510; else goto L_0252C4C8;
|
|
L_0252C4C8: ; // 0x252c4c8
|
|
/* 0252C4C8 */ cpu->r[5] = 0x100C0000u;
|
|
/* 0252C4CC */ cpu->r[4] = cpu->r[31];
|
|
/* 0252C4D0 */ cpu->r[6] = 0x100C0000u;
|
|
/* 0252C4D4 */ cpu->r[5] = cpu->r[5] + 0x0000363Cu;
|
|
/* 0252C4D8 */ cpu->r[8] = 0x00000000u;
|
|
/* 0252C4DC */ cpu->r[6] = cpu->r[6] + 0x0000369Cu;
|
|
/* 0252C4E0 */ cpu->r[7] = cpu->r[5];
|
|
/* 0252C4E4 */ cpu->r[3] = cpu->r[30];
|
|
/* 0252C4E8 */ Gambit_fn_027F84F0(cpu);
|
|
/* 0252C4EC */ cpu->r[12] = 0x100C0000u;
|
|
/* 0252C4F0 */ _t45 = cpu->r[12] + 0x00003624u;
|
|
/* 0252C4F0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t45);
|
|
/* 0252C4F4 */ cpu->r[12] = 0x100C0000u;
|
|
/* 0252C4F8 */ _t46 = cpu->r[12] + 0x00003628u;
|
|
/* 0252C4F8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t46);
|
|
/* 0252C4FC */ cpu->r[0] = 0x100C0000u;
|
|
/* 0252C500 */ _t47 = cpu->r[30] + 0x00000054u;
|
|
/* 0252C500 */ rbrew_write_f32(cpu->mem, _t47, cpu->f[13]);
|
|
/* 0252C504 */ cpu->r[0] = cpu->r[0] + 0x00003530u;
|
|
/* 0252C508 */ _t48 = cpu->r[30] + 0x00000058u;
|
|
/* 0252C508 */ rbrew_write_f32(cpu->mem, _t48, cpu->f[11]);
|
|
/* 0252C50C */ _t49 = cpu->r[30] + 0x00000000u;
|
|
/* 0252C50C */ rbrew_write32(cpu->mem, _t49, cpu->r[0]);
|
|
L_0252C510: ; // 0x252c510
|
|
/* 0252C510 */ _t50 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252C510 */ cpu->r[29] = rbrew_read32(cpu->mem, _t50);
|
|
/* 0252C514 */ _t51 = cpu->r[1] + 0x00000020u;
|
|
/* 0252C514 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t51);
|
|
/* 0252C518 */ _t52 = cpu->r[1] + 0x00000010u;
|
|
/* 0252C518 */ cpu->r[30] = rbrew_read32(cpu->mem, _t52);
|
|
/* 0252C51C */ _t53 = cpu->r[1] + 0x00000018u;
|
|
/* 0252C51C */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t53);
|
|
/* 0252C520 */ cpu->r[3] = cpu->r[31];
|
|
/* 0252C524 */ _t54 = cpu->r[1] + 0x00000014u;
|
|
/* 0252C524 */ cpu->r[31] = rbrew_read32(cpu->mem, _t54);
|
|
/* 0252C528 */ _t55 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0252C528 */ _t56 = _t55 & 0x00000001u;
|
|
/* 0252C528 */ if (_t56) goto L_0252C52C; // else: addr-0 trap, fall-through
|
|
L_0252C52C: ; // 0x252c52c
|
|
/* 0252C52C */ _t57 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0252C52C */ cpu->r[0] = rbrew_read32(cpu->mem, _t57);
|
|
/* 0252C530 */ cpu->lr = cpu->r[0];
|
|
/* 0252C534 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 0252C538 */ return;
|
|
}
|
|
|
|
// fn_0252C53C @ 0x252c53c
|
|
void Gambit_fn_0252C53C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_0252C53C: ; // 0x252c53c
|
|
/* 0252C53C */ cpu->r[0] = cpu->lr;
|
|
/* 0252C540 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 0252C540 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 0252C544 */ cpu->r[3] = 0x00000304u;
|
|
/* 0252C548 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 0252C548 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 0252C548 */ cpu->r[1] = _t1;
|
|
/* 0252C54C */ Gambit_fn_02801A78(cpu);
|
|
/* 0252C550 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252C554 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252C554 */ _t3 = _t2 & 0x00000001u;
|
|
/* 0252C554 */ rbrew_dispatch(cpu, (_t3) ? 0x0252c558u : 0x0252c33cu); return;
|
|
/* 0252C558 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252C558 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0252C55C */ cpu->lr = cpu->r[0];
|
|
/* 0252C560 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 0252C564 */ return;
|
|
}
|
|
|
|
// fn_0252C548 @ 0x252c548
|
|
void Gambit_fn_0252C548(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_0252C548: ; // 0x252c548
|
|
/* 0252C548 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 0252C548 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252C548 */ cpu->r[1] = _t0;
|
|
/* 0252C54C */ Gambit_fn_02801A78(cpu);
|
|
/* 0252C550 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252C554 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252C554 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0252C554 */ rbrew_dispatch(cpu, (_t2) ? 0x0252c558u : 0x0252c33cu); return;
|
|
/* 0252C558 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252C558 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0252C55C */ cpu->lr = cpu->r[0];
|
|
/* 0252C560 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 0252C564 */ return;
|
|
}
|
|
|
|
// fn_0252C568 @ 0x252c568
|
|
void Gambit_fn_0252C568(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _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_0205F9A0: ; // 0x205f9a0
|
|
/* 0205F9A0 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 0205F9A0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0205F9A0 */ cpu->r[1] = _t0;
|
|
/* 0205F9A4 */ /* nop */
|
|
/* 0205F9A8 */ cpu->r[0] = cpu->lr;
|
|
/* 0205F9AC */ cpu->r[23] = cpu->r[3];
|
|
/* 0205F9B0 */ _t1 = cpu->r[1] + 0x00000044u;
|
|
/* 0205F9B0 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0205F9B4 */ Gambit_fn_0205AED4(cpu);
|
|
/* 0205F9B8 */ cpu->r[7] = 0x101E0000u;
|
|
/* 0205F9BC */ _t2 = cpu->r[7] + 0xFFFFC2C4u;
|
|
/* 0205F9BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0205F9BC */ cpu->r[7] = _t2;
|
|
/* 0205F9C0 */ cpu->r[31] = 0x101E0000u;
|
|
/* 0205F9C4 */ cpu->r[22] = cpu->r[3];
|
|
/* 0205F9C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0205F9CC */ cpu->r[31] = cpu->r[31] + 0xFFFFC254u;
|
|
/* 0205F9D0 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0205F9D0 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0205F9D0 */ if (_t4) goto L_0205F9D4; else goto L_0205FA1C;
|
|
L_0205F9D4: ; // 0x205f9d4
|
|
/* 0205F9D4 */ cpu->r[12] = 0x00000001u;
|
|
/* 0205F9D8 */ cpu->r[6] = cpu->r[31] + 0x00000060u;
|
|
/* 0205F9DC */ cpu->r[4] = 0x10000000u;
|
|
/* 0205F9E0 */ _t5 = cpu->r[7] + 0x00000000u;
|
|
/* 0205F9E0 */ rbrew_write32(cpu->mem, _t5, cpu->r[12]);
|
|
/* 0205F9E4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0205F9E8 */ cpu->r[5] = 0x00000002u;
|
|
/* 0205F9EC */ cpu->r[4] = cpu->r[4] + 0x00006A58u;
|
|
/* 0205F9F0 */ cpu->r[7] = 0x00000000u;
|
|
/* 0205F9F4 */ Gambit_fn_028A6750(cpu);
|
|
/* 0205F9F8 */ cpu->r[6] = 0x02060000u;
|
|
/* 0205F9FC */ cpu->r[3] = cpu->r[31] + 0x00000060u;
|
|
/* 0205FA00 */ cpu->r[4] = 0x00000002u;
|
|
/* 0205FA04 */ cpu->r[6] = cpu->r[6] + 0xFFFFFB40u;
|
|
/* 0205FA08 */ cpu->r[5] = 0x00000008u;
|
|
/* 0205FA0C */ Gambit_fn_02C82E00(cpu);
|
|
/* 0205FA10 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0205FA14 */ cpu->r[3] = cpu->r[3] + 0x00002E68u;
|
|
/* 0205FA18 */ Gambit_fn_02C83090(cpu);
|
|
L_0205FA1C: ; // 0x205fa1c
|
|
/* 0205FA1C */ _t6 = cpu->r[31] + 0x00000054u;
|
|
/* 0205FA1C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0205FA20 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0205FA24 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0205FA24 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0205FA24 */ if (_t8) goto L_0205FA28; else goto L_0205FB1C;
|
|
L_0205FA28: ; // 0x205fa28
|
|
/* 0205FA28 */ cpu->r[26] = 0x101D0000u;
|
|
/* 0205FA2C */ cpu->r[30] = 0x00000000u;
|
|
/* 0205FA30 */ cpu->r[19] = 0x101D0000u;
|
|
/* 0205FA34 */ cpu->r[20] = 0x101D0000u;
|
|
/* 0205FA38 */ cpu->r[21] = 0x00000001u;
|
|
/* 0205FA3C */ cpu->r[27] = cpu->r[30];
|
|
/* 0205FA40 */ cpu->r[25] = 0x101D0000u;
|
|
/* 0205FA44 */ cpu->r[26] = cpu->r[26] + 0xFFFFEA44u;
|
|
/* 0205FA48 */ cpu->r[24] = 0x101D0000u;
|
|
L_0205FA4C: ; // 0x205fa4c
|
|
/* 0205FA4C */ _t9 = cpu->r[24] + 0xFFFFEA54u;
|
|
/* 0205FA4C */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0205FA50 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0205FA54 */ cpu->r[29] = cpu->r[30];
|
|
/* 0205FA58 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0205FA58 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0205FA58 */ if (_t11) goto L_0205FA5C; else goto L_0205FA74;
|
|
L_0205FA5C: ; // 0x205fa5c
|
|
/* 0205FA5C */ cpu->r[4] = 0x101C0000u;
|
|
/* 0205FA60 */ cpu->r[3] = cpu->r[25] + 0x000038E1u;
|
|
/* 0205FA64 */ cpu->r[5] = 0x0000000Eu;
|
|
/* 0205FA68 */ cpu->r[4] = cpu->r[4] + 0x00002E58u;
|
|
/* 0205FA6C */ _t12 = cpu->r[24] + 0xFFFFEA54u;
|
|
/* 0205FA6C */ rbrew_write32(cpu->mem, _t12, cpu->r[21]);
|
|
/* 0205FA70 */ rbrew_dispatch(cpu, 0x02d0b870u);
|
|
L_0205FA74: ; // 0x205fa74
|
|
/* 0205FA74 */ _t13 = cpu->r[20] + 0xFFFFEA50u;
|
|
/* 0205FA74 */ cpu->r[11] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0205FA78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0205FA7C */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0205FA7C */ _t15 = _t14 & 0x00000001u;
|
|
/* 0205FA7C */ if (_t15) goto L_0205FA80; else goto L_0205FA88;
|
|
L_0205FA80: ; // 0x205fa80
|
|
/* 0205FA80 */ _t16 = cpu->r[19] + 0xFFFFEA4Cu;
|
|
/* 0205FA80 */ rbrew_write32(cpu->mem, _t16, cpu->r[27]);
|
|
/* 0205FA84 */ _t17 = cpu->r[20] + 0xFFFFEA50u;
|
|
/* 0205FA84 */ rbrew_write32(cpu->mem, _t17, cpu->r[21]);
|
|
L_0205FA88: ; // 0x205fa88
|
|
/* 0205FA88 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], 0x00000002u);
|
|
/* 0205FA8C */ _t18 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0205FA8C */ _t19 = _t18 & 0x00000001u;
|
|
/* 0205FA8C */ if (_t19) goto L_0205FAB4; else goto L_0205FA90;
|
|
L_0205FA90: ; // 0x205fa90
|
|
/* 0205FA90 */ cpu->r[4] = cpu->r[30];
|
|
/* 0205FA94 */ cpu->r[3] = cpu->r[31];
|
|
/* 0205FA98 */ cpu->r[5] = 0x00000000u;
|
|
/* 0205FA9C */ Gambit_fn_028A6634(cpu);
|
|
/* 0205FAA0 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 0205FAA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000002u);
|
|
/* 0205FAA8 */ _t20 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0205FAA8 */ _t21 = _t20 & 0x00000001u;
|
|
/* 0205FAA8 */ if (_t21) goto L_0205FB1C; else goto L_0205FAAC;
|
|
L_0205FAAC: ; // 0x205faac
|
|
/* 0205FAAC */ _t22 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0205FAAC */ _t23 = _t22 & 0x00000001u;
|
|
/* 0205FAAC */ if (_t23) goto L_0205FA4C; else goto L_0205FAB0;
|
|
L_0205FAB0: ; // 0x205fab0
|
|
/* 0205FAB0 */ goto L_0205FB1C;
|
|
L_0205FAB4: ; // 0x205fab4
|
|
/* 0205FAB4 */ _t24 = cpu->r[19] + 0xFFFFEA4Cu;
|
|
/* 0205FAB4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0205FAB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0205FABC */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0205FABC */ _t26 = _t25 & 0x00000001u;
|
|
/* 0205FABC */ if (_t26) goto L_0205FAC0; else goto L_0205FAF8;
|
|
L_0205FAC0: ; // 0x205fac0
|
|
/* 0205FAC0 */ Gambit_fn_0282A450(cpu);
|
|
/* 0205FAC4 */ cpu->r[28] = cpu->r[3];
|
|
/* 0205FAC8 */ Gambit_fn_02836FFC(cpu);
|
|
/* 0205FACC */ _t27 = cpu->r[19] + 0xFFFFEA4Cu;
|
|
/* 0205FACC */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0205FAD0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0205FAD4 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0205FAD4 */ _t29 = _t28 & 0x00000001u;
|
|
/* 0205FAD4 */ if (_t29) goto L_0205FAD8; else goto L_0205FAEC;
|
|
L_0205FAD8: ; // 0x205fad8
|
|
/* 0205FAD8 */ cpu->r[5] = 0x00000002u;
|
|
/* 0205FADC */ cpu->r[4] = cpu->r[25] + 0x000038E1u;
|
|
/* 0205FAE0 */ cpu->r[3] = cpu->r[26];
|
|
/* 0205FAE4 */ Gambit_fn_0282A374(cpu);
|
|
/* 0205FAE8 */ _t30 = cpu->r[19] + 0xFFFFEA4Cu;
|
|
/* 0205FAE8 */ rbrew_write32(cpu->mem, _t30, cpu->r[26]);
|
|
L_0205FAEC: ; // 0x205faec
|
|
/* 0205FAEC */ cpu->r[3] = cpu->r[28];
|
|
/* 0205FAF0 */ Gambit_fn_02837030(cpu);
|
|
/* 0205FAF4 */ _t31 = cpu->r[19] + 0xFFFFEA4Cu;
|
|
/* 0205FAF4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
L_0205FAF8: ; // 0x205faf8
|
|
/* 0205FAF8 */ cpu->r[12] = rbrew_rlwinm(cpu->r[29], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0205FAFC */ cpu->r[3] = cpu->r[31];
|
|
/* 0205FB00 */ _t32 = cpu->r[12] + cpu->r[0];
|
|
/* 0205FB00 */ cpu->r[5] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0205FB04 */ cpu->r[4] = cpu->r[30];
|
|
/* 0205FB08 */ Gambit_fn_028A6634(cpu);
|
|
/* 0205FB0C */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 0205FB10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000002u);
|
|
/* 0205FB14 */ _t33 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0205FB14 */ _t34 = _t33 & 0x00000001u;
|
|
/* 0205FB14 */ if (_t34) goto L_0205FB1C; else goto L_0205FB18;
|
|
L_0205FB18: ; // 0x205fb18
|
|
/* 0205FB18 */ _t35 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0205FB18 */ _t36 = _t35 & 0x00000001u;
|
|
/* 0205FB18 */ if (_t36) goto L_0205FA4C; else goto L_0205FB1C;
|
|
L_0205FB1C: ; // 0x205fb1c
|
|
/* 0205FB1C */ cpu->r[3] = cpu->r[23];
|
|
/* 0205FB20 */ cpu->r[4] = cpu->r[31];
|
|
/* 0205FB24 */ Gambit_fn_027B81E4(cpu);
|
|
/* 0205FB28 */ cpu->r[3] = cpu->r[22] + 0x00000001u;
|
|
/* 0205FB2C */ /* nop */
|
|
/* 0205FB30 */ _t37 = cpu->r[1] + 0x00000044u;
|
|
/* 0205FB30 */ cpu->r[0] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0205FB34 */ cpu->lr = cpu->r[0];
|
|
/* 0205FB38 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 0205FB3C */ return;
|
|
L_0252C568: ; // 0x252c568
|
|
/* 0252C568 */ _t38 = cpu->r[3] + 0x00000030u;
|
|
/* 0252C568 */ cpu->r[3] = rbrew_read32(cpu->mem, _t38);
|
|
/* 0252C56C */ cpu->r[4] = 0x00000000u;
|
|
/* 0252C570 */ goto L_0205F9A0;
|
|
}
|
|
|
|
// fn_0252C574 @ 0x252c574
|
|
void Gambit_fn_0252C574(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17;
|
|
|
|
L_0252C574: ; // 0x252c574
|
|
/* 0252C574 */ _t0 = cpu->r[4] + 0x00000000u;
|
|
/* 0252C574 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0252C578 */ _t1 = cpu->r[4] + 0x00000004u;
|
|
/* 0252C578 */ cpu->r[9] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0252C57C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], cpu->r[9]);
|
|
/* 0252C580 */ _t2 = cpu->r[3] + 0x00000008u;
|
|
/* 0252C580 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0252C584 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0252C584 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0252C584 */ if (_t4) goto L_0252C588; else goto L_0252C5A4;
|
|
L_0252C588: ; // 0x252c588
|
|
/* 0252C588 */ _t5 = cpu->r[4] + 0x00000008u;
|
|
/* 0252C588 */ cpu->r[8] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0252C58C */ cpu->r[12] = rbrew_rlwinm(cpu->r[12], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0252C590 */ _t6 = cpu->r[12] + cpu->r[8];
|
|
/* 0252C590 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0252C594 */ _t7 = cpu->r[4] + 0x00000000u;
|
|
/* 0252C594 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0252C598 */ _t8 = cpu->r[4] + 0x00000004u;
|
|
/* 0252C598 */ cpu->r[9] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0252C59C */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 0252C5A0 */ _t9 = cpu->r[4] + 0x00000000u;
|
|
/* 0252C5A0 */ rbrew_write32(cpu->mem, _t9, cpu->r[12]);
|
|
L_0252C5A4: ; // 0x252c5a4
|
|
/* 0252C5A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], cpu->r[9]);
|
|
/* 0252C5A8 */ _t10 = cpu->r[3] + 0x000001E8u;
|
|
/* 0252C5A8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0252C5AC */ _t11 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0252C5AC */ _t12 = _t11 & 0x00000001u;
|
|
/* 0252C5AC */ _t13 = _t12 ^ 0x00000001u;
|
|
/* 0252C5AC */ if (_t13) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0252C5AC */ goto L_0252C5B0;
|
|
L_0252C5B0: ; // 0x252c5b0
|
|
/* 0252C5B0 */ _t14 = cpu->r[4] + 0x00000008u;
|
|
/* 0252C5B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0252C5B4 */ cpu->r[9] = rbrew_rlwinm(cpu->r[12], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0252C5B8 */ _t15 = cpu->r[9] + cpu->r[0];
|
|
/* 0252C5B8 */ rbrew_write32(cpu->mem, _t15, cpu->r[11]);
|
|
/* 0252C5BC */ _t16 = cpu->r[4] + 0x00000000u;
|
|
/* 0252C5BC */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0252C5C0 */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 0252C5C4 */ _t17 = cpu->r[4] + 0x00000000u;
|
|
/* 0252C5C4 */ rbrew_write32(cpu->mem, _t17, cpu->r[11]);
|
|
/* 0252C5C8 */ return;
|
|
}
|
|
|
|
// fn_0252C5CC @ 0x252c5cc
|
|
void Gambit_fn_0252C5CC(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_0252C5CC: ; // 0x252c5cc
|
|
/* 0252C5CC */ cpu->r[0] = cpu->lr;
|
|
/* 0252C5D0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0252C5D0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252C5D0 */ cpu->r[1] = _t0;
|
|
/* 0252C5D4 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0252C5D4 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0252C5D8 */ cpu->r[30] = cpu->r[3];
|
|
/* 0252C5DC */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252C5DC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0252C5E0 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0252C5E0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0252C5E4 */ Gambit_fn_024F65FC(cpu);
|
|
/* 0252C5E8 */ cpu->r[10] = 0x101D0000u;
|
|
/* 0252C5EC */ _t4 = cpu->r[10] + 0xFFFFEA64u;
|
|
/* 0252C5EC */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0252C5EC */ cpu->r[10] = _t4;
|
|
/* 0252C5F0 */ cpu->r[31] = cpu->r[3];
|
|
/* 0252C5F4 */ cpu->r[4] = 0x101D0000u;
|
|
/* 0252C5F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0252C5FC */ cpu->r[4] = cpu->r[4] + 0x00000A04u;
|
|
/* 0252C600 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252C600 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0252C600 */ if (_t6) goto L_0252C604; else goto L_0252C618;
|
|
L_0252C604: ; // 0x252c604
|
|
/* 0252C604 */ cpu->r[0] = 0x100C0000u;
|
|
/* 0252C608 */ cpu->r[11] = 0x00000001u;
|
|
/* 0252C60C */ cpu->r[0] = cpu->r[0] + 0x00003420u;
|
|
/* 0252C610 */ _t7 = cpu->r[10] + 0x00000000u;
|
|
/* 0252C610 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 0252C614 */ _t8 = cpu->r[4] + 0x00000000u;
|
|
/* 0252C614 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_0252C618: ; // 0x252c618
|
|
/* 0252C618 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0252C61C */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252C61C */ _t10 = _t9 & 0x00000001u;
|
|
/* 0252C61C */ if (_t10) goto L_0252C63C; else goto L_0252C620;
|
|
L_0252C620: ; // 0x252c620
|
|
/* 0252C620 */ _t11 = cpu->r[31] + 0x00000000u;
|
|
/* 0252C620 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0252C624 */ _t12 = cpu->r[12] + 0x0000006Cu;
|
|
/* 0252C624 */ cpu->r[8] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0252C628 */ cpu->ctr = cpu->r[8];
|
|
/* 0252C62C */ cpu->r[3] = cpu->r[31];
|
|
/* 0252C630 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252C634 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252C638 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252C638 */ _t14 = _t13 & 0x00000001u;
|
|
/* 0252C638 */ if (_t14) goto L_0252C63C; else goto L_0252C640;
|
|
L_0252C63C: ; // 0x252c63c
|
|
/* 0252C63C */ cpu->r[31] = 0x00000000u;
|
|
L_0252C640: ; // 0x252c640
|
|
/* 0252C640 */ _t15 = cpu->r[31] + 0x000001DCu;
|
|
/* 0252C640 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0252C644 */ _t16 = cpu->r[30] + 0x000001F8u;
|
|
/* 0252C644 */ rbrew_write32(cpu->mem, _t16, cpu->r[0]);
|
|
/* 0252C648 */ _t17 = cpu->r[1] + 0x00000014u;
|
|
/* 0252C648 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0252C64C */ _t18 = cpu->r[1] + 0x00000008u;
|
|
/* 0252C64C */ cpu->r[30] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0252C650 */ cpu->lr = cpu->r[0];
|
|
/* 0252C654 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252C654 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0252C658 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0252C65C */ return;
|
|
}
|
|
|
|
// fn_0252C5D0 @ 0x252c5d0
|
|
void Gambit_fn_0252C5D0(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_0252C5D0: ; // 0x252c5d0
|
|
/* 0252C5D0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0252C5D0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252C5D0 */ cpu->r[1] = _t0;
|
|
/* 0252C5D4 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0252C5D4 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0252C5D8 */ cpu->r[30] = cpu->r[3];
|
|
/* 0252C5DC */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252C5DC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0252C5E0 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0252C5E0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0252C5E4 */ Gambit_fn_024F65FC(cpu);
|
|
/* 0252C5E8 */ cpu->r[10] = 0x101D0000u;
|
|
/* 0252C5EC */ _t4 = cpu->r[10] + 0xFFFFEA64u;
|
|
/* 0252C5EC */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0252C5EC */ cpu->r[10] = _t4;
|
|
/* 0252C5F0 */ cpu->r[31] = cpu->r[3];
|
|
/* 0252C5F4 */ cpu->r[4] = 0x101D0000u;
|
|
/* 0252C5F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0252C5FC */ cpu->r[4] = cpu->r[4] + 0x00000A04u;
|
|
/* 0252C600 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252C600 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0252C600 */ if (_t6) goto L_0252C604; else goto L_0252C618;
|
|
L_0252C604: ; // 0x252c604
|
|
/* 0252C604 */ cpu->r[0] = 0x100C0000u;
|
|
/* 0252C608 */ cpu->r[11] = 0x00000001u;
|
|
/* 0252C60C */ cpu->r[0] = cpu->r[0] + 0x00003420u;
|
|
/* 0252C610 */ _t7 = cpu->r[10] + 0x00000000u;
|
|
/* 0252C610 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 0252C614 */ _t8 = cpu->r[4] + 0x00000000u;
|
|
/* 0252C614 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_0252C618: ; // 0x252c618
|
|
/* 0252C618 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0252C61C */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252C61C */ _t10 = _t9 & 0x00000001u;
|
|
/* 0252C61C */ if (_t10) goto L_0252C63C; else goto L_0252C620;
|
|
L_0252C620: ; // 0x252c620
|
|
/* 0252C620 */ _t11 = cpu->r[31] + 0x00000000u;
|
|
/* 0252C620 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0252C624 */ _t12 = cpu->r[12] + 0x0000006Cu;
|
|
/* 0252C624 */ cpu->r[8] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0252C628 */ cpu->ctr = cpu->r[8];
|
|
/* 0252C62C */ cpu->r[3] = cpu->r[31];
|
|
/* 0252C630 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252C634 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252C638 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252C638 */ _t14 = _t13 & 0x00000001u;
|
|
/* 0252C638 */ if (_t14) goto L_0252C63C; else goto L_0252C640;
|
|
L_0252C63C: ; // 0x252c63c
|
|
/* 0252C63C */ cpu->r[31] = 0x00000000u;
|
|
L_0252C640: ; // 0x252c640
|
|
/* 0252C640 */ _t15 = cpu->r[31] + 0x000001DCu;
|
|
/* 0252C640 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0252C644 */ _t16 = cpu->r[30] + 0x000001F8u;
|
|
/* 0252C644 */ rbrew_write32(cpu->mem, _t16, cpu->r[0]);
|
|
/* 0252C648 */ _t17 = cpu->r[1] + 0x00000014u;
|
|
/* 0252C648 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0252C64C */ _t18 = cpu->r[1] + 0x00000008u;
|
|
/* 0252C64C */ cpu->r[30] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0252C650 */ cpu->lr = cpu->r[0];
|
|
/* 0252C654 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252C654 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0252C658 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0252C65C */ return;
|
|
}
|
|
|
|
// fn_0252C6B4 @ 0x252c6b4
|
|
void Gambit_fn_0252C6B4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_0252C6B4: ; // 0x252c6b4
|
|
/* 0252C6B4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0252C6B4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252C6B4 */ cpu->r[1] = _t0;
|
|
/* 0252C6B8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252C6B8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0252C6BC */ cpu->r[31] = cpu->r[3];
|
|
/* 0252C6C0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0252C6C0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0252C6C4 */ _t3 = cpu->r[31] + 0x000001F0u;
|
|
/* 0252C6C4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0252C6C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252C6CC */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252C6CC */ _t5 = _t4 & 0x00000001u;
|
|
/* 0252C6CC */ if (_t5) goto L_0252C6F4; else goto L_0252C6D0;
|
|
L_0252C6D0: ; // 0x252c6d0
|
|
/* 0252C6D0 */ Gambit_fn_023991BC(cpu);
|
|
/* 0252C6D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252C6D8 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252C6D8 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0252C6D8 */ if (_t7) goto L_0252C6F4; else goto L_0252C6DC;
|
|
L_0252C6DC: ; // 0x252c6dc
|
|
/* 0252C6DC */ _t8 = cpu->r[31] + 0x000001F8u;
|
|
/* 0252C6DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0252C6E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0252C6E4 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252C6E4 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0252C6E4 */ if (_t10) goto L_0252C6E8; else goto L_0252C6F4;
|
|
L_0252C6E8: ; // 0x252c6e8
|
|
/* 0252C6E8 */ cpu->r[3] = cpu->r[31] + 0x000001B0u;
|
|
/* 0252C6EC */ cpu->r[4] = 0x00000000u;
|
|
/* 0252C6F0 */ Gambit_fn_0205FE1C(cpu);
|
|
L_0252C6F4: ; // 0x252c6f4
|
|
/* 0252C6F4 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 0252C6F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0252C6F8 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252C6F8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0252C6FC */ cpu->lr = cpu->r[0];
|
|
/* 0252C700 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0252C704 */ return;
|
|
}
|
|
|
|
// fn_0252C708 @ 0x252c708
|
|
void Gambit_fn_0252C708(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _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_0224AD1C: ; // 0x224ad1c
|
|
/* 0224AD1C */ _t0 = cpu->r[1] + 0xFFFFFFA8u;
|
|
/* 0224AD1C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0224AD1C */ cpu->r[1] = _t0;
|
|
/* 0224AD20 */ /* nop */
|
|
/* 0224AD24 */ cpu->r[0] = cpu->lr;
|
|
/* 0224AD28 */ _t1 = cpu->r[1] + 0x00000048u;
|
|
/* 0224AD28 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0224AD2C */ /* nop */
|
|
/* 0224AD30 */ _t2 = cpu->r[1] + 0x00000050u;
|
|
/* 0224AD30 */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 0224AD34 */ _t3 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0224AD34 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0224AD38 */ cpu->r[27] = cpu->r[3];
|
|
/* 0224AD3C */ _t4 = cpu->r[27] + 0x00000014u;
|
|
/* 0224AD3C */ cpu->r[9] = rbrew_read8(cpu->mem, _t4);
|
|
/* 0224AD40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0224AD44 */ cpu->r[28] = cpu->r[4];
|
|
/* 0224AD48 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0224AD48 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0224AD48 */ if (_t6) goto L_0224AD4C; else goto L_0224AE64;
|
|
L_0224AD4C: ; // 0x224ad4c
|
|
/* 0224AD4C */ _t7 = cpu->r[27] + 0x00000038u;
|
|
/* 0224AD4C */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0224AD50 */ cpu->r[29] = 0x00000000u;
|
|
/* 0224AD54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[8]);
|
|
/* 0224AD58 */ _t8 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0224AD58 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0224AD58 */ if (_t9) goto L_0224AD5C; else goto L_0224AE64;
|
|
L_0224AD5C: ; // 0x224ad5c
|
|
/* 0224AD5C */ cpu->r[26] = 0x00000000u;
|
|
L_0224AD60: ; // 0x224ad60
|
|
/* 0224AD60 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[8]);
|
|
/* 0224AD64 */ _t10 = cpu->r[27] + 0x0000003Cu;
|
|
/* 0224AD64 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0224AD68 */ _t11 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0224AD68 */ _t12 = _t11 & 0x00000001u;
|
|
/* 0224AD68 */ if (_t12) goto L_0224AD6C; else goto L_0224AD70;
|
|
L_0224AD6C: ; // 0x224ad6c
|
|
/* 0224AD6C */ cpu->r[31] = cpu->r[31] + cpu->r[26];
|
|
L_0224AD70: ; // 0x224ad70
|
|
/* 0224AD70 */ _t13 = cpu->r[31] + 0x00000000u;
|
|
/* 0224AD70 */ cpu->r[30] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t13);
|
|
/* 0224AD74 */ cpu->r[3] = cpu->r[28];
|
|
/* 0224AD78 */ cpu->r[4] = cpu->r[30];
|
|
/* 0224AD7C */ Gambit_fn_0297FC7C(cpu);
|
|
/* 0224AD80 */ _t14 = cpu->r[28] + 0x0000001Cu;
|
|
/* 0224AD80 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0224AD84 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[0]);
|
|
/* 0224AD88 */ cpu->r[5] = 0x00000000u;
|
|
/* 0224AD8C */ _t15 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0224AD8C */ _t16 = _t15 & 0x00000001u;
|
|
/* 0224AD8C */ if (_t16) goto L_0224AD90; else goto L_0224AD9C;
|
|
L_0224AD90: ; // 0x224ad90
|
|
/* 0224AD90 */ _t17 = cpu->r[28] + 0x00000024u;
|
|
/* 0224AD90 */ cpu->r[6] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0224AD94 */ cpu->r[12] = rbrew_rlwinm(cpu->r[30], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0224AD98 */ _t18 = cpu->r[12] + cpu->r[6];
|
|
/* 0224AD98 */ cpu->r[5] = rbrew_read32(cpu->mem, _t18);
|
|
L_0224AD9C: ; // 0x224ad9c
|
|
/* 0224AD9C */ _t19 = cpu->r[5] + 0x00000000u;
|
|
/* 0224AD9C */ cpu->r[3] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0224ADA0 */ _t20 = cpu->r[3] + 0x00000088u;
|
|
/* 0224ADA0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0224ADA4 */ _t21 = cpu->r[7] + 0x0000016Cu;
|
|
/* 0224ADA4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0224ADA8 */ _t22 = cpu->r[31] + 0x00000004u;
|
|
/* 0224ADA8 */ cpu->r[5] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t22);
|
|
/* 0224ADAC */ cpu->ctr = cpu->r[0];
|
|
/* 0224ADB0 */ _t23 = cpu->r[31] + 0x00000002u;
|
|
/* 0224ADB0 */ cpu->r[4] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t23);
|
|
/* 0224ADB4 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 0224ADB8 */ cpu->r[6] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0224ADBC */ cpu->r[8] = cpu->r[1] + 0x00000014u;
|
|
/* 0224ADC0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0224ADC4 */ _t24 = cpu->r[27] + 0x00000038u;
|
|
/* 0224ADC4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0224ADC8 */ _t25 = cpu->r[27] + 0x00000034u;
|
|
/* 0224ADC8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 0224ADCC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[0]);
|
|
/* 0224ADD0 */ _t26 = cpu->r[27] + 0x0000003Cu;
|
|
/* 0224ADD0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0224ADD4 */ /* nop */
|
|
/* 0224ADD8 */ _t27 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0224ADD8 */ _t28 = _t27 & 0x00000001u;
|
|
/* 0224ADD8 */ if (_t28) goto L_0224ADDC; else goto L_0224ADE0;
|
|
L_0224ADDC: ; // 0x224addc
|
|
/* 0224ADDC */ cpu->r[31] = cpu->r[31] + cpu->r[26];
|
|
L_0224ADE0: ; // 0x224ade0
|
|
/* 0224ADE0 */ /* nop */
|
|
/* 0224ADE4 */ /* nop */
|
|
/* 0224ADE8 */ _t29 = cpu->r[1] + 0x00000024u;
|
|
/* 0224ADE8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0224ADEC */ _t30 = cpu->r[1] + 0x00000028u;
|
|
/* 0224ADEC */ cpu->r[11] = rbrew_read32(cpu->mem, _t30);
|
|
/* 0224ADF0 */ _t31 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0224ADF0 */ rbrew_write32(cpu->mem, _t31, cpu->r[10]);
|
|
/* 0224ADF4 */ _t32 = cpu->r[1] + 0x00000020u;
|
|
/* 0224ADF4 */ rbrew_write32(cpu->mem, _t32, cpu->r[11]);
|
|
/* 0224ADF8 */ _t33 = cpu->r[31] + 0x00000000u;
|
|
/* 0224ADF8 */ cpu->r[30] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t33);
|
|
/* 0224ADFC */ cpu->r[3] = cpu->r[28];
|
|
/* 0224AE00 */ _t34 = cpu->r[1] + 0x00000008u;
|
|
/* 0224AE00 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 0224AE04 */ cpu->r[4] = cpu->r[30];
|
|
/* 0224AE08 */ Gambit_fn_0297FC7C(cpu);
|
|
/* 0224AE0C */ _t35 = cpu->r[28] + 0x0000001Cu;
|
|
/* 0224AE0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t35);
|
|
/* 0224AE10 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[0]);
|
|
/* 0224AE14 */ cpu->r[9] = 0x00000000u;
|
|
/* 0224AE18 */ _t36 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0224AE18 */ _t37 = _t36 & 0x00000001u;
|
|
/* 0224AE18 */ if (_t37) goto L_0224AE1C; else goto L_0224AE28;
|
|
L_0224AE1C: ; // 0x224ae1c
|
|
/* 0224AE1C */ _t38 = cpu->r[28] + 0x00000024u;
|
|
/* 0224AE1C */ cpu->r[6] = rbrew_read32(cpu->mem, _t38);
|
|
/* 0224AE20 */ cpu->r[5] = rbrew_rlwinm(cpu->r[30], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0224AE24 */ _t39 = cpu->r[5] + cpu->r[6];
|
|
/* 0224AE24 */ cpu->r[9] = rbrew_read32(cpu->mem, _t39);
|
|
L_0224AE28: ; // 0x224ae28
|
|
/* 0224AE28 */ _t40 = cpu->r[9] + 0x00000000u;
|
|
/* 0224AE28 */ cpu->r[3] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0224AE2C */ _t41 = cpu->r[3] + 0x00000088u;
|
|
/* 0224AE2C */ cpu->r[7] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0224AE30 */ _t42 = cpu->r[7] + 0x00000174u;
|
|
/* 0224AE30 */ cpu->r[10] = rbrew_read32(cpu->mem, _t42);
|
|
/* 0224AE34 */ cpu->f[1] = cpu->f[31];
|
|
/* 0224AE38 */ _t43 = cpu->r[31] + 0x00000004u;
|
|
/* 0224AE38 */ cpu->r[5] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t43);
|
|
/* 0224AE3C */ cpu->ctr = cpu->r[10];
|
|
/* 0224AE40 */ _t44 = cpu->r[31] + 0x00000002u;
|
|
/* 0224AE40 */ cpu->r[4] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t44);
|
|
/* 0224AE44 */ cpu->r[7] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0224AE48 */ cpu->r[6] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0224AE4C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0224AE50 */ _t45 = cpu->r[27] + 0x00000038u;
|
|
/* 0224AE50 */ cpu->r[8] = rbrew_read32(cpu->mem, _t45);
|
|
/* 0224AE54 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 0224AE58 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[8]);
|
|
/* 0224AE5C */ cpu->r[26] = cpu->r[26] + 0x00000008u;
|
|
/* 0224AE60 */ _t46 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0224AE60 */ _t47 = _t46 & 0x00000001u;
|
|
/* 0224AE60 */ if (_t47) goto L_0224AD60; else goto L_0224AE64;
|
|
L_0224AE64: ; // 0x224ae64
|
|
/* 0224AE64 */ /* nop */
|
|
/* 0224AE68 */ _t48 = cpu->r[1] + 0x00000050u;
|
|
/* 0224AE68 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 0224AE6C */ _t49 = cpu->r[1] + 0x00000048u;
|
|
/* 0224AE6C */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t49);
|
|
/* 0224AE70 */ _t50 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0224AE70 */ _t51 = _t50 & 0x00000001u;
|
|
/* 0224AE70 */ if (_t51) goto L_0224AE74; // else: addr-0 trap, fall-through
|
|
L_0224AE74: ; // 0x224ae74
|
|
/* 0224AE74 */ _t52 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0224AE74 */ cpu->r[0] = rbrew_read32(cpu->mem, _t52);
|
|
/* 0224AE78 */ cpu->lr = cpu->r[0];
|
|
/* 0224AE7C */ cpu->r[1] = cpu->r[1] + 0x00000058u;
|
|
/* 0224AE80 */ return;
|
|
L_0252C708: ; // 0x252c708
|
|
/* 0252C708 */ _t53 = cpu->r[3] + 0x00000004u;
|
|
/* 0252C708 */ cpu->r[12] = rbrew_read32(cpu->mem, _t53);
|
|
/* 0252C70C */ _t54 = cpu->r[12] + 0x000001FCu;
|
|
/* 0252C70C */ cpu->r[3] = rbrew_read32(cpu->mem, _t54);
|
|
/* 0252C710 */ goto L_0224AD1C;
|
|
}
|
|
|
|
// fn_0252C714 @ 0x252c714
|
|
void Gambit_fn_0252C714(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_0252C714: ; // 0x252c714
|
|
/* 0252C714 */ cpu->r[0] = cpu->lr;
|
|
/* 0252C718 */ cpu->r[12] = 0x100C0000u;
|
|
/* 0252C71C */ cpu->r[11] = 0x100C0000u;
|
|
/* 0252C720 */ cpu->r[12] = cpu->r[12] + 0x000036D0u;
|
|
/* 0252C724 */ cpu->r[11] = cpu->r[11] + 0x00003340u;
|
|
/* 0252C728 */ cpu->r[3] = 0x101F0000u;
|
|
/* 0252C72C */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 0252C72C */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 0252C730 */ cpu->r[0] = 0x02530000u;
|
|
/* 0252C734 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 0252C734 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 0252C734 */ cpu->r[1] = _t1;
|
|
/* 0252C738 */ cpu->r[0] = cpu->r[0] + 0xFFFFD1C8u;
|
|
/* 0252C73C */ _t2 = cpu->r[3] + 0xFFFF9B7Cu;
|
|
/* 0252C73C */ rbrew_write32(cpu->mem, _t2, cpu->r[12]);
|
|
/* 0252C73C */ cpu->r[3] = _t2;
|
|
/* 0252C740 */ cpu->r[12] = 0x100C0000u;
|
|
/* 0252C744 */ _t3 = cpu->r[3] + 0x00000004u;
|
|
/* 0252C744 */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 0252C748 */ cpu->r[12] = cpu->r[12] + 0x00003468u;
|
|
/* 0252C74C */ _t4 = cpu->r[3] + 0x00000010u;
|
|
/* 0252C74C */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0252C750 */ _t5 = cpu->r[3] + 0x00000008u;
|
|
/* 0252C750 */ rbrew_write32(cpu->mem, _t5, cpu->r[12]);
|
|
/* 0252C754 */ _t6 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0252C754 */ rbrew_write32(cpu->mem, _t6, cpu->r[11]);
|
|
/* 0252C758 */ Gambit_fn_027DB2F8(cpu);
|
|
/* 0252C75C */ cpu->r[3] = 0x101C0000u;
|
|
/* 0252C760 */ cpu->r[3] = cpu->r[3] + 0x000068B8u;
|
|
/* 0252C764 */ Gambit_fn_02C83090(cpu);
|
|
/* 0252C768 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252C768 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0252C76C */ cpu->lr = cpu->r[0];
|
|
/* 0252C770 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 0252C774 */ return;
|
|
}
|
|
|
|
// fn_0252C734 @ 0x252c734
|
|
void Gambit_fn_0252C734(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_0252C734: ; // 0x252c734
|
|
/* 0252C734 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 0252C734 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252C734 */ cpu->r[1] = _t0;
|
|
/* 0252C738 */ cpu->r[0] = cpu->r[0] + 0xFFFFD1C8u;
|
|
/* 0252C73C */ _t1 = cpu->r[3] + 0xFFFF9B7Cu;
|
|
/* 0252C73C */ rbrew_write32(cpu->mem, _t1, cpu->r[12]);
|
|
/* 0252C73C */ cpu->r[3] = _t1;
|
|
/* 0252C740 */ cpu->r[12] = 0x100C0000u;
|
|
/* 0252C744 */ _t2 = cpu->r[3] + 0x00000004u;
|
|
/* 0252C744 */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 0252C748 */ cpu->r[12] = cpu->r[12] + 0x00003468u;
|
|
/* 0252C74C */ _t3 = cpu->r[3] + 0x00000010u;
|
|
/* 0252C74C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0252C750 */ _t4 = cpu->r[3] + 0x00000008u;
|
|
/* 0252C750 */ rbrew_write32(cpu->mem, _t4, cpu->r[12]);
|
|
/* 0252C754 */ _t5 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0252C754 */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 0252C758 */ Gambit_fn_027DB2F8(cpu);
|
|
/* 0252C75C */ cpu->r[3] = 0x101C0000u;
|
|
/* 0252C760 */ cpu->r[3] = cpu->r[3] + 0x000068B8u;
|
|
/* 0252C764 */ Gambit_fn_02C83090(cpu);
|
|
/* 0252C768 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252C768 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0252C76C */ cpu->lr = cpu->r[0];
|
|
/* 0252C770 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 0252C774 */ return;
|
|
}
|
|
|
|
// fn_0252C778 @ 0x252c778
|
|
void Gambit_fn_0252C778(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_0252C778: ; // 0x252c778
|
|
/* 0252C778 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252C77C */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252C77C */ _t1 = _t0 & 0x00000001u;
|
|
/* 0252C77C */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0252C77C */ goto L_0252C780;
|
|
L_0252C780: ; // 0x252c780
|
|
/* 0252C780 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0252C780 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0252C784 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252C784 */ _t3 = _t2 & 0x00000001u;
|
|
/* 0252C784 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0252C784 */ goto L_0252C788;
|
|
L_0252C788: ; // 0x252c788
|
|
/* 0252C788 */ 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_0252C78C @ 0x252c78c
|
|
void Gambit_fn_0252C78C(CPUState* cpu) {
|
|
L_0252C78C: ; // 0x252c78c
|
|
/* 0252C78C */ return;
|
|
}
|
|
|
|
// fn_0252C790 @ 0x252c790
|
|
void Gambit_fn_0252C790(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_0252C790: ; // 0x252c790
|
|
/* 0252C790 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252C794 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252C794 */ _t1 = _t0 & 0x00000001u;
|
|
/* 0252C794 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0252C794 */ goto L_0252C798;
|
|
L_0252C798: ; // 0x252c798
|
|
/* 0252C798 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0252C798 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0252C79C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252C79C */ _t3 = _t2 & 0x00000001u;
|
|
/* 0252C79C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0252C79C */ goto L_0252C7A0;
|
|
L_0252C7A0: ; // 0x252c7a0
|
|
/* 0252C7A0 */ 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_0252C7A4 @ 0x252c7a4
|
|
void Gambit_fn_0252C7A4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_0252C7A4: ; // 0x252c7a4
|
|
/* 0252C7A4 */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 0252C7A4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0252C7A8 */ _t1 = cpu->r[3] + 0x00000008u;
|
|
/* 0252C7A8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0252C7AC */ cpu->r[12] = cpu->r[11] + cpu->r[12];
|
|
/* 0252C7B0 */ cpu->r[11] = 0x10110000u;
|
|
/* 0252C7B4 */ _t2 = cpu->r[11] + 0x00007399u;
|
|
/* 0252C7B4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t2);
|
|
/* 0252C7B8 */ _t3 = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 0252C7B8 */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[0]);
|
|
/* 0252C7BC */ return;
|
|
}
|
|
|
|
// fn_0252C7C0 @ 0x252c7c0
|
|
void Gambit_fn_0252C7C0(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_0252C7C0: ; // 0x252c7c0
|
|
/* 0252C7C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252C7C4 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252C7C4 */ _t1 = _t0 & 0x00000001u;
|
|
/* 0252C7C4 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0252C7C4 */ goto L_0252C7C8;
|
|
L_0252C7C8: ; // 0x252c7c8
|
|
/* 0252C7C8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0252C7C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0252C7CC */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252C7CC */ _t3 = _t2 & 0x00000001u;
|
|
/* 0252C7CC */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0252C7CC */ goto L_0252C7D0;
|
|
L_0252C7D0: ; // 0x252c7d0
|
|
/* 0252C7D0 */ 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_0252C7D4 @ 0x252c7d4
|
|
void Gambit_fn_0252C7D4(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_0252C7D4: ; // 0x252c7d4
|
|
/* 0252C7D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252C7D8 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252C7D8 */ _t1 = _t0 & 0x00000001u;
|
|
/* 0252C7D8 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0252C7D8 */ goto L_0252C7DC;
|
|
L_0252C7DC: ; // 0x252c7dc
|
|
/* 0252C7DC */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0252C7DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0252C7E0 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252C7E0 */ _t3 = _t2 & 0x00000001u;
|
|
/* 0252C7E0 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0252C7E0 */ goto L_0252C7E4;
|
|
L_0252C7E4: ; // 0x252c7e4
|
|
/* 0252C7E4 */ 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_0252C7E8 @ 0x252c7e8
|
|
void Gambit_fn_0252C7E8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _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_0252C7E8: ; // 0x252c7e8
|
|
/* 0252C7E8 */ cpu->r[0] = cpu->lr;
|
|
/* 0252C7EC */ _t0 = cpu->r[1] + 0xFFFFFF78u;
|
|
/* 0252C7EC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252C7EC */ cpu->r[1] = _t0;
|
|
/* 0252C7F0 */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 0252C7F0 */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 0252C7F4 */ _t2 = cpu->r[1] + 0x00000084u;
|
|
/* 0252C7F4 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0252C7F8 */ _t3 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0252C7F8 */ rbrew_write32(cpu->mem, _t3, cpu->r[8]);
|
|
/* 0252C7FC */ _t4 = cpu->r[1] + 0x00000020u;
|
|
/* 0252C7FC */ rbrew_write32(cpu->mem, _t4, cpu->r[5]);
|
|
/* 0252C800 */ _t5 = cpu->r[1] + 0x00000018u;
|
|
/* 0252C800 */ rbrew_write32(cpu->mem, _t5, cpu->r[3]);
|
|
/* 0252C804 */ _t6 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0252C804 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0252C808 */ _t7 = cpu->r[1] + 0x00000078u;
|
|
/* 0252C808 */ rbrew_write32(cpu->mem, _t7, cpu->r[28]);
|
|
/* 0252C80C */ _t8 = cpu->r[1] + 0x00000080u;
|
|
/* 0252C80C */ rbrew_write32(cpu->mem, _t8, cpu->r[30]);
|
|
/* 0252C810 */ _t9 = cpu->r[1] + 0x00000024u;
|
|
/* 0252C810 */ rbrew_write32(cpu->mem, _t9, cpu->r[6]);
|
|
/* 0252C814 */ _t10 = cpu->r[1] + 0x00000030u;
|
|
/* 0252C814 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 0252C818 */ _t11 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0252C818 */ rbrew_write32(cpu->mem, _t11, cpu->r[29]);
|
|
/* 0252C81C */ _t12 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252C81C */ rbrew_write32(cpu->mem, _t12, cpu->r[4]);
|
|
/* 0252C820 */ _t13 = cpu->r[1] + 0x00000028u;
|
|
/* 0252C820 */ rbrew_write32(cpu->mem, _t13, cpu->r[7]);
|
|
/* 0252C824 */ _t14 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 0252C824 */ _t15 = _t14 & 0x00000001u;
|
|
/* 0252C824 */ if (_t15) goto L_0252C828; else goto L_0252C848;
|
|
L_0252C828: ; // 0x252c828
|
|
/* 0252C828 */ _t16 = cpu->r[1] + 0x00000048u;
|
|
/* 0252C828 */ rbrew_write_f64(cpu->mem, _t16, cpu->f[3]);
|
|
/* 0252C82C */ _t17 = cpu->r[1] + 0x00000068u;
|
|
/* 0252C82C */ rbrew_write_f64(cpu->mem, _t17, cpu->f[7]);
|
|
/* 0252C830 */ _t18 = cpu->r[1] + 0x00000060u;
|
|
/* 0252C830 */ rbrew_write_f64(cpu->mem, _t18, cpu->f[6]);
|
|
/* 0252C834 */ _t19 = cpu->r[1] + 0x00000040u;
|
|
/* 0252C834 */ rbrew_write_f64(cpu->mem, _t19, cpu->f[2]);
|
|
/* 0252C838 */ _t20 = cpu->r[1] + 0x00000050u;
|
|
/* 0252C838 */ rbrew_write_f64(cpu->mem, _t20, cpu->f[4]);
|
|
/* 0252C83C */ _t21 = cpu->r[1] + 0x00000070u;
|
|
/* 0252C83C */ rbrew_write_f64(cpu->mem, _t21, cpu->f[8]);
|
|
/* 0252C840 */ _t22 = cpu->r[1] + 0x00000058u;
|
|
/* 0252C840 */ rbrew_write_f64(cpu->mem, _t22, cpu->f[5]);
|
|
/* 0252C844 */ _t23 = cpu->r[1] + 0x00000038u;
|
|
/* 0252C844 */ rbrew_write_f64(cpu->mem, _t23, cpu->f[1]);
|
|
L_0252C848: ; // 0x252c848
|
|
/* 0252C848 */ cpu->r[31] = cpu->r[3];
|
|
/* 0252C848 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0252C84C */ cpu->r[30] = cpu->r[4];
|
|
/* 0252C850 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252C850 */ _t25 = _t24 & 0x00000001u;
|
|
/* 0252C850 */ if (_t25) goto L_0252C854; else goto L_0252C864;
|
|
L_0252C854: ; // 0x252c854
|
|
/* 0252C854 */ cpu->r[3] = 0x0000008Cu;
|
|
/* 0252C858 */ Gambit_fn_02801A78(cpu);
|
|
/* 0252C85C */ cpu->r[31] = cpu->r[3];
|
|
/* 0252C85C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0252C860 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252C860 */ _t27 = _t26 & 0x00000001u;
|
|
/* 0252C860 */ if (_t27) goto L_0252C928; else goto L_0252C864;
|
|
L_0252C864: ; // 0x252c864
|
|
/* 0252C864 */ cpu->r[29] = cpu->r[31];
|
|
/* 0252C864 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0252C868 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252C868 */ _t29 = _t28 & 0x00000001u;
|
|
/* 0252C868 */ if (_t29) goto L_0252C86C; else goto L_0252C87C;
|
|
L_0252C86C: ; // 0x252c86c
|
|
/* 0252C86C */ cpu->r[3] = 0x0000008Cu;
|
|
/* 0252C870 */ Gambit_fn_02801A78(cpu);
|
|
/* 0252C874 */ cpu->r[29] = cpu->r[3];
|
|
/* 0252C874 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0252C878 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252C878 */ _t31 = _t30 & 0x00000001u;
|
|
/* 0252C878 */ if (_t31) goto L_0252C8EC; else goto L_0252C87C;
|
|
L_0252C87C: ; // 0x252c87c
|
|
/* 0252C87C */ cpu->r[3] = cpu->r[29];
|
|
/* 0252C87C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252C880 */ cpu->r[28] = 0x10110000u;
|
|
/* 0252C884 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252C884 */ _t33 = _t32 & 0x00000001u;
|
|
/* 0252C884 */ if (_t33) goto L_0252C888; else goto L_0252C8B4;
|
|
L_0252C888: ; // 0x252c888
|
|
/* 0252C888 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0252C88C */ Gambit_fn_02801A78(cpu);
|
|
/* 0252C890 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252C894 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252C894 */ _t35 = _t34 & 0x00000001u;
|
|
/* 0252C894 */ if (_t35) goto L_0252C898; else goto L_0252C8B4;
|
|
L_0252C898: ; // 0x252c898
|
|
/* 0252C898 */ cpu->r[7] = 0x100C0000u;
|
|
/* 0252C89C */ _t36 = cpu->r[28] + 0x00007399u;
|
|
/* 0252C89C */ cpu->r[0] = rbrew_read8(cpu->mem, _t36);
|
|
/* 0252C8A0 */ cpu->r[7] = cpu->r[7] + 0x00003370u;
|
|
/* 0252C8A4 */ _t37 = cpu->r[29] + 0x00000000u;
|
|
/* 0252C8A4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0252C8A8 */ _t38 = cpu->r[29] + 0x00000004u;
|
|
/* 0252C8A8 */ rbrew_write32(cpu->mem, _t38, cpu->r[7]);
|
|
/* 0252C8AC */ _t39 = cpu->r[8] + 0x00000000u;
|
|
/* 0252C8AC */ rbrew_write8(cpu->mem, _t39, (uint8_t)cpu->r[0]);
|
|
/* 0252C8B0 */ goto L_0252C8EC;
|
|
L_0252C8B4: ; // 0x252c8b4
|
|
/* 0252C8B4 */ cpu->r[5] = 0x100C0000u;
|
|
/* 0252C8B8 */ cpu->r[0] = cpu->r[29] + 0x0000000Cu;
|
|
/* 0252C8BC */ cpu->r[5] = cpu->r[5] + 0x00003358u;
|
|
/* 0252C8C0 */ _t40 = cpu->r[3] + 0x00000000u;
|
|
/* 0252C8C0 */ rbrew_write32(cpu->mem, _t40, cpu->r[0]);
|
|
/* 0252C8C4 */ cpu->r[6] = 0x00000080u;
|
|
/* 0252C8C8 */ _t41 = cpu->r[3] + 0x00000004u;
|
|
/* 0252C8C8 */ rbrew_write32(cpu->mem, _t41, cpu->r[5]);
|
|
/* 0252C8CC */ _t42 = cpu->r[3] + 0x00000008u;
|
|
/* 0252C8CC */ rbrew_write32(cpu->mem, _t42, cpu->r[6]);
|
|
/* 0252C8D0 */ _t43 = cpu->r[28] + 0x00007399u;
|
|
/* 0252C8D0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t43);
|
|
/* 0252C8D4 */ cpu->r[7] = 0x100C0000u;
|
|
/* 0252C8D8 */ _t44 = cpu->r[29] + 0x00000000u;
|
|
/* 0252C8D8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t44);
|
|
/* 0252C8DC */ cpu->r[7] = cpu->r[7] + 0x00003370u;
|
|
/* 0252C8E0 */ _t45 = cpu->r[29] + 0x0000008Bu;
|
|
/* 0252C8E0 */ rbrew_write8(cpu->mem, _t45, (uint8_t)cpu->r[0]);
|
|
/* 0252C8E4 */ _t46 = cpu->r[29] + 0x00000004u;
|
|
/* 0252C8E4 */ rbrew_write32(cpu->mem, _t46, cpu->r[7]);
|
|
/* 0252C8E8 */ _t47 = cpu->r[8] + 0x00000000u;
|
|
/* 0252C8E8 */ rbrew_write8(cpu->mem, _t47, (uint8_t)cpu->r[0]);
|
|
L_0252C8EC: ; // 0x252c8ec
|
|
/* 0252C8EC */ cpu->r[9] = 0x100C0000u;
|
|
/* 0252C8F0 */ cpu->r[12] = 0x00000002u;
|
|
/* 0252C8F4 */ cpu->r[9] = cpu->r[9] + 0x00003450u;
|
|
/* 0252C8F8 */ cpu->r[0] = cpu->r[1] + 0x00000090u;
|
|
/* 0252C8FC */ _t48 = cpu->r[31] + 0x00000004u;
|
|
/* 0252C8FC */ rbrew_write32(cpu->mem, _t48, cpu->r[9]);
|
|
/* 0252C900 */ cpu->r[11] = cpu->r[1] + 0x00000018u;
|
|
/* 0252C904 */ _t49 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252C904 */ rbrew_write32(cpu->mem, _t49, cpu->r[0]);
|
|
/* 0252C908 */ cpu->r[0] = 0x00000000u;
|
|
/* 0252C90C */ _t50 = cpu->r[1] + 0x00000010u;
|
|
/* 0252C90C */ rbrew_write32(cpu->mem, _t50, cpu->r[11]);
|
|
/* 0252C910 */ cpu->r[3] = cpu->r[31];
|
|
/* 0252C914 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0252C918 */ _t51 = cpu->r[1] + 0x00000009u;
|
|
/* 0252C918 */ rbrew_write8(cpu->mem, _t51, (uint8_t)cpu->r[0]);
|
|
/* 0252C91C */ cpu->r[4] = cpu->r[30];
|
|
/* 0252C920 */ _t52 = cpu->r[1] + 0x00000008u;
|
|
/* 0252C920 */ rbrew_write8(cpu->mem, _t52, (uint8_t)cpu->r[12]);
|
|
/* 0252C924 */ Gambit_fn_0282A5DC(cpu);
|
|
L_0252C928: ; // 0x252c928
|
|
/* 0252C928 */ _t53 = cpu->r[1] + 0x00000078u;
|
|
/* 0252C928 */ cpu->r[28] = rbrew_read32(cpu->mem, _t53);
|
|
/* 0252C92C */ _t54 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0252C92C */ cpu->r[29] = rbrew_read32(cpu->mem, _t54);
|
|
/* 0252C930 */ _t55 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0252C930 */ cpu->r[0] = rbrew_read32(cpu->mem, _t55);
|
|
/* 0252C934 */ cpu->r[3] = cpu->r[31];
|
|
/* 0252C938 */ _t56 = cpu->r[1] + 0x00000080u;
|
|
/* 0252C938 */ cpu->r[30] = rbrew_read32(cpu->mem, _t56);
|
|
/* 0252C93C */ cpu->lr = cpu->r[0];
|
|
/* 0252C940 */ _t57 = cpu->r[1] + 0x00000084u;
|
|
/* 0252C940 */ cpu->r[31] = rbrew_read32(cpu->mem, _t57);
|
|
/* 0252C944 */ cpu->r[1] = cpu->r[1] + 0x00000088u;
|
|
/* 0252C948 */ return;
|
|
}
|
|
|
|
// fn_0252C7EC @ 0x252c7ec
|
|
void Gambit_fn_0252C7EC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _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_0252C7EC: ; // 0x252c7ec
|
|
/* 0252C7EC */ _t0 = cpu->r[1] + 0xFFFFFF78u;
|
|
/* 0252C7EC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252C7EC */ cpu->r[1] = _t0;
|
|
/* 0252C7F0 */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 0252C7F0 */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 0252C7F4 */ _t2 = cpu->r[1] + 0x00000084u;
|
|
/* 0252C7F4 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0252C7F8 */ _t3 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0252C7F8 */ rbrew_write32(cpu->mem, _t3, cpu->r[8]);
|
|
/* 0252C7FC */ _t4 = cpu->r[1] + 0x00000020u;
|
|
/* 0252C7FC */ rbrew_write32(cpu->mem, _t4, cpu->r[5]);
|
|
/* 0252C800 */ _t5 = cpu->r[1] + 0x00000018u;
|
|
/* 0252C800 */ rbrew_write32(cpu->mem, _t5, cpu->r[3]);
|
|
/* 0252C804 */ _t6 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0252C804 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0252C808 */ _t7 = cpu->r[1] + 0x00000078u;
|
|
/* 0252C808 */ rbrew_write32(cpu->mem, _t7, cpu->r[28]);
|
|
/* 0252C80C */ _t8 = cpu->r[1] + 0x00000080u;
|
|
/* 0252C80C */ rbrew_write32(cpu->mem, _t8, cpu->r[30]);
|
|
/* 0252C810 */ _t9 = cpu->r[1] + 0x00000024u;
|
|
/* 0252C810 */ rbrew_write32(cpu->mem, _t9, cpu->r[6]);
|
|
/* 0252C814 */ _t10 = cpu->r[1] + 0x00000030u;
|
|
/* 0252C814 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 0252C818 */ _t11 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0252C818 */ rbrew_write32(cpu->mem, _t11, cpu->r[29]);
|
|
/* 0252C81C */ _t12 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252C81C */ rbrew_write32(cpu->mem, _t12, cpu->r[4]);
|
|
/* 0252C820 */ _t13 = cpu->r[1] + 0x00000028u;
|
|
/* 0252C820 */ rbrew_write32(cpu->mem, _t13, cpu->r[7]);
|
|
/* 0252C824 */ _t14 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 0252C824 */ _t15 = _t14 & 0x00000001u;
|
|
/* 0252C824 */ if (_t15) goto L_0252C828; else goto L_0252C848;
|
|
L_0252C828: ; // 0x252c828
|
|
/* 0252C828 */ _t16 = cpu->r[1] + 0x00000048u;
|
|
/* 0252C828 */ rbrew_write_f64(cpu->mem, _t16, cpu->f[3]);
|
|
/* 0252C82C */ _t17 = cpu->r[1] + 0x00000068u;
|
|
/* 0252C82C */ rbrew_write_f64(cpu->mem, _t17, cpu->f[7]);
|
|
/* 0252C830 */ _t18 = cpu->r[1] + 0x00000060u;
|
|
/* 0252C830 */ rbrew_write_f64(cpu->mem, _t18, cpu->f[6]);
|
|
/* 0252C834 */ _t19 = cpu->r[1] + 0x00000040u;
|
|
/* 0252C834 */ rbrew_write_f64(cpu->mem, _t19, cpu->f[2]);
|
|
/* 0252C838 */ _t20 = cpu->r[1] + 0x00000050u;
|
|
/* 0252C838 */ rbrew_write_f64(cpu->mem, _t20, cpu->f[4]);
|
|
/* 0252C83C */ _t21 = cpu->r[1] + 0x00000070u;
|
|
/* 0252C83C */ rbrew_write_f64(cpu->mem, _t21, cpu->f[8]);
|
|
/* 0252C840 */ _t22 = cpu->r[1] + 0x00000058u;
|
|
/* 0252C840 */ rbrew_write_f64(cpu->mem, _t22, cpu->f[5]);
|
|
/* 0252C844 */ _t23 = cpu->r[1] + 0x00000038u;
|
|
/* 0252C844 */ rbrew_write_f64(cpu->mem, _t23, cpu->f[1]);
|
|
L_0252C848: ; // 0x252c848
|
|
/* 0252C848 */ cpu->r[31] = cpu->r[3];
|
|
/* 0252C848 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0252C84C */ cpu->r[30] = cpu->r[4];
|
|
/* 0252C850 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252C850 */ _t25 = _t24 & 0x00000001u;
|
|
/* 0252C850 */ if (_t25) goto L_0252C854; else goto L_0252C864;
|
|
L_0252C854: ; // 0x252c854
|
|
/* 0252C854 */ cpu->r[3] = 0x0000008Cu;
|
|
/* 0252C858 */ Gambit_fn_02801A78(cpu);
|
|
/* 0252C85C */ cpu->r[31] = cpu->r[3];
|
|
/* 0252C85C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0252C860 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252C860 */ _t27 = _t26 & 0x00000001u;
|
|
/* 0252C860 */ if (_t27) goto L_0252C928; else goto L_0252C864;
|
|
L_0252C864: ; // 0x252c864
|
|
/* 0252C864 */ cpu->r[29] = cpu->r[31];
|
|
/* 0252C864 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0252C868 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252C868 */ _t29 = _t28 & 0x00000001u;
|
|
/* 0252C868 */ if (_t29) goto L_0252C86C; else goto L_0252C87C;
|
|
L_0252C86C: ; // 0x252c86c
|
|
/* 0252C86C */ cpu->r[3] = 0x0000008Cu;
|
|
/* 0252C870 */ Gambit_fn_02801A78(cpu);
|
|
/* 0252C874 */ cpu->r[29] = cpu->r[3];
|
|
/* 0252C874 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0252C878 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252C878 */ _t31 = _t30 & 0x00000001u;
|
|
/* 0252C878 */ if (_t31) goto L_0252C8EC; else goto L_0252C87C;
|
|
L_0252C87C: ; // 0x252c87c
|
|
/* 0252C87C */ cpu->r[3] = cpu->r[29];
|
|
/* 0252C87C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252C880 */ cpu->r[28] = 0x10110000u;
|
|
/* 0252C884 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252C884 */ _t33 = _t32 & 0x00000001u;
|
|
/* 0252C884 */ if (_t33) goto L_0252C888; else goto L_0252C8B4;
|
|
L_0252C888: ; // 0x252c888
|
|
/* 0252C888 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0252C88C */ Gambit_fn_02801A78(cpu);
|
|
/* 0252C890 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252C894 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252C894 */ _t35 = _t34 & 0x00000001u;
|
|
/* 0252C894 */ if (_t35) goto L_0252C898; else goto L_0252C8B4;
|
|
L_0252C898: ; // 0x252c898
|
|
/* 0252C898 */ cpu->r[7] = 0x100C0000u;
|
|
/* 0252C89C */ _t36 = cpu->r[28] + 0x00007399u;
|
|
/* 0252C89C */ cpu->r[0] = rbrew_read8(cpu->mem, _t36);
|
|
/* 0252C8A0 */ cpu->r[7] = cpu->r[7] + 0x00003370u;
|
|
/* 0252C8A4 */ _t37 = cpu->r[29] + 0x00000000u;
|
|
/* 0252C8A4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0252C8A8 */ _t38 = cpu->r[29] + 0x00000004u;
|
|
/* 0252C8A8 */ rbrew_write32(cpu->mem, _t38, cpu->r[7]);
|
|
/* 0252C8AC */ _t39 = cpu->r[8] + 0x00000000u;
|
|
/* 0252C8AC */ rbrew_write8(cpu->mem, _t39, (uint8_t)cpu->r[0]);
|
|
/* 0252C8B0 */ goto L_0252C8EC;
|
|
L_0252C8B4: ; // 0x252c8b4
|
|
/* 0252C8B4 */ cpu->r[5] = 0x100C0000u;
|
|
/* 0252C8B8 */ cpu->r[0] = cpu->r[29] + 0x0000000Cu;
|
|
/* 0252C8BC */ cpu->r[5] = cpu->r[5] + 0x00003358u;
|
|
/* 0252C8C0 */ _t40 = cpu->r[3] + 0x00000000u;
|
|
/* 0252C8C0 */ rbrew_write32(cpu->mem, _t40, cpu->r[0]);
|
|
/* 0252C8C4 */ cpu->r[6] = 0x00000080u;
|
|
/* 0252C8C8 */ _t41 = cpu->r[3] + 0x00000004u;
|
|
/* 0252C8C8 */ rbrew_write32(cpu->mem, _t41, cpu->r[5]);
|
|
/* 0252C8CC */ _t42 = cpu->r[3] + 0x00000008u;
|
|
/* 0252C8CC */ rbrew_write32(cpu->mem, _t42, cpu->r[6]);
|
|
/* 0252C8D0 */ _t43 = cpu->r[28] + 0x00007399u;
|
|
/* 0252C8D0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t43);
|
|
/* 0252C8D4 */ cpu->r[7] = 0x100C0000u;
|
|
/* 0252C8D8 */ _t44 = cpu->r[29] + 0x00000000u;
|
|
/* 0252C8D8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t44);
|
|
/* 0252C8DC */ cpu->r[7] = cpu->r[7] + 0x00003370u;
|
|
/* 0252C8E0 */ _t45 = cpu->r[29] + 0x0000008Bu;
|
|
/* 0252C8E0 */ rbrew_write8(cpu->mem, _t45, (uint8_t)cpu->r[0]);
|
|
/* 0252C8E4 */ _t46 = cpu->r[29] + 0x00000004u;
|
|
/* 0252C8E4 */ rbrew_write32(cpu->mem, _t46, cpu->r[7]);
|
|
/* 0252C8E8 */ _t47 = cpu->r[8] + 0x00000000u;
|
|
/* 0252C8E8 */ rbrew_write8(cpu->mem, _t47, (uint8_t)cpu->r[0]);
|
|
L_0252C8EC: ; // 0x252c8ec
|
|
/* 0252C8EC */ cpu->r[9] = 0x100C0000u;
|
|
/* 0252C8F0 */ cpu->r[12] = 0x00000002u;
|
|
/* 0252C8F4 */ cpu->r[9] = cpu->r[9] + 0x00003450u;
|
|
/* 0252C8F8 */ cpu->r[0] = cpu->r[1] + 0x00000090u;
|
|
/* 0252C8FC */ _t48 = cpu->r[31] + 0x00000004u;
|
|
/* 0252C8FC */ rbrew_write32(cpu->mem, _t48, cpu->r[9]);
|
|
/* 0252C900 */ cpu->r[11] = cpu->r[1] + 0x00000018u;
|
|
/* 0252C904 */ _t49 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252C904 */ rbrew_write32(cpu->mem, _t49, cpu->r[0]);
|
|
/* 0252C908 */ cpu->r[0] = 0x00000000u;
|
|
/* 0252C90C */ _t50 = cpu->r[1] + 0x00000010u;
|
|
/* 0252C90C */ rbrew_write32(cpu->mem, _t50, cpu->r[11]);
|
|
/* 0252C910 */ cpu->r[3] = cpu->r[31];
|
|
/* 0252C914 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0252C918 */ _t51 = cpu->r[1] + 0x00000009u;
|
|
/* 0252C918 */ rbrew_write8(cpu->mem, _t51, (uint8_t)cpu->r[0]);
|
|
/* 0252C91C */ cpu->r[4] = cpu->r[30];
|
|
/* 0252C920 */ _t52 = cpu->r[1] + 0x00000008u;
|
|
/* 0252C920 */ rbrew_write8(cpu->mem, _t52, (uint8_t)cpu->r[12]);
|
|
/* 0252C924 */ Gambit_fn_0282A5DC(cpu);
|
|
L_0252C928: ; // 0x252c928
|
|
/* 0252C928 */ _t53 = cpu->r[1] + 0x00000078u;
|
|
/* 0252C928 */ cpu->r[28] = rbrew_read32(cpu->mem, _t53);
|
|
/* 0252C92C */ _t54 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0252C92C */ cpu->r[29] = rbrew_read32(cpu->mem, _t54);
|
|
/* 0252C930 */ _t55 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0252C930 */ cpu->r[0] = rbrew_read32(cpu->mem, _t55);
|
|
/* 0252C934 */ cpu->r[3] = cpu->r[31];
|
|
/* 0252C938 */ _t56 = cpu->r[1] + 0x00000080u;
|
|
/* 0252C938 */ cpu->r[30] = rbrew_read32(cpu->mem, _t56);
|
|
/* 0252C93C */ cpu->lr = cpu->r[0];
|
|
/* 0252C940 */ _t57 = cpu->r[1] + 0x00000084u;
|
|
/* 0252C940 */ cpu->r[31] = rbrew_read32(cpu->mem, _t57);
|
|
/* 0252C944 */ cpu->r[1] = cpu->r[1] + 0x00000088u;
|
|
/* 0252C948 */ return;
|
|
}
|
|
|
|
// fn_0252C94C @ 0x252c94c
|
|
void Gambit_fn_0252C94C(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_0252C94C: ; // 0x252c94c
|
|
/* 0252C94C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252C950 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252C950 */ _t1 = _t0 & 0x00000001u;
|
|
/* 0252C950 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0252C950 */ goto L_0252C954;
|
|
L_0252C954: ; // 0x252c954
|
|
/* 0252C954 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0252C954 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0252C958 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252C958 */ _t3 = _t2 & 0x00000001u;
|
|
/* 0252C958 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0252C958 */ goto L_0252C95C;
|
|
L_0252C95C: ; // 0x252c95c
|
|
/* 0252C95C */ 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_0252C960 @ 0x252c960
|
|
void Gambit_fn_0252C960(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_0252C960: ; // 0x252c960
|
|
/* 0252C960 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252C964 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252C964 */ _t1 = _t0 & 0x00000001u;
|
|
/* 0252C964 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0252C964 */ goto L_0252C968;
|
|
L_0252C968: ; // 0x252c968
|
|
/* 0252C968 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0252C968 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0252C96C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252C96C */ _t3 = _t2 & 0x00000001u;
|
|
/* 0252C96C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0252C96C */ goto L_0252C970;
|
|
L_0252C970: ; // 0x252c970
|
|
/* 0252C970 */ 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_0252C974 @ 0x252c974
|
|
void Gambit_fn_0252C974(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_0252C974: ; // 0x252c974
|
|
/* 0252C974 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252C978 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252C978 */ _t1 = _t0 & 0x00000001u;
|
|
/* 0252C978 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0252C978 */ goto L_0252C97C;
|
|
L_0252C97C: ; // 0x252c97c
|
|
/* 0252C97C */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0252C97C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0252C980 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252C980 */ _t3 = _t2 & 0x00000001u;
|
|
/* 0252C980 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0252C980 */ goto L_0252C984;
|
|
L_0252C984: ; // 0x252c984
|
|
/* 0252C984 */ 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_0252C988 @ 0x252c988
|
|
void Gambit_fn_0252C988(CPUState* cpu) {
|
|
L_0252C988: ; // 0x252c988
|
|
/* 0252C988 */ return;
|
|
}
|
|
|
|
// fn_0252C98C @ 0x252c98c
|
|
void Gambit_fn_0252C98C(CPUState* cpu) {
|
|
L_0252C98C: ; // 0x252c98c
|
|
/* 0252C98C */ return;
|
|
}
|
|
|
|
// fn_0252C990 @ 0x252c990
|
|
void Gambit_fn_0252C990(CPUState* cpu) {
|
|
L_0252C990: ; // 0x252c990
|
|
/* 0252C990 */ return;
|
|
}
|
|
|
|
// fn_0252C994 @ 0x252c994
|
|
void Gambit_fn_0252C994(CPUState* cpu) {
|
|
L_0252C994: ; // 0x252c994
|
|
/* 0252C994 */ return;
|
|
}
|
|
|
|
// fn_0252C998 @ 0x252c998
|
|
void Gambit_fn_0252C998(CPUState* cpu) {
|
|
L_0252C998: ; // 0x252c998
|
|
/* 0252C998 */ return;
|
|
}
|
|
|
|
// fn_0252C99C @ 0x252c99c
|
|
void Gambit_fn_0252C99C(CPUState* cpu) {
|
|
L_0252C99C: ; // 0x252c99c
|
|
/* 0252C99C */ return;
|
|
}
|
|
|
|
// fn_0252C9A0 @ 0x252c9a0
|
|
void Gambit_fn_0252C9A0(CPUState* cpu) {
|
|
L_0252C9A0: ; // 0x252c9a0
|
|
/* 0252C9A0 */ return;
|
|
}
|
|
|
|
// fn_0252C9A4 @ 0x252c9a4
|
|
void Gambit_fn_0252C9A4(CPUState* cpu) {
|
|
L_0252C9A4: ; // 0x252c9a4
|
|
/* 0252C9A4 */ return;
|
|
}
|
|
|
|
// fn_0252C9A8 @ 0x252c9a8
|
|
void Gambit_fn_0252C9A8(CPUState* cpu) {
|
|
L_0252C9A8: ; // 0x252c9a8
|
|
/* 0252C9A8 */ return;
|
|
}
|
|
|
|
// fn_0252C9AC @ 0x252c9ac
|
|
void Gambit_fn_0252C9AC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_0252C9AC: ; // 0x252c9ac
|
|
/* 0252C9AC */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 0252C9AC */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0252C9B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0252C9B4 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252C9B4 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0252C9B4 */ if (_t2) goto L_0252C9C0; else goto L_0252C9B8;
|
|
L_0252C9B8: ; // 0x252c9b8
|
|
/* 0252C9B8 */ cpu->r[3] = cpu->r[12] + 0x00000034u;
|
|
/* 0252C9BC */ return;
|
|
L_0252C9C0: ; // 0x252c9c0
|
|
/* 0252C9C0 */ cpu->r[3] = 0x00000000u;
|
|
/* 0252C9C4 */ return;
|
|
}
|
|
|
|
// fn_0252C9C8 @ 0x252c9c8
|
|
void Gambit_fn_0252C9C8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_0252C9C8: ; // 0x252c9c8
|
|
/* 0252C9C8 */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 0252C9C8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0252C9CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0252C9D0 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252C9D0 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0252C9D0 */ if (_t2) goto L_0252C9DC; else goto L_0252C9D4;
|
|
L_0252C9D4: ; // 0x252c9d4
|
|
/* 0252C9D4 */ cpu->r[3] = cpu->r[12] + 0x00000064u;
|
|
/* 0252C9D8 */ return;
|
|
L_0252C9DC: ; // 0x252c9dc
|
|
/* 0252C9DC */ cpu->r[3] = 0x00000000u;
|
|
/* 0252C9E0 */ return;
|
|
}
|
|
|
|
// fn_0252C9E4 @ 0x252c9e4
|
|
void Gambit_fn_0252C9E4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0252C9E4: ; // 0x252c9e4
|
|
/* 0252C9E4 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0252C9E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0252C9E8 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0252C9E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0252C9EC */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252C9EC */ _t2 = _t1 & 0x00000001u;
|
|
/* 0252C9EC */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 0252C9EC */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0252C9EC */ goto L_0252C9F0;
|
|
L_0252C9F0: ; // 0x252c9f0
|
|
/* 0252C9F0 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 0252C9F0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0252C9F4 */ _t5 = cpu->r[12] + 0x0000004Cu;
|
|
/* 0252C9F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0252C9F8 */ cpu->ctr = cpu->r[0];
|
|
/* 0252C9FC */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0252CA00 @ 0x252ca00
|
|
void Gambit_fn_0252CA00(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0252CA00: ; // 0x252ca00
|
|
/* 0252CA00 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0252CA00 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0252CA04 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Du, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0252CA04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0252CA08 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252CA08 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0252CA08 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 0252CA08 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0252CA08 */ goto L_0252CA0C;
|
|
L_0252CA0C: ; // 0x252ca0c
|
|
/* 0252CA0C */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 0252CA0C */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0252CA10 */ _t5 = cpu->r[12] + 0x0000005Cu;
|
|
/* 0252CA10 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0252CA14 */ cpu->ctr = cpu->r[0];
|
|
/* 0252CA18 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0252CA1C @ 0x252ca1c
|
|
void Gambit_fn_0252CA1C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0252CA1C: ; // 0x252ca1c
|
|
/* 0252CA1C */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0252CA1C */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0252CA20 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Au, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0252CA20 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0252CA24 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252CA24 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0252CA24 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 0252CA24 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0252CA24 */ goto L_0252CA28;
|
|
L_0252CA28: ; // 0x252ca28
|
|
/* 0252CA28 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 0252CA28 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0252CA2C */ _t5 = cpu->r[11] + 0x00000074u;
|
|
/* 0252CA2C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0252CA30 */ cpu->ctr = cpu->r[0];
|
|
/* 0252CA34 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0252CA38 @ 0x252ca38
|
|
void Gambit_fn_0252CA38(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0252CA38: ; // 0x252ca38
|
|
/* 0252CA38 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0252CA38 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0252CA3C */ _t1 = cpu->r[12] + 0x0000002Cu;
|
|
/* 0252CA3C */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0252CA40 */ cpu->ctr = cpu->r[0];
|
|
/* 0252CA44 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0252CA48 @ 0x252ca48
|
|
void Gambit_fn_0252CA48(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0252CA48: ; // 0x252ca48
|
|
/* 0252CA48 */ cpu->r[0] = cpu->lr;
|
|
/* 0252CA4C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0252CA4C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252CA4C */ cpu->r[1] = _t0;
|
|
/* 0252CA50 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252CA50 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0252CA54 */ cpu->r[31] = cpu->r[3];
|
|
/* 0252CA58 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0252CA58 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0252CA5C */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0252CA5C */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0252CA60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 0252CA64 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252CA64 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0252CA64 */ if (_t5) goto L_0252CA68; else goto L_0252CA84;
|
|
L_0252CA68: ; // 0x252ca68
|
|
/* 0252CA68 */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 0252CA68 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0252CA6C */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 0252CA6C */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0252CA70 */ cpu->ctr = cpu->r[0];
|
|
/* 0252CA74 */ cpu->r[3] = cpu->r[31];
|
|
/* 0252CA78 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252CA7C */ cpu->r[0] = 0x00000002u;
|
|
/* 0252CA80 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0252CA80 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_0252CA84: ; // 0x252ca84
|
|
/* 0252CA84 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0252CA84 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0252CA88 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252CA88 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0252CA8C */ cpu->lr = cpu->r[0];
|
|
/* 0252CA90 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0252CA94 */ return;
|
|
}
|
|
|
|
// fn_0252CA4C @ 0x252ca4c
|
|
void Gambit_fn_0252CA4C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0252CA4C: ; // 0x252ca4c
|
|
/* 0252CA4C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0252CA4C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252CA4C */ cpu->r[1] = _t0;
|
|
/* 0252CA50 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252CA50 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0252CA54 */ cpu->r[31] = cpu->r[3];
|
|
/* 0252CA58 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0252CA58 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0252CA5C */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0252CA5C */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0252CA60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 0252CA64 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252CA64 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0252CA64 */ if (_t5) goto L_0252CA68; else goto L_0252CA84;
|
|
L_0252CA68: ; // 0x252ca68
|
|
/* 0252CA68 */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 0252CA68 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0252CA6C */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 0252CA6C */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0252CA70 */ cpu->ctr = cpu->r[0];
|
|
/* 0252CA74 */ cpu->r[3] = cpu->r[31];
|
|
/* 0252CA78 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252CA7C */ cpu->r[0] = 0x00000002u;
|
|
/* 0252CA80 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0252CA80 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_0252CA84: ; // 0x252ca84
|
|
/* 0252CA84 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0252CA84 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0252CA88 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252CA88 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0252CA8C */ cpu->lr = cpu->r[0];
|
|
/* 0252CA90 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0252CA94 */ return;
|
|
}
|
|
|
|
// fn_0252CAA0 @ 0x252caa0
|
|
void Gambit_fn_0252CAA0(CPUState* cpu) {
|
|
L_0252CAA0: ; // 0x252caa0
|
|
/* 0252CAA0 */ return;
|
|
}
|
|
|
|
// fn_0252CAA4 @ 0x252caa4
|
|
void Gambit_fn_0252CAA4(CPUState* cpu) {
|
|
L_0252CAA4: ; // 0x252caa4
|
|
/* 0252CAA4 */ return;
|
|
}
|
|
|
|
// fn_0252CAA8 @ 0x252caa8
|
|
void Gambit_fn_0252CAA8(CPUState* cpu) {
|
|
L_0252CAA8: ; // 0x252caa8
|
|
/* 0252CAA8 */ cpu->r[3] = 0x00000001u;
|
|
/* 0252CAAC */ return;
|
|
}
|
|
|
|
// fn_0252CAB0 @ 0x252cab0
|
|
void Gambit_fn_0252CAB0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_02319BA8: ; // 0x2319ba8
|
|
/* 02319BA8 */ cpu->r[0] = cpu->lr;
|
|
/* 02319BAC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02319BAC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02319BAC */ cpu->r[1] = _t0;
|
|
/* 02319BB0 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02319BB0 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02319BB4 */ cpu->r[30] = cpu->r[4];
|
|
/* 02319BB8 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02319BB8 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02319BBC */ cpu->r[31] = cpu->r[3];
|
|
/* 02319BC0 */ cpu->r[3] = cpu->r[30];
|
|
/* 02319BC4 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02319BC4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02319BC8 */ Gambit_fn_02834430(cpu);
|
|
/* 02319BCC */ cpu->r[3] = cpu->r[30];
|
|
/* 02319BD0 */ Gambit_fn_02834450(cpu);
|
|
/* 02319BD4 */ _t4 = cpu->r[31] + 0x00000054u;
|
|
/* 02319BD4 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[1]);
|
|
/* 02319BD8 */ cpu->r[3] = cpu->r[30];
|
|
/* 02319BDC */ Gambit_fn_02834450(cpu);
|
|
/* 02319BE0 */ _t5 = cpu->r[31] + 0x00000058u;
|
|
/* 02319BE0 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[1]);
|
|
/* 02319BE4 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02319BE4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02319BE8 */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 02319BE8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02319BEC */ cpu->lr = cpu->r[0];
|
|
/* 02319BF0 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02319BF0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02319BF4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02319BF8 */ return;
|
|
L_0252CAB0: ; // 0x252cab0
|
|
/* 0252CAB0 */ goto L_02319BA8;
|
|
}
|
|
|
|
// fn_0252CAB4 @ 0x252cab4
|
|
void Gambit_fn_0252CAB4(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_0252CAB4: ; // 0x252cab4
|
|
/* 0252CAB4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252CAB8 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252CAB8 */ _t1 = _t0 & 0x00000001u;
|
|
/* 0252CAB8 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0252CAB8 */ goto L_0252CABC;
|
|
L_0252CABC: ; // 0x252cabc
|
|
/* 0252CABC */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0252CABC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0252CAC0 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252CAC0 */ _t3 = _t2 & 0x00000001u;
|
|
/* 0252CAC0 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0252CAC0 */ goto L_0252CAC4;
|
|
L_0252CAC4: ; // 0x252cac4
|
|
/* 0252CAC4 */ 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_0252CAC8 @ 0x252cac8
|
|
void Gambit_fn_0252CAC8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0252CAC8: ; // 0x252cac8
|
|
/* 0252CAC8 */ cpu->r[10] = 0x101F0000u;
|
|
/* 0252CACC */ _t0 = cpu->r[10] + 0x00006338u;
|
|
/* 0252CACC */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0252CACC */ cpu->r[10] = _t0;
|
|
/* 0252CAD0 */ _t1 = cpu->r[3] + 0x00000000u;
|
|
/* 0252CAD0 */ rbrew_write32(cpu->mem, _t1, cpu->r[11]);
|
|
/* 0252CAD4 */ _t2 = cpu->r[10] + 0x00000004u;
|
|
/* 0252CAD4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0252CAD8 */ _t3 = cpu->r[3] + 0x00000004u;
|
|
/* 0252CAD8 */ rbrew_write32(cpu->mem, _t3, cpu->r[12]);
|
|
/* 0252CADC */ _t4 = cpu->r[10] + 0x00000008u;
|
|
/* 0252CADC */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0252CAE0 */ _t5 = cpu->r[3] + 0x00000008u;
|
|
/* 0252CAE0 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0252CAE4 */ return;
|
|
}
|
|
|
|
// fn_0252CAE8 @ 0x252cae8
|
|
void Gambit_fn_0252CAE8(CPUState* cpu) {
|
|
L_0252CAE8: ; // 0x252cae8
|
|
/* 0252CAE8 */ return;
|
|
}
|
|
|
|
// fn_0252CAEC @ 0x252caec
|
|
void Gambit_fn_0252CAEC(CPUState* cpu) {
|
|
L_0252CAEC: ; // 0x252caec
|
|
/* 0252CAEC */ return;
|
|
}
|
|
|
|
// fn_0252CAF0 @ 0x252caf0
|
|
void Gambit_fn_0252CAF0(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0252CAF0: ; // 0x252caf0
|
|
/* 0252CAF0 */ _t0 = cpu->r[3] + 0x00000140u;
|
|
/* 0252CAF0 */ cpu->r[3] = rbrew_read8(cpu->mem, _t0);
|
|
/* 0252CAF4 */ return;
|
|
}
|
|
|
|
// fn_0252CAF8 @ 0x252caf8
|
|
void Gambit_fn_0252CAF8(CPUState* cpu) {
|
|
L_0252CAF8: ; // 0x252caf8
|
|
/* 0252CAF8 */ cpu->r[3] = 0x00000001u;
|
|
/* 0252CAFC */ return;
|
|
}
|
|
|
|
// fn_0252CB00 @ 0x252cb00
|
|
void Gambit_fn_0252CB00(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0252CB00: ; // 0x252cb00
|
|
/* 0252CB00 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0252CB00 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0252CB04 */ _t1 = cpu->r[12] + 0x00000234u;
|
|
/* 0252CB04 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0252CB08 */ cpu->ctr = cpu->r[0];
|
|
/* 0252CB0C */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0252CB10 @ 0x252cb10
|
|
void Gambit_fn_0252CB10(CPUState* cpu) {
|
|
L_0252CB10: ; // 0x252cb10
|
|
/* 0252CB10 */ return;
|
|
}
|
|
|
|
// fn_0252CB14 @ 0x252cb14
|
|
void Gambit_fn_0252CB14(CPUState* cpu) {
|
|
L_0252CB14: ; // 0x252cb14
|
|
/* 0252CB14 */ return;
|
|
}
|
|
|
|
// fn_0252CB18 @ 0x252cb18
|
|
void Gambit_fn_0252CB18(CPUState* cpu) {
|
|
L_0252CB18: ; // 0x252cb18
|
|
/* 0252CB18 */ return;
|
|
}
|
|
|
|
// fn_0252CB1C @ 0x252cb1c
|
|
void Gambit_fn_0252CB1C(CPUState* cpu) {
|
|
L_0252CB1C: ; // 0x252cb1c
|
|
/* 0252CB1C */ return;
|
|
}
|
|
|
|
// fn_0252CB20 @ 0x252cb20
|
|
void Gambit_fn_0252CB20(CPUState* cpu) {
|
|
L_0252CB20: ; // 0x252cb20
|
|
/* 0252CB20 */ return;
|
|
}
|
|
|
|
// fn_0252CB24 @ 0x252cb24
|
|
void Gambit_fn_0252CB24(CPUState* cpu) {
|
|
L_0252CB24: ; // 0x252cb24
|
|
/* 0252CB24 */ return;
|
|
}
|
|
|
|
// fn_0252CB28 @ 0x252cb28
|
|
void Gambit_fn_0252CB28(CPUState* cpu) {
|
|
L_0252CB28: ; // 0x252cb28
|
|
/* 0252CB28 */ return;
|
|
}
|
|
|
|
// fn_0252CB2C @ 0x252cb2c
|
|
void Gambit_fn_0252CB2C(CPUState* cpu) {
|
|
L_0252CB2C: ; // 0x252cb2c
|
|
/* 0252CB2C */ return;
|
|
}
|
|
|
|
// fn_0252CB30 @ 0x252cb30
|
|
void Gambit_fn_0252CB30(CPUState* cpu) {
|
|
L_0252CB30: ; // 0x252cb30
|
|
/* 0252CB30 */ return;
|
|
}
|
|
|
|
// fn_0252CB34 @ 0x252cb34
|
|
void Gambit_fn_0252CB34(CPUState* cpu) {
|
|
L_0252CB34: ; // 0x252cb34
|
|
/* 0252CB34 */ cpu->r[3] = 0x00000000u;
|
|
/* 0252CB38 */ return;
|
|
}
|
|
|
|
// fn_0252CB3C @ 0x252cb3c
|
|
void Gambit_fn_0252CB3C(CPUState* cpu) {
|
|
L_0252CB3C: ; // 0x252cb3c
|
|
/* 0252CB3C */ return;
|
|
}
|
|
|
|
// fn_0252CB40 @ 0x252cb40
|
|
void Gambit_fn_0252CB40(CPUState* cpu) {
|
|
L_0252CB40: ; // 0x252cb40
|
|
/* 0252CB40 */ return;
|
|
}
|
|
|
|
// fn_0252CB44 @ 0x252cb44
|
|
void Gambit_fn_0252CB44(CPUState* cpu) {
|
|
L_0252CB44: ; // 0x252cb44
|
|
/* 0252CB44 */ cpu->r[3] = 0x00000001u;
|
|
/* 0252CB48 */ return;
|
|
}
|
|
|
|
// fn_0252CB4C @ 0x252cb4c
|
|
void Gambit_fn_0252CB4C(CPUState* cpu) {
|
|
L_0252CB4C: ; // 0x252cb4c
|
|
/* 0252CB4C */ cpu->r[3] = 0x00000000u;
|
|
/* 0252CB50 */ return;
|
|
}
|
|
|
|
// fn_0252CB54 @ 0x252cb54
|
|
void Gambit_fn_0252CB54(CPUState* cpu) {
|
|
L_0252CB54: ; // 0x252cb54
|
|
/* 0252CB54 */ cpu->r[3] = 0x00000000u;
|
|
/* 0252CB58 */ return;
|
|
}
|
|
|
|
// fn_0252CB5C @ 0x252cb5c
|
|
void Gambit_fn_0252CB5C(CPUState* cpu) {
|
|
L_0252CB5C: ; // 0x252cb5c
|
|
/* 0252CB5C */ cpu->r[3] = 0x00000000u;
|
|
/* 0252CB60 */ return;
|
|
}
|
|
|
|
// fn_0252CB64 @ 0x252cb64
|
|
void Gambit_fn_0252CB64(CPUState* cpu) {
|
|
L_0252CB64: ; // 0x252cb64
|
|
/* 0252CB64 */ cpu->r[3] = 0x00000000u;
|
|
/* 0252CB68 */ return;
|
|
}
|
|
|
|
// fn_0252CB6C @ 0x252cb6c
|
|
void Gambit_fn_0252CB6C(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0252CB6C: ; // 0x252cb6c
|
|
/* 0252CB6C */ _t0 = cpu->r[3] + 0x000000E4u;
|
|
/* 0252CB6C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 0252CB70 */ return;
|
|
}
|
|
|
|
// fn_0252CB74 @ 0x252cb74
|
|
void Gambit_fn_0252CB74(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0252CB74: ; // 0x252cb74
|
|
/* 0252CB74 */ _t0 = cpu->r[4] + 0x00000078u;
|
|
/* 0252CB74 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0252CB78 */ _t1 = cpu->r[3] + 0x00000000u;
|
|
/* 0252CB78 */ rbrew_write32(cpu->mem, _t1, cpu->r[12]);
|
|
/* 0252CB7C */ _t2 = cpu->r[4] + 0x0000007Cu;
|
|
/* 0252CB7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0252CB80 */ _t3 = cpu->r[3] + 0x00000004u;
|
|
/* 0252CB80 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0252CB84 */ _t4 = cpu->r[4] + 0x00000080u;
|
|
/* 0252CB84 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0252CB88 */ _t5 = cpu->r[3] + 0x00000008u;
|
|
/* 0252CB88 */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 0252CB8C */ return;
|
|
}
|
|
|
|
// fn_0252CB90 @ 0x252cb90
|
|
void Gambit_fn_0252CB90(CPUState* cpu) {
|
|
L_0252CB90: ; // 0x252cb90
|
|
/* 0252CB90 */ cpu->r[3] = 0x100C0000u;
|
|
/* 0252CB94 */ cpu->r[3] = cpu->r[3] + 0x0000347Cu;
|
|
/* 0252CB98 */ return;
|
|
}
|
|
|
|
// fn_0252CB9C @ 0x252cb9c
|
|
void Gambit_fn_0252CB9C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32;
|
|
|
|
L_0252CB9C: ; // 0x252cb9c
|
|
/* 0252CB9C */ cpu->r[10] = 0x101D0000u;
|
|
/* 0252CBA0 */ _t0 = cpu->r[10] + 0xFFFFEA60u;
|
|
/* 0252CBA0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0252CBA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0252CBA8 */ cpu->r[10] = 0x101D0000u;
|
|
/* 0252CBAC */ cpu->r[10] = cpu->r[10] + 0x00000A00u;
|
|
/* 0252CBB0 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252CBB0 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0252CBB0 */ if (_t2) goto L_0252CBB4; else goto L_0252CBCC;
|
|
L_0252CBB4: ; // 0x252cbb4
|
|
/* 0252CBB4 */ cpu->r[0] = 0x100C0000u;
|
|
/* 0252CBB8 */ cpu->r[9] = 0x00000001u;
|
|
/* 0252CBBC */ cpu->r[11] = 0x101D0000u;
|
|
/* 0252CBC0 */ cpu->r[0] = cpu->r[0] + 0x00003430u;
|
|
/* 0252CBC4 */ _t3 = cpu->r[11] + 0xFFFFEA60u;
|
|
/* 0252CBC4 */ rbrew_write32(cpu->mem, _t3, cpu->r[9]);
|
|
/* 0252CBC8 */ _t4 = cpu->r[10] + 0x00000000u;
|
|
/* 0252CBC8 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
L_0252CBCC: ; // 0x252cbcc
|
|
/* 0252CBCC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[10]);
|
|
/* 0252CBD0 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252CBD0 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0252CBD0 */ if (_t6) goto L_0252CBD4; else goto L_0252CBDC;
|
|
L_0252CBD4: ; // 0x252cbd4
|
|
/* 0252CBD4 */ cpu->r[3] = 0x00000001u;
|
|
/* 0252CBD8 */ return;
|
|
L_0252CBDC: ; // 0x252cbdc
|
|
/* 0252CBDC */ cpu->r[9] = 0x101D0000u;
|
|
/* 0252CBE0 */ _t7 = cpu->r[9] + 0xFFFFDDF0u;
|
|
/* 0252CBE0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0252CBE4 */ cpu->r[11] = 0x101D0000u;
|
|
/* 0252CBE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0252CBEC */ cpu->r[11] = cpu->r[11] + 0xFFFFFF40u;
|
|
/* 0252CBF0 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252CBF0 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0252CBF0 */ if (_t9) goto L_0252CBF4; else goto L_0252CC0C;
|
|
L_0252CBF4: ; // 0x252cbf4
|
|
/* 0252CBF4 */ cpu->r[9] = 0x100C0000u;
|
|
/* 0252CBF8 */ cpu->r[0] = 0x00000001u;
|
|
/* 0252CBFC */ cpu->r[10] = 0x101D0000u;
|
|
/* 0252CC00 */ cpu->r[9] = cpu->r[9] + 0x00003410u;
|
|
/* 0252CC04 */ _t10 = cpu->r[10] + 0xFFFFDDF0u;
|
|
/* 0252CC04 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 0252CC08 */ _t11 = cpu->r[11] + 0x00000000u;
|
|
/* 0252CC08 */ rbrew_write32(cpu->mem, _t11, cpu->r[9]);
|
|
L_0252CC0C: ; // 0x252cc0c
|
|
/* 0252CC0C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[11]);
|
|
/* 0252CC10 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252CC10 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0252CC10 */ if (_t13) goto L_0252CC14; else goto L_0252CC1C;
|
|
L_0252CC14: ; // 0x252cc14
|
|
/* 0252CC14 */ cpu->r[0] = 0x00000001u;
|
|
/* 0252CC18 */ goto L_0252CCD4;
|
|
L_0252CC1C: ; // 0x252cc1c
|
|
/* 0252CC1C */ cpu->r[11] = 0x101D0000u;
|
|
/* 0252CC20 */ _t14 = cpu->r[11] + 0xFFFFDA10u;
|
|
/* 0252CC20 */ cpu->r[11] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0252CC24 */ cpu->r[9] = 0x101D0000u;
|
|
/* 0252CC28 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0252CC2C */ cpu->r[9] = cpu->r[9] + 0xFFFFFBBCu;
|
|
/* 0252CC30 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252CC30 */ _t16 = _t15 & 0x00000001u;
|
|
/* 0252CC30 */ if (_t16) goto L_0252CC34; else goto L_0252CC4C;
|
|
L_0252CC34: ; // 0x252cc34
|
|
/* 0252CC34 */ cpu->r[11] = 0x100C0000u;
|
|
/* 0252CC38 */ cpu->r[10] = 0x00000001u;
|
|
/* 0252CC3C */ cpu->r[12] = 0x101D0000u;
|
|
/* 0252CC40 */ cpu->r[11] = cpu->r[11] + 0x00003400u;
|
|
/* 0252CC44 */ _t17 = cpu->r[12] + 0xFFFFDA10u;
|
|
/* 0252CC44 */ rbrew_write32(cpu->mem, _t17, cpu->r[10]);
|
|
/* 0252CC48 */ _t18 = cpu->r[9] + 0x00000000u;
|
|
/* 0252CC48 */ rbrew_write32(cpu->mem, _t18, cpu->r[11]);
|
|
L_0252CC4C: ; // 0x252cc4c
|
|
/* 0252CC4C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[9]);
|
|
/* 0252CC50 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252CC50 */ _t20 = _t19 & 0x00000001u;
|
|
/* 0252CC50 */ if (_t20) goto L_0252CC54; else goto L_0252CC5C;
|
|
L_0252CC54: ; // 0x252cc54
|
|
/* 0252CC54 */ cpu->r[0] = 0x00000001u;
|
|
/* 0252CC58 */ goto L_0252CCD0;
|
|
L_0252CC5C: ; // 0x252cc5c
|
|
/* 0252CC5C */ cpu->r[9] = 0x101D0000u;
|
|
/* 0252CC60 */ _t21 = cpu->r[9] + 0xFFFFD4E8u;
|
|
/* 0252CC60 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0252CC60 */ cpu->r[9] = _t21;
|
|
/* 0252CC64 */ cpu->r[10] = 0x101D0000u;
|
|
/* 0252CC68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0252CC6C */ cpu->r[10] = cpu->r[10] + 0xFFFFD4ECu;
|
|
/* 0252CC70 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252CC70 */ _t23 = _t22 & 0x00000001u;
|
|
/* 0252CC70 */ if (_t23) goto L_0252CC74; else goto L_0252CC88;
|
|
L_0252CC74: ; // 0x252cc74
|
|
/* 0252CC74 */ cpu->r[0] = 0x100C0000u;
|
|
/* 0252CC78 */ cpu->r[11] = 0x00000001u;
|
|
/* 0252CC7C */ cpu->r[0] = cpu->r[0] + 0x000033F0u;
|
|
/* 0252CC80 */ _t24 = cpu->r[9] + 0x00000000u;
|
|
/* 0252CC80 */ rbrew_write32(cpu->mem, _t24, cpu->r[11]);
|
|
/* 0252CC84 */ _t25 = cpu->r[10] + 0x00000000u;
|
|
/* 0252CC84 */ rbrew_write32(cpu->mem, _t25, cpu->r[0]);
|
|
L_0252CC88: ; // 0x252cc88
|
|
/* 0252CC88 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[10]);
|
|
/* 0252CC8C */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252CC8C */ _t27 = _t26 & 0x00000001u;
|
|
/* 0252CC8C */ if (_t27) goto L_0252CC90; else goto L_0252CC98;
|
|
L_0252CC90: ; // 0x252cc90
|
|
/* 0252CC90 */ cpu->r[0] = 0x00000001u;
|
|
/* 0252CC94 */ goto L_0252CCD0;
|
|
L_0252CC98: ; // 0x252cc98
|
|
/* 0252CC98 */ cpu->r[10] = 0x101D0000u;
|
|
/* 0252CC9C */ _t28 = cpu->r[10] + 0xFFFFD4E0u;
|
|
/* 0252CC9C */ cpu->r[9] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0252CC9C */ cpu->r[10] = _t28;
|
|
/* 0252CCA0 */ cpu->r[11] = 0x101D0000u;
|
|
/* 0252CCA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0252CCA8 */ cpu->r[11] = cpu->r[11] + 0xFFFFD4E4u;
|
|
/* 0252CCAC */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252CCAC */ _t30 = _t29 & 0x00000001u;
|
|
/* 0252CCAC */ if (_t30) goto L_0252CCB0; else goto L_0252CCC4;
|
|
L_0252CCB0: ; // 0x252ccb0
|
|
/* 0252CCB0 */ cpu->r[9] = 0x100C0000u;
|
|
/* 0252CCB4 */ cpu->r[0] = 0x00000001u;
|
|
/* 0252CCB8 */ cpu->r[9] = cpu->r[9] + 0x00003330u;
|
|
/* 0252CCBC */ _t31 = cpu->r[10] + 0x00000000u;
|
|
/* 0252CCBC */ rbrew_write32(cpu->mem, _t31, cpu->r[0]);
|
|
/* 0252CCC0 */ _t32 = cpu->r[11] + 0x00000000u;
|
|
/* 0252CCC0 */ rbrew_write32(cpu->mem, _t32, cpu->r[9]);
|
|
L_0252CCC4: ; // 0x252ccc4
|
|
/* 0252CCC4 */ cpu->r[0] = cpu->r[4] ^ cpu->r[11];
|
|
/* 0252CCC8 */ cpu->r[0] = rbrew_clz32(cpu->r[0]);
|
|
/* 0252CCCC */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
L_0252CCD0: ; // 0x252ccd0
|
|
/* 0252CCD0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
L_0252CCD4: ; // 0x252ccd4
|
|
/* 0252CCD4 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 0252CCD8 */ return;
|
|
}
|
|
|
|
// fn_0252CCDC @ 0x252ccdc
|
|
void Gambit_fn_0252CCDC(CPUState* cpu) {
|
|
L_0252CCDC: ; // 0x252ccdc
|
|
/* 0252CCDC */ return;
|
|
}
|
|
|
|
// fn_0252CCE0 @ 0x252cce0
|
|
void Gambit_fn_0252CCE0(CPUState* cpu) {
|
|
L_0252CCE0: ; // 0x252cce0
|
|
/* 0252CCE0 */ return;
|
|
}
|
|
|
|
// fn_0252CCE4 @ 0x252cce4
|
|
void Gambit_fn_0252CCE4(CPUState* cpu) {
|
|
L_0252CCE4: ; // 0x252cce4
|
|
/* 0252CCE4 */ return;
|
|
}
|
|
|
|
// fn_0252CCE8 @ 0x252cce8
|
|
void Gambit_fn_0252CCE8(CPUState* cpu) {
|
|
L_0252CCE8: ; // 0x252cce8
|
|
/* 0252CCE8 */ cpu->r[3] = 0x00000002u;
|
|
/* 0252CCEC */ return;
|
|
}
|
|
|
|
// fn_0252CCF0 @ 0x252ccf0
|
|
void Gambit_fn_0252CCF0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0205FD24: ; // 0x205fd24
|
|
/* 0205FD24 */ cpu->r[0] = cpu->lr;
|
|
/* 0205FD28 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0205FD28 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0205FD28 */ cpu->r[1] = _t0;
|
|
/* 0205FD2C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0205FD2C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0205FD30 */ cpu->r[31] = cpu->r[3];
|
|
/* 0205FD34 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0205FD34 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0205FD38 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 0205FD38 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0205FD3C */ cpu->r[12] = 0x00000000u;
|
|
/* 0205FD40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0205FD44 */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 0205FD44 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 0205FD48 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0205FD48 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0205FD48 */ if (_t6) goto L_0205FD70; else goto L_0205FD4C;
|
|
L_0205FD4C: ; // 0x205fd4c
|
|
/* 0205FD4C */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0205FD4C */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 0205FD50 */ /* nop */
|
|
/* 0205FD54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 0205FD58 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0205FD58 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0205FD58 */ if (_t9) goto L_0205FD5C; else goto L_0205FD70;
|
|
L_0205FD5C: ; // 0x205fd5c
|
|
/* 0205FD5C */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 0205FD5C */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0205FD60 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 0205FD60 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0205FD64 */ cpu->ctr = cpu->r[0];
|
|
/* 0205FD68 */ cpu->r[3] = cpu->r[31];
|
|
/* 0205FD6C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0205FD70: ; // 0x205fd70
|
|
/* 0205FD70 */ cpu->r[3] = cpu->r[31];
|
|
/* 0205FD74 */ Gambit_fn_0205FC9C(cpu);
|
|
/* 0205FD78 */ cpu->r[3] = cpu->r[31];
|
|
/* 0205FD7C */ Gambit_fn_027FC37C(cpu);
|
|
/* 0205FD80 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0205FD80 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0205FD84 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0205FD84 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0205FD88 */ cpu->lr = cpu->r[0];
|
|
/* 0205FD8C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0205FD90 */ return;
|
|
L_0252CCF0: ; // 0x252ccf0
|
|
/* 0252CCF0 */ cpu->r[3] = cpu->r[3] + 0x000001B0u;
|
|
/* 0252CCF4 */ goto L_0205FD24;
|
|
}
|
|
|
|
// fn_0252CCF8 @ 0x252ccf8
|
|
void Gambit_fn_0252CCF8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0252CCF8: ; // 0x252ccf8
|
|
/* 0252CCF8 */ cpu->r[0] = cpu->lr;
|
|
/* 0252CCFC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0252CCFC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252CCFC */ cpu->r[1] = _t0;
|
|
/* 0252CD00 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252CD00 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0252CD04 */ cpu->r[31] = cpu->r[3];
|
|
/* 0252CD08 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0252CD08 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0252CD0C */ _t3 = cpu->r[31] + 0x000001BEu;
|
|
/* 0252CD0C */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0252CD10 */ cpu->r[3] = cpu->r[31] + 0x000001B0u;
|
|
/* 0252CD14 */ /* nop */
|
|
/* 0252CD18 */ Gambit_fn_027FC35C(cpu);
|
|
/* 0252CD1C */ cpu->r[3] = cpu->r[31] + 0x000001B0u;
|
|
/* 0252CD20 */ Gambit_fn_0205FC14(cpu);
|
|
/* 0252CD24 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 0252CD24 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0252CD28 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252CD28 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0252CD2C */ cpu->lr = cpu->r[0];
|
|
/* 0252CD30 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0252CD34 */ return;
|
|
}
|
|
|
|
// fn_0252CCFC @ 0x252ccfc
|
|
void Gambit_fn_0252CCFC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0252CCFC: ; // 0x252ccfc
|
|
/* 0252CCFC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0252CCFC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252CCFC */ cpu->r[1] = _t0;
|
|
/* 0252CD00 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252CD00 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0252CD04 */ cpu->r[31] = cpu->r[3];
|
|
/* 0252CD08 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0252CD08 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0252CD0C */ _t3 = cpu->r[31] + 0x000001BEu;
|
|
/* 0252CD0C */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0252CD10 */ cpu->r[3] = cpu->r[31] + 0x000001B0u;
|
|
/* 0252CD14 */ /* nop */
|
|
/* 0252CD18 */ Gambit_fn_027FC35C(cpu);
|
|
/* 0252CD1C */ cpu->r[3] = cpu->r[31] + 0x000001B0u;
|
|
/* 0252CD20 */ Gambit_fn_0205FC14(cpu);
|
|
/* 0252CD24 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 0252CD24 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0252CD28 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252CD28 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0252CD2C */ cpu->lr = cpu->r[0];
|
|
/* 0252CD30 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0252CD34 */ return;
|
|
}
|
|
|
|
// fn_0252CD38 @ 0x252cd38
|
|
void Gambit_fn_0252CD38(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_0252CD38: ; // 0x252cd38
|
|
/* 0252CD38 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0252CD3C */ _t0 = cpu->r[12] + 0xFFFFEA64u;
|
|
/* 0252CD3C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0252CD40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0252CD44 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0252CD48 */ cpu->r[12] = cpu->r[12] + 0x00000A04u;
|
|
/* 0252CD4C */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252CD4C */ _t2 = _t1 & 0x00000001u;
|
|
/* 0252CD4C */ if (_t2) goto L_0252CD50; else goto L_0252CD68;
|
|
L_0252CD50: ; // 0x252cd50
|
|
/* 0252CD50 */ cpu->r[0] = 0x100C0000u;
|
|
/* 0252CD54 */ cpu->r[9] = 0x00000001u;
|
|
/* 0252CD58 */ cpu->r[8] = 0x101D0000u;
|
|
/* 0252CD5C */ cpu->r[0] = cpu->r[0] + 0x00003420u;
|
|
/* 0252CD60 */ _t3 = cpu->r[8] + 0xFFFFEA64u;
|
|
/* 0252CD60 */ rbrew_write32(cpu->mem, _t3, cpu->r[9]);
|
|
/* 0252CD64 */ _t4 = cpu->r[12] + 0x00000000u;
|
|
/* 0252CD64 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
L_0252CD68: ; // 0x252cd68
|
|
/* 0252CD68 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]);
|
|
/* 0252CD6C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252CD6C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0252CD6C */ if (_t6) goto L_0252CD70; else goto L_0252CD78;
|
|
L_0252CD70: ; // 0x252cd70
|
|
/* 0252CD70 */ cpu->r[3] = 0x00000001u;
|
|
/* 0252CD74 */ return;
|
|
L_0252CD78: ; // 0x252cd78
|
|
/* 0252CD78 */ cpu->r[11] = 0x101D0000u;
|
|
/* 0252CD7C */ _t7 = cpu->r[11] + 0xFFFFE6D4u;
|
|
/* 0252CD7C */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0252CD7C */ cpu->r[11] = _t7;
|
|
/* 0252CD80 */ cpu->r[10] = 0x101D0000u;
|
|
/* 0252CD84 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0252CD88 */ cpu->r[10] = cpu->r[10] + 0x000006A4u;
|
|
/* 0252CD8C */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252CD8C */ _t9 = _t8 & 0x00000001u;
|
|
/* 0252CD8C */ if (_t9) goto L_0252CD90; else goto L_0252CDA4;
|
|
L_0252CD90: ; // 0x252cd90
|
|
/* 0252CD90 */ cpu->r[12] = 0x100C0000u;
|
|
/* 0252CD94 */ cpu->r[9] = 0x00000001u;
|
|
/* 0252CD98 */ cpu->r[12] = cpu->r[12] + 0x000033B0u;
|
|
/* 0252CD9C */ _t10 = cpu->r[11] + 0x00000000u;
|
|
/* 0252CD9C */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 0252CDA0 */ _t11 = cpu->r[10] + 0x00000000u;
|
|
/* 0252CDA0 */ rbrew_write32(cpu->mem, _t11, cpu->r[12]);
|
|
L_0252CDA4: ; // 0x252cda4
|
|
/* 0252CDA4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[10]);
|
|
/* 0252CDA8 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252CDA8 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0252CDA8 */ if (_t13) goto L_0252CDAC; else goto L_0252CDB4;
|
|
L_0252CDAC: ; // 0x252cdac
|
|
/* 0252CDAC */ cpu->r[0] = 0x00000001u;
|
|
/* 0252CDB0 */ goto L_0252CDEC;
|
|
L_0252CDB4: ; // 0x252cdb4
|
|
/* 0252CDB4 */ cpu->r[8] = 0x101D0000u;
|
|
/* 0252CDB8 */ _t14 = cpu->r[8] + 0xFFFFDA34u;
|
|
/* 0252CDB8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0252CDB8 */ cpu->r[8] = _t14;
|
|
/* 0252CDBC */ cpu->r[11] = 0x101D0000u;
|
|
/* 0252CDC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0252CDC4 */ cpu->r[11] = cpu->r[11] + 0xFFFFDDE4u;
|
|
/* 0252CDC8 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252CDC8 */ _t16 = _t15 & 0x00000001u;
|
|
/* 0252CDC8 */ if (_t16) goto L_0252CDCC; else goto L_0252CDE0;
|
|
L_0252CDCC: ; // 0x252cdcc
|
|
/* 0252CDCC */ cpu->r[10] = 0x100C0000u;
|
|
/* 0252CDD0 */ cpu->r[9] = 0x00000001u;
|
|
/* 0252CDD4 */ cpu->r[10] = cpu->r[10] + 0x00003330u;
|
|
/* 0252CDD8 */ _t17 = cpu->r[8] + 0x00000000u;
|
|
/* 0252CDD8 */ rbrew_write32(cpu->mem, _t17, cpu->r[9]);
|
|
/* 0252CDDC */ _t18 = cpu->r[11] + 0x00000000u;
|
|
/* 0252CDDC */ rbrew_write32(cpu->mem, _t18, cpu->r[10]);
|
|
L_0252CDE0: ; // 0x252cde0
|
|
/* 0252CDE0 */ cpu->r[12] = cpu->r[4] ^ cpu->r[11];
|
|
/* 0252CDE4 */ cpu->r[0] = rbrew_clz32(cpu->r[12]);
|
|
/* 0252CDE8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
L_0252CDEC: ; // 0x252cdec
|
|
/* 0252CDEC */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 0252CDF0 */ return;
|
|
}
|
|
|
|
// fn_0252CDF4 @ 0x252cdf4
|
|
void Gambit_fn_0252CDF4(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0252CDF4: ; // 0x252cdf4
|
|
/* 0252CDF4 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0252CDF4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0252CDF8 */ _t1 = cpu->r[12] + 0x0000008Cu;
|
|
/* 0252CDF8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0252CDFC */ cpu->ctr = cpu->r[0];
|
|
/* 0252CE00 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0252CE04 @ 0x252ce04
|
|
void Gambit_fn_0252CE04(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0252CE04: ; // 0x252ce04
|
|
/* 0252CE04 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0252CE04 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0252CE08 */ _t1 = cpu->r[12] + 0x00000124u;
|
|
/* 0252CE08 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0252CE0C */ cpu->ctr = cpu->r[0];
|
|
/* 0252CE10 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0252CE14 @ 0x252ce14
|
|
void Gambit_fn_0252CE14(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0252CE14: ; // 0x252ce14
|
|
/* 0252CE14 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0252CE14 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0252CE18 */ _t1 = cpu->r[12] + 0x00000124u;
|
|
/* 0252CE18 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0252CE1C */ cpu->ctr = cpu->r[0];
|
|
/* 0252CE20 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0252CE24 @ 0x252ce24
|
|
void Gambit_fn_0252CE24(CPUState* cpu) {
|
|
L_0252CE24: ; // 0x252ce24
|
|
/* 0252CE24 */ return;
|
|
}
|
|
|
|
// fn_0252CE28 @ 0x252ce28
|
|
void Gambit_fn_0252CE28(CPUState* cpu) {
|
|
L_0252CE28: ; // 0x252ce28
|
|
/* 0252CE28 */ return;
|
|
}
|
|
|
|
// fn_0252CE2C @ 0x252ce2c
|
|
void Gambit_fn_0252CE2C(CPUState* cpu) {
|
|
L_0252CE2C: ; // 0x252ce2c
|
|
/* 0252CE2C */ return;
|
|
}
|
|
|
|
// fn_0252CE30 @ 0x252ce30
|
|
void Gambit_fn_0252CE30(CPUState* cpu) {
|
|
L_0252CE30: ; // 0x252ce30
|
|
/* 0252CE30 */ cpu->r[3] = 0x00000001u;
|
|
/* 0252CE34 */ return;
|
|
}
|
|
|
|
// fn_0252CE38 @ 0x252ce38
|
|
void Gambit_fn_0252CE38(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _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_0252CE38: ; // 0x252ce38
|
|
/* 0252CE38 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 0252CE38 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252CE38 */ cpu->r[1] = _t0;
|
|
/* 0252CE3C */ /* nop */
|
|
/* 0252CE40 */ cpu->r[0] = cpu->lr;
|
|
/* 0252CE44 */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 0252CE44 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0252CE48 */ cpu->r[29] = cpu->r[6];
|
|
/* 0252CE4C */ cpu->r[28] = cpu->r[3];
|
|
/* 0252CE50 */ cpu->r[30] = cpu->r[5];
|
|
/* 0252CE54 */ _t2 = cpu->r[30] + 0x00000000u;
|
|
/* 0252CE54 */ cpu->r[27] = rbrew_read8(cpu->mem, _t2);
|
|
/* 0252CE58 */ cpu->r[31] = 0x101D0000u;
|
|
/* 0252CE5C */ _t3 = cpu->r[28] + 0x0000001Cu;
|
|
/* 0252CE5C */ rbrew_write32(cpu->mem, _t3, cpu->r[4]);
|
|
/* 0252CE60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0252CE64 */ _t4 = cpu->r[28] + 0x0000000Fu;
|
|
/* 0252CE64 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[27]);
|
|
/* 0252CE68 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252CE68 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0252CE68 */ if (_t6) goto L_0252CEAC; else goto L_0252CE6C;
|
|
L_0252CE6C: ; // 0x252ce6c
|
|
/* 0252CE6C */ _t7 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 0252CE6C */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0252CE70 */ Gambit_fn_02826F20(cpu);
|
|
/* 0252CE74 */ _t8 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0252CE74 */ cpu->r[9] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0252CE78 */ _t9 = cpu->r[9] + 0x00000034u;
|
|
/* 0252CE78 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0252CE7C */ cpu->ctr = cpu->r[0];
|
|
/* 0252CE80 */ cpu->r[5] = 0x00000004u;
|
|
/* 0252CE84 */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0252CE88 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252CE8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0252CE90 */ cpu->r[0] = cpu->r[27];
|
|
/* 0252CE94 */ _t10 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252CE94 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0252CE94 */ if (_t11) goto L_0252CE9C; else goto L_0252CE98;
|
|
L_0252CE98: ; // 0x252ce98
|
|
/* 0252CE98 */ cpu->r[0] = 0x00000001u;
|
|
L_0252CE9C: ; // 0x252ce9c
|
|
/* 0252CE9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252CEA0 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252CEA0 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0252CEA0 */ if (_t13) goto L_0252CEAC; else goto L_0252CEA4;
|
|
L_0252CEA4: ; // 0x252cea4
|
|
/* 0252CEA4 */ _t14 = cpu->r[28] + 0x00000024u;
|
|
/* 0252CEA4 */ rbrew_write32(cpu->mem, _t14, cpu->r[3]);
|
|
/* 0252CEA8 */ _t15 = cpu->r[28] + 0x00000020u;
|
|
/* 0252CEA8 */ rbrew_write32(cpu->mem, _t15, cpu->r[27]);
|
|
L_0252CEAC: ; // 0x252ceac
|
|
/* 0252CEAC */ _t16 = cpu->r[28] + 0x00000020u;
|
|
/* 0252CEAC */ cpu->r[7] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0252CEB0 */ cpu->r[0] = 0x00000000u;
|
|
/* 0252CEB4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 0252CEB8 */ cpu->r[12] = cpu->r[0];
|
|
/* 0252CEBC */ _t17 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252CEBC */ _t18 = _t17 & 0x00000001u;
|
|
/* 0252CEBC */ if (_t18) goto L_0252CEC0; else goto L_0252CEE4;
|
|
L_0252CEC0: ; // 0x252cec0
|
|
/* 0252CEC0 */ cpu->ctr = cpu->r[7];
|
|
/* 0252CEC4 */ cpu->r[10] = 0x00000000u;
|
|
L_0252CEC8: ; // 0x252cec8
|
|
/* 0252CEC8 */ _t19 = cpu->r[28] + 0x00000024u;
|
|
/* 0252CEC8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0252CECC */ _t20 = cpu->r[11] + cpu->r[10];
|
|
/* 0252CECC */ rbrew_write16(cpu->mem, _t20, (uint16_t)cpu->r[0]);
|
|
/* 0252CED0 */ cpu->r[8] = cpu->r[11] + cpu->r[10];
|
|
/* 0252CED4 */ _t21 = cpu->r[8] + 0x00000004u;
|
|
/* 0252CED4 */ rbrew_write32(cpu->mem, _t21, cpu->r[12]);
|
|
/* 0252CED8 */ cpu->r[10] = cpu->r[10] + 0x00000008u;
|
|
/* 0252CEDC */ _t22 = cpu->r[8] + 0x00000002u;
|
|
/* 0252CEDC */ rbrew_write16(cpu->mem, _t22, (uint16_t)cpu->r[0]);
|
|
/* 0252CEE0 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0252CEE0 */ _t23 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0252CEE0 */ _t24 = _t23 >> (0x00000002u & 31u);
|
|
/* 0252CEE0 */ _t25 = _t24 & 0x00000001u;
|
|
/* 0252CEE0 */ if (_t25) goto L_0252CEC8; else goto L_0252CEE4;
|
|
L_0252CEE4: ; // 0x252cee4
|
|
/* 0252CEE4 */ _t26 = cpu->r[28] + 0x0000000Fu;
|
|
/* 0252CEE4 */ cpu->r[27] = rbrew_read8(cpu->mem, _t26);
|
|
/* 0252CEE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0252CEEC */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252CEEC */ _t28 = _t27 & 0x00000001u;
|
|
/* 0252CEEC */ if (_t28) goto L_0252CF30; else goto L_0252CEF0;
|
|
L_0252CEF0: ; // 0x252cef0
|
|
/* 0252CEF0 */ _t29 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 0252CEF0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0252CEF4 */ Gambit_fn_02826F20(cpu);
|
|
/* 0252CEF8 */ _t30 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0252CEF8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t30);
|
|
/* 0252CEFC */ _t31 = cpu->r[12] + 0x00000034u;
|
|
/* 0252CEFC */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0252CF00 */ cpu->ctr = cpu->r[0];
|
|
/* 0252CF04 */ cpu->r[5] = 0x00000004u;
|
|
/* 0252CF08 */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0252CF0C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252CF10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0252CF14 */ cpu->r[11] = cpu->r[27];
|
|
/* 0252CF18 */ _t32 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252CF18 */ _t33 = _t32 & 0x00000001u;
|
|
/* 0252CF18 */ if (_t33) goto L_0252CF20; else goto L_0252CF1C;
|
|
L_0252CF1C: ; // 0x252cf1c
|
|
/* 0252CF1C */ cpu->r[11] = 0x00000001u;
|
|
L_0252CF20: ; // 0x252cf20
|
|
/* 0252CF20 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252CF24 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252CF24 */ _t35 = _t34 & 0x00000001u;
|
|
/* 0252CF24 */ if (_t35) goto L_0252CF30; else goto L_0252CF28;
|
|
L_0252CF28: ; // 0x252cf28
|
|
/* 0252CF28 */ _t36 = cpu->r[28] + 0x0000002Cu;
|
|
/* 0252CF28 */ rbrew_write32(cpu->mem, _t36, cpu->r[3]);
|
|
/* 0252CF2C */ _t37 = cpu->r[28] + 0x00000028u;
|
|
/* 0252CF2C */ rbrew_write32(cpu->mem, _t37, cpu->r[27]);
|
|
L_0252CF30: ; // 0x252cf30
|
|
/* 0252CF30 */ _t38 = cpu->r[28] + 0x00000028u;
|
|
/* 0252CF30 */ cpu->r[6] = rbrew_read32(cpu->mem, _t38);
|
|
/* 0252CF34 */ cpu->r[0] = 0x00000000u;
|
|
/* 0252CF38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 0252CF3C */ cpu->r[12] = cpu->r[0];
|
|
/* 0252CF40 */ _t39 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252CF40 */ _t40 = _t39 & 0x00000001u;
|
|
/* 0252CF40 */ if (_t40) goto L_0252CF44; else goto L_0252CF68;
|
|
L_0252CF44: ; // 0x252cf44
|
|
/* 0252CF44 */ cpu->ctr = cpu->r[6];
|
|
/* 0252CF48 */ cpu->r[9] = 0x00000000u;
|
|
L_0252CF4C: ; // 0x252cf4c
|
|
/* 0252CF4C */ _t41 = cpu->r[28] + 0x0000002Cu;
|
|
/* 0252CF4C */ cpu->r[5] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0252CF50 */ _t42 = cpu->r[5] + cpu->r[9];
|
|
/* 0252CF50 */ rbrew_write16(cpu->mem, _t42, (uint16_t)cpu->r[0]);
|
|
/* 0252CF54 */ cpu->r[7] = cpu->r[5] + cpu->r[9];
|
|
/* 0252CF58 */ _t43 = cpu->r[7] + 0x00000004u;
|
|
/* 0252CF58 */ rbrew_write32(cpu->mem, _t43, cpu->r[12]);
|
|
/* 0252CF5C */ cpu->r[9] = cpu->r[9] + 0x00000008u;
|
|
/* 0252CF60 */ _t44 = cpu->r[7] + 0x00000002u;
|
|
/* 0252CF60 */ rbrew_write16(cpu->mem, _t44, (uint16_t)cpu->r[0]);
|
|
/* 0252CF64 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0252CF64 */ _t45 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0252CF64 */ _t46 = _t45 >> (0x00000002u & 31u);
|
|
/* 0252CF64 */ _t47 = _t46 & 0x00000001u;
|
|
/* 0252CF64 */ if (_t47) goto L_0252CF4C; else goto L_0252CF68;
|
|
L_0252CF68: ; // 0x252cf68
|
|
/* 0252CF68 */ _t48 = cpu->r[28] + 0x0000000Fu;
|
|
/* 0252CF68 */ cpu->r[27] = rbrew_read8(cpu->mem, _t48);
|
|
/* 0252CF6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0252CF70 */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252CF70 */ _t50 = _t49 & 0x00000001u;
|
|
/* 0252CF70 */ if (_t50) goto L_0252CFB4; else goto L_0252CF74;
|
|
L_0252CF74: ; // 0x252cf74
|
|
/* 0252CF74 */ _t51 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 0252CF74 */ cpu->r[3] = rbrew_read32(cpu->mem, _t51);
|
|
/* 0252CF78 */ Gambit_fn_02826F20(cpu);
|
|
/* 0252CF7C */ _t52 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0252CF7C */ cpu->r[6] = rbrew_read32(cpu->mem, _t52);
|
|
/* 0252CF80 */ _t53 = cpu->r[6] + 0x00000034u;
|
|
/* 0252CF80 */ cpu->r[0] = rbrew_read32(cpu->mem, _t53);
|
|
/* 0252CF84 */ cpu->ctr = cpu->r[0];
|
|
/* 0252CF88 */ cpu->r[5] = 0x00000004u;
|
|
/* 0252CF8C */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0252CF90 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252CF94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0252CF98 */ cpu->r[10] = cpu->r[27];
|
|
/* 0252CF9C */ _t54 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252CF9C */ _t55 = _t54 & 0x00000001u;
|
|
/* 0252CF9C */ if (_t55) goto L_0252CFA4; else goto L_0252CFA0;
|
|
L_0252CFA0: ; // 0x252cfa0
|
|
/* 0252CFA0 */ cpu->r[10] = 0x00000001u;
|
|
L_0252CFA4: ; // 0x252cfa4
|
|
/* 0252CFA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252CFA8 */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252CFA8 */ _t57 = _t56 & 0x00000001u;
|
|
/* 0252CFA8 */ if (_t57) goto L_0252CFB4; else goto L_0252CFAC;
|
|
L_0252CFAC: ; // 0x252cfac
|
|
/* 0252CFAC */ _t58 = cpu->r[28] + 0x00000034u;
|
|
/* 0252CFAC */ rbrew_write32(cpu->mem, _t58, cpu->r[3]);
|
|
/* 0252CFB0 */ _t59 = cpu->r[28] + 0x00000030u;
|
|
/* 0252CFB0 */ rbrew_write32(cpu->mem, _t59, cpu->r[27]);
|
|
L_0252CFB4: ; // 0x252cfb4
|
|
/* 0252CFB4 */ _t60 = cpu->r[28] + 0x00000030u;
|
|
/* 0252CFB4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t60);
|
|
/* 0252CFB8 */ cpu->r[0] = 0x00000000u;
|
|
/* 0252CFBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0252CFC0 */ cpu->r[5] = cpu->r[0];
|
|
/* 0252CFC4 */ _t61 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252CFC4 */ _t62 = _t61 & 0x00000001u;
|
|
/* 0252CFC4 */ if (_t62) goto L_0252CFC8; else goto L_0252CFEC;
|
|
L_0252CFC8: ; // 0x252cfc8
|
|
/* 0252CFC8 */ cpu->ctr = cpu->r[12];
|
|
/* 0252CFCC */ cpu->r[8] = 0x00000000u;
|
|
L_0252CFD0: ; // 0x252cfd0
|
|
/* 0252CFD0 */ _t63 = cpu->r[28] + 0x00000034u;
|
|
/* 0252CFD0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t63);
|
|
/* 0252CFD4 */ _t64 = cpu->r[9] + cpu->r[8];
|
|
/* 0252CFD4 */ rbrew_write16(cpu->mem, _t64, (uint16_t)cpu->r[0]);
|
|
/* 0252CFD8 */ cpu->r[6] = cpu->r[9] + cpu->r[8];
|
|
/* 0252CFDC */ _t65 = cpu->r[6] + 0x00000004u;
|
|
/* 0252CFDC */ rbrew_write32(cpu->mem, _t65, cpu->r[5]);
|
|
/* 0252CFE0 */ cpu->r[8] = cpu->r[8] + 0x00000008u;
|
|
/* 0252CFE4 */ _t66 = cpu->r[6] + 0x00000002u;
|
|
/* 0252CFE4 */ rbrew_write16(cpu->mem, _t66, (uint16_t)cpu->r[0]);
|
|
/* 0252CFE8 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0252CFE8 */ _t67 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0252CFE8 */ _t68 = _t67 >> (0x00000002u & 31u);
|
|
/* 0252CFE8 */ _t69 = _t68 & 0x00000001u;
|
|
/* 0252CFE8 */ if (_t69) goto L_0252CFD0; else goto L_0252CFEC;
|
|
L_0252CFEC: ; // 0x252cfec
|
|
/* 0252CFEC */ _t70 = cpu->r[30] + 0x00000000u;
|
|
/* 0252CFEC */ cpu->r[25] = rbrew_read8(cpu->mem, _t70);
|
|
/* 0252CFF0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 0252CFF4 */ _t71 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252CFF4 */ _t72 = _t71 & 0x00000001u;
|
|
/* 0252CFF4 */ if (_t72) goto L_0252D0D0; else goto L_0252CFF8;
|
|
L_0252CFF8: ; // 0x252cff8
|
|
/* 0252CFF8 */ _t73 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 0252CFF8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t73);
|
|
/* 0252CFFC */ Gambit_fn_02826F20(cpu);
|
|
/* 0252D000 */ _t74 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0252D000 */ cpu->r[10] = rbrew_read32(cpu->mem, _t74);
|
|
/* 0252D004 */ _t75 = cpu->r[10] + 0x00000034u;
|
|
/* 0252D004 */ cpu->r[12] = rbrew_read32(cpu->mem, _t75);
|
|
/* 0252D008 */ cpu->ctr = cpu->r[12];
|
|
/* 0252D00C */ cpu->r[5] = 0x00000004u;
|
|
/* 0252D010 */ cpu->r[4] = (uint32_t)((int32_t)cpu->r[25] * (int32_t)0x00000024u);
|
|
/* 0252D014 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252D018 */ cpu->r[24] = cpu->r[3];
|
|
/* 0252D01C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 0252D020 */ cpu->r[30] = cpu->r[25];
|
|
/* 0252D024 */ cpu->r[7] = 0x00000000u;
|
|
/* 0252D028 */ _t76 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252D028 */ _t77 = _t76 & 0x00000001u;
|
|
/* 0252D028 */ if (_t77) goto L_0252D030; else goto L_0252D02C;
|
|
L_0252D02C: ; // 0x252d02c
|
|
/* 0252D02C */ cpu->r[30] = 0x00000001u;
|
|
L_0252D030: ; // 0x252d030
|
|
/* 0252D030 */ cpu->r[31] = 0x10110000u;
|
|
/* 0252D034 */ cpu->r[22] = (uint32_t)((int32_t)cpu->r[7] * (int32_t)0x00000024u);
|
|
/* 0252D038 */ _t78 = cpu->r[31] + 0x00007399u;
|
|
/* 0252D038 */ cpu->r[31] = rbrew_read8(cpu->mem, _t78);
|
|
/* 0252D03C */ cpu->r[23] = 0x00000018u;
|
|
L_0252D040: ; // 0x252d040
|
|
/* 0252D040 */ cpu->r[27] = cpu->r[24] + cpu->r[22];
|
|
/* 0252D040 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0252D044 */ _t79 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252D044 */ _t80 = _t79 & 0x00000001u;
|
|
/* 0252D044 */ if (_t80) goto L_0252D0B4; else goto L_0252D048;
|
|
L_0252D048: ; // 0x252d048
|
|
/* 0252D048 */ cpu->r[26] = cpu->r[27];
|
|
/* 0252D048 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 0252D04C */ _t81 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252D04C */ _t82 = _t81 & 0x00000001u;
|
|
/* 0252D04C */ if (_t82) goto L_0252D050; else goto L_0252D060;
|
|
L_0252D050: ; // 0x252d050
|
|
/* 0252D050 */ cpu->r[3] = 0x00000024u;
|
|
/* 0252D054 */ Gambit_fn_02801A78(cpu);
|
|
/* 0252D058 */ cpu->r[26] = cpu->r[3];
|
|
/* 0252D058 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 0252D05C */ _t83 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252D05C */ _t84 = _t83 & 0x00000001u;
|
|
/* 0252D05C */ if (_t84) goto L_0252D0A8; else goto L_0252D060;
|
|
L_0252D060: ; // 0x252d060
|
|
/* 0252D060 */ cpu->r[11] = cpu->r[26];
|
|
/* 0252D060 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0252D064 */ _t85 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252D064 */ _t86 = _t85 & 0x00000001u;
|
|
/* 0252D064 */ if (_t86) goto L_0252D068; else goto L_0252D078;
|
|
L_0252D068: ; // 0x252d068
|
|
/* 0252D068 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0252D06C */ Gambit_fn_02801A78(cpu);
|
|
/* 0252D070 */ cpu->r[11] = cpu->r[3];
|
|
/* 0252D070 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0252D074 */ _t87 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252D074 */ _t88 = _t87 & 0x00000001u;
|
|
/* 0252D074 */ if (_t88) goto L_0252D094; else goto L_0252D078;
|
|
L_0252D078: ; // 0x252d078
|
|
/* 0252D078 */ cpu->r[5] = 0x100C0000u;
|
|
/* 0252D07C */ _t89 = cpu->r[11] + 0x00000008u;
|
|
/* 0252D07C */ rbrew_write32(cpu->mem, _t89, cpu->r[23]);
|
|
/* 0252D080 */ cpu->r[0] = cpu->r[26] + 0x0000000Cu;
|
|
/* 0252D084 */ cpu->r[5] = cpu->r[5] + 0x00003358u;
|
|
/* 0252D088 */ _t90 = cpu->r[11] + 0x00000000u;
|
|
/* 0252D088 */ rbrew_write32(cpu->mem, _t90, cpu->r[0]);
|
|
/* 0252D08C */ _t91 = cpu->r[11] + 0x00000004u;
|
|
/* 0252D08C */ rbrew_write32(cpu->mem, _t91, cpu->r[5]);
|
|
/* 0252D090 */ _t92 = cpu->r[26] + 0x00000023u;
|
|
/* 0252D090 */ rbrew_write8(cpu->mem, _t92, (uint8_t)cpu->r[31]);
|
|
L_0252D094: ; // 0x252d094
|
|
/* 0252D094 */ cpu->r[6] = 0x100C0000u;
|
|
/* 0252D098 */ _t93 = cpu->r[26] + 0x00000000u;
|
|
/* 0252D098 */ cpu->r[7] = rbrew_read32(cpu->mem, _t93);
|
|
/* 0252D09C */ cpu->r[6] = cpu->r[6] + 0x000033C0u;
|
|
/* 0252D0A0 */ _t94 = cpu->r[26] + 0x00000004u;
|
|
/* 0252D0A0 */ rbrew_write32(cpu->mem, _t94, cpu->r[6]);
|
|
/* 0252D0A4 */ _t95 = cpu->r[7] + 0x00000000u;
|
|
/* 0252D0A4 */ rbrew_write8(cpu->mem, _t95, (uint8_t)cpu->r[31]);
|
|
L_0252D0A8: ; // 0x252d0a8
|
|
/* 0252D0A8 */ cpu->r[0] = 0x100C0000u;
|
|
/* 0252D0AC */ cpu->r[0] = cpu->r[0] + 0x000033D8u;
|
|
/* 0252D0B0 */ _t96 = cpu->r[27] + 0x00000004u;
|
|
/* 0252D0B0 */ rbrew_write32(cpu->mem, _t96, cpu->r[0]);
|
|
L_0252D0B4: ; // 0x252d0b4
|
|
/* 0252D0B4 */ cpu->r[30] = cpu->r[30] + 0xFFFFFFFFu;
|
|
/* 0252D0B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0252D0B8 */ cpu->r[22] = cpu->r[22] + 0x00000024u;
|
|
/* 0252D0BC */ _t97 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252D0BC */ _t98 = _t97 & 0x00000001u;
|
|
/* 0252D0BC */ if (_t98) goto L_0252D0C0; else goto L_0252D040;
|
|
L_0252D0C0: ; // 0x252d0c0
|
|
/* 0252D0C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 0252D0C4 */ _t99 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252D0C4 */ _t100 = _t99 & 0x00000001u;
|
|
/* 0252D0C4 */ if (_t100) goto L_0252D0D0; else goto L_0252D0C8;
|
|
L_0252D0C8: ; // 0x252d0c8
|
|
/* 0252D0C8 */ _t101 = cpu->r[28] + 0x00000018u;
|
|
/* 0252D0C8 */ rbrew_write32(cpu->mem, _t101, cpu->r[24]);
|
|
/* 0252D0CC */ _t102 = cpu->r[28] + 0x00000014u;
|
|
/* 0252D0CC */ rbrew_write32(cpu->mem, _t102, cpu->r[25]);
|
|
L_0252D0D0: ; // 0x252d0d0
|
|
/* 0252D0D0 */ _t103 = cpu->r[28] + 0x0000000Eu;
|
|
/* 0252D0D0 */ rbrew_write8(cpu->mem, _t103, (uint8_t)cpu->r[29]);
|
|
/* 0252D0D4 */ /* nop */
|
|
/* 0252D0D8 */ _t104 = cpu->r[1] + 0x00000034u;
|
|
/* 0252D0D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t104);
|
|
/* 0252D0DC */ cpu->lr = cpu->r[0];
|
|
/* 0252D0E0 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 0252D0E4 */ return;
|
|
}
|
|
|
|
// fn_0252D0E8 @ 0x252d0e8
|
|
void Gambit_fn_0252D0E8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _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_0252D0E8: ; // 0x252d0e8
|
|
/* 0252D0E8 */ _t0 = cpu->r[7] + 0x00000000u;
|
|
/* 0252D0E8 */ cpu->r[8] = rbrew_read8(cpu->mem, _t0);
|
|
/* 0252D0EC */ _t1 = cpu->r[3] + 0x00000020u;
|
|
/* 0252D0EC */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0252D0F0 */ _t2 = cpu->r[3] + 0x00000024u;
|
|
/* 0252D0F0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0252D0F4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[12]);
|
|
/* 0252D0F8 */ _t3 = cpu->r[4] + 0x00000000u;
|
|
/* 0252D0F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0252D0FC */ _t4 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0252D0FC */ _t5 = _t4 & 0x00000001u;
|
|
/* 0252D0FC */ if (_t5) goto L_0252D100; else goto L_0252D108;
|
|
L_0252D100: ; // 0x252d100
|
|
/* 0252D100 */ cpu->r[10] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0252D104 */ cpu->r[11] = cpu->r[11] + cpu->r[10];
|
|
L_0252D108: ; // 0x252d108
|
|
/* 0252D108 */ _t6 = cpu->r[11] + 0x00000000u;
|
|
/* 0252D108 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0252D10C */ _t7 = cpu->r[4] + 0x00000004u;
|
|
/* 0252D10C */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0252D110 */ _t8 = cpu->r[11] + 0x00000004u;
|
|
/* 0252D110 */ rbrew_write32(cpu->mem, _t8, cpu->r[8]);
|
|
/* 0252D114 */ _t9 = cpu->r[7] + 0x00000000u;
|
|
/* 0252D114 */ cpu->r[9] = rbrew_read8(cpu->mem, _t9);
|
|
/* 0252D118 */ _t10 = cpu->r[3] + 0x00000028u;
|
|
/* 0252D118 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0252D11C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[12]);
|
|
/* 0252D120 */ _t11 = cpu->r[3] + 0x0000002Cu;
|
|
/* 0252D120 */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0252D124 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0252D124 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0252D124 */ if (_t13) goto L_0252D128; else goto L_0252D130;
|
|
L_0252D128: ; // 0x252d128
|
|
/* 0252D128 */ cpu->r[0] = rbrew_rlwinm(cpu->r[9], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0252D12C */ cpu->r[10] = cpu->r[10] + cpu->r[0];
|
|
L_0252D130: ; // 0x252d130
|
|
/* 0252D130 */ _t14 = cpu->r[5] + 0x00000000u;
|
|
/* 0252D130 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0252D134 */ _t15 = cpu->r[10] + 0x00000000u;
|
|
/* 0252D134 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 0252D138 */ _t16 = cpu->r[5] + 0x00000004u;
|
|
/* 0252D138 */ cpu->r[8] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0252D13C */ _t17 = cpu->r[10] + 0x00000004u;
|
|
/* 0252D13C */ rbrew_write32(cpu->mem, _t17, cpu->r[8]);
|
|
/* 0252D140 */ _t18 = cpu->r[3] + 0x00000030u;
|
|
/* 0252D140 */ cpu->r[9] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0252D144 */ _t19 = cpu->r[7] + 0x00000000u;
|
|
/* 0252D144 */ cpu->r[11] = rbrew_read8(cpu->mem, _t19);
|
|
/* 0252D148 */ _t20 = cpu->r[3] + 0x00000034u;
|
|
/* 0252D148 */ cpu->r[12] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0252D14C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[9]);
|
|
/* 0252D150 */ _t21 = cpu->r[6] + 0x00000000u;
|
|
/* 0252D150 */ cpu->r[7] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0252D154 */ _t22 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0252D154 */ _t23 = _t22 & 0x00000001u;
|
|
/* 0252D154 */ if (_t23) goto L_0252D158; else goto L_0252D160;
|
|
L_0252D158: ; // 0x252d158
|
|
/* 0252D158 */ cpu->r[11] = rbrew_rlwinm(cpu->r[11], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0252D15C */ cpu->r[12] = cpu->r[12] + cpu->r[11];
|
|
L_0252D160: ; // 0x252d160
|
|
/* 0252D160 */ _t24 = cpu->r[12] + 0x00000000u;
|
|
/* 0252D160 */ rbrew_write32(cpu->mem, _t24, cpu->r[7]);
|
|
/* 0252D164 */ _t25 = cpu->r[6] + 0x00000004u;
|
|
/* 0252D164 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0252D168 */ _t26 = cpu->r[12] + 0x00000004u;
|
|
/* 0252D168 */ rbrew_write32(cpu->mem, _t26, cpu->r[0]);
|
|
/* 0252D16C */ return;
|
|
}
|
|
|
|
// fn_0252D170 @ 0x252d170
|
|
void Gambit_fn_0252D170(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0252D170: ; // 0x252d170
|
|
/* 0252D170 */ cpu->r[0] = cpu->lr;
|
|
/* 0252D174 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0252D178 */ cpu->r[7] = 0x02530000u;
|
|
/* 0252D17C */ cpu->r[6] = 0x02530000u;
|
|
/* 0252D180 */ cpu->r[10] = 0x101C0000u;
|
|
/* 0252D184 */ cpu->r[7] = cpu->r[7] + 0xFFFFCA98u;
|
|
/* 0252D188 */ cpu->r[6] = cpu->r[6] + 0xFFFFCA98u;
|
|
/* 0252D18C */ cpu->r[10] = cpu->r[10] + 0x000068C8u;
|
|
/* 0252D190 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 0252D190 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 0252D194 */ cpu->r[0] = 0x101C0000u;
|
|
/* 0252D198 */ _t1 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0252D198 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 0252D198 */ cpu->r[1] = _t1;
|
|
/* 0252D19C */ cpu->r[0] = cpu->r[0] + 0x000068C4u;
|
|
/* 0252D1A0 */ _t2 = cpu->r[12] + 0xFFFF9034u;
|
|
/* 0252D1A0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0252D1A4 */ cpu->r[8] = 0x00000000u;
|
|
/* 0252D1A8 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 0252D1A8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0252D1AC */ cpu->r[9] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252D1B0 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252D1B0 */ rbrew_write32(cpu->mem, _t4, cpu->r[12]);
|
|
/* 0252D1B4 */ Gambit_fn_02791B10(cpu);
|
|
/* 0252D1B8 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 0252D1B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0252D1BC */ cpu->lr = cpu->r[0];
|
|
/* 0252D1C0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0252D1C4 */ return;
|
|
}
|
|
|
|
// fn_0252D198 @ 0x252d198
|
|
void Gambit_fn_0252D198(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_0252D198: ; // 0x252d198
|
|
/* 0252D198 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0252D198 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252D198 */ cpu->r[1] = _t0;
|
|
/* 0252D19C */ cpu->r[0] = cpu->r[0] + 0x000068C4u;
|
|
/* 0252D1A0 */ _t1 = cpu->r[12] + 0xFFFF9034u;
|
|
/* 0252D1A0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0252D1A4 */ cpu->r[8] = 0x00000000u;
|
|
/* 0252D1A8 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0252D1A8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0252D1AC */ cpu->r[9] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252D1B0 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252D1B0 */ rbrew_write32(cpu->mem, _t3, cpu->r[12]);
|
|
/* 0252D1B4 */ Gambit_fn_02791B10(cpu);
|
|
/* 0252D1B8 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 0252D1B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0252D1BC */ cpu->lr = cpu->r[0];
|
|
/* 0252D1C0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0252D1C4 */ return;
|
|
}
|
|
|
|
// fn_0252D1C8 @ 0x252d1c8
|
|
void Gambit_fn_0252D1C8(CPUState* cpu) {
|
|
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_0252D1C8: ; // 0x252d1c8
|
|
/* 0252D1C8 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 0252D1C8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252D1C8 */ cpu->r[1] = _t0;
|
|
/* 0252D1CC */ cpu->r[0] = cpu->lr;
|
|
/* 0252D1D0 */ /* nop */
|
|
/* 0252D1D4 */ cpu->r[30] = cpu->r[5];
|
|
/* 0252D1D8 */ cpu->r[26] = cpu->r[3];
|
|
/* 0252D1DC */ cpu->r[27] = cpu->r[7];
|
|
/* 0252D1E0 */ cpu->r[3] = cpu->r[30];
|
|
/* 0252D1E4 */ cpu->r[31] = cpu->r[6];
|
|
/* 0252D1E8 */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0252D1E8 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0252D1EC */ cpu->r[29] = cpu->r[4];
|
|
/* 0252D1F0 */ cpu->r[4] = cpu->r[27];
|
|
/* 0252D1F4 */ Gambit_fn_027DB318(cpu);
|
|
/* 0252D1F8 */ cpu->r[28] = cpu->r[3] + cpu->r[31];
|
|
/* 0252D1F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 0252D1FC */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252D1FC */ _t3 = _t2 & 0x00000001u;
|
|
/* 0252D1FC */ if (_t3) goto L_0252D290; else goto L_0252D200;
|
|
L_0252D200: ; // 0x252d200
|
|
/* 0252D200 */ cpu->r[5] = cpu->r[28];
|
|
/* 0252D204 */ cpu->r[4] = cpu->r[29];
|
|
/* 0252D208 */ cpu->r[3] = cpu->r[26];
|
|
/* 0252D20C */ Gambit_fn_0252D170(cpu);
|
|
/* 0252D210 */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0252D210 */ cpu->r[29] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0252D214 */ _t5 = cpu->r[30] + 0x00000004u;
|
|
/* 0252D214 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0252D218 */ cpu->r[30] = cpu->r[30] - cpu->r[29];
|
|
/* 0252D21C */ cpu->r[31] = cpu->r[0] - cpu->r[29];
|
|
/* 0252D220 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]);
|
|
/* 0252D224 */ cpu->r[25] = 0x00000000u;
|
|
/* 0252D228 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252D228 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0252D228 */ if (_t7) goto L_0252D290; else goto L_0252D22C;
|
|
L_0252D22C: ; // 0x252d22c
|
|
/* 0252D22C */ cpu->r[24] = 0x101C0000u;
|
|
L_0252D230: ; // 0x252d230
|
|
/* 0252D230 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0252D234 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252D234 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0252D234 */ if (_t9) goto L_0252D24C; else goto L_0252D238;
|
|
L_0252D238: ; // 0x252d238
|
|
/* 0252D238 */ cpu->ctr = cpu->r[27];
|
|
/* 0252D23C */ cpu->r[3] = cpu->r[31];
|
|
/* 0252D240 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252D244 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252D248 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252D248 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0252D248 */ if (_t11) goto L_0252D27C; else goto L_0252D24C;
|
|
L_0252D24C: ; // 0x252d24c
|
|
/* 0252D24C */ _t12 = cpu->r[24] + 0x000068C4u;
|
|
/* 0252D24C */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0252D250 */ cpu->r[6] = cpu->r[26] + cpu->r[0];
|
|
/* 0252D254 */ _t13 = cpu->r[6] + 0x00000104u;
|
|
/* 0252D254 */ cpu->r[12] = rbrew_read8(cpu->mem, _t13);
|
|
/* 0252D258 */ _t14 = cpu->r[26] + 0x00000030u;
|
|
/* 0252D258 */ cpu->r[10] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0252D25C */ cpu->r[9] = rbrew_rlwinm(cpu->r[12], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0252D260 */ _t15 = cpu->r[9] + cpu->r[10];
|
|
/* 0252D260 */ cpu->r[11] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0252D264 */ cpu->r[8] = rbrew_rlwinm(cpu->r[25], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0252D268 */ _t16 = cpu->r[11] + 0x00000004u;
|
|
/* 0252D268 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0252D26C */ cpu->r[4] = cpu->r[31];
|
|
/* 0252D270 */ _t17 = cpu->r[8] + cpu->r[0];
|
|
/* 0252D270 */ cpu->r[3] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0252D274 */ cpu->r[25] = cpu->r[25] + 0x00000001u;
|
|
/* 0252D278 */ Gambit_fn_0252B970(cpu);
|
|
L_0252D27C: ; // 0x252d27c
|
|
/* 0252D27C */ cpu->r[12] = cpu->r[31] + cpu->r[29];
|
|
/* 0252D280 */ _t18 = cpu->r[12] + 0x00000004u;
|
|
/* 0252D280 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0252D284 */ cpu->r[31] = cpu->r[0] - cpu->r[29];
|
|
/* 0252D288 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]);
|
|
/* 0252D28C */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252D28C */ _t20 = _t19 & 0x00000001u;
|
|
/* 0252D28C */ if (_t20) goto L_0252D290; else goto L_0252D230;
|
|
L_0252D290: ; // 0x252d290
|
|
/* 0252D290 */ cpu->r[3] = cpu->r[28];
|
|
/* 0252D294 */ /* nop */
|
|
/* 0252D298 */ _t21 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0252D298 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0252D29C */ cpu->lr = cpu->r[0];
|
|
/* 0252D2A0 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 0252D2A4 */ return;
|
|
}
|
|
|
|
// fn_0252D2A8 @ 0x252d2a8
|
|
void Gambit_fn_0252D2A8(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0252D2A8: ; // 0x252d2a8
|
|
/* 0252D2A8 */ cpu->r[12] = 0x100C0000u;
|
|
/* 0252D2AC */ _t0 = cpu->r[12] + 0x00003A58u;
|
|
/* 0252D2AC */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 0252D2B0 */ return;
|
|
}
|
|
|
|
// fn_0252D2B4 @ 0x252d2b4
|
|
void Gambit_fn_0252D2B4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106, _t107, _t108, _t109, _t110, _t111, _t112, _t113, _t114, _t115, _t116, _t117, _t118;
|
|
|
|
L_0252D2B4: ; // 0x252d2b4
|
|
/* 0252D2B4 */ _t0 = cpu->r[1] + 0xFFFFFFB0u;
|
|
/* 0252D2B4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252D2B4 */ cpu->r[1] = _t0;
|
|
/* 0252D2B8 */ /* nop */
|
|
/* 0252D2BC */ cpu->r[0] = cpu->lr;
|
|
/* 0252D2C0 */ _t1 = cpu->r[1] + 0x00000054u;
|
|
/* 0252D2C0 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0252D2C4 */ cpu->r[29] = cpu->r[3];
|
|
/* 0252D2C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0252D2C8 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252D2C8 */ _t3 = _t2 & 0x00000001u;
|
|
/* 0252D2C8 */ if (_t3) goto L_0252D2CC; else goto L_0252D2DC;
|
|
L_0252D2CC: ; // 0x252d2cc
|
|
/* 0252D2CC */ cpu->r[3] = 0x00000230u;
|
|
/* 0252D2D0 */ Gambit_fn_02801A78(cpu);
|
|
/* 0252D2D4 */ cpu->r[29] = cpu->r[3];
|
|
/* 0252D2D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0252D2D8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252D2D8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0252D2D8 */ if (_t5) goto L_0252D664; else goto L_0252D2DC;
|
|
L_0252D2DC: ; // 0x252d2dc
|
|
/* 0252D2DC */ cpu->r[3] = cpu->r[29];
|
|
/* 0252D2E0 */ Gambit_fn_024F6F3C(cpu);
|
|
/* 0252D2E4 */ cpu->r[12] = 0x100C0000u;
|
|
/* 0252D2E8 */ cpu->r[31] = cpu->r[29] + 0x000001B0u;
|
|
/* 0252D2E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0252D2EC */ cpu->r[12] = cpu->r[12] + 0x00003D28u;
|
|
/* 0252D2F0 */ cpu->r[28] = 0x00000000u;
|
|
/* 0252D2F4 */ _t6 = cpu->r[29] + 0x00000004u;
|
|
/* 0252D2F4 */ rbrew_write32(cpu->mem, _t6, cpu->r[12]);
|
|
/* 0252D2F8 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252D2F8 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0252D2F8 */ if (_t8) goto L_0252D2FC; else goto L_0252D30C;
|
|
L_0252D2FC: ; // 0x252d2fc
|
|
/* 0252D2FC */ cpu->r[3] = 0x00000038u;
|
|
/* 0252D300 */ Gambit_fn_02801A78(cpu);
|
|
/* 0252D304 */ cpu->r[31] = cpu->r[3];
|
|
/* 0252D304 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0252D308 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252D308 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0252D308 */ if (_t10) goto L_0252D33C; else goto L_0252D30C;
|
|
L_0252D30C: ; // 0x252d30c
|
|
/* 0252D30C */ cpu->r[3] = cpu->r[31];
|
|
/* 0252D310 */ Gambit_fn_027FC29C(cpu);
|
|
/* 0252D314 */ cpu->r[6] = 0x10000000u;
|
|
/* 0252D318 */ _t11 = cpu->r[31] + 0x00000030u;
|
|
/* 0252D318 */ rbrew_write32(cpu->mem, _t11, cpu->r[28]);
|
|
/* 0252D31C */ cpu->r[6] = cpu->r[6] + 0x00002F6Cu;
|
|
/* 0252D320 */ _t12 = cpu->r[31] + 0x00000034u;
|
|
/* 0252D320 */ rbrew_write32(cpu->mem, _t12, cpu->r[28]);
|
|
/* 0252D324 */ _t13 = cpu->r[31] + 0x00000004u;
|
|
/* 0252D324 */ rbrew_write32(cpu->mem, _t13, cpu->r[6]);
|
|
/* 0252D328 */ _t14 = cpu->r[31] + 0x00000024u;
|
|
/* 0252D328 */ rbrew_write32(cpu->mem, _t14, cpu->r[28]);
|
|
/* 0252D32C */ _t15 = cpu->r[31] + 0x00000028u;
|
|
/* 0252D32C */ rbrew_write32(cpu->mem, _t15, cpu->r[28]);
|
|
/* 0252D330 */ _t16 = cpu->r[31] + 0x0000002Cu;
|
|
/* 0252D330 */ rbrew_write32(cpu->mem, _t16, cpu->r[28]);
|
|
/* 0252D334 */ _t17 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0252D334 */ rbrew_write32(cpu->mem, _t17, cpu->r[28]);
|
|
/* 0252D338 */ _t18 = cpu->r[31] + 0x00000020u;
|
|
/* 0252D338 */ rbrew_write32(cpu->mem, _t18, cpu->r[28]);
|
|
L_0252D33C: ; // 0x252d33c
|
|
/* 0252D33C */ cpu->r[12] = 0x101C0000u;
|
|
/* 0252D340 */ _t19 = cpu->r[29] + 0x000001E8u;
|
|
/* 0252D340 */ rbrew_write32(cpu->mem, _t19, cpu->r[28]);
|
|
/* 0252D344 */ cpu->r[8] = 0x00000001u;
|
|
/* 0252D348 */ _t20 = cpu->r[12] + 0x00004FA8u;
|
|
/* 0252D348 */ cpu->r[12] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0252D34C */ cpu->r[11] = 0x101C0000u;
|
|
/* 0252D350 */ cpu->r[10] = 0x101C0000u;
|
|
/* 0252D354 */ _t21 = cpu->r[11] + 0x00007230u;
|
|
/* 0252D354 */ cpu->r[11] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0252D358 */ /* nop */
|
|
/* 0252D35C */ cpu->r[9] = 0x101C0000u;
|
|
/* 0252D360 */ _t22 = cpu->r[10] + 0x000050F8u;
|
|
/* 0252D360 */ cpu->r[10] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0252D364 */ /* nop */
|
|
/* 0252D368 */ _t23 = cpu->r[9] + 0x000055F0u;
|
|
/* 0252D368 */ cpu->r[9] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0252D36C */ cpu->r[12] = cpu->r[7] | cpu->r[0];
|
|
/* 0252D370 */ /* nop */
|
|
/* 0252D374 */ /* nop */
|
|
/* 0252D378 */ cpu->r[6] = cpu->r[12] | cpu->r[0];
|
|
/* 0252D37C */ cpu->r[8] = cpu->r[6] | cpu->r[7];
|
|
/* 0252D380 */ cpu->r[3] = cpu->r[29] + 0x000001F0u;
|
|
/* 0252D380 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252D384 */ _t24 = cpu->r[29] + 0x000001ECu;
|
|
/* 0252D384 */ rbrew_write32(cpu->mem, _t24, cpu->r[8]);
|
|
/* 0252D388 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252D388 */ _t26 = _t25 & 0x00000001u;
|
|
/* 0252D388 */ if (_t26) goto L_0252D38C; else goto L_0252D39C;
|
|
L_0252D38C: ; // 0x252d38c
|
|
/* 0252D38C */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0252D390 */ Gambit_fn_02801A78(cpu);
|
|
/* 0252D394 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252D398 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252D398 */ _t28 = _t27 & 0x00000001u;
|
|
/* 0252D398 */ if (_t28) goto L_0252D3B0; else goto L_0252D39C;
|
|
L_0252D39C: ; // 0x252d39c
|
|
/* 0252D39C */ cpu->r[9] = 0x100C0000u;
|
|
/* 0252D3A0 */ _t29 = cpu->r[3] + 0x00000004u;
|
|
/* 0252D3A0 */ rbrew_write32(cpu->mem, _t29, cpu->r[28]);
|
|
/* 0252D3A4 */ cpu->r[9] = cpu->r[9] + 0x00003B30u;
|
|
/* 0252D3A8 */ _t30 = cpu->r[3] + 0x00000000u;
|
|
/* 0252D3A8 */ rbrew_write32(cpu->mem, _t30, cpu->r[28]);
|
|
/* 0252D3AC */ _t31 = cpu->r[3] + 0x00000008u;
|
|
/* 0252D3AC */ rbrew_write32(cpu->mem, _t31, cpu->r[9]);
|
|
L_0252D3B0: ; // 0x252d3b0
|
|
/* 0252D3B0 */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 0252D3B4 */ _t32 = cpu->r[29] + 0x000001FCu;
|
|
/* 0252D3B4 */ rbrew_write32(cpu->mem, _t32, cpu->r[28]);
|
|
/* 0252D3B8 */ cpu->r[10] = 0x100C0000u;
|
|
/* 0252D3BC */ _t33 = cpu->r[29] + 0x00000200u;
|
|
/* 0252D3BC */ rbrew_write16(cpu->mem, _t33, (uint16_t)cpu->r[11]);
|
|
/* 0252D3C0 */ cpu->r[10] = cpu->r[10] + 0x00003B40u;
|
|
/* 0252D3C4 */ _t34 = cpu->r[29] + 0x00000202u;
|
|
/* 0252D3C4 */ rbrew_write16(cpu->mem, _t34, (uint16_t)cpu->r[11]);
|
|
/* 0252D3C8 */ cpu->r[5] = 0x100C0000u;
|
|
/* 0252D3CC */ _t35 = cpu->r[29] + 0x000001F8u;
|
|
/* 0252D3CC */ rbrew_write32(cpu->mem, _t35, cpu->r[10]);
|
|
/* 0252D3D0 */ _t36 = cpu->r[5] + 0x00003BDCu;
|
|
/* 0252D3D0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 0252D3D4 */ _t37 = cpu->r[29] + 0x00000204u;
|
|
/* 0252D3D4 */ rbrew_write16(cpu->mem, _t37, (uint16_t)cpu->r[11]);
|
|
/* 0252D3D8 */ cpu->r[3] = cpu->r[29];
|
|
/* 0252D3DC */ _t38 = cpu->r[29] + 0x00000208u;
|
|
/* 0252D3DC */ rbrew_write_f32(cpu->mem, _t38, cpu->f[0]);
|
|
/* 0252D3E0 */ Gambit_fn_0252D2A8(cpu);
|
|
/* 0252D3E4 */ cpu->r[10] = 0x100C0000u;
|
|
/* 0252D3E8 */ _t39 = cpu->r[29] + 0x00000210u;
|
|
/* 0252D3E8 */ rbrew_write32(cpu->mem, _t39, cpu->r[28]);
|
|
/* 0252D3EC */ _t40 = cpu->r[10] + 0x00003BE0u;
|
|
/* 0252D3EC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 0252D3F0 */ _t41 = cpu->r[29] + 0x00000214u;
|
|
/* 0252D3F0 */ rbrew_write32(cpu->mem, _t41, cpu->r[28]);
|
|
/* 0252D3F4 */ _t42 = cpu->r[29] + 0x00000218u;
|
|
/* 0252D3F4 */ rbrew_write32(cpu->mem, _t42, cpu->r[28]);
|
|
/* 0252D3F8 */ _t43 = cpu->r[29] + 0x0000020Cu;
|
|
/* 0252D3F8 */ rbrew_write_f32(cpu->mem, _t43, cpu->f[1]);
|
|
/* 0252D3FC */ _t44 = cpu->r[29] + 0x00000220u;
|
|
/* 0252D3FC */ rbrew_write32(cpu->mem, _t44, cpu->r[28]);
|
|
/* 0252D400 */ cpu->r[3] = cpu->r[29] + 0x00000224u;
|
|
/* 0252D400 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252D404 */ _t45 = cpu->r[29] + 0x0000021Cu;
|
|
/* 0252D404 */ rbrew_write_f32(cpu->mem, _t45, cpu->f[0]);
|
|
/* 0252D408 */ _t46 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252D408 */ _t47 = _t46 & 0x00000001u;
|
|
/* 0252D408 */ if (_t47) goto L_0252D40C; else goto L_0252D41C;
|
|
L_0252D40C: ; // 0x252d40c
|
|
/* 0252D40C */ cpu->r[3] = 0x00000004u;
|
|
/* 0252D410 */ Gambit_fn_02801A78(cpu);
|
|
/* 0252D414 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252D418 */ _t48 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252D418 */ _t49 = _t48 & 0x00000001u;
|
|
/* 0252D418 */ if (_t49) goto L_0252D420; else goto L_0252D41C;
|
|
L_0252D41C: ; // 0x252d41c
|
|
/* 0252D41C */ _t50 = cpu->r[3] + 0x00000000u;
|
|
/* 0252D41C */ rbrew_write32(cpu->mem, _t50, cpu->r[28]);
|
|
L_0252D420: ; // 0x252d420
|
|
/* 0252D420 */ _t51 = cpu->r[29] + 0x00000228u;
|
|
/* 0252D420 */ rbrew_write32(cpu->mem, _t51, cpu->r[28]);
|
|
/* 0252D424 */ cpu->r[0] = 0x00000002u;
|
|
/* 0252D428 */ cpu->r[3] = cpu->r[29] + 0x000001B0u;
|
|
/* 0252D42C */ _t52 = cpu->r[29] + 0x0000022Cu;
|
|
/* 0252D42C */ rbrew_write32(cpu->mem, _t52, cpu->r[28]);
|
|
/* 0252D430 */ cpu->r[4] = cpu->r[29];
|
|
/* 0252D434 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0252D438 */ cpu->r[6] = 0x00000000u;
|
|
/* 0252D43C */ _t53 = cpu->r[1] + 0x00000008u;
|
|
/* 0252D43C */ rbrew_write8(cpu->mem, _t53, (uint8_t)cpu->r[0]);
|
|
/* 0252D440 */ Gambit_fn_02530464(cpu);
|
|
/* 0252D444 */ cpu->r[3] = cpu->r[29];
|
|
/* 0252D448 */ cpu->r[4] = cpu->r[29] + 0x000001B0u;
|
|
/* 0252D44C */ Gambit_fn_02000834(cpu);
|
|
/* 0252D450 */ cpu->r[26] = 0x02530000u;
|
|
/* 0252D454 */ cpu->r[5] = 0x100C0000u;
|
|
/* 0252D458 */ cpu->r[27] = 0x100C0000u;
|
|
/* 0252D45C */ cpu->r[26] = cpu->r[26] + 0xFFFFFFB4u;
|
|
/* 0252D460 */ cpu->r[27] = cpu->r[27] + 0x00003A70u;
|
|
/* 0252D464 */ cpu->ctr = cpu->r[26];
|
|
/* 0252D468 */ _t54 = cpu->r[1] + 0x00000010u;
|
|
/* 0252D468 */ rbrew_write32(cpu->mem, _t54, cpu->r[27]);
|
|
/* 0252D46C */ cpu->r[5] = cpu->r[5] + 0x00003BF4u;
|
|
/* 0252D470 */ _t55 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252D470 */ rbrew_write32(cpu->mem, _t55, cpu->r[5]);
|
|
/* 0252D474 */ _t56 = cpu->r[29] + 0x000001C8u;
|
|
/* 0252D474 */ cpu->r[24] = rbrew_read32(cpu->mem, _t56);
|
|
/* 0252D478 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252D47C */ _t57 = cpu->r[24] + 0x00000000u;
|
|
/* 0252D47C */ cpu->r[25] = rbrew_read32(cpu->mem, _t57);
|
|
/* 0252D480 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252D484 */ cpu->r[31] = 0x10110000u;
|
|
/* 0252D488 */ _t58 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252D488 */ cpu->r[7] = rbrew_read32(cpu->mem, _t58);
|
|
/* 0252D48C */ _t59 = cpu->r[31] + 0x00007399u;
|
|
/* 0252D48C */ cpu->r[31] = rbrew_read8(cpu->mem, _t59);
|
|
/* 0252D490 */ _t60 = cpu->r[7] + 0x00000000u;
|
|
/* 0252D490 */ cpu->r[0] = rbrew_read8(cpu->mem, _t60);
|
|
/* 0252D494 */ cpu->r[30] = 0x00000000u;
|
|
/* 0252D498 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 0252D49C */ cpu->r[8] = 0x00080000u;
|
|
/* 0252D4A0 */ _t61 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252D4A0 */ _t62 = _t61 & 0x00000001u;
|
|
/* 0252D4A0 */ if (_t62) goto L_0252D4C8; else goto L_0252D4A4;
|
|
L_0252D4A4: ; // 0x252d4a4
|
|
/* 0252D4A4 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 0252D4A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[8]);
|
|
/* 0252D4AC */ cpu->r[7] = cpu->r[7] + 0x00000001u;
|
|
/* 0252D4B0 */ _t63 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252D4B0 */ _t64 = _t63 & 0x00000001u;
|
|
/* 0252D4B0 */ if (_t64) goto L_0252D4C4; else goto L_0252D4B4;
|
|
L_0252D4B4: ; // 0x252d4b4
|
|
/* 0252D4B4 */ _t65 = cpu->r[7] + 0x00000000u;
|
|
/* 0252D4B4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t65);
|
|
/* 0252D4B8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 0252D4BC */ _t66 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252D4BC */ _t67 = _t66 & 0x00000001u;
|
|
/* 0252D4BC */ if (_t67) goto L_0252D4C0; else goto L_0252D4A4;
|
|
L_0252D4C0: ; // 0x252d4c0
|
|
/* 0252D4C0 */ goto L_0252D4C8;
|
|
L_0252D4C4: ; // 0x252d4c4
|
|
/* 0252D4C4 */ cpu->r[30] = 0x00000000u;
|
|
L_0252D4C8: ; // 0x252d4c8
|
|
/* 0252D4C8 */ _t68 = cpu->r[24] + 0x00000008u;
|
|
/* 0252D4C8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t68);
|
|
/* 0252D4CC */ _t69 = cpu->r[1] + 0x00000010u;
|
|
/* 0252D4CC */ cpu->r[8] = rbrew_read32(cpu->mem, _t69);
|
|
/* 0252D4D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[10]);
|
|
/* 0252D4D4 */ _t70 = cpu->r[8] + 0x00000014u;
|
|
/* 0252D4D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t70);
|
|
/* 0252D4D8 */ _t71 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0252D4D8 */ _t72 = _t71 & 0x00000001u;
|
|
/* 0252D4D8 */ if (_t72) goto L_0252D4E0; else goto L_0252D4DC;
|
|
L_0252D4DC: ; // 0x252d4dc
|
|
/* 0252D4DC */ cpu->r[30] = cpu->r[10] + 0xFFFFFFFFu;
|
|
L_0252D4E0: ; // 0x252d4e0
|
|
/* 0252D4E0 */ cpu->ctr = cpu->r[0];
|
|
/* 0252D4E4 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252D4E8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252D4EC */ _t73 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252D4EC */ cpu->r[4] = rbrew_read32(cpu->mem, _t73);
|
|
/* 0252D4F0 */ cpu->r[6] = 0x00000000u;
|
|
/* 0252D4F4 */ cpu->r[5] = cpu->r[30];
|
|
/* 0252D4F8 */ cpu->r[3] = cpu->r[25];
|
|
/* 0252D4FC */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0252D500 */ _t74 = cpu->r[25] + cpu->r[30];
|
|
/* 0252D500 */ rbrew_write8(cpu->mem, _t74, (uint8_t)cpu->r[31]);
|
|
/* 0252D504 */ cpu->r[12] = 0x02530000u;
|
|
/* 0252D508 */ _t75 = cpu->r[1] + 0x00000028u;
|
|
/* 0252D508 */ rbrew_write32(cpu->mem, _t75, cpu->r[28]);
|
|
/* 0252D50C */ cpu->r[12] = cpu->r[12] + 0x000003D8u;
|
|
/* 0252D510 */ _t76 = cpu->r[1] + 0x00000014u;
|
|
/* 0252D510 */ rbrew_write16(cpu->mem, _t76, (uint16_t)cpu->r[28]);
|
|
/* 0252D514 */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 0252D518 */ _t77 = cpu->r[1] + 0x00000020u;
|
|
/* 0252D518 */ rbrew_write32(cpu->mem, _t77, cpu->r[12]);
|
|
/* 0252D51C */ cpu->r[11] = 0x00000000u;
|
|
/* 0252D520 */ _t78 = cpu->r[1] + 0x00000016u;
|
|
/* 0252D520 */ rbrew_write16(cpu->mem, _t78, (uint16_t)cpu->r[0]);
|
|
/* 0252D524 */ cpu->r[10] = 0x02530000u;
|
|
/* 0252D528 */ _t79 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252D528 */ rbrew_write16(cpu->mem, _t79, (uint16_t)cpu->r[28]);
|
|
/* 0252D52C */ cpu->r[5] = 0xFFFFFFFFu;
|
|
/* 0252D530 */ cpu->r[10] = cpu->r[10] + 0x000003D4u;
|
|
/* 0252D534 */ _t80 = cpu->r[1] + 0x0000001Eu;
|
|
/* 0252D534 */ rbrew_write16(cpu->mem, _t80, (uint16_t)cpu->r[5]);
|
|
/* 0252D538 */ cpu->r[5] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252D53C */ _t81 = cpu->r[1] + 0x00000018u;
|
|
/* 0252D53C */ rbrew_write32(cpu->mem, _t81, cpu->r[10]);
|
|
/* 0252D540 */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 0252D544 */ _t82 = cpu->r[1] + 0x00000024u;
|
|
/* 0252D544 */ rbrew_write16(cpu->mem, _t82, (uint16_t)cpu->r[28]);
|
|
/* 0252D548 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 0252D54C */ cpu->r[3] = cpu->r[29] + 0x000001B0u;
|
|
/* 0252D550 */ _t83 = cpu->r[1] + 0x00000008u;
|
|
/* 0252D550 */ rbrew_write8(cpu->mem, _t83, (uint8_t)cpu->r[11]);
|
|
/* 0252D554 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 0252D558 */ _t84 = cpu->r[1] + 0x00000026u;
|
|
/* 0252D558 */ rbrew_write16(cpu->mem, _t84, (uint16_t)cpu->r[28]);
|
|
/* 0252D55C */ Gambit_fn_02530714(cpu);
|
|
/* 0252D560 */ cpu->r[11] = 0x100C0000u;
|
|
/* 0252D564 */ _t85 = cpu->r[1] + 0x00000010u;
|
|
/* 0252D564 */ rbrew_write32(cpu->mem, _t85, cpu->r[27]);
|
|
/* 0252D568 */ cpu->r[11] = cpu->r[11] + 0x00003BE4u;
|
|
/* 0252D56C */ _t86 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252D56C */ rbrew_write32(cpu->mem, _t86, cpu->r[11]);
|
|
/* 0252D570 */ _t87 = cpu->r[29] + 0x000001C4u;
|
|
/* 0252D570 */ cpu->r[8] = rbrew_read32(cpu->mem, _t87);
|
|
/* 0252D574 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], 0x00000001u);
|
|
/* 0252D578 */ _t88 = cpu->r[29] + 0x000001C8u;
|
|
/* 0252D578 */ cpu->r[27] = rbrew_read32(cpu->mem, _t88);
|
|
/* 0252D57C */ _t89 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252D57C */ _t90 = _t89 & 0x00000001u;
|
|
/* 0252D57C */ if (_t90) goto L_0252D580; else goto L_0252D584;
|
|
L_0252D580: ; // 0x252d580
|
|
/* 0252D580 */ cpu->r[27] = cpu->r[27] + 0x00000024u;
|
|
L_0252D584: ; // 0x252d584
|
|
/* 0252D584 */ cpu->ctr = cpu->r[26];
|
|
/* 0252D588 */ _t91 = cpu->r[27] + 0x00000000u;
|
|
/* 0252D588 */ cpu->r[25] = rbrew_read32(cpu->mem, _t91);
|
|
/* 0252D58C */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252D590 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252D594 */ _t92 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252D594 */ cpu->r[5] = rbrew_read32(cpu->mem, _t92);
|
|
/* 0252D598 */ _t93 = cpu->r[5] + 0x00000000u;
|
|
/* 0252D598 */ cpu->r[10] = rbrew_read8(cpu->mem, _t93);
|
|
/* 0252D59C */ cpu->r[30] = 0x00000000u;
|
|
/* 0252D5A0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[31]);
|
|
/* 0252D5A4 */ cpu->r[6] = 0x00080000u;
|
|
/* 0252D5A8 */ _t94 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252D5A8 */ _t95 = _t94 & 0x00000001u;
|
|
/* 0252D5A8 */ if (_t95) goto L_0252D5D0; else goto L_0252D5AC;
|
|
L_0252D5AC: ; // 0x252d5ac
|
|
/* 0252D5AC */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 0252D5B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[6]);
|
|
/* 0252D5B4 */ cpu->r[5] = cpu->r[5] + 0x00000001u;
|
|
/* 0252D5B8 */ _t96 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252D5B8 */ _t97 = _t96 & 0x00000001u;
|
|
/* 0252D5B8 */ if (_t97) goto L_0252D5CC; else goto L_0252D5BC;
|
|
L_0252D5BC: ; // 0x252d5bc
|
|
/* 0252D5BC */ _t98 = cpu->r[5] + 0x00000000u;
|
|
/* 0252D5BC */ cpu->r[0] = rbrew_read8(cpu->mem, _t98);
|
|
/* 0252D5C0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 0252D5C4 */ _t99 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252D5C4 */ _t100 = _t99 & 0x00000001u;
|
|
/* 0252D5C4 */ if (_t100) goto L_0252D5C8; else goto L_0252D5AC;
|
|
L_0252D5C8: ; // 0x252d5c8
|
|
/* 0252D5C8 */ goto L_0252D5D0;
|
|
L_0252D5CC: ; // 0x252d5cc
|
|
/* 0252D5CC */ cpu->r[30] = 0x00000000u;
|
|
L_0252D5D0: ; // 0x252d5d0
|
|
/* 0252D5D0 */ _t101 = cpu->r[27] + 0x00000008u;
|
|
/* 0252D5D0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t101);
|
|
/* 0252D5D4 */ _t102 = cpu->r[1] + 0x00000010u;
|
|
/* 0252D5D4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t102);
|
|
/* 0252D5D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[9]);
|
|
/* 0252D5DC */ _t103 = cpu->r[6] + 0x00000014u;
|
|
/* 0252D5DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t103);
|
|
/* 0252D5E0 */ _t104 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0252D5E0 */ _t105 = _t104 & 0x00000001u;
|
|
/* 0252D5E0 */ if (_t105) goto L_0252D5E8; else goto L_0252D5E4;
|
|
L_0252D5E4: ; // 0x252d5e4
|
|
/* 0252D5E4 */ cpu->r[30] = cpu->r[9] + 0xFFFFFFFFu;
|
|
L_0252D5E8: ; // 0x252d5e8
|
|
/* 0252D5E8 */ cpu->ctr = cpu->r[0];
|
|
/* 0252D5EC */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252D5F0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252D5F4 */ _t106 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252D5F4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t106);
|
|
/* 0252D5F8 */ cpu->r[6] = 0x00000000u;
|
|
/* 0252D5FC */ cpu->r[5] = cpu->r[30];
|
|
/* 0252D600 */ cpu->r[3] = cpu->r[25];
|
|
/* 0252D604 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0252D608 */ _t107 = cpu->r[25] + cpu->r[30];
|
|
/* 0252D608 */ rbrew_write8(cpu->mem, _t107, (uint8_t)cpu->r[31]);
|
|
/* 0252D60C */ cpu->r[0] = 0x00000001u;
|
|
/* 0252D610 */ _t108 = cpu->r[1] + 0x00000014u;
|
|
/* 0252D610 */ rbrew_write16(cpu->mem, _t108, (uint16_t)cpu->r[28]);
|
|
/* 0252D614 */ cpu->r[8] = 0x02530000u;
|
|
/* 0252D618 */ _t109 = cpu->r[1] + 0x00000026u;
|
|
/* 0252D618 */ rbrew_write16(cpu->mem, _t109, (uint16_t)cpu->r[28]);
|
|
/* 0252D61C */ cpu->r[8] = cpu->r[8] + 0x000003DCu;
|
|
/* 0252D620 */ _t110 = cpu->r[1] + 0x00000008u;
|
|
/* 0252D620 */ rbrew_write8(cpu->mem, _t110, (uint8_t)cpu->r[0]);
|
|
/* 0252D624 */ cpu->r[0] = 0x02530000u;
|
|
/* 0252D628 */ _t111 = cpu->r[1] + 0x00000020u;
|
|
/* 0252D628 */ rbrew_write32(cpu->mem, _t111, cpu->r[8]);
|
|
/* 0252D62C */ cpu->r[0] = cpu->r[0] + 0xFFFFFAECu;
|
|
/* 0252D630 */ _t112 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252D630 */ rbrew_write16(cpu->mem, _t112, (uint16_t)cpu->r[28]);
|
|
/* 0252D634 */ cpu->r[9] = 0xFFFFFFFFu;
|
|
/* 0252D638 */ _t113 = cpu->r[1] + 0x00000024u;
|
|
/* 0252D638 */ rbrew_write16(cpu->mem, _t113, (uint16_t)cpu->r[28]);
|
|
/* 0252D63C */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 0252D640 */ _t114 = cpu->r[1] + 0x0000001Eu;
|
|
/* 0252D640 */ rbrew_write16(cpu->mem, _t114, (uint16_t)cpu->r[9]);
|
|
/* 0252D644 */ cpu->r[3] = cpu->r[29] + 0x000001B0u;
|
|
/* 0252D648 */ _t115 = cpu->r[1] + 0x00000018u;
|
|
/* 0252D648 */ rbrew_write32(cpu->mem, _t115, cpu->r[0]);
|
|
/* 0252D64C */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252D650 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 0252D654 */ _t116 = cpu->r[1] + 0x00000028u;
|
|
/* 0252D654 */ rbrew_write32(cpu->mem, _t116, cpu->r[28]);
|
|
/* 0252D658 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 0252D65C */ _t117 = cpu->r[1] + 0x00000016u;
|
|
/* 0252D65C */ rbrew_write16(cpu->mem, _t117, (uint16_t)cpu->r[9]);
|
|
/* 0252D660 */ Gambit_fn_02530714(cpu);
|
|
L_0252D664: ; // 0x252d664
|
|
/* 0252D664 */ cpu->r[3] = cpu->r[29];
|
|
/* 0252D668 */ /* nop */
|
|
/* 0252D66C */ _t118 = cpu->r[1] + 0x00000054u;
|
|
/* 0252D66C */ cpu->r[0] = rbrew_read32(cpu->mem, _t118);
|
|
/* 0252D670 */ cpu->lr = cpu->r[0];
|
|
/* 0252D674 */ cpu->r[1] = cpu->r[1] + 0x00000050u;
|
|
/* 0252D678 */ return;
|
|
}
|
|
|
|
// fn_0252D67C @ 0x252d67c
|
|
void Gambit_fn_0252D67C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_0252D67C: ; // 0x252d67c
|
|
/* 0252D67C */ cpu->r[0] = cpu->lr;
|
|
/* 0252D680 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0252D680 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252D680 */ cpu->r[1] = _t0;
|
|
/* 0252D684 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0252D684 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0252D688 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 0252D688 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0252D68C */ cpu->r[30] = cpu->r[3];
|
|
/* 0252D690 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0252D694 */ cpu->r[31] = cpu->r[4];
|
|
/* 0252D698 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252D698 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0252D69C */ Gambit_fn_024F6710(cpu);
|
|
/* 0252D6A0 */ cpu->r[5] = cpu->r[3];
|
|
/* 0252D6A4 */ cpu->r[4] = cpu->r[31];
|
|
/* 0252D6A8 */ cpu->r[3] = cpu->r[30];
|
|
/* 0252D6AC */ Gambit_fn_024F4798(cpu);
|
|
/* 0252D6B0 */ _t4 = cpu->r[30] + 0x0000002Cu;
|
|
/* 0252D6B0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0252D6B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0252D6B8 */ cpu->r[0] = 0x00000001u;
|
|
/* 0252D6BC */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252D6BC */ _t6 = _t5 & 0x00000001u;
|
|
/* 0252D6BC */ if (_t6) goto L_0252D6CC; else goto L_0252D6C0;
|
|
L_0252D6C0: ; // 0x252d6c0
|
|
/* 0252D6C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000001u);
|
|
/* 0252D6C4 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252D6C4 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0252D6C4 */ if (_t8) goto L_0252D6CC; else goto L_0252D6C8;
|
|
L_0252D6C8: ; // 0x252d6c8
|
|
/* 0252D6C8 */ cpu->r[0] = 0x00000000u;
|
|
L_0252D6CC: ; // 0x252d6cc
|
|
/* 0252D6CC */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 0252D6CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0252D6D0 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252D6D0 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0252D6D0 */ if (_t10) goto L_0252D6D4; else goto L_0252D6DC;
|
|
L_0252D6D4: ; // 0x252d6d4
|
|
/* 0252D6D4 */ cpu->r[0] = 0x00000000u;
|
|
/* 0252D6D8 */ _t11 = cpu->r[30] + 0x0000002Cu;
|
|
/* 0252D6D8 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
L_0252D6DC: ; // 0x252d6dc
|
|
/* 0252D6DC */ _t12 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252D6DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0252D6E0 */ _t13 = cpu->r[1] + 0x00000010u;
|
|
/* 0252D6E0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0252D6E4 */ cpu->lr = cpu->r[0];
|
|
/* 0252D6E8 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 0252D6E8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0252D6EC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0252D6F0 */ return;
|
|
}
|
|
|
|
// fn_0252D680 @ 0x252d680
|
|
void Gambit_fn_0252D680(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_0252D680: ; // 0x252d680
|
|
/* 0252D680 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0252D680 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252D680 */ cpu->r[1] = _t0;
|
|
/* 0252D684 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0252D684 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0252D688 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 0252D688 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0252D68C */ cpu->r[30] = cpu->r[3];
|
|
/* 0252D690 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0252D694 */ cpu->r[31] = cpu->r[4];
|
|
/* 0252D698 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252D698 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0252D69C */ Gambit_fn_024F6710(cpu);
|
|
/* 0252D6A0 */ cpu->r[5] = cpu->r[3];
|
|
/* 0252D6A4 */ cpu->r[4] = cpu->r[31];
|
|
/* 0252D6A8 */ cpu->r[3] = cpu->r[30];
|
|
/* 0252D6AC */ Gambit_fn_024F4798(cpu);
|
|
/* 0252D6B0 */ _t4 = cpu->r[30] + 0x0000002Cu;
|
|
/* 0252D6B0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0252D6B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0252D6B8 */ cpu->r[0] = 0x00000001u;
|
|
/* 0252D6BC */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252D6BC */ _t6 = _t5 & 0x00000001u;
|
|
/* 0252D6BC */ if (_t6) goto L_0252D6CC; else goto L_0252D6C0;
|
|
L_0252D6C0: ; // 0x252d6c0
|
|
/* 0252D6C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000001u);
|
|
/* 0252D6C4 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252D6C4 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0252D6C4 */ if (_t8) goto L_0252D6CC; else goto L_0252D6C8;
|
|
L_0252D6C8: ; // 0x252d6c8
|
|
/* 0252D6C8 */ cpu->r[0] = 0x00000000u;
|
|
L_0252D6CC: ; // 0x252d6cc
|
|
/* 0252D6CC */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 0252D6CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0252D6D0 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252D6D0 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0252D6D0 */ if (_t10) goto L_0252D6D4; else goto L_0252D6DC;
|
|
L_0252D6D4: ; // 0x252d6d4
|
|
/* 0252D6D4 */ cpu->r[0] = 0x00000000u;
|
|
/* 0252D6D8 */ _t11 = cpu->r[30] + 0x0000002Cu;
|
|
/* 0252D6D8 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
L_0252D6DC: ; // 0x252d6dc
|
|
/* 0252D6DC */ _t12 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252D6DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0252D6E0 */ _t13 = cpu->r[1] + 0x00000010u;
|
|
/* 0252D6E0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0252D6E4 */ cpu->lr = cpu->r[0];
|
|
/* 0252D6E8 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 0252D6E8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0252D6EC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0252D6F0 */ return;
|
|
}
|
|
|
|
// fn_0252D6F4 @ 0x252d6f4
|
|
void Gambit_fn_0252D6F4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _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;
|
|
|
|
L_0205FE94: ; // 0x205fe94
|
|
/* 0205FE94 */ _t0 = cpu->r[1] + 0xFFFFFFB8u;
|
|
/* 0205FE94 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0205FE94 */ cpu->r[1] = _t0;
|
|
/* 0205FE98 */ /* nop */
|
|
/* 0205FE9C */ cpu->r[0] = cpu->lr;
|
|
/* 0205FEA0 */ cpu->r[28] = cpu->r[3];
|
|
/* 0205FEA4 */ _t1 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0205FEA4 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0205FEA8 */ Gambit_fn_02062AF0(cpu);
|
|
/* 0205FEAC */ cpu->r[11] = 0x101E0000u;
|
|
/* 0205FEB0 */ _t2 = cpu->r[11] + 0xFFFFC394u;
|
|
/* 0205FEB0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0205FEB0 */ cpu->r[11] = _t2;
|
|
/* 0205FEB4 */ cpu->r[26] = cpu->r[3];
|
|
/* 0205FEB8 */ cpu->r[27] = 0x00000000u;
|
|
/* 0205FEBC */ cpu->r[31] = 0x101E0000u;
|
|
/* 0205FEC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0205FEC4 */ cpu->r[31] = cpu->r[31] + 0xFFFFC2C8u;
|
|
/* 0205FEC8 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0205FEC8 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0205FEC8 */ if (_t4) goto L_0205FECC; else goto L_0205FF14;
|
|
L_0205FECC: ; // 0x205fecc
|
|
/* 0205FECC */ cpu->r[0] = 0x00000001u;
|
|
/* 0205FED0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0205FED4 */ cpu->r[6] = cpu->r[31] + 0x00000060u;
|
|
/* 0205FED8 */ cpu->r[4] = 0x10000000u;
|
|
/* 0205FEDC */ cpu->r[7] = 0x00000000u;
|
|
/* 0205FEE0 */ cpu->r[5] = 0x00000002u;
|
|
/* 0205FEE4 */ cpu->r[4] = cpu->r[4] + 0x00006B08u;
|
|
/* 0205FEE8 */ _t5 = cpu->r[11] + 0x00000000u;
|
|
/* 0205FEE8 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0205FEEC */ Gambit_fn_028A6750(cpu);
|
|
/* 0205FEF0 */ cpu->r[6] = 0x02060000u;
|
|
/* 0205FEF4 */ cpu->r[3] = cpu->r[31] + 0x00000060u;
|
|
/* 0205FEF8 */ cpu->r[4] = 0x00000002u;
|
|
/* 0205FEFC */ cpu->r[6] = cpu->r[6] + 0x000001FCu;
|
|
/* 0205FF00 */ cpu->r[5] = 0x00000008u;
|
|
/* 0205FF04 */ Gambit_fn_02C82E00(cpu);
|
|
/* 0205FF08 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0205FF0C */ cpu->r[3] = cpu->r[3] + 0x00002E84u;
|
|
/* 0205FF10 */ Gambit_fn_02C83090(cpu);
|
|
L_0205FF14: ; // 0x205ff14
|
|
/* 0205FF14 */ _t6 = cpu->r[31] + 0x00000054u;
|
|
/* 0205FF14 */ cpu->r[10] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0205FF18 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0205FF1C */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0205FF1C */ _t8 = _t7 & 0x00000001u;
|
|
/* 0205FF1C */ if (_t8) goto L_0205FF20; else goto L_02060014;
|
|
L_0205FF20: ; // 0x205ff20
|
|
/* 0205FF20 */ cpu->r[24] = 0x101D0000u;
|
|
/* 0205FF24 */ cpu->r[29] = 0x00000000u;
|
|
/* 0205FF28 */ cpu->r[19] = 0x101D0000u;
|
|
/* 0205FF2C */ cpu->r[20] = 0x101D0000u;
|
|
/* 0205FF30 */ cpu->r[21] = 0x00000001u;
|
|
/* 0205FF34 */ cpu->r[25] = cpu->r[29];
|
|
/* 0205FF38 */ cpu->r[23] = 0x101D0000u;
|
|
/* 0205FF3C */ cpu->r[24] = cpu->r[24] + 0xFFFFEA68u;
|
|
/* 0205FF40 */ cpu->r[22] = 0x101D0000u;
|
|
L_0205FF44: ; // 0x205ff44
|
|
/* 0205FF44 */ _t9 = cpu->r[22] + 0xFFFFDDFCu;
|
|
/* 0205FF44 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0205FF48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0205FF4C */ cpu->r[30] = cpu->r[29];
|
|
/* 0205FF50 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0205FF50 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0205FF50 */ if (_t11) goto L_0205FF54; else goto L_0205FF6C;
|
|
L_0205FF54: ; // 0x205ff54
|
|
/* 0205FF54 */ cpu->r[4] = 0x101C0000u;
|
|
/* 0205FF58 */ cpu->r[3] = cpu->r[23] + 0x000038EFu;
|
|
/* 0205FF5C */ cpu->r[5] = 0x0000000Du;
|
|
/* 0205FF60 */ cpu->r[4] = cpu->r[4] + 0x00002E74u;
|
|
/* 0205FF64 */ _t12 = cpu->r[22] + 0xFFFFDDFCu;
|
|
/* 0205FF64 */ rbrew_write32(cpu->mem, _t12, cpu->r[21]);
|
|
/* 0205FF68 */ rbrew_dispatch(cpu, 0x02d0b870u);
|
|
L_0205FF6C: ; // 0x205ff6c
|
|
/* 0205FF6C */ _t13 = cpu->r[20] + 0xFFFFDDF8u;
|
|
/* 0205FF6C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0205FF70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0205FF74 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0205FF74 */ _t15 = _t14 & 0x00000001u;
|
|
/* 0205FF74 */ if (_t15) goto L_0205FF78; else goto L_0205FF80;
|
|
L_0205FF78: ; // 0x205ff78
|
|
/* 0205FF78 */ _t16 = cpu->r[19] + 0xFFFFEA70u;
|
|
/* 0205FF78 */ rbrew_write32(cpu->mem, _t16, cpu->r[25]);
|
|
/* 0205FF7C */ _t17 = cpu->r[20] + 0xFFFFDDF8u;
|
|
/* 0205FF7C */ rbrew_write32(cpu->mem, _t17, cpu->r[21]);
|
|
L_0205FF80: ; // 0x205ff80
|
|
/* 0205FF80 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], 0x00000002u);
|
|
/* 0205FF84 */ _t18 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0205FF84 */ _t19 = _t18 & 0x00000001u;
|
|
/* 0205FF84 */ if (_t19) goto L_0205FFAC; else goto L_0205FF88;
|
|
L_0205FF88: ; // 0x205ff88
|
|
/* 0205FF88 */ cpu->r[4] = cpu->r[29];
|
|
/* 0205FF8C */ cpu->r[3] = cpu->r[31];
|
|
/* 0205FF90 */ cpu->r[5] = 0x00000000u;
|
|
/* 0205FF94 */ Gambit_fn_028A6634(cpu);
|
|
/* 0205FF98 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 0205FF9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000002u);
|
|
/* 0205FFA0 */ _t20 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0205FFA0 */ _t21 = _t20 & 0x00000001u;
|
|
/* 0205FFA0 */ if (_t21) goto L_02060014; else goto L_0205FFA4;
|
|
L_0205FFA4: ; // 0x205ffa4
|
|
/* 0205FFA4 */ _t22 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0205FFA4 */ _t23 = _t22 & 0x00000001u;
|
|
/* 0205FFA4 */ if (_t23) goto L_0205FF44; else goto L_0205FFA8;
|
|
L_0205FFA8: ; // 0x205ffa8
|
|
/* 0205FFA8 */ goto L_02060014;
|
|
L_0205FFAC: ; // 0x205ffac
|
|
/* 0205FFAC */ _t24 = cpu->r[19] + 0xFFFFEA70u;
|
|
/* 0205FFAC */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0205FFB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0205FFB4 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0205FFB4 */ _t26 = _t25 & 0x00000001u;
|
|
/* 0205FFB4 */ if (_t26) goto L_0205FFB8; else goto L_0205FFF0;
|
|
L_0205FFB8: ; // 0x205ffb8
|
|
/* 0205FFB8 */ Gambit_fn_0282A450(cpu);
|
|
/* 0205FFBC */ cpu->r[18] = cpu->r[3];
|
|
/* 0205FFC0 */ Gambit_fn_02836FFC(cpu);
|
|
/* 0205FFC4 */ _t27 = cpu->r[19] + 0xFFFFEA70u;
|
|
/* 0205FFC4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0205FFC8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 0205FFCC */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0205FFCC */ _t29 = _t28 & 0x00000001u;
|
|
/* 0205FFCC */ if (_t29) goto L_0205FFD0; else goto L_0205FFE4;
|
|
L_0205FFD0: ; // 0x205ffd0
|
|
/* 0205FFD0 */ cpu->r[5] = 0x00000002u;
|
|
/* 0205FFD4 */ cpu->r[4] = cpu->r[23] + 0x000038EFu;
|
|
/* 0205FFD8 */ cpu->r[3] = cpu->r[24];
|
|
/* 0205FFDC */ Gambit_fn_0282A374(cpu);
|
|
/* 0205FFE0 */ _t30 = cpu->r[19] + 0xFFFFEA70u;
|
|
/* 0205FFE0 */ rbrew_write32(cpu->mem, _t30, cpu->r[24]);
|
|
L_0205FFE4: ; // 0x205ffe4
|
|
/* 0205FFE4 */ cpu->r[3] = cpu->r[18];
|
|
/* 0205FFE8 */ Gambit_fn_02837030(cpu);
|
|
/* 0205FFEC */ _t31 = cpu->r[19] + 0xFFFFEA70u;
|
|
/* 0205FFEC */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
L_0205FFF0: ; // 0x205fff0
|
|
/* 0205FFF0 */ cpu->r[8] = rbrew_rlwinm(cpu->r[30], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0205FFF4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0205FFF8 */ _t32 = cpu->r[8] + cpu->r[0];
|
|
/* 0205FFF8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0205FFFC */ cpu->r[4] = cpu->r[29];
|
|
/* 02060000 */ Gambit_fn_028A6634(cpu);
|
|
/* 02060004 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 02060008 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000002u);
|
|
/* 0206000C */ _t33 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0206000C */ _t34 = _t33 & 0x00000001u;
|
|
/* 0206000C */ if (_t34) goto L_02060014; else goto L_02060010;
|
|
L_02060010: ; // 0x2060010
|
|
/* 02060010 */ _t35 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02060010 */ _t36 = _t35 & 0x00000001u;
|
|
/* 02060010 */ if (_t36) goto L_0205FF44; else goto L_02060014;
|
|
L_02060014: ; // 0x2060014
|
|
/* 02060014 */ cpu->r[3] = cpu->r[28];
|
|
/* 02060018 */ cpu->r[4] = cpu->r[31];
|
|
/* 0206001C */ Gambit_fn_027B81E4(cpu);
|
|
/* 02060020 */ cpu->r[9] = 0x101E0000u;
|
|
/* 02060024 */ cpu->r[30] = 0x101E0000u;
|
|
/* 02060028 */ _t37 = cpu->r[9] + 0xFFFFC398u;
|
|
/* 02060028 */ cpu->r[0] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02060028 */ cpu->r[9] = _t37;
|
|
/* 0206002C */ cpu->r[30] = cpu->r[30] + 0xFFFFC338u;
|
|
/* 02060030 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02060034 */ cpu->r[26] = cpu->r[26] + 0x00000001u;
|
|
/* 02060038 */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02060038 */ _t39 = _t38 & 0x00000001u;
|
|
/* 02060038 */ if (_t39) goto L_02060050; else goto L_0206003C;
|
|
L_0206003C: ; // 0x206003c
|
|
/* 0206003C */ cpu->r[3] = cpu->r[28];
|
|
/* 02060040 */ cpu->r[4] = cpu->r[30];
|
|
/* 02060044 */ Gambit_fn_027B81E4(cpu);
|
|
/* 02060048 */ cpu->r[3] = cpu->r[26] + 0x00000001u;
|
|
/* 0206004C */ goto L_02060164;
|
|
L_02060050: ; // 0x2060050
|
|
/* 02060050 */ cpu->r[5] = 0x00000001u;
|
|
/* 02060054 */ cpu->r[8] = 0x00000040u;
|
|
/* 02060058 */ _t40 = cpu->r[9] + 0x00000000u;
|
|
/* 02060058 */ rbrew_write32(cpu->mem, _t40, cpu->r[5]);
|
|
/* 0206005C */ cpu->r[31] = 0x10110000u;
|
|
/* 02060060 */ _t41 = cpu->r[30] + 0x00000008u;
|
|
/* 02060060 */ rbrew_write32(cpu->mem, _t41, cpu->r[8]);
|
|
/* 02060064 */ cpu->r[25] = cpu->r[30] + 0x0000000Cu;
|
|
/* 02060068 */ _t42 = cpu->r[31] + 0x00007399u;
|
|
/* 02060068 */ cpu->r[31] = rbrew_read8(cpu->mem, _t42);
|
|
/* 0206006C */ cpu->r[9] = 0x10000000u;
|
|
/* 02060070 */ cpu->r[7] = 0x10000000u;
|
|
/* 02060074 */ _t43 = cpu->r[30] + 0x00000000u;
|
|
/* 02060074 */ rbrew_write32(cpu->mem, _t43, cpu->r[25]);
|
|
/* 02060078 */ cpu->r[9] = cpu->r[9] + 0x00006AC4u;
|
|
/* 0206007C */ _t44 = cpu->r[30] + 0x0000004Bu;
|
|
/* 0206007C */ rbrew_write8(cpu->mem, _t44, (uint8_t)cpu->r[31]);
|
|
/* 02060080 */ cpu->r[7] = cpu->r[7] + 0x00006A94u;
|
|
/* 02060084 */ cpu->r[6] = 0x10000000u;
|
|
/* 02060088 */ _t45 = cpu->r[30] + 0x00000004u;
|
|
/* 02060088 */ rbrew_write32(cpu->mem, _t45, cpu->r[9]);
|
|
/* 0206008C */ cpu->r[6] = cpu->r[6] + 0x00006AFCu;
|
|
/* 02060090 */ _t46 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02060090 */ rbrew_write32(cpu->mem, _t46, cpu->r[7]);
|
|
/* 02060094 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02060098 */ _t47 = cpu->r[1] + 0x00000008u;
|
|
/* 02060098 */ rbrew_write32(cpu->mem, _t47, cpu->r[6]);
|
|
/* 0206009C */ Gambit_fn_0206018C(cpu);
|
|
/* 020600A0 */ _t48 = cpu->r[1] + 0x00000008u;
|
|
/* 020600A0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t48);
|
|
/* 020600A4 */ _t49 = cpu->r[12] + 0x00000000u;
|
|
/* 020600A4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t49);
|
|
/* 020600A8 */ cpu->r[6] = 0x00080000u;
|
|
/* 020600AC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 020600B0 */ cpu->r[29] = 0x00000000u;
|
|
/* 020600B4 */ _t50 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020600B4 */ _t51 = _t50 & 0x00000001u;
|
|
/* 020600B4 */ if (_t51) goto L_020600DC; else goto L_020600B8;
|
|
L_020600B8: ; // 0x20600b8
|
|
/* 020600B8 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 020600BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[6]);
|
|
/* 020600C0 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 020600C4 */ _t52 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 020600C4 */ _t53 = _t52 & 0x00000001u;
|
|
/* 020600C4 */ if (_t53) goto L_020600D8; else goto L_020600C8;
|
|
L_020600C8: ; // 0x20600c8
|
|
/* 020600C8 */ _t54 = cpu->r[12] + 0x00000000u;
|
|
/* 020600C8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t54);
|
|
/* 020600CC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 020600D0 */ _t55 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020600D0 */ _t56 = _t55 & 0x00000001u;
|
|
/* 020600D0 */ if (_t56) goto L_020600D4; else goto L_020600B8;
|
|
L_020600D4: ; // 0x20600d4
|
|
/* 020600D4 */ goto L_020600DC;
|
|
L_020600D8: ; // 0x20600d8
|
|
/* 020600D8 */ cpu->r[29] = 0x00000000u;
|
|
L_020600DC: ; // 0x20600dc
|
|
/* 020600DC */ _t57 = cpu->r[30] + 0x00000008u;
|
|
/* 020600DC */ cpu->r[11] = rbrew_read32(cpu->mem, _t57);
|
|
/* 020600E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[11]);
|
|
/* 020600E4 */ _t58 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 020600E4 */ _t59 = _t58 & 0x00000001u;
|
|
/* 020600E4 */ if (_t59) goto L_020600EC; else goto L_020600E8;
|
|
L_020600E8: ; // 0x20600e8
|
|
/* 020600E8 */ cpu->r[29] = cpu->r[11] + 0xFFFFFFFFu;
|
|
L_020600EC: ; // 0x20600ec
|
|
/* 020600EC */ _t60 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020600EC */ cpu->r[5] = rbrew_read32(cpu->mem, _t60);
|
|
/* 020600F0 */ _t61 = cpu->r[5] + 0x00000014u;
|
|
/* 020600F0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t61);
|
|
/* 020600F4 */ cpu->ctr = cpu->r[7];
|
|
/* 020600F8 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 020600FC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02060100 */ _t62 = cpu->r[1] + 0x00000008u;
|
|
/* 02060100 */ cpu->r[4] = rbrew_read32(cpu->mem, _t62);
|
|
/* 02060104 */ cpu->r[3] = cpu->r[25];
|
|
/* 02060108 */ cpu->r[5] = cpu->r[29];
|
|
/* 0206010C */ cpu->r[6] = 0x00000000u;
|
|
/* 02060110 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 02060114 */ cpu->r[9] = 0x00000002u;
|
|
/* 02060118 */ _t63 = cpu->r[25] + cpu->r[29];
|
|
/* 02060118 */ rbrew_write8(cpu->mem, _t63, (uint8_t)cpu->r[31]);
|
|
/* 0206011C */ cpu->r[10] = 0x10000000u;
|
|
/* 02060120 */ cpu->r[8] = 0x10000000u;
|
|
/* 02060124 */ _t64 = cpu->r[30] + 0x0000004Cu;
|
|
/* 02060124 */ rbrew_write32(cpu->mem, _t64, cpu->r[9]);
|
|
/* 02060128 */ cpu->r[8] = cpu->r[8] + 0x00006ADCu;
|
|
/* 0206012C */ _t65 = cpu->r[10] + 0x00006AF8u;
|
|
/* 0206012C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t65);
|
|
/* 02060130 */ _t66 = cpu->r[30] + 0x00000004u;
|
|
/* 02060130 */ rbrew_write32(cpu->mem, _t66, cpu->r[8]);
|
|
/* 02060134 */ cpu->r[7] = 0x10000000u;
|
|
/* 02060138 */ _t67 = cpu->r[30] + 0x00000058u;
|
|
/* 02060138 */ rbrew_write_f32(cpu->mem, _t67, cpu->f[0]);
|
|
/* 0206013C */ _t68 = cpu->r[7] + 0x00006AF4u;
|
|
/* 0206013C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t68);
|
|
/* 02060140 */ cpu->r[3] = 0x101C0000u;
|
|
/* 02060144 */ _t69 = cpu->r[30] + 0x00000050u;
|
|
/* 02060144 */ rbrew_write8(cpu->mem, _t69, (uint8_t)cpu->r[27]);
|
|
/* 02060148 */ cpu->r[3] = cpu->r[3] + 0x00002E90u;
|
|
/* 0206014C */ _t70 = cpu->r[30] + 0x00000054u;
|
|
/* 0206014C */ rbrew_write_f32(cpu->mem, _t70, cpu->f[0]);
|
|
/* 02060150 */ Gambit_fn_02C83090(cpu);
|
|
/* 02060154 */ cpu->r[4] = cpu->r[30];
|
|
/* 02060158 */ cpu->r[3] = cpu->r[28];
|
|
/* 0206015C */ Gambit_fn_027B81E4(cpu);
|
|
/* 02060160 */ cpu->r[3] = cpu->r[26] + 0x00000001u;
|
|
L_02060164: ; // 0x2060164
|
|
/* 02060164 */ /* nop */
|
|
/* 02060168 */ _t71 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02060168 */ cpu->r[0] = rbrew_read32(cpu->mem, _t71);
|
|
/* 0206016C */ cpu->lr = cpu->r[0];
|
|
/* 02060170 */ cpu->r[1] = cpu->r[1] + 0x00000048u;
|
|
/* 02060174 */ return;
|
|
L_0252D6F4: ; // 0x252d6f4
|
|
/* 0252D6F4 */ _t72 = cpu->r[3] + 0x00000030u;
|
|
/* 0252D6F4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t72);
|
|
/* 0252D6F8 */ cpu->r[4] = 0x00000000u;
|
|
/* 0252D6FC */ goto L_0205FE94;
|
|
}
|
|
|
|
// fn_0252D700 @ 0x252d700
|
|
void Gambit_fn_0252D700(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _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_0252D700: ; // 0x252d700
|
|
/* 0252D700 */ cpu->r[0] = cpu->lr;
|
|
/* 0252D704 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 0252D704 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252D704 */ cpu->r[1] = _t0;
|
|
/* 0252D708 */ cpu->r[7] = 0x100C0000u;
|
|
/* 0252D70C */ _t1 = cpu->r[1] + 0x00000028u;
|
|
/* 0252D70C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0252D710 */ cpu->r[7] = cpu->r[7] + 0x00003A70u;
|
|
/* 0252D714 */ _t2 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0252D714 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0252D718 */ cpu->r[10] = 0x100C0000u;
|
|
/* 0252D71C */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 0252D71C */ rbrew_write32(cpu->mem, _t3, cpu->r[7]);
|
|
/* 0252D720 */ cpu->r[10] = cpu->r[10] + 0x00003C04u;
|
|
/* 0252D724 */ cpu->r[11] = 0x100C0000u;
|
|
/* 0252D728 */ cpu->r[30] = cpu->r[3];
|
|
/* 0252D72C */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252D72C */ rbrew_write32(cpu->mem, _t4, cpu->r[10]);
|
|
/* 0252D730 */ cpu->r[11] = cpu->r[11] + 0x00003C18u;
|
|
/* 0252D734 */ _t5 = cpu->r[1] + 0x00000034u;
|
|
/* 0252D734 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0252D738 */ _t6 = cpu->r[30] + 0x00000008u;
|
|
/* 0252D738 */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0252D73C */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252D740 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 0252D740 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 0252D744 */ cpu->r[3] = cpu->r[31];
|
|
/* 0252D748 */ _t8 = cpu->r[1] + 0x00000018u;
|
|
/* 0252D748 */ rbrew_write32(cpu->mem, _t8, cpu->r[7]);
|
|
/* 0252D74C */ Gambit_fn_02980A18(cpu);
|
|
/* 0252D750 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 0252D754 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252D754 */ rbrew_write32(cpu->mem, _t9, cpu->r[3]);
|
|
/* 0252D758 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0252D75C */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 0252D75C */ rbrew_write32(cpu->mem, _t10, cpu->r[3]);
|
|
/* 0252D760 */ cpu->r[3] = cpu->r[31];
|
|
/* 0252D764 */ Gambit_fn_02980AB0(cpu);
|
|
/* 0252D768 */ _t11 = cpu->r[1] + 0x00000020u;
|
|
/* 0252D768 */ rbrew_write32(cpu->mem, _t11, cpu->r[3]);
|
|
/* 0252D76C */ _t12 = cpu->r[1] + 0x00000020u;
|
|
/* 0252D76C */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0252D770 */ cpu->r[3] = 0x00000000u;
|
|
/* 0252D774 */ _t13 = cpu->r[1] + 0x00000024u;
|
|
/* 0252D774 */ rbrew_write32(cpu->mem, _t13, cpu->r[4]);
|
|
/* 0252D778 */ _t14 = cpu->r[1] + 0x00000024u;
|
|
/* 0252D778 */ cpu->r[9] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0252D77C */ cpu->r[5] = cpu->r[3];
|
|
/* 0252D780 */ _t15 = cpu->r[30] + 0x00000200u;
|
|
/* 0252D780 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 0252D784 */ cpu->r[4] = 0x00000001u;
|
|
/* 0252D788 */ _t16 = cpu->r[30] + 0x00000204u;
|
|
/* 0252D788 */ rbrew_write32(cpu->mem, _t16, cpu->r[9]);
|
|
/* 0252D78C */ Gambit_fn_02398200(cpu);
|
|
/* 0252D790 */ _t17 = cpu->r[30] + 0x00000008u;
|
|
/* 0252D790 */ cpu->r[12] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0252D794 */ _t18 = cpu->r[30] + 0x00000214u;
|
|
/* 0252D794 */ rbrew_write32(cpu->mem, _t18, cpu->r[3]);
|
|
/* 0252D798 */ _t19 = cpu->r[3] + 0x00000014u;
|
|
/* 0252D798 */ rbrew_write32(cpu->mem, _t19, cpu->r[12]);
|
|
/* 0252D79C */ _t20 = cpu->r[30] + 0x00000214u;
|
|
/* 0252D79C */ cpu->r[3] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0252D7A0 */ cpu->r[4] = 0x00000002u;
|
|
/* 0252D7A4 */ Gambit_fn_023982F0(cpu);
|
|
/* 0252D7A8 */ _t21 = cpu->r[30] + 0x00000214u;
|
|
/* 0252D7A8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0252D7AC */ cpu->r[4] = 0x00000003u;
|
|
/* 0252D7B0 */ Gambit_fn_02398484(cpu);
|
|
/* 0252D7B4 */ cpu->r[3] = 0x00000000u;
|
|
/* 0252D7B8 */ cpu->r[4] = 0x00000001u;
|
|
/* 0252D7BC */ cpu->r[5] = cpu->r[3];
|
|
/* 0252D7C0 */ Gambit_fn_02398200(cpu);
|
|
/* 0252D7C4 */ _t22 = cpu->r[30] + 0x00000008u;
|
|
/* 0252D7C4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0252D7C8 */ _t23 = cpu->r[30] + 0x00000218u;
|
|
/* 0252D7C8 */ rbrew_write32(cpu->mem, _t23, cpu->r[3]);
|
|
/* 0252D7CC */ _t24 = cpu->r[3] + 0x00000014u;
|
|
/* 0252D7CC */ rbrew_write32(cpu->mem, _t24, cpu->r[0]);
|
|
/* 0252D7D0 */ _t25 = cpu->r[30] + 0x00000218u;
|
|
/* 0252D7D0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0252D7D4 */ cpu->r[4] = 0x00000002u;
|
|
/* 0252D7D8 */ Gambit_fn_023982F0(cpu);
|
|
/* 0252D7DC */ _t26 = cpu->r[30] + 0x00000218u;
|
|
/* 0252D7DC */ cpu->r[3] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0252D7E0 */ cpu->r[4] = 0x00000004u;
|
|
/* 0252D7E4 */ Gambit_fn_02398484(cpu);
|
|
/* 0252D7E8 */ _t27 = cpu->r[1] + 0x00000034u;
|
|
/* 0252D7E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0252D7EC */ _t28 = cpu->r[1] + 0x00000028u;
|
|
/* 0252D7EC */ cpu->r[30] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0252D7F0 */ cpu->lr = cpu->r[0];
|
|
/* 0252D7F4 */ _t29 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0252D7F4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0252D7F8 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 0252D7FC */ return;
|
|
}
|
|
|
|
// fn_0252D704 @ 0x252d704
|
|
void Gambit_fn_0252D704(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _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_0252D704: ; // 0x252d704
|
|
/* 0252D704 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 0252D704 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252D704 */ cpu->r[1] = _t0;
|
|
/* 0252D708 */ cpu->r[7] = 0x100C0000u;
|
|
/* 0252D70C */ _t1 = cpu->r[1] + 0x00000028u;
|
|
/* 0252D70C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0252D710 */ cpu->r[7] = cpu->r[7] + 0x00003A70u;
|
|
/* 0252D714 */ _t2 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0252D714 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0252D718 */ cpu->r[10] = 0x100C0000u;
|
|
/* 0252D71C */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 0252D71C */ rbrew_write32(cpu->mem, _t3, cpu->r[7]);
|
|
/* 0252D720 */ cpu->r[10] = cpu->r[10] + 0x00003C04u;
|
|
/* 0252D724 */ cpu->r[11] = 0x100C0000u;
|
|
/* 0252D728 */ cpu->r[30] = cpu->r[3];
|
|
/* 0252D72C */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252D72C */ rbrew_write32(cpu->mem, _t4, cpu->r[10]);
|
|
/* 0252D730 */ cpu->r[11] = cpu->r[11] + 0x00003C18u;
|
|
/* 0252D734 */ _t5 = cpu->r[1] + 0x00000034u;
|
|
/* 0252D734 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0252D738 */ _t6 = cpu->r[30] + 0x00000008u;
|
|
/* 0252D738 */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0252D73C */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252D740 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 0252D740 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 0252D744 */ cpu->r[3] = cpu->r[31];
|
|
/* 0252D748 */ _t8 = cpu->r[1] + 0x00000018u;
|
|
/* 0252D748 */ rbrew_write32(cpu->mem, _t8, cpu->r[7]);
|
|
/* 0252D74C */ Gambit_fn_02980A18(cpu);
|
|
/* 0252D750 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 0252D754 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252D754 */ rbrew_write32(cpu->mem, _t9, cpu->r[3]);
|
|
/* 0252D758 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0252D75C */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 0252D75C */ rbrew_write32(cpu->mem, _t10, cpu->r[3]);
|
|
/* 0252D760 */ cpu->r[3] = cpu->r[31];
|
|
/* 0252D764 */ Gambit_fn_02980AB0(cpu);
|
|
/* 0252D768 */ _t11 = cpu->r[1] + 0x00000020u;
|
|
/* 0252D768 */ rbrew_write32(cpu->mem, _t11, cpu->r[3]);
|
|
/* 0252D76C */ _t12 = cpu->r[1] + 0x00000020u;
|
|
/* 0252D76C */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0252D770 */ cpu->r[3] = 0x00000000u;
|
|
/* 0252D774 */ _t13 = cpu->r[1] + 0x00000024u;
|
|
/* 0252D774 */ rbrew_write32(cpu->mem, _t13, cpu->r[4]);
|
|
/* 0252D778 */ _t14 = cpu->r[1] + 0x00000024u;
|
|
/* 0252D778 */ cpu->r[9] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0252D77C */ cpu->r[5] = cpu->r[3];
|
|
/* 0252D780 */ _t15 = cpu->r[30] + 0x00000200u;
|
|
/* 0252D780 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 0252D784 */ cpu->r[4] = 0x00000001u;
|
|
/* 0252D788 */ _t16 = cpu->r[30] + 0x00000204u;
|
|
/* 0252D788 */ rbrew_write32(cpu->mem, _t16, cpu->r[9]);
|
|
/* 0252D78C */ Gambit_fn_02398200(cpu);
|
|
/* 0252D790 */ _t17 = cpu->r[30] + 0x00000008u;
|
|
/* 0252D790 */ cpu->r[12] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0252D794 */ _t18 = cpu->r[30] + 0x00000214u;
|
|
/* 0252D794 */ rbrew_write32(cpu->mem, _t18, cpu->r[3]);
|
|
/* 0252D798 */ _t19 = cpu->r[3] + 0x00000014u;
|
|
/* 0252D798 */ rbrew_write32(cpu->mem, _t19, cpu->r[12]);
|
|
/* 0252D79C */ _t20 = cpu->r[30] + 0x00000214u;
|
|
/* 0252D79C */ cpu->r[3] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0252D7A0 */ cpu->r[4] = 0x00000002u;
|
|
/* 0252D7A4 */ Gambit_fn_023982F0(cpu);
|
|
/* 0252D7A8 */ _t21 = cpu->r[30] + 0x00000214u;
|
|
/* 0252D7A8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0252D7AC */ cpu->r[4] = 0x00000003u;
|
|
/* 0252D7B0 */ Gambit_fn_02398484(cpu);
|
|
/* 0252D7B4 */ cpu->r[3] = 0x00000000u;
|
|
/* 0252D7B8 */ cpu->r[4] = 0x00000001u;
|
|
/* 0252D7BC */ cpu->r[5] = cpu->r[3];
|
|
/* 0252D7C0 */ Gambit_fn_02398200(cpu);
|
|
/* 0252D7C4 */ _t22 = cpu->r[30] + 0x00000008u;
|
|
/* 0252D7C4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0252D7C8 */ _t23 = cpu->r[30] + 0x00000218u;
|
|
/* 0252D7C8 */ rbrew_write32(cpu->mem, _t23, cpu->r[3]);
|
|
/* 0252D7CC */ _t24 = cpu->r[3] + 0x00000014u;
|
|
/* 0252D7CC */ rbrew_write32(cpu->mem, _t24, cpu->r[0]);
|
|
/* 0252D7D0 */ _t25 = cpu->r[30] + 0x00000218u;
|
|
/* 0252D7D0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0252D7D4 */ cpu->r[4] = 0x00000002u;
|
|
/* 0252D7D8 */ Gambit_fn_023982F0(cpu);
|
|
/* 0252D7DC */ _t26 = cpu->r[30] + 0x00000218u;
|
|
/* 0252D7DC */ cpu->r[3] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0252D7E0 */ cpu->r[4] = 0x00000004u;
|
|
/* 0252D7E4 */ Gambit_fn_02398484(cpu);
|
|
/* 0252D7E8 */ _t27 = cpu->r[1] + 0x00000034u;
|
|
/* 0252D7E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0252D7EC */ _t28 = cpu->r[1] + 0x00000028u;
|
|
/* 0252D7EC */ cpu->r[30] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0252D7F0 */ cpu->lr = cpu->r[0];
|
|
/* 0252D7F4 */ _t29 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0252D7F4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0252D7F8 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 0252D7FC */ return;
|
|
}
|
|
|
|
// fn_0252D800 @ 0x252d800
|
|
void Gambit_fn_0252D800(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_0252D800: ; // 0x252d800
|
|
/* 0252D800 */ cpu->r[0] = cpu->lr;
|
|
/* 0252D804 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0252D804 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252D804 */ cpu->r[1] = _t0;
|
|
/* 0252D808 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252D808 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0252D80C */ cpu->r[12] = 0x101C0000u;
|
|
/* 0252D810 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0252D810 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0252D814 */ _t3 = cpu->r[12] + 0x00006000u;
|
|
/* 0252D814 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0252D818 */ cpu->r[31] = cpu->r[3];
|
|
/* 0252D81C */ _t4 = cpu->r[12] + 0x00000268u;
|
|
/* 0252D81C */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0252D820 */ Gambit_fn_0261F73C(cpu);
|
|
/* 0252D824 */ _t5 = cpu->r[3] + 0x0000002Cu;
|
|
/* 0252D824 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0252D828 */ _t6 = cpu->r[31] + 0x0000002Cu;
|
|
/* 0252D828 */ cpu->r[10] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0252D82C */ cpu->r[5] = 0x00000001u;
|
|
/* 0252D830 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[10]);
|
|
/* 0252D834 */ _t7 = cpu->r[31] + 0x00000030u;
|
|
/* 0252D834 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0252D838 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252D838 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0252D838 */ if (_t9) goto L_0252D83C; else goto L_0252D840;
|
|
L_0252D83C: ; // 0x252d83c
|
|
/* 0252D83C */ cpu->r[5] = 0x00000000u;
|
|
L_0252D840: ; // 0x252d840
|
|
/* 0252D840 */ cpu->r[4] = 0x00000003u;
|
|
/* 0252D844 */ Gambit_fn_027B8224(cpu);
|
|
/* 0252D848 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0252D848 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0252D84C */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252D84C */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0252D850 */ cpu->lr = cpu->r[0];
|
|
/* 0252D854 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0252D858 */ return;
|
|
}
|
|
|
|
// fn_0252D804 @ 0x252d804
|
|
void Gambit_fn_0252D804(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_0252D804: ; // 0x252d804
|
|
/* 0252D804 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0252D804 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252D804 */ cpu->r[1] = _t0;
|
|
/* 0252D808 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252D808 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0252D80C */ cpu->r[12] = 0x101C0000u;
|
|
/* 0252D810 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0252D810 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0252D814 */ _t3 = cpu->r[12] + 0x00006000u;
|
|
/* 0252D814 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0252D818 */ cpu->r[31] = cpu->r[3];
|
|
/* 0252D81C */ _t4 = cpu->r[12] + 0x00000268u;
|
|
/* 0252D81C */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0252D820 */ Gambit_fn_0261F73C(cpu);
|
|
/* 0252D824 */ _t5 = cpu->r[3] + 0x0000002Cu;
|
|
/* 0252D824 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0252D828 */ _t6 = cpu->r[31] + 0x0000002Cu;
|
|
/* 0252D828 */ cpu->r[10] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0252D82C */ cpu->r[5] = 0x00000001u;
|
|
/* 0252D830 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[10]);
|
|
/* 0252D834 */ _t7 = cpu->r[31] + 0x00000030u;
|
|
/* 0252D834 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0252D838 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252D838 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0252D838 */ if (_t9) goto L_0252D83C; else goto L_0252D840;
|
|
L_0252D83C: ; // 0x252d83c
|
|
/* 0252D83C */ cpu->r[5] = 0x00000000u;
|
|
L_0252D840: ; // 0x252d840
|
|
/* 0252D840 */ cpu->r[4] = 0x00000003u;
|
|
/* 0252D844 */ Gambit_fn_027B8224(cpu);
|
|
/* 0252D848 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0252D848 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0252D84C */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252D84C */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0252D850 */ cpu->lr = cpu->r[0];
|
|
/* 0252D854 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0252D858 */ return;
|
|
}
|
|
|
|
// fn_0252D85C @ 0x252d85c
|
|
void Gambit_fn_0252D85C(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0252D85C: ; // 0x252d85c
|
|
/* 0252D85C */ cpu->r[12] = 0x100C0000u;
|
|
/* 0252D860 */ _t0 = cpu->r[12] + 0x00003C24u;
|
|
/* 0252D860 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 0252D864 */ return;
|
|
}
|
|
|
|
// fn_0252D868 @ 0x252d868
|
|
void Gambit_fn_0252D868(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _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_0252D868: ; // 0x252d868
|
|
/* 0252D868 */ cpu->r[0] = cpu->lr;
|
|
/* 0252D86C */ _t0 = cpu->r[1] + 0xFFFFFF80u;
|
|
/* 0252D86C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252D86C */ cpu->r[1] = _t0;
|
|
/* 0252D870 */ _t1 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0252D870 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0252D874 */ cpu->r[31] = cpu->r[3];
|
|
/* 0252D878 */ _t2 = cpu->r[1] + 0x00000078u;
|
|
/* 0252D878 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0252D87C */ _t3 = cpu->r[1] + 0x00000084u;
|
|
/* 0252D87C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0252D880 */ _t4 = cpu->r[31] + 0x00000134u;
|
|
/* 0252D880 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0252D884 */ cpu->r[4] = 0x00000001u;
|
|
/* 0252D888 */ Gambit_fn_02040BB0(cpu);
|
|
/* 0252D88C */ cpu->r[4] = 0x100C0000u;
|
|
/* 0252D890 */ _t5 = cpu->r[31] + 0x00000130u;
|
|
/* 0252D890 */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0252D894 */ cpu->r[5] = 0x00000001u;
|
|
/* 0252D898 */ cpu->r[4] = cpu->r[4] + 0x00003C30u;
|
|
/* 0252D89C */ Gambit_fn_02398850(cpu);
|
|
/* 0252D8A0 */ _t6 = cpu->r[31] + 0x0000007Cu;
|
|
/* 0252D8A0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0252D8A4 */ cpu->r[10] = 0x101F0000u;
|
|
/* 0252D8A8 */ _t7 = cpu->r[31] + 0x00000078u;
|
|
/* 0252D8A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0252D8AC */ _t8 = cpu->r[1] + 0x00000034u;
|
|
/* 0252D8AC */ rbrew_write32(cpu->mem, _t8, cpu->r[8]);
|
|
/* 0252D8B0 */ _t9 = cpu->r[10] + 0x00006328u;
|
|
/* 0252D8B0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0252D8B0 */ cpu->r[10] = _t9;
|
|
/* 0252D8B4 */ _t10 = cpu->r[10] + 0x00000004u;
|
|
/* 0252D8B4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0252D8B8 */ _t11 = cpu->r[1] + 0x00000030u;
|
|
/* 0252D8B8 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 0252D8BC */ _t12 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0252D8BC */ rbrew_write32(cpu->mem, _t12, cpu->r[6]);
|
|
/* 0252D8C0 */ cpu->r[7] = 0x00000003u;
|
|
/* 0252D8C4 */ _t13 = cpu->r[31] + 0x00000080u;
|
|
/* 0252D8C4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0252D8C8 */ _t14 = cpu->r[1] + 0x00000024u;
|
|
/* 0252D8C8 */ rbrew_write32(cpu->mem, _t14, cpu->r[7]);
|
|
/* 0252D8CC */ _t15 = cpu->r[1] + 0x00000038u;
|
|
/* 0252D8CC */ rbrew_write32(cpu->mem, _t15, cpu->r[9]);
|
|
/* 0252D8D0 */ _t16 = cpu->r[31] + 0x0000002Cu;
|
|
/* 0252D8D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0252D8D4 */ _t17 = cpu->r[1] + 0x00000028u;
|
|
/* 0252D8D4 */ rbrew_write32(cpu->mem, _t17, cpu->r[5]);
|
|
/* 0252D8D8 */ _t18 = cpu->r[1] + 0x00000020u;
|
|
/* 0252D8D8 */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
/* 0252D8DC */ Gambit_fn_023F79E8(cpu);
|
|
/* 0252D8E0 */ cpu->r[12] = 0x00000008u;
|
|
/* 0252D8E4 */ cpu->r[5] = cpu->r[3];
|
|
/* 0252D8E8 */ cpu->r[3] = cpu->r[1] + 0x0000003Cu;
|
|
/* 0252D8EC */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252D8EC */ rbrew_write32(cpu->mem, _t19, cpu->r[12]);
|
|
/* 0252D8F0 */ cpu->r[10] = 0x100C0000u;
|
|
/* 0252D8F4 */ cpu->r[4] = 0x00000000u;
|
|
/* 0252D8F8 */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 0252D8FC */ _t20 = cpu->r[10] + 0x00003C28u;
|
|
/* 0252D8FC */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 0252D900 */ cpu->r[9] = 0x000000FEu;
|
|
/* 0252D904 */ cpu->r[8] = cpu->r[1] + 0x00000020u;
|
|
/* 0252D908 */ cpu->r[7] = cpu->r[1] + 0x00000028u;
|
|
/* 0252D90C */ _t21 = cpu->r[1] + 0x00000008u;
|
|
/* 0252D90C */ rbrew_write32(cpu->mem, _t21, cpu->r[9]);
|
|
/* 0252D910 */ cpu->r[9] = 0x101F0000u;
|
|
/* 0252D914 */ cpu->r[6] = cpu->r[1] + 0x00000030u;
|
|
/* 0252D918 */ cpu->r[10] = cpu->r[1] + 0x00000024u;
|
|
/* 0252D91C */ cpu->r[9] = cpu->r[9] + 0x00006350u;
|
|
/* 0252D920 */ _t22 = cpu->r[1] + 0x00000010u;
|
|
/* 0252D920 */ rbrew_write32(cpu->mem, _t22, cpu->r[0]);
|
|
/* 0252D924 */ Gambit_fn_023F6240(cpu);
|
|
/* 0252D928 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0252D92C */ _t23 = cpu->r[3] + 0x000060F4u;
|
|
/* 0252D92C */ cpu->r[3] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0252D930 */ cpu->r[4] = cpu->r[1] + 0x0000003Cu;
|
|
/* 0252D934 */ Gambit_fn_023EF3B4(cpu);
|
|
/* 0252D938 */ cpu->r[3] = cpu->r[31];
|
|
/* 0252D93C */ Gambit_fn_0252D800(cpu);
|
|
/* 0252D940 */ cpu->r[30] = 0x101F0000u;
|
|
/* 0252D944 */ cpu->r[30] = cpu->r[30] + 0xFFFF9BD0u;
|
|
/* 0252D948 */ _t24 = cpu->r[30] + 0x00000004u;
|
|
/* 0252D948 */ cpu->r[5] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0252D94C */ _t25 = cpu->r[5] + 0x00000014u;
|
|
/* 0252D94C */ cpu->r[7] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0252D950 */ cpu->ctr = cpu->r[7];
|
|
/* 0252D954 */ cpu->r[3] = cpu->r[30];
|
|
/* 0252D958 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252D95C */ _t26 = cpu->r[31] + 0x00000030u;
|
|
/* 0252D95C */ cpu->r[3] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0252D960 */ cpu->r[4] = cpu->r[31] + 0x000001F0u;
|
|
/* 0252D964 */ _t27 = cpu->r[30] + 0x00000000u;
|
|
/* 0252D964 */ cpu->r[5] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0252D968 */ cpu->r[6] = 0x00000000u;
|
|
/* 0252D96C */ Gambit_fn_027B72F0(cpu);
|
|
/* 0252D970 */ cpu->r[3] = cpu->r[31];
|
|
/* 0252D974 */ Gambit_fn_0252D85C(cpu);
|
|
/* 0252D978 */ _t28 = cpu->r[31] + 0x000001F0u;
|
|
/* 0252D978 */ cpu->r[10] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0252D97C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0252D980 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252D980 */ _t30 = _t29 & 0x00000001u;
|
|
/* 0252D980 */ if (_t30) goto L_0252D9DC; else goto L_0252D984;
|
|
L_0252D984: ; // 0x252d984
|
|
/* 0252D984 */ _t31 = cpu->r[10] + 0x0000000Cu;
|
|
/* 0252D984 */ cpu->r[12] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0252D988 */ _t32 = cpu->r[31] + 0x000001F4u;
|
|
/* 0252D988 */ cpu->r[0] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0252D98C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[0]);
|
|
/* 0252D990 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252D990 */ _t34 = _t33 & 0x00000001u;
|
|
/* 0252D990 */ if (_t34) goto L_0252D994; else goto L_0252D9DC;
|
|
L_0252D994: ; // 0x252d994
|
|
/* 0252D994 */ _t35 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252D994 */ rbrew_write_f32(cpu->mem, _t35, cpu->f[1]);
|
|
/* 0252D998 */ _t36 = cpu->r[1] + 0x00000014u;
|
|
/* 0252D998 */ rbrew_write_f32(cpu->mem, _t36, cpu->f[1]);
|
|
/* 0252D99C */ _t37 = cpu->r[31] + 0x00000078u;
|
|
/* 0252D99C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 0252D9A0 */ _t38 = cpu->r[1] + 0x00000018u;
|
|
/* 0252D9A0 */ rbrew_write_f32(cpu->mem, _t38, cpu->f[1]);
|
|
/* 0252D9A4 */ _t39 = cpu->r[10] + 0x00000064u;
|
|
/* 0252D9A4 */ rbrew_write_f32(cpu->mem, _t39, cpu->f[0]);
|
|
/* 0252D9A8 */ _t40 = cpu->r[31] + 0x0000007Cu;
|
|
/* 0252D9A8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 0252D9AC */ _t41 = cpu->r[10] + 0x00000068u;
|
|
/* 0252D9AC */ rbrew_write_f32(cpu->mem, _t41, cpu->f[0]);
|
|
/* 0252D9B0 */ _t42 = cpu->r[31] + 0x00000080u;
|
|
/* 0252D9B0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 0252D9B4 */ _t43 = cpu->r[10] + 0x0000006Cu;
|
|
/* 0252D9B4 */ rbrew_write_f32(cpu->mem, _t43, cpu->f[0]);
|
|
/* 0252D9B8 */ _t44 = cpu->r[1] + 0x00000014u;
|
|
/* 0252D9B8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 0252D9BC */ _t45 = cpu->r[10] + 0x0000012Cu;
|
|
/* 0252D9BC */ cpu->r[11] = rbrew_read32(cpu->mem, _t45);
|
|
/* 0252D9C0 */ _t46 = cpu->r[10] + 0x00000070u;
|
|
/* 0252D9C0 */ rbrew_write_f32(cpu->mem, _t46, cpu->f[0]);
|
|
/* 0252D9C4 */ _t47 = cpu->r[1] + 0x00000018u;
|
|
/* 0252D9C4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 0252D9C8 */ cpu->r[11] = cpu->r[11] | 0x00000004u;
|
|
/* 0252D9CC */ _t48 = cpu->r[10] + 0x00000074u;
|
|
/* 0252D9CC */ rbrew_write_f32(cpu->mem, _t48, cpu->f[0]);
|
|
/* 0252D9D0 */ _t49 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252D9D0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t49);
|
|
/* 0252D9D4 */ _t50 = cpu->r[10] + 0x0000012Cu;
|
|
/* 0252D9D4 */ rbrew_write32(cpu->mem, _t50, cpu->r[11]);
|
|
/* 0252D9D8 */ _t51 = cpu->r[10] + 0x00000078u;
|
|
/* 0252D9D8 */ rbrew_write_f32(cpu->mem, _t51, cpu->f[0]);
|
|
L_0252D9DC: ; // 0x252d9dc
|
|
/* 0252D9DC */ cpu->r[8] = 0x100C0000u;
|
|
/* 0252D9E0 */ _t52 = cpu->r[8] + 0x00003BDCu;
|
|
/* 0252D9E0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 0252D9E4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0252D9E8 */ _t53 = cpu->r[31] + 0x00000208u;
|
|
/* 0252D9E8 */ rbrew_write_f32(cpu->mem, _t53, cpu->f[0]);
|
|
/* 0252D9EC */ Gambit_fn_0252D2A8(cpu);
|
|
/* 0252D9F0 */ cpu->r[30] = 0x00000000u;
|
|
/* 0252D9F4 */ _t54 = cpu->r[31] + 0x00000214u;
|
|
/* 0252D9F4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t54);
|
|
/* 0252D9F8 */ _t55 = cpu->r[31] + 0x00000210u;
|
|
/* 0252D9F8 */ rbrew_write32(cpu->mem, _t55, cpu->r[30]);
|
|
/* 0252D9FC */ _t56 = cpu->r[31] + 0x0000020Cu;
|
|
/* 0252D9FC */ rbrew_write_f32(cpu->mem, _t56, cpu->f[1]);
|
|
/* 0252DA00 */ Gambit_fn_02398534(cpu);
|
|
/* 0252DA04 */ cpu->r[4] = 0x100C0000u;
|
|
/* 0252DA08 */ _t57 = cpu->r[31] + 0x00000214u;
|
|
/* 0252DA08 */ cpu->r[3] = rbrew_read32(cpu->mem, _t57);
|
|
/* 0252DA0C */ cpu->r[4] = cpu->r[4] + 0x00003C38u;
|
|
/* 0252DA10 */ cpu->r[5] = 0x00000001u;
|
|
/* 0252DA14 */ Gambit_fn_02398850(cpu);
|
|
/* 0252DA18 */ _t58 = cpu->r[31] + 0x00000218u;
|
|
/* 0252DA18 */ cpu->r[3] = rbrew_read32(cpu->mem, _t58);
|
|
/* 0252DA1C */ Gambit_fn_02398534(cpu);
|
|
/* 0252DA20 */ cpu->r[4] = 0x100C0000u;
|
|
/* 0252DA24 */ _t59 = cpu->r[31] + 0x00000218u;
|
|
/* 0252DA24 */ cpu->r[3] = rbrew_read32(cpu->mem, _t59);
|
|
/* 0252DA28 */ cpu->r[5] = 0x00000001u;
|
|
/* 0252DA2C */ cpu->r[4] = cpu->r[4] + 0x00003C2Cu;
|
|
/* 0252DA30 */ Gambit_fn_02398850(cpu);
|
|
/* 0252DA34 */ _t60 = cpu->r[31] + 0x00000220u;
|
|
/* 0252DA34 */ rbrew_write32(cpu->mem, _t60, cpu->r[30]);
|
|
/* 0252DA38 */ cpu->r[7] = 0x100C0000u;
|
|
/* 0252DA3C */ _t61 = cpu->r[31] + 0x00000224u;
|
|
/* 0252DA3C */ rbrew_write32(cpu->mem, _t61, cpu->r[30]);
|
|
/* 0252DA40 */ _t62 = cpu->r[7] + 0x00003BE0u;
|
|
/* 0252DA40 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t62);
|
|
/* 0252DA44 */ _t63 = cpu->r[31] + 0x00000228u;
|
|
/* 0252DA44 */ rbrew_write32(cpu->mem, _t63, cpu->r[30]);
|
|
/* 0252DA48 */ _t64 = cpu->r[31] + 0x0000021Cu;
|
|
/* 0252DA48 */ rbrew_write_f32(cpu->mem, _t64, cpu->f[0]);
|
|
/* 0252DA4C */ _t65 = cpu->r[31] + 0x0000022Cu;
|
|
/* 0252DA4C */ rbrew_write32(cpu->mem, _t65, cpu->r[30]);
|
|
/* 0252DA50 */ _t66 = cpu->r[1] + 0x00000084u;
|
|
/* 0252DA50 */ cpu->r[0] = rbrew_read32(cpu->mem, _t66);
|
|
/* 0252DA54 */ _t67 = cpu->r[1] + 0x00000078u;
|
|
/* 0252DA54 */ cpu->r[30] = rbrew_read32(cpu->mem, _t67);
|
|
/* 0252DA58 */ cpu->lr = cpu->r[0];
|
|
/* 0252DA5C */ _t68 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0252DA5C */ cpu->r[31] = rbrew_read32(cpu->mem, _t68);
|
|
/* 0252DA60 */ cpu->r[1] = cpu->r[1] + 0x00000080u;
|
|
/* 0252DA64 */ return;
|
|
}
|
|
|
|
// fn_0252D86C @ 0x252d86c
|
|
void Gambit_fn_0252D86C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _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_0252D86C: ; // 0x252d86c
|
|
/* 0252D86C */ _t0 = cpu->r[1] + 0xFFFFFF80u;
|
|
/* 0252D86C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252D86C */ cpu->r[1] = _t0;
|
|
/* 0252D870 */ _t1 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0252D870 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0252D874 */ cpu->r[31] = cpu->r[3];
|
|
/* 0252D878 */ _t2 = cpu->r[1] + 0x00000078u;
|
|
/* 0252D878 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0252D87C */ _t3 = cpu->r[1] + 0x00000084u;
|
|
/* 0252D87C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0252D880 */ _t4 = cpu->r[31] + 0x00000134u;
|
|
/* 0252D880 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0252D884 */ cpu->r[4] = 0x00000001u;
|
|
/* 0252D888 */ Gambit_fn_02040BB0(cpu);
|
|
/* 0252D88C */ cpu->r[4] = 0x100C0000u;
|
|
/* 0252D890 */ _t5 = cpu->r[31] + 0x00000130u;
|
|
/* 0252D890 */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0252D894 */ cpu->r[5] = 0x00000001u;
|
|
/* 0252D898 */ cpu->r[4] = cpu->r[4] + 0x00003C30u;
|
|
/* 0252D89C */ Gambit_fn_02398850(cpu);
|
|
/* 0252D8A0 */ _t6 = cpu->r[31] + 0x0000007Cu;
|
|
/* 0252D8A0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0252D8A4 */ cpu->r[10] = 0x101F0000u;
|
|
/* 0252D8A8 */ _t7 = cpu->r[31] + 0x00000078u;
|
|
/* 0252D8A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0252D8AC */ _t8 = cpu->r[1] + 0x00000034u;
|
|
/* 0252D8AC */ rbrew_write32(cpu->mem, _t8, cpu->r[8]);
|
|
/* 0252D8B0 */ _t9 = cpu->r[10] + 0x00006328u;
|
|
/* 0252D8B0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0252D8B0 */ cpu->r[10] = _t9;
|
|
/* 0252D8B4 */ _t10 = cpu->r[10] + 0x00000004u;
|
|
/* 0252D8B4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0252D8B8 */ _t11 = cpu->r[1] + 0x00000030u;
|
|
/* 0252D8B8 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 0252D8BC */ _t12 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0252D8BC */ rbrew_write32(cpu->mem, _t12, cpu->r[6]);
|
|
/* 0252D8C0 */ cpu->r[7] = 0x00000003u;
|
|
/* 0252D8C4 */ _t13 = cpu->r[31] + 0x00000080u;
|
|
/* 0252D8C4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0252D8C8 */ _t14 = cpu->r[1] + 0x00000024u;
|
|
/* 0252D8C8 */ rbrew_write32(cpu->mem, _t14, cpu->r[7]);
|
|
/* 0252D8CC */ _t15 = cpu->r[1] + 0x00000038u;
|
|
/* 0252D8CC */ rbrew_write32(cpu->mem, _t15, cpu->r[9]);
|
|
/* 0252D8D0 */ _t16 = cpu->r[31] + 0x0000002Cu;
|
|
/* 0252D8D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0252D8D4 */ _t17 = cpu->r[1] + 0x00000028u;
|
|
/* 0252D8D4 */ rbrew_write32(cpu->mem, _t17, cpu->r[5]);
|
|
/* 0252D8D8 */ _t18 = cpu->r[1] + 0x00000020u;
|
|
/* 0252D8D8 */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
/* 0252D8DC */ Gambit_fn_023F79E8(cpu);
|
|
/* 0252D8E0 */ cpu->r[12] = 0x00000008u;
|
|
/* 0252D8E4 */ cpu->r[5] = cpu->r[3];
|
|
/* 0252D8E8 */ cpu->r[3] = cpu->r[1] + 0x0000003Cu;
|
|
/* 0252D8EC */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252D8EC */ rbrew_write32(cpu->mem, _t19, cpu->r[12]);
|
|
/* 0252D8F0 */ cpu->r[10] = 0x100C0000u;
|
|
/* 0252D8F4 */ cpu->r[4] = 0x00000000u;
|
|
/* 0252D8F8 */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 0252D8FC */ _t20 = cpu->r[10] + 0x00003C28u;
|
|
/* 0252D8FC */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 0252D900 */ cpu->r[9] = 0x000000FEu;
|
|
/* 0252D904 */ cpu->r[8] = cpu->r[1] + 0x00000020u;
|
|
/* 0252D908 */ cpu->r[7] = cpu->r[1] + 0x00000028u;
|
|
/* 0252D90C */ _t21 = cpu->r[1] + 0x00000008u;
|
|
/* 0252D90C */ rbrew_write32(cpu->mem, _t21, cpu->r[9]);
|
|
/* 0252D910 */ cpu->r[9] = 0x101F0000u;
|
|
/* 0252D914 */ cpu->r[6] = cpu->r[1] + 0x00000030u;
|
|
/* 0252D918 */ cpu->r[10] = cpu->r[1] + 0x00000024u;
|
|
/* 0252D91C */ cpu->r[9] = cpu->r[9] + 0x00006350u;
|
|
/* 0252D920 */ _t22 = cpu->r[1] + 0x00000010u;
|
|
/* 0252D920 */ rbrew_write32(cpu->mem, _t22, cpu->r[0]);
|
|
/* 0252D924 */ Gambit_fn_023F6240(cpu);
|
|
/* 0252D928 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0252D92C */ _t23 = cpu->r[3] + 0x000060F4u;
|
|
/* 0252D92C */ cpu->r[3] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0252D930 */ cpu->r[4] = cpu->r[1] + 0x0000003Cu;
|
|
/* 0252D934 */ Gambit_fn_023EF3B4(cpu);
|
|
/* 0252D938 */ cpu->r[3] = cpu->r[31];
|
|
/* 0252D93C */ Gambit_fn_0252D800(cpu);
|
|
/* 0252D940 */ cpu->r[30] = 0x101F0000u;
|
|
/* 0252D944 */ cpu->r[30] = cpu->r[30] + 0xFFFF9BD0u;
|
|
/* 0252D948 */ _t24 = cpu->r[30] + 0x00000004u;
|
|
/* 0252D948 */ cpu->r[5] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0252D94C */ _t25 = cpu->r[5] + 0x00000014u;
|
|
/* 0252D94C */ cpu->r[7] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0252D950 */ cpu->ctr = cpu->r[7];
|
|
/* 0252D954 */ cpu->r[3] = cpu->r[30];
|
|
/* 0252D958 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252D95C */ _t26 = cpu->r[31] + 0x00000030u;
|
|
/* 0252D95C */ cpu->r[3] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0252D960 */ cpu->r[4] = cpu->r[31] + 0x000001F0u;
|
|
/* 0252D964 */ _t27 = cpu->r[30] + 0x00000000u;
|
|
/* 0252D964 */ cpu->r[5] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0252D968 */ cpu->r[6] = 0x00000000u;
|
|
/* 0252D96C */ Gambit_fn_027B72F0(cpu);
|
|
/* 0252D970 */ cpu->r[3] = cpu->r[31];
|
|
/* 0252D974 */ Gambit_fn_0252D85C(cpu);
|
|
/* 0252D978 */ _t28 = cpu->r[31] + 0x000001F0u;
|
|
/* 0252D978 */ cpu->r[10] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0252D97C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0252D980 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252D980 */ _t30 = _t29 & 0x00000001u;
|
|
/* 0252D980 */ if (_t30) goto L_0252D9DC; else goto L_0252D984;
|
|
L_0252D984: ; // 0x252d984
|
|
/* 0252D984 */ _t31 = cpu->r[10] + 0x0000000Cu;
|
|
/* 0252D984 */ cpu->r[12] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0252D988 */ _t32 = cpu->r[31] + 0x000001F4u;
|
|
/* 0252D988 */ cpu->r[0] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0252D98C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[0]);
|
|
/* 0252D990 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252D990 */ _t34 = _t33 & 0x00000001u;
|
|
/* 0252D990 */ if (_t34) goto L_0252D994; else goto L_0252D9DC;
|
|
L_0252D994: ; // 0x252d994
|
|
/* 0252D994 */ _t35 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252D994 */ rbrew_write_f32(cpu->mem, _t35, cpu->f[1]);
|
|
/* 0252D998 */ _t36 = cpu->r[1] + 0x00000014u;
|
|
/* 0252D998 */ rbrew_write_f32(cpu->mem, _t36, cpu->f[1]);
|
|
/* 0252D99C */ _t37 = cpu->r[31] + 0x00000078u;
|
|
/* 0252D99C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 0252D9A0 */ _t38 = cpu->r[1] + 0x00000018u;
|
|
/* 0252D9A0 */ rbrew_write_f32(cpu->mem, _t38, cpu->f[1]);
|
|
/* 0252D9A4 */ _t39 = cpu->r[10] + 0x00000064u;
|
|
/* 0252D9A4 */ rbrew_write_f32(cpu->mem, _t39, cpu->f[0]);
|
|
/* 0252D9A8 */ _t40 = cpu->r[31] + 0x0000007Cu;
|
|
/* 0252D9A8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 0252D9AC */ _t41 = cpu->r[10] + 0x00000068u;
|
|
/* 0252D9AC */ rbrew_write_f32(cpu->mem, _t41, cpu->f[0]);
|
|
/* 0252D9B0 */ _t42 = cpu->r[31] + 0x00000080u;
|
|
/* 0252D9B0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 0252D9B4 */ _t43 = cpu->r[10] + 0x0000006Cu;
|
|
/* 0252D9B4 */ rbrew_write_f32(cpu->mem, _t43, cpu->f[0]);
|
|
/* 0252D9B8 */ _t44 = cpu->r[1] + 0x00000014u;
|
|
/* 0252D9B8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 0252D9BC */ _t45 = cpu->r[10] + 0x0000012Cu;
|
|
/* 0252D9BC */ cpu->r[11] = rbrew_read32(cpu->mem, _t45);
|
|
/* 0252D9C0 */ _t46 = cpu->r[10] + 0x00000070u;
|
|
/* 0252D9C0 */ rbrew_write_f32(cpu->mem, _t46, cpu->f[0]);
|
|
/* 0252D9C4 */ _t47 = cpu->r[1] + 0x00000018u;
|
|
/* 0252D9C4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 0252D9C8 */ cpu->r[11] = cpu->r[11] | 0x00000004u;
|
|
/* 0252D9CC */ _t48 = cpu->r[10] + 0x00000074u;
|
|
/* 0252D9CC */ rbrew_write_f32(cpu->mem, _t48, cpu->f[0]);
|
|
/* 0252D9D0 */ _t49 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252D9D0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t49);
|
|
/* 0252D9D4 */ _t50 = cpu->r[10] + 0x0000012Cu;
|
|
/* 0252D9D4 */ rbrew_write32(cpu->mem, _t50, cpu->r[11]);
|
|
/* 0252D9D8 */ _t51 = cpu->r[10] + 0x00000078u;
|
|
/* 0252D9D8 */ rbrew_write_f32(cpu->mem, _t51, cpu->f[0]);
|
|
L_0252D9DC: ; // 0x252d9dc
|
|
/* 0252D9DC */ cpu->r[8] = 0x100C0000u;
|
|
/* 0252D9E0 */ _t52 = cpu->r[8] + 0x00003BDCu;
|
|
/* 0252D9E0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 0252D9E4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0252D9E8 */ _t53 = cpu->r[31] + 0x00000208u;
|
|
/* 0252D9E8 */ rbrew_write_f32(cpu->mem, _t53, cpu->f[0]);
|
|
/* 0252D9EC */ Gambit_fn_0252D2A8(cpu);
|
|
/* 0252D9F0 */ cpu->r[30] = 0x00000000u;
|
|
/* 0252D9F4 */ _t54 = cpu->r[31] + 0x00000214u;
|
|
/* 0252D9F4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t54);
|
|
/* 0252D9F8 */ _t55 = cpu->r[31] + 0x00000210u;
|
|
/* 0252D9F8 */ rbrew_write32(cpu->mem, _t55, cpu->r[30]);
|
|
/* 0252D9FC */ _t56 = cpu->r[31] + 0x0000020Cu;
|
|
/* 0252D9FC */ rbrew_write_f32(cpu->mem, _t56, cpu->f[1]);
|
|
/* 0252DA00 */ Gambit_fn_02398534(cpu);
|
|
/* 0252DA04 */ cpu->r[4] = 0x100C0000u;
|
|
/* 0252DA08 */ _t57 = cpu->r[31] + 0x00000214u;
|
|
/* 0252DA08 */ cpu->r[3] = rbrew_read32(cpu->mem, _t57);
|
|
/* 0252DA0C */ cpu->r[4] = cpu->r[4] + 0x00003C38u;
|
|
/* 0252DA10 */ cpu->r[5] = 0x00000001u;
|
|
/* 0252DA14 */ Gambit_fn_02398850(cpu);
|
|
/* 0252DA18 */ _t58 = cpu->r[31] + 0x00000218u;
|
|
/* 0252DA18 */ cpu->r[3] = rbrew_read32(cpu->mem, _t58);
|
|
/* 0252DA1C */ Gambit_fn_02398534(cpu);
|
|
/* 0252DA20 */ cpu->r[4] = 0x100C0000u;
|
|
/* 0252DA24 */ _t59 = cpu->r[31] + 0x00000218u;
|
|
/* 0252DA24 */ cpu->r[3] = rbrew_read32(cpu->mem, _t59);
|
|
/* 0252DA28 */ cpu->r[5] = 0x00000001u;
|
|
/* 0252DA2C */ cpu->r[4] = cpu->r[4] + 0x00003C2Cu;
|
|
/* 0252DA30 */ Gambit_fn_02398850(cpu);
|
|
/* 0252DA34 */ _t60 = cpu->r[31] + 0x00000220u;
|
|
/* 0252DA34 */ rbrew_write32(cpu->mem, _t60, cpu->r[30]);
|
|
/* 0252DA38 */ cpu->r[7] = 0x100C0000u;
|
|
/* 0252DA3C */ _t61 = cpu->r[31] + 0x00000224u;
|
|
/* 0252DA3C */ rbrew_write32(cpu->mem, _t61, cpu->r[30]);
|
|
/* 0252DA40 */ _t62 = cpu->r[7] + 0x00003BE0u;
|
|
/* 0252DA40 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t62);
|
|
/* 0252DA44 */ _t63 = cpu->r[31] + 0x00000228u;
|
|
/* 0252DA44 */ rbrew_write32(cpu->mem, _t63, cpu->r[30]);
|
|
/* 0252DA48 */ _t64 = cpu->r[31] + 0x0000021Cu;
|
|
/* 0252DA48 */ rbrew_write_f32(cpu->mem, _t64, cpu->f[0]);
|
|
/* 0252DA4C */ _t65 = cpu->r[31] + 0x0000022Cu;
|
|
/* 0252DA4C */ rbrew_write32(cpu->mem, _t65, cpu->r[30]);
|
|
/* 0252DA50 */ _t66 = cpu->r[1] + 0x00000084u;
|
|
/* 0252DA50 */ cpu->r[0] = rbrew_read32(cpu->mem, _t66);
|
|
/* 0252DA54 */ _t67 = cpu->r[1] + 0x00000078u;
|
|
/* 0252DA54 */ cpu->r[30] = rbrew_read32(cpu->mem, _t67);
|
|
/* 0252DA58 */ cpu->lr = cpu->r[0];
|
|
/* 0252DA5C */ _t68 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0252DA5C */ cpu->r[31] = rbrew_read32(cpu->mem, _t68);
|
|
/* 0252DA60 */ cpu->r[1] = cpu->r[1] + 0x00000080u;
|
|
/* 0252DA64 */ return;
|
|
}
|
|
|
|
// fn_0252DA68 @ 0x252da68
|
|
void Gambit_fn_0252DA68(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0252DA68: ; // 0x252da68
|
|
/* 0252DA68 */ _t0 = cpu->r[3] + 0x00000220u;
|
|
/* 0252DA68 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0252DA6C */ cpu->r[0] = 0x00000000u;
|
|
/* 0252DA70 */ _t1 = cpu->r[3] + 0x000001FCu;
|
|
/* 0252DA70 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0252DA74 */ cpu->r[10] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 0252DA74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0252DA78 */ _t2 = cpu->r[3] + 0x00000228u;
|
|
/* 0252DA78 */ cpu->r[11] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0252DA7C */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0252DA7C */ _t4 = _t3 & 0x00000001u;
|
|
/* 0252DA7C */ if (_t4) goto L_0252DA80; else goto L_0252DA84;
|
|
L_0252DA80: ; // 0x252da80
|
|
/* 0252DA80 */ cpu->r[10] = cpu->r[0];
|
|
L_0252DA84: ; // 0x252da84
|
|
/* 0252DA84 */ _t5 = cpu->r[3] + 0x00000220u;
|
|
/* 0252DA84 */ rbrew_write32(cpu->mem, _t5, cpu->r[10]);
|
|
/* 0252DA88 */ cpu->r[12] = cpu->r[11] + 0xFFFFFFFFu;
|
|
/* 0252DA88 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0252DA8C */ _t6 = cpu->r[3] + 0x0000022Cu;
|
|
/* 0252DA8C */ cpu->r[9] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0252DA90 */ _t7 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0252DA90 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0252DA90 */ if (_t8) goto L_0252DA94; else goto L_0252DA98;
|
|
L_0252DA94: ; // 0x252da94
|
|
/* 0252DA94 */ cpu->r[12] = cpu->r[0];
|
|
L_0252DA98: ; // 0x252da98
|
|
/* 0252DA98 */ _t9 = cpu->r[3] + 0x00000228u;
|
|
/* 0252DA98 */ rbrew_write32(cpu->mem, _t9, cpu->r[12]);
|
|
/* 0252DA9C */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
/* 0252DAA0 */ _t10 = cpu->r[3] + 0x0000022Cu;
|
|
/* 0252DAA0 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 0252DAA4 */ return;
|
|
}
|
|
|
|
// fn_0252DAA8 @ 0x252daa8
|
|
void Gambit_fn_0252DAA8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0252DAA8: ; // 0x252daa8
|
|
/* 0252DAA8 */ cpu->r[0] = cpu->lr;
|
|
/* 0252DAAC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0252DAAC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252DAAC */ cpu->r[1] = _t0;
|
|
/* 0252DAB0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252DAB0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0252DAB4 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0252DAB8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0252DAB8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0252DABC */ _t3 = cpu->r[3] + 0x00005BA0u;
|
|
/* 0252DABC */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0252DAC0 */ _t4 = cpu->r[3] + 0x00000044u;
|
|
/* 0252DAC0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t4);
|
|
/* 0252DAC4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0252DAC8 */ cpu->r[31] = 0x00000001u;
|
|
/* 0252DACC */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252DACC */ _t6 = _t5 & 0x00000001u;
|
|
/* 0252DACC */ if (_t6) goto L_0252DAD0; else goto L_0252DAE0;
|
|
L_0252DAD0: ; // 0x252dad0
|
|
/* 0252DAD0 */ Gambit_fn_0239AD28(cpu);
|
|
/* 0252DAD4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252DAD8 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252DAD8 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0252DAD8 */ if (_t8) goto L_0252DADC; else goto L_0252DAE0;
|
|
L_0252DADC: ; // 0x252dadc
|
|
/* 0252DADC */ cpu->r[31] = 0x00000000u;
|
|
L_0252DAE0: ; // 0x252dae0
|
|
/* 0252DAE0 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0252DAE0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0252DAE4 */ cpu->r[3] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 0252DAE8 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252DAE8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0252DAEC */ cpu->lr = cpu->r[0];
|
|
/* 0252DAF0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0252DAF4 */ return;
|
|
}
|
|
|
|
// fn_0252DAAC @ 0x252daac
|
|
void Gambit_fn_0252DAAC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0252DAAC: ; // 0x252daac
|
|
/* 0252DAAC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0252DAAC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252DAAC */ cpu->r[1] = _t0;
|
|
/* 0252DAB0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252DAB0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0252DAB4 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0252DAB8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0252DAB8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0252DABC */ _t3 = cpu->r[3] + 0x00005BA0u;
|
|
/* 0252DABC */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0252DAC0 */ _t4 = cpu->r[3] + 0x00000044u;
|
|
/* 0252DAC0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t4);
|
|
/* 0252DAC4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0252DAC8 */ cpu->r[31] = 0x00000001u;
|
|
/* 0252DACC */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252DACC */ _t6 = _t5 & 0x00000001u;
|
|
/* 0252DACC */ if (_t6) goto L_0252DAD0; else goto L_0252DAE0;
|
|
L_0252DAD0: ; // 0x252dad0
|
|
/* 0252DAD0 */ Gambit_fn_0239AD28(cpu);
|
|
/* 0252DAD4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252DAD8 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252DAD8 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0252DAD8 */ if (_t8) goto L_0252DADC; else goto L_0252DAE0;
|
|
L_0252DADC: ; // 0x252dadc
|
|
/* 0252DADC */ cpu->r[31] = 0x00000000u;
|
|
L_0252DAE0: ; // 0x252dae0
|
|
/* 0252DAE0 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0252DAE0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0252DAE4 */ cpu->r[3] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 0252DAE8 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252DAE8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0252DAEC */ cpu->lr = cpu->r[0];
|
|
/* 0252DAF0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0252DAF4 */ return;
|
|
}
|
|
|
|
// fn_0252DAF8 @ 0x252daf8
|
|
void Gambit_fn_0252DAF8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _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;
|
|
double _ft31, _ft32, _ft45, _ft46;
|
|
|
|
L_0252DAF8: ; // 0x252daf8
|
|
/* 0252DAF8 */ _t0 = cpu->r[1] + 0xFFFFFFA0u;
|
|
/* 0252DAF8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252DAF8 */ cpu->r[1] = _t0;
|
|
/* 0252DAFC */ _t1 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252DAFC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0252DB00 */ cpu->r[0] = cpu->lr;
|
|
/* 0252DB04 */ _t2 = cpu->r[1] + 0x00000050u;
|
|
/* 0252DB04 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 0252DB08 */ /* nop */
|
|
/* 0252DB0C */ _t3 = cpu->r[1] + 0x00000030u;
|
|
/* 0252DB0C */ rbrew_write_f64(cpu->mem, _t3, cpu->f[29]);
|
|
/* 0252DB10 */ /* nop */
|
|
/* 0252DB14 */ _t4 = cpu->r[1] + 0x00000020u;
|
|
/* 0252DB14 */ rbrew_write_f64(cpu->mem, _t4, cpu->f[28]);
|
|
/* 0252DB18 */ _t5 = cpu->r[1] + 0x00000058u;
|
|
/* 0252DB18 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[31]);
|
|
/* 0252DB1C */ /* nop */
|
|
/* 0252DB20 */ _t6 = cpu->r[1] + 0x00000038u;
|
|
/* 0252DB20 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[29]);
|
|
/* 0252DB24 */ _t7 = cpu->r[1] + 0x00000040u;
|
|
/* 0252DB24 */ rbrew_write_f64(cpu->mem, _t7, cpu->f[30]);
|
|
/* 0252DB28 */ _t8 = cpu->r[1] + 0x00000064u;
|
|
/* 0252DB28 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0252DB2C */ /* nop */
|
|
/* 0252DB30 */ _t9 = cpu->r[1] + 0x00000028u;
|
|
/* 0252DB30 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[28]);
|
|
/* 0252DB34 */ _t10 = cpu->r[1] + 0x00000048u;
|
|
/* 0252DB34 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[30]);
|
|
/* 0252DB38 */ cpu->r[31] = cpu->r[4];
|
|
/* 0252DB3C */ _t11 = cpu->r[1] + 0x00000018u;
|
|
/* 0252DB3C */ rbrew_write32(cpu->mem, _t11, cpu->r[30]);
|
|
/* 0252DB40 */ _t12 = cpu->r[31] + 0x00000050u;
|
|
/* 0252DB40 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0252DB44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000002u);
|
|
/* 0252DB48 */ cpu->r[30] = cpu->r[3];
|
|
/* 0252DB4C */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252DB4C */ _t14 = _t13 & 0x00000001u;
|
|
/* 0252DB4C */ if (_t14) goto L_0252DC4C; else goto L_0252DB50;
|
|
L_0252DB50: ; // 0x252db50
|
|
/* 0252DB50 */ _t15 = cpu->r[31] + 0x0000002Cu;
|
|
/* 0252DB50 */ cpu->r[12] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0252DB54 */ _t16 = cpu->r[30] + 0x0000002Cu;
|
|
/* 0252DB54 */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0252DB58 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[11]);
|
|
/* 0252DB5C */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252DB5C */ _t18 = _t17 & 0x00000001u;
|
|
/* 0252DB5C */ if (_t18) goto L_0252DB60; else goto L_0252DC4C;
|
|
L_0252DB60: ; // 0x252db60
|
|
/* 0252DB60 */ _t19 = cpu->r[30] + 0x00000080u;
|
|
/* 0252DB60 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 0252DB64 */ _t20 = cpu->r[31] + 0x0000024Cu;
|
|
/* 0252DB64 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 0252DB68 */ _t21 = cpu->r[30] + 0x00000078u;
|
|
/* 0252DB68 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 0252DB6C */ cpu->f[12] = cpu->f[10] - cpu->f[11];
|
|
/* 0252DB70 */ _t22 = cpu->r[31] + 0x00000244u;
|
|
/* 0252DB70 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 0252DB74 */ cpu->r[12] = 0x100C0000u;
|
|
/* 0252DB78 */ cpu->f[11] = cpu->f[8] - cpu->f[9];
|
|
/* 0252DB7C */ _t23 = cpu->r[12] + 0x00003C44u;
|
|
/* 0252DB7C */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 0252DB80 */ cpu->f[13] = cpu->f[12] * cpu->f[12];
|
|
/* 0252DB84 */ cpu->r[12] = 0x100C0000u;
|
|
/* 0252DB88 */ cpu->f[10] = fma(cpu->f[11], cpu->f[11], cpu->f[13]);
|
|
/* 0252DB8C */ _t24 = cpu->r[12] + 0x00003BDCu;
|
|
/* 0252DB8C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 0252DB90 */ cpu->r[11] = 0x100C0000u;
|
|
/* 0252DB94 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[31]);
|
|
/* 0252DB98 */ _t25 = cpu->r[11] + 0x00003C48u;
|
|
/* 0252DB98 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 0252DB9C */ _t26 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252DB9C */ _t27 = _t26 & 0x00000001u;
|
|
/* 0252DB9C */ if (_t27) goto L_0252DBB8; else goto L_0252DBA0;
|
|
L_0252DBA0: ; // 0x252dba0
|
|
/* 0252DBA0 */ cpu->r[10] = 0x100C0000u;
|
|
/* 0252DBA4 */ cpu->f[7] = cpu->f[31] * cpu->f[10];
|
|
/* 0252DBA8 */ _t28 = cpu->r[10] + 0x00003C4Cu;
|
|
/* 0252DBA8 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 0252DBAC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[7], cpu->f[29]);
|
|
/* 0252DBB0 */ _t29 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252DBB0 */ _t30 = _t29 & 0x00000001u;
|
|
/* 0252DBB0 */ if (_t30) goto L_0252DBE0; else goto L_0252DBB4;
|
|
L_0252DBB4: ; // 0x252dbb4
|
|
/* 0252DBB4 */ goto L_0252DC4C;
|
|
L_0252DBB8: ; // 0x252dbb8
|
|
/* 0252DBB8 */ _ft31 = sqrt(cpu->f[10]);
|
|
/* 0252DBB8 */ _ft32 = (double)(int32_t)0x00000001u;
|
|
/* 0252DBB8 */ cpu->f[0] = _ft32 / _ft31;
|
|
/* 0252DBBC */ cpu->f[13] = cpu->f[0] * cpu->f[0];
|
|
/* 0252DBC0 */ cpu->f[7] = cpu->f[0] * cpu->f[28];
|
|
/* 0252DBC4 */ cpu->f[13] = -fma(cpu->f[13], cpu->f[10], -(cpu->f[30]));
|
|
/* 0252DBC8 */ cpu->f[0] = cpu->f[13] * cpu->f[7];
|
|
/* 0252DBCC */ cpu->r[10] = 0x100C0000u;
|
|
/* 0252DBD0 */ cpu->f[7] = cpu->f[0] * cpu->f[10];
|
|
/* 0252DBD4 */ _t33 = cpu->r[10] + 0x00003C4Cu;
|
|
/* 0252DBD4 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 0252DBD8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[7], cpu->f[29]);
|
|
/* 0252DBDC */ _t34 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252DBDC */ _t35 = _t34 & 0x00000001u;
|
|
/* 0252DBDC */ if (_t35) goto L_0252DBE0; else goto L_0252DC4C;
|
|
L_0252DBE0: ; // 0x252dbe0
|
|
/* 0252DBE0 */ _t36 = cpu->r[31] + 0x0000065Cu;
|
|
/* 0252DBE0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t36);
|
|
/* 0252DBE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0252DBE8 */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252DBE8 */ _t38 = _t37 & 0x00000001u;
|
|
/* 0252DBE8 */ if (_t38) goto L_0252DC40; else goto L_0252DBEC;
|
|
L_0252DBEC: ; // 0x252dbec
|
|
/* 0252DBEC */ cpu->r[3] = cpu->r[31];
|
|
/* 0252DBF0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0252DBF4 */ Gambit_fn_025C8078(cpu);
|
|
/* 0252DBF8 */ _t39 = cpu->r[30] + 0x00000080u;
|
|
/* 0252DBF8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t39);
|
|
/* 0252DBFC */ _t40 = cpu->r[1] + 0x00000010u;
|
|
/* 0252DBFC */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 0252DC00 */ _t41 = cpu->r[30] + 0x00000078u;
|
|
/* 0252DC00 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 0252DC04 */ cpu->f[8] = cpu->f[13] - cpu->f[7];
|
|
/* 0252DC08 */ _t42 = cpu->r[1] + 0x00000008u;
|
|
/* 0252DC08 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 0252DC0C */ cpu->f[0] = cpu->f[10] - cpu->f[12];
|
|
/* 0252DC10 */ cpu->f[8] = cpu->f[8] * cpu->f[8];
|
|
/* 0252DC14 */ cpu->f[12] = fma(cpu->f[0], cpu->f[0], cpu->f[8]);
|
|
/* 0252DC18 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[31]);
|
|
/* 0252DC1C */ _t43 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252DC1C */ _t44 = _t43 & 0x00000001u;
|
|
/* 0252DC1C */ if (_t44) goto L_0252DC20; else goto L_0252DC34;
|
|
L_0252DC20: ; // 0x252dc20
|
|
/* 0252DC20 */ _ft45 = sqrt(cpu->f[12]);
|
|
/* 0252DC20 */ _ft46 = (double)(int32_t)0x00000001u;
|
|
/* 0252DC20 */ cpu->f[31] = _ft46 / _ft45;
|
|
/* 0252DC24 */ cpu->f[9] = cpu->f[31] * cpu->f[31];
|
|
/* 0252DC28 */ cpu->f[11] = cpu->f[31] * cpu->f[28];
|
|
/* 0252DC2C */ cpu->f[9] = -fma(cpu->f[9], cpu->f[12], -(cpu->f[30]));
|
|
/* 0252DC30 */ cpu->f[31] = cpu->f[9] * cpu->f[11];
|
|
L_0252DC34: ; // 0x252dc34
|
|
/* 0252DC34 */ cpu->f[9] = cpu->f[31] * cpu->f[12];
|
|
/* 0252DC38 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[29]);
|
|
/* 0252DC3C */ _t47 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252DC3C */ _t48 = _t47 & 0x00000001u;
|
|
/* 0252DC3C */ if (_t48) goto L_0252DC40; else goto L_0252DC4C;
|
|
L_0252DC40: ; // 0x252dc40
|
|
/* 0252DC40 */ _t49 = cpu->r[31] + 0x00000468u;
|
|
/* 0252DC40 */ cpu->r[10] = rbrew_read32(cpu->mem, _t49);
|
|
/* 0252DC44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0252DC48 */ _t50 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252DC48 */ _t51 = _t50 & 0x00000001u;
|
|
/* 0252DC48 */ if (_t51) goto L_0252DC4C; else goto L_0252DC8C;
|
|
L_0252DC4C: ; // 0x252dc4c
|
|
/* 0252DC4C */ _t52 = cpu->r[1] + 0x00000058u;
|
|
/* 0252DC4C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 0252DC50 */ _t53 = cpu->r[1] + 0x00000028u;
|
|
/* 0252DC50 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t53);
|
|
/* 0252DC54 */ _t54 = cpu->r[1] + 0x00000050u;
|
|
/* 0252DC54 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t54);
|
|
/* 0252DC58 */ _t55 = cpu->r[1] + 0x00000020u;
|
|
/* 0252DC58 */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t55);
|
|
/* 0252DC5C */ _t56 = cpu->r[1] + 0x00000038u;
|
|
/* 0252DC5C */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 0252DC60 */ _t57 = cpu->r[1] + 0x00000048u;
|
|
/* 0252DC60 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t57);
|
|
/* 0252DC64 */ _t58 = cpu->r[1] + 0x00000030u;
|
|
/* 0252DC64 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t58);
|
|
/* 0252DC68 */ _t59 = cpu->r[1] + 0x00000040u;
|
|
/* 0252DC68 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t59);
|
|
/* 0252DC6C */ cpu->r[3] = 0x00000001u;
|
|
/* 0252DC70 */ _t60 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252DC70 */ cpu->r[31] = rbrew_read32(cpu->mem, _t60);
|
|
/* 0252DC74 */ _t61 = cpu->r[1] + 0x00000018u;
|
|
/* 0252DC74 */ cpu->r[30] = rbrew_read32(cpu->mem, _t61);
|
|
/* 0252DC78 */ _t62 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0252DC78 */ _t63 = _t62 & 0x00000001u;
|
|
/* 0252DC78 */ if (_t63) goto L_0252DC7C; // else: addr-0 trap, fall-through
|
|
L_0252DC7C: ; // 0x252dc7c
|
|
/* 0252DC7C */ _t64 = cpu->r[1] + 0x00000064u;
|
|
/* 0252DC7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t64);
|
|
/* 0252DC80 */ cpu->lr = cpu->r[0];
|
|
/* 0252DC84 */ cpu->r[1] = cpu->r[1] + 0x00000060u;
|
|
/* 0252DC88 */ return;
|
|
L_0252DC8C: ; // 0x252dc8c
|
|
/* 0252DC8C */ _t65 = cpu->r[1] + 0x00000058u;
|
|
/* 0252DC8C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t65);
|
|
/* 0252DC90 */ _t66 = cpu->r[1] + 0x00000028u;
|
|
/* 0252DC90 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t66);
|
|
/* 0252DC94 */ _t67 = cpu->r[1] + 0x00000050u;
|
|
/* 0252DC94 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t67);
|
|
/* 0252DC98 */ _t68 = cpu->r[1] + 0x00000020u;
|
|
/* 0252DC98 */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t68);
|
|
/* 0252DC9C */ _t69 = cpu->r[1] + 0x00000038u;
|
|
/* 0252DC9C */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t69);
|
|
/* 0252DCA0 */ _t70 = cpu->r[1] + 0x00000048u;
|
|
/* 0252DCA0 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t70);
|
|
/* 0252DCA4 */ _t71 = cpu->r[1] + 0x00000030u;
|
|
/* 0252DCA4 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t71);
|
|
/* 0252DCA8 */ _t72 = cpu->r[1] + 0x00000040u;
|
|
/* 0252DCA8 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t72);
|
|
/* 0252DCAC */ cpu->r[3] = 0x00000000u;
|
|
/* 0252DCB0 */ _t73 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252DCB0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t73);
|
|
/* 0252DCB4 */ _t74 = cpu->r[1] + 0x00000018u;
|
|
/* 0252DCB4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t74);
|
|
/* 0252DCB8 */ _t75 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0252DCB8 */ _t76 = _t75 & 0x00000001u;
|
|
/* 0252DCB8 */ if (_t76) goto L_0252DCBC; // else: addr-0 trap, fall-through
|
|
L_0252DCBC: ; // 0x252dcbc
|
|
/* 0252DCBC */ _t77 = cpu->r[1] + 0x00000064u;
|
|
/* 0252DCBC */ cpu->r[0] = rbrew_read32(cpu->mem, _t77);
|
|
/* 0252DCC0 */ cpu->lr = cpu->r[0];
|
|
/* 0252DCC4 */ cpu->r[1] = cpu->r[1] + 0x00000060u;
|
|
/* 0252DCC8 */ return;
|
|
}
|
|
|
|
// fn_0252DCCC @ 0x252dccc
|
|
void Gambit_fn_0252DCCC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _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_0252DCCC: ; // 0x252dccc
|
|
/* 0252DCCC */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 0252DCCC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252DCCC */ cpu->r[1] = _t0;
|
|
/* 0252DCD0 */ /* nop */
|
|
/* 0252DCD4 */ cpu->r[10] = 0x100C0000u;
|
|
/* 0252DCD8 */ _t1 = cpu->r[10] + 0x00003BE0u;
|
|
/* 0252DCD8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 0252DCDC */ cpu->r[0] = cpu->lr;
|
|
/* 0252DCE0 */ _t2 = cpu->r[1] + 0x00000034u;
|
|
/* 0252DCE0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0252DCE4 */ cpu->r[28] = cpu->r[3];
|
|
/* 0252DCE8 */ _t3 = cpu->r[28] + 0x0000021Cu;
|
|
/* 0252DCE8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 0252DCEC */ cpu->r[7] = 0x100C0000u;
|
|
/* 0252DCF0 */ cpu->f[11] = cpu->f[12] / cpu->f[0];
|
|
/* 0252DCF4 */ _t4 = cpu->r[7] + 0x00003C44u;
|
|
/* 0252DCF4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 0252DCF8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[13]);
|
|
/* 0252DCFC */ _t5 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252DCFC */ _t6 = _t5 & 0x00000001u;
|
|
/* 0252DCFC */ if (_t6) goto L_0252DE2C; else goto L_0252DD00;
|
|
L_0252DD00: ; // 0x252dd00
|
|
/* 0252DD00 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0252DD04 */ cpu->r[11] = 0x101C0000u;
|
|
/* 0252DD08 */ _t7 = cpu->r[12] + 0x00006000u;
|
|
/* 0252DD08 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0252DD0C */ _t8 = cpu->r[11] + 0x00007228u;
|
|
/* 0252DD0C */ cpu->r[11] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0252DD10 */ _t9 = cpu->r[12] + 0x00000268u;
|
|
/* 0252DD10 */ cpu->r[8] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0252DD14 */ cpu->r[6] = cpu->r[8] + cpu->r[11];
|
|
/* 0252DD18 */ _t10 = cpu->r[6] + 0x00000104u;
|
|
/* 0252DD18 */ cpu->r[9] = rbrew_read8(cpu->mem, _t10);
|
|
/* 0252DD1C */ _t11 = cpu->r[8] + 0x00000030u;
|
|
/* 0252DD1C */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0252DD20 */ cpu->r[8] = rbrew_rlwinm(cpu->r[9], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0252DD24 */ _t12 = cpu->r[8] + cpu->r[0];
|
|
/* 0252DD24 */ cpu->r[11] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0252DD28 */ _t13 = cpu->r[11] + 0x00000008u;
|
|
/* 0252DD28 */ cpu->r[6] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0252DD2C */ _t14 = cpu->r[6] + 0x0000000Cu;
|
|
/* 0252DD2C */ cpu->r[30] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0252DD30 */ _t15 = cpu->r[6] + 0x00000004u;
|
|
/* 0252DD30 */ cpu->r[12] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0252DD34 */ cpu->r[31] = cpu->r[6] - cpu->r[30];
|
|
/* 0252DD38 */ cpu->r[29] = cpu->r[12] - cpu->r[30];
|
|
/* 0252DD3C */ goto L_0252DD4C;
|
|
L_0252DD40: ; // 0x252dd40
|
|
/* 0252DD40 */ cpu->r[7] = cpu->r[29] + cpu->r[30];
|
|
/* 0252DD44 */ _t16 = cpu->r[7] + 0x00000004u;
|
|
/* 0252DD44 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0252DD48 */ cpu->r[29] = cpu->r[0] - cpu->r[30];
|
|
L_0252DD4C: ; // 0x252dd4c
|
|
/* 0252DD4C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[31]);
|
|
/* 0252DD50 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252DD50 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0252DD50 */ if (_t18) goto L_0252DD68; else goto L_0252DD54;
|
|
L_0252DD54: ; // 0x252dd54
|
|
/* 0252DD54 */ _t19 = cpu->r[29] + 0x0000001Cu;
|
|
/* 0252DD54 */ cpu->r[6] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0252DD58 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000002u);
|
|
/* 0252DD5C */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252DD5C */ _t21 = _t20 & 0x00000001u;
|
|
/* 0252DD5C */ if (_t21) goto L_0252DD68; else goto L_0252DD60;
|
|
L_0252DD60: ; // 0x252dd60
|
|
/* 0252DD60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000003u);
|
|
/* 0252DD64 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252DD64 */ _t23 = _t22 & 0x00000001u;
|
|
/* 0252DD64 */ if (_t23) goto L_0252DD68; else goto L_0252DD40;
|
|
L_0252DD68: ; // 0x252dd68
|
|
/* 0252DD68 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[31]);
|
|
/* 0252DD6C */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252DD6C */ _t25 = _t24 & 0x00000001u;
|
|
/* 0252DD6C */ if (_t25) goto L_0252DE2C; else goto L_0252DD70;
|
|
L_0252DD70: ; // 0x252dd70
|
|
/* 0252DD70 */ cpu->r[27] = 0x000000F0u;
|
|
/* 0252DD74 */ cpu->r[26] = 0x00000001u;
|
|
L_0252DD78: ; // 0x252dd78
|
|
/* 0252DD78 */ _t26 = cpu->r[29] + 0x00000098u;
|
|
/* 0252DD78 */ cpu->r[5] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0252DD7C */ _t27 = cpu->r[28] + 0x00000224u;
|
|
/* 0252DD7C */ cpu->r[8] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0252DD80 */ /* nop */
|
|
/* 0252DD84 */ cpu->r[7] = cpu->r[8] & cpu->r[0];
|
|
/* 0252DD84 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 0252DD88 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252DD88 */ _t29 = _t28 & 0x00000001u;
|
|
/* 0252DD88 */ if (_t29) goto L_0252DD8C; else goto L_0252DDF8;
|
|
L_0252DD8C: ; // 0x252dd8c
|
|
/* 0252DD8C */ cpu->r[3] = cpu->r[28];
|
|
/* 0252DD90 */ cpu->r[4] = cpu->r[29];
|
|
/* 0252DD94 */ Gambit_fn_0252DAF8(cpu);
|
|
/* 0252DD98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252DD9C */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252DD9C */ _t31 = _t30 & 0x00000001u;
|
|
/* 0252DD9C */ if (_t31) goto L_0252DDB8; else goto L_0252DDA0;
|
|
L_0252DDA0: ; // 0x252dda0
|
|
/* 0252DDA0 */ _t32 = cpu->r[29] + 0x00000098u;
|
|
/* 0252DDA0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0252DDA4 */ _t33 = cpu->r[28] + 0x00000224u;
|
|
/* 0252DDA4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t33);
|
|
/* 0252DDA8 */ /* nop */
|
|
/* 0252DDAC */ cpu->r[4] = cpu->r[4] | cpu->r[9];
|
|
/* 0252DDB0 */ _t34 = cpu->r[28] + 0x00000224u;
|
|
/* 0252DDB0 */ rbrew_write32(cpu->mem, _t34, cpu->r[4]);
|
|
/* 0252DDB4 */ goto L_0252DDF8;
|
|
L_0252DDB8: ; // 0x252ddb8
|
|
/* 0252DDB8 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0252DDBC */ cpu->r[4] = cpu->r[28];
|
|
/* 0252DDC0 */ Gambit_fn_024F51B0(cpu);
|
|
/* 0252DDC4 */ cpu->r[6] = 0x00000002u;
|
|
/* 0252DDC8 */ cpu->r[5] = 0xFFFFFFFFu;
|
|
/* 0252DDCC */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0252DDD0 */ cpu->r[3] = cpu->r[29];
|
|
/* 0252DDD4 */ Gambit_fn_025C7EC8(cpu);
|
|
/* 0252DDD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252DDDC */ _t35 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252DDDC */ _t36 = _t35 & 0x00000001u;
|
|
/* 0252DDDC */ if (_t36) goto L_0252DDF8; else goto L_0252DDE0;
|
|
L_0252DDE0: ; // 0x252dde0
|
|
/* 0252DDE0 */ _t37 = cpu->r[29] + 0x00000098u;
|
|
/* 0252DDE0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0252DDE4 */ _t38 = cpu->r[28] + 0x00000224u;
|
|
/* 0252DDE4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t38);
|
|
/* 0252DDE8 */ /* nop */
|
|
/* 0252DDEC */ _t39 = cpu->r[28] + 0x00000228u;
|
|
/* 0252DDEC */ rbrew_write32(cpu->mem, _t39, cpu->r[27]);
|
|
/* 0252DDF0 */ cpu->r[4] = cpu->r[4] | cpu->r[5];
|
|
/* 0252DDF4 */ _t40 = cpu->r[28] + 0x00000224u;
|
|
/* 0252DDF4 */ rbrew_write32(cpu->mem, _t40, cpu->r[4]);
|
|
L_0252DDF8: ; // 0x252ddf8
|
|
/* 0252DDF8 */ cpu->r[11] = cpu->r[29] + cpu->r[30];
|
|
/* 0252DDFC */ _t41 = cpu->r[11] + 0x00000004u;
|
|
/* 0252DDFC */ cpu->r[5] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0252DE00 */ cpu->r[29] = cpu->r[5] - cpu->r[30];
|
|
/* 0252DE04 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[31]);
|
|
/* 0252DE08 */ _t42 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252DE08 */ _t43 = _t42 & 0x00000001u;
|
|
/* 0252DE08 */ if (_t43) goto L_0252DE2C; else goto L_0252DE0C;
|
|
L_0252DE0C: ; // 0x252de0c
|
|
/* 0252DE0C */ _t44 = cpu->r[29] + 0x0000001Cu;
|
|
/* 0252DE0C */ cpu->r[9] = rbrew_read32(cpu->mem, _t44);
|
|
/* 0252DE10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000002u);
|
|
/* 0252DE14 */ _t45 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252DE14 */ _t46 = _t45 & 0x00000001u;
|
|
/* 0252DE14 */ if (_t46) goto L_0252DE24; else goto L_0252DE18;
|
|
L_0252DE18: ; // 0x252de18
|
|
/* 0252DE18 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000003u);
|
|
/* 0252DE1C */ _t47 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252DE1C */ _t48 = _t47 & 0x00000001u;
|
|
/* 0252DE1C */ if (_t48) goto L_0252DE20; else goto L_0252DDF8;
|
|
L_0252DE20: ; // 0x252de20
|
|
/* 0252DE20 */ goto L_0252DD68;
|
|
L_0252DE24: ; // 0x252de24
|
|
/* 0252DE24 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[31]);
|
|
/* 0252DE28 */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252DE28 */ _t50 = _t49 & 0x00000001u;
|
|
/* 0252DE28 */ if (_t50) goto L_0252DE2C; else goto L_0252DD78;
|
|
L_0252DE2C: ; // 0x252de2c
|
|
/* 0252DE2C */ /* nop */
|
|
/* 0252DE30 */ _t51 = cpu->r[1] + 0x00000034u;
|
|
/* 0252DE30 */ cpu->r[0] = rbrew_read32(cpu->mem, _t51);
|
|
/* 0252DE34 */ cpu->lr = cpu->r[0];
|
|
/* 0252DE38 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 0252DE3C */ return;
|
|
}
|
|
|
|
// fn_0252DE40 @ 0x252de40
|
|
void Gambit_fn_0252DE40(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_0252DE40: ; // 0x252de40
|
|
/* 0252DE40 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0252DE44 */ _t0 = cpu->r[3] + 0x00006000u;
|
|
/* 0252DE44 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0252DE48 */ _t1 = cpu->r[3] + 0x00000004u;
|
|
/* 0252DE48 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0252DE4C */ _t2 = cpu->r[12] + 0x00000164u;
|
|
/* 0252DE4C */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0252DE50 */ cpu->ctr = cpu->r[0];
|
|
/* 0252DE54 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0252DE58 @ 0x252de58
|
|
void Gambit_fn_0252DE58(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17;
|
|
|
|
L_0252DE58: ; // 0x252de58
|
|
/* 0252DE58 */ cpu->r[0] = cpu->lr;
|
|
/* 0252DE5C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0252DE5C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252DE5C */ cpu->r[1] = _t0;
|
|
/* 0252DE60 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252DE60 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0252DE64 */ cpu->r[12] = 0x100C0000u;
|
|
/* 0252DE68 */ _t2 = cpu->r[12] + 0x00003BDCu;
|
|
/* 0252DE68 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 0252DE6C */ cpu->r[31] = cpu->r[3];
|
|
/* 0252DE70 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0252DE70 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0252DE74 */ _t4 = cpu->r[31] + 0x0000021Cu;
|
|
/* 0252DE74 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 0252DE78 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[0]);
|
|
/* 0252DE7C */ _t5 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252DE7C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0252DE7C */ if (_t6) goto L_0252DEBC; else goto L_0252DE80;
|
|
L_0252DE80: ; // 0x252de80
|
|
/* 0252DE80 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0252DE84 */ _t7 = cpu->r[12] + 0x00005BA0u;
|
|
/* 0252DE84 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0252DE88 */ _t8 = cpu->r[31] + 0x00000024u;
|
|
/* 0252DE88 */ cpu->r[8] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0252DE8C */ _t9 = cpu->r[12] + 0x00000100u;
|
|
/* 0252DE8C */ cpu->r[9] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0252DE90 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[9]);
|
|
/* 0252DE94 */ cpu->r[3] = 0x00000000u;
|
|
/* 0252DE98 */ _t10 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0252DE98 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0252DE98 */ if (_t11) goto L_0252DE9C; else goto L_0252DEA8;
|
|
L_0252DE9C: ; // 0x252de9c
|
|
/* 0252DE9C */ _t12 = cpu->r[12] + 0x00000108u;
|
|
/* 0252DE9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0252DEA0 */ cpu->r[10] = rbrew_rlwinm(cpu->r[8], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0252DEA4 */ _t13 = cpu->r[10] + cpu->r[0];
|
|
/* 0252DEA4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
L_0252DEA8: ; // 0x252dea8
|
|
/* 0252DEA8 */ Gambit_fn_02530C7C(cpu);
|
|
/* 0252DEAC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252DEB0 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252DEB0 */ _t15 = _t14 & 0x00000001u;
|
|
/* 0252DEB0 */ if (_t15) goto L_0252DEBC; else goto L_0252DEB4;
|
|
L_0252DEB4: ; // 0x252deb4
|
|
/* 0252DEB4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0252DEB8 */ Gambit_fn_0252DE40(cpu);
|
|
L_0252DEBC: ; // 0x252debc
|
|
/* 0252DEBC */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 0252DEBC */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0252DEC0 */ _t17 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252DEC0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0252DEC4 */ cpu->lr = cpu->r[0];
|
|
/* 0252DEC8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0252DECC */ return;
|
|
}
|
|
|
|
// fn_0252DE5C @ 0x252de5c
|
|
void Gambit_fn_0252DE5C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17;
|
|
|
|
L_0252DE5C: ; // 0x252de5c
|
|
/* 0252DE5C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0252DE5C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252DE5C */ cpu->r[1] = _t0;
|
|
/* 0252DE60 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252DE60 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0252DE64 */ cpu->r[12] = 0x100C0000u;
|
|
/* 0252DE68 */ _t2 = cpu->r[12] + 0x00003BDCu;
|
|
/* 0252DE68 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 0252DE6C */ cpu->r[31] = cpu->r[3];
|
|
/* 0252DE70 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0252DE70 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0252DE74 */ _t4 = cpu->r[31] + 0x0000021Cu;
|
|
/* 0252DE74 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 0252DE78 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[0]);
|
|
/* 0252DE7C */ _t5 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252DE7C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0252DE7C */ if (_t6) goto L_0252DEBC; else goto L_0252DE80;
|
|
L_0252DE80: ; // 0x252de80
|
|
/* 0252DE80 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0252DE84 */ _t7 = cpu->r[12] + 0x00005BA0u;
|
|
/* 0252DE84 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0252DE88 */ _t8 = cpu->r[31] + 0x00000024u;
|
|
/* 0252DE88 */ cpu->r[8] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0252DE8C */ _t9 = cpu->r[12] + 0x00000100u;
|
|
/* 0252DE8C */ cpu->r[9] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0252DE90 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[9]);
|
|
/* 0252DE94 */ cpu->r[3] = 0x00000000u;
|
|
/* 0252DE98 */ _t10 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0252DE98 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0252DE98 */ if (_t11) goto L_0252DE9C; else goto L_0252DEA8;
|
|
L_0252DE9C: ; // 0x252de9c
|
|
/* 0252DE9C */ _t12 = cpu->r[12] + 0x00000108u;
|
|
/* 0252DE9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0252DEA0 */ cpu->r[10] = rbrew_rlwinm(cpu->r[8], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0252DEA4 */ _t13 = cpu->r[10] + cpu->r[0];
|
|
/* 0252DEA4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
L_0252DEA8: ; // 0x252dea8
|
|
/* 0252DEA8 */ Gambit_fn_02530C7C(cpu);
|
|
/* 0252DEAC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252DEB0 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252DEB0 */ _t15 = _t14 & 0x00000001u;
|
|
/* 0252DEB0 */ if (_t15) goto L_0252DEBC; else goto L_0252DEB4;
|
|
L_0252DEB4: ; // 0x252deb4
|
|
/* 0252DEB4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0252DEB8 */ Gambit_fn_0252DE40(cpu);
|
|
L_0252DEBC: ; // 0x252debc
|
|
/* 0252DEBC */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 0252DEBC */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0252DEC0 */ _t17 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252DEC0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0252DEC4 */ cpu->lr = cpu->r[0];
|
|
/* 0252DEC8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0252DECC */ return;
|
|
}
|
|
|
|
// fn_0252DED0 @ 0x252ded0
|
|
void Gambit_fn_0252DED0(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0252DED0: ; // 0x252ded0
|
|
/* 0252DED0 */ cpu->r[12] = 0x100C0000u;
|
|
/* 0252DED4 */ _t0 = cpu->r[12] + 0x00003C58u;
|
|
/* 0252DED4 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 0252DED8 */ return;
|
|
}
|
|
|
|
// fn_0252DEDC @ 0x252dedc
|
|
void Gambit_fn_0252DEDC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _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;
|
|
|
|
L_0252DEDC: ; // 0x252dedc
|
|
/* 0252DEDC */ _t0 = cpu->r[1] + 0xFFFFFFB0u;
|
|
/* 0252DEDC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252DEDC */ cpu->r[1] = _t0;
|
|
/* 0252DEE0 */ _t1 = cpu->r[1] + 0x00000020u;
|
|
/* 0252DEE0 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[29]);
|
|
/* 0252DEE4 */ cpu->r[0] = cpu->lr;
|
|
/* 0252DEE8 */ _t2 = cpu->r[1] + 0x00000030u;
|
|
/* 0252DEE8 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[30]);
|
|
/* 0252DEEC */ /* nop */
|
|
/* 0252DEF0 */ _t3 = cpu->r[1] + 0x00000040u;
|
|
/* 0252DEF0 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[31]);
|
|
/* 0252DEF4 */ /* nop */
|
|
/* 0252DEF8 */ _t4 = cpu->r[1] + 0x00000028u;
|
|
/* 0252DEF8 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[29]);
|
|
/* 0252DEFC */ _t5 = cpu->r[1] + 0x00000038u;
|
|
/* 0252DEFC */ rbrew_write_f32(cpu->mem, _t5, cpu->f[30]);
|
|
/* 0252DF00 */ /* nop */
|
|
/* 0252DF04 */ _t6 = cpu->r[1] + 0x00000048u;
|
|
/* 0252DF04 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[31]);
|
|
/* 0252DF08 */ _t7 = cpu->r[1] + 0x00000054u;
|
|
/* 0252DF08 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 0252DF0C */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 0252DF0C */ rbrew_write32(cpu->mem, _t8, cpu->r[29]);
|
|
/* 0252DF10 */ _t9 = cpu->r[1] + 0x00000018u;
|
|
/* 0252DF10 */ rbrew_write32(cpu->mem, _t9, cpu->r[30]);
|
|
/* 0252DF14 */ _t10 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252DF14 */ rbrew_write32(cpu->mem, _t10, cpu->r[31]);
|
|
/* 0252DF18 */ _t11 = cpu->r[3] + 0x00000210u;
|
|
/* 0252DF18 */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0252DF1C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000096u);
|
|
/* 0252DF20 */ cpu->r[30] = cpu->r[3];
|
|
/* 0252DF24 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0252DF24 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0252DF24 */ if (_t13) goto L_0252DF90; else goto L_0252DF28;
|
|
L_0252DF28: ; // 0x252df28
|
|
/* 0252DF28 */ Gambit_fn_0252DED0(cpu);
|
|
/* 0252DF2C */ cpu->f[11] = cpu->f[1];
|
|
/* 0252DF30 */ cpu->r[3] = cpu->r[30];
|
|
/* 0252DF34 */ Gambit_fn_0252D2A8(cpu);
|
|
/* 0252DF38 */ cpu->f[30] = cpu->f[1];
|
|
/* 0252DF3C */ cpu->r[12] = 0x100C0000u;
|
|
/* 0252DF40 */ cpu->f[29] = cpu->f[11] - cpu->f[30];
|
|
/* 0252DF44 */ _t14 = cpu->r[12] + 0x00003C5Cu;
|
|
/* 0252DF44 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 0252DF48 */ cpu->f[10] = cpu->f[29] / cpu->f[12];
|
|
/* 0252DF4C */ _t15 = cpu->r[30] + 0x0000020Cu;
|
|
/* 0252DF4C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 0252DF50 */ cpu->f[13] = cpu->f[0] + cpu->f[10];
|
|
/* 0252DF54 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[13]);
|
|
/* 0252DF58 */ cpu->f[10] = cpu->f[13];
|
|
/* 0252DF5C */ _t16 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0252DF5C */ _t17 = _t16 & 0x00000001u;
|
|
/* 0252DF5C */ if (_t17) goto L_0252DF84; else goto L_0252DF60;
|
|
L_0252DF60: ; // 0x252df60
|
|
/* 0252DF60 */ _t18 = cpu->r[30] + 0x00000208u;
|
|
/* 0252DF60 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 0252DF64 */ cpu->r[9] = 0x100C0000u;
|
|
/* 0252DF68 */ cpu->f[31] = cpu->f[12] + cpu->f[13];
|
|
/* 0252DF6C */ _t19 = cpu->r[9] + 0x00003C6Cu;
|
|
/* 0252DF6C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 0252DF70 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[31], cpu->f[11]);
|
|
/* 0252DF74 */ cpu->f[0] = cpu->f[31];
|
|
/* 0252DF78 */ _t20 = cpu->r[30] + 0x0000020Cu;
|
|
/* 0252DF78 */ rbrew_write_f32(cpu->mem, _t20, cpu->f[10]);
|
|
/* 0252DF7C */ _t21 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252DF7C */ _t22 = _t21 & 0x00000001u;
|
|
/* 0252DF7C */ if (_t22) goto L_0252DF80; else goto L_0252E060;
|
|
L_0252DF80: ; // 0x252df80
|
|
/* 0252DF80 */ goto L_0252E08C;
|
|
L_0252DF84: ; // 0x252df84
|
|
/* 0252DF84 */ cpu->f[13] = cpu->f[11];
|
|
/* 0252DF88 */ _t23 = cpu->r[30] + 0x0000020Cu;
|
|
/* 0252DF88 */ rbrew_write_f32(cpu->mem, _t23, cpu->f[13]);
|
|
/* 0252DF8C */ goto L_0252E044;
|
|
L_0252DF90: ; // 0x252df90
|
|
/* 0252DF90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000078u);
|
|
/* 0252DF94 */ _t24 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0252DF94 */ _t25 = _t24 & 0x00000001u;
|
|
/* 0252DF94 */ if (_t25) goto L_0252DFB8; else goto L_0252DF98;
|
|
L_0252DF98: ; // 0x252df98
|
|
/* 0252DF98 */ Gambit_fn_0252DED0(cpu);
|
|
/* 0252DF9C */ cpu->r[3] = cpu->r[30];
|
|
/* 0252DFA0 */ cpu->f[13] = cpu->f[1];
|
|
/* 0252DFA4 */ Gambit_fn_0252D2A8(cpu);
|
|
/* 0252DFA8 */ cpu->f[30] = cpu->f[1];
|
|
/* 0252DFAC */ _t26 = cpu->r[30] + 0x0000020Cu;
|
|
/* 0252DFAC */ rbrew_write_f32(cpu->mem, _t26, cpu->f[13]);
|
|
/* 0252DFB0 */ cpu->f[29] = cpu->f[13] - cpu->f[30];
|
|
/* 0252DFB4 */ goto L_0252E044;
|
|
L_0252DFB8: ; // 0x252dfb8
|
|
/* 0252DFB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0252DFBC */ _t27 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0252DFBC */ _t28 = _t27 & 0x00000001u;
|
|
/* 0252DFBC */ if (_t28) goto L_0252DFC0; else goto L_0252DFF8;
|
|
L_0252DFC0: ; // 0x252dfc0
|
|
/* 0252DFC0 */ _t29 = cpu->r[30] + 0x0000020Cu;
|
|
/* 0252DFC0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 0252DFC4 */ Gambit_fn_0252D2A8(cpu);
|
|
/* 0252DFC8 */ cpu->r[3] = cpu->r[30];
|
|
/* 0252DFCC */ cpu->f[30] = cpu->f[1];
|
|
/* 0252DFD0 */ Gambit_fn_0252DED0(cpu);
|
|
/* 0252DFD4 */ _t30 = cpu->r[30] + 0x00000208u;
|
|
/* 0252DFD4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 0252DFD8 */ cpu->r[9] = 0x100C0000u;
|
|
/* 0252DFDC */ cpu->f[31] = cpu->f[12] + cpu->f[13];
|
|
/* 0252DFE0 */ _t31 = cpu->r[9] + 0x00003C6Cu;
|
|
/* 0252DFE0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 0252DFE4 */ cpu->f[29] = cpu->f[1] - cpu->f[30];
|
|
/* 0252DFE8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[31], cpu->f[11]);
|
|
/* 0252DFEC */ cpu->f[0] = cpu->f[31];
|
|
/* 0252DFF0 */ _t32 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252DFF0 */ _t33 = _t32 & 0x00000001u;
|
|
/* 0252DFF0 */ if (_t33) goto L_0252DFF4; else goto L_0252E060;
|
|
L_0252DFF4: ; // 0x252dff4
|
|
/* 0252DFF4 */ goto L_0252E08C;
|
|
L_0252DFF8: ; // 0x252dff8
|
|
/* 0252DFF8 */ cpu->r[9] = 0x100C0000u;
|
|
/* 0252DFFC */ cpu->r[0] = cpu->r[10] ^ 0x80000000u;
|
|
/* 0252E000 */ _t34 = cpu->r[9] + 0x00003C60u;
|
|
/* 0252E000 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t34);
|
|
/* 0252E004 */ cpu->r[10] = 0x43300000u;
|
|
/* 0252E008 */ _t35 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252E008 */ rbrew_write32(cpu->mem, _t35, cpu->r[0]);
|
|
/* 0252E00C */ _t36 = cpu->r[1] + 0x00000008u;
|
|
/* 0252E00C */ rbrew_write32(cpu->mem, _t36, cpu->r[10]);
|
|
/* 0252E010 */ _t37 = cpu->r[1] + 0x00000008u;
|
|
/* 0252E010 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t37);
|
|
/* 0252E014 */ cpu->f[10] = cpu->f[13] - cpu->f[0];
|
|
/* 0252E018 */ cpu->r[7] = 0x100C0000u;
|
|
/* 0252E01C */ cpu->f[12] = (double)(float)cpu->f[10];
|
|
/* 0252E020 */ _t38 = cpu->r[7] + 0x00003C68u;
|
|
/* 0252E020 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 0252E024 */ cpu->f[0] = cpu->f[12] / cpu->f[13];
|
|
/* 0252E028 */ Gambit_fn_0252D2A8(cpu);
|
|
/* 0252E02C */ cpu->r[3] = cpu->r[30];
|
|
/* 0252E030 */ cpu->f[30] = cpu->f[1];
|
|
/* 0252E034 */ Gambit_fn_0252DED0(cpu);
|
|
/* 0252E038 */ cpu->f[29] = cpu->f[1] - cpu->f[30];
|
|
/* 0252E03C */ cpu->f[13] = fma(cpu->f[29], cpu->f[0], cpu->f[30]);
|
|
/* 0252E040 */ _t39 = cpu->r[30] + 0x0000020Cu;
|
|
/* 0252E040 */ rbrew_write_f32(cpu->mem, _t39, cpu->f[13]);
|
|
L_0252E044: ; // 0x252e044
|
|
/* 0252E044 */ _t40 = cpu->r[30] + 0x00000208u;
|
|
/* 0252E044 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 0252E048 */ cpu->r[9] = 0x100C0000u;
|
|
/* 0252E04C */ cpu->f[31] = cpu->f[12] + cpu->f[13];
|
|
/* 0252E050 */ _t41 = cpu->r[9] + 0x00003C6Cu;
|
|
/* 0252E050 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 0252E054 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[31], cpu->f[11]);
|
|
/* 0252E058 */ cpu->f[0] = cpu->f[31];
|
|
/* 0252E05C */ _t42 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252E05C */ _t43 = _t42 & 0x00000001u;
|
|
/* 0252E05C */ if (_t43) goto L_0252E08C; else goto L_0252E060;
|
|
L_0252E060: ; // 0x252e060
|
|
/* 0252E060 */ _t44 = cpu->r[30] + 0x00000200u;
|
|
/* 0252E060 */ cpu->r[31] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t44);
|
|
/* 0252E064 */ _t45 = cpu->r[30] + 0x00000008u;
|
|
/* 0252E064 */ cpu->r[29] = rbrew_read32(cpu->mem, _t45);
|
|
/* 0252E068 */ cpu->r[4] = cpu->r[31];
|
|
/* 0252E06C */ cpu->r[3] = cpu->r[29];
|
|
/* 0252E070 */ _t46 = cpu->r[30] + 0x00000208u;
|
|
/* 0252E070 */ rbrew_write_f32(cpu->mem, _t46, cpu->f[0]);
|
|
/* 0252E074 */ Gambit_fn_0297FC7C(cpu);
|
|
/* 0252E078 */ _t47 = cpu->r[29] + 0x0000001Cu;
|
|
/* 0252E078 */ cpu->r[8] = rbrew_read32(cpu->mem, _t47);
|
|
/* 0252E07C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[8]);
|
|
/* 0252E080 */ cpu->r[8] = 0x00000000u;
|
|
/* 0252E084 */ _t48 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0252E084 */ _t49 = _t48 & 0x00000001u;
|
|
/* 0252E084 */ if (_t49) goto L_0252E088; else goto L_0252E0CC;
|
|
L_0252E088: ; // 0x252e088
|
|
/* 0252E088 */ goto L_0252E0C0;
|
|
L_0252E08C: ; // 0x252e08c
|
|
/* 0252E08C */ cpu->f[31] = cpu->f[31] - cpu->f[11];
|
|
/* 0252E090 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[31], cpu->f[11]);
|
|
/* 0252E094 */ _t50 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252E094 */ _t51 = _t50 & 0x00000001u;
|
|
/* 0252E094 */ if (_t51) goto L_0252E08C; else goto L_0252E098;
|
|
L_0252E098: ; // 0x252e098
|
|
/* 0252E098 */ _t52 = cpu->r[30] + 0x00000200u;
|
|
/* 0252E098 */ cpu->r[31] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t52);
|
|
/* 0252E09C */ _t53 = cpu->r[30] + 0x00000008u;
|
|
/* 0252E09C */ cpu->r[29] = rbrew_read32(cpu->mem, _t53);
|
|
/* 0252E0A0 */ cpu->r[4] = cpu->r[31];
|
|
/* 0252E0A4 */ cpu->r[3] = cpu->r[29];
|
|
/* 0252E0A8 */ _t54 = cpu->r[30] + 0x00000208u;
|
|
/* 0252E0A8 */ rbrew_write_f32(cpu->mem, _t54, cpu->f[31]);
|
|
/* 0252E0AC */ Gambit_fn_0297FC7C(cpu);
|
|
/* 0252E0B0 */ _t55 = cpu->r[29] + 0x0000001Cu;
|
|
/* 0252E0B0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t55);
|
|
/* 0252E0B4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[8]);
|
|
/* 0252E0B8 */ cpu->r[8] = 0x00000000u;
|
|
/* 0252E0BC */ _t56 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0252E0BC */ _t57 = _t56 & 0x00000001u;
|
|
/* 0252E0BC */ if (_t57) goto L_0252E0C0; else goto L_0252E0CC;
|
|
L_0252E0C0: ; // 0x252e0c0
|
|
/* 0252E0C0 */ _t58 = cpu->r[29] + 0x00000024u;
|
|
/* 0252E0C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t58);
|
|
/* 0252E0C4 */ cpu->r[9] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0252E0C8 */ _t59 = cpu->r[9] + cpu->r[0];
|
|
/* 0252E0C8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t59);
|
|
L_0252E0CC: ; // 0x252e0cc
|
|
/* 0252E0CC */ _t60 = cpu->r[8] + 0x00000000u;
|
|
/* 0252E0CC */ cpu->r[3] = rbrew_read32(cpu->mem, _t60);
|
|
/* 0252E0D0 */ _t61 = cpu->r[3] + 0x00000088u;
|
|
/* 0252E0D0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t61);
|
|
/* 0252E0D4 */ cpu->r[6] = 0x101F0000u;
|
|
/* 0252E0D8 */ _t62 = cpu->r[12] + 0x00000174u;
|
|
/* 0252E0D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t62);
|
|
/* 0252E0DC */ cpu->f[1] = cpu->f[31];
|
|
/* 0252E0E0 */ cpu->r[7] = 0x101F0000u;
|
|
/* 0252E0E4 */ _t63 = cpu->r[30] + 0x00000202u;
|
|
/* 0252E0E4 */ cpu->r[4] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t63);
|
|
/* 0252E0E8 */ cpu->ctr = cpu->r[0];
|
|
/* 0252E0EC */ _t64 = cpu->r[30] + 0x00000204u;
|
|
/* 0252E0EC */ cpu->r[5] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t64);
|
|
/* 0252E0F0 */ cpu->r[6] = cpu->r[6] + 0x00006330u;
|
|
/* 0252E0F4 */ cpu->r[7] = cpu->r[7] + 0x00006318u;
|
|
/* 0252E0F8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252E0FC */ _t65 = cpu->r[30] + 0x00000210u;
|
|
/* 0252E0FC */ cpu->r[12] = rbrew_read32(cpu->mem, _t65);
|
|
/* 0252E100 */ _t66 = cpu->r[30] + 0x0000020Cu;
|
|
/* 0252E100 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t66);
|
|
/* 0252E104 */ cpu->r[10] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 0252E104 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0252E108 */ _t67 = cpu->r[30] + 0x00000214u;
|
|
/* 0252E108 */ cpu->r[3] = rbrew_read32(cpu->mem, _t67);
|
|
/* 0252E10C */ _t68 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0252E10C */ _t69 = _t68 & 0x00000001u;
|
|
/* 0252E10C */ if (_t69) goto L_0252E110; else goto L_0252E114;
|
|
L_0252E110: ; // 0x252e110
|
|
/* 0252E110 */ cpu->r[10] = 0x00000000u;
|
|
L_0252E114: ; // 0x252e114
|
|
/* 0252E114 */ cpu->f[0] = cpu->f[12] - cpu->f[30];
|
|
/* 0252E118 */ _t70 = cpu->r[30] + 0x00000210u;
|
|
/* 0252E118 */ rbrew_write32(cpu->mem, _t70, cpu->r[10]);
|
|
/* 0252E11C */ cpu->f[31] = cpu->f[0] / cpu->f[29];
|
|
/* 0252E120 */ Gambit_fn_02398D60(cpu);
|
|
/* 0252E124 */ _t71 = cpu->r[30] + 0x00000214u;
|
|
/* 0252E124 */ cpu->r[3] = rbrew_read32(cpu->mem, _t71);
|
|
/* 0252E128 */ cpu->f[31] = cpu->f[1] * cpu->f[31];
|
|
/* 0252E12C */ Gambit_fn_02398D60(cpu);
|
|
/* 0252E130 */ cpu->r[8] = 0x100C0000u;
|
|
/* 0252E134 */ cpu->r[7] = 0x100C0000u;
|
|
/* 0252E138 */ _t72 = cpu->r[8] + 0x00003BDCu;
|
|
/* 0252E138 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t72);
|
|
/* 0252E13C */ _t73 = cpu->r[7] + 0x00003C24u;
|
|
/* 0252E13C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t73);
|
|
/* 0252E140 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[31], cpu->f[10]);
|
|
/* 0252E144 */ cpu->f[11] = cpu->f[1] - cpu->f[0];
|
|
/* 0252E148 */ _t74 = cpu->r[30] + 0x00000214u;
|
|
/* 0252E148 */ cpu->r[3] = rbrew_read32(cpu->mem, _t74);
|
|
/* 0252E14C */ _t75 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0252E14C */ _t76 = _t75 & 0x00000001u;
|
|
/* 0252E14C */ if (_t76) goto L_0252E150; else goto L_0252E15C;
|
|
L_0252E150: ; // 0x252e150
|
|
/* 0252E150 */ cpu->f[1] = cpu->f[10];
|
|
/* 0252E154 */ Gambit_fn_02398CF8(cpu);
|
|
/* 0252E158 */ goto L_0252E170;
|
|
L_0252E15C: ; // 0x252e15c
|
|
/* 0252E15C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[31], cpu->f[11]);
|
|
/* 0252E160 */ _t77 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252E160 */ _t78 = _t77 & 0x00000001u;
|
|
/* 0252E160 */ if (_t78) goto L_0252E164; else goto L_0252E168;
|
|
L_0252E164: ; // 0x252e164
|
|
/* 0252E164 */ cpu->f[31] = cpu->f[11];
|
|
L_0252E168: ; // 0x252e168
|
|
/* 0252E168 */ cpu->f[1] = cpu->f[31];
|
|
/* 0252E16C */ Gambit_fn_02398CF8(cpu);
|
|
L_0252E170: ; // 0x252e170
|
|
/* 0252E170 */ _t79 = cpu->r[1] + 0x00000014u;
|
|
/* 0252E170 */ cpu->r[29] = rbrew_read32(cpu->mem, _t79);
|
|
/* 0252E174 */ _t80 = cpu->r[1] + 0x00000048u;
|
|
/* 0252E174 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t80);
|
|
/* 0252E178 */ _t81 = cpu->r[1] + 0x00000028u;
|
|
/* 0252E178 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t81);
|
|
/* 0252E17C */ _t82 = cpu->r[1] + 0x00000040u;
|
|
/* 0252E17C */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t82);
|
|
/* 0252E180 */ _t83 = cpu->r[1] + 0x00000038u;
|
|
/* 0252E180 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t83);
|
|
/* 0252E184 */ _t84 = cpu->r[1] + 0x00000020u;
|
|
/* 0252E184 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t84);
|
|
/* 0252E188 */ _t85 = cpu->r[1] + 0x00000030u;
|
|
/* 0252E188 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t85);
|
|
/* 0252E18C */ _t86 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252E18C */ cpu->r[31] = rbrew_read32(cpu->mem, _t86);
|
|
/* 0252E190 */ _t87 = cpu->r[1] + 0x00000018u;
|
|
/* 0252E190 */ cpu->r[30] = rbrew_read32(cpu->mem, _t87);
|
|
/* 0252E194 */ _t88 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0252E194 */ _t89 = _t88 & 0x00000001u;
|
|
/* 0252E194 */ if (_t89) goto L_0252E198; // else: addr-0 trap, fall-through
|
|
L_0252E198: ; // 0x252e198
|
|
/* 0252E198 */ _t90 = cpu->r[1] + 0x00000054u;
|
|
/* 0252E198 */ cpu->r[0] = rbrew_read32(cpu->mem, _t90);
|
|
/* 0252E19C */ cpu->lr = cpu->r[0];
|
|
/* 0252E1A0 */ cpu->r[1] = cpu->r[1] + 0x00000050u;
|
|
/* 0252E1A4 */ return;
|
|
}
|
|
|
|
// fn_0252E1A8 @ 0x252e1a8
|
|
void Gambit_fn_0252E1A8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_0252E1A8: ; // 0x252e1a8
|
|
/* 0252E1A8 */ cpu->r[0] = cpu->lr;
|
|
/* 0252E1AC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0252E1AC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252E1AC */ cpu->r[1] = _t0;
|
|
/* 0252E1B0 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0252E1B0 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0252E1B4 */ cpu->r[30] = cpu->r[3];
|
|
/* 0252E1B8 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252E1B8 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0252E1BC */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0252E1BC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0252E1C0 */ Gambit_fn_0252DA68(cpu);
|
|
/* 0252E1C4 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0252E1C8 */ _t4 = cpu->r[12] + 0x00005BA0u;
|
|
/* 0252E1C8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0252E1CC */ _t5 = cpu->r[30] + 0x00000024u;
|
|
/* 0252E1CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0252E1D0 */ _t6 = cpu->r[12] + 0x00000100u;
|
|
/* 0252E1D0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0252E1D4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[10]);
|
|
/* 0252E1D8 */ cpu->r[31] = 0x00000000u;
|
|
/* 0252E1DC */ _t7 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0252E1DC */ _t8 = _t7 & 0x00000001u;
|
|
/* 0252E1DC */ if (_t8) goto L_0252E1E0; else goto L_0252E1EC;
|
|
L_0252E1E0: ; // 0x252e1e0
|
|
/* 0252E1E0 */ _t9 = cpu->r[12] + 0x00000108u;
|
|
/* 0252E1E0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0252E1E4 */ cpu->r[11] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0252E1E8 */ _t10 = cpu->r[11] + cpu->r[12];
|
|
/* 0252E1E8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
L_0252E1EC: ; // 0x252e1ec
|
|
/* 0252E1EC */ cpu->r[3] = cpu->r[30];
|
|
/* 0252E1F0 */ Gambit_fn_0252DAA8(cpu);
|
|
/* 0252E1F4 */ cpu->r[0] = cpu->r[3] ^ 0x00000001u;
|
|
/* 0252E1F8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0252E1FC */ cpu->r[4] = cpu->r[30];
|
|
/* 0252E200 */ cpu->r[5] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 0252E204 */ Gambit_fn_02530BDC(cpu);
|
|
/* 0252E208 */ _t11 = cpu->r[30] + 0x00000227u;
|
|
/* 0252E208 */ cpu->r[11] = rbrew_read8(cpu->mem, _t11);
|
|
/* 0252E20C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x000000FFu);
|
|
/* 0252E210 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252E210 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0252E210 */ if (_t13) goto L_0252E21C; else goto L_0252E214;
|
|
L_0252E214: ; // 0x252e214
|
|
/* 0252E214 */ cpu->r[3] = cpu->r[30];
|
|
/* 0252E218 */ Gambit_fn_0252DCCC(cpu);
|
|
L_0252E21C: ; // 0x252e21c
|
|
/* 0252E21C */ cpu->r[3] = cpu->r[30];
|
|
/* 0252E220 */ Gambit_fn_0252DAA8(cpu);
|
|
/* 0252E224 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252E228 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252E228 */ _t15 = _t14 & 0x00000001u;
|
|
/* 0252E228 */ if (_t15) goto L_0252E234; else goto L_0252E22C;
|
|
L_0252E22C: ; // 0x252e22c
|
|
/* 0252E22C */ cpu->r[3] = cpu->r[30];
|
|
/* 0252E230 */ Gambit_fn_0252DE58(cpu);
|
|
L_0252E234: ; // 0x252e234
|
|
/* 0252E234 */ cpu->r[3] = cpu->r[30];
|
|
/* 0252E238 */ Gambit_fn_0252DEDC(cpu);
|
|
/* 0252E23C */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 0252E23C */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0252E240 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 0252E240 */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0252E244 */ cpu->lr = cpu->r[0];
|
|
/* 0252E248 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252E248 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0252E24C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0252E250 */ return;
|
|
}
|
|
|
|
// fn_0252E1AC @ 0x252e1ac
|
|
void Gambit_fn_0252E1AC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_0252E1AC: ; // 0x252e1ac
|
|
/* 0252E1AC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0252E1AC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252E1AC */ cpu->r[1] = _t0;
|
|
/* 0252E1B0 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0252E1B0 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0252E1B4 */ cpu->r[30] = cpu->r[3];
|
|
/* 0252E1B8 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252E1B8 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0252E1BC */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0252E1BC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0252E1C0 */ Gambit_fn_0252DA68(cpu);
|
|
/* 0252E1C4 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0252E1C8 */ _t4 = cpu->r[12] + 0x00005BA0u;
|
|
/* 0252E1C8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0252E1CC */ _t5 = cpu->r[30] + 0x00000024u;
|
|
/* 0252E1CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0252E1D0 */ _t6 = cpu->r[12] + 0x00000100u;
|
|
/* 0252E1D0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0252E1D4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[10]);
|
|
/* 0252E1D8 */ cpu->r[31] = 0x00000000u;
|
|
/* 0252E1DC */ _t7 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0252E1DC */ _t8 = _t7 & 0x00000001u;
|
|
/* 0252E1DC */ if (_t8) goto L_0252E1E0; else goto L_0252E1EC;
|
|
L_0252E1E0: ; // 0x252e1e0
|
|
/* 0252E1E0 */ _t9 = cpu->r[12] + 0x00000108u;
|
|
/* 0252E1E0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0252E1E4 */ cpu->r[11] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0252E1E8 */ _t10 = cpu->r[11] + cpu->r[12];
|
|
/* 0252E1E8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
L_0252E1EC: ; // 0x252e1ec
|
|
/* 0252E1EC */ cpu->r[3] = cpu->r[30];
|
|
/* 0252E1F0 */ Gambit_fn_0252DAA8(cpu);
|
|
/* 0252E1F4 */ cpu->r[0] = cpu->r[3] ^ 0x00000001u;
|
|
/* 0252E1F8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0252E1FC */ cpu->r[4] = cpu->r[30];
|
|
/* 0252E200 */ cpu->r[5] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 0252E204 */ Gambit_fn_02530BDC(cpu);
|
|
/* 0252E208 */ _t11 = cpu->r[30] + 0x00000227u;
|
|
/* 0252E208 */ cpu->r[11] = rbrew_read8(cpu->mem, _t11);
|
|
/* 0252E20C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x000000FFu);
|
|
/* 0252E210 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252E210 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0252E210 */ if (_t13) goto L_0252E21C; else goto L_0252E214;
|
|
L_0252E214: ; // 0x252e214
|
|
/* 0252E214 */ cpu->r[3] = cpu->r[30];
|
|
/* 0252E218 */ Gambit_fn_0252DCCC(cpu);
|
|
L_0252E21C: ; // 0x252e21c
|
|
/* 0252E21C */ cpu->r[3] = cpu->r[30];
|
|
/* 0252E220 */ Gambit_fn_0252DAA8(cpu);
|
|
/* 0252E224 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252E228 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252E228 */ _t15 = _t14 & 0x00000001u;
|
|
/* 0252E228 */ if (_t15) goto L_0252E234; else goto L_0252E22C;
|
|
L_0252E22C: ; // 0x252e22c
|
|
/* 0252E22C */ cpu->r[3] = cpu->r[30];
|
|
/* 0252E230 */ Gambit_fn_0252DE58(cpu);
|
|
L_0252E234: ; // 0x252e234
|
|
/* 0252E234 */ cpu->r[3] = cpu->r[30];
|
|
/* 0252E238 */ Gambit_fn_0252DEDC(cpu);
|
|
/* 0252E23C */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 0252E23C */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0252E240 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 0252E240 */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0252E244 */ cpu->lr = cpu->r[0];
|
|
/* 0252E248 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252E248 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0252E24C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0252E250 */ return;
|
|
}
|
|
|
|
// fn_0252E254 @ 0x252e254
|
|
void Gambit_fn_0252E254(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106, _t107, _t108, _t109, _t110, _t111, _t112, _t113, _t114, _t115, _t116, _t117, _t118, _t119, _t120, _t121, _t122, _t123, _t124, _t125, _t126, _t127, _t128, _t129, _t130, _t131, _t132, _t133, _t134, _t135, _t136, _t137, _t138, _t139, _t140, _t141, _t142, _t143, _t144, _t145, _t146, _t147, _t148, _t149, _t150, _t151, _t152, _t153, _t154, _t155, _t156, _t157, _t158, _t159, _t160, _t161, _t162, _t163, _t164, _t165, _t166, _t167, _t168, _t169, _t170, _t171, _t172, _t173, _t174, _t175, _t176, _t177, _t178, _t179, _t180, _t181, _t182, _t183, _t184, _t185, _t186, _t187, _t188, _t189, _t190, _t191, _t192, _t193, _t194, _t195, _t196, _t197, _t198, _t199, _t200, _t201, _t202, _t203, _t204, _t205, _t206, _t207, _t208, _t209, _t210, _t211, _t212, _t213, _t214, _t215, _t216, _t217, _t218, _t219, _t220, _t221, _t222, _t223, _t224, _t225, _t226, _t227, _t228, _t229, _t230, _t231, _t232, _t233, _t234, _t235, _t236, _t237, _t238, _t239, _t240, _t241, _t242, _t243, _t244, _t245, _t246, _t247, _t248, _t249, _t250, _t251, _t252, _t253, _t254, _t255, _t256, _t257, _t258, _t259, _t260, _t261, _t262, _t263, _t264, _t265, _t266, _t267, _t268, _t269, _t270, _t271, _t272, _t273, _t274, _t275, _t276, _t277, _t278, _t279, _t280, _t281, _t282, _t283, _t284, _t285, _t286, _t287, _t288, _t289, _t290, _t291, _t292, _t293, _t294, _t295, _t296, _t297, _t298, _t299, _t300, _t301, _t302, _t303, _t304, _t305, _t306, _t307, _t308, _t309, _t310, _t311, _t312, _t313, _t314, _t315, _t316, _t317, _t318, _t319, _t320, _t321, _t322, _t323, _t324, _t325, _t326, _t327, _t328, _t329, _t330, _t331, _t332, _t333, _t334, _t335, _t336, _t337, _t338, _t339, _t340, _t341, _t342, _t343, _t344, _t345, _t346, _t347, _t348, _t349, _t350, _t351, _t352, _t353, _t354, _t355, _t356, _t357, _t358, _t359, _t360, _t361, _t362, _t363, _t364, _t365, _t366, _t367, _t368, _t369, _t370, _t371, _t372, _t373, _t374, _t375, _t376, _t377, _t378, _t379, _t380, _t381, _t382, _t383, _t384, _t385, _t386, _t387, _t388, _t389, _t390, _t391, _t392, _t393, _t394, _t395, _t396, _t397, _t398, _t399, _t400, _t401, _t402, _t403, _t404, _t405, _t406, _t407, _t408, _t409, _t410, _t411, _t412, _t413, _t414, _t415, _t416, _t417, _t418, _t419, _t420, _t421, _t422, _t423, _t424, _t425, _t426, _t427, _t428, _t429, _t430, _t431, _t432, _t433, _t434, _t435, _t436, _t437, _t438, _t439, _t440, _t441, _t442, _t443, _t444, _t445, _t446, _t447, _t448, _t449, _t450, _t451, _t452, _t453, _t454, _t455, _t456, _t457, _t458, _t459, _t460, _t461, _t462, _t463, _t464, _t465, _t466, _t467, _t468, _t469, _t470, _t471, _t472, _t473, _t474, _t475, _t476, _t477, _t478, _t479, _t480, _t481, _t482, _t483, _t484, _t485, _t486, _t487, _t488, _t489, _t490, _t491, _t492, _t493, _t494, _t495, _t496, _t497, _t498, _t499, _t500, _t501, _t502, _t503, _t504, _t505, _t506, _t507, _t508, _t509, _t510, _t511, _t512, _t513, _t514, _t515, _t516, _t517, _t518, _t519, _t520, _t521, _t522, _t523, _t524, _t525, _t526, _t527, _t528, _t529, _t530, _t531, _t532, _t533, _t534, _t535, _t536, _t537, _t538, _t539, _t540, _t541, _t542, _t543, _t544, _t545, _t546, _t547, _t548, _t549, _t550, _t551, _t552, _t553, _t554, _t555, _t556, _t557, _t558, _t559, _t560, _t561, _t562, _t563, _t564, _t565, _t566, _t567, _t568, _t569, _t570, _t571, _t572, _t573, _t574, _t575, _t576, _t577, _t578, _t579, _t580, _t581, _t582, _t583, _t584, _t585, _t586, _t587, _t588, _t589, _t590, _t591, _t592, _t593, _t594, _t595, _t596, _t597, _t598, _t599, _t600, _t601, _t602, _t603, _t604, _t605, _t606, _t607, _t608, _t609, _t610, _t611, _t612, _t613, _t614, _t615, _t616, _t617, _t618, _t619, _t620, _t621, _t622, _t623, _t624, _t625, _t626, _t627, _t628, _t629, _t630, _t631, _t632, _t633, _t634, _t635, _t636, _t637, _t638, _t639, _t640, _t641, _t642, _t643, _t644, _t645, _t646, _t647, _t648, _t649, _t650, _t651, _t652, _t653, _t654, _t655, _t656, _t657, _t658, _t659, _t660, _t661, _t662, _t663, _t664, _t665, _t666, _t667, _t668, _t669, _t670, _t671, _t672, _t673, _t674, _t675, _t676, _t677, _t678, _t679, _t680, _t681, _t682, _t683, _t684, _t685, _t686, _t687, _t688, _t689, _t690, _t691, _t692, _t693, _t694, _t695, _t696, _t697, _t698, _t699, _t700, _t701, _t702, _t703, _t704, _t705, _t706, _t707, _t708, _t709, _t710, _t711, _t712, _t713, _t714, _t715, _t716, _t717, _t718, _t719, _t720, _t721, _t722, _t723, _t724, _t725, _t726, _t727, _t728, _t729, _t730, _t731, _t732, _t733, _t734, _t735, _t736, _t737, _t738, _t739, _t740, _t741, _t742, _t743, _t744, _t745, _t746, _t747, _t748, _t749;
|
|
|
|
L_02031EFC: ; // 0x2031efc
|
|
/* 02031EFC */ _t0 = cpu->r[1] + 0xFFFFFF68u;
|
|
/* 02031EFC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02031EFC */ cpu->r[1] = _t0;
|
|
/* 02031F00 */ _t1 = cpu->r[1] + 0x00000094u;
|
|
/* 02031F00 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02031F04 */ _t2 = cpu->r[3] + 0x00000004u;
|
|
/* 02031F04 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 02031F08 */ cpu->r[12] = 0x10000000u;
|
|
/* 02031F0C */ cpu->r[8] = 0x101D0000u;
|
|
/* 02031F10 */ _t3 = cpu->r[12] + 0x000042DCu;
|
|
/* 02031F10 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 02031F14 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[0]);
|
|
/* 02031F18 */ cpu->r[12] = 0x10000000u;
|
|
/* 02031F1C */ cpu->r[7] = 0x00000000u;
|
|
/* 02031F20 */ _t4 = cpu->r[12] + 0x000042E0u;
|
|
/* 02031F20 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 02031F24 */ cpu->r[9] = 0x101D0000u;
|
|
/* 02031F28 */ _t5 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02031F28 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02031F28 */ if (_t6) goto L_02031F2C; else goto L_02031F38;
|
|
L_02031F2C: ; // 0x2031f2c
|
|
/* 02031F2C */ _t7 = cpu->r[3] + 0x00000000u;
|
|
/* 02031F2C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 02031F30 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[2], cpu->f[0]);
|
|
/* 02031F34 */ _t8 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02031F34 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02031F34 */ if (_t9) goto L_020320D0; else goto L_02031F38;
|
|
L_02031F38: ; // 0x2031f38
|
|
/* 02031F38 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[2]);
|
|
/* 02031F3C */ cpu->r[7] = 0x00000001u;
|
|
/* 02031F40 */ _t10 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02031F40 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02031F40 */ if (_t11) goto L_02031F44; else goto L_02031F48;
|
|
L_02031F44: ; // 0x2031f44
|
|
/* 02031F44 */ cpu->f[1] = cpu->f[2];
|
|
L_02031F48: ; // 0x2031f48
|
|
/* 02031F48 */ cpu->f[9] = cpu->f[1] - cpu->f[5];
|
|
/* 02031F4C */ cpu->f[0] = cpu->f[2] + cpu->f[5];
|
|
/* 02031F50 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[11]);
|
|
/* 02031F54 */ _t12 = cpu->r[3] + 0x00000004u;
|
|
/* 02031F54 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[9]);
|
|
/* 02031F58 */ _t13 = cpu->r[3] + 0x00000000u;
|
|
/* 02031F58 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[0]);
|
|
/* 02031F5C */ _t14 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02031F5C */ _t15 = _t14 & 0x00000001u;
|
|
/* 02031F5C */ if (_t15) goto L_02031F60; else goto L_02031FB0;
|
|
L_02031F60: ; // 0x2031f60
|
|
/* 02031F60 */ cpu->r[12] = 0x10000000u;
|
|
/* 02031F64 */ _t16 = cpu->r[12] + 0x000042E8u;
|
|
/* 02031F64 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t16);
|
|
/* 02031F68 */ cpu->r[11] = 0x43300000u;
|
|
/* 02031F6C */ _t17 = cpu->r[8] + 0x00006800u;
|
|
/* 02031F6C */ cpu->r[12] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02031F70 */ _t18 = cpu->r[1] + 0x00000008u;
|
|
/* 02031F70 */ rbrew_write32(cpu->mem, _t18, cpu->r[11]);
|
|
/* 02031F74 */ cpu->r[12] = cpu->r[12] ^ 0x80000000u;
|
|
/* 02031F78 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02031F78 */ rbrew_write32(cpu->mem, _t19, cpu->r[12]);
|
|
/* 02031F7C */ _t20 = cpu->r[1] + 0x00000008u;
|
|
/* 02031F7C */ cpu->f[10] = rbrew_read_f64(cpu->mem, _t20);
|
|
/* 02031F80 */ cpu->r[12] = cpu->r[1] + 0x00000008u;
|
|
/* 02031F84 */ cpu->f[13] = cpu->f[10] - cpu->f[13];
|
|
/* 02031F88 */ cpu->f[10] = (double)(float)cpu->f[13];
|
|
/* 02031F8C */ cpu->f[13] = cpu->f[11] * cpu->f[10];
|
|
/* 02031F90 */ cpu->f[13] = (uint32_t)(int32_t)cpu->f[13];
|
|
/* 02031F94 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[11]);
|
|
/* 02031F98 */ /* nop */
|
|
/* 02031F9C */ _t21 = cpu->r[1] + 0x00000008u;
|
|
/* 02031F9C */ cpu->r[5] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02031FA0 */ _t22 = cpu->r[3] + 0x00000014u;
|
|
/* 02031FA0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02031FA4 */ _t23 = cpu->r[3] + 0x00000010u;
|
|
/* 02031FA4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02031FA8 */ _t24 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02031FA8 */ _t25 = _t24 & 0x00000001u;
|
|
/* 02031FA8 */ if (_t25) goto L_02031FAC; else goto L_02032068;
|
|
L_02031FAC: ; // 0x2031fac
|
|
/* 02031FAC */ goto L_02032008;
|
|
L_02031FB0: ; // 0x2031fb0
|
|
/* 02031FB0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[12]);
|
|
/* 02031FB4 */ _t26 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02031FB4 */ _t27 = _t26 & 0x00000001u;
|
|
/* 02031FB4 */ if (_t27) goto L_02031FB8; else goto L_02031FBC;
|
|
L_02031FB8: ; // 0x2031fb8
|
|
/* 02031FB8 */ cpu->f[9] = cpu->f[12];
|
|
L_02031FBC: ; // 0x2031fbc
|
|
/* 02031FBC */ cpu->r[12] = 0x10000000u;
|
|
/* 02031FC0 */ _t28 = cpu->r[12] + 0x000042E8u;
|
|
/* 02031FC0 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t28);
|
|
/* 02031FC4 */ cpu->r[11] = 0x43300000u;
|
|
/* 02031FC8 */ _t29 = cpu->r[8] + 0x00006800u;
|
|
/* 02031FC8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02031FCC */ _t30 = cpu->r[1] + 0x00000008u;
|
|
/* 02031FCC */ rbrew_write32(cpu->mem, _t30, cpu->r[11]);
|
|
/* 02031FD0 */ cpu->r[12] = cpu->r[12] ^ 0x80000000u;
|
|
/* 02031FD4 */ _t31 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02031FD4 */ rbrew_write32(cpu->mem, _t31, cpu->r[12]);
|
|
/* 02031FD8 */ _t32 = cpu->r[1] + 0x00000008u;
|
|
/* 02031FD8 */ cpu->f[10] = rbrew_read_f64(cpu->mem, _t32);
|
|
/* 02031FDC */ cpu->r[12] = cpu->r[1] + 0x00000008u;
|
|
/* 02031FE0 */ cpu->f[13] = cpu->f[10] - cpu->f[13];
|
|
/* 02031FE4 */ cpu->f[10] = (double)(float)cpu->f[13];
|
|
/* 02031FE8 */ cpu->f[13] = cpu->f[9] * cpu->f[10];
|
|
/* 02031FEC */ cpu->f[13] = (uint32_t)(int32_t)cpu->f[13];
|
|
/* 02031FF0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[11]);
|
|
/* 02031FF4 */ /* nop */
|
|
/* 02031FF8 */ _t33 = cpu->r[1] + 0x00000008u;
|
|
/* 02031FF8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02031FFC */ _t34 = cpu->r[3] + 0x00000014u;
|
|
/* 02031FFC */ cpu->r[11] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02032000 */ _t35 = cpu->r[3] + 0x00000010u;
|
|
/* 02032000 */ cpu->r[12] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02032004 */ _t36 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02032004 */ _t37 = _t36 & 0x00000001u;
|
|
/* 02032004 */ if (_t37) goto L_02032008; else goto L_02032068;
|
|
L_02032008: ; // 0x2032008
|
|
/* 02032008 */ cpu->f[0] = cpu->f[11] * cpu->f[10];
|
|
/* 0203200C */ cpu->r[11] = rbrew_rlwinm(cpu->r[11], 0x00000004u, 0x00000000u, 0x0000001Bu);
|
|
/* 02032010 */ _t38 = cpu->r[11] + cpu->r[12];
|
|
/* 02032010 */ rbrew_write32(cpu->mem, _t38, cpu->r[5]);
|
|
/* 02032014 */ _t39 = cpu->r[3] + 0x00000048u;
|
|
/* 02032014 */ cpu->r[10] = rbrew_read32(cpu->mem, _t39);
|
|
/* 02032018 */ cpu->f[0] = (uint32_t)(int32_t)cpu->f[0];
|
|
/* 0203201C */ _t40 = cpu->r[3] + 0x00000010u;
|
|
/* 0203201C */ cpu->r[11] = rbrew_read32(cpu->mem, _t40);
|
|
/* 02032020 */ cpu->r[12] = cpu->r[1] + 0x00000008u;
|
|
/* 02032024 */ /* nop */
|
|
/* 02032028 */ _t41 = cpu->r[1] + 0x00000008u;
|
|
/* 02032028 */ cpu->r[6] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0203202C */ cpu->r[12] = rbrew_rlwinm(cpu->r[10], 0x00000004u, 0x00000000u, 0x0000001Bu);
|
|
/* 02032030 */ _t42 = cpu->r[12] + cpu->r[11];
|
|
/* 02032030 */ rbrew_write32(cpu->mem, _t42, cpu->r[6]);
|
|
/* 02032034 */ _t43 = cpu->r[9] + 0x000067FCu;
|
|
/* 02032034 */ cpu->r[12] = rbrew_read32(cpu->mem, _t43);
|
|
/* 02032038 */ cpu->r[11] = cpu->r[5] + cpu->r[12];
|
|
/* 0203203C */ cpu->r[12] = cpu->r[6] + cpu->r[12];
|
|
/* 02032040 */ /* nop */
|
|
/* 02032044 */ /* nop */
|
|
/* 02032048 */ cpu->r[11] = cpu->r[12] + 0x00000001u;
|
|
/* 0203204C */ cpu->r[12] = 0x00000001u;
|
|
/* 02032050 */ cpu->r[11] = cpu->r[11] - cpu->r[10];
|
|
/* 02032054 */ /* nop */
|
|
/* 02032058 */ cpu->r[12] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 0203205C */ /* nop */
|
|
/* 02032060 */ _t44 = cpu->r[3] + 0x000000F8u;
|
|
/* 02032060 */ rbrew_write32(cpu->mem, _t44, cpu->r[12]);
|
|
/* 02032064 */ goto L_020320D0;
|
|
L_02032068: ; // 0x2032068
|
|
/* 02032068 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[12]);
|
|
/* 0203206C */ _t45 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0203206C */ _t46 = _t45 & 0x00000001u;
|
|
/* 0203206C */ if (_t46) goto L_02032070; else goto L_02032074;
|
|
L_02032070: ; // 0x2032070
|
|
/* 02032070 */ cpu->f[0] = cpu->f[12];
|
|
L_02032074: ; // 0x2032074
|
|
/* 02032074 */ cpu->f[0] = cpu->f[0] * cpu->f[10];
|
|
/* 02032078 */ cpu->r[11] = rbrew_rlwinm(cpu->r[11], 0x00000004u, 0x00000000u, 0x0000001Bu);
|
|
/* 0203207C */ _t47 = cpu->r[11] + cpu->r[12];
|
|
/* 0203207C */ rbrew_write32(cpu->mem, _t47, cpu->r[5]);
|
|
/* 02032080 */ _t48 = cpu->r[3] + 0x00000048u;
|
|
/* 02032080 */ cpu->r[10] = rbrew_read32(cpu->mem, _t48);
|
|
/* 02032084 */ cpu->f[0] = (uint32_t)(int32_t)cpu->f[0];
|
|
/* 02032088 */ _t49 = cpu->r[3] + 0x00000010u;
|
|
/* 02032088 */ cpu->r[11] = rbrew_read32(cpu->mem, _t49);
|
|
/* 0203208C */ cpu->r[12] = cpu->r[1] + 0x00000008u;
|
|
/* 02032090 */ /* nop */
|
|
/* 02032094 */ _t50 = cpu->r[1] + 0x00000008u;
|
|
/* 02032094 */ cpu->r[6] = rbrew_read32(cpu->mem, _t50);
|
|
/* 02032098 */ cpu->r[12] = rbrew_rlwinm(cpu->r[10], 0x00000004u, 0x00000000u, 0x0000001Bu);
|
|
/* 0203209C */ _t51 = cpu->r[12] + cpu->r[11];
|
|
/* 0203209C */ rbrew_write32(cpu->mem, _t51, cpu->r[6]);
|
|
/* 020320A0 */ _t52 = cpu->r[9] + 0x000067FCu;
|
|
/* 020320A0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t52);
|
|
/* 020320A4 */ cpu->r[11] = cpu->r[5] + cpu->r[12];
|
|
/* 020320A8 */ cpu->r[12] = cpu->r[6] + cpu->r[12];
|
|
/* 020320AC */ /* nop */
|
|
/* 020320B0 */ /* nop */
|
|
/* 020320B4 */ cpu->r[11] = cpu->r[12] + 0x00000001u;
|
|
/* 020320B8 */ cpu->r[12] = 0x00000001u;
|
|
/* 020320BC */ cpu->r[11] = cpu->r[11] - cpu->r[10];
|
|
/* 020320C0 */ /* nop */
|
|
/* 020320C4 */ cpu->r[12] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 020320C8 */ /* nop */
|
|
/* 020320CC */ _t53 = cpu->r[3] + 0x000000F8u;
|
|
/* 020320CC */ rbrew_write32(cpu->mem, _t53, cpu->r[12]);
|
|
L_020320D0: ; // 0x20320d0
|
|
/* 020320D0 */ _t54 = cpu->r[3] + 0x0000000Cu;
|
|
/* 020320D0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 020320D4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[3], cpu->f[0]);
|
|
/* 020320D8 */ _t55 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 020320D8 */ _t56 = _t55 & 0x00000001u;
|
|
/* 020320D8 */ if (_t56) goto L_020320DC; else goto L_020320E8;
|
|
L_020320DC: ; // 0x20320dc
|
|
/* 020320DC */ _t57 = cpu->r[3] + 0x00000008u;
|
|
/* 020320DC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t57);
|
|
/* 020320E0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[4], cpu->f[0]);
|
|
/* 020320E4 */ _t58 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 020320E4 */ _t59 = _t58 & 0x00000001u;
|
|
/* 020320E4 */ if (_t59) goto L_02032280; else goto L_020320E8;
|
|
L_020320E8: ; // 0x20320e8
|
|
/* 020320E8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[3], cpu->f[4]);
|
|
/* 020320EC */ cpu->r[7] = cpu->r[7] | 0x00000002u;
|
|
/* 020320F0 */ _t60 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 020320F0 */ _t61 = _t60 & 0x00000001u;
|
|
/* 020320F0 */ if (_t61) goto L_020320F4; else goto L_020320F8;
|
|
L_020320F4: ; // 0x20320f4
|
|
/* 020320F4 */ cpu->f[3] = cpu->f[4];
|
|
L_020320F8: ; // 0x20320f8
|
|
/* 020320F8 */ cpu->f[9] = cpu->f[3] - cpu->f[5];
|
|
/* 020320FC */ cpu->f[0] = cpu->f[4] + cpu->f[5];
|
|
/* 02032100 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[11]);
|
|
/* 02032104 */ _t62 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02032104 */ rbrew_write_f32(cpu->mem, _t62, cpu->f[9]);
|
|
/* 02032108 */ _t63 = cpu->r[3] + 0x00000008u;
|
|
/* 02032108 */ rbrew_write_f32(cpu->mem, _t63, cpu->f[0]);
|
|
/* 0203210C */ _t64 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0203210C */ _t65 = _t64 & 0x00000001u;
|
|
/* 0203210C */ if (_t65) goto L_02032110; else goto L_02032160;
|
|
L_02032110: ; // 0x2032110
|
|
/* 02032110 */ cpu->r[12] = 0x10000000u;
|
|
/* 02032114 */ _t66 = cpu->r[12] + 0x000042E8u;
|
|
/* 02032114 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t66);
|
|
/* 02032118 */ cpu->r[11] = 0x43300000u;
|
|
/* 0203211C */ _t67 = cpu->r[8] + 0x00006800u;
|
|
/* 0203211C */ cpu->r[12] = rbrew_read32(cpu->mem, _t67);
|
|
/* 02032120 */ _t68 = cpu->r[1] + 0x00000008u;
|
|
/* 02032120 */ rbrew_write32(cpu->mem, _t68, cpu->r[11]);
|
|
/* 02032124 */ cpu->r[12] = cpu->r[12] ^ 0x80000000u;
|
|
/* 02032128 */ _t69 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02032128 */ rbrew_write32(cpu->mem, _t69, cpu->r[12]);
|
|
/* 0203212C */ _t70 = cpu->r[1] + 0x00000008u;
|
|
/* 0203212C */ cpu->f[10] = rbrew_read_f64(cpu->mem, _t70);
|
|
/* 02032130 */ cpu->r[12] = cpu->r[1] + 0x00000008u;
|
|
/* 02032134 */ cpu->f[13] = cpu->f[10] - cpu->f[13];
|
|
/* 02032138 */ cpu->f[10] = (double)(float)cpu->f[13];
|
|
/* 0203213C */ cpu->f[13] = cpu->f[11] * cpu->f[10];
|
|
/* 02032140 */ cpu->f[13] = (uint32_t)(int32_t)cpu->f[13];
|
|
/* 02032144 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[11]);
|
|
/* 02032148 */ /* nop */
|
|
/* 0203214C */ _t71 = cpu->r[1] + 0x00000008u;
|
|
/* 0203214C */ cpu->r[8] = rbrew_read32(cpu->mem, _t71);
|
|
/* 02032150 */ _t72 = cpu->r[3] + 0x0000008Cu;
|
|
/* 02032150 */ cpu->r[11] = rbrew_read32(cpu->mem, _t72);
|
|
/* 02032154 */ _t73 = cpu->r[3] + 0x00000088u;
|
|
/* 02032154 */ cpu->r[12] = rbrew_read32(cpu->mem, _t73);
|
|
/* 02032158 */ _t74 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02032158 */ _t75 = _t74 & 0x00000001u;
|
|
/* 02032158 */ if (_t75) goto L_0203215C; else goto L_02032218;
|
|
L_0203215C: ; // 0x203215c
|
|
/* 0203215C */ goto L_020321B8;
|
|
L_02032160: ; // 0x2032160
|
|
/* 02032160 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[12]);
|
|
/* 02032164 */ _t76 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02032164 */ _t77 = _t76 & 0x00000001u;
|
|
/* 02032164 */ if (_t77) goto L_02032168; else goto L_0203216C;
|
|
L_02032168: ; // 0x2032168
|
|
/* 02032168 */ cpu->f[9] = cpu->f[12];
|
|
L_0203216C: ; // 0x203216c
|
|
/* 0203216C */ cpu->r[12] = 0x10000000u;
|
|
/* 02032170 */ _t78 = cpu->r[12] + 0x000042E8u;
|
|
/* 02032170 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t78);
|
|
/* 02032174 */ cpu->r[11] = 0x43300000u;
|
|
/* 02032178 */ _t79 = cpu->r[8] + 0x00006800u;
|
|
/* 02032178 */ cpu->r[12] = rbrew_read32(cpu->mem, _t79);
|
|
/* 0203217C */ _t80 = cpu->r[1] + 0x00000008u;
|
|
/* 0203217C */ rbrew_write32(cpu->mem, _t80, cpu->r[11]);
|
|
/* 02032180 */ cpu->r[12] = cpu->r[12] ^ 0x80000000u;
|
|
/* 02032184 */ _t81 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02032184 */ rbrew_write32(cpu->mem, _t81, cpu->r[12]);
|
|
/* 02032188 */ _t82 = cpu->r[1] + 0x00000008u;
|
|
/* 02032188 */ cpu->f[10] = rbrew_read_f64(cpu->mem, _t82);
|
|
/* 0203218C */ cpu->r[12] = cpu->r[1] + 0x00000008u;
|
|
/* 02032190 */ cpu->f[13] = cpu->f[10] - cpu->f[13];
|
|
/* 02032194 */ cpu->f[10] = (double)(float)cpu->f[13];
|
|
/* 02032198 */ cpu->f[13] = cpu->f[9] * cpu->f[10];
|
|
/* 0203219C */ cpu->f[13] = (uint32_t)(int32_t)cpu->f[13];
|
|
/* 020321A0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[11]);
|
|
/* 020321A4 */ /* nop */
|
|
/* 020321A8 */ _t83 = cpu->r[1] + 0x00000008u;
|
|
/* 020321A8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t83);
|
|
/* 020321AC */ _t84 = cpu->r[3] + 0x0000008Cu;
|
|
/* 020321AC */ cpu->r[11] = rbrew_read32(cpu->mem, _t84);
|
|
/* 020321B0 */ _t85 = cpu->r[3] + 0x00000088u;
|
|
/* 020321B0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t85);
|
|
/* 020321B4 */ _t86 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 020321B4 */ _t87 = _t86 & 0x00000001u;
|
|
/* 020321B4 */ if (_t87) goto L_020321B8; else goto L_02032218;
|
|
L_020321B8: ; // 0x20321b8
|
|
/* 020321B8 */ cpu->f[0] = cpu->f[11] * cpu->f[10];
|
|
/* 020321BC */ cpu->r[11] = rbrew_rlwinm(cpu->r[11], 0x00000004u, 0x00000000u, 0x0000001Bu);
|
|
/* 020321C0 */ _t88 = cpu->r[11] + cpu->r[12];
|
|
/* 020321C0 */ rbrew_write32(cpu->mem, _t88, cpu->r[8]);
|
|
/* 020321C4 */ _t89 = cpu->r[3] + 0x000000C0u;
|
|
/* 020321C4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t89);
|
|
/* 020321C8 */ cpu->f[0] = (uint32_t)(int32_t)cpu->f[0];
|
|
/* 020321CC */ _t90 = cpu->r[3] + 0x00000088u;
|
|
/* 020321CC */ cpu->r[12] = rbrew_read32(cpu->mem, _t90);
|
|
/* 020321D0 */ cpu->r[10] = cpu->r[1] + 0x00000008u;
|
|
/* 020321D4 */ /* nop */
|
|
/* 020321D8 */ _t91 = cpu->r[1] + 0x00000008u;
|
|
/* 020321D8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t91);
|
|
/* 020321DC */ cpu->r[11] = rbrew_rlwinm(cpu->r[11], 0x00000004u, 0x00000000u, 0x0000001Bu);
|
|
/* 020321E0 */ _t92 = cpu->r[11] + cpu->r[12];
|
|
/* 020321E0 */ rbrew_write32(cpu->mem, _t92, cpu->r[10]);
|
|
/* 020321E4 */ _t93 = cpu->r[9] + 0x000067FCu;
|
|
/* 020321E4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t93);
|
|
/* 020321E8 */ cpu->r[11] = cpu->r[8] + cpu->r[12];
|
|
/* 020321EC */ cpu->r[12] = cpu->r[10] + cpu->r[12];
|
|
/* 020321F0 */ /* nop */
|
|
/* 020321F4 */ /* nop */
|
|
/* 020321F8 */ cpu->r[11] = cpu->r[12] + 0x00000001u;
|
|
/* 020321FC */ cpu->r[12] = 0x00000001u;
|
|
/* 02032200 */ cpu->r[11] = cpu->r[11] - cpu->r[10];
|
|
/* 02032204 */ /* nop */
|
|
/* 02032208 */ cpu->r[12] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 0203220C */ /* nop */
|
|
/* 02032210 */ _t94 = cpu->r[3] + 0x00000080u;
|
|
/* 02032210 */ rbrew_write32(cpu->mem, _t94, cpu->r[12]);
|
|
/* 02032214 */ goto L_02032280;
|
|
L_02032218: ; // 0x2032218
|
|
/* 02032218 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[12]);
|
|
/* 0203221C */ _t95 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0203221C */ _t96 = _t95 & 0x00000001u;
|
|
/* 0203221C */ if (_t96) goto L_02032220; else goto L_02032224;
|
|
L_02032220: ; // 0x2032220
|
|
/* 02032220 */ cpu->f[0] = cpu->f[12];
|
|
L_02032224: ; // 0x2032224
|
|
/* 02032224 */ cpu->f[0] = cpu->f[0] * cpu->f[10];
|
|
/* 02032228 */ cpu->r[11] = rbrew_rlwinm(cpu->r[11], 0x00000004u, 0x00000000u, 0x0000001Bu);
|
|
/* 0203222C */ _t97 = cpu->r[11] + cpu->r[12];
|
|
/* 0203222C */ rbrew_write32(cpu->mem, _t97, cpu->r[8]);
|
|
/* 02032230 */ _t98 = cpu->r[3] + 0x000000C0u;
|
|
/* 02032230 */ cpu->r[11] = rbrew_read32(cpu->mem, _t98);
|
|
/* 02032234 */ cpu->f[0] = (uint32_t)(int32_t)cpu->f[0];
|
|
/* 02032238 */ _t99 = cpu->r[3] + 0x00000088u;
|
|
/* 02032238 */ cpu->r[12] = rbrew_read32(cpu->mem, _t99);
|
|
/* 0203223C */ cpu->r[10] = cpu->r[1] + 0x00000008u;
|
|
/* 02032240 */ /* nop */
|
|
/* 02032244 */ _t100 = cpu->r[1] + 0x00000008u;
|
|
/* 02032244 */ cpu->r[10] = rbrew_read32(cpu->mem, _t100);
|
|
/* 02032248 */ cpu->r[11] = rbrew_rlwinm(cpu->r[11], 0x00000004u, 0x00000000u, 0x0000001Bu);
|
|
/* 0203224C */ _t101 = cpu->r[11] + cpu->r[12];
|
|
/* 0203224C */ rbrew_write32(cpu->mem, _t101, cpu->r[10]);
|
|
/* 02032250 */ _t102 = cpu->r[9] + 0x000067FCu;
|
|
/* 02032250 */ cpu->r[12] = rbrew_read32(cpu->mem, _t102);
|
|
/* 02032254 */ cpu->r[11] = cpu->r[8] + cpu->r[12];
|
|
/* 02032258 */ cpu->r[12] = cpu->r[10] + cpu->r[12];
|
|
/* 0203225C */ /* nop */
|
|
/* 02032260 */ /* nop */
|
|
/* 02032264 */ cpu->r[11] = cpu->r[12] + 0x00000001u;
|
|
/* 02032268 */ cpu->r[12] = 0x00000001u;
|
|
/* 0203226C */ cpu->r[11] = cpu->r[11] - cpu->r[10];
|
|
/* 02032270 */ /* nop */
|
|
/* 02032274 */ cpu->r[12] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 02032278 */ /* nop */
|
|
/* 0203227C */ _t103 = cpu->r[3] + 0x00000080u;
|
|
/* 0203227C */ rbrew_write32(cpu->mem, _t103, cpu->r[12]);
|
|
L_02032280: ; // 0x2032280
|
|
/* 02032280 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 02032284 */ _t104 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02032284 */ _t105 = _t104 & 0x00000001u;
|
|
/* 02032284 */ if (_t105) goto L_02032E98; else goto L_02032288;
|
|
L_02032288: ; // 0x2032288
|
|
/* 02032288 */ cpu->r[12] = rbrew_rlwinm(cpu->r[7], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02032288 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0203228C */ _t106 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0203228C */ _t107 = _t106 & 0x00000001u;
|
|
/* 0203228C */ if (_t107) goto L_02032890; else goto L_02032290;
|
|
L_02032290: ; // 0x2032290
|
|
/* 02032290 */ _t108 = cpu->r[3] + 0x00000014u;
|
|
/* 02032290 */ cpu->r[12] = rbrew_read32(cpu->mem, _t108);
|
|
/* 02032294 */ _t109 = cpu->r[3] + 0x00000010u;
|
|
/* 02032294 */ cpu->r[8] = rbrew_read32(cpu->mem, _t109);
|
|
/* 02032298 */ cpu->r[12] = rbrew_rlwinm(cpu->r[12], 0x00000004u, 0x00000000u, 0x0000001Bu);
|
|
/* 0203229C */ _t110 = cpu->r[8] + cpu->r[12];
|
|
/* 0203229C */ cpu->r[10] = rbrew_read32(cpu->mem, _t110);
|
|
/* 020322A0 */ cpu->r[9] = cpu->r[8] + cpu->r[12];
|
|
/* 020322A4 */ _t111 = cpu->r[9] + 0xFFFFFFF0u;
|
|
/* 020322A4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t111);
|
|
/* 020322A8 */ cpu->r[11] = cpu->r[3] + 0x00000014u;
|
|
/* 020322AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], cpu->r[12]);
|
|
/* 020322B0 */ cpu->r[12] = cpu->r[9] + 0xFFFFFFF0u;
|
|
/* 020322B4 */ _t112 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 020322B4 */ _t113 = _t112 & 0x00000001u;
|
|
/* 020322B4 */ if (_t113) goto L_020322B8; else goto L_02032430;
|
|
L_020322B8: ; // 0x20322b8
|
|
/* 020322B8 */ _t114 = cpu->r[9] + 0x00000008u;
|
|
/* 020322B8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t114);
|
|
L_020322BC: ; // 0x20322bc
|
|
/* 020322BC */ _t115 = cpu->r[12] + 0x00000008u;
|
|
/* 020322BC */ cpu->r[9] = rbrew_read32(cpu->mem, _t115);
|
|
/* 020322C0 */ _t116 = cpu->r[11] + 0x00000004u;
|
|
/* 020322C0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t116);
|
|
/* 020322C4 */ _t117 = cpu->r[12] + 0x00000004u;
|
|
/* 020322C4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t117);
|
|
/* 020322C8 */ cpu->r[10] = cpu->r[10] + cpu->r[9];
|
|
/* 020322CC */ _t118 = cpu->r[11] + 0x00000004u;
|
|
/* 020322CC */ rbrew_write32(cpu->mem, _t118, cpu->r[10]);
|
|
/* 020322D0 */ _t119 = cpu->r[5] + 0x0000000Cu;
|
|
/* 020322D0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t119);
|
|
/* 020322D4 */ _t120 = cpu->r[11] + 0x00000010u;
|
|
/* 020322D4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t120);
|
|
/* 020322D8 */ cpu->r[9] = cpu->r[9] & cpu->r[10];
|
|
/* 020322D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 020322DC */ _t121 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020322DC */ _t122 = _t121 & 0x00000001u;
|
|
/* 020322DC */ if (_t122) goto L_02032308; else goto L_020322E0;
|
|
L_020322E0: ; // 0x20322e0
|
|
/* 020322E0 */ _t123 = cpu->r[11] + 0x00000018u;
|
|
/* 020322E0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t123);
|
|
/* 020322E4 */ _t124 = cpu->r[5] + 0x00000024u;
|
|
/* 020322E4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t124);
|
|
/* 020322E8 */ _t125 = cpu->r[8] + 0x00000000u;
|
|
/* 020322E8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t125);
|
|
/* 020322EC */ cpu->r[9] = cpu->r[9] | cpu->r[10];
|
|
/* 020322F0 */ _t126 = cpu->r[8] + 0x00000000u;
|
|
/* 020322F0 */ rbrew_write32(cpu->mem, _t126, cpu->r[9]);
|
|
/* 020322F4 */ _t127 = cpu->r[11] + 0x00000020u;
|
|
/* 020322F4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t127);
|
|
/* 020322F8 */ _t128 = cpu->r[8] + 0x00000000u;
|
|
/* 020322F8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t128);
|
|
/* 020322FC */ _t129 = cpu->r[5] + 0x0000002Cu;
|
|
/* 020322FC */ cpu->r[10] = rbrew_read32(cpu->mem, _t129);
|
|
/* 02032300 */ cpu->r[9] = cpu->r[9] | cpu->r[10];
|
|
/* 02032304 */ _t130 = cpu->r[8] + 0x00000000u;
|
|
/* 02032304 */ rbrew_write32(cpu->mem, _t130, cpu->r[9]);
|
|
L_02032308: ; // 0x2032308
|
|
/* 02032308 */ _t131 = cpu->r[12] + 0x00000004u;
|
|
/* 02032308 */ cpu->r[5] = rbrew_read32(cpu->mem, _t131);
|
|
/* 0203230C */ _t132 = cpu->r[5] + 0x00000004u;
|
|
/* 0203230C */ cpu->r[10] = rbrew_read32(cpu->mem, _t132);
|
|
/* 02032310 */ cpu->r[10] = cpu->r[10] - cpu->r[6];
|
|
/* 02032314 */ _t133 = cpu->r[5] + 0x00000004u;
|
|
/* 02032314 */ rbrew_write32(cpu->mem, _t133, cpu->r[10]);
|
|
/* 02032318 */ _t134 = cpu->r[11] + 0x0000000Cu;
|
|
/* 02032318 */ cpu->r[9] = rbrew_read32(cpu->mem, _t134);
|
|
/* 0203231C */ _t135 = cpu->r[5] + 0x00000010u;
|
|
/* 0203231C */ cpu->r[10] = rbrew_read32(cpu->mem, _t135);
|
|
/* 02032320 */ cpu->r[9] = cpu->r[9] & cpu->r[10];
|
|
/* 02032320 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02032324 */ _t136 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02032324 */ _t137 = _t136 & 0x00000001u;
|
|
/* 02032324 */ if (_t137) goto L_02032350; else goto L_02032328;
|
|
L_02032328: ; // 0x2032328
|
|
/* 02032328 */ _t138 = cpu->r[5] + 0x00000014u;
|
|
/* 02032328 */ cpu->r[8] = rbrew_read32(cpu->mem, _t138);
|
|
/* 0203232C */ _t139 = cpu->r[11] + 0x00000028u;
|
|
/* 0203232C */ cpu->r[10] = rbrew_read32(cpu->mem, _t139);
|
|
/* 02032330 */ _t140 = cpu->r[8] + 0x00000000u;
|
|
/* 02032330 */ cpu->r[9] = rbrew_read32(cpu->mem, _t140);
|
|
/* 02032334 */ cpu->r[9] = cpu->r[9] | cpu->r[10];
|
|
/* 02032338 */ _t141 = cpu->r[8] + 0x00000000u;
|
|
/* 02032338 */ rbrew_write32(cpu->mem, _t141, cpu->r[9]);
|
|
/* 0203233C */ _t142 = cpu->r[5] + 0x0000001Cu;
|
|
/* 0203233C */ cpu->r[8] = rbrew_read32(cpu->mem, _t142);
|
|
/* 02032340 */ _t143 = cpu->r[8] + 0x00000000u;
|
|
/* 02032340 */ cpu->r[9] = rbrew_read32(cpu->mem, _t143);
|
|
/* 02032344 */ _t144 = cpu->r[11] + 0x00000030u;
|
|
/* 02032344 */ cpu->r[10] = rbrew_read32(cpu->mem, _t144);
|
|
/* 02032348 */ cpu->r[9] = cpu->r[9] | cpu->r[10];
|
|
/* 0203234C */ _t145 = cpu->r[8] + 0x00000000u;
|
|
/* 0203234C */ rbrew_write32(cpu->mem, _t145, cpu->r[9]);
|
|
L_02032350: ; // 0x2032350
|
|
/* 02032350 */ _t146 = cpu->r[12] + 0x00000004u;
|
|
/* 02032350 */ cpu->r[9] = rbrew_read32(cpu->mem, _t146);
|
|
/* 02032354 */ _t147 = cpu->r[11] + 0x00000000u;
|
|
/* 02032354 */ cpu->r[5] = rbrew_read32(cpu->mem, _t147);
|
|
/* 02032358 */ _t148 = cpu->r[9] + 0x00000000u;
|
|
/* 02032358 */ cpu->r[10] = rbrew_read32(cpu->mem, _t148);
|
|
/* 0203235C */ _t149 = cpu->r[3] + 0x00000010u;
|
|
/* 0203235C */ cpu->r[8] = rbrew_read32(cpu->mem, _t149);
|
|
/* 02032360 */ cpu->r[5] = rbrew_rlwinm(cpu->r[5], 0x00000004u, 0x00000000u, 0x0000001Bu);
|
|
/* 02032364 */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 02032368 */ cpu->r[5] = cpu->r[8] + cpu->r[5];
|
|
/* 0203236C */ _t150 = cpu->r[9] + 0x00000000u;
|
|
/* 0203236C */ rbrew_write32(cpu->mem, _t150, cpu->r[10]);
|
|
/* 02032370 */ _t151 = cpu->r[5] + 0x00000004u;
|
|
/* 02032370 */ cpu->r[10] = rbrew_read32(cpu->mem, _t151);
|
|
/* 02032374 */ _t152 = cpu->r[10] + 0x00000000u;
|
|
/* 02032374 */ cpu->r[9] = rbrew_read32(cpu->mem, _t152);
|
|
/* 02032378 */ cpu->r[9] = cpu->r[9] + 0xFFFFFFFFu;
|
|
/* 0203237C */ _t153 = cpu->r[10] + 0x00000000u;
|
|
/* 0203237C */ rbrew_write32(cpu->mem, _t153, cpu->r[9]);
|
|
/* 02032380 */ _t154 = cpu->r[12] + 0x00000000u;
|
|
/* 02032380 */ cpu->r[10] = rbrew_read32(cpu->mem, _t154);
|
|
/* 02032384 */ _t155 = cpu->r[1] + 0x00000010u;
|
|
/* 02032384 */ rbrew_write32(cpu->mem, _t155, cpu->r[10]);
|
|
/* 02032388 */ _t156 = cpu->r[12] + 0x00000004u;
|
|
/* 02032388 */ cpu->r[10] = rbrew_read32(cpu->mem, _t156);
|
|
/* 0203238C */ _t157 = cpu->r[1] + 0x00000014u;
|
|
/* 0203238C */ rbrew_write32(cpu->mem, _t157, cpu->r[10]);
|
|
/* 02032390 */ _t158 = cpu->r[12] + 0x00000008u;
|
|
/* 02032390 */ cpu->r[9] = rbrew_read32(cpu->mem, _t158);
|
|
/* 02032394 */ _t159 = cpu->r[1] + 0x00000018u;
|
|
/* 02032394 */ rbrew_write32(cpu->mem, _t159, cpu->r[9]);
|
|
/* 02032398 */ _t160 = cpu->r[12] + 0x0000000Cu;
|
|
/* 02032398 */ cpu->r[10] = rbrew_read32(cpu->mem, _t160);
|
|
/* 0203239C */ _t161 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0203239C */ rbrew_write32(cpu->mem, _t161, cpu->r[10]);
|
|
/* 020323A0 */ _t162 = cpu->r[5] + 0x00000000u;
|
|
/* 020323A0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t162);
|
|
/* 020323A4 */ _t163 = cpu->r[12] + 0x00000000u;
|
|
/* 020323A4 */ rbrew_write32(cpu->mem, _t163, cpu->r[9]);
|
|
/* 020323A8 */ _t164 = cpu->r[5] + 0x00000004u;
|
|
/* 020323A8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t164);
|
|
/* 020323AC */ _t165 = cpu->r[12] + 0x00000004u;
|
|
/* 020323AC */ rbrew_write32(cpu->mem, _t165, cpu->r[10]);
|
|
/* 020323B0 */ _t166 = cpu->r[5] + 0x00000008u;
|
|
/* 020323B0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t166);
|
|
/* 020323B4 */ _t167 = cpu->r[12] + 0x00000008u;
|
|
/* 020323B4 */ rbrew_write32(cpu->mem, _t167, cpu->r[9]);
|
|
/* 020323B8 */ _t168 = cpu->r[5] + 0x0000000Cu;
|
|
/* 020323B8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t168);
|
|
/* 020323BC */ _t169 = cpu->r[12] + 0x0000000Cu;
|
|
/* 020323BC */ rbrew_write32(cpu->mem, _t169, cpu->r[10]);
|
|
/* 020323C0 */ _t170 = cpu->r[1] + 0x00000010u;
|
|
/* 020323C0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t170);
|
|
/* 020323C4 */ _t171 = cpu->r[5] + 0x00000000u;
|
|
/* 020323C4 */ rbrew_write32(cpu->mem, _t171, cpu->r[12]);
|
|
/* 020323C8 */ _t172 = cpu->r[1] + 0x00000014u;
|
|
/* 020323C8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t172);
|
|
/* 020323CC */ _t173 = cpu->r[5] + 0x00000004u;
|
|
/* 020323CC */ rbrew_write32(cpu->mem, _t173, cpu->r[10]);
|
|
/* 020323D0 */ _t174 = cpu->r[1] + 0x00000018u;
|
|
/* 020323D0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t174);
|
|
/* 020323D4 */ _t175 = cpu->r[5] + 0x00000008u;
|
|
/* 020323D4 */ rbrew_write32(cpu->mem, _t175, cpu->r[12]);
|
|
/* 020323D8 */ _t176 = cpu->r[1] + 0x0000001Cu;
|
|
/* 020323D8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t176);
|
|
/* 020323DC */ _t177 = cpu->r[5] + 0x0000000Cu;
|
|
/* 020323DC */ rbrew_write32(cpu->mem, _t177, cpu->r[10]);
|
|
/* 020323E0 */ _t178 = cpu->r[11] + 0x00000000u;
|
|
/* 020323E0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t178);
|
|
/* 020323E4 */ _t179 = cpu->r[3] + 0x00000010u;
|
|
/* 020323E4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t179);
|
|
/* 020323E8 */ cpu->r[12] = rbrew_rlwinm(cpu->r[12], 0x00000004u, 0x00000000u, 0x0000001Bu);
|
|
/* 020323EC */ _t180 = cpu->r[8] + cpu->r[12];
|
|
/* 020323EC */ cpu->r[10] = rbrew_read32(cpu->mem, _t180);
|
|
/* 020323F0 */ cpu->r[9] = cpu->r[8] + cpu->r[12];
|
|
/* 020323F4 */ _t181 = cpu->r[9] + 0xFFFFFFF0u;
|
|
/* 020323F4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t181);
|
|
/* 020323F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], cpu->r[12]);
|
|
/* 020323FC */ cpu->r[12] = cpu->r[9] + 0xFFFFFFF0u;
|
|
/* 02032400 */ _t182 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02032400 */ _t183 = _t182 & 0x00000001u;
|
|
/* 02032400 */ if (_t183) goto L_020322BC; else goto L_02032404;
|
|
L_02032404: ; // 0x2032404
|
|
/* 02032404 */ _t184 = cpu->r[3] + 0x00000048u;
|
|
/* 02032404 */ cpu->r[10] = rbrew_read32(cpu->mem, _t184);
|
|
/* 02032408 */ cpu->r[10] = rbrew_rlwinm(cpu->r[10], 0x00000004u, 0x00000000u, 0x0000001Bu);
|
|
/* 0203240C */ _t185 = cpu->r[8] + cpu->r[10];
|
|
/* 0203240C */ cpu->r[9] = rbrew_read32(cpu->mem, _t185);
|
|
/* 02032410 */ cpu->r[6] = cpu->r[8] + cpu->r[10];
|
|
/* 02032414 */ _t186 = cpu->r[6] + 0xFFFFFFF0u;
|
|
/* 02032414 */ cpu->r[10] = rbrew_read32(cpu->mem, _t186);
|
|
/* 02032418 */ cpu->r[12] = cpu->r[3] + 0x00000048u;
|
|
/* 0203241C */ cpu->r[5] = 0x00000001u;
|
|
/* 02032420 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], cpu->r[10]);
|
|
/* 02032424 */ cpu->r[10] = cpu->r[6] + 0xFFFFFFF0u;
|
|
/* 02032428 */ _t187 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02032428 */ _t188 = _t187 & 0x00000001u;
|
|
/* 02032428 */ if (_t188) goto L_0203242C; else goto L_020325B0;
|
|
L_0203242C: ; // 0x203242c
|
|
/* 0203242C */ goto L_02032458;
|
|
L_02032430: ; // 0x2032430
|
|
/* 02032430 */ _t189 = cpu->r[3] + 0x00000048u;
|
|
/* 02032430 */ cpu->r[10] = rbrew_read32(cpu->mem, _t189);
|
|
/* 02032434 */ cpu->r[10] = rbrew_rlwinm(cpu->r[10], 0x00000004u, 0x00000000u, 0x0000001Bu);
|
|
/* 02032438 */ _t190 = cpu->r[8] + cpu->r[10];
|
|
/* 02032438 */ cpu->r[9] = rbrew_read32(cpu->mem, _t190);
|
|
/* 0203243C */ cpu->r[6] = cpu->r[8] + cpu->r[10];
|
|
/* 02032440 */ _t191 = cpu->r[6] + 0xFFFFFFF0u;
|
|
/* 02032440 */ cpu->r[10] = rbrew_read32(cpu->mem, _t191);
|
|
/* 02032444 */ cpu->r[12] = cpu->r[3] + 0x00000048u;
|
|
/* 02032448 */ cpu->r[5] = 0x00000000u;
|
|
/* 0203244C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], cpu->r[10]);
|
|
/* 02032450 */ cpu->r[10] = cpu->r[6] + 0xFFFFFFF0u;
|
|
/* 02032454 */ _t192 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02032454 */ _t193 = _t192 & 0x00000001u;
|
|
/* 02032454 */ if (_t193) goto L_02032458; else goto L_020325B0;
|
|
L_02032458: ; // 0x2032458
|
|
/* 02032458 */ _t194 = cpu->r[6] + 0x00000008u;
|
|
/* 02032458 */ cpu->r[4] = rbrew_read32(cpu->mem, _t194);
|
|
L_0203245C: ; // 0x203245c
|
|
/* 0203245C */ _t195 = cpu->r[10] + 0x00000008u;
|
|
/* 0203245C */ cpu->r[8] = rbrew_read32(cpu->mem, _t195);
|
|
/* 02032460 */ _t196 = cpu->r[12] + 0x00000004u;
|
|
/* 02032460 */ cpu->r[9] = rbrew_read32(cpu->mem, _t196);
|
|
/* 02032464 */ _t197 = cpu->r[10] + 0x00000004u;
|
|
/* 02032464 */ cpu->r[31] = rbrew_read32(cpu->mem, _t197);
|
|
/* 02032468 */ cpu->r[9] = cpu->r[9] + cpu->r[8];
|
|
/* 0203246C */ _t198 = cpu->r[12] + 0x00000004u;
|
|
/* 0203246C */ rbrew_write32(cpu->mem, _t198, cpu->r[9]);
|
|
/* 02032470 */ _t199 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02032470 */ cpu->r[8] = rbrew_read32(cpu->mem, _t199);
|
|
/* 02032474 */ _t200 = cpu->r[12] + 0x00000010u;
|
|
/* 02032474 */ cpu->r[9] = rbrew_read32(cpu->mem, _t200);
|
|
/* 02032478 */ cpu->r[8] = cpu->r[8] & cpu->r[9];
|
|
/* 02032478 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0203247C */ _t201 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0203247C */ _t202 = _t201 & 0x00000001u;
|
|
/* 0203247C */ if (_t202) goto L_020324A8; else goto L_02032480;
|
|
L_02032480: ; // 0x2032480
|
|
/* 02032480 */ _t203 = cpu->r[12] + 0x00000018u;
|
|
/* 02032480 */ cpu->r[6] = rbrew_read32(cpu->mem, _t203);
|
|
/* 02032484 */ _t204 = cpu->r[31] + 0x00000024u;
|
|
/* 02032484 */ cpu->r[9] = rbrew_read32(cpu->mem, _t204);
|
|
/* 02032488 */ _t205 = cpu->r[6] + 0x00000000u;
|
|
/* 02032488 */ cpu->r[8] = rbrew_read32(cpu->mem, _t205);
|
|
/* 0203248C */ cpu->r[8] = cpu->r[8] | cpu->r[9];
|
|
/* 02032490 */ _t206 = cpu->r[6] + 0x00000000u;
|
|
/* 02032490 */ rbrew_write32(cpu->mem, _t206, cpu->r[8]);
|
|
/* 02032494 */ _t207 = cpu->r[12] + 0x00000020u;
|
|
/* 02032494 */ cpu->r[6] = rbrew_read32(cpu->mem, _t207);
|
|
/* 02032498 */ _t208 = cpu->r[6] + 0x00000000u;
|
|
/* 02032498 */ cpu->r[8] = rbrew_read32(cpu->mem, _t208);
|
|
/* 0203249C */ _t209 = cpu->r[31] + 0x0000002Cu;
|
|
/* 0203249C */ cpu->r[9] = rbrew_read32(cpu->mem, _t209);
|
|
/* 020324A0 */ cpu->r[8] = cpu->r[8] | cpu->r[9];
|
|
/* 020324A4 */ _t210 = cpu->r[6] + 0x00000000u;
|
|
/* 020324A4 */ rbrew_write32(cpu->mem, _t210, cpu->r[8]);
|
|
L_020324A8: ; // 0x20324a8
|
|
/* 020324A8 */ _t211 = cpu->r[10] + 0x00000004u;
|
|
/* 020324A8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t211);
|
|
/* 020324AC */ _t212 = cpu->r[31] + 0x00000004u;
|
|
/* 020324AC */ cpu->r[9] = rbrew_read32(cpu->mem, _t212);
|
|
/* 020324B0 */ cpu->r[9] = cpu->r[9] - cpu->r[4];
|
|
/* 020324B4 */ _t213 = cpu->r[31] + 0x00000004u;
|
|
/* 020324B4 */ rbrew_write32(cpu->mem, _t213, cpu->r[9]);
|
|
/* 020324B8 */ _t214 = cpu->r[12] + 0x0000000Cu;
|
|
/* 020324B8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t214);
|
|
/* 020324BC */ _t215 = cpu->r[31] + 0x00000010u;
|
|
/* 020324BC */ cpu->r[9] = rbrew_read32(cpu->mem, _t215);
|
|
/* 020324C0 */ cpu->r[8] = cpu->r[8] & cpu->r[9];
|
|
/* 020324C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 020324C4 */ _t216 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020324C4 */ _t217 = _t216 & 0x00000001u;
|
|
/* 020324C4 */ if (_t217) goto L_020324F0; else goto L_020324C8;
|
|
L_020324C8: ; // 0x20324c8
|
|
/* 020324C8 */ _t218 = cpu->r[31] + 0x00000014u;
|
|
/* 020324C8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t218);
|
|
/* 020324CC */ _t219 = cpu->r[12] + 0x00000028u;
|
|
/* 020324CC */ cpu->r[9] = rbrew_read32(cpu->mem, _t219);
|
|
/* 020324D0 */ _t220 = cpu->r[6] + 0x00000000u;
|
|
/* 020324D0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t220);
|
|
/* 020324D4 */ cpu->r[8] = cpu->r[8] | cpu->r[9];
|
|
/* 020324D8 */ _t221 = cpu->r[6] + 0x00000000u;
|
|
/* 020324D8 */ rbrew_write32(cpu->mem, _t221, cpu->r[8]);
|
|
/* 020324DC */ _t222 = cpu->r[31] + 0x0000001Cu;
|
|
/* 020324DC */ cpu->r[6] = rbrew_read32(cpu->mem, _t222);
|
|
/* 020324E0 */ _t223 = cpu->r[6] + 0x00000000u;
|
|
/* 020324E0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t223);
|
|
/* 020324E4 */ _t224 = cpu->r[12] + 0x00000030u;
|
|
/* 020324E4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t224);
|
|
/* 020324E8 */ cpu->r[8] = cpu->r[8] | cpu->r[9];
|
|
/* 020324EC */ _t225 = cpu->r[6] + 0x00000000u;
|
|
/* 020324EC */ rbrew_write32(cpu->mem, _t225, cpu->r[8]);
|
|
L_020324F0: ; // 0x20324f0
|
|
/* 020324F0 */ _t226 = cpu->r[10] + 0x00000004u;
|
|
/* 020324F0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t226);
|
|
/* 020324F4 */ _t227 = cpu->r[12] + 0x00000000u;
|
|
/* 020324F4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t227);
|
|
/* 020324F8 */ _t228 = cpu->r[8] + 0x00000000u;
|
|
/* 020324F8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t228);
|
|
/* 020324FC */ _t229 = cpu->r[3] + 0x00000010u;
|
|
/* 020324FC */ cpu->r[6] = rbrew_read32(cpu->mem, _t229);
|
|
/* 02032500 */ cpu->r[31] = rbrew_rlwinm(cpu->r[31], 0x00000004u, 0x00000000u, 0x0000001Bu);
|
|
/* 02032504 */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
/* 02032508 */ cpu->r[31] = cpu->r[6] + cpu->r[31];
|
|
/* 0203250C */ _t230 = cpu->r[8] + 0x00000000u;
|
|
/* 0203250C */ rbrew_write32(cpu->mem, _t230, cpu->r[9]);
|
|
/* 02032510 */ _t231 = cpu->r[31] + 0x00000004u;
|
|
/* 02032510 */ cpu->r[9] = rbrew_read32(cpu->mem, _t231);
|
|
/* 02032514 */ _t232 = cpu->r[9] + 0x00000000u;
|
|
/* 02032514 */ cpu->r[8] = rbrew_read32(cpu->mem, _t232);
|
|
/* 02032518 */ cpu->r[8] = cpu->r[8] + 0xFFFFFFFFu;
|
|
/* 0203251C */ _t233 = cpu->r[9] + 0x00000000u;
|
|
/* 0203251C */ rbrew_write32(cpu->mem, _t233, cpu->r[8]);
|
|
/* 02032520 */ _t234 = cpu->r[10] + 0x00000000u;
|
|
/* 02032520 */ cpu->r[9] = rbrew_read32(cpu->mem, _t234);
|
|
/* 02032524 */ _t235 = cpu->r[1] + 0x00000020u;
|
|
/* 02032524 */ rbrew_write32(cpu->mem, _t235, cpu->r[9]);
|
|
/* 02032528 */ _t236 = cpu->r[10] + 0x00000004u;
|
|
/* 02032528 */ cpu->r[9] = rbrew_read32(cpu->mem, _t236);
|
|
/* 0203252C */ _t237 = cpu->r[1] + 0x00000024u;
|
|
/* 0203252C */ rbrew_write32(cpu->mem, _t237, cpu->r[9]);
|
|
/* 02032530 */ _t238 = cpu->r[10] + 0x00000008u;
|
|
/* 02032530 */ cpu->r[8] = rbrew_read32(cpu->mem, _t238);
|
|
/* 02032534 */ _t239 = cpu->r[1] + 0x00000028u;
|
|
/* 02032534 */ rbrew_write32(cpu->mem, _t239, cpu->r[8]);
|
|
/* 02032538 */ _t240 = cpu->r[10] + 0x0000000Cu;
|
|
/* 02032538 */ cpu->r[9] = rbrew_read32(cpu->mem, _t240);
|
|
/* 0203253C */ _t241 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0203253C */ rbrew_write32(cpu->mem, _t241, cpu->r[9]);
|
|
/* 02032540 */ _t242 = cpu->r[31] + 0x00000000u;
|
|
/* 02032540 */ cpu->r[8] = rbrew_read32(cpu->mem, _t242);
|
|
/* 02032544 */ _t243 = cpu->r[10] + 0x00000000u;
|
|
/* 02032544 */ rbrew_write32(cpu->mem, _t243, cpu->r[8]);
|
|
/* 02032548 */ _t244 = cpu->r[31] + 0x00000004u;
|
|
/* 02032548 */ cpu->r[9] = rbrew_read32(cpu->mem, _t244);
|
|
/* 0203254C */ _t245 = cpu->r[10] + 0x00000004u;
|
|
/* 0203254C */ rbrew_write32(cpu->mem, _t245, cpu->r[9]);
|
|
/* 02032550 */ _t246 = cpu->r[31] + 0x00000008u;
|
|
/* 02032550 */ cpu->r[8] = rbrew_read32(cpu->mem, _t246);
|
|
/* 02032554 */ _t247 = cpu->r[10] + 0x00000008u;
|
|
/* 02032554 */ rbrew_write32(cpu->mem, _t247, cpu->r[8]);
|
|
/* 02032558 */ _t248 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02032558 */ cpu->r[9] = rbrew_read32(cpu->mem, _t248);
|
|
/* 0203255C */ _t249 = cpu->r[10] + 0x0000000Cu;
|
|
/* 0203255C */ rbrew_write32(cpu->mem, _t249, cpu->r[9]);
|
|
/* 02032560 */ _t250 = cpu->r[1] + 0x00000020u;
|
|
/* 02032560 */ cpu->r[10] = rbrew_read32(cpu->mem, _t250);
|
|
/* 02032564 */ _t251 = cpu->r[31] + 0x00000000u;
|
|
/* 02032564 */ rbrew_write32(cpu->mem, _t251, cpu->r[10]);
|
|
/* 02032568 */ _t252 = cpu->r[1] + 0x00000024u;
|
|
/* 02032568 */ cpu->r[9] = rbrew_read32(cpu->mem, _t252);
|
|
/* 0203256C */ _t253 = cpu->r[31] + 0x00000004u;
|
|
/* 0203256C */ rbrew_write32(cpu->mem, _t253, cpu->r[9]);
|
|
/* 02032570 */ _t254 = cpu->r[1] + 0x00000028u;
|
|
/* 02032570 */ cpu->r[10] = rbrew_read32(cpu->mem, _t254);
|
|
/* 02032574 */ _t255 = cpu->r[31] + 0x00000008u;
|
|
/* 02032574 */ rbrew_write32(cpu->mem, _t255, cpu->r[10]);
|
|
/* 02032578 */ _t256 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02032578 */ cpu->r[9] = rbrew_read32(cpu->mem, _t256);
|
|
/* 0203257C */ _t257 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0203257C */ rbrew_write32(cpu->mem, _t257, cpu->r[9]);
|
|
/* 02032580 */ _t258 = cpu->r[12] + 0x00000000u;
|
|
/* 02032580 */ cpu->r[10] = rbrew_read32(cpu->mem, _t258);
|
|
/* 02032584 */ _t259 = cpu->r[3] + 0x00000010u;
|
|
/* 02032584 */ cpu->r[8] = rbrew_read32(cpu->mem, _t259);
|
|
/* 02032588 */ cpu->r[10] = rbrew_rlwinm(cpu->r[10], 0x00000004u, 0x00000000u, 0x0000001Bu);
|
|
/* 0203258C */ _t260 = cpu->r[8] + cpu->r[10];
|
|
/* 0203258C */ cpu->r[9] = rbrew_read32(cpu->mem, _t260);
|
|
/* 02032590 */ cpu->r[6] = cpu->r[8] + cpu->r[10];
|
|
/* 02032594 */ _t261 = cpu->r[6] + 0xFFFFFFF0u;
|
|
/* 02032594 */ cpu->r[10] = rbrew_read32(cpu->mem, _t261);
|
|
/* 02032598 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], cpu->r[10]);
|
|
/* 0203259C */ cpu->r[10] = cpu->r[6] + 0xFFFFFFF0u;
|
|
/* 020325A0 */ _t262 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 020325A0 */ _t263 = _t262 & 0x00000001u;
|
|
/* 020325A0 */ if (_t263) goto L_0203245C; else goto L_020325A4;
|
|
L_020325A4: ; // 0x20325a4
|
|
/* 020325A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 020325A8 */ _t264 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020325A8 */ _t265 = _t264 & 0x00000001u;
|
|
/* 020325A8 */ if (_t265) goto L_020325AC; else goto L_02032890;
|
|
L_020325AC: ; // 0x20325ac
|
|
/* 020325AC */ goto L_02032724;
|
|
L_020325B0: ; // 0x20325b0
|
|
/* 020325B0 */ _t266 = cpu->r[12] + 0x00000000u;
|
|
/* 020325B0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t266);
|
|
/* 020325B4 */ cpu->r[10] = rbrew_rlwinm(cpu->r[10], 0x00000004u, 0x00000000u, 0x0000001Bu);
|
|
/* 020325B8 */ _t267 = cpu->r[8] + cpu->r[10];
|
|
/* 020325B8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t267);
|
|
/* 020325BC */ cpu->r[6] = cpu->r[8] + cpu->r[10];
|
|
/* 020325C0 */ _t268 = cpu->r[6] + 0x00000010u;
|
|
/* 020325C0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t268);
|
|
/* 020325C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], cpu->r[10]);
|
|
/* 020325C8 */ cpu->r[10] = cpu->r[6] + 0x00000010u;
|
|
/* 020325CC */ _t269 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 020325CC */ _t270 = _t269 & 0x00000001u;
|
|
/* 020325CC */ if (_t270) goto L_020325D0; else goto L_0203271C;
|
|
L_020325D0: ; // 0x20325d0
|
|
/* 020325D0 */ _t271 = cpu->r[6] + 0x00000008u;
|
|
/* 020325D0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t271);
|
|
L_020325D4: ; // 0x20325d4
|
|
/* 020325D4 */ _t272 = cpu->r[10] + 0x00000008u;
|
|
/* 020325D4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t272);
|
|
/* 020325D8 */ _t273 = cpu->r[12] + 0x00000004u;
|
|
/* 020325D8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t273);
|
|
/* 020325DC */ _t274 = cpu->r[10] + 0x00000004u;
|
|
/* 020325DC */ cpu->r[31] = rbrew_read32(cpu->mem, _t274);
|
|
/* 020325E0 */ cpu->r[9] = cpu->r[9] - cpu->r[8];
|
|
/* 020325E4 */ _t275 = cpu->r[12] + 0x00000004u;
|
|
/* 020325E4 */ rbrew_write32(cpu->mem, _t275, cpu->r[9]);
|
|
/* 020325E8 */ _t276 = cpu->r[31] + 0x0000000Cu;
|
|
/* 020325E8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t276);
|
|
/* 020325EC */ _t277 = cpu->r[12] + 0x00000010u;
|
|
/* 020325EC */ cpu->r[9] = rbrew_read32(cpu->mem, _t277);
|
|
/* 020325F0 */ cpu->r[8] = cpu->r[8] & cpu->r[9];
|
|
/* 020325F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 020325F4 */ _t278 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020325F4 */ _t279 = _t278 & 0x00000001u;
|
|
/* 020325F4 */ if (_t279) goto L_02032620; else goto L_020325F8;
|
|
L_020325F8: ; // 0x20325f8
|
|
/* 020325F8 */ _t280 = cpu->r[12] + 0x00000014u;
|
|
/* 020325F8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t280);
|
|
/* 020325FC */ _t281 = cpu->r[31] + 0x00000028u;
|
|
/* 020325FC */ cpu->r[9] = rbrew_read32(cpu->mem, _t281);
|
|
/* 02032600 */ _t282 = cpu->r[6] + 0x00000000u;
|
|
/* 02032600 */ cpu->r[8] = rbrew_read32(cpu->mem, _t282);
|
|
/* 02032604 */ cpu->r[8] = cpu->r[8] | cpu->r[9];
|
|
/* 02032608 */ _t283 = cpu->r[6] + 0x00000000u;
|
|
/* 02032608 */ rbrew_write32(cpu->mem, _t283, cpu->r[8]);
|
|
/* 0203260C */ _t284 = cpu->r[12] + 0x0000001Cu;
|
|
/* 0203260C */ cpu->r[6] = rbrew_read32(cpu->mem, _t284);
|
|
/* 02032610 */ _t285 = cpu->r[6] + 0x00000000u;
|
|
/* 02032610 */ cpu->r[8] = rbrew_read32(cpu->mem, _t285);
|
|
/* 02032614 */ _t286 = cpu->r[31] + 0x00000030u;
|
|
/* 02032614 */ cpu->r[9] = rbrew_read32(cpu->mem, _t286);
|
|
/* 02032618 */ cpu->r[8] = cpu->r[8] | cpu->r[9];
|
|
/* 0203261C */ _t287 = cpu->r[6] + 0x00000000u;
|
|
/* 0203261C */ rbrew_write32(cpu->mem, _t287, cpu->r[8]);
|
|
L_02032620: ; // 0x2032620
|
|
/* 02032620 */ _t288 = cpu->r[10] + 0x00000004u;
|
|
/* 02032620 */ cpu->r[31] = rbrew_read32(cpu->mem, _t288);
|
|
/* 02032624 */ _t289 = cpu->r[31] + 0x00000004u;
|
|
/* 02032624 */ cpu->r[9] = rbrew_read32(cpu->mem, _t289);
|
|
/* 02032628 */ cpu->r[9] = cpu->r[9] + cpu->r[4];
|
|
/* 0203262C */ _t290 = cpu->r[31] + 0x00000004u;
|
|
/* 0203262C */ rbrew_write32(cpu->mem, _t290, cpu->r[9]);
|
|
/* 02032630 */ _t291 = cpu->r[12] + 0x0000000Cu;
|
|
/* 02032630 */ cpu->r[8] = rbrew_read32(cpu->mem, _t291);
|
|
/* 02032634 */ _t292 = cpu->r[31] + 0x00000010u;
|
|
/* 02032634 */ cpu->r[9] = rbrew_read32(cpu->mem, _t292);
|
|
/* 02032638 */ cpu->r[8] = cpu->r[8] & cpu->r[9];
|
|
/* 02032638 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0203263C */ _t293 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0203263C */ _t294 = _t293 & 0x00000001u;
|
|
/* 0203263C */ if (_t294) goto L_02032668; else goto L_02032640;
|
|
L_02032640: ; // 0x2032640
|
|
/* 02032640 */ _t295 = cpu->r[31] + 0x00000018u;
|
|
/* 02032640 */ cpu->r[6] = rbrew_read32(cpu->mem, _t295);
|
|
/* 02032644 */ _t296 = cpu->r[12] + 0x00000024u;
|
|
/* 02032644 */ cpu->r[9] = rbrew_read32(cpu->mem, _t296);
|
|
/* 02032648 */ _t297 = cpu->r[6] + 0x00000000u;
|
|
/* 02032648 */ cpu->r[8] = rbrew_read32(cpu->mem, _t297);
|
|
/* 0203264C */ cpu->r[8] = cpu->r[8] | cpu->r[9];
|
|
/* 02032650 */ _t298 = cpu->r[6] + 0x00000000u;
|
|
/* 02032650 */ rbrew_write32(cpu->mem, _t298, cpu->r[8]);
|
|
/* 02032654 */ _t299 = cpu->r[31] + 0x00000020u;
|
|
/* 02032654 */ cpu->r[6] = rbrew_read32(cpu->mem, _t299);
|
|
/* 02032658 */ _t300 = cpu->r[6] + 0x00000000u;
|
|
/* 02032658 */ cpu->r[8] = rbrew_read32(cpu->mem, _t300);
|
|
/* 0203265C */ _t301 = cpu->r[12] + 0x0000002Cu;
|
|
/* 0203265C */ cpu->r[9] = rbrew_read32(cpu->mem, _t301);
|
|
/* 02032660 */ cpu->r[8] = cpu->r[8] | cpu->r[9];
|
|
/* 02032664 */ _t302 = cpu->r[6] + 0x00000000u;
|
|
/* 02032664 */ rbrew_write32(cpu->mem, _t302, cpu->r[8]);
|
|
L_02032668: ; // 0x2032668
|
|
/* 02032668 */ _t303 = cpu->r[12] + 0x00000000u;
|
|
/* 02032668 */ cpu->r[8] = rbrew_read32(cpu->mem, _t303);
|
|
/* 0203266C */ _t304 = cpu->r[3] + 0x00000010u;
|
|
/* 0203266C */ cpu->r[9] = rbrew_read32(cpu->mem, _t304);
|
|
/* 02032670 */ cpu->r[8] = rbrew_rlwinm(cpu->r[8], 0x00000004u, 0x00000000u, 0x0000001Bu);
|
|
/* 02032674 */ cpu->r[31] = cpu->r[9] + cpu->r[8];
|
|
/* 02032678 */ _t305 = cpu->r[31] + 0x00000004u;
|
|
/* 02032678 */ cpu->r[9] = rbrew_read32(cpu->mem, _t305);
|
|
/* 0203267C */ _t306 = cpu->r[9] + 0x00000000u;
|
|
/* 0203267C */ cpu->r[8] = rbrew_read32(cpu->mem, _t306);
|
|
/* 02032680 */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 02032684 */ _t307 = cpu->r[9] + 0x00000000u;
|
|
/* 02032684 */ rbrew_write32(cpu->mem, _t307, cpu->r[8]);
|
|
/* 02032688 */ _t308 = cpu->r[10] + 0x00000004u;
|
|
/* 02032688 */ cpu->r[9] = rbrew_read32(cpu->mem, _t308);
|
|
/* 0203268C */ _t309 = cpu->r[9] + 0x00000000u;
|
|
/* 0203268C */ cpu->r[8] = rbrew_read32(cpu->mem, _t309);
|
|
/* 02032690 */ cpu->r[8] = cpu->r[8] + 0xFFFFFFFFu;
|
|
/* 02032694 */ _t310 = cpu->r[9] + 0x00000000u;
|
|
/* 02032694 */ rbrew_write32(cpu->mem, _t310, cpu->r[8]);
|
|
/* 02032698 */ _t311 = cpu->r[31] + 0x00000000u;
|
|
/* 02032698 */ cpu->r[9] = rbrew_read32(cpu->mem, _t311);
|
|
/* 0203269C */ _t312 = cpu->r[1] + 0x00000030u;
|
|
/* 0203269C */ rbrew_write32(cpu->mem, _t312, cpu->r[9]);
|
|
/* 020326A0 */ _t313 = cpu->r[31] + 0x00000004u;
|
|
/* 020326A0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t313);
|
|
/* 020326A4 */ _t314 = cpu->r[1] + 0x00000034u;
|
|
/* 020326A4 */ rbrew_write32(cpu->mem, _t314, cpu->r[9]);
|
|
/* 020326A8 */ _t315 = cpu->r[31] + 0x00000008u;
|
|
/* 020326A8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t315);
|
|
/* 020326AC */ _t316 = cpu->r[1] + 0x00000038u;
|
|
/* 020326AC */ rbrew_write32(cpu->mem, _t316, cpu->r[8]);
|
|
/* 020326B0 */ _t317 = cpu->r[31] + 0x0000000Cu;
|
|
/* 020326B0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t317);
|
|
/* 020326B4 */ _t318 = cpu->r[1] + 0x0000003Cu;
|
|
/* 020326B4 */ rbrew_write32(cpu->mem, _t318, cpu->r[9]);
|
|
/* 020326B8 */ _t319 = cpu->r[10] + 0x00000000u;
|
|
/* 020326B8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t319);
|
|
/* 020326BC */ _t320 = cpu->r[31] + 0x00000000u;
|
|
/* 020326BC */ rbrew_write32(cpu->mem, _t320, cpu->r[8]);
|
|
/* 020326C0 */ _t321 = cpu->r[10] + 0x00000004u;
|
|
/* 020326C0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t321);
|
|
/* 020326C4 */ _t322 = cpu->r[31] + 0x00000004u;
|
|
/* 020326C4 */ rbrew_write32(cpu->mem, _t322, cpu->r[9]);
|
|
/* 020326C8 */ _t323 = cpu->r[10] + 0x00000008u;
|
|
/* 020326C8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t323);
|
|
/* 020326CC */ _t324 = cpu->r[31] + 0x00000008u;
|
|
/* 020326CC */ rbrew_write32(cpu->mem, _t324, cpu->r[8]);
|
|
/* 020326D0 */ _t325 = cpu->r[10] + 0x0000000Cu;
|
|
/* 020326D0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t325);
|
|
/* 020326D4 */ _t326 = cpu->r[31] + 0x0000000Cu;
|
|
/* 020326D4 */ rbrew_write32(cpu->mem, _t326, cpu->r[9]);
|
|
/* 020326D8 */ _t327 = cpu->r[1] + 0x00000030u;
|
|
/* 020326D8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t327);
|
|
/* 020326DC */ _t328 = cpu->r[10] + 0x00000000u;
|
|
/* 020326DC */ rbrew_write32(cpu->mem, _t328, cpu->r[8]);
|
|
/* 020326E0 */ _t329 = cpu->r[1] + 0x00000034u;
|
|
/* 020326E0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t329);
|
|
/* 020326E4 */ _t330 = cpu->r[10] + 0x00000004u;
|
|
/* 020326E4 */ rbrew_write32(cpu->mem, _t330, cpu->r[9]);
|
|
/* 020326E8 */ _t331 = cpu->r[1] + 0x00000038u;
|
|
/* 020326E8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t331);
|
|
/* 020326EC */ _t332 = cpu->r[10] + 0x00000008u;
|
|
/* 020326EC */ rbrew_write32(cpu->mem, _t332, cpu->r[8]);
|
|
/* 020326F0 */ _t333 = cpu->r[1] + 0x0000003Cu;
|
|
/* 020326F0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t333);
|
|
/* 020326F4 */ _t334 = cpu->r[10] + 0x0000000Cu;
|
|
/* 020326F4 */ rbrew_write32(cpu->mem, _t334, cpu->r[9]);
|
|
/* 020326F8 */ _t335 = cpu->r[12] + 0x00000000u;
|
|
/* 020326F8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t335);
|
|
/* 020326FC */ _t336 = cpu->r[3] + 0x00000010u;
|
|
/* 020326FC */ cpu->r[8] = rbrew_read32(cpu->mem, _t336);
|
|
/* 02032700 */ cpu->r[10] = rbrew_rlwinm(cpu->r[10], 0x00000004u, 0x00000000u, 0x0000001Bu);
|
|
/* 02032704 */ _t337 = cpu->r[8] + cpu->r[10];
|
|
/* 02032704 */ cpu->r[9] = rbrew_read32(cpu->mem, _t337);
|
|
/* 02032708 */ cpu->r[6] = cpu->r[8] + cpu->r[10];
|
|
/* 0203270C */ _t338 = cpu->r[6] + 0x00000010u;
|
|
/* 0203270C */ cpu->r[10] = rbrew_read32(cpu->mem, _t338);
|
|
/* 02032710 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], cpu->r[10]);
|
|
/* 02032714 */ cpu->r[10] = cpu->r[6] + 0x00000010u;
|
|
/* 02032718 */ _t339 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02032718 */ _t340 = _t339 & 0x00000001u;
|
|
/* 02032718 */ if (_t340) goto L_020325D4; else goto L_0203271C;
|
|
L_0203271C: ; // 0x203271c
|
|
/* 0203271C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 02032720 */ _t341 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02032720 */ _t342 = _t341 & 0x00000001u;
|
|
/* 02032720 */ if (_t342) goto L_02032724; else goto L_02032890;
|
|
L_02032724: ; // 0x2032724
|
|
/* 02032724 */ _t343 = cpu->r[11] + 0x00000000u;
|
|
/* 02032724 */ cpu->r[12] = rbrew_read32(cpu->mem, _t343);
|
|
/* 02032728 */ cpu->r[12] = rbrew_rlwinm(cpu->r[12], 0x00000004u, 0x00000000u, 0x0000001Bu);
|
|
/* 0203272C */ _t344 = cpu->r[8] + cpu->r[12];
|
|
/* 0203272C */ cpu->r[10] = rbrew_read32(cpu->mem, _t344);
|
|
/* 02032730 */ cpu->r[9] = cpu->r[8] + cpu->r[12];
|
|
/* 02032734 */ _t345 = cpu->r[9] + 0x00000010u;
|
|
/* 02032734 */ cpu->r[12] = rbrew_read32(cpu->mem, _t345);
|
|
/* 02032738 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], cpu->r[12]);
|
|
/* 0203273C */ cpu->r[12] = cpu->r[9] + 0x00000010u;
|
|
/* 02032740 */ _t346 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02032740 */ _t347 = _t346 & 0x00000001u;
|
|
/* 02032740 */ if (_t347) goto L_02032744; else goto L_02032890;
|
|
L_02032744: ; // 0x2032744
|
|
/* 02032744 */ _t348 = cpu->r[9] + 0x00000008u;
|
|
/* 02032744 */ cpu->r[6] = rbrew_read32(cpu->mem, _t348);
|
|
L_02032748: ; // 0x2032748
|
|
/* 02032748 */ _t349 = cpu->r[12] + 0x00000008u;
|
|
/* 02032748 */ cpu->r[9] = rbrew_read32(cpu->mem, _t349);
|
|
/* 0203274C */ _t350 = cpu->r[11] + 0x00000004u;
|
|
/* 0203274C */ cpu->r[10] = rbrew_read32(cpu->mem, _t350);
|
|
/* 02032750 */ _t351 = cpu->r[12] + 0x00000004u;
|
|
/* 02032750 */ cpu->r[5] = rbrew_read32(cpu->mem, _t351);
|
|
/* 02032754 */ cpu->r[10] = cpu->r[10] - cpu->r[9];
|
|
/* 02032758 */ _t352 = cpu->r[11] + 0x00000004u;
|
|
/* 02032758 */ rbrew_write32(cpu->mem, _t352, cpu->r[10]);
|
|
/* 0203275C */ _t353 = cpu->r[5] + 0x0000000Cu;
|
|
/* 0203275C */ cpu->r[9] = rbrew_read32(cpu->mem, _t353);
|
|
/* 02032760 */ _t354 = cpu->r[11] + 0x00000010u;
|
|
/* 02032760 */ cpu->r[10] = rbrew_read32(cpu->mem, _t354);
|
|
/* 02032764 */ cpu->r[9] = cpu->r[9] & cpu->r[10];
|
|
/* 02032764 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02032768 */ _t355 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02032768 */ _t356 = _t355 & 0x00000001u;
|
|
/* 02032768 */ if (_t356) goto L_02032794; else goto L_0203276C;
|
|
L_0203276C: ; // 0x203276c
|
|
/* 0203276C */ _t357 = cpu->r[11] + 0x00000014u;
|
|
/* 0203276C */ cpu->r[8] = rbrew_read32(cpu->mem, _t357);
|
|
/* 02032770 */ _t358 = cpu->r[5] + 0x00000028u;
|
|
/* 02032770 */ cpu->r[10] = rbrew_read32(cpu->mem, _t358);
|
|
/* 02032774 */ _t359 = cpu->r[8] + 0x00000000u;
|
|
/* 02032774 */ cpu->r[9] = rbrew_read32(cpu->mem, _t359);
|
|
/* 02032778 */ cpu->r[9] = cpu->r[9] | cpu->r[10];
|
|
/* 0203277C */ _t360 = cpu->r[8] + 0x00000000u;
|
|
/* 0203277C */ rbrew_write32(cpu->mem, _t360, cpu->r[9]);
|
|
/* 02032780 */ _t361 = cpu->r[11] + 0x0000001Cu;
|
|
/* 02032780 */ cpu->r[8] = rbrew_read32(cpu->mem, _t361);
|
|
/* 02032784 */ _t362 = cpu->r[8] + 0x00000000u;
|
|
/* 02032784 */ cpu->r[9] = rbrew_read32(cpu->mem, _t362);
|
|
/* 02032788 */ _t363 = cpu->r[5] + 0x00000030u;
|
|
/* 02032788 */ cpu->r[10] = rbrew_read32(cpu->mem, _t363);
|
|
/* 0203278C */ cpu->r[9] = cpu->r[9] | cpu->r[10];
|
|
/* 02032790 */ _t364 = cpu->r[8] + 0x00000000u;
|
|
/* 02032790 */ rbrew_write32(cpu->mem, _t364, cpu->r[9]);
|
|
L_02032794: ; // 0x2032794
|
|
/* 02032794 */ _t365 = cpu->r[12] + 0x00000004u;
|
|
/* 02032794 */ cpu->r[5] = rbrew_read32(cpu->mem, _t365);
|
|
/* 02032798 */ _t366 = cpu->r[5] + 0x00000004u;
|
|
/* 02032798 */ cpu->r[10] = rbrew_read32(cpu->mem, _t366);
|
|
/* 0203279C */ cpu->r[10] = cpu->r[10] + cpu->r[6];
|
|
/* 020327A0 */ _t367 = cpu->r[5] + 0x00000004u;
|
|
/* 020327A0 */ rbrew_write32(cpu->mem, _t367, cpu->r[10]);
|
|
/* 020327A4 */ _t368 = cpu->r[11] + 0x0000000Cu;
|
|
/* 020327A4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t368);
|
|
/* 020327A8 */ _t369 = cpu->r[5] + 0x00000010u;
|
|
/* 020327A8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t369);
|
|
/* 020327AC */ cpu->r[9] = cpu->r[9] & cpu->r[10];
|
|
/* 020327AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 020327B0 */ _t370 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020327B0 */ _t371 = _t370 & 0x00000001u;
|
|
/* 020327B0 */ if (_t371) goto L_020327DC; else goto L_020327B4;
|
|
L_020327B4: ; // 0x20327b4
|
|
/* 020327B4 */ _t372 = cpu->r[5] + 0x00000018u;
|
|
/* 020327B4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t372);
|
|
/* 020327B8 */ _t373 = cpu->r[11] + 0x00000024u;
|
|
/* 020327B8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t373);
|
|
/* 020327BC */ _t374 = cpu->r[8] + 0x00000000u;
|
|
/* 020327BC */ cpu->r[9] = rbrew_read32(cpu->mem, _t374);
|
|
/* 020327C0 */ cpu->r[9] = cpu->r[9] | cpu->r[10];
|
|
/* 020327C4 */ _t375 = cpu->r[8] + 0x00000000u;
|
|
/* 020327C4 */ rbrew_write32(cpu->mem, _t375, cpu->r[9]);
|
|
/* 020327C8 */ _t376 = cpu->r[5] + 0x00000020u;
|
|
/* 020327C8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t376);
|
|
/* 020327CC */ _t377 = cpu->r[8] + 0x00000000u;
|
|
/* 020327CC */ cpu->r[9] = rbrew_read32(cpu->mem, _t377);
|
|
/* 020327D0 */ _t378 = cpu->r[11] + 0x0000002Cu;
|
|
/* 020327D0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t378);
|
|
/* 020327D4 */ cpu->r[9] = cpu->r[9] | cpu->r[10];
|
|
/* 020327D8 */ _t379 = cpu->r[8] + 0x00000000u;
|
|
/* 020327D8 */ rbrew_write32(cpu->mem, _t379, cpu->r[9]);
|
|
L_020327DC: ; // 0x20327dc
|
|
/* 020327DC */ _t380 = cpu->r[11] + 0x00000000u;
|
|
/* 020327DC */ cpu->r[9] = rbrew_read32(cpu->mem, _t380);
|
|
/* 020327E0 */ _t381 = cpu->r[3] + 0x00000010u;
|
|
/* 020327E0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t381);
|
|
/* 020327E4 */ cpu->r[9] = rbrew_rlwinm(cpu->r[9], 0x00000004u, 0x00000000u, 0x0000001Bu);
|
|
/* 020327E8 */ cpu->r[5] = cpu->r[10] + cpu->r[9];
|
|
/* 020327EC */ _t382 = cpu->r[5] + 0x00000004u;
|
|
/* 020327EC */ cpu->r[10] = rbrew_read32(cpu->mem, _t382);
|
|
/* 020327F0 */ _t383 = cpu->r[10] + 0x00000000u;
|
|
/* 020327F0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t383);
|
|
/* 020327F4 */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
/* 020327F8 */ _t384 = cpu->r[10] + 0x00000000u;
|
|
/* 020327F8 */ rbrew_write32(cpu->mem, _t384, cpu->r[9]);
|
|
/* 020327FC */ _t385 = cpu->r[12] + 0x00000004u;
|
|
/* 020327FC */ cpu->r[10] = rbrew_read32(cpu->mem, _t385);
|
|
/* 02032800 */ _t386 = cpu->r[10] + 0x00000000u;
|
|
/* 02032800 */ cpu->r[9] = rbrew_read32(cpu->mem, _t386);
|
|
/* 02032804 */ cpu->r[9] = cpu->r[9] + 0xFFFFFFFFu;
|
|
/* 02032808 */ _t387 = cpu->r[10] + 0x00000000u;
|
|
/* 02032808 */ rbrew_write32(cpu->mem, _t387, cpu->r[9]);
|
|
/* 0203280C */ _t388 = cpu->r[5] + 0x00000000u;
|
|
/* 0203280C */ cpu->r[10] = rbrew_read32(cpu->mem, _t388);
|
|
/* 02032810 */ _t389 = cpu->r[1] + 0x00000040u;
|
|
/* 02032810 */ rbrew_write32(cpu->mem, _t389, cpu->r[10]);
|
|
/* 02032814 */ _t390 = cpu->r[5] + 0x00000004u;
|
|
/* 02032814 */ cpu->r[10] = rbrew_read32(cpu->mem, _t390);
|
|
/* 02032818 */ _t391 = cpu->r[1] + 0x00000044u;
|
|
/* 02032818 */ rbrew_write32(cpu->mem, _t391, cpu->r[10]);
|
|
/* 0203281C */ _t392 = cpu->r[5] + 0x00000008u;
|
|
/* 0203281C */ cpu->r[9] = rbrew_read32(cpu->mem, _t392);
|
|
/* 02032820 */ _t393 = cpu->r[1] + 0x00000048u;
|
|
/* 02032820 */ rbrew_write32(cpu->mem, _t393, cpu->r[9]);
|
|
/* 02032824 */ _t394 = cpu->r[5] + 0x0000000Cu;
|
|
/* 02032824 */ cpu->r[10] = rbrew_read32(cpu->mem, _t394);
|
|
/* 02032828 */ _t395 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02032828 */ rbrew_write32(cpu->mem, _t395, cpu->r[10]);
|
|
/* 0203282C */ _t396 = cpu->r[12] + 0x00000000u;
|
|
/* 0203282C */ cpu->r[9] = rbrew_read32(cpu->mem, _t396);
|
|
/* 02032830 */ _t397 = cpu->r[5] + 0x00000000u;
|
|
/* 02032830 */ rbrew_write32(cpu->mem, _t397, cpu->r[9]);
|
|
/* 02032834 */ _t398 = cpu->r[12] + 0x00000004u;
|
|
/* 02032834 */ cpu->r[10] = rbrew_read32(cpu->mem, _t398);
|
|
/* 02032838 */ _t399 = cpu->r[5] + 0x00000004u;
|
|
/* 02032838 */ rbrew_write32(cpu->mem, _t399, cpu->r[10]);
|
|
/* 0203283C */ _t400 = cpu->r[12] + 0x00000008u;
|
|
/* 0203283C */ cpu->r[9] = rbrew_read32(cpu->mem, _t400);
|
|
/* 02032840 */ _t401 = cpu->r[5] + 0x00000008u;
|
|
/* 02032840 */ rbrew_write32(cpu->mem, _t401, cpu->r[9]);
|
|
/* 02032844 */ _t402 = cpu->r[12] + 0x0000000Cu;
|
|
/* 02032844 */ cpu->r[10] = rbrew_read32(cpu->mem, _t402);
|
|
/* 02032848 */ _t403 = cpu->r[5] + 0x0000000Cu;
|
|
/* 02032848 */ rbrew_write32(cpu->mem, _t403, cpu->r[10]);
|
|
/* 0203284C */ _t404 = cpu->r[1] + 0x00000040u;
|
|
/* 0203284C */ cpu->r[9] = rbrew_read32(cpu->mem, _t404);
|
|
/* 02032850 */ _t405 = cpu->r[12] + 0x00000000u;
|
|
/* 02032850 */ rbrew_write32(cpu->mem, _t405, cpu->r[9]);
|
|
/* 02032854 */ _t406 = cpu->r[1] + 0x00000044u;
|
|
/* 02032854 */ cpu->r[10] = rbrew_read32(cpu->mem, _t406);
|
|
/* 02032858 */ _t407 = cpu->r[12] + 0x00000004u;
|
|
/* 02032858 */ rbrew_write32(cpu->mem, _t407, cpu->r[10]);
|
|
/* 0203285C */ _t408 = cpu->r[1] + 0x00000048u;
|
|
/* 0203285C */ cpu->r[9] = rbrew_read32(cpu->mem, _t408);
|
|
/* 02032860 */ _t409 = cpu->r[12] + 0x00000008u;
|
|
/* 02032860 */ rbrew_write32(cpu->mem, _t409, cpu->r[9]);
|
|
/* 02032864 */ _t410 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02032864 */ cpu->r[10] = rbrew_read32(cpu->mem, _t410);
|
|
/* 02032868 */ _t411 = cpu->r[12] + 0x0000000Cu;
|
|
/* 02032868 */ rbrew_write32(cpu->mem, _t411, cpu->r[10]);
|
|
/* 0203286C */ _t412 = cpu->r[11] + 0x00000000u;
|
|
/* 0203286C */ cpu->r[12] = rbrew_read32(cpu->mem, _t412);
|
|
/* 02032870 */ _t413 = cpu->r[3] + 0x00000010u;
|
|
/* 02032870 */ cpu->r[8] = rbrew_read32(cpu->mem, _t413);
|
|
/* 02032874 */ cpu->r[12] = rbrew_rlwinm(cpu->r[12], 0x00000004u, 0x00000000u, 0x0000001Bu);
|
|
/* 02032878 */ _t414 = cpu->r[8] + cpu->r[12];
|
|
/* 02032878 */ cpu->r[10] = rbrew_read32(cpu->mem, _t414);
|
|
/* 0203287C */ cpu->r[9] = cpu->r[8] + cpu->r[12];
|
|
/* 02032880 */ _t415 = cpu->r[9] + 0x00000010u;
|
|
/* 02032880 */ cpu->r[12] = rbrew_read32(cpu->mem, _t415);
|
|
/* 02032884 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], cpu->r[12]);
|
|
/* 02032888 */ cpu->r[12] = cpu->r[9] + 0x00000010u;
|
|
/* 0203288C */ _t416 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0203288C */ _t417 = _t416 & 0x00000001u;
|
|
/* 0203288C */ if (_t417) goto L_02032748; else goto L_02032890;
|
|
L_02032890: ; // 0x2032890
|
|
/* 02032890 */ cpu->r[12] = rbrew_rlwinm(cpu->r[7], 0x00000000u, 0x0000001Eu, 0x0000001Eu);
|
|
/* 02032890 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02032894 */ _t418 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02032894 */ _t419 = _t418 & 0x00000001u;
|
|
/* 02032894 */ if (_t419) goto L_02032E98; else goto L_02032898;
|
|
L_02032898: ; // 0x2032898
|
|
/* 02032898 */ _t420 = cpu->r[3] + 0x0000008Cu;
|
|
/* 02032898 */ cpu->r[12] = rbrew_read32(cpu->mem, _t420);
|
|
/* 0203289C */ _t421 = cpu->r[3] + 0x00000088u;
|
|
/* 0203289C */ cpu->r[6] = rbrew_read32(cpu->mem, _t421);
|
|
/* 020328A0 */ cpu->r[12] = rbrew_rlwinm(cpu->r[12], 0x00000004u, 0x00000000u, 0x0000001Bu);
|
|
/* 020328A4 */ _t422 = cpu->r[6] + cpu->r[12];
|
|
/* 020328A4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t422);
|
|
/* 020328A8 */ cpu->r[9] = cpu->r[6] + cpu->r[12];
|
|
/* 020328AC */ _t423 = cpu->r[9] + 0xFFFFFFF0u;
|
|
/* 020328AC */ cpu->r[12] = rbrew_read32(cpu->mem, _t423);
|
|
/* 020328B0 */ cpu->r[11] = cpu->r[3] + 0x0000008Cu;
|
|
/* 020328B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], cpu->r[12]);
|
|
/* 020328B8 */ cpu->r[12] = cpu->r[9] + 0xFFFFFFF0u;
|
|
/* 020328BC */ _t424 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 020328BC */ _t425 = _t424 & 0x00000001u;
|
|
/* 020328BC */ if (_t425) goto L_020328C0; else goto L_02032A38;
|
|
L_020328C0: ; // 0x20328c0
|
|
/* 020328C0 */ _t426 = cpu->r[9] + 0x00000008u;
|
|
/* 020328C0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t426);
|
|
L_020328C4: ; // 0x20328c4
|
|
/* 020328C4 */ _t427 = cpu->r[12] + 0x00000008u;
|
|
/* 020328C4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t427);
|
|
/* 020328C8 */ _t428 = cpu->r[11] + 0x00000004u;
|
|
/* 020328C8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t428);
|
|
/* 020328CC */ _t429 = cpu->r[12] + 0x00000004u;
|
|
/* 020328CC */ cpu->r[6] = rbrew_read32(cpu->mem, _t429);
|
|
/* 020328D0 */ cpu->r[10] = cpu->r[10] + cpu->r[9];
|
|
/* 020328D4 */ _t430 = cpu->r[11] + 0x00000004u;
|
|
/* 020328D4 */ rbrew_write32(cpu->mem, _t430, cpu->r[10]);
|
|
/* 020328D8 */ _t431 = cpu->r[6] + 0x0000000Cu;
|
|
/* 020328D8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t431);
|
|
/* 020328DC */ _t432 = cpu->r[11] + 0x00000010u;
|
|
/* 020328DC */ cpu->r[10] = rbrew_read32(cpu->mem, _t432);
|
|
/* 020328E0 */ cpu->r[9] = cpu->r[9] & cpu->r[10];
|
|
/* 020328E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 020328E4 */ _t433 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020328E4 */ _t434 = _t433 & 0x00000001u;
|
|
/* 020328E4 */ if (_t434) goto L_02032910; else goto L_020328E8;
|
|
L_020328E8: ; // 0x20328e8
|
|
/* 020328E8 */ _t435 = cpu->r[11] + 0x00000018u;
|
|
/* 020328E8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t435);
|
|
/* 020328EC */ _t436 = cpu->r[6] + 0x00000024u;
|
|
/* 020328EC */ cpu->r[10] = rbrew_read32(cpu->mem, _t436);
|
|
/* 020328F0 */ _t437 = cpu->r[8] + 0x00000000u;
|
|
/* 020328F0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t437);
|
|
/* 020328F4 */ cpu->r[9] = cpu->r[9] | cpu->r[10];
|
|
/* 020328F8 */ _t438 = cpu->r[8] + 0x00000000u;
|
|
/* 020328F8 */ rbrew_write32(cpu->mem, _t438, cpu->r[9]);
|
|
/* 020328FC */ _t439 = cpu->r[11] + 0x00000020u;
|
|
/* 020328FC */ cpu->r[8] = rbrew_read32(cpu->mem, _t439);
|
|
/* 02032900 */ _t440 = cpu->r[8] + 0x00000000u;
|
|
/* 02032900 */ cpu->r[9] = rbrew_read32(cpu->mem, _t440);
|
|
/* 02032904 */ _t441 = cpu->r[6] + 0x0000002Cu;
|
|
/* 02032904 */ cpu->r[10] = rbrew_read32(cpu->mem, _t441);
|
|
/* 02032908 */ cpu->r[9] = cpu->r[9] | cpu->r[10];
|
|
/* 0203290C */ _t442 = cpu->r[8] + 0x00000000u;
|
|
/* 0203290C */ rbrew_write32(cpu->mem, _t442, cpu->r[9]);
|
|
L_02032910: ; // 0x2032910
|
|
/* 02032910 */ _t443 = cpu->r[12] + 0x00000004u;
|
|
/* 02032910 */ cpu->r[6] = rbrew_read32(cpu->mem, _t443);
|
|
/* 02032914 */ _t444 = cpu->r[6] + 0x00000004u;
|
|
/* 02032914 */ cpu->r[10] = rbrew_read32(cpu->mem, _t444);
|
|
/* 02032918 */ cpu->r[10] = cpu->r[10] - cpu->r[7];
|
|
/* 0203291C */ _t445 = cpu->r[6] + 0x00000004u;
|
|
/* 0203291C */ rbrew_write32(cpu->mem, _t445, cpu->r[10]);
|
|
/* 02032920 */ _t446 = cpu->r[11] + 0x0000000Cu;
|
|
/* 02032920 */ cpu->r[9] = rbrew_read32(cpu->mem, _t446);
|
|
/* 02032924 */ _t447 = cpu->r[6] + 0x00000010u;
|
|
/* 02032924 */ cpu->r[10] = rbrew_read32(cpu->mem, _t447);
|
|
/* 02032928 */ cpu->r[9] = cpu->r[9] & cpu->r[10];
|
|
/* 02032928 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0203292C */ _t448 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0203292C */ _t449 = _t448 & 0x00000001u;
|
|
/* 0203292C */ if (_t449) goto L_02032958; else goto L_02032930;
|
|
L_02032930: ; // 0x2032930
|
|
/* 02032930 */ _t450 = cpu->r[6] + 0x00000014u;
|
|
/* 02032930 */ cpu->r[8] = rbrew_read32(cpu->mem, _t450);
|
|
/* 02032934 */ _t451 = cpu->r[11] + 0x00000028u;
|
|
/* 02032934 */ cpu->r[10] = rbrew_read32(cpu->mem, _t451);
|
|
/* 02032938 */ _t452 = cpu->r[8] + 0x00000000u;
|
|
/* 02032938 */ cpu->r[9] = rbrew_read32(cpu->mem, _t452);
|
|
/* 0203293C */ cpu->r[9] = cpu->r[9] | cpu->r[10];
|
|
/* 02032940 */ _t453 = cpu->r[8] + 0x00000000u;
|
|
/* 02032940 */ rbrew_write32(cpu->mem, _t453, cpu->r[9]);
|
|
/* 02032944 */ _t454 = cpu->r[6] + 0x0000001Cu;
|
|
/* 02032944 */ cpu->r[8] = rbrew_read32(cpu->mem, _t454);
|
|
/* 02032948 */ _t455 = cpu->r[8] + 0x00000000u;
|
|
/* 02032948 */ cpu->r[9] = rbrew_read32(cpu->mem, _t455);
|
|
/* 0203294C */ _t456 = cpu->r[11] + 0x00000030u;
|
|
/* 0203294C */ cpu->r[10] = rbrew_read32(cpu->mem, _t456);
|
|
/* 02032950 */ cpu->r[9] = cpu->r[9] | cpu->r[10];
|
|
/* 02032954 */ _t457 = cpu->r[8] + 0x00000000u;
|
|
/* 02032954 */ rbrew_write32(cpu->mem, _t457, cpu->r[9]);
|
|
L_02032958: ; // 0x2032958
|
|
/* 02032958 */ _t458 = cpu->r[12] + 0x00000004u;
|
|
/* 02032958 */ cpu->r[9] = rbrew_read32(cpu->mem, _t458);
|
|
/* 0203295C */ _t459 = cpu->r[11] + 0x00000000u;
|
|
/* 0203295C */ cpu->r[6] = rbrew_read32(cpu->mem, _t459);
|
|
/* 02032960 */ _t460 = cpu->r[9] + 0x00000000u;
|
|
/* 02032960 */ cpu->r[10] = rbrew_read32(cpu->mem, _t460);
|
|
/* 02032964 */ _t461 = cpu->r[3] + 0x00000088u;
|
|
/* 02032964 */ cpu->r[8] = rbrew_read32(cpu->mem, _t461);
|
|
/* 02032968 */ cpu->r[6] = rbrew_rlwinm(cpu->r[6], 0x00000004u, 0x00000000u, 0x0000001Bu);
|
|
/* 0203296C */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 02032970 */ cpu->r[6] = cpu->r[8] + cpu->r[6];
|
|
/* 02032974 */ _t462 = cpu->r[9] + 0x00000000u;
|
|
/* 02032974 */ rbrew_write32(cpu->mem, _t462, cpu->r[10]);
|
|
/* 02032978 */ _t463 = cpu->r[6] + 0x00000004u;
|
|
/* 02032978 */ cpu->r[10] = rbrew_read32(cpu->mem, _t463);
|
|
/* 0203297C */ _t464 = cpu->r[10] + 0x00000000u;
|
|
/* 0203297C */ cpu->r[9] = rbrew_read32(cpu->mem, _t464);
|
|
/* 02032980 */ cpu->r[9] = cpu->r[9] + 0xFFFFFFFFu;
|
|
/* 02032984 */ _t465 = cpu->r[10] + 0x00000000u;
|
|
/* 02032984 */ rbrew_write32(cpu->mem, _t465, cpu->r[9]);
|
|
/* 02032988 */ _t466 = cpu->r[12] + 0x00000000u;
|
|
/* 02032988 */ cpu->r[10] = rbrew_read32(cpu->mem, _t466);
|
|
/* 0203298C */ _t467 = cpu->r[1] + 0x00000050u;
|
|
/* 0203298C */ rbrew_write32(cpu->mem, _t467, cpu->r[10]);
|
|
/* 02032990 */ _t468 = cpu->r[12] + 0x00000004u;
|
|
/* 02032990 */ cpu->r[10] = rbrew_read32(cpu->mem, _t468);
|
|
/* 02032994 */ _t469 = cpu->r[1] + 0x00000054u;
|
|
/* 02032994 */ rbrew_write32(cpu->mem, _t469, cpu->r[10]);
|
|
/* 02032998 */ _t470 = cpu->r[12] + 0x00000008u;
|
|
/* 02032998 */ cpu->r[9] = rbrew_read32(cpu->mem, _t470);
|
|
/* 0203299C */ _t471 = cpu->r[1] + 0x00000058u;
|
|
/* 0203299C */ rbrew_write32(cpu->mem, _t471, cpu->r[9]);
|
|
/* 020329A0 */ _t472 = cpu->r[12] + 0x0000000Cu;
|
|
/* 020329A0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t472);
|
|
/* 020329A4 */ _t473 = cpu->r[1] + 0x0000005Cu;
|
|
/* 020329A4 */ rbrew_write32(cpu->mem, _t473, cpu->r[10]);
|
|
/* 020329A8 */ _t474 = cpu->r[6] + 0x00000000u;
|
|
/* 020329A8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t474);
|
|
/* 020329AC */ _t475 = cpu->r[12] + 0x00000000u;
|
|
/* 020329AC */ rbrew_write32(cpu->mem, _t475, cpu->r[9]);
|
|
/* 020329B0 */ _t476 = cpu->r[6] + 0x00000004u;
|
|
/* 020329B0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t476);
|
|
/* 020329B4 */ _t477 = cpu->r[12] + 0x00000004u;
|
|
/* 020329B4 */ rbrew_write32(cpu->mem, _t477, cpu->r[10]);
|
|
/* 020329B8 */ _t478 = cpu->r[6] + 0x00000008u;
|
|
/* 020329B8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t478);
|
|
/* 020329BC */ _t479 = cpu->r[12] + 0x00000008u;
|
|
/* 020329BC */ rbrew_write32(cpu->mem, _t479, cpu->r[9]);
|
|
/* 020329C0 */ _t480 = cpu->r[6] + 0x0000000Cu;
|
|
/* 020329C0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t480);
|
|
/* 020329C4 */ _t481 = cpu->r[12] + 0x0000000Cu;
|
|
/* 020329C4 */ rbrew_write32(cpu->mem, _t481, cpu->r[10]);
|
|
/* 020329C8 */ _t482 = cpu->r[1] + 0x00000050u;
|
|
/* 020329C8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t482);
|
|
/* 020329CC */ _t483 = cpu->r[6] + 0x00000000u;
|
|
/* 020329CC */ rbrew_write32(cpu->mem, _t483, cpu->r[12]);
|
|
/* 020329D0 */ _t484 = cpu->r[1] + 0x00000054u;
|
|
/* 020329D0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t484);
|
|
/* 020329D4 */ _t485 = cpu->r[6] + 0x00000004u;
|
|
/* 020329D4 */ rbrew_write32(cpu->mem, _t485, cpu->r[10]);
|
|
/* 020329D8 */ _t486 = cpu->r[1] + 0x00000058u;
|
|
/* 020329D8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t486);
|
|
/* 020329DC */ _t487 = cpu->r[6] + 0x00000008u;
|
|
/* 020329DC */ rbrew_write32(cpu->mem, _t487, cpu->r[12]);
|
|
/* 020329E0 */ _t488 = cpu->r[1] + 0x0000005Cu;
|
|
/* 020329E0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t488);
|
|
/* 020329E4 */ _t489 = cpu->r[6] + 0x0000000Cu;
|
|
/* 020329E4 */ rbrew_write32(cpu->mem, _t489, cpu->r[10]);
|
|
/* 020329E8 */ _t490 = cpu->r[11] + 0x00000000u;
|
|
/* 020329E8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t490);
|
|
/* 020329EC */ _t491 = cpu->r[3] + 0x00000088u;
|
|
/* 020329EC */ cpu->r[6] = rbrew_read32(cpu->mem, _t491);
|
|
/* 020329F0 */ cpu->r[12] = rbrew_rlwinm(cpu->r[12], 0x00000004u, 0x00000000u, 0x0000001Bu);
|
|
/* 020329F4 */ _t492 = cpu->r[6] + cpu->r[12];
|
|
/* 020329F4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t492);
|
|
/* 020329F8 */ cpu->r[9] = cpu->r[6] + cpu->r[12];
|
|
/* 020329FC */ _t493 = cpu->r[9] + 0xFFFFFFF0u;
|
|
/* 020329FC */ cpu->r[12] = rbrew_read32(cpu->mem, _t493);
|
|
/* 02032A00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], cpu->r[12]);
|
|
/* 02032A04 */ cpu->r[12] = cpu->r[9] + 0xFFFFFFF0u;
|
|
/* 02032A08 */ _t494 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02032A08 */ _t495 = _t494 & 0x00000001u;
|
|
/* 02032A08 */ if (_t495) goto L_020328C4; else goto L_02032A0C;
|
|
L_02032A0C: ; // 0x2032a0c
|
|
/* 02032A0C */ _t496 = cpu->r[3] + 0x000000C0u;
|
|
/* 02032A0C */ cpu->r[10] = rbrew_read32(cpu->mem, _t496);
|
|
/* 02032A10 */ cpu->r[10] = rbrew_rlwinm(cpu->r[10], 0x00000004u, 0x00000000u, 0x0000001Bu);
|
|
/* 02032A14 */ _t497 = cpu->r[6] + cpu->r[10];
|
|
/* 02032A14 */ cpu->r[9] = rbrew_read32(cpu->mem, _t497);
|
|
/* 02032A18 */ cpu->r[8] = cpu->r[6] + cpu->r[10];
|
|
/* 02032A1C */ _t498 = cpu->r[8] + 0xFFFFFFF0u;
|
|
/* 02032A1C */ cpu->r[10] = rbrew_read32(cpu->mem, _t498);
|
|
/* 02032A20 */ cpu->r[12] = cpu->r[3] + 0x000000C0u;
|
|
/* 02032A24 */ cpu->r[5] = 0x00000001u;
|
|
/* 02032A28 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], cpu->r[10]);
|
|
/* 02032A2C */ cpu->r[10] = cpu->r[8] + 0xFFFFFFF0u;
|
|
/* 02032A30 */ _t499 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02032A30 */ _t500 = _t499 & 0x00000001u;
|
|
/* 02032A30 */ if (_t500) goto L_02032A34; else goto L_02032BB8;
|
|
L_02032A34: ; // 0x2032a34
|
|
/* 02032A34 */ goto L_02032A60;
|
|
L_02032A38: ; // 0x2032a38
|
|
/* 02032A38 */ _t501 = cpu->r[3] + 0x000000C0u;
|
|
/* 02032A38 */ cpu->r[10] = rbrew_read32(cpu->mem, _t501);
|
|
/* 02032A3C */ cpu->r[10] = rbrew_rlwinm(cpu->r[10], 0x00000004u, 0x00000000u, 0x0000001Bu);
|
|
/* 02032A40 */ _t502 = cpu->r[6] + cpu->r[10];
|
|
/* 02032A40 */ cpu->r[9] = rbrew_read32(cpu->mem, _t502);
|
|
/* 02032A44 */ cpu->r[8] = cpu->r[6] + cpu->r[10];
|
|
/* 02032A48 */ _t503 = cpu->r[8] + 0xFFFFFFF0u;
|
|
/* 02032A48 */ cpu->r[10] = rbrew_read32(cpu->mem, _t503);
|
|
/* 02032A4C */ cpu->r[12] = cpu->r[3] + 0x000000C0u;
|
|
/* 02032A50 */ cpu->r[5] = 0x00000000u;
|
|
/* 02032A54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], cpu->r[10]);
|
|
/* 02032A58 */ cpu->r[10] = cpu->r[8] + 0xFFFFFFF0u;
|
|
/* 02032A5C */ _t504 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02032A5C */ _t505 = _t504 & 0x00000001u;
|
|
/* 02032A5C */ if (_t505) goto L_02032A60; else goto L_02032BB8;
|
|
L_02032A60: ; // 0x2032a60
|
|
/* 02032A60 */ _t506 = cpu->r[8] + 0x00000008u;
|
|
/* 02032A60 */ cpu->r[4] = rbrew_read32(cpu->mem, _t506);
|
|
L_02032A64: ; // 0x2032a64
|
|
/* 02032A64 */ _t507 = cpu->r[10] + 0x00000008u;
|
|
/* 02032A64 */ cpu->r[8] = rbrew_read32(cpu->mem, _t507);
|
|
/* 02032A68 */ _t508 = cpu->r[12] + 0x00000004u;
|
|
/* 02032A68 */ cpu->r[9] = rbrew_read32(cpu->mem, _t508);
|
|
/* 02032A6C */ _t509 = cpu->r[10] + 0x00000004u;
|
|
/* 02032A6C */ cpu->r[6] = rbrew_read32(cpu->mem, _t509);
|
|
/* 02032A70 */ cpu->r[9] = cpu->r[9] + cpu->r[8];
|
|
/* 02032A74 */ _t510 = cpu->r[12] + 0x00000004u;
|
|
/* 02032A74 */ rbrew_write32(cpu->mem, _t510, cpu->r[9]);
|
|
/* 02032A78 */ _t511 = cpu->r[6] + 0x0000000Cu;
|
|
/* 02032A78 */ cpu->r[8] = rbrew_read32(cpu->mem, _t511);
|
|
/* 02032A7C */ _t512 = cpu->r[12] + 0x00000010u;
|
|
/* 02032A7C */ cpu->r[9] = rbrew_read32(cpu->mem, _t512);
|
|
/* 02032A80 */ cpu->r[8] = cpu->r[8] & cpu->r[9];
|
|
/* 02032A80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02032A84 */ _t513 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02032A84 */ _t514 = _t513 & 0x00000001u;
|
|
/* 02032A84 */ if (_t514) goto L_02032AB0; else goto L_02032A88;
|
|
L_02032A88: ; // 0x2032a88
|
|
/* 02032A88 */ _t515 = cpu->r[12] + 0x00000018u;
|
|
/* 02032A88 */ cpu->r[7] = rbrew_read32(cpu->mem, _t515);
|
|
/* 02032A8C */ _t516 = cpu->r[6] + 0x00000024u;
|
|
/* 02032A8C */ cpu->r[9] = rbrew_read32(cpu->mem, _t516);
|
|
/* 02032A90 */ _t517 = cpu->r[7] + 0x00000000u;
|
|
/* 02032A90 */ cpu->r[8] = rbrew_read32(cpu->mem, _t517);
|
|
/* 02032A94 */ cpu->r[8] = cpu->r[8] | cpu->r[9];
|
|
/* 02032A98 */ _t518 = cpu->r[7] + 0x00000000u;
|
|
/* 02032A98 */ rbrew_write32(cpu->mem, _t518, cpu->r[8]);
|
|
/* 02032A9C */ _t519 = cpu->r[12] + 0x00000020u;
|
|
/* 02032A9C */ cpu->r[7] = rbrew_read32(cpu->mem, _t519);
|
|
/* 02032AA0 */ _t520 = cpu->r[7] + 0x00000000u;
|
|
/* 02032AA0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t520);
|
|
/* 02032AA4 */ _t521 = cpu->r[6] + 0x0000002Cu;
|
|
/* 02032AA4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t521);
|
|
/* 02032AA8 */ cpu->r[8] = cpu->r[8] | cpu->r[9];
|
|
/* 02032AAC */ _t522 = cpu->r[7] + 0x00000000u;
|
|
/* 02032AAC */ rbrew_write32(cpu->mem, _t522, cpu->r[8]);
|
|
L_02032AB0: ; // 0x2032ab0
|
|
/* 02032AB0 */ _t523 = cpu->r[10] + 0x00000004u;
|
|
/* 02032AB0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t523);
|
|
/* 02032AB4 */ _t524 = cpu->r[8] + 0x00000004u;
|
|
/* 02032AB4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t524);
|
|
/* 02032AB8 */ cpu->r[9] = cpu->r[9] - cpu->r[4];
|
|
/* 02032ABC */ _t525 = cpu->r[8] + 0x00000004u;
|
|
/* 02032ABC */ rbrew_write32(cpu->mem, _t525, cpu->r[9]);
|
|
/* 02032AC0 */ _t526 = cpu->r[12] + 0x0000000Cu;
|
|
/* 02032AC0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t526);
|
|
/* 02032AC4 */ _t527 = cpu->r[8] + 0x00000010u;
|
|
/* 02032AC4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t527);
|
|
/* 02032AC8 */ cpu->r[9] = cpu->r[6] & cpu->r[7];
|
|
/* 02032AC8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02032ACC */ _t528 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02032ACC */ _t529 = _t528 & 0x00000001u;
|
|
/* 02032ACC */ if (_t529) goto L_02032AF8; else goto L_02032AD0;
|
|
L_02032AD0: ; // 0x2032ad0
|
|
/* 02032AD0 */ _t530 = cpu->r[8] + 0x00000014u;
|
|
/* 02032AD0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t530);
|
|
/* 02032AD4 */ _t531 = cpu->r[12] + 0x00000028u;
|
|
/* 02032AD4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t531);
|
|
/* 02032AD8 */ _t532 = cpu->r[7] + 0x00000000u;
|
|
/* 02032AD8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t532);
|
|
/* 02032ADC */ cpu->r[6] = cpu->r[6] | cpu->r[9];
|
|
/* 02032AE0 */ _t533 = cpu->r[7] + 0x00000000u;
|
|
/* 02032AE0 */ rbrew_write32(cpu->mem, _t533, cpu->r[6]);
|
|
/* 02032AE4 */ _t534 = cpu->r[8] + 0x0000001Cu;
|
|
/* 02032AE4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t534);
|
|
/* 02032AE8 */ _t535 = cpu->r[7] + 0x00000000u;
|
|
/* 02032AE8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t535);
|
|
/* 02032AEC */ _t536 = cpu->r[12] + 0x00000030u;
|
|
/* 02032AEC */ cpu->r[9] = rbrew_read32(cpu->mem, _t536);
|
|
/* 02032AF0 */ cpu->r[8] = cpu->r[8] | cpu->r[9];
|
|
/* 02032AF4 */ _t537 = cpu->r[7] + 0x00000000u;
|
|
/* 02032AF4 */ rbrew_write32(cpu->mem, _t537, cpu->r[8]);
|
|
L_02032AF8: ; // 0x2032af8
|
|
/* 02032AF8 */ _t538 = cpu->r[10] + 0x00000004u;
|
|
/* 02032AF8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t538);
|
|
/* 02032AFC */ _t539 = cpu->r[12] + 0x00000000u;
|
|
/* 02032AFC */ cpu->r[6] = rbrew_read32(cpu->mem, _t539);
|
|
/* 02032B00 */ _t540 = cpu->r[7] + 0x00000000u;
|
|
/* 02032B00 */ cpu->r[8] = rbrew_read32(cpu->mem, _t540);
|
|
/* 02032B04 */ _t541 = cpu->r[3] + 0x00000088u;
|
|
/* 02032B04 */ cpu->r[9] = rbrew_read32(cpu->mem, _t541);
|
|
/* 02032B08 */ cpu->r[6] = rbrew_rlwinm(cpu->r[6], 0x00000004u, 0x00000000u, 0x0000001Bu);
|
|
/* 02032B0C */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 02032B10 */ cpu->r[9] = cpu->r[9] + cpu->r[6];
|
|
/* 02032B14 */ _t542 = cpu->r[7] + 0x00000000u;
|
|
/* 02032B14 */ rbrew_write32(cpu->mem, _t542, cpu->r[8]);
|
|
/* 02032B18 */ _t543 = cpu->r[9] + 0x00000004u;
|
|
/* 02032B18 */ cpu->r[8] = rbrew_read32(cpu->mem, _t543);
|
|
/* 02032B1C */ _t544 = cpu->r[8] + 0x00000000u;
|
|
/* 02032B1C */ cpu->r[7] = rbrew_read32(cpu->mem, _t544);
|
|
/* 02032B20 */ cpu->r[7] = cpu->r[7] + 0xFFFFFFFFu;
|
|
/* 02032B24 */ _t545 = cpu->r[8] + 0x00000000u;
|
|
/* 02032B24 */ rbrew_write32(cpu->mem, _t545, cpu->r[7]);
|
|
/* 02032B28 */ _t546 = cpu->r[10] + 0x00000000u;
|
|
/* 02032B28 */ cpu->r[8] = rbrew_read32(cpu->mem, _t546);
|
|
/* 02032B2C */ _t547 = cpu->r[1] + 0x00000060u;
|
|
/* 02032B2C */ rbrew_write32(cpu->mem, _t547, cpu->r[8]);
|
|
/* 02032B30 */ _t548 = cpu->r[10] + 0x00000004u;
|
|
/* 02032B30 */ cpu->r[8] = rbrew_read32(cpu->mem, _t548);
|
|
/* 02032B34 */ _t549 = cpu->r[1] + 0x00000064u;
|
|
/* 02032B34 */ rbrew_write32(cpu->mem, _t549, cpu->r[8]);
|
|
/* 02032B38 */ _t550 = cpu->r[10] + 0x00000008u;
|
|
/* 02032B38 */ cpu->r[7] = rbrew_read32(cpu->mem, _t550);
|
|
/* 02032B3C */ _t551 = cpu->r[1] + 0x00000068u;
|
|
/* 02032B3C */ rbrew_write32(cpu->mem, _t551, cpu->r[7]);
|
|
/* 02032B40 */ _t552 = cpu->r[10] + 0x0000000Cu;
|
|
/* 02032B40 */ cpu->r[8] = rbrew_read32(cpu->mem, _t552);
|
|
/* 02032B44 */ _t553 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02032B44 */ rbrew_write32(cpu->mem, _t553, cpu->r[8]);
|
|
/* 02032B48 */ _t554 = cpu->r[9] + 0x00000000u;
|
|
/* 02032B48 */ cpu->r[7] = rbrew_read32(cpu->mem, _t554);
|
|
/* 02032B4C */ _t555 = cpu->r[10] + 0x00000000u;
|
|
/* 02032B4C */ rbrew_write32(cpu->mem, _t555, cpu->r[7]);
|
|
/* 02032B50 */ _t556 = cpu->r[9] + 0x00000004u;
|
|
/* 02032B50 */ cpu->r[8] = rbrew_read32(cpu->mem, _t556);
|
|
/* 02032B54 */ _t557 = cpu->r[10] + 0x00000004u;
|
|
/* 02032B54 */ rbrew_write32(cpu->mem, _t557, cpu->r[8]);
|
|
/* 02032B58 */ _t558 = cpu->r[9] + 0x00000008u;
|
|
/* 02032B58 */ cpu->r[7] = rbrew_read32(cpu->mem, _t558);
|
|
/* 02032B5C */ _t559 = cpu->r[10] + 0x00000008u;
|
|
/* 02032B5C */ rbrew_write32(cpu->mem, _t559, cpu->r[7]);
|
|
/* 02032B60 */ _t560 = cpu->r[9] + 0x0000000Cu;
|
|
/* 02032B60 */ cpu->r[8] = rbrew_read32(cpu->mem, _t560);
|
|
/* 02032B64 */ _t561 = cpu->r[10] + 0x0000000Cu;
|
|
/* 02032B64 */ rbrew_write32(cpu->mem, _t561, cpu->r[8]);
|
|
/* 02032B68 */ _t562 = cpu->r[1] + 0x00000060u;
|
|
/* 02032B68 */ cpu->r[10] = rbrew_read32(cpu->mem, _t562);
|
|
/* 02032B6C */ _t563 = cpu->r[9] + 0x00000000u;
|
|
/* 02032B6C */ rbrew_write32(cpu->mem, _t563, cpu->r[10]);
|
|
/* 02032B70 */ _t564 = cpu->r[1] + 0x00000064u;
|
|
/* 02032B70 */ cpu->r[8] = rbrew_read32(cpu->mem, _t564);
|
|
/* 02032B74 */ _t565 = cpu->r[9] + 0x00000004u;
|
|
/* 02032B74 */ rbrew_write32(cpu->mem, _t565, cpu->r[8]);
|
|
/* 02032B78 */ _t566 = cpu->r[1] + 0x00000068u;
|
|
/* 02032B78 */ cpu->r[10] = rbrew_read32(cpu->mem, _t566);
|
|
/* 02032B7C */ _t567 = cpu->r[9] + 0x00000008u;
|
|
/* 02032B7C */ rbrew_write32(cpu->mem, _t567, cpu->r[10]);
|
|
/* 02032B80 */ _t568 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02032B80 */ cpu->r[8] = rbrew_read32(cpu->mem, _t568);
|
|
/* 02032B84 */ _t569 = cpu->r[9] + 0x0000000Cu;
|
|
/* 02032B84 */ rbrew_write32(cpu->mem, _t569, cpu->r[8]);
|
|
/* 02032B88 */ _t570 = cpu->r[12] + 0x00000000u;
|
|
/* 02032B88 */ cpu->r[10] = rbrew_read32(cpu->mem, _t570);
|
|
/* 02032B8C */ _t571 = cpu->r[3] + 0x00000088u;
|
|
/* 02032B8C */ cpu->r[6] = rbrew_read32(cpu->mem, _t571);
|
|
/* 02032B90 */ cpu->r[10] = rbrew_rlwinm(cpu->r[10], 0x00000004u, 0x00000000u, 0x0000001Bu);
|
|
/* 02032B94 */ _t572 = cpu->r[6] + cpu->r[10];
|
|
/* 02032B94 */ cpu->r[9] = rbrew_read32(cpu->mem, _t572);
|
|
/* 02032B98 */ cpu->r[8] = cpu->r[6] + cpu->r[10];
|
|
/* 02032B9C */ _t573 = cpu->r[8] + 0xFFFFFFF0u;
|
|
/* 02032B9C */ cpu->r[10] = rbrew_read32(cpu->mem, _t573);
|
|
/* 02032BA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], cpu->r[10]);
|
|
/* 02032BA4 */ cpu->r[10] = cpu->r[8] + 0xFFFFFFF0u;
|
|
/* 02032BA8 */ _t574 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02032BA8 */ _t575 = _t574 & 0x00000001u;
|
|
/* 02032BA8 */ if (_t575) goto L_02032A64; else goto L_02032BAC;
|
|
L_02032BAC: ; // 0x2032bac
|
|
/* 02032BAC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 02032BB0 */ _t576 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02032BB0 */ _t577 = _t576 & 0x00000001u;
|
|
/* 02032BB0 */ if (_t577) goto L_02032BB4; else goto L_02032E98;
|
|
L_02032BB4: ; // 0x2032bb4
|
|
/* 02032BB4 */ goto L_02032D2C;
|
|
L_02032BB8: ; // 0x2032bb8
|
|
/* 02032BB8 */ _t578 = cpu->r[12] + 0x00000000u;
|
|
/* 02032BB8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t578);
|
|
/* 02032BBC */ cpu->r[10] = rbrew_rlwinm(cpu->r[10], 0x00000004u, 0x00000000u, 0x0000001Bu);
|
|
/* 02032BC0 */ _t579 = cpu->r[6] + cpu->r[10];
|
|
/* 02032BC0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t579);
|
|
/* 02032BC4 */ cpu->r[9] = cpu->r[6] + cpu->r[10];
|
|
/* 02032BC8 */ _t580 = cpu->r[9] + 0x00000010u;
|
|
/* 02032BC8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t580);
|
|
/* 02032BCC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], cpu->r[10]);
|
|
/* 02032BD0 */ cpu->r[10] = cpu->r[9] + 0x00000010u;
|
|
/* 02032BD4 */ _t581 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02032BD4 */ _t582 = _t581 & 0x00000001u;
|
|
/* 02032BD4 */ if (_t582) goto L_02032BD8; else goto L_02032D24;
|
|
L_02032BD8: ; // 0x2032bd8
|
|
/* 02032BD8 */ _t583 = cpu->r[9] + 0x00000008u;
|
|
/* 02032BD8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t583);
|
|
L_02032BDC: ; // 0x2032bdc
|
|
/* 02032BDC */ _t584 = cpu->r[12] + 0x00000004u;
|
|
/* 02032BDC */ cpu->r[6] = rbrew_read32(cpu->mem, _t584);
|
|
/* 02032BE0 */ _t585 = cpu->r[10] + 0x00000008u;
|
|
/* 02032BE0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t585);
|
|
/* 02032BE4 */ _t586 = cpu->r[10] + 0x00000004u;
|
|
/* 02032BE4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t586);
|
|
/* 02032BE8 */ cpu->r[6] = cpu->r[6] - cpu->r[9];
|
|
/* 02032BEC */ _t587 = cpu->r[12] + 0x00000010u;
|
|
/* 02032BEC */ cpu->r[9] = rbrew_read32(cpu->mem, _t587);
|
|
/* 02032BF0 */ _t588 = cpu->r[12] + 0x00000004u;
|
|
/* 02032BF0 */ rbrew_write32(cpu->mem, _t588, cpu->r[6]);
|
|
/* 02032BF4 */ _t589 = cpu->r[8] + 0x0000000Cu;
|
|
/* 02032BF4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t589);
|
|
/* 02032BF8 */ cpu->r[7] = cpu->r[7] & cpu->r[9];
|
|
/* 02032BF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 02032BFC */ _t590 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02032BFC */ _t591 = _t590 & 0x00000001u;
|
|
/* 02032BFC */ if (_t591) goto L_02032C28; else goto L_02032C00;
|
|
L_02032C00: ; // 0x2032c00
|
|
/* 02032C00 */ _t592 = cpu->r[12] + 0x00000014u;
|
|
/* 02032C00 */ cpu->r[6] = rbrew_read32(cpu->mem, _t592);
|
|
/* 02032C04 */ _t593 = cpu->r[8] + 0x00000028u;
|
|
/* 02032C04 */ cpu->r[9] = rbrew_read32(cpu->mem, _t593);
|
|
/* 02032C08 */ _t594 = cpu->r[6] + 0x00000000u;
|
|
/* 02032C08 */ cpu->r[7] = rbrew_read32(cpu->mem, _t594);
|
|
/* 02032C0C */ cpu->r[7] = cpu->r[7] | cpu->r[9];
|
|
/* 02032C10 */ _t595 = cpu->r[6] + 0x00000000u;
|
|
/* 02032C10 */ rbrew_write32(cpu->mem, _t595, cpu->r[7]);
|
|
/* 02032C14 */ _t596 = cpu->r[12] + 0x0000001Cu;
|
|
/* 02032C14 */ cpu->r[6] = rbrew_read32(cpu->mem, _t596);
|
|
/* 02032C18 */ _t597 = cpu->r[6] + 0x00000000u;
|
|
/* 02032C18 */ cpu->r[7] = rbrew_read32(cpu->mem, _t597);
|
|
/* 02032C1C */ _t598 = cpu->r[8] + 0x00000030u;
|
|
/* 02032C1C */ cpu->r[9] = rbrew_read32(cpu->mem, _t598);
|
|
/* 02032C20 */ cpu->r[7] = cpu->r[7] | cpu->r[9];
|
|
/* 02032C24 */ _t599 = cpu->r[6] + 0x00000000u;
|
|
/* 02032C24 */ rbrew_write32(cpu->mem, _t599, cpu->r[7]);
|
|
L_02032C28: ; // 0x2032c28
|
|
/* 02032C28 */ _t600 = cpu->r[10] + 0x00000004u;
|
|
/* 02032C28 */ cpu->r[9] = rbrew_read32(cpu->mem, _t600);
|
|
/* 02032C2C */ _t601 = cpu->r[9] + 0x00000004u;
|
|
/* 02032C2C */ cpu->r[8] = rbrew_read32(cpu->mem, _t601);
|
|
/* 02032C30 */ cpu->r[8] = cpu->r[8] + cpu->r[4];
|
|
/* 02032C34 */ _t602 = cpu->r[9] + 0x00000004u;
|
|
/* 02032C34 */ rbrew_write32(cpu->mem, _t602, cpu->r[8]);
|
|
/* 02032C38 */ _t603 = cpu->r[12] + 0x0000000Cu;
|
|
/* 02032C38 */ cpu->r[7] = rbrew_read32(cpu->mem, _t603);
|
|
/* 02032C3C */ _t604 = cpu->r[9] + 0x00000010u;
|
|
/* 02032C3C */ cpu->r[8] = rbrew_read32(cpu->mem, _t604);
|
|
/* 02032C40 */ cpu->r[7] = cpu->r[7] & cpu->r[8];
|
|
/* 02032C40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 02032C44 */ _t605 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02032C44 */ _t606 = _t605 & 0x00000001u;
|
|
/* 02032C44 */ if (_t606) goto L_02032C70; else goto L_02032C48;
|
|
L_02032C48: ; // 0x2032c48
|
|
/* 02032C48 */ _t607 = cpu->r[9] + 0x00000018u;
|
|
/* 02032C48 */ cpu->r[7] = rbrew_read32(cpu->mem, _t607);
|
|
/* 02032C4C */ _t608 = cpu->r[12] + 0x00000024u;
|
|
/* 02032C4C */ cpu->r[8] = rbrew_read32(cpu->mem, _t608);
|
|
/* 02032C50 */ _t609 = cpu->r[7] + 0x00000000u;
|
|
/* 02032C50 */ cpu->r[6] = rbrew_read32(cpu->mem, _t609);
|
|
/* 02032C54 */ cpu->r[6] = cpu->r[6] | cpu->r[8];
|
|
/* 02032C58 */ _t610 = cpu->r[7] + 0x00000000u;
|
|
/* 02032C58 */ rbrew_write32(cpu->mem, _t610, cpu->r[6]);
|
|
/* 02032C5C */ _t611 = cpu->r[9] + 0x00000020u;
|
|
/* 02032C5C */ cpu->r[7] = rbrew_read32(cpu->mem, _t611);
|
|
/* 02032C60 */ _t612 = cpu->r[12] + 0x0000002Cu;
|
|
/* 02032C60 */ cpu->r[9] = rbrew_read32(cpu->mem, _t612);
|
|
/* 02032C64 */ _t613 = cpu->r[7] + 0x00000000u;
|
|
/* 02032C64 */ cpu->r[8] = rbrew_read32(cpu->mem, _t613);
|
|
/* 02032C68 */ cpu->r[8] = cpu->r[8] | cpu->r[9];
|
|
/* 02032C6C */ _t614 = cpu->r[7] + 0x00000000u;
|
|
/* 02032C6C */ rbrew_write32(cpu->mem, _t614, cpu->r[8]);
|
|
L_02032C70: ; // 0x2032c70
|
|
/* 02032C70 */ _t615 = cpu->r[12] + 0x00000000u;
|
|
/* 02032C70 */ cpu->r[8] = rbrew_read32(cpu->mem, _t615);
|
|
/* 02032C74 */ _t616 = cpu->r[3] + 0x00000088u;
|
|
/* 02032C74 */ cpu->r[9] = rbrew_read32(cpu->mem, _t616);
|
|
/* 02032C78 */ cpu->r[8] = rbrew_rlwinm(cpu->r[8], 0x00000004u, 0x00000000u, 0x0000001Bu);
|
|
/* 02032C7C */ cpu->r[9] = cpu->r[9] + cpu->r[8];
|
|
/* 02032C80 */ _t617 = cpu->r[9] + 0x00000004u;
|
|
/* 02032C80 */ cpu->r[8] = rbrew_read32(cpu->mem, _t617);
|
|
/* 02032C84 */ _t618 = cpu->r[8] + 0x00000000u;
|
|
/* 02032C84 */ cpu->r[7] = rbrew_read32(cpu->mem, _t618);
|
|
/* 02032C88 */ cpu->r[7] = cpu->r[7] + 0x00000001u;
|
|
/* 02032C8C */ _t619 = cpu->r[8] + 0x00000000u;
|
|
/* 02032C8C */ rbrew_write32(cpu->mem, _t619, cpu->r[7]);
|
|
/* 02032C90 */ _t620 = cpu->r[10] + 0x00000004u;
|
|
/* 02032C90 */ cpu->r[8] = rbrew_read32(cpu->mem, _t620);
|
|
/* 02032C94 */ _t621 = cpu->r[8] + 0x00000000u;
|
|
/* 02032C94 */ cpu->r[7] = rbrew_read32(cpu->mem, _t621);
|
|
/* 02032C98 */ cpu->r[7] = cpu->r[7] + 0xFFFFFFFFu;
|
|
/* 02032C9C */ _t622 = cpu->r[8] + 0x00000000u;
|
|
/* 02032C9C */ rbrew_write32(cpu->mem, _t622, cpu->r[7]);
|
|
/* 02032CA0 */ _t623 = cpu->r[9] + 0x00000000u;
|
|
/* 02032CA0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t623);
|
|
/* 02032CA4 */ _t624 = cpu->r[1] + 0x00000070u;
|
|
/* 02032CA4 */ rbrew_write32(cpu->mem, _t624, cpu->r[8]);
|
|
/* 02032CA8 */ _t625 = cpu->r[9] + 0x00000004u;
|
|
/* 02032CA8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t625);
|
|
/* 02032CAC */ _t626 = cpu->r[1] + 0x00000074u;
|
|
/* 02032CAC */ rbrew_write32(cpu->mem, _t626, cpu->r[8]);
|
|
/* 02032CB0 */ _t627 = cpu->r[9] + 0x00000008u;
|
|
/* 02032CB0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t627);
|
|
/* 02032CB4 */ _t628 = cpu->r[1] + 0x00000078u;
|
|
/* 02032CB4 */ rbrew_write32(cpu->mem, _t628, cpu->r[7]);
|
|
/* 02032CB8 */ _t629 = cpu->r[9] + 0x0000000Cu;
|
|
/* 02032CB8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t629);
|
|
/* 02032CBC */ _t630 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02032CBC */ rbrew_write32(cpu->mem, _t630, cpu->r[8]);
|
|
/* 02032CC0 */ _t631 = cpu->r[10] + 0x00000000u;
|
|
/* 02032CC0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t631);
|
|
/* 02032CC4 */ _t632 = cpu->r[9] + 0x00000000u;
|
|
/* 02032CC4 */ rbrew_write32(cpu->mem, _t632, cpu->r[7]);
|
|
/* 02032CC8 */ _t633 = cpu->r[10] + 0x00000004u;
|
|
/* 02032CC8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t633);
|
|
/* 02032CCC */ _t634 = cpu->r[9] + 0x00000004u;
|
|
/* 02032CCC */ rbrew_write32(cpu->mem, _t634, cpu->r[8]);
|
|
/* 02032CD0 */ _t635 = cpu->r[10] + 0x00000008u;
|
|
/* 02032CD0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t635);
|
|
/* 02032CD4 */ _t636 = cpu->r[9] + 0x00000008u;
|
|
/* 02032CD4 */ rbrew_write32(cpu->mem, _t636, cpu->r[7]);
|
|
/* 02032CD8 */ _t637 = cpu->r[10] + 0x0000000Cu;
|
|
/* 02032CD8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t637);
|
|
/* 02032CDC */ _t638 = cpu->r[9] + 0x0000000Cu;
|
|
/* 02032CDC */ rbrew_write32(cpu->mem, _t638, cpu->r[8]);
|
|
/* 02032CE0 */ _t639 = cpu->r[1] + 0x00000070u;
|
|
/* 02032CE0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t639);
|
|
/* 02032CE4 */ _t640 = cpu->r[10] + 0x00000000u;
|
|
/* 02032CE4 */ rbrew_write32(cpu->mem, _t640, cpu->r[8]);
|
|
/* 02032CE8 */ _t641 = cpu->r[1] + 0x00000074u;
|
|
/* 02032CE8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t641);
|
|
/* 02032CEC */ _t642 = cpu->r[10] + 0x00000004u;
|
|
/* 02032CEC */ rbrew_write32(cpu->mem, _t642, cpu->r[9]);
|
|
/* 02032CF0 */ _t643 = cpu->r[1] + 0x00000078u;
|
|
/* 02032CF0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t643);
|
|
/* 02032CF4 */ _t644 = cpu->r[10] + 0x00000008u;
|
|
/* 02032CF4 */ rbrew_write32(cpu->mem, _t644, cpu->r[8]);
|
|
/* 02032CF8 */ _t645 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02032CF8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t645);
|
|
/* 02032CFC */ _t646 = cpu->r[10] + 0x0000000Cu;
|
|
/* 02032CFC */ rbrew_write32(cpu->mem, _t646, cpu->r[9]);
|
|
/* 02032D00 */ _t647 = cpu->r[12] + 0x00000000u;
|
|
/* 02032D00 */ cpu->r[10] = rbrew_read32(cpu->mem, _t647);
|
|
/* 02032D04 */ _t648 = cpu->r[3] + 0x00000088u;
|
|
/* 02032D04 */ cpu->r[6] = rbrew_read32(cpu->mem, _t648);
|
|
/* 02032D08 */ cpu->r[10] = rbrew_rlwinm(cpu->r[10], 0x00000004u, 0x00000000u, 0x0000001Bu);
|
|
/* 02032D0C */ _t649 = cpu->r[6] + cpu->r[10];
|
|
/* 02032D0C */ cpu->r[8] = rbrew_read32(cpu->mem, _t649);
|
|
/* 02032D10 */ cpu->r[9] = cpu->r[6] + cpu->r[10];
|
|
/* 02032D14 */ _t650 = cpu->r[9] + 0x00000010u;
|
|
/* 02032D14 */ cpu->r[10] = rbrew_read32(cpu->mem, _t650);
|
|
/* 02032D18 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], cpu->r[10]);
|
|
/* 02032D1C */ cpu->r[10] = cpu->r[9] + 0x00000010u;
|
|
/* 02032D20 */ _t651 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02032D20 */ _t652 = _t651 & 0x00000001u;
|
|
/* 02032D20 */ if (_t652) goto L_02032BDC; else goto L_02032D24;
|
|
L_02032D24: ; // 0x2032d24
|
|
/* 02032D24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 02032D28 */ _t653 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02032D28 */ _t654 = _t653 & 0x00000001u;
|
|
/* 02032D28 */ if (_t654) goto L_02032D2C; else goto L_02032E98;
|
|
L_02032D2C: ; // 0x2032d2c
|
|
/* 02032D2C */ _t655 = cpu->r[11] + 0x00000000u;
|
|
/* 02032D2C */ cpu->r[12] = rbrew_read32(cpu->mem, _t655);
|
|
/* 02032D30 */ cpu->r[12] = rbrew_rlwinm(cpu->r[12], 0x00000004u, 0x00000000u, 0x0000001Bu);
|
|
/* 02032D34 */ _t656 = cpu->r[6] + cpu->r[12];
|
|
/* 02032D34 */ cpu->r[10] = rbrew_read32(cpu->mem, _t656);
|
|
/* 02032D38 */ cpu->r[9] = cpu->r[6] + cpu->r[12];
|
|
/* 02032D3C */ _t657 = cpu->r[9] + 0x00000010u;
|
|
/* 02032D3C */ cpu->r[12] = rbrew_read32(cpu->mem, _t657);
|
|
/* 02032D40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], cpu->r[12]);
|
|
/* 02032D44 */ cpu->r[12] = cpu->r[9] + 0x00000010u;
|
|
/* 02032D48 */ _t658 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02032D48 */ _t659 = _t658 & 0x00000001u;
|
|
/* 02032D48 */ if (_t659) goto L_02032D4C; else goto L_02032E98;
|
|
L_02032D4C: ; // 0x2032d4c
|
|
/* 02032D4C */ _t660 = cpu->r[9] + 0x00000008u;
|
|
/* 02032D4C */ cpu->r[7] = rbrew_read32(cpu->mem, _t660);
|
|
L_02032D50: ; // 0x2032d50
|
|
/* 02032D50 */ _t661 = cpu->r[12] + 0x00000008u;
|
|
/* 02032D50 */ cpu->r[9] = rbrew_read32(cpu->mem, _t661);
|
|
/* 02032D54 */ _t662 = cpu->r[11] + 0x00000004u;
|
|
/* 02032D54 */ cpu->r[10] = rbrew_read32(cpu->mem, _t662);
|
|
/* 02032D58 */ _t663 = cpu->r[12] + 0x00000004u;
|
|
/* 02032D58 */ cpu->r[6] = rbrew_read32(cpu->mem, _t663);
|
|
/* 02032D5C */ cpu->r[10] = cpu->r[10] - cpu->r[9];
|
|
/* 02032D60 */ _t664 = cpu->r[11] + 0x00000004u;
|
|
/* 02032D60 */ rbrew_write32(cpu->mem, _t664, cpu->r[10]);
|
|
/* 02032D64 */ _t665 = cpu->r[6] + 0x0000000Cu;
|
|
/* 02032D64 */ cpu->r[9] = rbrew_read32(cpu->mem, _t665);
|
|
/* 02032D68 */ _t666 = cpu->r[11] + 0x00000010u;
|
|
/* 02032D68 */ cpu->r[10] = rbrew_read32(cpu->mem, _t666);
|
|
/* 02032D6C */ cpu->r[9] = cpu->r[9] & cpu->r[10];
|
|
/* 02032D6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02032D70 */ _t667 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02032D70 */ _t668 = _t667 & 0x00000001u;
|
|
/* 02032D70 */ if (_t668) goto L_02032D9C; else goto L_02032D74;
|
|
L_02032D74: ; // 0x2032d74
|
|
/* 02032D74 */ _t669 = cpu->r[11] + 0x00000014u;
|
|
/* 02032D74 */ cpu->r[8] = rbrew_read32(cpu->mem, _t669);
|
|
/* 02032D78 */ _t670 = cpu->r[6] + 0x00000028u;
|
|
/* 02032D78 */ cpu->r[10] = rbrew_read32(cpu->mem, _t670);
|
|
/* 02032D7C */ _t671 = cpu->r[8] + 0x00000000u;
|
|
/* 02032D7C */ cpu->r[9] = rbrew_read32(cpu->mem, _t671);
|
|
/* 02032D80 */ cpu->r[9] = cpu->r[9] | cpu->r[10];
|
|
/* 02032D84 */ _t672 = cpu->r[8] + 0x00000000u;
|
|
/* 02032D84 */ rbrew_write32(cpu->mem, _t672, cpu->r[9]);
|
|
/* 02032D88 */ _t673 = cpu->r[11] + 0x0000001Cu;
|
|
/* 02032D88 */ cpu->r[8] = rbrew_read32(cpu->mem, _t673);
|
|
/* 02032D8C */ _t674 = cpu->r[8] + 0x00000000u;
|
|
/* 02032D8C */ cpu->r[9] = rbrew_read32(cpu->mem, _t674);
|
|
/* 02032D90 */ _t675 = cpu->r[6] + 0x00000030u;
|
|
/* 02032D90 */ cpu->r[10] = rbrew_read32(cpu->mem, _t675);
|
|
/* 02032D94 */ cpu->r[9] = cpu->r[9] | cpu->r[10];
|
|
/* 02032D98 */ _t676 = cpu->r[8] + 0x00000000u;
|
|
/* 02032D98 */ rbrew_write32(cpu->mem, _t676, cpu->r[9]);
|
|
L_02032D9C: ; // 0x2032d9c
|
|
/* 02032D9C */ _t677 = cpu->r[12] + 0x00000004u;
|
|
/* 02032D9C */ cpu->r[6] = rbrew_read32(cpu->mem, _t677);
|
|
/* 02032DA0 */ _t678 = cpu->r[6] + 0x00000004u;
|
|
/* 02032DA0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t678);
|
|
/* 02032DA4 */ cpu->r[10] = cpu->r[10] + cpu->r[7];
|
|
/* 02032DA8 */ _t679 = cpu->r[6] + 0x00000004u;
|
|
/* 02032DA8 */ rbrew_write32(cpu->mem, _t679, cpu->r[10]);
|
|
/* 02032DAC */ _t680 = cpu->r[11] + 0x0000000Cu;
|
|
/* 02032DAC */ cpu->r[9] = rbrew_read32(cpu->mem, _t680);
|
|
/* 02032DB0 */ _t681 = cpu->r[6] + 0x00000010u;
|
|
/* 02032DB0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t681);
|
|
/* 02032DB4 */ cpu->r[9] = cpu->r[9] & cpu->r[10];
|
|
/* 02032DB4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02032DB8 */ _t682 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02032DB8 */ _t683 = _t682 & 0x00000001u;
|
|
/* 02032DB8 */ if (_t683) goto L_02032DE4; else goto L_02032DBC;
|
|
L_02032DBC: ; // 0x2032dbc
|
|
/* 02032DBC */ _t684 = cpu->r[6] + 0x00000018u;
|
|
/* 02032DBC */ cpu->r[8] = rbrew_read32(cpu->mem, _t684);
|
|
/* 02032DC0 */ _t685 = cpu->r[11] + 0x00000024u;
|
|
/* 02032DC0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t685);
|
|
/* 02032DC4 */ _t686 = cpu->r[8] + 0x00000000u;
|
|
/* 02032DC4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t686);
|
|
/* 02032DC8 */ cpu->r[9] = cpu->r[9] | cpu->r[10];
|
|
/* 02032DCC */ _t687 = cpu->r[8] + 0x00000000u;
|
|
/* 02032DCC */ rbrew_write32(cpu->mem, _t687, cpu->r[9]);
|
|
/* 02032DD0 */ _t688 = cpu->r[6] + 0x00000020u;
|
|
/* 02032DD0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t688);
|
|
/* 02032DD4 */ _t689 = cpu->r[8] + 0x00000000u;
|
|
/* 02032DD4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t689);
|
|
/* 02032DD8 */ _t690 = cpu->r[11] + 0x0000002Cu;
|
|
/* 02032DD8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t690);
|
|
/* 02032DDC */ cpu->r[9] = cpu->r[9] | cpu->r[10];
|
|
/* 02032DE0 */ _t691 = cpu->r[8] + 0x00000000u;
|
|
/* 02032DE0 */ rbrew_write32(cpu->mem, _t691, cpu->r[9]);
|
|
L_02032DE4: ; // 0x2032de4
|
|
/* 02032DE4 */ _t692 = cpu->r[11] + 0x00000000u;
|
|
/* 02032DE4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t692);
|
|
/* 02032DE8 */ _t693 = cpu->r[3] + 0x00000088u;
|
|
/* 02032DE8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t693);
|
|
/* 02032DEC */ cpu->r[9] = rbrew_rlwinm(cpu->r[9], 0x00000004u, 0x00000000u, 0x0000001Bu);
|
|
/* 02032DF0 */ cpu->r[6] = cpu->r[10] + cpu->r[9];
|
|
/* 02032DF4 */ _t694 = cpu->r[6] + 0x00000004u;
|
|
/* 02032DF4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t694);
|
|
/* 02032DF8 */ _t695 = cpu->r[10] + 0x00000000u;
|
|
/* 02032DF8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t695);
|
|
/* 02032DFC */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
/* 02032E00 */ _t696 = cpu->r[10] + 0x00000000u;
|
|
/* 02032E00 */ rbrew_write32(cpu->mem, _t696, cpu->r[9]);
|
|
/* 02032E04 */ _t697 = cpu->r[12] + 0x00000004u;
|
|
/* 02032E04 */ cpu->r[10] = rbrew_read32(cpu->mem, _t697);
|
|
/* 02032E08 */ _t698 = cpu->r[10] + 0x00000000u;
|
|
/* 02032E08 */ cpu->r[9] = rbrew_read32(cpu->mem, _t698);
|
|
/* 02032E0C */ cpu->r[9] = cpu->r[9] + 0xFFFFFFFFu;
|
|
/* 02032E10 */ _t699 = cpu->r[10] + 0x00000000u;
|
|
/* 02032E10 */ rbrew_write32(cpu->mem, _t699, cpu->r[9]);
|
|
/* 02032E14 */ _t700 = cpu->r[6] + 0x00000000u;
|
|
/* 02032E14 */ cpu->r[10] = rbrew_read32(cpu->mem, _t700);
|
|
/* 02032E18 */ _t701 = cpu->r[1] + 0x00000080u;
|
|
/* 02032E18 */ rbrew_write32(cpu->mem, _t701, cpu->r[10]);
|
|
/* 02032E1C */ _t702 = cpu->r[6] + 0x00000004u;
|
|
/* 02032E1C */ cpu->r[10] = rbrew_read32(cpu->mem, _t702);
|
|
/* 02032E20 */ _t703 = cpu->r[1] + 0x00000084u;
|
|
/* 02032E20 */ rbrew_write32(cpu->mem, _t703, cpu->r[10]);
|
|
/* 02032E24 */ _t704 = cpu->r[6] + 0x00000008u;
|
|
/* 02032E24 */ cpu->r[9] = rbrew_read32(cpu->mem, _t704);
|
|
/* 02032E28 */ _t705 = cpu->r[1] + 0x00000088u;
|
|
/* 02032E28 */ rbrew_write32(cpu->mem, _t705, cpu->r[9]);
|
|
/* 02032E2C */ _t706 = cpu->r[6] + 0x0000000Cu;
|
|
/* 02032E2C */ cpu->r[10] = rbrew_read32(cpu->mem, _t706);
|
|
/* 02032E30 */ _t707 = cpu->r[1] + 0x0000008Cu;
|
|
/* 02032E30 */ rbrew_write32(cpu->mem, _t707, cpu->r[10]);
|
|
/* 02032E34 */ _t708 = cpu->r[12] + 0x00000000u;
|
|
/* 02032E34 */ cpu->r[9] = rbrew_read32(cpu->mem, _t708);
|
|
/* 02032E38 */ _t709 = cpu->r[6] + 0x00000000u;
|
|
/* 02032E38 */ rbrew_write32(cpu->mem, _t709, cpu->r[9]);
|
|
/* 02032E3C */ _t710 = cpu->r[12] + 0x00000004u;
|
|
/* 02032E3C */ cpu->r[10] = rbrew_read32(cpu->mem, _t710);
|
|
/* 02032E40 */ _t711 = cpu->r[6] + 0x00000004u;
|
|
/* 02032E40 */ rbrew_write32(cpu->mem, _t711, cpu->r[10]);
|
|
/* 02032E44 */ _t712 = cpu->r[12] + 0x00000008u;
|
|
/* 02032E44 */ cpu->r[9] = rbrew_read32(cpu->mem, _t712);
|
|
/* 02032E48 */ _t713 = cpu->r[6] + 0x00000008u;
|
|
/* 02032E48 */ rbrew_write32(cpu->mem, _t713, cpu->r[9]);
|
|
/* 02032E4C */ _t714 = cpu->r[12] + 0x0000000Cu;
|
|
/* 02032E4C */ cpu->r[10] = rbrew_read32(cpu->mem, _t714);
|
|
/* 02032E50 */ _t715 = cpu->r[6] + 0x0000000Cu;
|
|
/* 02032E50 */ rbrew_write32(cpu->mem, _t715, cpu->r[10]);
|
|
/* 02032E54 */ _t716 = cpu->r[1] + 0x00000080u;
|
|
/* 02032E54 */ cpu->r[9] = rbrew_read32(cpu->mem, _t716);
|
|
/* 02032E58 */ _t717 = cpu->r[12] + 0x00000000u;
|
|
/* 02032E58 */ rbrew_write32(cpu->mem, _t717, cpu->r[9]);
|
|
/* 02032E5C */ _t718 = cpu->r[1] + 0x00000084u;
|
|
/* 02032E5C */ cpu->r[10] = rbrew_read32(cpu->mem, _t718);
|
|
/* 02032E60 */ _t719 = cpu->r[12] + 0x00000004u;
|
|
/* 02032E60 */ rbrew_write32(cpu->mem, _t719, cpu->r[10]);
|
|
/* 02032E64 */ _t720 = cpu->r[1] + 0x00000088u;
|
|
/* 02032E64 */ cpu->r[9] = rbrew_read32(cpu->mem, _t720);
|
|
/* 02032E68 */ _t721 = cpu->r[12] + 0x00000008u;
|
|
/* 02032E68 */ rbrew_write32(cpu->mem, _t721, cpu->r[9]);
|
|
/* 02032E6C */ _t722 = cpu->r[1] + 0x0000008Cu;
|
|
/* 02032E6C */ cpu->r[10] = rbrew_read32(cpu->mem, _t722);
|
|
/* 02032E70 */ _t723 = cpu->r[12] + 0x0000000Cu;
|
|
/* 02032E70 */ rbrew_write32(cpu->mem, _t723, cpu->r[10]);
|
|
/* 02032E74 */ _t724 = cpu->r[11] + 0x00000000u;
|
|
/* 02032E74 */ cpu->r[12] = rbrew_read32(cpu->mem, _t724);
|
|
/* 02032E78 */ _t725 = cpu->r[3] + 0x00000088u;
|
|
/* 02032E78 */ cpu->r[6] = rbrew_read32(cpu->mem, _t725);
|
|
/* 02032E7C */ cpu->r[12] = rbrew_rlwinm(cpu->r[12], 0x00000004u, 0x00000000u, 0x0000001Bu);
|
|
/* 02032E80 */ _t726 = cpu->r[6] + cpu->r[12];
|
|
/* 02032E80 */ cpu->r[10] = rbrew_read32(cpu->mem, _t726);
|
|
/* 02032E84 */ cpu->r[9] = cpu->r[6] + cpu->r[12];
|
|
/* 02032E88 */ _t727 = cpu->r[9] + 0x00000010u;
|
|
/* 02032E88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t727);
|
|
/* 02032E8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], cpu->r[12]);
|
|
/* 02032E90 */ cpu->r[12] = cpu->r[9] + 0x00000010u;
|
|
/* 02032E94 */ _t728 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02032E94 */ _t729 = _t728 & 0x00000001u;
|
|
/* 02032E94 */ if (_t729) goto L_02032D50; else goto L_02032E98;
|
|
L_02032E98: ; // 0x2032e98
|
|
/* 02032E98 */ _t730 = cpu->r[1] + 0x00000094u;
|
|
/* 02032E98 */ cpu->r[31] = rbrew_read32(cpu->mem, _t730);
|
|
/* 02032E9C */ cpu->r[1] = cpu->r[1] + 0x00000098u;
|
|
/* 02032EA0 */ return;
|
|
L_0252E254: ; // 0x252e254
|
|
/* 0252E254 */ _t731 = cpu->r[3] + 0x00000078u;
|
|
/* 0252E254 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t731);
|
|
/* 0252E258 */ _t732 = cpu->r[3] + 0x000000A8u;
|
|
/* 0252E258 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t732);
|
|
/* 0252E25C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[13]);
|
|
/* 0252E260 */ _t733 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252E260 */ _t734 = _t733 & 0x00000001u;
|
|
/* 0252E260 */ if (_t734) goto L_0252E264; else goto L_0252E274;
|
|
L_0252E264: ; // 0x252e264
|
|
/* 0252E264 */ _t735 = cpu->r[3] + 0x0000007Cu;
|
|
/* 0252E264 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t735);
|
|
/* 0252E268 */ _t736 = cpu->r[3] + 0x000000ACu;
|
|
/* 0252E268 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t736);
|
|
/* 0252E26C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[10]);
|
|
/* 0252E270 */ _t737 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252E270 */ _t738 = _t737 & 0x00000001u;
|
|
/* 0252E270 */ if (_t738) goto L_0252E2A0; else goto L_0252E274;
|
|
L_0252E274: ; // 0x252e274
|
|
/* 0252E274 */ cpu->r[12] = 0x100C0000u;
|
|
/* 0252E278 */ _t739 = cpu->r[12] + 0x00003C70u;
|
|
/* 0252E278 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t739);
|
|
/* 0252E27C */ cpu->r[12] = 0x100C0000u;
|
|
/* 0252E280 */ _t740 = cpu->r[3] + 0x00000080u;
|
|
/* 0252E280 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t740);
|
|
/* 0252E284 */ cpu->f[1] = cpu->f[11] - cpu->f[0];
|
|
/* 0252E288 */ _t741 = cpu->r[12] + 0x00003BDCu;
|
|
/* 0252E288 */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t741);
|
|
/* 0252E28C */ cpu->f[4] = cpu->f[13] + cpu->f[0];
|
|
/* 0252E290 */ _t742 = cpu->r[3] + 0x000001E8u;
|
|
/* 0252E290 */ cpu->r[3] = rbrew_read32(cpu->mem, _t742);
|
|
/* 0252E294 */ cpu->f[3] = cpu->f[13] - cpu->f[0];
|
|
/* 0252E298 */ cpu->f[2] = cpu->f[11] + cpu->f[0];
|
|
/* 0252E29C */ goto L_02031EFC;
|
|
L_0252E2A0: ; // 0x252e2a0
|
|
/* 0252E2A0 */ _t743 = cpu->r[3] + 0x00000080u;
|
|
/* 0252E2A0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t743);
|
|
/* 0252E2A4 */ _t744 = cpu->r[3] + 0x000000B0u;
|
|
/* 0252E2A4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t744);
|
|
/* 0252E2A8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[12]);
|
|
/* 0252E2AC */ _t745 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252E2AC */ _t746 = _t745 & 0x00000001u;
|
|
/* 0252E2AC */ if (_t746) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0252E2AC */ goto L_0252E2B0;
|
|
L_0252E2B0: ; // 0x252e2b0
|
|
/* 0252E2B0 */ cpu->r[12] = 0x100C0000u;
|
|
/* 0252E2B4 */ _t747 = cpu->r[12] + 0x00003C70u;
|
|
/* 0252E2B4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t747);
|
|
/* 0252E2B8 */ cpu->r[12] = 0x100C0000u;
|
|
/* 0252E2BC */ cpu->f[1] = cpu->f[11] - cpu->f[0];
|
|
/* 0252E2C0 */ _t748 = cpu->r[12] + 0x00003BDCu;
|
|
/* 0252E2C0 */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t748);
|
|
/* 0252E2C4 */ cpu->f[3] = cpu->f[13] - cpu->f[0];
|
|
/* 0252E2C8 */ _t749 = cpu->r[3] + 0x000001E8u;
|
|
/* 0252E2C8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t749);
|
|
/* 0252E2CC */ cpu->f[4] = cpu->f[13] + cpu->f[0];
|
|
/* 0252E2D0 */ cpu->f[2] = cpu->f[11] + cpu->f[0];
|
|
/* 0252E2D4 */ goto L_02031EFC;
|
|
}
|
|
|
|
// fn_0252E30C @ 0x252e30c
|
|
void Gambit_fn_0252E30C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _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, _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;
|
|
double _ft165, _ft166;
|
|
|
|
L_0252E30C: ; // 0x252e30c
|
|
/* 0252E30C */ _t0 = cpu->r[1] + 0xFFFFFE60u;
|
|
/* 0252E30C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252E30C */ cpu->r[1] = _t0;
|
|
/* 0252E310 */ /* nop */
|
|
/* 0252E314 */ _t1 = cpu->r[1] + 0x00000170u;
|
|
/* 0252E314 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[29]);
|
|
/* 0252E318 */ _t2 = cpu->r[1] + 0x00000150u;
|
|
/* 0252E318 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[27]);
|
|
/* 0252E31C */ /* nop */
|
|
/* 0252E320 */ _t3 = cpu->r[1] + 0x00000178u;
|
|
/* 0252E320 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[29]);
|
|
/* 0252E324 */ /* nop */
|
|
/* 0252E328 */ _t4 = cpu->r[1] + 0x00000158u;
|
|
/* 0252E328 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[27]);
|
|
/* 0252E32C */ _t5 = cpu->r[1] + 0x00000190u;
|
|
/* 0252E32C */ rbrew_write_f64(cpu->mem, _t5, cpu->f[31]);
|
|
/* 0252E330 */ cpu->r[0] = cpu->lr;
|
|
/* 0252E334 */ _t6 = cpu->r[1] + 0x00000140u;
|
|
/* 0252E334 */ rbrew_write_f64(cpu->mem, _t6, cpu->f[26]);
|
|
/* 0252E338 */ /* nop */
|
|
/* 0252E33C */ _t7 = cpu->r[1] + 0x00000198u;
|
|
/* 0252E33C */ rbrew_write_f32(cpu->mem, _t7, cpu->f[31]);
|
|
/* 0252E340 */ /* nop */
|
|
/* 0252E344 */ _t8 = cpu->r[1] + 0x00000180u;
|
|
/* 0252E344 */ rbrew_write_f64(cpu->mem, _t8, cpu->f[30]);
|
|
/* 0252E348 */ _t9 = cpu->r[1] + 0x000001A4u;
|
|
/* 0252E348 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 0252E34C */ /* nop */
|
|
/* 0252E350 */ _t10 = cpu->r[1] + 0x00000188u;
|
|
/* 0252E350 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[30]);
|
|
/* 0252E354 */ _t11 = cpu->r[1] + 0x00000160u;
|
|
/* 0252E354 */ rbrew_write_f64(cpu->mem, _t11, cpu->f[28]);
|
|
/* 0252E358 */ _t12 = cpu->r[1] + 0x00000148u;
|
|
/* 0252E358 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[26]);
|
|
/* 0252E35C */ /* nop */
|
|
/* 0252E360 */ _t13 = cpu->r[1] + 0x00000168u;
|
|
/* 0252E360 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[28]);
|
|
/* 0252E364 */ cpu->r[22] = cpu->r[3];
|
|
/* 0252E368 */ _t14 = cpu->r[22] + 0x000001E8u;
|
|
/* 0252E368 */ cpu->r[3] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0252E36C */ _t15 = cpu->r[22] + 0x000001ECu;
|
|
/* 0252E36C */ cpu->r[4] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0252E370 */ Gambit_fn_02032EA4(cpu);
|
|
/* 0252E374 */ _t16 = cpu->r[22] + 0x000001E8u;
|
|
/* 0252E374 */ cpu->r[4] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0252E378 */ cpu->r[20] = 0x101C0000u;
|
|
/* 0252E37C */ _t17 = cpu->r[20] + 0x00004FA8u;
|
|
/* 0252E37C */ cpu->r[8] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0252E37C */ cpu->r[20] = _t17;
|
|
/* 0252E380 */ _t18 = cpu->r[4] + 0x00000118u;
|
|
/* 0252E380 */ cpu->r[6] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0252E384 */ /* nop */
|
|
/* 0252E388 */ cpu->r[21] = 0x101C0000u;
|
|
/* 0252E38C */ cpu->r[9] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0252E38C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0252E390 */ cpu->r[21] = cpu->r[21] + 0x000050F8u;
|
|
/* 0252E394 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252E394 */ _t20 = _t19 & 0x00000001u;
|
|
/* 0252E394 */ if (_t20) goto L_0252E398; else goto L_0252E3AC;
|
|
L_0252E398: ; // 0x252e398
|
|
/* 0252E398 */ _t21 = cpu->r[4] + 0x00000118u;
|
|
/* 0252E398 */ cpu->r[11] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0252E39C */ _t22 = cpu->r[21] + 0x00000000u;
|
|
/* 0252E39C */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0252E3A0 */ /* nop */
|
|
/* 0252E3A4 */ cpu->r[6] = rbrew_rlwinm(cpu->r[10], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0252E3A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 0252E3A8 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252E3A8 */ _t24 = _t23 & 0x00000001u;
|
|
/* 0252E3A8 */ if (_t24) goto L_0252E8F4; else goto L_0252E3AC;
|
|
L_0252E3AC: ; // 0x252e3ac
|
|
/* 0252E3AC */ _t25 = cpu->r[22] + 0x0000007Cu;
|
|
/* 0252E3AC */ cpu->r[10] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0252E3B0 */ cpu->r[9] = 0x100C0000u;
|
|
/* 0252E3B4 */ _t26 = cpu->r[22] + 0x00000080u;
|
|
/* 0252E3B4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0252E3B8 */ _t27 = cpu->r[9] + 0x00003C70u;
|
|
/* 0252E3B8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 0252E3BC */ _t28 = cpu->r[22] + 0x00000078u;
|
|
/* 0252E3BC */ cpu->r[9] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0252E3C0 */ _t29 = cpu->r[1] + 0x000000FCu;
|
|
/* 0252E3C0 */ rbrew_write_f32(cpu->mem, _t29, cpu->f[11]);
|
|
/* 0252E3C4 */ _t30 = cpu->r[1] + 0x000000F0u;
|
|
/* 0252E3C4 */ rbrew_write32(cpu->mem, _t30, cpu->r[9]);
|
|
/* 0252E3C8 */ cpu->r[29] = 0x10110000u;
|
|
/* 0252E3CC */ cpu->r[29] = cpu->r[29] + 0xFFFFEF4Cu;
|
|
/* 0252E3D0 */ _t31 = cpu->r[1] + 0x000000F8u;
|
|
/* 0252E3D0 */ rbrew_write32(cpu->mem, _t31, cpu->r[11]);
|
|
/* 0252E3D4 */ _t32 = cpu->r[1] + 0x000000F4u;
|
|
/* 0252E3D4 */ rbrew_write32(cpu->mem, _t32, cpu->r[10]);
|
|
/* 0252E3D8 */ cpu->r[3] = cpu->r[22];
|
|
/* 0252E3DC */ _t33 = cpu->r[1] + 0x000000ECu;
|
|
/* 0252E3DC */ rbrew_write32(cpu->mem, _t33, cpu->r[29]);
|
|
/* 0252E3E0 */ Gambit_fn_0252D85C(cpu);
|
|
/* 0252E3E4 */ cpu->r[7] = 0x100C0000u;
|
|
/* 0252E3E8 */ cpu->f[28] = cpu->f[1];
|
|
/* 0252E3EC */ cpu->r[24] = 0x101D0000u;
|
|
/* 0252E3F0 */ _t34 = cpu->r[7] + 0x00003BDCu;
|
|
/* 0252E3F0 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 0252E3F4 */ cpu->r[23] = 0x00000000u;
|
|
/* 0252E3F8 */ cpu->r[25] = 0x101F0000u;
|
|
/* 0252E3FC */ cpu->r[24] = cpu->r[24] + 0xFFFFFD88u;
|
|
/* 0252E400 */ cpu->r[26] = 0x101D0000u;
|
|
/* 0252E404 */ cpu->r[25] = cpu->r[25] + 0x00003840u;
|
|
/* 0252E408 */ _t35 = cpu->r[20] + 0x00000000u;
|
|
/* 0252E408 */ cpu->r[5] = rbrew_read32(cpu->mem, _t35);
|
|
/* 0252E40C */ cpu->r[30] = 0x10110000u;
|
|
/* 0252E410 */ cpu->r[26] = cpu->r[26] + 0xFFFFFD8Cu;
|
|
/* 0252E414 */ _t36 = cpu->r[4] + 0x00000108u;
|
|
/* 0252E414 */ cpu->r[3] = rbrew_read32(cpu->mem, _t36);
|
|
/* 0252E418 */ cpu->r[30] = cpu->r[30] + 0xFFFFEF7Cu;
|
|
/* 0252E41C */ cpu->r[28] = 0x00000001u;
|
|
/* 0252E420 */ cpu->r[27] = cpu->r[1] + 0x00000028u;
|
|
/* 0252E424 */ Gambit_fn_02031DAC(cpu);
|
|
/* 0252E428 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252E42C */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252E42C */ _t38 = _t37 & 0x00000001u;
|
|
/* 0252E42C */ if (_t38) goto L_0252E8DC; else goto L_0252E430;
|
|
L_0252E430: ; // 0x252e430
|
|
/* 0252E430 */ cpu->r[31] = cpu->r[3];
|
|
/* 0252E434 */ _t39 = cpu->r[31] + 0x0000002Cu;
|
|
/* 0252E434 */ cpu->r[10] = rbrew_read32(cpu->mem, _t39);
|
|
/* 0252E438 */ _t40 = cpu->r[22] + 0x0000002Cu;
|
|
/* 0252E438 */ cpu->r[12] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0252E43C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[12]);
|
|
/* 0252E440 */ _t41 = cpu->r[1] + 0x00000024u;
|
|
/* 0252E440 */ rbrew_write32(cpu->mem, _t41, cpu->r[12]);
|
|
/* 0252E444 */ _t42 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252E444 */ _t43 = _t42 & 0x00000001u;
|
|
/* 0252E444 */ if (_t43) goto L_0252E500; else goto L_0252E448;
|
|
L_0252E448: ; // 0x252e448
|
|
/* 0252E448 */ _t44 = cpu->r[31] + 0x00000004u;
|
|
/* 0252E448 */ cpu->r[12] = rbrew_read32(cpu->mem, _t44);
|
|
/* 0252E44C */ _t45 = cpu->r[12] + 0x00000244u;
|
|
/* 0252E44C */ cpu->r[7] = rbrew_read32(cpu->mem, _t45);
|
|
/* 0252E450 */ cpu->r[4] = 0x00000000u;
|
|
/* 0252E454 */ cpu->ctr = cpu->r[7];
|
|
/* 0252E458 */ cpu->r[6] = cpu->r[4];
|
|
/* 0252E45C */ cpu->r[3] = cpu->r[31];
|
|
/* 0252E460 */ cpu->r[5] = cpu->r[1] + 0x000000ECu;
|
|
/* 0252E464 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252E468 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252E46C */ _t46 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252E46C */ _t47 = _t46 & 0x00000001u;
|
|
/* 0252E46C */ if (_t47) goto L_0252E500; else goto L_0252E470;
|
|
L_0252E470: ; // 0x252e470
|
|
/* 0252E470 */ _t48 = cpu->r[22] + 0x0000002Cu;
|
|
/* 0252E470 */ cpu->r[0] = rbrew_read32(cpu->mem, _t48);
|
|
/* 0252E474 */ _t49 = cpu->r[31] + 0x00000004u;
|
|
/* 0252E474 */ cpu->r[8] = rbrew_read32(cpu->mem, _t49);
|
|
/* 0252E478 */ _t50 = cpu->r[1] + 0x00000008u;
|
|
/* 0252E478 */ rbrew_write32(cpu->mem, _t50, cpu->r[23]);
|
|
/* 0252E47C */ _t51 = cpu->r[1] + 0x00000024u;
|
|
/* 0252E47C */ rbrew_write32(cpu->mem, _t51, cpu->r[0]);
|
|
/* 0252E480 */ _t52 = cpu->r[8] + 0x0000024Cu;
|
|
/* 0252E480 */ cpu->r[11] = rbrew_read32(cpu->mem, _t52);
|
|
/* 0252E484 */ cpu->r[4] = 0x00000000u;
|
|
/* 0252E488 */ cpu->ctr = cpu->r[11];
|
|
/* 0252E48C */ cpu->r[6] = cpu->r[22] + 0x00000078u;
|
|
/* 0252E490 */ cpu->r[3] = cpu->r[31];
|
|
/* 0252E494 */ cpu->r[5] = cpu->r[1] + 0x00000100u;
|
|
/* 0252E498 */ cpu->r[9] = cpu->r[4];
|
|
/* 0252E49C */ cpu->r[8] = cpu->r[1] + 0x00000024u;
|
|
/* 0252E4A0 */ cpu->r[10] = cpu->r[4];
|
|
/* 0252E4A4 */ cpu->r[7] = 0x0000000Bu;
|
|
/* 0252E4A8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252E4AC */ _t53 = cpu->r[26] + 0x00000000u;
|
|
/* 0252E4AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t53);
|
|
/* 0252E4B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0252E4B4 */ _t54 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252E4B4 */ _t55 = _t54 & 0x00000001u;
|
|
/* 0252E4B4 */ if (_t55) goto L_0252E4B8; else goto L_0252E4C8;
|
|
L_0252E4B8: ; // 0x252e4b8
|
|
/* 0252E4B8 */ cpu->r[0] = 0x100C0000u;
|
|
/* 0252E4BC */ _t56 = cpu->r[26] + 0x00000000u;
|
|
/* 0252E4BC */ rbrew_write32(cpu->mem, _t56, cpu->r[28]);
|
|
/* 0252E4C0 */ cpu->r[0] = cpu->r[0] + 0x00003B60u;
|
|
/* 0252E4C4 */ _t57 = cpu->r[24] + 0x00000000u;
|
|
/* 0252E4C4 */ rbrew_write32(cpu->mem, _t57, cpu->r[0]);
|
|
L_0252E4C8: ; // 0x252e4c8
|
|
/* 0252E4C8 */ _t58 = cpu->r[31] + 0x00000004u;
|
|
/* 0252E4C8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t58);
|
|
/* 0252E4CC */ _t59 = cpu->r[6] + 0x00000014u;
|
|
/* 0252E4CC */ cpu->r[7] = rbrew_read32(cpu->mem, _t59);
|
|
/* 0252E4D0 */ cpu->ctr = cpu->r[7];
|
|
/* 0252E4D4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0252E4D8 */ cpu->r[4] = cpu->r[24];
|
|
/* 0252E4DC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252E4E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252E4E4 */ _t60 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252E4E4 */ _t61 = _t60 & 0x00000001u;
|
|
/* 0252E4E4 */ if (_t61) goto L_0252E4F0; else goto L_0252E4E8;
|
|
L_0252E4E8: ; // 0x252e4e8
|
|
/* 0252E4E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0252E4EC */ _t62 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252E4EC */ _t63 = _t62 & 0x00000001u;
|
|
/* 0252E4EC */ if (_t63) goto L_0252E4F0; else goto L_0252E500;
|
|
L_0252E4F0: ; // 0x252e4f0
|
|
/* 0252E4F0 */ _t64 = cpu->r[22] + 0x000001FCu;
|
|
/* 0252E4F0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t64);
|
|
/* 0252E4F4 */ cpu->r[0] = cpu->r[10] + 0x00000002u;
|
|
/* 0252E4F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000000Du);
|
|
/* 0252E4FC */ _t65 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252E4FC */ _t66 = _t65 & 0x00000001u;
|
|
/* 0252E4FC */ if (_t66) goto L_0252E500; else goto L_0252E51C;
|
|
L_0252E500: ; // 0x252e500
|
|
/* 0252E500 */ _t67 = cpu->r[22] + 0x000001E8u;
|
|
/* 0252E500 */ cpu->r[4] = rbrew_read32(cpu->mem, _t67);
|
|
/* 0252E504 */ _t68 = cpu->r[20] + 0x00000000u;
|
|
/* 0252E504 */ cpu->r[5] = rbrew_read32(cpu->mem, _t68);
|
|
/* 0252E508 */ _t69 = cpu->r[4] + 0x00000108u;
|
|
/* 0252E508 */ cpu->r[3] = rbrew_read32(cpu->mem, _t69);
|
|
/* 0252E50C */ Gambit_fn_02031DAC(cpu);
|
|
/* 0252E510 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252E514 */ _t70 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252E514 */ _t71 = _t70 & 0x00000001u;
|
|
/* 0252E514 */ if (_t71) goto L_0252E518; else goto L_0252E430;
|
|
L_0252E518: ; // 0x252e518
|
|
/* 0252E518 */ goto L_0252E8DC;
|
|
L_0252E51C: ; // 0x252e51c
|
|
/* 0252E51C */ _t72 = cpu->r[1] + 0x00000064u;
|
|
/* 0252E51C */ rbrew_write32(cpu->mem, _t72, cpu->r[23]);
|
|
/* 0252E520 */ cpu->r[8] = 0x100C0000u;
|
|
/* 0252E524 */ _t73 = cpu->r[1] + 0x00000068u;
|
|
/* 0252E524 */ rbrew_write32(cpu->mem, _t73, cpu->r[23]);
|
|
/* 0252E528 */ cpu->r[19] = 0x101F0000u;
|
|
/* 0252E52C */ _t74 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0252E52C */ rbrew_write32(cpu->mem, _t74, cpu->r[23]);
|
|
/* 0252E530 */ cpu->r[8] = cpu->r[8] + 0x00003B80u;
|
|
/* 0252E534 */ _t75 = cpu->r[1] + 0x00000058u;
|
|
/* 0252E534 */ rbrew_write32(cpu->mem, _t75, cpu->r[23]);
|
|
/* 0252E538 */ cpu->r[19] = cpu->r[19] + 0xFFFF9BD8u;
|
|
/* 0252E53C */ _t76 = cpu->r[1] + 0x00000078u;
|
|
/* 0252E53C */ rbrew_write32(cpu->mem, _t76, cpu->r[8]);
|
|
/* 0252E540 */ cpu->r[11] = 0x100C0000u;
|
|
/* 0252E544 */ _t77 = cpu->r[1] + 0x00000074u;
|
|
/* 0252E544 */ rbrew_write32(cpu->mem, _t77, cpu->r[23]);
|
|
/* 0252E548 */ cpu->r[11] = cpu->r[11] + 0x00003B40u;
|
|
/* 0252E54C */ _t78 = cpu->r[19] + 0x00000004u;
|
|
/* 0252E54C */ cpu->r[12] = rbrew_read32(cpu->mem, _t78);
|
|
/* 0252E550 */ _t79 = cpu->r[1] + 0x00000060u;
|
|
/* 0252E550 */ rbrew_write32(cpu->mem, _t79, cpu->r[11]);
|
|
/* 0252E554 */ _t80 = cpu->r[1] + 0x0000006Cu;
|
|
/* 0252E554 */ rbrew_write32(cpu->mem, _t80, cpu->r[8]);
|
|
/* 0252E558 */ _t81 = cpu->r[1] + 0x00000070u;
|
|
/* 0252E558 */ rbrew_write32(cpu->mem, _t81, cpu->r[23]);
|
|
/* 0252E55C */ _t82 = cpu->r[12] + 0x00000014u;
|
|
/* 0252E55C */ cpu->r[0] = rbrew_read32(cpu->mem, _t82);
|
|
/* 0252E560 */ cpu->ctr = cpu->r[0];
|
|
/* 0252E564 */ cpu->r[3] = cpu->r[19];
|
|
/* 0252E568 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252E56C */ _t83 = cpu->r[22] + 0x00000030u;
|
|
/* 0252E56C */ cpu->r[3] = rbrew_read32(cpu->mem, _t83);
|
|
/* 0252E570 */ cpu->r[4] = cpu->r[1] + 0x00000058u;
|
|
/* 0252E574 */ _t84 = cpu->r[19] + 0x00000000u;
|
|
/* 0252E574 */ cpu->r[5] = rbrew_read32(cpu->mem, _t84);
|
|
/* 0252E578 */ cpu->r[6] = 0x00000000u;
|
|
/* 0252E57C */ Gambit_fn_027B72F0(cpu);
|
|
/* 0252E580 */ cpu->r[19] = 0x101F0000u;
|
|
/* 0252E584 */ cpu->r[19] = cpu->r[19] + 0xFFFF9BE8u;
|
|
/* 0252E588 */ _t85 = cpu->r[19] + 0x00000004u;
|
|
/* 0252E588 */ cpu->r[12] = rbrew_read32(cpu->mem, _t85);
|
|
/* 0252E58C */ _t86 = cpu->r[12] + 0x00000014u;
|
|
/* 0252E58C */ cpu->r[5] = rbrew_read32(cpu->mem, _t86);
|
|
/* 0252E590 */ _t87 = cpu->r[22] + 0x00000030u;
|
|
/* 0252E590 */ cpu->r[11] = rbrew_read32(cpu->mem, _t87);
|
|
/* 0252E594 */ cpu->ctr = cpu->r[5];
|
|
/* 0252E598 */ _t88 = cpu->r[11] + 0x000000E0u;
|
|
/* 0252E598 */ cpu->r[18] = rbrew_read32(cpu->mem, _t88);
|
|
/* 0252E59C */ cpu->r[3] = cpu->r[19];
|
|
/* 0252E5A0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252E5A4 */ _t89 = cpu->r[18] + 0x0000003Cu;
|
|
/* 0252E5A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t89);
|
|
/* 0252E5A8 */ _t90 = cpu->r[22] + 0x00000030u;
|
|
/* 0252E5A8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t90);
|
|
/* 0252E5AC */ cpu->ctr = cpu->r[0];
|
|
/* 0252E5B0 */ _t91 = cpu->r[19] + 0x00000000u;
|
|
/* 0252E5B0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t91);
|
|
/* 0252E5B4 */ cpu->r[4] = cpu->r[1] + 0x00000064u;
|
|
/* 0252E5B8 */ cpu->r[6] = 0x00000000u;
|
|
/* 0252E5BC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252E5C0 */ cpu->r[19] = 0x101F0000u;
|
|
/* 0252E5C4 */ cpu->r[19] = cpu->r[19] + 0xFFFF9BF0u;
|
|
/* 0252E5C8 */ _t92 = cpu->r[19] + 0x00000004u;
|
|
/* 0252E5C8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t92);
|
|
/* 0252E5CC */ _t93 = cpu->r[8] + 0x00000014u;
|
|
/* 0252E5CC */ cpu->r[9] = rbrew_read32(cpu->mem, _t93);
|
|
/* 0252E5D0 */ _t94 = cpu->r[22] + 0x00000030u;
|
|
/* 0252E5D0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t94);
|
|
/* 0252E5D4 */ cpu->ctr = cpu->r[9];
|
|
/* 0252E5D8 */ _t95 = cpu->r[7] + 0x000000E0u;
|
|
/* 0252E5D8 */ cpu->r[18] = rbrew_read32(cpu->mem, _t95);
|
|
/* 0252E5DC */ cpu->r[3] = cpu->r[19];
|
|
/* 0252E5E0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252E5E4 */ _t96 = cpu->r[18] + 0x0000003Cu;
|
|
/* 0252E5E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t96);
|
|
/* 0252E5E8 */ _t97 = cpu->r[19] + 0x00000000u;
|
|
/* 0252E5E8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t97);
|
|
/* 0252E5EC */ cpu->ctr = cpu->r[0];
|
|
/* 0252E5F0 */ _t98 = cpu->r[22] + 0x00000030u;
|
|
/* 0252E5F0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t98);
|
|
/* 0252E5F4 */ cpu->r[6] = 0x00000000u;
|
|
/* 0252E5F8 */ cpu->r[4] = cpu->r[1] + 0x00000070u;
|
|
/* 0252E5FC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252E600 */ _t99 = cpu->r[22] + 0x000001FCu;
|
|
/* 0252E600 */ cpu->r[11] = rbrew_read32(cpu->mem, _t99);
|
|
/* 0252E604 */ cpu->r[11] = cpu->r[11] + 0x00000002u;
|
|
/* 0252E608 */ cpu->r[3] = cpu->r[31];
|
|
/* 0252E60C */ _t100 = cpu->r[22] + 0x000001FCu;
|
|
/* 0252E60C */ rbrew_write32(cpu->mem, _t100, cpu->r[11]);
|
|
/* 0252E610 */ Gambit_fn_021BC86C(cpu);
|
|
/* 0252E614 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], 0x00000001u);
|
|
/* 0252E618 */ _t101 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0252E618 */ _t102 = _t101 & 0x00000001u;
|
|
/* 0252E618 */ if (_t102) goto L_0252E67C; else goto L_0252E61C;
|
|
L_0252E61C: ; // 0x252e61c
|
|
/* 0252E61C */ _t103 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252E61C */ _t104 = _t103 & 0x00000001u;
|
|
/* 0252E61C */ if (_t104) goto L_0252E6C8; else goto L_0252E620;
|
|
L_0252E620: ; // 0x252e620
|
|
/* 0252E620 */ _t105 = cpu->r[22] + 0x00000080u;
|
|
/* 0252E620 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t105);
|
|
/* 0252E624 */ _t106 = cpu->r[1] + 0x00000014u;
|
|
/* 0252E624 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t106);
|
|
/* 0252E628 */ /* nop */
|
|
/* 0252E62C */ cpu->f[11] = cpu->f[0] - cpu->f[12];
|
|
/* 0252E630 */ /* nop */
|
|
/* 0252E634 */ /* nop */
|
|
/* 0252E638 */ _t107 = cpu->r[1] + 0x00000084u;
|
|
/* 0252E638 */ rbrew_write_f32(cpu->mem, _t107, cpu->f[11]);
|
|
/* 0252E63C */ _t108 = cpu->r[1] + 0x00000084u;
|
|
/* 0252E63C */ cpu->r[6] = rbrew_read32(cpu->mem, _t108);
|
|
/* 0252E640 */ /* nop */
|
|
/* 0252E644 */ _t109 = cpu->r[1] + 0x00000080u;
|
|
/* 0252E644 */ cpu->r[5] = rbrew_read32(cpu->mem, _t109);
|
|
/* 0252E648 */ _t110 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0252E648 */ cpu->r[0] = rbrew_read32(cpu->mem, _t110);
|
|
/* 0252E64C */ _t111 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252E64C */ rbrew_write32(cpu->mem, _t111, cpu->r[5]);
|
|
/* 0252E650 */ _t112 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252E650 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t112);
|
|
/* 0252E654 */ _t113 = cpu->r[1] + 0x00000018u;
|
|
/* 0252E654 */ rbrew_write32(cpu->mem, _t113, cpu->r[0]);
|
|
/* 0252E658 */ cpu->f[9] = cpu->f[11] * cpu->f[11];
|
|
/* 0252E65C */ _t114 = cpu->r[1] + 0x00000018u;
|
|
/* 0252E65C */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t114);
|
|
/* 0252E660 */ _t115 = cpu->r[1] + 0x00000020u;
|
|
/* 0252E660 */ rbrew_write32(cpu->mem, _t115, cpu->r[6]);
|
|
/* 0252E664 */ cpu->f[0] = fma(cpu->f[7], cpu->f[7], cpu->f[9]);
|
|
/* 0252E668 */ _t116 = cpu->r[1] + 0x00000020u;
|
|
/* 0252E668 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t116);
|
|
/* 0252E66C */ cpu->f[9] = fma(cpu->f[13], cpu->f[13], cpu->f[0]);
|
|
/* 0252E670 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[31]);
|
|
/* 0252E674 */ _t117 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252E674 */ _t118 = _t117 & 0x00000001u;
|
|
/* 0252E674 */ if (_t118) goto L_0252E678; else goto L_0252E7B4;
|
|
L_0252E678: ; // 0x252e678
|
|
/* 0252E678 */ goto L_0252E770;
|
|
L_0252E67C: ; // 0x252e67c
|
|
/* 0252E67C */ _t119 = cpu->r[25] + 0x00000008u;
|
|
/* 0252E67C */ cpu->r[8] = rbrew_read32(cpu->mem, _t119);
|
|
/* 0252E680 */ cpu->r[3] = cpu->r[31];
|
|
/* 0252E684 */ _t120 = cpu->r[25] + 0x00000000u;
|
|
/* 0252E684 */ cpu->r[6] = rbrew_read32(cpu->mem, _t120);
|
|
/* 0252E688 */ _t121 = cpu->r[1] + 0x00000094u;
|
|
/* 0252E688 */ rbrew_write32(cpu->mem, _t121, cpu->r[8]);
|
|
/* 0252E68C */ _t122 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0252E68C */ rbrew_write32(cpu->mem, _t122, cpu->r[6]);
|
|
/* 0252E690 */ _t123 = cpu->r[25] + 0x00000004u;
|
|
/* 0252E690 */ cpu->r[7] = rbrew_read32(cpu->mem, _t123);
|
|
/* 0252E694 */ cpu->r[4] = cpu->r[1] + 0x00000088u;
|
|
/* 0252E698 */ _t124 = cpu->r[1] + 0x00000098u;
|
|
/* 0252E698 */ rbrew_write_f32(cpu->mem, _t124, cpu->f[31]);
|
|
/* 0252E69C */ _t125 = cpu->r[1] + 0x00000088u;
|
|
/* 0252E69C */ rbrew_write32(cpu->mem, _t125, cpu->r[29]);
|
|
/* 0252E6A0 */ cpu->r[5] = cpu->r[22] + 0x00000078u;
|
|
/* 0252E6A4 */ _t126 = cpu->r[1] + 0x00000090u;
|
|
/* 0252E6A4 */ rbrew_write32(cpu->mem, _t126, cpu->r[7]);
|
|
/* 0252E6A8 */ Gambit_fn_021BC87C(cpu);
|
|
/* 0252E6AC */ _t127 = cpu->r[1] + 0x00000090u;
|
|
/* 0252E6AC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t127);
|
|
/* 0252E6B0 */ _t128 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0252E6B0 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t128);
|
|
/* 0252E6B4 */ _t129 = cpu->r[1] + 0x00000094u;
|
|
/* 0252E6B4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t129);
|
|
/* 0252E6B8 */ _t130 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252E6B8 */ rbrew_write_f32(cpu->mem, _t130, cpu->f[8]);
|
|
/* 0252E6BC */ _t131 = cpu->r[1] + 0x00000010u;
|
|
/* 0252E6BC */ rbrew_write_f32(cpu->mem, _t131, cpu->f[12]);
|
|
/* 0252E6C0 */ _t132 = cpu->r[1] + 0x00000014u;
|
|
/* 0252E6C0 */ rbrew_write_f32(cpu->mem, _t132, cpu->f[0]);
|
|
/* 0252E6C4 */ goto L_0252E71C;
|
|
L_0252E6C8: ; // 0x252e6c8
|
|
/* 0252E6C8 */ _t133 = cpu->r[25] + 0x00000000u;
|
|
/* 0252E6C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t133);
|
|
/* 0252E6CC */ _t134 = cpu->r[25] + 0x00000004u;
|
|
/* 0252E6CC */ cpu->r[5] = rbrew_read32(cpu->mem, _t134);
|
|
/* 0252E6D0 */ _t135 = cpu->r[1] + 0x000000D0u;
|
|
/* 0252E6D0 */ rbrew_write32(cpu->mem, _t135, cpu->r[0]);
|
|
/* 0252E6D4 */ _t136 = cpu->r[1] + 0x000000D4u;
|
|
/* 0252E6D4 */ rbrew_write32(cpu->mem, _t136, cpu->r[5]);
|
|
/* 0252E6D8 */ _t137 = cpu->r[1] + 0x000000E0u;
|
|
/* 0252E6D8 */ rbrew_write32(cpu->mem, _t137, cpu->r[5]);
|
|
/* 0252E6DC */ cpu->r[4] = cpu->r[1] + 0x000000CCu;
|
|
/* 0252E6E0 */ _t138 = cpu->r[1] + 0x000000DCu;
|
|
/* 0252E6E0 */ rbrew_write32(cpu->mem, _t138, cpu->r[0]);
|
|
/* 0252E6E4 */ _t139 = cpu->r[25] + 0x00000008u;
|
|
/* 0252E6E4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t139);
|
|
/* 0252E6E8 */ _t140 = cpu->r[1] + 0x000000CCu;
|
|
/* 0252E6E8 */ rbrew_write32(cpu->mem, _t140, cpu->r[30]);
|
|
/* 0252E6EC */ _t141 = cpu->r[1] + 0x000000E4u;
|
|
/* 0252E6EC */ rbrew_write32(cpu->mem, _t141, cpu->r[6]);
|
|
/* 0252E6F0 */ cpu->r[5] = cpu->r[22] + 0x00000078u;
|
|
/* 0252E6F4 */ _t142 = cpu->r[1] + 0x000000E8u;
|
|
/* 0252E6F4 */ rbrew_write_f32(cpu->mem, _t142, cpu->f[31]);
|
|
/* 0252E6F8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0252E6FC */ _t143 = cpu->r[1] + 0x000000D8u;
|
|
/* 0252E6FC */ rbrew_write32(cpu->mem, _t143, cpu->r[6]);
|
|
/* 0252E700 */ Gambit_fn_021BC88C(cpu);
|
|
/* 0252E704 */ _t144 = cpu->r[1] + 0x000000DCu;
|
|
/* 0252E704 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t144);
|
|
/* 0252E708 */ _t145 = cpu->r[1] + 0x000000E0u;
|
|
/* 0252E708 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t145);
|
|
/* 0252E70C */ _t146 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252E70C */ rbrew_write_f32(cpu->mem, _t146, cpu->f[11]);
|
|
/* 0252E710 */ _t147 = cpu->r[1] + 0x000000E4u;
|
|
/* 0252E710 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t147);
|
|
/* 0252E714 */ _t148 = cpu->r[1] + 0x00000010u;
|
|
/* 0252E714 */ rbrew_write_f32(cpu->mem, _t148, cpu->f[13]);
|
|
/* 0252E718 */ _t149 = cpu->r[1] + 0x00000014u;
|
|
/* 0252E718 */ rbrew_write_f32(cpu->mem, _t149, cpu->f[0]);
|
|
L_0252E71C: ; // 0x252e71c
|
|
/* 0252E71C */ _t150 = cpu->r[22] + 0x00000080u;
|
|
/* 0252E71C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t150);
|
|
/* 0252E720 */ /* nop */
|
|
/* 0252E724 */ cpu->f[11] = cpu->f[0] - cpu->f[12];
|
|
/* 0252E728 */ /* nop */
|
|
/* 0252E72C */ /* nop */
|
|
/* 0252E730 */ _t151 = cpu->r[1] + 0x00000084u;
|
|
/* 0252E730 */ rbrew_write_f32(cpu->mem, _t151, cpu->f[11]);
|
|
/* 0252E734 */ _t152 = cpu->r[1] + 0x00000084u;
|
|
/* 0252E734 */ cpu->r[6] = rbrew_read32(cpu->mem, _t152);
|
|
/* 0252E738 */ /* nop */
|
|
/* 0252E73C */ _t153 = cpu->r[1] + 0x00000080u;
|
|
/* 0252E73C */ cpu->r[5] = rbrew_read32(cpu->mem, _t153);
|
|
/* 0252E740 */ _t154 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0252E740 */ cpu->r[0] = rbrew_read32(cpu->mem, _t154);
|
|
/* 0252E744 */ _t155 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252E744 */ rbrew_write32(cpu->mem, _t155, cpu->r[5]);
|
|
/* 0252E748 */ _t156 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252E748 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t156);
|
|
/* 0252E74C */ _t157 = cpu->r[1] + 0x00000018u;
|
|
/* 0252E74C */ rbrew_write32(cpu->mem, _t157, cpu->r[0]);
|
|
/* 0252E750 */ cpu->f[9] = cpu->f[11] * cpu->f[11];
|
|
/* 0252E754 */ _t158 = cpu->r[1] + 0x00000018u;
|
|
/* 0252E754 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t158);
|
|
/* 0252E758 */ _t159 = cpu->r[1] + 0x00000020u;
|
|
/* 0252E758 */ rbrew_write32(cpu->mem, _t159, cpu->r[6]);
|
|
/* 0252E75C */ cpu->f[0] = fma(cpu->f[7], cpu->f[7], cpu->f[9]);
|
|
/* 0252E760 */ _t160 = cpu->r[1] + 0x00000020u;
|
|
/* 0252E760 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t160);
|
|
/* 0252E764 */ cpu->f[9] = fma(cpu->f[13], cpu->f[13], cpu->f[0]);
|
|
/* 0252E768 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[31]);
|
|
/* 0252E76C */ _t161 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252E76C */ _t162 = _t161 & 0x00000001u;
|
|
/* 0252E76C */ if (_t162) goto L_0252E770; else goto L_0252E7B4;
|
|
L_0252E770: ; // 0x252e770
|
|
/* 0252E770 */ cpu->r[12] = 0x100C0000u;
|
|
/* 0252E774 */ cpu->r[11] = 0x100C0000u;
|
|
/* 0252E778 */ _t163 = cpu->r[12] + 0x00003C48u;
|
|
/* 0252E778 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t163);
|
|
/* 0252E77C */ _t164 = cpu->r[11] + 0x00003C44u;
|
|
/* 0252E77C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t164);
|
|
/* 0252E780 */ _ft165 = sqrt(cpu->f[9]);
|
|
/* 0252E780 */ _ft166 = (double)(int32_t)0x00000001u;
|
|
/* 0252E780 */ cpu->f[27] = _ft166 / _ft165;
|
|
/* 0252E784 */ cpu->f[29] = cpu->f[27] * cpu->f[27];
|
|
/* 0252E788 */ cpu->f[30] = cpu->f[27] * cpu->f[12];
|
|
/* 0252E78C */ cpu->f[29] = -fma(cpu->f[29], cpu->f[9], -(cpu->f[13]));
|
|
/* 0252E790 */ cpu->f[27] = cpu->f[29] * cpu->f[30];
|
|
/* 0252E794 */ /* nop */
|
|
/* 0252E798 */ _t167 = cpu->r[1] + 0x00000020u;
|
|
/* 0252E798 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t167);
|
|
/* 0252E79C */ /* nop */
|
|
/* 0252E7A0 */ /* nop */
|
|
/* 0252E7A4 */ cpu->f[13] = cpu->f[13] * cpu->f[27];
|
|
/* 0252E7A8 */ _t168 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252E7A8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t168);
|
|
/* 0252E7AC */ _t169 = cpu->r[1] + 0x00000018u;
|
|
/* 0252E7AC */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t169);
|
|
/* 0252E7B0 */ _t170 = cpu->r[1] + 0x00000020u;
|
|
/* 0252E7B0 */ rbrew_write_f32(cpu->mem, _t170, cpu->f[13]);
|
|
L_0252E7B4: ; // 0x252e7b4
|
|
/* 0252E7B4 */ cpu->r[9] = 0x00000003u;
|
|
/* 0252E7B8 */ cpu->r[7] = cpu->r[22] + 0x00000050u;
|
|
/* 0252E7BC */ cpu->ctr = cpu->r[9];
|
|
/* 0252E7C0 */ cpu->r[8] = cpu->r[1] + 0x00000098u;
|
|
L_0252E7C4: ; // 0x252e7c4
|
|
/* 0252E7C4 */ _t171 = cpu->r[7] + 0x00000004u;
|
|
/* 0252E7C4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t171);
|
|
/* 0252E7C8 */ _t172 = cpu->r[8] + 0x00000004u;
|
|
/* 0252E7C8 */ rbrew_write32(cpu->mem, _t172, cpu->r[10]);
|
|
/* 0252E7CC */ _t173 = cpu->r[7] + 0x00000008u;
|
|
/* 0252E7CC */ cpu->r[11] = rbrew_read32(cpu->mem, _t173);
|
|
/* 0252E7D0 */ _t174 = cpu->r[8] + 0x00000008u;
|
|
/* 0252E7D0 */ rbrew_write32(cpu->mem, _t174, cpu->r[11]);
|
|
/* 0252E7D4 */ _t175 = cpu->r[7] + 0x0000000Cu;
|
|
/* 0252E7D4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t175);
|
|
/* 0252E7D8 */ _t176 = cpu->r[8] + 0x0000000Cu;
|
|
/* 0252E7D8 */ rbrew_write32(cpu->mem, _t176, cpu->r[12]);
|
|
/* 0252E7DC */ _t177 = cpu->r[7] + 0x00000010u;
|
|
/* 0252E7DC */ cpu->r[5] = rbrew_read32(cpu->mem, _t177);
|
|
/* 0252E7DC */ cpu->r[7] = _t177;
|
|
/* 0252E7E0 */ _t178 = cpu->r[8] + 0x00000010u;
|
|
/* 0252E7E0 */ rbrew_write32(cpu->mem, _t178, cpu->r[5]);
|
|
/* 0252E7E0 */ cpu->r[8] = _t178;
|
|
/* 0252E7E4 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0252E7E4 */ _t179 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0252E7E4 */ _t180 = _t179 >> (0x00000002u & 31u);
|
|
/* 0252E7E4 */ _t181 = _t180 & 0x00000001u;
|
|
/* 0252E7E4 */ if (_t181) goto L_0252E7C4; else goto L_0252E7E8;
|
|
L_0252E7E8: ; // 0x252e7e8
|
|
/* 0252E7E8 */ _t182 = cpu->r[1] + 0x000000ACu;
|
|
/* 0252E7E8 */ rbrew_write_f32(cpu->mem, _t182, cpu->f[11]);
|
|
/* 0252E7EC */ cpu->r[3] = cpu->r[1] + 0x0000009Cu;
|
|
/* 0252E7F0 */ cpu->r[4] = 0x100C0000u;
|
|
/* 0252E7F4 */ _t183 = cpu->r[1] + 0x000000A8u;
|
|
/* 0252E7F4 */ rbrew_write_f32(cpu->mem, _t183, cpu->f[7]);
|
|
/* 0252E7F8 */ cpu->r[5] = 0x00000320u;
|
|
/* 0252E7FC */ cpu->r[4] = cpu->r[4] + 0x00003C74u;
|
|
/* 0252E800 */ _t184 = cpu->r[1] + 0x000000B0u;
|
|
/* 0252E800 */ rbrew_write_f32(cpu->mem, _t184, cpu->f[13]);
|
|
/* 0252E804 */ Gambit_fn_0204D380(cpu);
|
|
/* 0252E808 */ _t185 = cpu->r[1] + 0x0000009Cu;
|
|
/* 0252E808 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t185);
|
|
/* 0252E80C */ _t186 = cpu->r[1] + 0x000000B8u;
|
|
/* 0252E80C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t186);
|
|
/* 0252E810 */ _t187 = cpu->r[1] + 0x00000028u;
|
|
/* 0252E810 */ rbrew_write_f32(cpu->mem, _t187, cpu->f[12]);
|
|
/* 0252E814 */ _t188 = cpu->r[1] + 0x000000A4u;
|
|
/* 0252E814 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t188);
|
|
/* 0252E818 */ _t189 = cpu->r[1] + 0x00000040u;
|
|
/* 0252E818 */ rbrew_write_f32(cpu->mem, _t189, cpu->f[11]);
|
|
/* 0252E81C */ _t190 = cpu->r[1] + 0x00000048u;
|
|
/* 0252E81C */ rbrew_write_f32(cpu->mem, _t190, cpu->f[10]);
|
|
/* 0252E820 */ _t191 = cpu->r[1] + 0x000000C0u;
|
|
/* 0252E820 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t191);
|
|
/* 0252E824 */ _t192 = cpu->r[1] + 0x000000ACu;
|
|
/* 0252E824 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t192);
|
|
/* 0252E828 */ _t193 = cpu->r[1] + 0x000000A8u;
|
|
/* 0252E828 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t193);
|
|
/* 0252E82C */ _t194 = cpu->r[1] + 0x000000A0u;
|
|
/* 0252E82C */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t194);
|
|
/* 0252E830 */ _t195 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0252E830 */ rbrew_write_f32(cpu->mem, _t195, cpu->f[8]);
|
|
/* 0252E834 */ _t196 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0252E834 */ rbrew_write_f32(cpu->mem, _t196, cpu->f[9]);
|
|
/* 0252E838 */ _t197 = cpu->r[1] + 0x000000BCu;
|
|
/* 0252E838 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t197);
|
|
/* 0252E83C */ _t198 = cpu->r[1] + 0x00000038u;
|
|
/* 0252E83C */ rbrew_write_f32(cpu->mem, _t198, cpu->f[7]);
|
|
/* 0252E840 */ _t199 = cpu->r[1] + 0x00000058u;
|
|
/* 0252E840 */ cpu->r[31] = rbrew_read32(cpu->mem, _t199);
|
|
/* 0252E844 */ _t200 = cpu->r[1] + 0x000000C8u;
|
|
/* 0252E844 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t200);
|
|
/* 0252E848 */ _t201 = cpu->r[1] + 0x000000B4u;
|
|
/* 0252E848 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t201);
|
|
/* 0252E84C */ _t202 = cpu->r[1] + 0x00000054u;
|
|
/* 0252E84C */ rbrew_write_f32(cpu->mem, _t202, cpu->f[9]);
|
|
/* 0252E850 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0252E854 */ _t203 = cpu->r[1] + 0x00000030u;
|
|
/* 0252E854 */ rbrew_write_f32(cpu->mem, _t203, cpu->f[13]);
|
|
/* 0252E858 */ _t204 = cpu->r[1] + 0x000000C4u;
|
|
/* 0252E858 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t204);
|
|
/* 0252E85C */ _t205 = cpu->r[1] + 0x00000034u;
|
|
/* 0252E85C */ rbrew_write_f32(cpu->mem, _t205, cpu->f[0]);
|
|
/* 0252E860 */ _t206 = cpu->r[1] + 0x00000044u;
|
|
/* 0252E860 */ rbrew_write_f32(cpu->mem, _t206, cpu->f[12]);
|
|
/* 0252E864 */ _t207 = cpu->r[1] + 0x000000B0u;
|
|
/* 0252E864 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t207);
|
|
/* 0252E868 */ _t208 = cpu->r[1] + 0x00000050u;
|
|
/* 0252E868 */ rbrew_write_f32(cpu->mem, _t208, cpu->f[8]);
|
|
/* 0252E86C */ cpu->f[26] = cpu->f[28];
|
|
/* 0252E870 */ _t209 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0252E870 */ rbrew_write_f32(cpu->mem, _t209, cpu->f[13]);
|
|
/* 0252E874 */ _t210 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252E874 */ _t211 = _t210 & 0x00000001u;
|
|
/* 0252E874 */ if (_t211) goto L_0252E8AC; else goto L_0252E878;
|
|
L_0252E878: ; // 0x252e878
|
|
/* 0252E878 */ _t212 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0252E878 */ cpu->r[0] = rbrew_read32(cpu->mem, _t212);
|
|
/* 0252E87C */ _t213 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0252E87C */ cpu->r[5] = rbrew_read32(cpu->mem, _t213);
|
|
/* 0252E880 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[5]);
|
|
/* 0252E884 */ _t214 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252E884 */ _t215 = _t214 & 0x00000001u;
|
|
/* 0252E884 */ if (_t215) goto L_0252E888; else goto L_0252E8AC;
|
|
L_0252E888: ; // 0x252e888
|
|
/* 0252E888 */ cpu->r[3] = cpu->r[27];
|
|
/* 0252E88C */ cpu->r[4] = cpu->r[31] + 0x0000007Cu;
|
|
/* 0252E890 */ Gambit_fn_02C69510(cpu);
|
|
/* 0252E894 */ _t216 = cpu->r[31] + 0x0000012Cu;
|
|
/* 0252E894 */ cpu->r[6] = rbrew_read32(cpu->mem, _t216);
|
|
/* 0252E898 */ _t217 = cpu->r[31] + 0x00000074u;
|
|
/* 0252E898 */ rbrew_write_f32(cpu->mem, _t217, cpu->f[26]);
|
|
/* 0252E89C */ cpu->r[6] = cpu->r[6] | 0x00000008u;
|
|
/* 0252E8A0 */ _t218 = cpu->r[31] + 0x00000070u;
|
|
/* 0252E8A0 */ rbrew_write_f32(cpu->mem, _t218, cpu->f[26]);
|
|
/* 0252E8A4 */ _t219 = cpu->r[31] + 0x0000012Cu;
|
|
/* 0252E8A4 */ rbrew_write32(cpu->mem, _t219, cpu->r[6]);
|
|
/* 0252E8A8 */ _t220 = cpu->r[31] + 0x00000078u;
|
|
/* 0252E8A8 */ rbrew_write_f32(cpu->mem, _t220, cpu->f[26]);
|
|
L_0252E8AC: ; // 0x252e8ac
|
|
/* 0252E8AC */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252E8B0 */ cpu->r[3] = cpu->r[1] + 0x00000064u;
|
|
/* 0252E8B4 */ Gambit_fn_028B30F0(cpu);
|
|
/* 0252E8B8 */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252E8BC */ cpu->r[3] = cpu->r[1] + 0x00000070u;
|
|
/* 0252E8C0 */ Gambit_fn_028B30F0(cpu);
|
|
/* 0252E8C4 */ _t221 = cpu->r[22] + 0x000001E8u;
|
|
/* 0252E8C4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t221);
|
|
/* 0252E8C8 */ _t222 = cpu->r[20] + 0x00000000u;
|
|
/* 0252E8C8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t222);
|
|
/* 0252E8CC */ _t223 = cpu->r[4] + 0x00000108u;
|
|
/* 0252E8CC */ cpu->r[3] = rbrew_read32(cpu->mem, _t223);
|
|
/* 0252E8D0 */ Gambit_fn_02031DAC(cpu);
|
|
/* 0252E8D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252E8D8 */ _t224 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252E8D8 */ _t225 = _t224 & 0x00000001u;
|
|
/* 0252E8D8 */ if (_t225) goto L_0252E8DC; else goto L_0252E430;
|
|
L_0252E8DC: ; // 0x252e8dc
|
|
/* 0252E8DC */ _t226 = cpu->r[22] + 0x000001E8u;
|
|
/* 0252E8DC */ cpu->r[4] = rbrew_read32(cpu->mem, _t226);
|
|
/* 0252E8E0 */ _t227 = cpu->r[21] + 0x00000000u;
|
|
/* 0252E8E0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t227);
|
|
/* 0252E8E4 */ _t228 = cpu->r[4] + 0x00000108u;
|
|
/* 0252E8E4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t228);
|
|
/* 0252E8E8 */ Gambit_fn_02031DAC(cpu);
|
|
/* 0252E8EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252E8F0 */ _t229 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252E8F0 */ _t230 = _t229 & 0x00000001u;
|
|
/* 0252E8F0 */ if (_t230) goto L_0252E8F4; else goto L_0252E430;
|
|
L_0252E8F4: ; // 0x252e8f4
|
|
/* 0252E8F4 */ /* nop */
|
|
/* 0252E8F8 */ _t231 = cpu->r[1] + 0x00000188u;
|
|
/* 0252E8F8 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t231);
|
|
/* 0252E8FC */ _t232 = cpu->r[1] + 0x00000168u;
|
|
/* 0252E8FC */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t232);
|
|
/* 0252E900 */ _t233 = cpu->r[1] + 0x00000180u;
|
|
/* 0252E900 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t233);
|
|
/* 0252E904 */ _t234 = cpu->r[1] + 0x00000160u;
|
|
/* 0252E904 */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t234);
|
|
/* 0252E908 */ _t235 = cpu->r[1] + 0x00000158u;
|
|
/* 0252E908 */ cpu->f[27] = rbrew_read_f32(cpu->mem, _t235);
|
|
/* 0252E90C */ _t236 = cpu->r[1] + 0x00000178u;
|
|
/* 0252E90C */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t236);
|
|
/* 0252E910 */ _t237 = cpu->r[1] + 0x00000150u;
|
|
/* 0252E910 */ cpu->f[27] = rbrew_read_f64(cpu->mem, _t237);
|
|
/* 0252E914 */ _t238 = cpu->r[1] + 0x00000170u;
|
|
/* 0252E914 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t238);
|
|
/* 0252E918 */ _t239 = cpu->r[1] + 0x00000148u;
|
|
/* 0252E918 */ cpu->f[26] = rbrew_read_f32(cpu->mem, _t239);
|
|
/* 0252E91C */ _t240 = cpu->r[1] + 0x00000198u;
|
|
/* 0252E91C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t240);
|
|
/* 0252E920 */ _t241 = cpu->r[1] + 0x00000140u;
|
|
/* 0252E920 */ cpu->f[26] = rbrew_read_f64(cpu->mem, _t241);
|
|
/* 0252E924 */ _t242 = cpu->r[1] + 0x00000190u;
|
|
/* 0252E924 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t242);
|
|
/* 0252E928 */ _t243 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0252E928 */ _t244 = _t243 & 0x00000001u;
|
|
/* 0252E928 */ if (_t244) goto L_0252E92C; // else: addr-0 trap, fall-through
|
|
L_0252E92C: ; // 0x252e92c
|
|
/* 0252E92C */ _t245 = cpu->r[1] + 0x000001A4u;
|
|
/* 0252E92C */ cpu->r[0] = rbrew_read32(cpu->mem, _t245);
|
|
/* 0252E930 */ cpu->lr = cpu->r[0];
|
|
/* 0252E934 */ cpu->r[1] = cpu->r[1] + 0x000001A0u;
|
|
/* 0252E938 */ return;
|
|
}
|
|
|
|
// fn_0252E93C @ 0x252e93c
|
|
void Gambit_fn_0252E93C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_0252E93C: ; // 0x252e93c
|
|
/* 0252E93C */ cpu->r[0] = cpu->lr;
|
|
/* 0252E940 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0252E940 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252E940 */ cpu->r[1] = _t0;
|
|
/* 0252E944 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252E944 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0252E948 */ cpu->r[31] = cpu->r[3];
|
|
/* 0252E94C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0252E94C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0252E950 */ Gambit_fn_024F7158(cpu);
|
|
/* 0252E954 */ cpu->r[3] = cpu->r[31];
|
|
/* 0252E958 */ Gambit_fn_0252E254(cpu);
|
|
/* 0252E95C */ cpu->r[3] = cpu->r[31];
|
|
/* 0252E960 */ Gambit_fn_0252E30C(cpu);
|
|
/* 0252E964 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0252E964 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0252E968 */ cpu->lr = cpu->r[0];
|
|
/* 0252E96C */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252E96C */ cpu->r[31] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0252E970 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0252E974 */ return;
|
|
}
|
|
|
|
// fn_0252E940 @ 0x252e940
|
|
void Gambit_fn_0252E940(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_0252E940: ; // 0x252e940
|
|
/* 0252E940 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0252E940 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252E940 */ cpu->r[1] = _t0;
|
|
/* 0252E944 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252E944 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0252E948 */ cpu->r[31] = cpu->r[3];
|
|
/* 0252E94C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0252E94C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0252E950 */ Gambit_fn_024F7158(cpu);
|
|
/* 0252E954 */ cpu->r[3] = cpu->r[31];
|
|
/* 0252E958 */ Gambit_fn_0252E254(cpu);
|
|
/* 0252E95C */ cpu->r[3] = cpu->r[31];
|
|
/* 0252E960 */ Gambit_fn_0252E30C(cpu);
|
|
/* 0252E964 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0252E964 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0252E968 */ cpu->lr = cpu->r[0];
|
|
/* 0252E96C */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252E96C */ cpu->r[31] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0252E970 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0252E974 */ return;
|
|
}
|
|
|
|
// fn_0252E978 @ 0x252e978
|
|
void Gambit_fn_0252E978(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_0252E978: ; // 0x252e978
|
|
/* 0252E978 */ cpu->r[0] = cpu->lr;
|
|
/* 0252E97C */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 0252E97C */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 0252E980 */ cpu->r[11] = cpu->r[3];
|
|
/* 0252E984 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 0252E984 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 0252E984 */ cpu->r[1] = _t1;
|
|
/* 0252E988 */ _t2 = cpu->r[11] + 0x000001BCu;
|
|
/* 0252E988 */ cpu->r[0] = rbrew_read8(cpu->mem, _t2);
|
|
/* 0252E98C */ /* nop */
|
|
/* 0252E990 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000001u);
|
|
/* 0252E994 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0252E994 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0252E994 */ if (_t4) goto L_0252E9AC; else goto L_0252E998;
|
|
L_0252E998: ; // 0x252e998
|
|
/* 0252E998 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252E998 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0252E998 */ if (_t6) goto L_0252E9D0; else goto L_0252E99C;
|
|
L_0252E99C: ; // 0x252e99c
|
|
/* 0252E99C */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252E99C */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0252E9A0 */ cpu->lr = cpu->r[0];
|
|
/* 0252E9A4 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 0252E9A8 */ return;
|
|
L_0252E9AC: ; // 0x252e9ac
|
|
/* 0252E9AC */ cpu->r[3] = cpu->r[11];
|
|
/* 0252E9B0 */ Gambit_fn_0252D2A8(cpu);
|
|
/* 0252E9B4 */ _t8 = cpu->r[11] + 0x0000020Cu;
|
|
/* 0252E9B4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 0252E9B8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[1]);
|
|
/* 0252E9BC */ _t9 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252E9BC */ _t10 = _t9 & 0x00000001u;
|
|
/* 0252E9BC */ if (_t10) goto L_0252E9C0; else goto L_0252E9F0;
|
|
L_0252E9C0: ; // 0x252e9c0
|
|
/* 0252E9C0 */ cpu->r[3] = cpu->r[11] + 0x000001B0u;
|
|
/* 0252E9C4 */ cpu->r[4] = 0x00000001u;
|
|
/* 0252E9C8 */ Gambit_fn_020189CC(cpu);
|
|
/* 0252E9CC */ goto L_0252E9F0;
|
|
L_0252E9D0: ; // 0x252e9d0
|
|
/* 0252E9D0 */ cpu->r[3] = cpu->r[11];
|
|
/* 0252E9D4 */ Gambit_fn_0252D2A8(cpu);
|
|
/* 0252E9D8 */ _t11 = cpu->r[11] + 0x0000020Cu;
|
|
/* 0252E9D8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 0252E9DC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[1]);
|
|
/* 0252E9E0 */ _t12 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252E9E0 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0252E9E0 */ if (_t13) goto L_0252E9F0; else goto L_0252E9E4;
|
|
L_0252E9E4: ; // 0x252e9e4
|
|
/* 0252E9E4 */ cpu->r[3] = cpu->r[11] + 0x000001B0u;
|
|
/* 0252E9E8 */ cpu->r[4] = 0x00000000u;
|
|
/* 0252E9EC */ Gambit_fn_020189CC(cpu);
|
|
L_0252E9F0: ; // 0x252e9f0
|
|
/* 0252E9F0 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252E9F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0252E9F4 */ cpu->lr = cpu->r[0];
|
|
/* 0252E9F8 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 0252E9FC */ return;
|
|
}
|
|
|
|
// fn_0252E984 @ 0x252e984
|
|
void Gambit_fn_0252E984(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0252E984: ; // 0x252e984
|
|
/* 0252E984 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 0252E984 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252E984 */ cpu->r[1] = _t0;
|
|
/* 0252E988 */ _t1 = cpu->r[11] + 0x000001BCu;
|
|
/* 0252E988 */ cpu->r[0] = rbrew_read8(cpu->mem, _t1);
|
|
/* 0252E98C */ /* nop */
|
|
/* 0252E990 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000001u);
|
|
/* 0252E994 */ _t2 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0252E994 */ _t3 = _t2 & 0x00000001u;
|
|
/* 0252E994 */ if (_t3) goto L_0252E9AC; else goto L_0252E998;
|
|
L_0252E998: ; // 0x252e998
|
|
/* 0252E998 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252E998 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0252E998 */ if (_t5) goto L_0252E9D0; else goto L_0252E99C;
|
|
L_0252E99C: ; // 0x252e99c
|
|
/* 0252E99C */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252E99C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0252E9A0 */ cpu->lr = cpu->r[0];
|
|
/* 0252E9A4 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 0252E9A8 */ return;
|
|
L_0252E9AC: ; // 0x252e9ac
|
|
/* 0252E9AC */ cpu->r[3] = cpu->r[11];
|
|
/* 0252E9B0 */ Gambit_fn_0252D2A8(cpu);
|
|
/* 0252E9B4 */ _t7 = cpu->r[11] + 0x0000020Cu;
|
|
/* 0252E9B4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 0252E9B8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[1]);
|
|
/* 0252E9BC */ _t8 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252E9BC */ _t9 = _t8 & 0x00000001u;
|
|
/* 0252E9BC */ if (_t9) goto L_0252E9C0; else goto L_0252E9F0;
|
|
L_0252E9C0: ; // 0x252e9c0
|
|
/* 0252E9C0 */ cpu->r[3] = cpu->r[11] + 0x000001B0u;
|
|
/* 0252E9C4 */ cpu->r[4] = 0x00000001u;
|
|
/* 0252E9C8 */ Gambit_fn_020189CC(cpu);
|
|
/* 0252E9CC */ goto L_0252E9F0;
|
|
L_0252E9D0: ; // 0x252e9d0
|
|
/* 0252E9D0 */ cpu->r[3] = cpu->r[11];
|
|
/* 0252E9D4 */ Gambit_fn_0252D2A8(cpu);
|
|
/* 0252E9D8 */ _t10 = cpu->r[11] + 0x0000020Cu;
|
|
/* 0252E9D8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 0252E9DC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[1]);
|
|
/* 0252E9E0 */ _t11 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252E9E0 */ _t12 = _t11 & 0x00000001u;
|
|
/* 0252E9E0 */ if (_t12) goto L_0252E9F0; else goto L_0252E9E4;
|
|
L_0252E9E4: ; // 0x252e9e4
|
|
/* 0252E9E4 */ cpu->r[3] = cpu->r[11] + 0x000001B0u;
|
|
/* 0252E9E8 */ cpu->r[4] = 0x00000000u;
|
|
/* 0252E9EC */ Gambit_fn_020189CC(cpu);
|
|
L_0252E9F0: ; // 0x252e9f0
|
|
/* 0252E9F0 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252E9F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0252E9F4 */ cpu->lr = cpu->r[0];
|
|
/* 0252E9F8 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 0252E9FC */ return;
|
|
}
|
|
|
|
// fn_0252EA00 @ 0x252ea00
|
|
void Gambit_fn_0252EA00(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32;
|
|
|
|
L_0252EA00: ; // 0x252ea00
|
|
/* 0252EA00 */ cpu->r[0] = cpu->lr;
|
|
/* 0252EA04 */ _t0 = cpu->r[1] + 0xFFFFFFB8u;
|
|
/* 0252EA04 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252EA04 */ cpu->r[1] = _t0;
|
|
/* 0252EA08 */ cpu->r[7] = cpu->r[1] + 0x00000010u;
|
|
/* 0252EA0C */ _t1 = cpu->r[1] + 0x00000044u;
|
|
/* 0252EA0C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0252EA10 */ cpu->r[10] = 0x00000003u;
|
|
/* 0252EA14 */ cpu->ctr = cpu->r[10];
|
|
/* 0252EA18 */ cpu->r[31] = cpu->r[3];
|
|
/* 0252EA1C */ cpu->r[11] = cpu->r[4] + 0x00000050u;
|
|
/* 0252EA20 */ _t2 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0252EA20 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
L_0252EA24: ; // 0x252ea24
|
|
/* 0252EA24 */ _t3 = cpu->r[11] + 0x00000004u;
|
|
/* 0252EA24 */ cpu->r[8] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0252EA28 */ _t4 = cpu->r[7] + 0x00000004u;
|
|
/* 0252EA28 */ rbrew_write32(cpu->mem, _t4, cpu->r[8]);
|
|
/* 0252EA2C */ _t5 = cpu->r[11] + 0x00000008u;
|
|
/* 0252EA2C */ cpu->r[9] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0252EA30 */ _t6 = cpu->r[7] + 0x00000008u;
|
|
/* 0252EA30 */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 0252EA34 */ _t7 = cpu->r[11] + 0x0000000Cu;
|
|
/* 0252EA34 */ cpu->r[10] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0252EA38 */ _t8 = cpu->r[7] + 0x0000000Cu;
|
|
/* 0252EA38 */ rbrew_write32(cpu->mem, _t8, cpu->r[10]);
|
|
/* 0252EA3C */ _t9 = cpu->r[11] + 0x00000010u;
|
|
/* 0252EA3C */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0252EA3C */ cpu->r[11] = _t9;
|
|
/* 0252EA40 */ _t10 = cpu->r[7] + 0x00000010u;
|
|
/* 0252EA40 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 0252EA40 */ cpu->r[7] = _t10;
|
|
/* 0252EA44 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0252EA44 */ _t11 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0252EA44 */ _t12 = _t11 >> (0x00000002u & 31u);
|
|
/* 0252EA44 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0252EA44 */ if (_t13) goto L_0252EA24; else goto L_0252EA48;
|
|
L_0252EA48: ; // 0x252ea48
|
|
/* 0252EA48 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0252EA4C */ Gambit_fn_024F52E0(cpu);
|
|
/* 0252EA50 */ _t14 = cpu->r[1] + 0x00000010u;
|
|
/* 0252EA50 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 0252EA54 */ cpu->r[11] = 0x00000003u;
|
|
/* 0252EA58 */ _t15 = cpu->r[1] + 0x00000008u;
|
|
/* 0252EA58 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 0252EA5C */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252EA5C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 0252EA60 */ cpu->r[12] = cpu->r[1] + 0x00000010u;
|
|
/* 0252EA64 */ _t17 = cpu->r[1] + 0x00000040u;
|
|
/* 0252EA64 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[12]);
|
|
/* 0252EA68 */ cpu->r[9] = cpu->r[31] + 0xFFFFFFFCu;
|
|
/* 0252EA6C */ _t18 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0252EA6C */ rbrew_write_f32(cpu->mem, _t18, cpu->f[0]);
|
|
/* 0252EA70 */ cpu->ctr = cpu->r[11];
|
|
/* 0252EA74 */ _t19 = cpu->r[1] + 0x00000038u;
|
|
/* 0252EA74 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[13]);
|
|
L_0252EA78: ; // 0x252ea78
|
|
/* 0252EA78 */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 0252EA78 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0252EA7C */ _t21 = cpu->r[9] + 0x00000004u;
|
|
/* 0252EA7C */ rbrew_write32(cpu->mem, _t21, cpu->r[0]);
|
|
/* 0252EA80 */ _t22 = cpu->r[12] + 0x00000008u;
|
|
/* 0252EA80 */ cpu->r[5] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0252EA84 */ _t23 = cpu->r[9] + 0x00000008u;
|
|
/* 0252EA84 */ rbrew_write32(cpu->mem, _t23, cpu->r[5]);
|
|
/* 0252EA88 */ _t24 = cpu->r[12] + 0x0000000Cu;
|
|
/* 0252EA88 */ cpu->r[6] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0252EA8C */ _t25 = cpu->r[9] + 0x0000000Cu;
|
|
/* 0252EA8C */ rbrew_write32(cpu->mem, _t25, cpu->r[6]);
|
|
/* 0252EA90 */ _t26 = cpu->r[12] + 0x00000010u;
|
|
/* 0252EA90 */ cpu->r[7] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0252EA90 */ cpu->r[12] = _t26;
|
|
/* 0252EA94 */ _t27 = cpu->r[9] + 0x00000010u;
|
|
/* 0252EA94 */ rbrew_write32(cpu->mem, _t27, cpu->r[7]);
|
|
/* 0252EA94 */ cpu->r[9] = _t27;
|
|
/* 0252EA98 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0252EA98 */ _t28 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0252EA98 */ _t29 = _t28 >> (0x00000002u & 31u);
|
|
/* 0252EA98 */ _t30 = _t29 & 0x00000001u;
|
|
/* 0252EA98 */ if (_t30) goto L_0252EA78; else goto L_0252EA9C;
|
|
L_0252EA9C: ; // 0x252ea9c
|
|
/* 0252EA9C */ _t31 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0252EA9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0252EAA0 */ _t32 = cpu->r[1] + 0x00000044u;
|
|
/* 0252EAA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0252EAA4 */ cpu->lr = cpu->r[0];
|
|
/* 0252EAA8 */ cpu->r[1] = cpu->r[1] + 0x00000048u;
|
|
/* 0252EAAC */ return;
|
|
}
|
|
|
|
// fn_0252EA04 @ 0x252ea04
|
|
void Gambit_fn_0252EA04(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32;
|
|
|
|
L_0252EA04: ; // 0x252ea04
|
|
/* 0252EA04 */ _t0 = cpu->r[1] + 0xFFFFFFB8u;
|
|
/* 0252EA04 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252EA04 */ cpu->r[1] = _t0;
|
|
/* 0252EA08 */ cpu->r[7] = cpu->r[1] + 0x00000010u;
|
|
/* 0252EA0C */ _t1 = cpu->r[1] + 0x00000044u;
|
|
/* 0252EA0C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0252EA10 */ cpu->r[10] = 0x00000003u;
|
|
/* 0252EA14 */ cpu->ctr = cpu->r[10];
|
|
/* 0252EA18 */ cpu->r[31] = cpu->r[3];
|
|
/* 0252EA1C */ cpu->r[11] = cpu->r[4] + 0x00000050u;
|
|
/* 0252EA20 */ _t2 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0252EA20 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
L_0252EA24: ; // 0x252ea24
|
|
/* 0252EA24 */ _t3 = cpu->r[11] + 0x00000004u;
|
|
/* 0252EA24 */ cpu->r[8] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0252EA28 */ _t4 = cpu->r[7] + 0x00000004u;
|
|
/* 0252EA28 */ rbrew_write32(cpu->mem, _t4, cpu->r[8]);
|
|
/* 0252EA2C */ _t5 = cpu->r[11] + 0x00000008u;
|
|
/* 0252EA2C */ cpu->r[9] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0252EA30 */ _t6 = cpu->r[7] + 0x00000008u;
|
|
/* 0252EA30 */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 0252EA34 */ _t7 = cpu->r[11] + 0x0000000Cu;
|
|
/* 0252EA34 */ cpu->r[10] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0252EA38 */ _t8 = cpu->r[7] + 0x0000000Cu;
|
|
/* 0252EA38 */ rbrew_write32(cpu->mem, _t8, cpu->r[10]);
|
|
/* 0252EA3C */ _t9 = cpu->r[11] + 0x00000010u;
|
|
/* 0252EA3C */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0252EA3C */ cpu->r[11] = _t9;
|
|
/* 0252EA40 */ _t10 = cpu->r[7] + 0x00000010u;
|
|
/* 0252EA40 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 0252EA40 */ cpu->r[7] = _t10;
|
|
/* 0252EA44 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0252EA44 */ _t11 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0252EA44 */ _t12 = _t11 >> (0x00000002u & 31u);
|
|
/* 0252EA44 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0252EA44 */ if (_t13) goto L_0252EA24; else goto L_0252EA48;
|
|
L_0252EA48: ; // 0x252ea48
|
|
/* 0252EA48 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0252EA4C */ Gambit_fn_024F52E0(cpu);
|
|
/* 0252EA50 */ _t14 = cpu->r[1] + 0x00000010u;
|
|
/* 0252EA50 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 0252EA54 */ cpu->r[11] = 0x00000003u;
|
|
/* 0252EA58 */ _t15 = cpu->r[1] + 0x00000008u;
|
|
/* 0252EA58 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 0252EA5C */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252EA5C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 0252EA60 */ cpu->r[12] = cpu->r[1] + 0x00000010u;
|
|
/* 0252EA64 */ _t17 = cpu->r[1] + 0x00000040u;
|
|
/* 0252EA64 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[12]);
|
|
/* 0252EA68 */ cpu->r[9] = cpu->r[31] + 0xFFFFFFFCu;
|
|
/* 0252EA6C */ _t18 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0252EA6C */ rbrew_write_f32(cpu->mem, _t18, cpu->f[0]);
|
|
/* 0252EA70 */ cpu->ctr = cpu->r[11];
|
|
/* 0252EA74 */ _t19 = cpu->r[1] + 0x00000038u;
|
|
/* 0252EA74 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[13]);
|
|
L_0252EA78: ; // 0x252ea78
|
|
/* 0252EA78 */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 0252EA78 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0252EA7C */ _t21 = cpu->r[9] + 0x00000004u;
|
|
/* 0252EA7C */ rbrew_write32(cpu->mem, _t21, cpu->r[0]);
|
|
/* 0252EA80 */ _t22 = cpu->r[12] + 0x00000008u;
|
|
/* 0252EA80 */ cpu->r[5] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0252EA84 */ _t23 = cpu->r[9] + 0x00000008u;
|
|
/* 0252EA84 */ rbrew_write32(cpu->mem, _t23, cpu->r[5]);
|
|
/* 0252EA88 */ _t24 = cpu->r[12] + 0x0000000Cu;
|
|
/* 0252EA88 */ cpu->r[6] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0252EA8C */ _t25 = cpu->r[9] + 0x0000000Cu;
|
|
/* 0252EA8C */ rbrew_write32(cpu->mem, _t25, cpu->r[6]);
|
|
/* 0252EA90 */ _t26 = cpu->r[12] + 0x00000010u;
|
|
/* 0252EA90 */ cpu->r[7] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0252EA90 */ cpu->r[12] = _t26;
|
|
/* 0252EA94 */ _t27 = cpu->r[9] + 0x00000010u;
|
|
/* 0252EA94 */ rbrew_write32(cpu->mem, _t27, cpu->r[7]);
|
|
/* 0252EA94 */ cpu->r[9] = _t27;
|
|
/* 0252EA98 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0252EA98 */ _t28 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0252EA98 */ _t29 = _t28 >> (0x00000002u & 31u);
|
|
/* 0252EA98 */ _t30 = _t29 & 0x00000001u;
|
|
/* 0252EA98 */ if (_t30) goto L_0252EA78; else goto L_0252EA9C;
|
|
L_0252EA9C: ; // 0x252ea9c
|
|
/* 0252EA9C */ _t31 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0252EA9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0252EAA0 */ _t32 = cpu->r[1] + 0x00000044u;
|
|
/* 0252EAA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0252EAA4 */ cpu->lr = cpu->r[0];
|
|
/* 0252EAA8 */ cpu->r[1] = cpu->r[1] + 0x00000048u;
|
|
/* 0252EAAC */ return;
|
|
}
|
|
|
|
// fn_0252EAB0 @ 0x252eab0
|
|
void Gambit_fn_0252EAB0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _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_0252EAB0: ; // 0x252eab0
|
|
/* 0252EAB0 */ cpu->r[0] = cpu->lr;
|
|
/* 0252EAB4 */ _t0 = cpu->r[1] + 0xFFFFFF78u;
|
|
/* 0252EAB4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252EAB4 */ cpu->r[1] = _t0;
|
|
/* 0252EAB8 */ _t1 = cpu->r[1] + 0x00000078u;
|
|
/* 0252EAB8 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0252EABC */ _t2 = cpu->r[1] + 0x00000070u;
|
|
/* 0252EABC */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0252EAC0 */ /* nop */
|
|
/* 0252EAC4 */ _t3 = cpu->r[1] + 0x00000074u;
|
|
/* 0252EAC4 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 0252EAC8 */ cpu->r[30] = cpu->r[4];
|
|
/* 0252EACC */ _t4 = cpu->r[1] + 0x00000080u;
|
|
/* 0252EACC */ rbrew_write_f32(cpu->mem, _t4, cpu->f[31]);
|
|
/* 0252EAD0 */ _t5 = cpu->r[1] + 0x0000006Cu;
|
|
/* 0252EAD0 */ rbrew_write32(cpu->mem, _t5, cpu->r[29]);
|
|
/* 0252EAD4 */ _t6 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0252EAD4 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0252EAD8 */ cpu->r[29] = cpu->r[3];
|
|
/* 0252EADC */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 0252EAE0 */ cpu->r[31] = cpu->r[5];
|
|
/* 0252EAE4 */ Gambit_fn_02019890(cpu);
|
|
/* 0252EAE8 */ _t7 = cpu->r[1] + 0x00000020u;
|
|
/* 0252EAE8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0252EAEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000001u);
|
|
/* 0252EAF0 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252EAF0 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0252EAF0 */ if (_t9) goto L_0252EAF4; else goto L_0252EB28;
|
|
L_0252EAF4: ; // 0x252eaf4
|
|
/* 0252EAF4 */ cpu->r[3] = cpu->r[29];
|
|
/* 0252EAF8 */ cpu->r[4] = cpu->r[30];
|
|
/* 0252EAFC */ Gambit_fn_0252EA00(cpu);
|
|
/* 0252EB00 */ _t10 = cpu->r[1] + 0x0000006Cu;
|
|
/* 0252EB00 */ cpu->r[29] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0252EB04 */ _t11 = cpu->r[1] + 0x00000080u;
|
|
/* 0252EB04 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 0252EB08 */ _t12 = cpu->r[1] + 0x00000070u;
|
|
/* 0252EB08 */ cpu->r[30] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0252EB0C */ _t13 = cpu->r[1] + 0x00000078u;
|
|
/* 0252EB0C */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t13);
|
|
/* 0252EB10 */ _t14 = cpu->r[1] + 0x00000074u;
|
|
/* 0252EB10 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0252EB14 */ _t15 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0252EB14 */ _t16 = _t15 & 0x00000001u;
|
|
/* 0252EB14 */ if (_t16) goto L_0252EB18; // else: addr-0 trap, fall-through
|
|
L_0252EB18: ; // 0x252eb18
|
|
/* 0252EB18 */ _t17 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0252EB18 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0252EB1C */ cpu->lr = cpu->r[0];
|
|
/* 0252EB20 */ cpu->r[1] = cpu->r[1] + 0x00000088u;
|
|
/* 0252EB24 */ return;
|
|
L_0252EB28: ; // 0x252eb28
|
|
/* 0252EB28 */ cpu->r[6] = 0x100C0000u;
|
|
/* 0252EB2C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], 0x00000001u);
|
|
/* 0252EB30 */ _t18 = cpu->r[6] + 0x00003BDCu;
|
|
/* 0252EB30 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 0252EB34 */ _t19 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0252EB34 */ _t20 = _t19 & 0x00000001u;
|
|
/* 0252EB34 */ if (_t20) goto L_0252EB54; else goto L_0252EB38;
|
|
L_0252EB38: ; // 0x252eb38
|
|
/* 0252EB38 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252EB38 */ _t22 = _t21 & 0x00000001u;
|
|
/* 0252EB38 */ if (_t22) goto L_0252EB68; else goto L_0252EB3C;
|
|
L_0252EB3C: ; // 0x252eb3c
|
|
/* 0252EB3C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], 0x00000003u);
|
|
/* 0252EB40 */ _t23 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0252EB40 */ _t24 = _t23 & 0x00000001u;
|
|
/* 0252EB40 */ if (_t24) goto L_0252EB7C; else goto L_0252EB44;
|
|
L_0252EB44: ; // 0x252eb44
|
|
/* 0252EB44 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252EB44 */ _t26 = _t25 & 0x00000001u;
|
|
/* 0252EB44 */ if (_t26) goto L_0252EB90; else goto L_0252EB48;
|
|
L_0252EB48: ; // 0x252eb48
|
|
/* 0252EB48 */ _t27 = cpu->r[1] + 0x00000008u;
|
|
/* 0252EB48 */ rbrew_write_f32(cpu->mem, _t27, cpu->f[31]);
|
|
/* 0252EB4C */ cpu->f[12] = cpu->f[31];
|
|
/* 0252EB50 */ goto L_0252EBA0;
|
|
L_0252EB54: ; // 0x252eb54
|
|
/* 0252EB54 */ cpu->r[7] = 0x101F0000u;
|
|
/* 0252EB58 */ _t28 = cpu->r[7] + 0xFFFF9C44u;
|
|
/* 0252EB58 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 0252EB58 */ cpu->r[7] = _t28;
|
|
/* 0252EB5C */ _t29 = cpu->r[7] + 0x00000008u;
|
|
/* 0252EB5C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 0252EB60 */ _t30 = cpu->r[1] + 0x00000008u;
|
|
/* 0252EB60 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[10]);
|
|
/* 0252EB64 */ goto L_0252EBA0;
|
|
L_0252EB68: ; // 0x252eb68
|
|
/* 0252EB68 */ cpu->r[8] = 0x101F0000u;
|
|
/* 0252EB6C */ _t31 = cpu->r[8] + 0xFFFF9C50u;
|
|
/* 0252EB6C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 0252EB6C */ cpu->r[8] = _t31;
|
|
/* 0252EB70 */ _t32 = cpu->r[8] + 0x00000008u;
|
|
/* 0252EB70 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 0252EB74 */ _t33 = cpu->r[1] + 0x00000008u;
|
|
/* 0252EB74 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[11]);
|
|
/* 0252EB78 */ goto L_0252EBA0;
|
|
L_0252EB7C: ; // 0x252eb7c
|
|
/* 0252EB7C */ cpu->r[9] = 0x101F0000u;
|
|
/* 0252EB80 */ _t34 = cpu->r[9] + 0xFFFF9C5Cu;
|
|
/* 0252EB80 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 0252EB80 */ cpu->r[9] = _t34;
|
|
/* 0252EB84 */ _t35 = cpu->r[9] + 0x00000008u;
|
|
/* 0252EB84 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 0252EB88 */ _t36 = cpu->r[1] + 0x00000008u;
|
|
/* 0252EB88 */ rbrew_write_f32(cpu->mem, _t36, cpu->f[13]);
|
|
/* 0252EB8C */ goto L_0252EBA0;
|
|
L_0252EB90: ; // 0x252eb90
|
|
/* 0252EB90 */ cpu->r[10] = 0x101F0000u;
|
|
/* 0252EB94 */ _t37 = cpu->r[10] + 0xFFFF9C68u;
|
|
/* 0252EB94 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 0252EB94 */ cpu->r[10] = _t37;
|
|
/* 0252EB98 */ _t38 = cpu->r[10] + 0x00000008u;
|
|
/* 0252EB98 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 0252EB9C */ _t39 = cpu->r[1] + 0x00000008u;
|
|
/* 0252EB9C */ rbrew_write_f32(cpu->mem, _t39, cpu->f[0]);
|
|
L_0252EBA0: ; // 0x252eba0
|
|
/* 0252EBA0 */ cpu->r[4] = cpu->r[30];
|
|
/* 0252EBA4 */ cpu->r[3] = cpu->r[1] + 0x00000060u;
|
|
/* 0252EBA8 */ _t40 = cpu->r[1] + 0x00000010u;
|
|
/* 0252EBA8 */ rbrew_write_f32(cpu->mem, _t40, cpu->f[12]);
|
|
/* 0252EBAC */ Gambit_fn_024F52E0(cpu);
|
|
/* 0252EBB0 */ _t41 = cpu->r[30] + 0x00000054u;
|
|
/* 0252EBB0 */ cpu->f[3] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 0252EBB4 */ _t42 = cpu->r[1] + 0x00000008u;
|
|
/* 0252EBB4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 0252EBB8 */ _t43 = cpu->r[1] + 0x00000014u;
|
|
/* 0252EBB8 */ rbrew_write_f32(cpu->mem, _t43, cpu->f[3]);
|
|
/* 0252EBBC */ _t44 = cpu->r[30] + 0x0000007Cu;
|
|
/* 0252EBBC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 0252EBC0 */ _t45 = cpu->r[30] + 0x0000005Cu;
|
|
/* 0252EBC0 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t45);
|
|
/* 0252EBC4 */ _t46 = cpu->r[30] + 0x00000058u;
|
|
/* 0252EBC4 */ cpu->f[4] = rbrew_read_f32(cpu->mem, _t46);
|
|
/* 0252EBC8 */ _t47 = cpu->r[1] + 0x00000064u;
|
|
/* 0252EBC8 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 0252EBCC */ cpu->f[0] = cpu->f[8] * cpu->f[10];
|
|
/* 0252EBD0 */ _t48 = cpu->r[1] + 0x00000018u;
|
|
/* 0252EBD0 */ rbrew_write_f32(cpu->mem, _t48, cpu->f[4]);
|
|
/* 0252EBD4 */ /* nop */
|
|
/* 0252EBD8 */ /* nop */
|
|
/* 0252EBDC */ cpu->f[2] = cpu->f[7] - cpu->f[9];
|
|
/* 0252EBE0 */ /* nop */
|
|
/* 0252EBE4 */ _t49 = cpu->r[30] + 0x00000068u;
|
|
/* 0252EBE4 */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t49);
|
|
/* 0252EBE8 */ /* nop */
|
|
/* 0252EBEC */ _t50 = cpu->r[1] + 0x00000010u;
|
|
/* 0252EBEC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t50);
|
|
/* 0252EBF0 */ cpu->f[0] = fma(cpu->f[2], cpu->f[5], cpu->f[0]);
|
|
/* 0252EBF4 */ /* nop */
|
|
/* 0252EBF8 */ /* nop */
|
|
/* 0252EBFC */ /* nop */
|
|
/* 0252EC00 */ _t51 = cpu->r[30] + 0x00000064u;
|
|
/* 0252EC00 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t51);
|
|
/* 0252EC04 */ /* nop */
|
|
/* 0252EC08 */ _t52 = cpu->r[30] + 0x00000074u;
|
|
/* 0252EC08 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 0252EC0C */ /* nop */
|
|
/* 0252EC10 */ _t53 = cpu->r[1] + 0x00000014u;
|
|
/* 0252EC10 */ cpu->r[0] = rbrew_read32(cpu->mem, _t53);
|
|
/* 0252EC14 */ cpu->f[0] = fma(cpu->f[11], cpu->f[6], cpu->f[0]);
|
|
/* 0252EC18 */ _t54 = cpu->r[30] + 0x0000006Cu;
|
|
/* 0252EC18 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 0252EC1C */ _t55 = cpu->r[30] + 0x00000080u;
|
|
/* 0252EC1C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t55);
|
|
/* 0252EC20 */ _t56 = cpu->r[1] + 0x00000018u;
|
|
/* 0252EC20 */ cpu->r[8] = rbrew_read32(cpu->mem, _t56);
|
|
/* 0252EC24 */ _t57 = cpu->r[1] + 0x00000058u;
|
|
/* 0252EC24 */ rbrew_write32(cpu->mem, _t57, cpu->r[8]);
|
|
/* 0252EC28 */ cpu->f[7] = cpu->f[0] + cpu->f[9];
|
|
/* 0252EC2C */ _t58 = cpu->r[1] + 0x00000058u;
|
|
/* 0252EC2C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 0252EC30 */ _t59 = cpu->r[1] + 0x00000054u;
|
|
/* 0252EC30 */ rbrew_write32(cpu->mem, _t59, cpu->r[0]);
|
|
/* 0252EC34 */ _t60 = cpu->r[1] + 0x00000054u;
|
|
/* 0252EC34 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t60);
|
|
/* 0252EC38 */ _t61 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252EC38 */ rbrew_write_f32(cpu->mem, _t61, cpu->f[7]);
|
|
/* 0252EC3C */ _t62 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252EC3C */ cpu->r[0] = rbrew_read32(cpu->mem, _t62);
|
|
/* 0252EC40 */ _t63 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0252EC40 */ rbrew_write_f32(cpu->mem, _t63, cpu->f[0]);
|
|
/* 0252EC44 */ _t64 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0252EC44 */ rbrew_write32(cpu->mem, _t64, cpu->r[0]);
|
|
/* 0252EC48 */ _t65 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0252EC48 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t65);
|
|
/* 0252EC4C */ _t66 = cpu->r[1] + 0x00000024u;
|
|
/* 0252EC4C */ rbrew_write_f32(cpu->mem, _t66, cpu->f[3]);
|
|
/* 0252EC50 */ _t67 = cpu->r[1] + 0x00000028u;
|
|
/* 0252EC50 */ rbrew_write_f32(cpu->mem, _t67, cpu->f[4]);
|
|
/* 0252EC54 */ _t68 = cpu->r[1] + 0x00000044u;
|
|
/* 0252EC54 */ rbrew_write_f32(cpu->mem, _t68, cpu->f[6]);
|
|
/* 0252EC58 */ _t69 = cpu->r[1] + 0x00000034u;
|
|
/* 0252EC58 */ rbrew_write_f32(cpu->mem, _t69, cpu->f[10]);
|
|
/* 0252EC5C */ _t70 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0252EC5C */ rbrew_write_f32(cpu->mem, _t70, cpu->f[8]);
|
|
/* 0252EC60 */ _t71 = cpu->r[30] + 0x00000070u;
|
|
/* 0252EC60 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t71);
|
|
/* 0252EC64 */ _t72 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0252EC64 */ rbrew_write_f32(cpu->mem, _t72, cpu->f[11]);
|
|
/* 0252EC68 */ _t73 = cpu->r[1] + 0x00000040u;
|
|
/* 0252EC68 */ rbrew_write_f32(cpu->mem, _t73, cpu->f[13]);
|
|
/* 0252EC6C */ _t74 = cpu->r[30] + 0x00000060u;
|
|
/* 0252EC6C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t74);
|
|
/* 0252EC70 */ _t75 = cpu->r[1] + 0x00000048u;
|
|
/* 0252EC70 */ rbrew_write_f32(cpu->mem, _t75, cpu->f[12]);
|
|
/* 0252EC74 */ _t76 = cpu->r[1] + 0x00000030u;
|
|
/* 0252EC74 */ rbrew_write_f32(cpu->mem, _t76, cpu->f[9]);
|
|
/* 0252EC78 */ cpu->f[1] = cpu->f[31];
|
|
/* 0252EC7C */ _t77 = cpu->r[1] + 0x00000038u;
|
|
/* 0252EC7C */ rbrew_write_f32(cpu->mem, _t77, cpu->f[5]);
|
|
/* 0252EC80 */ _t78 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252EC80 */ rbrew_write_f32(cpu->mem, _t78, cpu->f[2]);
|
|
/* 0252EC84 */ cpu->r[3] = cpu->r[1] + 0x00000024u;
|
|
/* 0252EC88 */ _t79 = cpu->r[1] + 0x00000050u;
|
|
/* 0252EC88 */ rbrew_write_f32(cpu->mem, _t79, cpu->f[7]);
|
|
/* 0252EC8C */ Gambit_fn_0204E43C(cpu);
|
|
/* 0252EC90 */ cpu->r[0] = 0x00000003u;
|
|
/* 0252EC94 */ cpu->r[11] = cpu->r[1] + 0x00000020u;
|
|
/* 0252EC98 */ cpu->ctr = cpu->r[0];
|
|
/* 0252EC9C */ cpu->r[12] = cpu->r[29] + 0xFFFFFFFCu;
|
|
L_0252ECA0: ; // 0x252eca0
|
|
/* 0252ECA0 */ _t80 = cpu->r[11] + 0x00000004u;
|
|
/* 0252ECA0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t80);
|
|
/* 0252ECA4 */ _t81 = cpu->r[12] + 0x00000004u;
|
|
/* 0252ECA4 */ rbrew_write32(cpu->mem, _t81, cpu->r[6]);
|
|
/* 0252ECA8 */ _t82 = cpu->r[11] + 0x00000008u;
|
|
/* 0252ECA8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t82);
|
|
/* 0252ECAC */ _t83 = cpu->r[12] + 0x00000008u;
|
|
/* 0252ECAC */ rbrew_write32(cpu->mem, _t83, cpu->r[7]);
|
|
/* 0252ECB0 */ _t84 = cpu->r[11] + 0x0000000Cu;
|
|
/* 0252ECB0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t84);
|
|
/* 0252ECB4 */ _t85 = cpu->r[12] + 0x0000000Cu;
|
|
/* 0252ECB4 */ rbrew_write32(cpu->mem, _t85, cpu->r[8]);
|
|
/* 0252ECB8 */ _t86 = cpu->r[11] + 0x00000010u;
|
|
/* 0252ECB8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t86);
|
|
/* 0252ECB8 */ cpu->r[11] = _t86;
|
|
/* 0252ECBC */ _t87 = cpu->r[12] + 0x00000010u;
|
|
/* 0252ECBC */ rbrew_write32(cpu->mem, _t87, cpu->r[10]);
|
|
/* 0252ECBC */ cpu->r[12] = _t87;
|
|
/* 0252ECC0 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0252ECC0 */ _t88 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0252ECC0 */ _t89 = _t88 >> (0x00000002u & 31u);
|
|
/* 0252ECC0 */ _t90 = _t89 & 0x00000001u;
|
|
/* 0252ECC0 */ if (_t90) goto L_0252ECA0; else goto L_0252ECC4;
|
|
L_0252ECC4: ; // 0x252ecc4
|
|
/* 0252ECC4 */ _t91 = cpu->r[1] + 0x0000006Cu;
|
|
/* 0252ECC4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t91);
|
|
/* 0252ECC8 */ _t92 = cpu->r[1] + 0x00000080u;
|
|
/* 0252ECC8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t92);
|
|
/* 0252ECCC */ _t93 = cpu->r[1] + 0x00000070u;
|
|
/* 0252ECCC */ cpu->r[30] = rbrew_read32(cpu->mem, _t93);
|
|
/* 0252ECD0 */ _t94 = cpu->r[1] + 0x00000078u;
|
|
/* 0252ECD0 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t94);
|
|
/* 0252ECD4 */ _t95 = cpu->r[1] + 0x00000074u;
|
|
/* 0252ECD4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t95);
|
|
/* 0252ECD8 */ _t96 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0252ECD8 */ _t97 = _t96 & 0x00000001u;
|
|
/* 0252ECD8 */ if (_t97) goto L_0252ECDC; // else: addr-0 trap, fall-through
|
|
L_0252ECDC: ; // 0x252ecdc
|
|
/* 0252ECDC */ _t98 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0252ECDC */ cpu->r[0] = rbrew_read32(cpu->mem, _t98);
|
|
/* 0252ECE0 */ cpu->lr = cpu->r[0];
|
|
/* 0252ECE4 */ cpu->r[1] = cpu->r[1] + 0x00000088u;
|
|
/* 0252ECE8 */ return;
|
|
}
|
|
|
|
// fn_0252EAB4 @ 0x252eab4
|
|
void Gambit_fn_0252EAB4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _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_0252EAB4: ; // 0x252eab4
|
|
/* 0252EAB4 */ _t0 = cpu->r[1] + 0xFFFFFF78u;
|
|
/* 0252EAB4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252EAB4 */ cpu->r[1] = _t0;
|
|
/* 0252EAB8 */ _t1 = cpu->r[1] + 0x00000078u;
|
|
/* 0252EAB8 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0252EABC */ _t2 = cpu->r[1] + 0x00000070u;
|
|
/* 0252EABC */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0252EAC0 */ /* nop */
|
|
/* 0252EAC4 */ _t3 = cpu->r[1] + 0x00000074u;
|
|
/* 0252EAC4 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 0252EAC8 */ cpu->r[30] = cpu->r[4];
|
|
/* 0252EACC */ _t4 = cpu->r[1] + 0x00000080u;
|
|
/* 0252EACC */ rbrew_write_f32(cpu->mem, _t4, cpu->f[31]);
|
|
/* 0252EAD0 */ _t5 = cpu->r[1] + 0x0000006Cu;
|
|
/* 0252EAD0 */ rbrew_write32(cpu->mem, _t5, cpu->r[29]);
|
|
/* 0252EAD4 */ _t6 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0252EAD4 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0252EAD8 */ cpu->r[29] = cpu->r[3];
|
|
/* 0252EADC */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 0252EAE0 */ cpu->r[31] = cpu->r[5];
|
|
/* 0252EAE4 */ Gambit_fn_02019890(cpu);
|
|
/* 0252EAE8 */ _t7 = cpu->r[1] + 0x00000020u;
|
|
/* 0252EAE8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0252EAEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000001u);
|
|
/* 0252EAF0 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252EAF0 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0252EAF0 */ if (_t9) goto L_0252EAF4; else goto L_0252EB28;
|
|
L_0252EAF4: ; // 0x252eaf4
|
|
/* 0252EAF4 */ cpu->r[3] = cpu->r[29];
|
|
/* 0252EAF8 */ cpu->r[4] = cpu->r[30];
|
|
/* 0252EAFC */ Gambit_fn_0252EA00(cpu);
|
|
/* 0252EB00 */ _t10 = cpu->r[1] + 0x0000006Cu;
|
|
/* 0252EB00 */ cpu->r[29] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0252EB04 */ _t11 = cpu->r[1] + 0x00000080u;
|
|
/* 0252EB04 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 0252EB08 */ _t12 = cpu->r[1] + 0x00000070u;
|
|
/* 0252EB08 */ cpu->r[30] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0252EB0C */ _t13 = cpu->r[1] + 0x00000078u;
|
|
/* 0252EB0C */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t13);
|
|
/* 0252EB10 */ _t14 = cpu->r[1] + 0x00000074u;
|
|
/* 0252EB10 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0252EB14 */ _t15 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0252EB14 */ _t16 = _t15 & 0x00000001u;
|
|
/* 0252EB14 */ if (_t16) goto L_0252EB18; // else: addr-0 trap, fall-through
|
|
L_0252EB18: ; // 0x252eb18
|
|
/* 0252EB18 */ _t17 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0252EB18 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0252EB1C */ cpu->lr = cpu->r[0];
|
|
/* 0252EB20 */ cpu->r[1] = cpu->r[1] + 0x00000088u;
|
|
/* 0252EB24 */ return;
|
|
L_0252EB28: ; // 0x252eb28
|
|
/* 0252EB28 */ cpu->r[6] = 0x100C0000u;
|
|
/* 0252EB2C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], 0x00000001u);
|
|
/* 0252EB30 */ _t18 = cpu->r[6] + 0x00003BDCu;
|
|
/* 0252EB30 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 0252EB34 */ _t19 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0252EB34 */ _t20 = _t19 & 0x00000001u;
|
|
/* 0252EB34 */ if (_t20) goto L_0252EB54; else goto L_0252EB38;
|
|
L_0252EB38: ; // 0x252eb38
|
|
/* 0252EB38 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252EB38 */ _t22 = _t21 & 0x00000001u;
|
|
/* 0252EB38 */ if (_t22) goto L_0252EB68; else goto L_0252EB3C;
|
|
L_0252EB3C: ; // 0x252eb3c
|
|
/* 0252EB3C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], 0x00000003u);
|
|
/* 0252EB40 */ _t23 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0252EB40 */ _t24 = _t23 & 0x00000001u;
|
|
/* 0252EB40 */ if (_t24) goto L_0252EB7C; else goto L_0252EB44;
|
|
L_0252EB44: ; // 0x252eb44
|
|
/* 0252EB44 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252EB44 */ _t26 = _t25 & 0x00000001u;
|
|
/* 0252EB44 */ if (_t26) goto L_0252EB90; else goto L_0252EB48;
|
|
L_0252EB48: ; // 0x252eb48
|
|
/* 0252EB48 */ _t27 = cpu->r[1] + 0x00000008u;
|
|
/* 0252EB48 */ rbrew_write_f32(cpu->mem, _t27, cpu->f[31]);
|
|
/* 0252EB4C */ cpu->f[12] = cpu->f[31];
|
|
/* 0252EB50 */ goto L_0252EBA0;
|
|
L_0252EB54: ; // 0x252eb54
|
|
/* 0252EB54 */ cpu->r[7] = 0x101F0000u;
|
|
/* 0252EB58 */ _t28 = cpu->r[7] + 0xFFFF9C44u;
|
|
/* 0252EB58 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 0252EB58 */ cpu->r[7] = _t28;
|
|
/* 0252EB5C */ _t29 = cpu->r[7] + 0x00000008u;
|
|
/* 0252EB5C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 0252EB60 */ _t30 = cpu->r[1] + 0x00000008u;
|
|
/* 0252EB60 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[10]);
|
|
/* 0252EB64 */ goto L_0252EBA0;
|
|
L_0252EB68: ; // 0x252eb68
|
|
/* 0252EB68 */ cpu->r[8] = 0x101F0000u;
|
|
/* 0252EB6C */ _t31 = cpu->r[8] + 0xFFFF9C50u;
|
|
/* 0252EB6C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 0252EB6C */ cpu->r[8] = _t31;
|
|
/* 0252EB70 */ _t32 = cpu->r[8] + 0x00000008u;
|
|
/* 0252EB70 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 0252EB74 */ _t33 = cpu->r[1] + 0x00000008u;
|
|
/* 0252EB74 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[11]);
|
|
/* 0252EB78 */ goto L_0252EBA0;
|
|
L_0252EB7C: ; // 0x252eb7c
|
|
/* 0252EB7C */ cpu->r[9] = 0x101F0000u;
|
|
/* 0252EB80 */ _t34 = cpu->r[9] + 0xFFFF9C5Cu;
|
|
/* 0252EB80 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 0252EB80 */ cpu->r[9] = _t34;
|
|
/* 0252EB84 */ _t35 = cpu->r[9] + 0x00000008u;
|
|
/* 0252EB84 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 0252EB88 */ _t36 = cpu->r[1] + 0x00000008u;
|
|
/* 0252EB88 */ rbrew_write_f32(cpu->mem, _t36, cpu->f[13]);
|
|
/* 0252EB8C */ goto L_0252EBA0;
|
|
L_0252EB90: ; // 0x252eb90
|
|
/* 0252EB90 */ cpu->r[10] = 0x101F0000u;
|
|
/* 0252EB94 */ _t37 = cpu->r[10] + 0xFFFF9C68u;
|
|
/* 0252EB94 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 0252EB94 */ cpu->r[10] = _t37;
|
|
/* 0252EB98 */ _t38 = cpu->r[10] + 0x00000008u;
|
|
/* 0252EB98 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 0252EB9C */ _t39 = cpu->r[1] + 0x00000008u;
|
|
/* 0252EB9C */ rbrew_write_f32(cpu->mem, _t39, cpu->f[0]);
|
|
L_0252EBA0: ; // 0x252eba0
|
|
/* 0252EBA0 */ cpu->r[4] = cpu->r[30];
|
|
/* 0252EBA4 */ cpu->r[3] = cpu->r[1] + 0x00000060u;
|
|
/* 0252EBA8 */ _t40 = cpu->r[1] + 0x00000010u;
|
|
/* 0252EBA8 */ rbrew_write_f32(cpu->mem, _t40, cpu->f[12]);
|
|
/* 0252EBAC */ Gambit_fn_024F52E0(cpu);
|
|
/* 0252EBB0 */ _t41 = cpu->r[30] + 0x00000054u;
|
|
/* 0252EBB0 */ cpu->f[3] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 0252EBB4 */ _t42 = cpu->r[1] + 0x00000008u;
|
|
/* 0252EBB4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 0252EBB8 */ _t43 = cpu->r[1] + 0x00000014u;
|
|
/* 0252EBB8 */ rbrew_write_f32(cpu->mem, _t43, cpu->f[3]);
|
|
/* 0252EBBC */ _t44 = cpu->r[30] + 0x0000007Cu;
|
|
/* 0252EBBC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 0252EBC0 */ _t45 = cpu->r[30] + 0x0000005Cu;
|
|
/* 0252EBC0 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t45);
|
|
/* 0252EBC4 */ _t46 = cpu->r[30] + 0x00000058u;
|
|
/* 0252EBC4 */ cpu->f[4] = rbrew_read_f32(cpu->mem, _t46);
|
|
/* 0252EBC8 */ _t47 = cpu->r[1] + 0x00000064u;
|
|
/* 0252EBC8 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 0252EBCC */ cpu->f[0] = cpu->f[8] * cpu->f[10];
|
|
/* 0252EBD0 */ _t48 = cpu->r[1] + 0x00000018u;
|
|
/* 0252EBD0 */ rbrew_write_f32(cpu->mem, _t48, cpu->f[4]);
|
|
/* 0252EBD4 */ /* nop */
|
|
/* 0252EBD8 */ /* nop */
|
|
/* 0252EBDC */ cpu->f[2] = cpu->f[7] - cpu->f[9];
|
|
/* 0252EBE0 */ /* nop */
|
|
/* 0252EBE4 */ _t49 = cpu->r[30] + 0x00000068u;
|
|
/* 0252EBE4 */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t49);
|
|
/* 0252EBE8 */ /* nop */
|
|
/* 0252EBEC */ _t50 = cpu->r[1] + 0x00000010u;
|
|
/* 0252EBEC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t50);
|
|
/* 0252EBF0 */ cpu->f[0] = fma(cpu->f[2], cpu->f[5], cpu->f[0]);
|
|
/* 0252EBF4 */ /* nop */
|
|
/* 0252EBF8 */ /* nop */
|
|
/* 0252EBFC */ /* nop */
|
|
/* 0252EC00 */ _t51 = cpu->r[30] + 0x00000064u;
|
|
/* 0252EC00 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t51);
|
|
/* 0252EC04 */ /* nop */
|
|
/* 0252EC08 */ _t52 = cpu->r[30] + 0x00000074u;
|
|
/* 0252EC08 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 0252EC0C */ /* nop */
|
|
/* 0252EC10 */ _t53 = cpu->r[1] + 0x00000014u;
|
|
/* 0252EC10 */ cpu->r[0] = rbrew_read32(cpu->mem, _t53);
|
|
/* 0252EC14 */ cpu->f[0] = fma(cpu->f[11], cpu->f[6], cpu->f[0]);
|
|
/* 0252EC18 */ _t54 = cpu->r[30] + 0x0000006Cu;
|
|
/* 0252EC18 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 0252EC1C */ _t55 = cpu->r[30] + 0x00000080u;
|
|
/* 0252EC1C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t55);
|
|
/* 0252EC20 */ _t56 = cpu->r[1] + 0x00000018u;
|
|
/* 0252EC20 */ cpu->r[8] = rbrew_read32(cpu->mem, _t56);
|
|
/* 0252EC24 */ _t57 = cpu->r[1] + 0x00000058u;
|
|
/* 0252EC24 */ rbrew_write32(cpu->mem, _t57, cpu->r[8]);
|
|
/* 0252EC28 */ cpu->f[7] = cpu->f[0] + cpu->f[9];
|
|
/* 0252EC2C */ _t58 = cpu->r[1] + 0x00000058u;
|
|
/* 0252EC2C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 0252EC30 */ _t59 = cpu->r[1] + 0x00000054u;
|
|
/* 0252EC30 */ rbrew_write32(cpu->mem, _t59, cpu->r[0]);
|
|
/* 0252EC34 */ _t60 = cpu->r[1] + 0x00000054u;
|
|
/* 0252EC34 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t60);
|
|
/* 0252EC38 */ _t61 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252EC38 */ rbrew_write_f32(cpu->mem, _t61, cpu->f[7]);
|
|
/* 0252EC3C */ _t62 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252EC3C */ cpu->r[0] = rbrew_read32(cpu->mem, _t62);
|
|
/* 0252EC40 */ _t63 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0252EC40 */ rbrew_write_f32(cpu->mem, _t63, cpu->f[0]);
|
|
/* 0252EC44 */ _t64 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0252EC44 */ rbrew_write32(cpu->mem, _t64, cpu->r[0]);
|
|
/* 0252EC48 */ _t65 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0252EC48 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t65);
|
|
/* 0252EC4C */ _t66 = cpu->r[1] + 0x00000024u;
|
|
/* 0252EC4C */ rbrew_write_f32(cpu->mem, _t66, cpu->f[3]);
|
|
/* 0252EC50 */ _t67 = cpu->r[1] + 0x00000028u;
|
|
/* 0252EC50 */ rbrew_write_f32(cpu->mem, _t67, cpu->f[4]);
|
|
/* 0252EC54 */ _t68 = cpu->r[1] + 0x00000044u;
|
|
/* 0252EC54 */ rbrew_write_f32(cpu->mem, _t68, cpu->f[6]);
|
|
/* 0252EC58 */ _t69 = cpu->r[1] + 0x00000034u;
|
|
/* 0252EC58 */ rbrew_write_f32(cpu->mem, _t69, cpu->f[10]);
|
|
/* 0252EC5C */ _t70 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0252EC5C */ rbrew_write_f32(cpu->mem, _t70, cpu->f[8]);
|
|
/* 0252EC60 */ _t71 = cpu->r[30] + 0x00000070u;
|
|
/* 0252EC60 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t71);
|
|
/* 0252EC64 */ _t72 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0252EC64 */ rbrew_write_f32(cpu->mem, _t72, cpu->f[11]);
|
|
/* 0252EC68 */ _t73 = cpu->r[1] + 0x00000040u;
|
|
/* 0252EC68 */ rbrew_write_f32(cpu->mem, _t73, cpu->f[13]);
|
|
/* 0252EC6C */ _t74 = cpu->r[30] + 0x00000060u;
|
|
/* 0252EC6C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t74);
|
|
/* 0252EC70 */ _t75 = cpu->r[1] + 0x00000048u;
|
|
/* 0252EC70 */ rbrew_write_f32(cpu->mem, _t75, cpu->f[12]);
|
|
/* 0252EC74 */ _t76 = cpu->r[1] + 0x00000030u;
|
|
/* 0252EC74 */ rbrew_write_f32(cpu->mem, _t76, cpu->f[9]);
|
|
/* 0252EC78 */ cpu->f[1] = cpu->f[31];
|
|
/* 0252EC7C */ _t77 = cpu->r[1] + 0x00000038u;
|
|
/* 0252EC7C */ rbrew_write_f32(cpu->mem, _t77, cpu->f[5]);
|
|
/* 0252EC80 */ _t78 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252EC80 */ rbrew_write_f32(cpu->mem, _t78, cpu->f[2]);
|
|
/* 0252EC84 */ cpu->r[3] = cpu->r[1] + 0x00000024u;
|
|
/* 0252EC88 */ _t79 = cpu->r[1] + 0x00000050u;
|
|
/* 0252EC88 */ rbrew_write_f32(cpu->mem, _t79, cpu->f[7]);
|
|
/* 0252EC8C */ Gambit_fn_0204E43C(cpu);
|
|
/* 0252EC90 */ cpu->r[0] = 0x00000003u;
|
|
/* 0252EC94 */ cpu->r[11] = cpu->r[1] + 0x00000020u;
|
|
/* 0252EC98 */ cpu->ctr = cpu->r[0];
|
|
/* 0252EC9C */ cpu->r[12] = cpu->r[29] + 0xFFFFFFFCu;
|
|
L_0252ECA0: ; // 0x252eca0
|
|
/* 0252ECA0 */ _t80 = cpu->r[11] + 0x00000004u;
|
|
/* 0252ECA0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t80);
|
|
/* 0252ECA4 */ _t81 = cpu->r[12] + 0x00000004u;
|
|
/* 0252ECA4 */ rbrew_write32(cpu->mem, _t81, cpu->r[6]);
|
|
/* 0252ECA8 */ _t82 = cpu->r[11] + 0x00000008u;
|
|
/* 0252ECA8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t82);
|
|
/* 0252ECAC */ _t83 = cpu->r[12] + 0x00000008u;
|
|
/* 0252ECAC */ rbrew_write32(cpu->mem, _t83, cpu->r[7]);
|
|
/* 0252ECB0 */ _t84 = cpu->r[11] + 0x0000000Cu;
|
|
/* 0252ECB0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t84);
|
|
/* 0252ECB4 */ _t85 = cpu->r[12] + 0x0000000Cu;
|
|
/* 0252ECB4 */ rbrew_write32(cpu->mem, _t85, cpu->r[8]);
|
|
/* 0252ECB8 */ _t86 = cpu->r[11] + 0x00000010u;
|
|
/* 0252ECB8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t86);
|
|
/* 0252ECB8 */ cpu->r[11] = _t86;
|
|
/* 0252ECBC */ _t87 = cpu->r[12] + 0x00000010u;
|
|
/* 0252ECBC */ rbrew_write32(cpu->mem, _t87, cpu->r[10]);
|
|
/* 0252ECBC */ cpu->r[12] = _t87;
|
|
/* 0252ECC0 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0252ECC0 */ _t88 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0252ECC0 */ _t89 = _t88 >> (0x00000002u & 31u);
|
|
/* 0252ECC0 */ _t90 = _t89 & 0x00000001u;
|
|
/* 0252ECC0 */ if (_t90) goto L_0252ECA0; else goto L_0252ECC4;
|
|
L_0252ECC4: ; // 0x252ecc4
|
|
/* 0252ECC4 */ _t91 = cpu->r[1] + 0x0000006Cu;
|
|
/* 0252ECC4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t91);
|
|
/* 0252ECC8 */ _t92 = cpu->r[1] + 0x00000080u;
|
|
/* 0252ECC8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t92);
|
|
/* 0252ECCC */ _t93 = cpu->r[1] + 0x00000070u;
|
|
/* 0252ECCC */ cpu->r[30] = rbrew_read32(cpu->mem, _t93);
|
|
/* 0252ECD0 */ _t94 = cpu->r[1] + 0x00000078u;
|
|
/* 0252ECD0 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t94);
|
|
/* 0252ECD4 */ _t95 = cpu->r[1] + 0x00000074u;
|
|
/* 0252ECD4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t95);
|
|
/* 0252ECD8 */ _t96 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0252ECD8 */ _t97 = _t96 & 0x00000001u;
|
|
/* 0252ECD8 */ if (_t97) goto L_0252ECDC; // else: addr-0 trap, fall-through
|
|
L_0252ECDC: ; // 0x252ecdc
|
|
/* 0252ECDC */ _t98 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0252ECDC */ cpu->r[0] = rbrew_read32(cpu->mem, _t98);
|
|
/* 0252ECE0 */ cpu->lr = cpu->r[0];
|
|
/* 0252ECE4 */ cpu->r[1] = cpu->r[1] + 0x00000088u;
|
|
/* 0252ECE8 */ return;
|
|
}
|
|
|
|
// fn_0252ECEC @ 0x252ecec
|
|
void Gambit_fn_0252ECEC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_0252ECEC: ; // 0x252ecec
|
|
/* 0252ECEC */ cpu->r[0] = cpu->lr;
|
|
/* 0252ECF0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0252ECF0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252ECF0 */ cpu->r[1] = _t0;
|
|
/* 0252ECF4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252ECF4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0252ECF8 */ cpu->r[31] = cpu->r[3];
|
|
/* 0252ECFC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0252ECFC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0252ED00 */ Gambit_fn_0252DAA8(cpu);
|
|
/* 0252ED04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252ED08 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252ED08 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0252ED08 */ if (_t4) goto L_0252ED3C; else goto L_0252ED0C;
|
|
L_0252ED0C: ; // 0x252ed0c
|
|
/* 0252ED0C */ cpu->r[12] = 0x101C0000u;
|
|
/* 0252ED10 */ _t5 = cpu->r[12] + 0x00005BA0u;
|
|
/* 0252ED10 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0252ED14 */ _t6 = cpu->r[31] + 0x00000024u;
|
|
/* 0252ED14 */ cpu->r[8] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0252ED18 */ _t7 = cpu->r[12] + 0x00000100u;
|
|
/* 0252ED18 */ cpu->r[9] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0252ED1C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[9]);
|
|
/* 0252ED20 */ cpu->r[3] = 0x00000000u;
|
|
/* 0252ED24 */ _t8 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0252ED24 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0252ED24 */ if (_t9) goto L_0252ED28; else goto L_0252ED34;
|
|
L_0252ED28: ; // 0x252ed28
|
|
/* 0252ED28 */ _t10 = cpu->r[12] + 0x00000108u;
|
|
/* 0252ED28 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0252ED2C */ cpu->r[10] = rbrew_rlwinm(cpu->r[8], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0252ED30 */ _t11 = cpu->r[10] + cpu->r[0];
|
|
/* 0252ED30 */ cpu->r[3] = rbrew_read32(cpu->mem, _t11);
|
|
L_0252ED34: ; // 0x252ed34
|
|
/* 0252ED34 */ cpu->r[4] = cpu->r[31];
|
|
/* 0252ED38 */ Gambit_fn_02530A3C(cpu);
|
|
L_0252ED3C: ; // 0x252ed3c
|
|
/* 0252ED3C */ cpu->r[3] = cpu->r[31];
|
|
/* 0252ED40 */ Gambit_fn_0252E978(cpu);
|
|
/* 0252ED44 */ cpu->r[3] = cpu->r[31];
|
|
/* 0252ED48 */ Gambit_fn_024F606C(cpu);
|
|
/* 0252ED4C */ _t12 = cpu->r[31] + 0x00000214u;
|
|
/* 0252ED4C */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0252ED50 */ Gambit_fn_0239859C(cpu);
|
|
/* 0252ED54 */ _t13 = cpu->r[31] + 0x00000218u;
|
|
/* 0252ED54 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0252ED58 */ Gambit_fn_0239859C(cpu);
|
|
/* 0252ED5C */ cpu->r[3] = cpu->r[31];
|
|
/* 0252ED60 */ Gambit_fn_024F607C(cpu);
|
|
/* 0252ED64 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 0252ED64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0252ED68 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252ED68 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0252ED6C */ cpu->lr = cpu->r[0];
|
|
/* 0252ED70 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0252ED74 */ return;
|
|
}
|
|
|
|
// fn_0252ECF0 @ 0x252ecf0
|
|
void Gambit_fn_0252ECF0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_0252ECF0: ; // 0x252ecf0
|
|
/* 0252ECF0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0252ECF0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252ECF0 */ cpu->r[1] = _t0;
|
|
/* 0252ECF4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252ECF4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0252ECF8 */ cpu->r[31] = cpu->r[3];
|
|
/* 0252ECFC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0252ECFC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0252ED00 */ Gambit_fn_0252DAA8(cpu);
|
|
/* 0252ED04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252ED08 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252ED08 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0252ED08 */ if (_t4) goto L_0252ED3C; else goto L_0252ED0C;
|
|
L_0252ED0C: ; // 0x252ed0c
|
|
/* 0252ED0C */ cpu->r[12] = 0x101C0000u;
|
|
/* 0252ED10 */ _t5 = cpu->r[12] + 0x00005BA0u;
|
|
/* 0252ED10 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0252ED14 */ _t6 = cpu->r[31] + 0x00000024u;
|
|
/* 0252ED14 */ cpu->r[8] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0252ED18 */ _t7 = cpu->r[12] + 0x00000100u;
|
|
/* 0252ED18 */ cpu->r[9] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0252ED1C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[9]);
|
|
/* 0252ED20 */ cpu->r[3] = 0x00000000u;
|
|
/* 0252ED24 */ _t8 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0252ED24 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0252ED24 */ if (_t9) goto L_0252ED28; else goto L_0252ED34;
|
|
L_0252ED28: ; // 0x252ed28
|
|
/* 0252ED28 */ _t10 = cpu->r[12] + 0x00000108u;
|
|
/* 0252ED28 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0252ED2C */ cpu->r[10] = rbrew_rlwinm(cpu->r[8], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0252ED30 */ _t11 = cpu->r[10] + cpu->r[0];
|
|
/* 0252ED30 */ cpu->r[3] = rbrew_read32(cpu->mem, _t11);
|
|
L_0252ED34: ; // 0x252ed34
|
|
/* 0252ED34 */ cpu->r[4] = cpu->r[31];
|
|
/* 0252ED38 */ Gambit_fn_02530A3C(cpu);
|
|
L_0252ED3C: ; // 0x252ed3c
|
|
/* 0252ED3C */ cpu->r[3] = cpu->r[31];
|
|
/* 0252ED40 */ Gambit_fn_0252E978(cpu);
|
|
/* 0252ED44 */ cpu->r[3] = cpu->r[31];
|
|
/* 0252ED48 */ Gambit_fn_024F606C(cpu);
|
|
/* 0252ED4C */ _t12 = cpu->r[31] + 0x00000214u;
|
|
/* 0252ED4C */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0252ED50 */ Gambit_fn_0239859C(cpu);
|
|
/* 0252ED54 */ _t13 = cpu->r[31] + 0x00000218u;
|
|
/* 0252ED54 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0252ED58 */ Gambit_fn_0239859C(cpu);
|
|
/* 0252ED5C */ cpu->r[3] = cpu->r[31];
|
|
/* 0252ED60 */ Gambit_fn_024F607C(cpu);
|
|
/* 0252ED64 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 0252ED64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0252ED68 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252ED68 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0252ED6C */ cpu->lr = cpu->r[0];
|
|
/* 0252ED70 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0252ED74 */ return;
|
|
}
|
|
|
|
// fn_0252ED78 @ 0x252ed78
|
|
void Gambit_fn_0252ED78(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17;
|
|
|
|
L_0252ED78: ; // 0x252ed78
|
|
/* 0252ED78 */ cpu->r[0] = cpu->lr;
|
|
/* 0252ED7C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0252ED7C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252ED7C */ cpu->r[1] = _t0;
|
|
/* 0252ED80 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252ED80 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0252ED84 */ cpu->r[31] = cpu->r[3];
|
|
/* 0252ED88 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0252ED88 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0252ED8C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0252ED8C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0252ED90 */ _t4 = cpu->r[31] + 0x00000050u;
|
|
/* 0252ED90 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0252ED94 */ _t5 = cpu->r[3] + 0x000046BCu;
|
|
/* 0252ED94 */ cpu->r[11] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0252ED98 */ _t6 = cpu->r[11] + 0x0000002Cu;
|
|
/* 0252ED98 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0252ED9C */ cpu->ctr = cpu->r[0];
|
|
/* 0252EDA0 */ _t7 = cpu->r[31] + 0x000001ECu;
|
|
/* 0252EDA0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0252EDA4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252EDA8 */ _t8 = cpu->r[3] + 0x00000000u;
|
|
/* 0252EDA8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 0252EDAC */ cpu->r[9] = 0x100C0000u;
|
|
/* 0252EDB0 */ _t9 = cpu->r[9] + 0x00003C70u;
|
|
/* 0252EDB0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 0252EDB4 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0252EDB8 */ _t10 = cpu->r[3] + 0x00000008u;
|
|
/* 0252EDB8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 0252EDBC */ cpu->f[2] = cpu->f[12] + cpu->f[0];
|
|
/* 0252EDC0 */ cpu->r[4] = 0x101C0000u;
|
|
/* 0252EDC4 */ _t11 = cpu->r[12] + 0x00001D14u;
|
|
/* 0252EDC4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0252EDC8 */ cpu->f[1] = cpu->f[12] - cpu->f[0];
|
|
/* 0252EDCC */ _t12 = cpu->r[4] + 0x00006648u;
|
|
/* 0252EDCC */ cpu->r[4] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0252EDD0 */ cpu->f[3] = cpu->f[13] - cpu->f[0];
|
|
/* 0252EDD4 */ cpu->r[6] = cpu->r[30];
|
|
/* 0252EDD8 */ cpu->f[4] = cpu->f[13] + cpu->f[0];
|
|
/* 0252EDDC */ _t13 = cpu->r[12] + 0x00005444u;
|
|
/* 0252EDDC */ cpu->r[7] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0252EDE0 */ cpu->r[5] = cpu->r[31];
|
|
/* 0252EDE4 */ cpu->r[3] = cpu->r[12];
|
|
/* 0252EDE8 */ Gambit_fn_02031B20(cpu);
|
|
/* 0252EDEC */ _t14 = cpu->r[31] + 0x000001E8u;
|
|
/* 0252EDEC */ rbrew_write32(cpu->mem, _t14, cpu->r[3]);
|
|
/* 0252EDF0 */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 0252EDF0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0252EDF4 */ _t16 = cpu->r[1] + 0x00000008u;
|
|
/* 0252EDF4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0252EDF8 */ cpu->lr = cpu->r[0];
|
|
/* 0252EDFC */ _t17 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252EDFC */ cpu->r[31] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0252EE00 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0252EE04 */ return;
|
|
}
|
|
|
|
// fn_0252ED7C @ 0x252ed7c
|
|
void Gambit_fn_0252ED7C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17;
|
|
|
|
L_0252ED7C: ; // 0x252ed7c
|
|
/* 0252ED7C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0252ED7C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252ED7C */ cpu->r[1] = _t0;
|
|
/* 0252ED80 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252ED80 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0252ED84 */ cpu->r[31] = cpu->r[3];
|
|
/* 0252ED88 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0252ED88 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0252ED8C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0252ED8C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0252ED90 */ _t4 = cpu->r[31] + 0x00000050u;
|
|
/* 0252ED90 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0252ED94 */ _t5 = cpu->r[3] + 0x000046BCu;
|
|
/* 0252ED94 */ cpu->r[11] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0252ED98 */ _t6 = cpu->r[11] + 0x0000002Cu;
|
|
/* 0252ED98 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0252ED9C */ cpu->ctr = cpu->r[0];
|
|
/* 0252EDA0 */ _t7 = cpu->r[31] + 0x000001ECu;
|
|
/* 0252EDA0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0252EDA4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252EDA8 */ _t8 = cpu->r[3] + 0x00000000u;
|
|
/* 0252EDA8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 0252EDAC */ cpu->r[9] = 0x100C0000u;
|
|
/* 0252EDB0 */ _t9 = cpu->r[9] + 0x00003C70u;
|
|
/* 0252EDB0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 0252EDB4 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0252EDB8 */ _t10 = cpu->r[3] + 0x00000008u;
|
|
/* 0252EDB8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 0252EDBC */ cpu->f[2] = cpu->f[12] + cpu->f[0];
|
|
/* 0252EDC0 */ cpu->r[4] = 0x101C0000u;
|
|
/* 0252EDC4 */ _t11 = cpu->r[12] + 0x00001D14u;
|
|
/* 0252EDC4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0252EDC8 */ cpu->f[1] = cpu->f[12] - cpu->f[0];
|
|
/* 0252EDCC */ _t12 = cpu->r[4] + 0x00006648u;
|
|
/* 0252EDCC */ cpu->r[4] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0252EDD0 */ cpu->f[3] = cpu->f[13] - cpu->f[0];
|
|
/* 0252EDD4 */ cpu->r[6] = cpu->r[30];
|
|
/* 0252EDD8 */ cpu->f[4] = cpu->f[13] + cpu->f[0];
|
|
/* 0252EDDC */ _t13 = cpu->r[12] + 0x00005444u;
|
|
/* 0252EDDC */ cpu->r[7] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0252EDE0 */ cpu->r[5] = cpu->r[31];
|
|
/* 0252EDE4 */ cpu->r[3] = cpu->r[12];
|
|
/* 0252EDE8 */ Gambit_fn_02031B20(cpu);
|
|
/* 0252EDEC */ _t14 = cpu->r[31] + 0x000001E8u;
|
|
/* 0252EDEC */ rbrew_write32(cpu->mem, _t14, cpu->r[3]);
|
|
/* 0252EDF0 */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 0252EDF0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0252EDF4 */ _t16 = cpu->r[1] + 0x00000008u;
|
|
/* 0252EDF4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0252EDF8 */ cpu->lr = cpu->r[0];
|
|
/* 0252EDFC */ _t17 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252EDFC */ cpu->r[31] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0252EE00 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0252EE04 */ return;
|
|
}
|
|
|
|
// fn_0252EE08 @ 0x252ee08
|
|
void Gambit_fn_0252EE08(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_0252EE08: ; // 0x252ee08
|
|
/* 0252EE08 */ cpu->r[0] = cpu->lr;
|
|
/* 0252EE0C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0252EE0C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252EE0C */ cpu->r[1] = _t0;
|
|
/* 0252EE10 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252EE10 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0252EE14 */ cpu->r[31] = cpu->r[3];
|
|
/* 0252EE18 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0252EE1C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0252EE1C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0252EE20 */ _t3 = cpu->r[3] + 0x00001D14u;
|
|
/* 0252EE20 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0252EE24 */ cpu->r[4] = cpu->r[31] + 0x000001E8u;
|
|
/* 0252EE28 */ Gambit_fn_02031BD0(cpu);
|
|
/* 0252EE2C */ cpu->r[0] = 0x00000000u;
|
|
/* 0252EE30 */ _t4 = cpu->r[31] + 0x000001E8u;
|
|
/* 0252EE30 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0252EE34 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 0252EE34 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0252EE38 */ cpu->lr = cpu->r[0];
|
|
/* 0252EE3C */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252EE3C */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0252EE40 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0252EE44 */ return;
|
|
}
|
|
|
|
// fn_0252EE0C @ 0x252ee0c
|
|
void Gambit_fn_0252EE0C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_0252EE0C: ; // 0x252ee0c
|
|
/* 0252EE0C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0252EE0C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252EE0C */ cpu->r[1] = _t0;
|
|
/* 0252EE10 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252EE10 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0252EE14 */ cpu->r[31] = cpu->r[3];
|
|
/* 0252EE18 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0252EE1C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0252EE1C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0252EE20 */ _t3 = cpu->r[3] + 0x00001D14u;
|
|
/* 0252EE20 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0252EE24 */ cpu->r[4] = cpu->r[31] + 0x000001E8u;
|
|
/* 0252EE28 */ Gambit_fn_02031BD0(cpu);
|
|
/* 0252EE2C */ cpu->r[0] = 0x00000000u;
|
|
/* 0252EE30 */ _t4 = cpu->r[31] + 0x000001E8u;
|
|
/* 0252EE30 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0252EE34 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 0252EE34 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0252EE38 */ cpu->lr = cpu->r[0];
|
|
/* 0252EE3C */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252EE3C */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0252EE40 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0252EE44 */ return;
|
|
}
|
|
|
|
// fn_0252EE48 @ 0x252ee48
|
|
void Gambit_fn_0252EE48(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_0252EE48: ; // 0x252ee48
|
|
/* 0252EE48 */ _t0 = cpu->r[3] + 0x00000078u;
|
|
/* 0252EE48 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 0252EE4C */ cpu->r[12] = 0x100C0000u;
|
|
/* 0252EE50 */ _t1 = cpu->r[4] + 0x00000004u;
|
|
/* 0252EE50 */ rbrew_write_f32(cpu->mem, _t1, cpu->f[0]);
|
|
/* 0252EE54 */ _t2 = cpu->r[3] + 0x0000007Cu;
|
|
/* 0252EE54 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 0252EE58 */ _t3 = cpu->r[12] + 0x00003C70u;
|
|
/* 0252EE58 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 0252EE5C */ _t4 = cpu->r[4] + 0x00000008u;
|
|
/* 0252EE5C */ rbrew_write_f32(cpu->mem, _t4, cpu->f[13]);
|
|
/* 0252EE60 */ _t5 = cpu->r[3] + 0x00000080u;
|
|
/* 0252EE60 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 0252EE64 */ _t6 = cpu->r[4] + 0x00000010u;
|
|
/* 0252EE64 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[0]);
|
|
/* 0252EE68 */ _t7 = cpu->r[4] + 0x0000000Cu;
|
|
/* 0252EE68 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[13]);
|
|
/* 0252EE6C */ return;
|
|
}
|
|
|
|
// fn_0252EE70 @ 0x252ee70
|
|
void Gambit_fn_0252EE70(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _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, _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, _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;
|
|
double _ft99, _ft100, _ft178, _ft179;
|
|
|
|
L_0252EE70: ; // 0x252ee70
|
|
/* 0252EE70 */ cpu->r[0] = cpu->lr;
|
|
/* 0252EE74 */ _t0 = cpu->r[1] + 0xFFFFFE60u;
|
|
/* 0252EE74 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252EE74 */ cpu->r[1] = _t0;
|
|
/* 0252EE78 */ _t1 = cpu->r[1] + 0x00000190u;
|
|
/* 0252EE78 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0252EE7C */ /* nop */
|
|
/* 0252EE80 */ _t2 = cpu->r[1] + 0x00000170u;
|
|
/* 0252EE80 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[29]);
|
|
/* 0252EE84 */ /* nop */
|
|
/* 0252EE88 */ _t3 = cpu->r[1] + 0x00000180u;
|
|
/* 0252EE88 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[30]);
|
|
/* 0252EE8C */ _t4 = cpu->r[1] + 0x00000198u;
|
|
/* 0252EE8C */ rbrew_write_f32(cpu->mem, _t4, cpu->f[31]);
|
|
/* 0252EE90 */ /* nop */
|
|
/* 0252EE94 */ _t5 = cpu->r[1] + 0x00000178u;
|
|
/* 0252EE94 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[29]);
|
|
/* 0252EE98 */ _t6 = cpu->r[1] + 0x000001A4u;
|
|
/* 0252EE98 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0252EE9C */ _t7 = cpu->r[1] + 0x0000016Cu;
|
|
/* 0252EE9C */ rbrew_write32(cpu->mem, _t7, cpu->r[31]);
|
|
/* 0252EEA0 */ _t8 = cpu->r[1] + 0x00000160u;
|
|
/* 0252EEA0 */ rbrew_write32(cpu->mem, _t8, cpu->r[28]);
|
|
/* 0252EEA4 */ cpu->r[31] = 0x101F0000u;
|
|
/* 0252EEA8 */ _t9 = cpu->r[1] + 0x00000188u;
|
|
/* 0252EEA8 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[30]);
|
|
/* 0252EEAC */ _t10 = cpu->r[1] + 0x00000168u;
|
|
/* 0252EEAC */ rbrew_write32(cpu->mem, _t10, cpu->r[30]);
|
|
/* 0252EEB0 */ _t11 = cpu->r[1] + 0x00000164u;
|
|
/* 0252EEB0 */ rbrew_write32(cpu->mem, _t11, cpu->r[29]);
|
|
/* 0252EEB4 */ cpu->r[29] = cpu->r[4];
|
|
/* 0252EEB8 */ _t12 = cpu->r[31] + 0x00003840u;
|
|
/* 0252EEB8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0252EEB8 */ cpu->r[31] = _t12;
|
|
/* 0252EEBC */ cpu->r[10] = 0x100C0000u;
|
|
/* 0252EEC0 */ _t13 = cpu->r[10] + 0x00003BDCu;
|
|
/* 0252EEC0 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 0252EEC4 */ _t14 = cpu->r[31] + 0x00000008u;
|
|
/* 0252EEC4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0252EEC8 */ _t15 = cpu->r[31] + 0x00000004u;
|
|
/* 0252EEC8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0252EECC */ _t16 = cpu->r[1] + 0x000000D4u;
|
|
/* 0252EECC */ rbrew_write32(cpu->mem, _t16, cpu->r[10]);
|
|
/* 0252EED0 */ cpu->r[0] = 0x10110000u;
|
|
/* 0252EED4 */ _t17 = cpu->r[1] + 0x000000DCu;
|
|
/* 0252EED4 */ rbrew_write32(cpu->mem, _t17, cpu->r[8]);
|
|
/* 0252EED8 */ cpu->r[0] = cpu->r[0] + 0xFFFFEF7Cu;
|
|
/* 0252EEDC */ _t18 = cpu->r[1] + 0x000000E0u;
|
|
/* 0252EEDC */ rbrew_write32(cpu->mem, _t18, cpu->r[10]);
|
|
/* 0252EEE0 */ cpu->r[30] = cpu->r[3];
|
|
/* 0252EEE4 */ _t19 = cpu->r[1] + 0x000000CCu;
|
|
/* 0252EEE4 */ rbrew_write32(cpu->mem, _t19, cpu->r[6]);
|
|
/* 0252EEE8 */ cpu->r[3] = cpu->r[29];
|
|
/* 0252EEEC */ _t20 = cpu->r[1] + 0x000000E4u;
|
|
/* 0252EEEC */ rbrew_write_f32(cpu->mem, _t20, cpu->f[30]);
|
|
/* 0252EEF0 */ cpu->r[4] = cpu->r[1] + 0x000000C8u;
|
|
/* 0252EEF4 */ _t21 = cpu->r[1] + 0x000000C8u;
|
|
/* 0252EEF4 */ rbrew_write32(cpu->mem, _t21, cpu->r[0]);
|
|
/* 0252EEF8 */ _t22 = cpu->r[1] + 0x000000D8u;
|
|
/* 0252EEF8 */ rbrew_write32(cpu->mem, _t22, cpu->r[6]);
|
|
/* 0252EEFC */ _t23 = cpu->r[1] + 0x000000D0u;
|
|
/* 0252EEFC */ rbrew_write32(cpu->mem, _t23, cpu->r[8]);
|
|
/* 0252EF00 */ Gambit_fn_025C65E8(cpu);
|
|
/* 0252EF04 */ _t24 = cpu->r[29] + 0x0000002Cu;
|
|
/* 0252EF04 */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0252EF08 */ _t25 = cpu->r[30] + 0x0000002Cu;
|
|
/* 0252EF08 */ cpu->r[7] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0252EF0C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]);
|
|
/* 0252EF10 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252EF10 */ _t27 = _t26 & 0x00000001u;
|
|
/* 0252EF10 */ if (_t27) goto L_0252EF14; else goto L_0252EF88;
|
|
L_0252EF14: ; // 0x252ef14
|
|
/* 0252EF14 */ _t28 = cpu->r[29] + 0x00000668u;
|
|
/* 0252EF14 */ cpu->r[0] = rbrew_read8(cpu->mem, _t28);
|
|
/* 0252EF18 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0252EF1C */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252EF1C */ _t30 = _t29 & 0x00000001u;
|
|
/* 0252EF1C */ if (_t30) goto L_0252EF20; else goto L_0252EF88;
|
|
L_0252EF20: ; // 0x252ef20
|
|
/* 0252EF20 */ cpu->r[4] = cpu->r[1] + 0x000000CCu;
|
|
/* 0252EF24 */ cpu->r[3] = cpu->r[30] + 0x00000078u;
|
|
/* 0252EF28 */ Gambit_fn_02C693A4(cpu);
|
|
/* 0252EF2C */ _t31 = cpu->r[1] + 0x000000E4u;
|
|
/* 0252EF2C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 0252EF30 */ cpu->r[7] = 0x100C0000u;
|
|
/* 0252EF34 */ cpu->f[10] = cpu->f[1] + cpu->f[13];
|
|
/* 0252EF38 */ _t32 = cpu->r[7] + 0x00003C70u;
|
|
/* 0252EF38 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 0252EF3C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[0]);
|
|
/* 0252EF40 */ _t33 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252EF40 */ _t34 = _t33 & 0x00000001u;
|
|
/* 0252EF40 */ if (_t34) goto L_0252F468; else goto L_0252EF44;
|
|
L_0252EF44: ; // 0x252ef44
|
|
/* 0252EF44 */ cpu->r[3] = cpu->r[29];
|
|
/* 0252EF48 */ Gambit_fn_025C678C(cpu);
|
|
/* 0252EF4C */ _t35 = cpu->r[1] + 0x00000160u;
|
|
/* 0252EF4C */ cpu->r[28] = rbrew_read32(cpu->mem, _t35);
|
|
/* 0252EF50 */ _t36 = cpu->r[1] + 0x00000164u;
|
|
/* 0252EF50 */ cpu->r[29] = rbrew_read32(cpu->mem, _t36);
|
|
/* 0252EF54 */ _t37 = cpu->r[1] + 0x00000198u;
|
|
/* 0252EF54 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 0252EF58 */ _t38 = cpu->r[1] + 0x00000178u;
|
|
/* 0252EF58 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 0252EF5C */ _t39 = cpu->r[1] + 0x00000190u;
|
|
/* 0252EF5C */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t39);
|
|
/* 0252EF60 */ _t40 = cpu->r[1] + 0x00000188u;
|
|
/* 0252EF60 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 0252EF64 */ _t41 = cpu->r[1] + 0x00000170u;
|
|
/* 0252EF64 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t41);
|
|
/* 0252EF68 */ _t42 = cpu->r[1] + 0x00000180u;
|
|
/* 0252EF68 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t42);
|
|
/* 0252EF6C */ _t43 = cpu->r[1] + 0x0000016Cu;
|
|
/* 0252EF6C */ cpu->r[31] = rbrew_read32(cpu->mem, _t43);
|
|
/* 0252EF70 */ _t44 = cpu->r[1] + 0x00000168u;
|
|
/* 0252EF70 */ cpu->r[30] = rbrew_read32(cpu->mem, _t44);
|
|
/* 0252EF74 */ _t45 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0252EF74 */ _t46 = _t45 & 0x00000001u;
|
|
/* 0252EF74 */ if (_t46) goto L_0252EF78; // else: addr-0 trap, fall-through
|
|
L_0252EF78: ; // 0x252ef78
|
|
/* 0252EF78 */ _t47 = cpu->r[1] + 0x000001A4u;
|
|
/* 0252EF78 */ cpu->r[0] = rbrew_read32(cpu->mem, _t47);
|
|
/* 0252EF7C */ cpu->lr = cpu->r[0];
|
|
/* 0252EF80 */ cpu->r[1] = cpu->r[1] + 0x000001A0u;
|
|
/* 0252EF84 */ return;
|
|
L_0252EF88: ; // 0x252ef88
|
|
/* 0252EF88 */ _t48 = cpu->r[31] + 0x00000008u;
|
|
/* 0252EF88 */ cpu->r[11] = rbrew_read32(cpu->mem, _t48);
|
|
/* 0252EF8C */ cpu->r[0] = 0x10110000u;
|
|
/* 0252EF90 */ _t49 = cpu->r[31] + 0x00000004u;
|
|
/* 0252EF90 */ cpu->r[9] = rbrew_read32(cpu->mem, _t49);
|
|
/* 0252EF94 */ cpu->r[0] = cpu->r[0] + 0xFFFFEF4Cu;
|
|
/* 0252EF98 */ _t50 = cpu->r[31] + 0x00000000u;
|
|
/* 0252EF98 */ cpu->r[7] = rbrew_read32(cpu->mem, _t50);
|
|
/* 0252EF9C */ cpu->r[4] = cpu->r[1] + 0x0000013Cu;
|
|
/* 0252EFA0 */ _t51 = cpu->r[1] + 0x0000013Cu;
|
|
/* 0252EFA0 */ rbrew_write32(cpu->mem, _t51, cpu->r[0]);
|
|
/* 0252EFA4 */ _t52 = cpu->r[1] + 0x00000144u;
|
|
/* 0252EFA4 */ rbrew_write32(cpu->mem, _t52, cpu->r[9]);
|
|
/* 0252EFA8 */ cpu->r[3] = cpu->r[30];
|
|
/* 0252EFAC */ _t53 = cpu->r[1] + 0x00000148u;
|
|
/* 0252EFAC */ rbrew_write32(cpu->mem, _t53, cpu->r[11]);
|
|
/* 0252EFB0 */ _t54 = cpu->r[1] + 0x0000014Cu;
|
|
/* 0252EFB0 */ rbrew_write_f32(cpu->mem, _t54, cpu->f[30]);
|
|
/* 0252EFB4 */ _t55 = cpu->r[1] + 0x00000140u;
|
|
/* 0252EFB4 */ rbrew_write32(cpu->mem, _t55, cpu->r[7]);
|
|
/* 0252EFB8 */ Gambit_fn_0252EE48(cpu);
|
|
/* 0252EFBC */ cpu->r[3] = cpu->r[4];
|
|
/* 0252EFC0 */ cpu->r[4] = cpu->r[1] + 0x000000C8u;
|
|
/* 0252EFC4 */ cpu->r[5] = cpu->r[1] + 0x00000020u;
|
|
/* 0252EFC8 */ Gambit_fn_027DE3CC(cpu);
|
|
/* 0252EFCC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252EFD0 */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252EFD0 */ _t57 = _t56 & 0x00000001u;
|
|
/* 0252EFD0 */ if (_t57) goto L_0252F468; else goto L_0252EFD4;
|
|
L_0252EFD4: ; // 0x252efd4
|
|
/* 0252EFD4 */ _t58 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0252EFD4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 0252EFD8 */ /* nop */
|
|
/* 0252EFDC */ /* nop */
|
|
/* 0252EFE0 */ /* nop */
|
|
/* 0252EFE4 */ _t59 = cpu->r[1] + 0x00000020u;
|
|
/* 0252EFE4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t59);
|
|
/* 0252EFE8 */ /* nop */
|
|
/* 0252EFEC */ _t60 = cpu->r[1] + 0x00000098u;
|
|
/* 0252EFEC */ cpu->r[8] = rbrew_read32(cpu->mem, _t60);
|
|
/* 0252EFF0 */ _t61 = cpu->r[1] + 0x00000028u;
|
|
/* 0252EFF0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t61);
|
|
/* 0252EFF4 */ _t62 = cpu->r[1] + 0x0000009Cu;
|
|
/* 0252EFF4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t62);
|
|
/* 0252EFF8 */ cpu->f[10] = -cpu->f[13];
|
|
/* 0252EFFC */ _t63 = cpu->r[1] + 0x00000150u;
|
|
/* 0252EFFC */ rbrew_write32(cpu->mem, _t63, cpu->r[8]);
|
|
/* 0252F000 */ cpu->f[7] = cpu->f[11] * cpu->f[12];
|
|
/* 0252F004 */ _t64 = cpu->r[1] + 0x00000154u;
|
|
/* 0252F004 */ rbrew_write32(cpu->mem, _t64, cpu->r[9]);
|
|
/* 0252F008 */ /* nop */
|
|
/* 0252F00C */ _t65 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0252F00C */ rbrew_write_f32(cpu->mem, _t65, cpu->f[10]);
|
|
/* 0252F010 */ _t66 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0252F010 */ cpu->r[7] = rbrew_read32(cpu->mem, _t66);
|
|
/* 0252F014 */ _t67 = cpu->r[1] + 0x000000A0u;
|
|
/* 0252F014 */ rbrew_write_f32(cpu->mem, _t67, cpu->f[7]);
|
|
/* 0252F018 */ _t68 = cpu->r[1] + 0x000000A0u;
|
|
/* 0252F018 */ cpu->r[0] = rbrew_read32(cpu->mem, _t68);
|
|
/* 0252F01C */ _t69 = cpu->r[1] + 0x00000024u;
|
|
/* 0252F01C */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t69);
|
|
/* 0252F020 */ _t70 = cpu->r[1] + 0x00000158u;
|
|
/* 0252F020 */ rbrew_write32(cpu->mem, _t70, cpu->r[0]);
|
|
/* 0252F024 */ _t71 = cpu->r[1] + 0x00000158u;
|
|
/* 0252F024 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t71);
|
|
/* 0252F028 */ cpu->f[0] = -cpu->f[7];
|
|
/* 0252F02C */ _t72 = cpu->r[1] + 0x00000118u;
|
|
/* 0252F02C */ rbrew_write32(cpu->mem, _t72, cpu->r[7]);
|
|
/* 0252F030 */ _t73 = cpu->r[1] + 0x00000118u;
|
|
/* 0252F030 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t73);
|
|
/* 0252F034 */ cpu->f[8] = -cpu->f[11];
|
|
/* 0252F038 */ _t74 = cpu->r[1] + 0x00000038u;
|
|
/* 0252F038 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t74);
|
|
/* 0252F03C */ _t75 = cpu->r[1] + 0x00000040u;
|
|
/* 0252F03C */ rbrew_write_f32(cpu->mem, _t75, cpu->f[0]);
|
|
/* 0252F040 */ _t76 = cpu->r[1] + 0x00000040u;
|
|
/* 0252F040 */ cpu->r[9] = rbrew_read32(cpu->mem, _t76);
|
|
/* 0252F044 */ _t77 = cpu->r[1] + 0x00000044u;
|
|
/* 0252F044 */ rbrew_write_f32(cpu->mem, _t77, cpu->f[8]);
|
|
/* 0252F048 */ _t78 = cpu->r[1] + 0x00000044u;
|
|
/* 0252F048 */ cpu->r[11] = rbrew_read32(cpu->mem, _t78);
|
|
/* 0252F04C */ _t79 = cpu->r[1] + 0x0000011Cu;
|
|
/* 0252F04C */ rbrew_write32(cpu->mem, _t79, cpu->r[9]);
|
|
/* 0252F050 */ _t80 = cpu->r[1] + 0x0000011Cu;
|
|
/* 0252F050 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t80);
|
|
/* 0252F054 */ _t81 = cpu->r[1] + 0x00000120u;
|
|
/* 0252F054 */ rbrew_write32(cpu->mem, _t81, cpu->r[11]);
|
|
/* 0252F058 */ _t82 = cpu->r[1] + 0x00000120u;
|
|
/* 0252F058 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t82);
|
|
/* 0252F05C */ /* nop */
|
|
/* 0252F060 */ _t83 = cpu->r[1] + 0x00000024u;
|
|
/* 0252F060 */ rbrew_write_f32(cpu->mem, _t83, cpu->f[11]);
|
|
/* 0252F064 */ cpu->f[6] = cpu->f[6] + cpu->f[13];
|
|
/* 0252F068 */ _t84 = cpu->r[1] + 0x00000020u;
|
|
/* 0252F068 */ rbrew_write_f32(cpu->mem, _t84, cpu->f[9]);
|
|
/* 0252F06C */ /* nop */
|
|
/* 0252F070 */ cpu->f[0] = cpu->f[7] * cpu->f[12];
|
|
/* 0252F074 */ _t85 = cpu->r[1] + 0x00000038u;
|
|
/* 0252F074 */ rbrew_write_f32(cpu->mem, _t85, cpu->f[6]);
|
|
/* 0252F078 */ /* nop */
|
|
/* 0252F07C */ /* nop */
|
|
/* 0252F080 */ _t86 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252F080 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t86);
|
|
/* 0252F084 */ /* nop */
|
|
/* 0252F088 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[30], cpu->f[8]);
|
|
/* 0252F08C */ _t87 = cpu->r[1] + 0x00000028u;
|
|
/* 0252F08C */ rbrew_write_f32(cpu->mem, _t87, cpu->f[7]);
|
|
/* 0252F090 */ _t88 = cpu->r[1] + 0x00000010u;
|
|
/* 0252F090 */ rbrew_write_f32(cpu->mem, _t88, cpu->f[0]);
|
|
/* 0252F094 */ _t89 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252F094 */ _t90 = _t89 & 0x00000001u;
|
|
/* 0252F094 */ if (_t90) goto L_0252F098; else goto L_0252F09C;
|
|
L_0252F098: ; // 0x252f098
|
|
/* 0252F098 */ _t91 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252F098 */ rbrew_write_f32(cpu->mem, _t91, cpu->f[30]);
|
|
L_0252F09C: ; // 0x252f09c
|
|
/* 0252F09C */ cpu->r[3] = cpu->r[29];
|
|
/* 0252F0A0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0252F0A4 */ Gambit_fn_025C6600(cpu);
|
|
/* 0252F0A8 */ _t92 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252F0A8 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t92);
|
|
/* 0252F0AC */ cpu->f[9] = cpu->f[8] * cpu->f[8];
|
|
/* 0252F0B0 */ _t93 = cpu->r[1] + 0x00000008u;
|
|
/* 0252F0B0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t93);
|
|
/* 0252F0B4 */ cpu->f[10] = fma(cpu->f[0], cpu->f[0], cpu->f[9]);
|
|
/* 0252F0B8 */ _t94 = cpu->r[1] + 0x00000010u;
|
|
/* 0252F0B8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t94);
|
|
/* 0252F0BC */ cpu->r[10] = 0x100C0000u;
|
|
/* 0252F0C0 */ _t95 = cpu->r[10] + 0x00003C44u;
|
|
/* 0252F0C0 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t95);
|
|
/* 0252F0C4 */ cpu->f[8] = fma(cpu->f[0], cpu->f[0], cpu->f[10]);
|
|
/* 0252F0C8 */ cpu->r[11] = 0x100C0000u;
|
|
/* 0252F0CC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[30]);
|
|
/* 0252F0D0 */ _t96 = cpu->r[11] + 0x00003C48u;
|
|
/* 0252F0D0 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t96);
|
|
/* 0252F0D4 */ _t97 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252F0D4 */ _t98 = _t97 & 0x00000001u;
|
|
/* 0252F0D4 */ if (_t98) goto L_0252F0D8; else goto L_0252F1A4;
|
|
L_0252F0D8: ; // 0x252f0d8
|
|
/* 0252F0D8 */ _ft99 = sqrt(cpu->f[8]);
|
|
/* 0252F0D8 */ _ft100 = (double)(int32_t)0x00000001u;
|
|
/* 0252F0D8 */ cpu->f[9] = _ft100 / _ft99;
|
|
/* 0252F0DC */ cpu->f[10] = cpu->f[9] * cpu->f[9];
|
|
/* 0252F0E0 */ cpu->f[11] = cpu->f[9] * cpu->f[31];
|
|
/* 0252F0E4 */ cpu->f[10] = -fma(cpu->f[10], cpu->f[8], -(cpu->f[29]));
|
|
/* 0252F0E8 */ cpu->f[9] = cpu->f[10] * cpu->f[11];
|
|
/* 0252F0EC */ cpu->f[8] = cpu->f[8] * cpu->f[9];
|
|
/* 0252F0F0 */ _t101 = cpu->r[1] + 0x00000010u;
|
|
/* 0252F0F0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t101);
|
|
/* 0252F0F4 */ cpu->f[0] = cpu->f[0] * cpu->f[9];
|
|
/* 0252F0F8 */ /* nop */
|
|
/* 0252F0FC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[30]);
|
|
/* 0252F100 */ /* nop */
|
|
/* 0252F104 */ _t102 = cpu->r[1] + 0x00000010u;
|
|
/* 0252F104 */ rbrew_write_f32(cpu->mem, _t102, cpu->f[0]);
|
|
/* 0252F108 */ /* nop */
|
|
/* 0252F10C */ _t103 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252F10C */ _t104 = _t103 & 0x00000001u;
|
|
/* 0252F10C */ if (_t104) goto L_0252F128; else goto L_0252F110;
|
|
L_0252F110: ; // 0x252f110
|
|
/* 0252F110 */ _t105 = cpu->r[30] + 0x000001FCu;
|
|
/* 0252F110 */ cpu->r[9] = rbrew_read32(cpu->mem, _t105);
|
|
/* 0252F114 */ cpu->r[8] = cpu->r[9] + 0x00000001u;
|
|
/* 0252F118 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x0000000Du);
|
|
/* 0252F11C */ /* nop */
|
|
/* 0252F120 */ _t106 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252F120 */ _t107 = _t106 & 0x00000001u;
|
|
/* 0252F120 */ if (_t107) goto L_0252F468; else goto L_0252F124;
|
|
L_0252F124: ; // 0x252f124
|
|
/* 0252F124 */ goto L_0252F1B4;
|
|
L_0252F128: ; // 0x252f128
|
|
/* 0252F128 */ cpu->r[9] = 0x100C0000u;
|
|
/* 0252F12C */ /* nop */
|
|
/* 0252F130 */ _t108 = cpu->r[9] + 0x00003CA0u;
|
|
/* 0252F130 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t108);
|
|
/* 0252F134 */ /* nop */
|
|
/* 0252F138 */ _t109 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252F138 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t109);
|
|
/* 0252F13C */ cpu->f[0] = cpu->f[0] * cpu->f[29];
|
|
/* 0252F140 */ _t110 = cpu->r[29] + 0x00000050u;
|
|
/* 0252F140 */ cpu->r[0] = rbrew_read32(cpu->mem, _t110);
|
|
/* 0252F144 */ cpu->r[7] = 0x100C0000u;
|
|
/* 0252F148 */ _t111 = cpu->r[7] + 0x00003C24u;
|
|
/* 0252F148 */ cpu->f[2] = rbrew_read_f32(cpu->mem, _t111);
|
|
/* 0252F14C */ cpu->f[7] = cpu->f[7] + cpu->f[13];
|
|
/* 0252F150 */ _t112 = cpu->r[1] + 0x00000010u;
|
|
/* 0252F150 */ rbrew_write_f32(cpu->mem, _t112, cpu->f[0]);
|
|
/* 0252F154 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0252F158 */ cpu->f[1] = cpu->f[2];
|
|
/* 0252F15C */ cpu->r[3] = cpu->r[29];
|
|
/* 0252F160 */ _t113 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252F160 */ rbrew_write_f32(cpu->mem, _t113, cpu->f[7]);
|
|
/* 0252F164 */ _t114 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252F164 */ _t115 = _t114 & 0x00000001u;
|
|
/* 0252F164 */ if (_t115) goto L_0252F168; else goto L_0252F190;
|
|
L_0252F168: ; // 0x252f168
|
|
/* 0252F168 */ cpu->r[6] = 0x00000002u;
|
|
/* 0252F16C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0252F170 */ cpu->r[5] = cpu->r[1] + 0x00000084u;
|
|
/* 0252F174 */ _t116 = cpu->r[1] + 0x00000084u;
|
|
/* 0252F174 */ rbrew_write32(cpu->mem, _t116, cpu->r[6]);
|
|
/* 0252F178 */ Gambit_fn_025BD378(cpu);
|
|
/* 0252F17C */ _t117 = cpu->r[30] + 0x000001FCu;
|
|
/* 0252F17C */ cpu->r[9] = rbrew_read32(cpu->mem, _t117);
|
|
/* 0252F180 */ cpu->r[8] = cpu->r[9] + 0x00000001u;
|
|
/* 0252F184 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x0000000Du);
|
|
/* 0252F188 */ _t118 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252F188 */ _t119 = _t118 & 0x00000001u;
|
|
/* 0252F188 */ if (_t119) goto L_0252F468; else goto L_0252F18C;
|
|
L_0252F18C: ; // 0x252f18c
|
|
/* 0252F18C */ goto L_0252F1B4;
|
|
L_0252F190: ; // 0x252f190
|
|
/* 0252F190 */ cpu->r[7] = 0x00000002u;
|
|
/* 0252F194 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0252F198 */ cpu->r[5] = cpu->r[1] + 0x00000088u;
|
|
/* 0252F19C */ _t120 = cpu->r[1] + 0x00000088u;
|
|
/* 0252F19C */ rbrew_write32(cpu->mem, _t120, cpu->r[7]);
|
|
/* 0252F1A0 */ Gambit_fn_025BD3BC(cpu);
|
|
L_0252F1A4: ; // 0x252f1a4
|
|
/* 0252F1A4 */ _t121 = cpu->r[30] + 0x000001FCu;
|
|
/* 0252F1A4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t121);
|
|
/* 0252F1A8 */ cpu->r[8] = cpu->r[9] + 0x00000001u;
|
|
/* 0252F1AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x0000000Du);
|
|
/* 0252F1B0 */ _t122 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252F1B0 */ _t123 = _t122 & 0x00000001u;
|
|
/* 0252F1B0 */ if (_t123) goto L_0252F468; else goto L_0252F1B4;
|
|
L_0252F1B4: ; // 0x252f1b4
|
|
/* 0252F1B4 */ cpu->r[28] = 0x00000000u;
|
|
/* 0252F1B8 */ cpu->r[10] = 0x100C0000u;
|
|
/* 0252F1BC */ _t124 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0252F1BC */ rbrew_write32(cpu->mem, _t124, cpu->r[28]);
|
|
/* 0252F1C0 */ cpu->r[10] = cpu->r[10] + 0x00003B40u;
|
|
/* 0252F1C4 */ _t125 = cpu->r[1] + 0x00000090u;
|
|
/* 0252F1C4 */ rbrew_write32(cpu->mem, _t125, cpu->r[28]);
|
|
/* 0252F1C8 */ cpu->r[31] = 0x101F0000u;
|
|
/* 0252F1CC */ _t126 = cpu->r[1] + 0x00000094u;
|
|
/* 0252F1CC */ rbrew_write32(cpu->mem, _t126, cpu->r[10]);
|
|
/* 0252F1D0 */ cpu->r[31] = cpu->r[31] + 0xFFFF9BE0u;
|
|
/* 0252F1D4 */ _t127 = cpu->r[1] + 0x000000A4u;
|
|
/* 0252F1D4 */ rbrew_write32(cpu->mem, _t127, cpu->r[28]);
|
|
/* 0252F1D8 */ cpu->r[11] = 0x100C0000u;
|
|
/* 0252F1DC */ _t128 = cpu->r[31] + 0x00000004u;
|
|
/* 0252F1DC */ cpu->r[12] = rbrew_read32(cpu->mem, _t128);
|
|
/* 0252F1E0 */ cpu->r[11] = cpu->r[11] + 0x00003B80u;
|
|
/* 0252F1E4 */ _t129 = cpu->r[1] + 0x000000A8u;
|
|
/* 0252F1E4 */ rbrew_write32(cpu->mem, _t129, cpu->r[28]);
|
|
/* 0252F1E8 */ _t130 = cpu->r[1] + 0x000000ACu;
|
|
/* 0252F1E8 */ rbrew_write32(cpu->mem, _t130, cpu->r[11]);
|
|
/* 0252F1EC */ _t131 = cpu->r[12] + 0x00000014u;
|
|
/* 0252F1EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t131);
|
|
/* 0252F1F0 */ cpu->ctr = cpu->r[0];
|
|
/* 0252F1F4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0252F1F8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252F1FC */ _t132 = cpu->r[30] + 0x00000030u;
|
|
/* 0252F1FC */ cpu->r[3] = rbrew_read32(cpu->mem, _t132);
|
|
/* 0252F200 */ cpu->r[4] = cpu->r[1] + 0x0000008Cu;
|
|
/* 0252F204 */ _t133 = cpu->r[31] + 0x00000000u;
|
|
/* 0252F204 */ cpu->r[5] = rbrew_read32(cpu->mem, _t133);
|
|
/* 0252F208 */ cpu->r[6] = cpu->r[28];
|
|
/* 0252F20C */ Gambit_fn_027B72F0(cpu);
|
|
/* 0252F210 */ cpu->r[31] = 0x101F0000u;
|
|
/* 0252F214 */ cpu->r[31] = cpu->r[31] + 0xFFFF9BE8u;
|
|
/* 0252F218 */ _t134 = cpu->r[31] + 0x00000004u;
|
|
/* 0252F218 */ cpu->r[7] = rbrew_read32(cpu->mem, _t134);
|
|
/* 0252F21C */ _t135 = cpu->r[7] + 0x00000014u;
|
|
/* 0252F21C */ cpu->r[8] = rbrew_read32(cpu->mem, _t135);
|
|
/* 0252F220 */ _t136 = cpu->r[30] + 0x00000030u;
|
|
/* 0252F220 */ cpu->r[6] = rbrew_read32(cpu->mem, _t136);
|
|
/* 0252F224 */ cpu->ctr = cpu->r[8];
|
|
/* 0252F228 */ _t137 = cpu->r[6] + 0x000000E0u;
|
|
/* 0252F228 */ cpu->r[29] = rbrew_read32(cpu->mem, _t137);
|
|
/* 0252F22C */ cpu->r[3] = cpu->r[31];
|
|
/* 0252F230 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252F234 */ _t138 = cpu->r[29] + 0x0000003Cu;
|
|
/* 0252F234 */ cpu->r[0] = rbrew_read32(cpu->mem, _t138);
|
|
/* 0252F238 */ _t139 = cpu->r[30] + 0x00000030u;
|
|
/* 0252F238 */ cpu->r[3] = rbrew_read32(cpu->mem, _t139);
|
|
/* 0252F23C */ cpu->ctr = cpu->r[0];
|
|
/* 0252F240 */ _t140 = cpu->r[31] + 0x00000000u;
|
|
/* 0252F240 */ cpu->r[5] = rbrew_read32(cpu->mem, _t140);
|
|
/* 0252F244 */ cpu->r[4] = cpu->r[1] + 0x000000A4u;
|
|
/* 0252F248 */ cpu->r[6] = cpu->r[28];
|
|
/* 0252F24C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252F250 */ /* nop */
|
|
/* 0252F254 */ /* nop */
|
|
/* 0252F258 */ _t141 = cpu->r[1] + 0x000000E0u;
|
|
/* 0252F258 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t141);
|
|
/* 0252F25C */ /* nop */
|
|
/* 0252F260 */ _t142 = cpu->r[30] + 0x000001FCu;
|
|
/* 0252F260 */ cpu->r[10] = rbrew_read32(cpu->mem, _t142);
|
|
/* 0252F264 */ /* nop */
|
|
/* 0252F268 */ _t143 = cpu->r[1] + 0x000000B4u;
|
|
/* 0252F268 */ cpu->r[9] = rbrew_read32(cpu->mem, _t143);
|
|
/* 0252F26C */ _t144 = cpu->r[1] + 0x000000D4u;
|
|
/* 0252F26C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t144);
|
|
/* 0252F270 */ _t145 = cpu->r[1] + 0x000000B0u;
|
|
/* 0252F270 */ cpu->r[8] = rbrew_read32(cpu->mem, _t145);
|
|
/* 0252F274 */ cpu->f[7] = cpu->f[8] + cpu->f[9];
|
|
/* 0252F278 */ _t146 = cpu->r[1] + 0x00000124u;
|
|
/* 0252F278 */ rbrew_write32(cpu->mem, _t146, cpu->r[8]);
|
|
/* 0252F27C */ _t147 = cpu->r[1] + 0x00000124u;
|
|
/* 0252F27C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t147);
|
|
/* 0252F280 */ _t148 = cpu->r[1] + 0x000000B8u;
|
|
/* 0252F280 */ rbrew_write_f32(cpu->mem, _t148, cpu->f[7]);
|
|
/* 0252F284 */ _t149 = cpu->r[1] + 0x000000B8u;
|
|
/* 0252F284 */ cpu->r[0] = rbrew_read32(cpu->mem, _t149);
|
|
/* 0252F288 */ cpu->f[10] = cpu->f[11] * cpu->f[31];
|
|
/* 0252F28C */ _t150 = cpu->r[1] + 0x0000012Cu;
|
|
/* 0252F28C */ rbrew_write32(cpu->mem, _t150, cpu->r[0]);
|
|
/* 0252F290 */ _t151 = cpu->r[1] + 0x0000012Cu;
|
|
/* 0252F290 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t151);
|
|
/* 0252F294 */ _t152 = cpu->r[30] + 0x00000080u;
|
|
/* 0252F294 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t152);
|
|
/* 0252F298 */ cpu->f[0] = cpu->f[7] * cpu->f[31];
|
|
/* 0252F29C */ _t153 = cpu->r[1] + 0x00000128u;
|
|
/* 0252F29C */ rbrew_write32(cpu->mem, _t153, cpu->r[9]);
|
|
/* 0252F2A0 */ _t154 = cpu->r[1] + 0x00000128u;
|
|
/* 0252F2A0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t154);
|
|
/* 0252F2A4 */ _t155 = cpu->r[1] + 0x00000048u;
|
|
/* 0252F2A4 */ rbrew_write_f32(cpu->mem, _t155, cpu->f[10]);
|
|
/* 0252F2A8 */ _t156 = cpu->r[1] + 0x00000048u;
|
|
/* 0252F2A8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t156);
|
|
/* 0252F2AC */ _t157 = cpu->r[1] + 0x00000050u;
|
|
/* 0252F2AC */ rbrew_write_f32(cpu->mem, _t157, cpu->f[0]);
|
|
/* 0252F2B0 */ _t158 = cpu->r[1] + 0x00000050u;
|
|
/* 0252F2B0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t158);
|
|
/* 0252F2B4 */ cpu->f[12] = cpu->f[13] * cpu->f[31];
|
|
/* 0252F2B8 */ /* nop */
|
|
/* 0252F2BC */ _t159 = cpu->r[1] + 0x00000138u;
|
|
/* 0252F2BC */ rbrew_write32(cpu->mem, _t159, cpu->r[9]);
|
|
/* 0252F2C0 */ _t160 = cpu->r[1] + 0x00000138u;
|
|
/* 0252F2C0 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t160);
|
|
/* 0252F2C4 */ _t161 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0252F2C4 */ rbrew_write_f32(cpu->mem, _t161, cpu->f[12]);
|
|
/* 0252F2C8 */ _t162 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0252F2C8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t162);
|
|
/* 0252F2CC */ cpu->f[7] = cpu->f[8] - cpu->f[9];
|
|
/* 0252F2D0 */ _t163 = cpu->r[1] + 0x00000130u;
|
|
/* 0252F2D0 */ rbrew_write32(cpu->mem, _t163, cpu->r[7]);
|
|
/* 0252F2D4 */ _t164 = cpu->r[1] + 0x00000134u;
|
|
/* 0252F2D4 */ rbrew_write32(cpu->mem, _t164, cpu->r[8]);
|
|
/* 0252F2D8 */ /* nop */
|
|
/* 0252F2DC */ _t165 = cpu->r[1] + 0x000000C4u;
|
|
/* 0252F2DC */ rbrew_write_f32(cpu->mem, _t165, cpu->f[7]);
|
|
/* 0252F2E0 */ /* nop */
|
|
/* 0252F2E4 */ _t166 = cpu->r[1] + 0x000000C4u;
|
|
/* 0252F2E4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t166);
|
|
/* 0252F2E8 */ /* nop */
|
|
/* 0252F2EC */ _t167 = cpu->r[1] + 0x000000C0u;
|
|
/* 0252F2EC */ cpu->r[7] = rbrew_read32(cpu->mem, _t167);
|
|
/* 0252F2F0 */ _t168 = cpu->r[1] + 0x000000BCu;
|
|
/* 0252F2F0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t168);
|
|
/* 0252F2F4 */ _t169 = cpu->r[1] + 0x00000018u;
|
|
/* 0252F2F4 */ rbrew_write32(cpu->mem, _t169, cpu->r[7]);
|
|
/* 0252F2F8 */ _t170 = cpu->r[1] + 0x00000018u;
|
|
/* 0252F2F8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t170);
|
|
/* 0252F2FC */ _t171 = cpu->r[1] + 0x00000014u;
|
|
/* 0252F2FC */ rbrew_write32(cpu->mem, _t171, cpu->r[6]);
|
|
/* 0252F300 */ cpu->f[11] = cpu->f[12] * cpu->f[12];
|
|
/* 0252F304 */ _t172 = cpu->r[1] + 0x00000014u;
|
|
/* 0252F304 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t172);
|
|
/* 0252F308 */ _t173 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252F308 */ rbrew_write32(cpu->mem, _t173, cpu->r[8]);
|
|
/* 0252F30C */ cpu->f[0] = fma(cpu->f[13], cpu->f[13], cpu->f[11]);
|
|
/* 0252F310 */ _t174 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252F310 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t174);
|
|
/* 0252F314 */ cpu->f[8] = fma(cpu->f[10], cpu->f[10], cpu->f[0]);
|
|
/* 0252F318 */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 0252F31C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[30]);
|
|
/* 0252F320 */ _t175 = cpu->r[30] + 0x000001FCu;
|
|
/* 0252F320 */ rbrew_write32(cpu->mem, _t175, cpu->r[10]);
|
|
/* 0252F324 */ _t176 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252F324 */ _t177 = _t176 & 0x00000001u;
|
|
/* 0252F324 */ if (_t177) goto L_0252F328; else goto L_0252F35C;
|
|
L_0252F328: ; // 0x252f328
|
|
/* 0252F328 */ _ft178 = sqrt(cpu->f[8]);
|
|
/* 0252F328 */ _ft179 = (double)(int32_t)0x00000001u;
|
|
/* 0252F328 */ cpu->f[9] = _ft179 / _ft178;
|
|
/* 0252F32C */ cpu->f[10] = cpu->f[9] * cpu->f[9];
|
|
/* 0252F330 */ cpu->f[11] = cpu->f[9] * cpu->f[31];
|
|
/* 0252F334 */ cpu->f[10] = -fma(cpu->f[10], cpu->f[8], -(cpu->f[29]));
|
|
/* 0252F338 */ cpu->f[9] = cpu->f[10] * cpu->f[11];
|
|
/* 0252F33C */ /* nop */
|
|
/* 0252F340 */ _t180 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252F340 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t180);
|
|
/* 0252F344 */ /* nop */
|
|
/* 0252F348 */ /* nop */
|
|
/* 0252F34C */ cpu->f[10] = cpu->f[10] * cpu->f[9];
|
|
/* 0252F350 */ _t181 = cpu->r[1] + 0x00000018u;
|
|
/* 0252F350 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t181);
|
|
/* 0252F354 */ _t182 = cpu->r[1] + 0x00000014u;
|
|
/* 0252F354 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t182);
|
|
/* 0252F358 */ _t183 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252F358 */ rbrew_write_f32(cpu->mem, _t183, cpu->f[10]);
|
|
L_0252F35C: ; // 0x252f35c
|
|
/* 0252F35C */ cpu->r[8] = 0x00000003u;
|
|
/* 0252F360 */ cpu->r[11] = cpu->r[30] + 0x00000050u;
|
|
/* 0252F364 */ cpu->ctr = cpu->r[8];
|
|
/* 0252F368 */ cpu->r[6] = cpu->r[1] + 0x000000E4u;
|
|
L_0252F36C: ; // 0x252f36c
|
|
/* 0252F36C */ _t184 = cpu->r[11] + 0x00000004u;
|
|
/* 0252F36C */ cpu->r[10] = rbrew_read32(cpu->mem, _t184);
|
|
/* 0252F370 */ _t185 = cpu->r[6] + 0x00000004u;
|
|
/* 0252F370 */ rbrew_write32(cpu->mem, _t185, cpu->r[10]);
|
|
/* 0252F374 */ _t186 = cpu->r[11] + 0x00000008u;
|
|
/* 0252F374 */ cpu->r[12] = rbrew_read32(cpu->mem, _t186);
|
|
/* 0252F378 */ _t187 = cpu->r[6] + 0x00000008u;
|
|
/* 0252F378 */ rbrew_write32(cpu->mem, _t187, cpu->r[12]);
|
|
/* 0252F37C */ _t188 = cpu->r[11] + 0x0000000Cu;
|
|
/* 0252F37C */ cpu->r[0] = rbrew_read32(cpu->mem, _t188);
|
|
/* 0252F380 */ _t189 = cpu->r[6] + 0x0000000Cu;
|
|
/* 0252F380 */ rbrew_write32(cpu->mem, _t189, cpu->r[0]);
|
|
/* 0252F384 */ _t190 = cpu->r[11] + 0x00000010u;
|
|
/* 0252F384 */ cpu->r[0] = rbrew_read32(cpu->mem, _t190);
|
|
/* 0252F384 */ cpu->r[11] = _t190;
|
|
/* 0252F388 */ _t191 = cpu->r[6] + 0x00000010u;
|
|
/* 0252F388 */ rbrew_write32(cpu->mem, _t191, cpu->r[0]);
|
|
/* 0252F388 */ cpu->r[6] = _t191;
|
|
/* 0252F38C */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0252F38C */ _t192 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0252F38C */ _t193 = _t192 >> (0x00000002u & 31u);
|
|
/* 0252F38C */ _t194 = _t193 & 0x00000001u;
|
|
/* 0252F38C */ if (_t194) goto L_0252F36C; else goto L_0252F390;
|
|
L_0252F390: ; // 0x252f390
|
|
/* 0252F390 */ _t195 = cpu->r[1] + 0x000000F8u;
|
|
/* 0252F390 */ rbrew_write_f32(cpu->mem, _t195, cpu->f[12]);
|
|
/* 0252F394 */ cpu->r[3] = cpu->r[1] + 0x000000E8u;
|
|
/* 0252F398 */ cpu->r[4] = 0x100C0000u;
|
|
/* 0252F39C */ _t196 = cpu->r[1] + 0x000000F4u;
|
|
/* 0252F39C */ rbrew_write_f32(cpu->mem, _t196, cpu->f[13]);
|
|
/* 0252F3A0 */ cpu->r[5] = 0x000001FCu;
|
|
/* 0252F3A4 */ cpu->r[4] = cpu->r[4] + 0x00003CA4u;
|
|
/* 0252F3A8 */ _t197 = cpu->r[1] + 0x000000FCu;
|
|
/* 0252F3A8 */ rbrew_write_f32(cpu->mem, _t197, cpu->f[10]);
|
|
/* 0252F3AC */ Gambit_fn_0204D380(cpu);
|
|
/* 0252F3B0 */ _t198 = cpu->r[1] + 0x000000E8u;
|
|
/* 0252F3B0 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t198);
|
|
/* 0252F3B4 */ _t199 = cpu->r[1] + 0x000000ECu;
|
|
/* 0252F3B4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t199);
|
|
/* 0252F3B8 */ _t200 = cpu->r[1] + 0x00000054u;
|
|
/* 0252F3B8 */ rbrew_write_f32(cpu->mem, _t200, cpu->f[9]);
|
|
/* 0252F3BC */ _t201 = cpu->r[1] + 0x0000010Cu;
|
|
/* 0252F3BC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t201);
|
|
/* 0252F3C0 */ _t202 = cpu->r[1] + 0x00000104u;
|
|
/* 0252F3C0 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t202);
|
|
/* 0252F3C4 */ _t203 = cpu->r[1] + 0x00000060u;
|
|
/* 0252F3C4 */ rbrew_write_f32(cpu->mem, _t203, cpu->f[9]);
|
|
/* 0252F3C8 */ _t204 = cpu->r[1] + 0x0000006Cu;
|
|
/* 0252F3C8 */ rbrew_write_f32(cpu->mem, _t204, cpu->f[7]);
|
|
/* 0252F3CC */ _t205 = cpu->r[1] + 0x00000110u;
|
|
/* 0252F3CC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t205);
|
|
/* 0252F3D0 */ _t206 = cpu->r[1] + 0x000000F0u;
|
|
/* 0252F3D0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t206);
|
|
/* 0252F3D4 */ _t207 = cpu->r[1] + 0x00000070u;
|
|
/* 0252F3D4 */ rbrew_write_f32(cpu->mem, _t207, cpu->f[9]);
|
|
/* 0252F3D8 */ _t208 = cpu->r[1] + 0x00000074u;
|
|
/* 0252F3D8 */ rbrew_write_f32(cpu->mem, _t208, cpu->f[11]);
|
|
/* 0252F3DC */ _t209 = cpu->r[1] + 0x000000F4u;
|
|
/* 0252F3DC */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t209);
|
|
/* 0252F3E0 */ _t210 = cpu->r[1] + 0x000000FCu;
|
|
/* 0252F3E0 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t210);
|
|
/* 0252F3E4 */ _t211 = cpu->r[1] + 0x00000058u;
|
|
/* 0252F3E4 */ rbrew_write_f32(cpu->mem, _t211, cpu->f[8]);
|
|
/* 0252F3E8 */ _t212 = cpu->r[1] + 0x00000078u;
|
|
/* 0252F3E8 */ rbrew_write_f32(cpu->mem, _t212, cpu->f[7]);
|
|
/* 0252F3EC */ _t213 = cpu->r[1] + 0x00000114u;
|
|
/* 0252F3EC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t213);
|
|
/* 0252F3F0 */ _t214 = cpu->r[1] + 0x00000108u;
|
|
/* 0252F3F0 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t214);
|
|
/* 0252F3F4 */ _t215 = cpu->r[1] + 0x00000080u;
|
|
/* 0252F3F4 */ rbrew_write_f32(cpu->mem, _t215, cpu->f[12]);
|
|
/* 0252F3F8 */ _t216 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0252F3F8 */ rbrew_write_f32(cpu->mem, _t216, cpu->f[8]);
|
|
/* 0252F3FC */ _t217 = cpu->r[1] + 0x00000100u;
|
|
/* 0252F3FC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t217);
|
|
/* 0252F400 */ _t218 = cpu->r[1] + 0x000000F8u;
|
|
/* 0252F400 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t218);
|
|
/* 0252F404 */ _t219 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0252F404 */ rbrew_write_f32(cpu->mem, _t219, cpu->f[0]);
|
|
/* 0252F408 */ _t220 = cpu->r[1] + 0x00000068u;
|
|
/* 0252F408 */ rbrew_write_f32(cpu->mem, _t220, cpu->f[13]);
|
|
/* 0252F40C */ cpu->r[3] = cpu->r[30];
|
|
/* 0252F410 */ _t221 = cpu->r[1] + 0x00000064u;
|
|
/* 0252F410 */ rbrew_write_f32(cpu->mem, _t221, cpu->f[10]);
|
|
/* 0252F414 */ Gambit_fn_0252D85C(cpu);
|
|
/* 0252F418 */ _t222 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0252F418 */ cpu->r[31] = rbrew_read32(cpu->mem, _t222);
|
|
/* 0252F41C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0252F420 */ cpu->f[31] = cpu->f[1];
|
|
/* 0252F424 */ _t223 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252F424 */ _t224 = _t223 & 0x00000001u;
|
|
/* 0252F424 */ if (_t224) goto L_0252F45C; else goto L_0252F428;
|
|
L_0252F428: ; // 0x252f428
|
|
/* 0252F428 */ _t225 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0252F428 */ cpu->r[6] = rbrew_read32(cpu->mem, _t225);
|
|
/* 0252F42C */ _t226 = cpu->r[1] + 0x00000090u;
|
|
/* 0252F42C */ cpu->r[7] = rbrew_read32(cpu->mem, _t226);
|
|
/* 0252F430 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[7]);
|
|
/* 0252F434 */ _t227 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252F434 */ _t228 = _t227 & 0x00000001u;
|
|
/* 0252F434 */ if (_t228) goto L_0252F438; else goto L_0252F45C;
|
|
L_0252F438: ; // 0x252f438
|
|
/* 0252F438 */ cpu->r[3] = cpu->r[1] + 0x00000054u;
|
|
/* 0252F43C */ cpu->r[4] = cpu->r[31] + 0x0000007Cu;
|
|
/* 0252F440 */ Gambit_fn_02C69510(cpu);
|
|
/* 0252F444 */ _t229 = cpu->r[31] + 0x0000012Cu;
|
|
/* 0252F444 */ cpu->r[8] = rbrew_read32(cpu->mem, _t229);
|
|
/* 0252F448 */ _t230 = cpu->r[31] + 0x00000074u;
|
|
/* 0252F448 */ rbrew_write_f32(cpu->mem, _t230, cpu->f[31]);
|
|
/* 0252F44C */ cpu->r[8] = cpu->r[8] | 0x00000008u;
|
|
/* 0252F450 */ _t231 = cpu->r[31] + 0x00000070u;
|
|
/* 0252F450 */ rbrew_write_f32(cpu->mem, _t231, cpu->f[31]);
|
|
/* 0252F454 */ _t232 = cpu->r[31] + 0x0000012Cu;
|
|
/* 0252F454 */ rbrew_write32(cpu->mem, _t232, cpu->r[8]);
|
|
/* 0252F458 */ _t233 = cpu->r[31] + 0x00000078u;
|
|
/* 0252F458 */ rbrew_write_f32(cpu->mem, _t233, cpu->f[31]);
|
|
L_0252F45C: ; // 0x252f45c
|
|
/* 0252F45C */ cpu->r[3] = cpu->r[1] + 0x000000A4u;
|
|
/* 0252F460 */ cpu->r[4] = cpu->r[1] + 0x00000130u;
|
|
/* 0252F464 */ Gambit_fn_028B30F0(cpu);
|
|
L_0252F468: ; // 0x252f468
|
|
/* 0252F468 */ _t234 = cpu->r[1] + 0x00000160u;
|
|
/* 0252F468 */ cpu->r[28] = rbrew_read32(cpu->mem, _t234);
|
|
/* 0252F46C */ _t235 = cpu->r[1] + 0x00000164u;
|
|
/* 0252F46C */ cpu->r[29] = rbrew_read32(cpu->mem, _t235);
|
|
/* 0252F470 */ _t236 = cpu->r[1] + 0x00000198u;
|
|
/* 0252F470 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t236);
|
|
/* 0252F474 */ _t237 = cpu->r[1] + 0x00000178u;
|
|
/* 0252F474 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t237);
|
|
/* 0252F478 */ _t238 = cpu->r[1] + 0x00000190u;
|
|
/* 0252F478 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t238);
|
|
/* 0252F47C */ _t239 = cpu->r[1] + 0x00000188u;
|
|
/* 0252F47C */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t239);
|
|
/* 0252F480 */ _t240 = cpu->r[1] + 0x00000170u;
|
|
/* 0252F480 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t240);
|
|
/* 0252F484 */ _t241 = cpu->r[1] + 0x00000180u;
|
|
/* 0252F484 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t241);
|
|
/* 0252F488 */ _t242 = cpu->r[1] + 0x0000016Cu;
|
|
/* 0252F488 */ cpu->r[31] = rbrew_read32(cpu->mem, _t242);
|
|
/* 0252F48C */ _t243 = cpu->r[1] + 0x00000168u;
|
|
/* 0252F48C */ cpu->r[30] = rbrew_read32(cpu->mem, _t243);
|
|
/* 0252F490 */ _t244 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0252F490 */ _t245 = _t244 & 0x00000001u;
|
|
/* 0252F490 */ if (_t245) goto L_0252F494; // else: addr-0 trap, fall-through
|
|
L_0252F494: ; // 0x252f494
|
|
/* 0252F494 */ _t246 = cpu->r[1] + 0x000001A4u;
|
|
/* 0252F494 */ cpu->r[0] = rbrew_read32(cpu->mem, _t246);
|
|
/* 0252F498 */ cpu->lr = cpu->r[0];
|
|
/* 0252F49C */ cpu->r[1] = cpu->r[1] + 0x000001A0u;
|
|
/* 0252F4A0 */ return;
|
|
}
|
|
|
|
// fn_0252EE74 @ 0x252ee74
|
|
void Gambit_fn_0252EE74(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _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, _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, _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;
|
|
double _ft99, _ft100, _ft178, _ft179;
|
|
|
|
L_0252EE74: ; // 0x252ee74
|
|
/* 0252EE74 */ _t0 = cpu->r[1] + 0xFFFFFE60u;
|
|
/* 0252EE74 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252EE74 */ cpu->r[1] = _t0;
|
|
/* 0252EE78 */ _t1 = cpu->r[1] + 0x00000190u;
|
|
/* 0252EE78 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0252EE7C */ /* nop */
|
|
/* 0252EE80 */ _t2 = cpu->r[1] + 0x00000170u;
|
|
/* 0252EE80 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[29]);
|
|
/* 0252EE84 */ /* nop */
|
|
/* 0252EE88 */ _t3 = cpu->r[1] + 0x00000180u;
|
|
/* 0252EE88 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[30]);
|
|
/* 0252EE8C */ _t4 = cpu->r[1] + 0x00000198u;
|
|
/* 0252EE8C */ rbrew_write_f32(cpu->mem, _t4, cpu->f[31]);
|
|
/* 0252EE90 */ /* nop */
|
|
/* 0252EE94 */ _t5 = cpu->r[1] + 0x00000178u;
|
|
/* 0252EE94 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[29]);
|
|
/* 0252EE98 */ _t6 = cpu->r[1] + 0x000001A4u;
|
|
/* 0252EE98 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0252EE9C */ _t7 = cpu->r[1] + 0x0000016Cu;
|
|
/* 0252EE9C */ rbrew_write32(cpu->mem, _t7, cpu->r[31]);
|
|
/* 0252EEA0 */ _t8 = cpu->r[1] + 0x00000160u;
|
|
/* 0252EEA0 */ rbrew_write32(cpu->mem, _t8, cpu->r[28]);
|
|
/* 0252EEA4 */ cpu->r[31] = 0x101F0000u;
|
|
/* 0252EEA8 */ _t9 = cpu->r[1] + 0x00000188u;
|
|
/* 0252EEA8 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[30]);
|
|
/* 0252EEAC */ _t10 = cpu->r[1] + 0x00000168u;
|
|
/* 0252EEAC */ rbrew_write32(cpu->mem, _t10, cpu->r[30]);
|
|
/* 0252EEB0 */ _t11 = cpu->r[1] + 0x00000164u;
|
|
/* 0252EEB0 */ rbrew_write32(cpu->mem, _t11, cpu->r[29]);
|
|
/* 0252EEB4 */ cpu->r[29] = cpu->r[4];
|
|
/* 0252EEB8 */ _t12 = cpu->r[31] + 0x00003840u;
|
|
/* 0252EEB8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0252EEB8 */ cpu->r[31] = _t12;
|
|
/* 0252EEBC */ cpu->r[10] = 0x100C0000u;
|
|
/* 0252EEC0 */ _t13 = cpu->r[10] + 0x00003BDCu;
|
|
/* 0252EEC0 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 0252EEC4 */ _t14 = cpu->r[31] + 0x00000008u;
|
|
/* 0252EEC4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0252EEC8 */ _t15 = cpu->r[31] + 0x00000004u;
|
|
/* 0252EEC8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0252EECC */ _t16 = cpu->r[1] + 0x000000D4u;
|
|
/* 0252EECC */ rbrew_write32(cpu->mem, _t16, cpu->r[10]);
|
|
/* 0252EED0 */ cpu->r[0] = 0x10110000u;
|
|
/* 0252EED4 */ _t17 = cpu->r[1] + 0x000000DCu;
|
|
/* 0252EED4 */ rbrew_write32(cpu->mem, _t17, cpu->r[8]);
|
|
/* 0252EED8 */ cpu->r[0] = cpu->r[0] + 0xFFFFEF7Cu;
|
|
/* 0252EEDC */ _t18 = cpu->r[1] + 0x000000E0u;
|
|
/* 0252EEDC */ rbrew_write32(cpu->mem, _t18, cpu->r[10]);
|
|
/* 0252EEE0 */ cpu->r[30] = cpu->r[3];
|
|
/* 0252EEE4 */ _t19 = cpu->r[1] + 0x000000CCu;
|
|
/* 0252EEE4 */ rbrew_write32(cpu->mem, _t19, cpu->r[6]);
|
|
/* 0252EEE8 */ cpu->r[3] = cpu->r[29];
|
|
/* 0252EEEC */ _t20 = cpu->r[1] + 0x000000E4u;
|
|
/* 0252EEEC */ rbrew_write_f32(cpu->mem, _t20, cpu->f[30]);
|
|
/* 0252EEF0 */ cpu->r[4] = cpu->r[1] + 0x000000C8u;
|
|
/* 0252EEF4 */ _t21 = cpu->r[1] + 0x000000C8u;
|
|
/* 0252EEF4 */ rbrew_write32(cpu->mem, _t21, cpu->r[0]);
|
|
/* 0252EEF8 */ _t22 = cpu->r[1] + 0x000000D8u;
|
|
/* 0252EEF8 */ rbrew_write32(cpu->mem, _t22, cpu->r[6]);
|
|
/* 0252EEFC */ _t23 = cpu->r[1] + 0x000000D0u;
|
|
/* 0252EEFC */ rbrew_write32(cpu->mem, _t23, cpu->r[8]);
|
|
/* 0252EF00 */ Gambit_fn_025C65E8(cpu);
|
|
/* 0252EF04 */ _t24 = cpu->r[29] + 0x0000002Cu;
|
|
/* 0252EF04 */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0252EF08 */ _t25 = cpu->r[30] + 0x0000002Cu;
|
|
/* 0252EF08 */ cpu->r[7] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0252EF0C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]);
|
|
/* 0252EF10 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252EF10 */ _t27 = _t26 & 0x00000001u;
|
|
/* 0252EF10 */ if (_t27) goto L_0252EF14; else goto L_0252EF88;
|
|
L_0252EF14: ; // 0x252ef14
|
|
/* 0252EF14 */ _t28 = cpu->r[29] + 0x00000668u;
|
|
/* 0252EF14 */ cpu->r[0] = rbrew_read8(cpu->mem, _t28);
|
|
/* 0252EF18 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0252EF1C */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252EF1C */ _t30 = _t29 & 0x00000001u;
|
|
/* 0252EF1C */ if (_t30) goto L_0252EF20; else goto L_0252EF88;
|
|
L_0252EF20: ; // 0x252ef20
|
|
/* 0252EF20 */ cpu->r[4] = cpu->r[1] + 0x000000CCu;
|
|
/* 0252EF24 */ cpu->r[3] = cpu->r[30] + 0x00000078u;
|
|
/* 0252EF28 */ Gambit_fn_02C693A4(cpu);
|
|
/* 0252EF2C */ _t31 = cpu->r[1] + 0x000000E4u;
|
|
/* 0252EF2C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 0252EF30 */ cpu->r[7] = 0x100C0000u;
|
|
/* 0252EF34 */ cpu->f[10] = cpu->f[1] + cpu->f[13];
|
|
/* 0252EF38 */ _t32 = cpu->r[7] + 0x00003C70u;
|
|
/* 0252EF38 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 0252EF3C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[0]);
|
|
/* 0252EF40 */ _t33 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252EF40 */ _t34 = _t33 & 0x00000001u;
|
|
/* 0252EF40 */ if (_t34) goto L_0252F468; else goto L_0252EF44;
|
|
L_0252EF44: ; // 0x252ef44
|
|
/* 0252EF44 */ cpu->r[3] = cpu->r[29];
|
|
/* 0252EF48 */ Gambit_fn_025C678C(cpu);
|
|
/* 0252EF4C */ _t35 = cpu->r[1] + 0x00000160u;
|
|
/* 0252EF4C */ cpu->r[28] = rbrew_read32(cpu->mem, _t35);
|
|
/* 0252EF50 */ _t36 = cpu->r[1] + 0x00000164u;
|
|
/* 0252EF50 */ cpu->r[29] = rbrew_read32(cpu->mem, _t36);
|
|
/* 0252EF54 */ _t37 = cpu->r[1] + 0x00000198u;
|
|
/* 0252EF54 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 0252EF58 */ _t38 = cpu->r[1] + 0x00000178u;
|
|
/* 0252EF58 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 0252EF5C */ _t39 = cpu->r[1] + 0x00000190u;
|
|
/* 0252EF5C */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t39);
|
|
/* 0252EF60 */ _t40 = cpu->r[1] + 0x00000188u;
|
|
/* 0252EF60 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 0252EF64 */ _t41 = cpu->r[1] + 0x00000170u;
|
|
/* 0252EF64 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t41);
|
|
/* 0252EF68 */ _t42 = cpu->r[1] + 0x00000180u;
|
|
/* 0252EF68 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t42);
|
|
/* 0252EF6C */ _t43 = cpu->r[1] + 0x0000016Cu;
|
|
/* 0252EF6C */ cpu->r[31] = rbrew_read32(cpu->mem, _t43);
|
|
/* 0252EF70 */ _t44 = cpu->r[1] + 0x00000168u;
|
|
/* 0252EF70 */ cpu->r[30] = rbrew_read32(cpu->mem, _t44);
|
|
/* 0252EF74 */ _t45 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0252EF74 */ _t46 = _t45 & 0x00000001u;
|
|
/* 0252EF74 */ if (_t46) goto L_0252EF78; // else: addr-0 trap, fall-through
|
|
L_0252EF78: ; // 0x252ef78
|
|
/* 0252EF78 */ _t47 = cpu->r[1] + 0x000001A4u;
|
|
/* 0252EF78 */ cpu->r[0] = rbrew_read32(cpu->mem, _t47);
|
|
/* 0252EF7C */ cpu->lr = cpu->r[0];
|
|
/* 0252EF80 */ cpu->r[1] = cpu->r[1] + 0x000001A0u;
|
|
/* 0252EF84 */ return;
|
|
L_0252EF88: ; // 0x252ef88
|
|
/* 0252EF88 */ _t48 = cpu->r[31] + 0x00000008u;
|
|
/* 0252EF88 */ cpu->r[11] = rbrew_read32(cpu->mem, _t48);
|
|
/* 0252EF8C */ cpu->r[0] = 0x10110000u;
|
|
/* 0252EF90 */ _t49 = cpu->r[31] + 0x00000004u;
|
|
/* 0252EF90 */ cpu->r[9] = rbrew_read32(cpu->mem, _t49);
|
|
/* 0252EF94 */ cpu->r[0] = cpu->r[0] + 0xFFFFEF4Cu;
|
|
/* 0252EF98 */ _t50 = cpu->r[31] + 0x00000000u;
|
|
/* 0252EF98 */ cpu->r[7] = rbrew_read32(cpu->mem, _t50);
|
|
/* 0252EF9C */ cpu->r[4] = cpu->r[1] + 0x0000013Cu;
|
|
/* 0252EFA0 */ _t51 = cpu->r[1] + 0x0000013Cu;
|
|
/* 0252EFA0 */ rbrew_write32(cpu->mem, _t51, cpu->r[0]);
|
|
/* 0252EFA4 */ _t52 = cpu->r[1] + 0x00000144u;
|
|
/* 0252EFA4 */ rbrew_write32(cpu->mem, _t52, cpu->r[9]);
|
|
/* 0252EFA8 */ cpu->r[3] = cpu->r[30];
|
|
/* 0252EFAC */ _t53 = cpu->r[1] + 0x00000148u;
|
|
/* 0252EFAC */ rbrew_write32(cpu->mem, _t53, cpu->r[11]);
|
|
/* 0252EFB0 */ _t54 = cpu->r[1] + 0x0000014Cu;
|
|
/* 0252EFB0 */ rbrew_write_f32(cpu->mem, _t54, cpu->f[30]);
|
|
/* 0252EFB4 */ _t55 = cpu->r[1] + 0x00000140u;
|
|
/* 0252EFB4 */ rbrew_write32(cpu->mem, _t55, cpu->r[7]);
|
|
/* 0252EFB8 */ Gambit_fn_0252EE48(cpu);
|
|
/* 0252EFBC */ cpu->r[3] = cpu->r[4];
|
|
/* 0252EFC0 */ cpu->r[4] = cpu->r[1] + 0x000000C8u;
|
|
/* 0252EFC4 */ cpu->r[5] = cpu->r[1] + 0x00000020u;
|
|
/* 0252EFC8 */ Gambit_fn_027DE3CC(cpu);
|
|
/* 0252EFCC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252EFD0 */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252EFD0 */ _t57 = _t56 & 0x00000001u;
|
|
/* 0252EFD0 */ if (_t57) goto L_0252F468; else goto L_0252EFD4;
|
|
L_0252EFD4: ; // 0x252efd4
|
|
/* 0252EFD4 */ _t58 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0252EFD4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 0252EFD8 */ /* nop */
|
|
/* 0252EFDC */ /* nop */
|
|
/* 0252EFE0 */ /* nop */
|
|
/* 0252EFE4 */ _t59 = cpu->r[1] + 0x00000020u;
|
|
/* 0252EFE4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t59);
|
|
/* 0252EFE8 */ /* nop */
|
|
/* 0252EFEC */ _t60 = cpu->r[1] + 0x00000098u;
|
|
/* 0252EFEC */ cpu->r[8] = rbrew_read32(cpu->mem, _t60);
|
|
/* 0252EFF0 */ _t61 = cpu->r[1] + 0x00000028u;
|
|
/* 0252EFF0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t61);
|
|
/* 0252EFF4 */ _t62 = cpu->r[1] + 0x0000009Cu;
|
|
/* 0252EFF4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t62);
|
|
/* 0252EFF8 */ cpu->f[10] = -cpu->f[13];
|
|
/* 0252EFFC */ _t63 = cpu->r[1] + 0x00000150u;
|
|
/* 0252EFFC */ rbrew_write32(cpu->mem, _t63, cpu->r[8]);
|
|
/* 0252F000 */ cpu->f[7] = cpu->f[11] * cpu->f[12];
|
|
/* 0252F004 */ _t64 = cpu->r[1] + 0x00000154u;
|
|
/* 0252F004 */ rbrew_write32(cpu->mem, _t64, cpu->r[9]);
|
|
/* 0252F008 */ /* nop */
|
|
/* 0252F00C */ _t65 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0252F00C */ rbrew_write_f32(cpu->mem, _t65, cpu->f[10]);
|
|
/* 0252F010 */ _t66 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0252F010 */ cpu->r[7] = rbrew_read32(cpu->mem, _t66);
|
|
/* 0252F014 */ _t67 = cpu->r[1] + 0x000000A0u;
|
|
/* 0252F014 */ rbrew_write_f32(cpu->mem, _t67, cpu->f[7]);
|
|
/* 0252F018 */ _t68 = cpu->r[1] + 0x000000A0u;
|
|
/* 0252F018 */ cpu->r[0] = rbrew_read32(cpu->mem, _t68);
|
|
/* 0252F01C */ _t69 = cpu->r[1] + 0x00000024u;
|
|
/* 0252F01C */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t69);
|
|
/* 0252F020 */ _t70 = cpu->r[1] + 0x00000158u;
|
|
/* 0252F020 */ rbrew_write32(cpu->mem, _t70, cpu->r[0]);
|
|
/* 0252F024 */ _t71 = cpu->r[1] + 0x00000158u;
|
|
/* 0252F024 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t71);
|
|
/* 0252F028 */ cpu->f[0] = -cpu->f[7];
|
|
/* 0252F02C */ _t72 = cpu->r[1] + 0x00000118u;
|
|
/* 0252F02C */ rbrew_write32(cpu->mem, _t72, cpu->r[7]);
|
|
/* 0252F030 */ _t73 = cpu->r[1] + 0x00000118u;
|
|
/* 0252F030 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t73);
|
|
/* 0252F034 */ cpu->f[8] = -cpu->f[11];
|
|
/* 0252F038 */ _t74 = cpu->r[1] + 0x00000038u;
|
|
/* 0252F038 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t74);
|
|
/* 0252F03C */ _t75 = cpu->r[1] + 0x00000040u;
|
|
/* 0252F03C */ rbrew_write_f32(cpu->mem, _t75, cpu->f[0]);
|
|
/* 0252F040 */ _t76 = cpu->r[1] + 0x00000040u;
|
|
/* 0252F040 */ cpu->r[9] = rbrew_read32(cpu->mem, _t76);
|
|
/* 0252F044 */ _t77 = cpu->r[1] + 0x00000044u;
|
|
/* 0252F044 */ rbrew_write_f32(cpu->mem, _t77, cpu->f[8]);
|
|
/* 0252F048 */ _t78 = cpu->r[1] + 0x00000044u;
|
|
/* 0252F048 */ cpu->r[11] = rbrew_read32(cpu->mem, _t78);
|
|
/* 0252F04C */ _t79 = cpu->r[1] + 0x0000011Cu;
|
|
/* 0252F04C */ rbrew_write32(cpu->mem, _t79, cpu->r[9]);
|
|
/* 0252F050 */ _t80 = cpu->r[1] + 0x0000011Cu;
|
|
/* 0252F050 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t80);
|
|
/* 0252F054 */ _t81 = cpu->r[1] + 0x00000120u;
|
|
/* 0252F054 */ rbrew_write32(cpu->mem, _t81, cpu->r[11]);
|
|
/* 0252F058 */ _t82 = cpu->r[1] + 0x00000120u;
|
|
/* 0252F058 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t82);
|
|
/* 0252F05C */ /* nop */
|
|
/* 0252F060 */ _t83 = cpu->r[1] + 0x00000024u;
|
|
/* 0252F060 */ rbrew_write_f32(cpu->mem, _t83, cpu->f[11]);
|
|
/* 0252F064 */ cpu->f[6] = cpu->f[6] + cpu->f[13];
|
|
/* 0252F068 */ _t84 = cpu->r[1] + 0x00000020u;
|
|
/* 0252F068 */ rbrew_write_f32(cpu->mem, _t84, cpu->f[9]);
|
|
/* 0252F06C */ /* nop */
|
|
/* 0252F070 */ cpu->f[0] = cpu->f[7] * cpu->f[12];
|
|
/* 0252F074 */ _t85 = cpu->r[1] + 0x00000038u;
|
|
/* 0252F074 */ rbrew_write_f32(cpu->mem, _t85, cpu->f[6]);
|
|
/* 0252F078 */ /* nop */
|
|
/* 0252F07C */ /* nop */
|
|
/* 0252F080 */ _t86 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252F080 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t86);
|
|
/* 0252F084 */ /* nop */
|
|
/* 0252F088 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[30], cpu->f[8]);
|
|
/* 0252F08C */ _t87 = cpu->r[1] + 0x00000028u;
|
|
/* 0252F08C */ rbrew_write_f32(cpu->mem, _t87, cpu->f[7]);
|
|
/* 0252F090 */ _t88 = cpu->r[1] + 0x00000010u;
|
|
/* 0252F090 */ rbrew_write_f32(cpu->mem, _t88, cpu->f[0]);
|
|
/* 0252F094 */ _t89 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252F094 */ _t90 = _t89 & 0x00000001u;
|
|
/* 0252F094 */ if (_t90) goto L_0252F098; else goto L_0252F09C;
|
|
L_0252F098: ; // 0x252f098
|
|
/* 0252F098 */ _t91 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252F098 */ rbrew_write_f32(cpu->mem, _t91, cpu->f[30]);
|
|
L_0252F09C: ; // 0x252f09c
|
|
/* 0252F09C */ cpu->r[3] = cpu->r[29];
|
|
/* 0252F0A0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0252F0A4 */ Gambit_fn_025C6600(cpu);
|
|
/* 0252F0A8 */ _t92 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252F0A8 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t92);
|
|
/* 0252F0AC */ cpu->f[9] = cpu->f[8] * cpu->f[8];
|
|
/* 0252F0B0 */ _t93 = cpu->r[1] + 0x00000008u;
|
|
/* 0252F0B0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t93);
|
|
/* 0252F0B4 */ cpu->f[10] = fma(cpu->f[0], cpu->f[0], cpu->f[9]);
|
|
/* 0252F0B8 */ _t94 = cpu->r[1] + 0x00000010u;
|
|
/* 0252F0B8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t94);
|
|
/* 0252F0BC */ cpu->r[10] = 0x100C0000u;
|
|
/* 0252F0C0 */ _t95 = cpu->r[10] + 0x00003C44u;
|
|
/* 0252F0C0 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t95);
|
|
/* 0252F0C4 */ cpu->f[8] = fma(cpu->f[0], cpu->f[0], cpu->f[10]);
|
|
/* 0252F0C8 */ cpu->r[11] = 0x100C0000u;
|
|
/* 0252F0CC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[30]);
|
|
/* 0252F0D0 */ _t96 = cpu->r[11] + 0x00003C48u;
|
|
/* 0252F0D0 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t96);
|
|
/* 0252F0D4 */ _t97 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252F0D4 */ _t98 = _t97 & 0x00000001u;
|
|
/* 0252F0D4 */ if (_t98) goto L_0252F0D8; else goto L_0252F1A4;
|
|
L_0252F0D8: ; // 0x252f0d8
|
|
/* 0252F0D8 */ _ft99 = sqrt(cpu->f[8]);
|
|
/* 0252F0D8 */ _ft100 = (double)(int32_t)0x00000001u;
|
|
/* 0252F0D8 */ cpu->f[9] = _ft100 / _ft99;
|
|
/* 0252F0DC */ cpu->f[10] = cpu->f[9] * cpu->f[9];
|
|
/* 0252F0E0 */ cpu->f[11] = cpu->f[9] * cpu->f[31];
|
|
/* 0252F0E4 */ cpu->f[10] = -fma(cpu->f[10], cpu->f[8], -(cpu->f[29]));
|
|
/* 0252F0E8 */ cpu->f[9] = cpu->f[10] * cpu->f[11];
|
|
/* 0252F0EC */ cpu->f[8] = cpu->f[8] * cpu->f[9];
|
|
/* 0252F0F0 */ _t101 = cpu->r[1] + 0x00000010u;
|
|
/* 0252F0F0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t101);
|
|
/* 0252F0F4 */ cpu->f[0] = cpu->f[0] * cpu->f[9];
|
|
/* 0252F0F8 */ /* nop */
|
|
/* 0252F0FC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[30]);
|
|
/* 0252F100 */ /* nop */
|
|
/* 0252F104 */ _t102 = cpu->r[1] + 0x00000010u;
|
|
/* 0252F104 */ rbrew_write_f32(cpu->mem, _t102, cpu->f[0]);
|
|
/* 0252F108 */ /* nop */
|
|
/* 0252F10C */ _t103 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252F10C */ _t104 = _t103 & 0x00000001u;
|
|
/* 0252F10C */ if (_t104) goto L_0252F128; else goto L_0252F110;
|
|
L_0252F110: ; // 0x252f110
|
|
/* 0252F110 */ _t105 = cpu->r[30] + 0x000001FCu;
|
|
/* 0252F110 */ cpu->r[9] = rbrew_read32(cpu->mem, _t105);
|
|
/* 0252F114 */ cpu->r[8] = cpu->r[9] + 0x00000001u;
|
|
/* 0252F118 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x0000000Du);
|
|
/* 0252F11C */ /* nop */
|
|
/* 0252F120 */ _t106 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252F120 */ _t107 = _t106 & 0x00000001u;
|
|
/* 0252F120 */ if (_t107) goto L_0252F468; else goto L_0252F124;
|
|
L_0252F124: ; // 0x252f124
|
|
/* 0252F124 */ goto L_0252F1B4;
|
|
L_0252F128: ; // 0x252f128
|
|
/* 0252F128 */ cpu->r[9] = 0x100C0000u;
|
|
/* 0252F12C */ /* nop */
|
|
/* 0252F130 */ _t108 = cpu->r[9] + 0x00003CA0u;
|
|
/* 0252F130 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t108);
|
|
/* 0252F134 */ /* nop */
|
|
/* 0252F138 */ _t109 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252F138 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t109);
|
|
/* 0252F13C */ cpu->f[0] = cpu->f[0] * cpu->f[29];
|
|
/* 0252F140 */ _t110 = cpu->r[29] + 0x00000050u;
|
|
/* 0252F140 */ cpu->r[0] = rbrew_read32(cpu->mem, _t110);
|
|
/* 0252F144 */ cpu->r[7] = 0x100C0000u;
|
|
/* 0252F148 */ _t111 = cpu->r[7] + 0x00003C24u;
|
|
/* 0252F148 */ cpu->f[2] = rbrew_read_f32(cpu->mem, _t111);
|
|
/* 0252F14C */ cpu->f[7] = cpu->f[7] + cpu->f[13];
|
|
/* 0252F150 */ _t112 = cpu->r[1] + 0x00000010u;
|
|
/* 0252F150 */ rbrew_write_f32(cpu->mem, _t112, cpu->f[0]);
|
|
/* 0252F154 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0252F158 */ cpu->f[1] = cpu->f[2];
|
|
/* 0252F15C */ cpu->r[3] = cpu->r[29];
|
|
/* 0252F160 */ _t113 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252F160 */ rbrew_write_f32(cpu->mem, _t113, cpu->f[7]);
|
|
/* 0252F164 */ _t114 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252F164 */ _t115 = _t114 & 0x00000001u;
|
|
/* 0252F164 */ if (_t115) goto L_0252F168; else goto L_0252F190;
|
|
L_0252F168: ; // 0x252f168
|
|
/* 0252F168 */ cpu->r[6] = 0x00000002u;
|
|
/* 0252F16C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0252F170 */ cpu->r[5] = cpu->r[1] + 0x00000084u;
|
|
/* 0252F174 */ _t116 = cpu->r[1] + 0x00000084u;
|
|
/* 0252F174 */ rbrew_write32(cpu->mem, _t116, cpu->r[6]);
|
|
/* 0252F178 */ Gambit_fn_025BD378(cpu);
|
|
/* 0252F17C */ _t117 = cpu->r[30] + 0x000001FCu;
|
|
/* 0252F17C */ cpu->r[9] = rbrew_read32(cpu->mem, _t117);
|
|
/* 0252F180 */ cpu->r[8] = cpu->r[9] + 0x00000001u;
|
|
/* 0252F184 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x0000000Du);
|
|
/* 0252F188 */ _t118 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252F188 */ _t119 = _t118 & 0x00000001u;
|
|
/* 0252F188 */ if (_t119) goto L_0252F468; else goto L_0252F18C;
|
|
L_0252F18C: ; // 0x252f18c
|
|
/* 0252F18C */ goto L_0252F1B4;
|
|
L_0252F190: ; // 0x252f190
|
|
/* 0252F190 */ cpu->r[7] = 0x00000002u;
|
|
/* 0252F194 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0252F198 */ cpu->r[5] = cpu->r[1] + 0x00000088u;
|
|
/* 0252F19C */ _t120 = cpu->r[1] + 0x00000088u;
|
|
/* 0252F19C */ rbrew_write32(cpu->mem, _t120, cpu->r[7]);
|
|
/* 0252F1A0 */ Gambit_fn_025BD3BC(cpu);
|
|
L_0252F1A4: ; // 0x252f1a4
|
|
/* 0252F1A4 */ _t121 = cpu->r[30] + 0x000001FCu;
|
|
/* 0252F1A4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t121);
|
|
/* 0252F1A8 */ cpu->r[8] = cpu->r[9] + 0x00000001u;
|
|
/* 0252F1AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x0000000Du);
|
|
/* 0252F1B0 */ _t122 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252F1B0 */ _t123 = _t122 & 0x00000001u;
|
|
/* 0252F1B0 */ if (_t123) goto L_0252F468; else goto L_0252F1B4;
|
|
L_0252F1B4: ; // 0x252f1b4
|
|
/* 0252F1B4 */ cpu->r[28] = 0x00000000u;
|
|
/* 0252F1B8 */ cpu->r[10] = 0x100C0000u;
|
|
/* 0252F1BC */ _t124 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0252F1BC */ rbrew_write32(cpu->mem, _t124, cpu->r[28]);
|
|
/* 0252F1C0 */ cpu->r[10] = cpu->r[10] + 0x00003B40u;
|
|
/* 0252F1C4 */ _t125 = cpu->r[1] + 0x00000090u;
|
|
/* 0252F1C4 */ rbrew_write32(cpu->mem, _t125, cpu->r[28]);
|
|
/* 0252F1C8 */ cpu->r[31] = 0x101F0000u;
|
|
/* 0252F1CC */ _t126 = cpu->r[1] + 0x00000094u;
|
|
/* 0252F1CC */ rbrew_write32(cpu->mem, _t126, cpu->r[10]);
|
|
/* 0252F1D0 */ cpu->r[31] = cpu->r[31] + 0xFFFF9BE0u;
|
|
/* 0252F1D4 */ _t127 = cpu->r[1] + 0x000000A4u;
|
|
/* 0252F1D4 */ rbrew_write32(cpu->mem, _t127, cpu->r[28]);
|
|
/* 0252F1D8 */ cpu->r[11] = 0x100C0000u;
|
|
/* 0252F1DC */ _t128 = cpu->r[31] + 0x00000004u;
|
|
/* 0252F1DC */ cpu->r[12] = rbrew_read32(cpu->mem, _t128);
|
|
/* 0252F1E0 */ cpu->r[11] = cpu->r[11] + 0x00003B80u;
|
|
/* 0252F1E4 */ _t129 = cpu->r[1] + 0x000000A8u;
|
|
/* 0252F1E4 */ rbrew_write32(cpu->mem, _t129, cpu->r[28]);
|
|
/* 0252F1E8 */ _t130 = cpu->r[1] + 0x000000ACu;
|
|
/* 0252F1E8 */ rbrew_write32(cpu->mem, _t130, cpu->r[11]);
|
|
/* 0252F1EC */ _t131 = cpu->r[12] + 0x00000014u;
|
|
/* 0252F1EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t131);
|
|
/* 0252F1F0 */ cpu->ctr = cpu->r[0];
|
|
/* 0252F1F4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0252F1F8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252F1FC */ _t132 = cpu->r[30] + 0x00000030u;
|
|
/* 0252F1FC */ cpu->r[3] = rbrew_read32(cpu->mem, _t132);
|
|
/* 0252F200 */ cpu->r[4] = cpu->r[1] + 0x0000008Cu;
|
|
/* 0252F204 */ _t133 = cpu->r[31] + 0x00000000u;
|
|
/* 0252F204 */ cpu->r[5] = rbrew_read32(cpu->mem, _t133);
|
|
/* 0252F208 */ cpu->r[6] = cpu->r[28];
|
|
/* 0252F20C */ Gambit_fn_027B72F0(cpu);
|
|
/* 0252F210 */ cpu->r[31] = 0x101F0000u;
|
|
/* 0252F214 */ cpu->r[31] = cpu->r[31] + 0xFFFF9BE8u;
|
|
/* 0252F218 */ _t134 = cpu->r[31] + 0x00000004u;
|
|
/* 0252F218 */ cpu->r[7] = rbrew_read32(cpu->mem, _t134);
|
|
/* 0252F21C */ _t135 = cpu->r[7] + 0x00000014u;
|
|
/* 0252F21C */ cpu->r[8] = rbrew_read32(cpu->mem, _t135);
|
|
/* 0252F220 */ _t136 = cpu->r[30] + 0x00000030u;
|
|
/* 0252F220 */ cpu->r[6] = rbrew_read32(cpu->mem, _t136);
|
|
/* 0252F224 */ cpu->ctr = cpu->r[8];
|
|
/* 0252F228 */ _t137 = cpu->r[6] + 0x000000E0u;
|
|
/* 0252F228 */ cpu->r[29] = rbrew_read32(cpu->mem, _t137);
|
|
/* 0252F22C */ cpu->r[3] = cpu->r[31];
|
|
/* 0252F230 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252F234 */ _t138 = cpu->r[29] + 0x0000003Cu;
|
|
/* 0252F234 */ cpu->r[0] = rbrew_read32(cpu->mem, _t138);
|
|
/* 0252F238 */ _t139 = cpu->r[30] + 0x00000030u;
|
|
/* 0252F238 */ cpu->r[3] = rbrew_read32(cpu->mem, _t139);
|
|
/* 0252F23C */ cpu->ctr = cpu->r[0];
|
|
/* 0252F240 */ _t140 = cpu->r[31] + 0x00000000u;
|
|
/* 0252F240 */ cpu->r[5] = rbrew_read32(cpu->mem, _t140);
|
|
/* 0252F244 */ cpu->r[4] = cpu->r[1] + 0x000000A4u;
|
|
/* 0252F248 */ cpu->r[6] = cpu->r[28];
|
|
/* 0252F24C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252F250 */ /* nop */
|
|
/* 0252F254 */ /* nop */
|
|
/* 0252F258 */ _t141 = cpu->r[1] + 0x000000E0u;
|
|
/* 0252F258 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t141);
|
|
/* 0252F25C */ /* nop */
|
|
/* 0252F260 */ _t142 = cpu->r[30] + 0x000001FCu;
|
|
/* 0252F260 */ cpu->r[10] = rbrew_read32(cpu->mem, _t142);
|
|
/* 0252F264 */ /* nop */
|
|
/* 0252F268 */ _t143 = cpu->r[1] + 0x000000B4u;
|
|
/* 0252F268 */ cpu->r[9] = rbrew_read32(cpu->mem, _t143);
|
|
/* 0252F26C */ _t144 = cpu->r[1] + 0x000000D4u;
|
|
/* 0252F26C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t144);
|
|
/* 0252F270 */ _t145 = cpu->r[1] + 0x000000B0u;
|
|
/* 0252F270 */ cpu->r[8] = rbrew_read32(cpu->mem, _t145);
|
|
/* 0252F274 */ cpu->f[7] = cpu->f[8] + cpu->f[9];
|
|
/* 0252F278 */ _t146 = cpu->r[1] + 0x00000124u;
|
|
/* 0252F278 */ rbrew_write32(cpu->mem, _t146, cpu->r[8]);
|
|
/* 0252F27C */ _t147 = cpu->r[1] + 0x00000124u;
|
|
/* 0252F27C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t147);
|
|
/* 0252F280 */ _t148 = cpu->r[1] + 0x000000B8u;
|
|
/* 0252F280 */ rbrew_write_f32(cpu->mem, _t148, cpu->f[7]);
|
|
/* 0252F284 */ _t149 = cpu->r[1] + 0x000000B8u;
|
|
/* 0252F284 */ cpu->r[0] = rbrew_read32(cpu->mem, _t149);
|
|
/* 0252F288 */ cpu->f[10] = cpu->f[11] * cpu->f[31];
|
|
/* 0252F28C */ _t150 = cpu->r[1] + 0x0000012Cu;
|
|
/* 0252F28C */ rbrew_write32(cpu->mem, _t150, cpu->r[0]);
|
|
/* 0252F290 */ _t151 = cpu->r[1] + 0x0000012Cu;
|
|
/* 0252F290 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t151);
|
|
/* 0252F294 */ _t152 = cpu->r[30] + 0x00000080u;
|
|
/* 0252F294 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t152);
|
|
/* 0252F298 */ cpu->f[0] = cpu->f[7] * cpu->f[31];
|
|
/* 0252F29C */ _t153 = cpu->r[1] + 0x00000128u;
|
|
/* 0252F29C */ rbrew_write32(cpu->mem, _t153, cpu->r[9]);
|
|
/* 0252F2A0 */ _t154 = cpu->r[1] + 0x00000128u;
|
|
/* 0252F2A0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t154);
|
|
/* 0252F2A4 */ _t155 = cpu->r[1] + 0x00000048u;
|
|
/* 0252F2A4 */ rbrew_write_f32(cpu->mem, _t155, cpu->f[10]);
|
|
/* 0252F2A8 */ _t156 = cpu->r[1] + 0x00000048u;
|
|
/* 0252F2A8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t156);
|
|
/* 0252F2AC */ _t157 = cpu->r[1] + 0x00000050u;
|
|
/* 0252F2AC */ rbrew_write_f32(cpu->mem, _t157, cpu->f[0]);
|
|
/* 0252F2B0 */ _t158 = cpu->r[1] + 0x00000050u;
|
|
/* 0252F2B0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t158);
|
|
/* 0252F2B4 */ cpu->f[12] = cpu->f[13] * cpu->f[31];
|
|
/* 0252F2B8 */ /* nop */
|
|
/* 0252F2BC */ _t159 = cpu->r[1] + 0x00000138u;
|
|
/* 0252F2BC */ rbrew_write32(cpu->mem, _t159, cpu->r[9]);
|
|
/* 0252F2C0 */ _t160 = cpu->r[1] + 0x00000138u;
|
|
/* 0252F2C0 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t160);
|
|
/* 0252F2C4 */ _t161 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0252F2C4 */ rbrew_write_f32(cpu->mem, _t161, cpu->f[12]);
|
|
/* 0252F2C8 */ _t162 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0252F2C8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t162);
|
|
/* 0252F2CC */ cpu->f[7] = cpu->f[8] - cpu->f[9];
|
|
/* 0252F2D0 */ _t163 = cpu->r[1] + 0x00000130u;
|
|
/* 0252F2D0 */ rbrew_write32(cpu->mem, _t163, cpu->r[7]);
|
|
/* 0252F2D4 */ _t164 = cpu->r[1] + 0x00000134u;
|
|
/* 0252F2D4 */ rbrew_write32(cpu->mem, _t164, cpu->r[8]);
|
|
/* 0252F2D8 */ /* nop */
|
|
/* 0252F2DC */ _t165 = cpu->r[1] + 0x000000C4u;
|
|
/* 0252F2DC */ rbrew_write_f32(cpu->mem, _t165, cpu->f[7]);
|
|
/* 0252F2E0 */ /* nop */
|
|
/* 0252F2E4 */ _t166 = cpu->r[1] + 0x000000C4u;
|
|
/* 0252F2E4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t166);
|
|
/* 0252F2E8 */ /* nop */
|
|
/* 0252F2EC */ _t167 = cpu->r[1] + 0x000000C0u;
|
|
/* 0252F2EC */ cpu->r[7] = rbrew_read32(cpu->mem, _t167);
|
|
/* 0252F2F0 */ _t168 = cpu->r[1] + 0x000000BCu;
|
|
/* 0252F2F0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t168);
|
|
/* 0252F2F4 */ _t169 = cpu->r[1] + 0x00000018u;
|
|
/* 0252F2F4 */ rbrew_write32(cpu->mem, _t169, cpu->r[7]);
|
|
/* 0252F2F8 */ _t170 = cpu->r[1] + 0x00000018u;
|
|
/* 0252F2F8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t170);
|
|
/* 0252F2FC */ _t171 = cpu->r[1] + 0x00000014u;
|
|
/* 0252F2FC */ rbrew_write32(cpu->mem, _t171, cpu->r[6]);
|
|
/* 0252F300 */ cpu->f[11] = cpu->f[12] * cpu->f[12];
|
|
/* 0252F304 */ _t172 = cpu->r[1] + 0x00000014u;
|
|
/* 0252F304 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t172);
|
|
/* 0252F308 */ _t173 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252F308 */ rbrew_write32(cpu->mem, _t173, cpu->r[8]);
|
|
/* 0252F30C */ cpu->f[0] = fma(cpu->f[13], cpu->f[13], cpu->f[11]);
|
|
/* 0252F310 */ _t174 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252F310 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t174);
|
|
/* 0252F314 */ cpu->f[8] = fma(cpu->f[10], cpu->f[10], cpu->f[0]);
|
|
/* 0252F318 */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 0252F31C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[30]);
|
|
/* 0252F320 */ _t175 = cpu->r[30] + 0x000001FCu;
|
|
/* 0252F320 */ rbrew_write32(cpu->mem, _t175, cpu->r[10]);
|
|
/* 0252F324 */ _t176 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252F324 */ _t177 = _t176 & 0x00000001u;
|
|
/* 0252F324 */ if (_t177) goto L_0252F328; else goto L_0252F35C;
|
|
L_0252F328: ; // 0x252f328
|
|
/* 0252F328 */ _ft178 = sqrt(cpu->f[8]);
|
|
/* 0252F328 */ _ft179 = (double)(int32_t)0x00000001u;
|
|
/* 0252F328 */ cpu->f[9] = _ft179 / _ft178;
|
|
/* 0252F32C */ cpu->f[10] = cpu->f[9] * cpu->f[9];
|
|
/* 0252F330 */ cpu->f[11] = cpu->f[9] * cpu->f[31];
|
|
/* 0252F334 */ cpu->f[10] = -fma(cpu->f[10], cpu->f[8], -(cpu->f[29]));
|
|
/* 0252F338 */ cpu->f[9] = cpu->f[10] * cpu->f[11];
|
|
/* 0252F33C */ /* nop */
|
|
/* 0252F340 */ _t180 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252F340 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t180);
|
|
/* 0252F344 */ /* nop */
|
|
/* 0252F348 */ /* nop */
|
|
/* 0252F34C */ cpu->f[10] = cpu->f[10] * cpu->f[9];
|
|
/* 0252F350 */ _t181 = cpu->r[1] + 0x00000018u;
|
|
/* 0252F350 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t181);
|
|
/* 0252F354 */ _t182 = cpu->r[1] + 0x00000014u;
|
|
/* 0252F354 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t182);
|
|
/* 0252F358 */ _t183 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252F358 */ rbrew_write_f32(cpu->mem, _t183, cpu->f[10]);
|
|
L_0252F35C: ; // 0x252f35c
|
|
/* 0252F35C */ cpu->r[8] = 0x00000003u;
|
|
/* 0252F360 */ cpu->r[11] = cpu->r[30] + 0x00000050u;
|
|
/* 0252F364 */ cpu->ctr = cpu->r[8];
|
|
/* 0252F368 */ cpu->r[6] = cpu->r[1] + 0x000000E4u;
|
|
L_0252F36C: ; // 0x252f36c
|
|
/* 0252F36C */ _t184 = cpu->r[11] + 0x00000004u;
|
|
/* 0252F36C */ cpu->r[10] = rbrew_read32(cpu->mem, _t184);
|
|
/* 0252F370 */ _t185 = cpu->r[6] + 0x00000004u;
|
|
/* 0252F370 */ rbrew_write32(cpu->mem, _t185, cpu->r[10]);
|
|
/* 0252F374 */ _t186 = cpu->r[11] + 0x00000008u;
|
|
/* 0252F374 */ cpu->r[12] = rbrew_read32(cpu->mem, _t186);
|
|
/* 0252F378 */ _t187 = cpu->r[6] + 0x00000008u;
|
|
/* 0252F378 */ rbrew_write32(cpu->mem, _t187, cpu->r[12]);
|
|
/* 0252F37C */ _t188 = cpu->r[11] + 0x0000000Cu;
|
|
/* 0252F37C */ cpu->r[0] = rbrew_read32(cpu->mem, _t188);
|
|
/* 0252F380 */ _t189 = cpu->r[6] + 0x0000000Cu;
|
|
/* 0252F380 */ rbrew_write32(cpu->mem, _t189, cpu->r[0]);
|
|
/* 0252F384 */ _t190 = cpu->r[11] + 0x00000010u;
|
|
/* 0252F384 */ cpu->r[0] = rbrew_read32(cpu->mem, _t190);
|
|
/* 0252F384 */ cpu->r[11] = _t190;
|
|
/* 0252F388 */ _t191 = cpu->r[6] + 0x00000010u;
|
|
/* 0252F388 */ rbrew_write32(cpu->mem, _t191, cpu->r[0]);
|
|
/* 0252F388 */ cpu->r[6] = _t191;
|
|
/* 0252F38C */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0252F38C */ _t192 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0252F38C */ _t193 = _t192 >> (0x00000002u & 31u);
|
|
/* 0252F38C */ _t194 = _t193 & 0x00000001u;
|
|
/* 0252F38C */ if (_t194) goto L_0252F36C; else goto L_0252F390;
|
|
L_0252F390: ; // 0x252f390
|
|
/* 0252F390 */ _t195 = cpu->r[1] + 0x000000F8u;
|
|
/* 0252F390 */ rbrew_write_f32(cpu->mem, _t195, cpu->f[12]);
|
|
/* 0252F394 */ cpu->r[3] = cpu->r[1] + 0x000000E8u;
|
|
/* 0252F398 */ cpu->r[4] = 0x100C0000u;
|
|
/* 0252F39C */ _t196 = cpu->r[1] + 0x000000F4u;
|
|
/* 0252F39C */ rbrew_write_f32(cpu->mem, _t196, cpu->f[13]);
|
|
/* 0252F3A0 */ cpu->r[5] = 0x000001FCu;
|
|
/* 0252F3A4 */ cpu->r[4] = cpu->r[4] + 0x00003CA4u;
|
|
/* 0252F3A8 */ _t197 = cpu->r[1] + 0x000000FCu;
|
|
/* 0252F3A8 */ rbrew_write_f32(cpu->mem, _t197, cpu->f[10]);
|
|
/* 0252F3AC */ Gambit_fn_0204D380(cpu);
|
|
/* 0252F3B0 */ _t198 = cpu->r[1] + 0x000000E8u;
|
|
/* 0252F3B0 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t198);
|
|
/* 0252F3B4 */ _t199 = cpu->r[1] + 0x000000ECu;
|
|
/* 0252F3B4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t199);
|
|
/* 0252F3B8 */ _t200 = cpu->r[1] + 0x00000054u;
|
|
/* 0252F3B8 */ rbrew_write_f32(cpu->mem, _t200, cpu->f[9]);
|
|
/* 0252F3BC */ _t201 = cpu->r[1] + 0x0000010Cu;
|
|
/* 0252F3BC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t201);
|
|
/* 0252F3C0 */ _t202 = cpu->r[1] + 0x00000104u;
|
|
/* 0252F3C0 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t202);
|
|
/* 0252F3C4 */ _t203 = cpu->r[1] + 0x00000060u;
|
|
/* 0252F3C4 */ rbrew_write_f32(cpu->mem, _t203, cpu->f[9]);
|
|
/* 0252F3C8 */ _t204 = cpu->r[1] + 0x0000006Cu;
|
|
/* 0252F3C8 */ rbrew_write_f32(cpu->mem, _t204, cpu->f[7]);
|
|
/* 0252F3CC */ _t205 = cpu->r[1] + 0x00000110u;
|
|
/* 0252F3CC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t205);
|
|
/* 0252F3D0 */ _t206 = cpu->r[1] + 0x000000F0u;
|
|
/* 0252F3D0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t206);
|
|
/* 0252F3D4 */ _t207 = cpu->r[1] + 0x00000070u;
|
|
/* 0252F3D4 */ rbrew_write_f32(cpu->mem, _t207, cpu->f[9]);
|
|
/* 0252F3D8 */ _t208 = cpu->r[1] + 0x00000074u;
|
|
/* 0252F3D8 */ rbrew_write_f32(cpu->mem, _t208, cpu->f[11]);
|
|
/* 0252F3DC */ _t209 = cpu->r[1] + 0x000000F4u;
|
|
/* 0252F3DC */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t209);
|
|
/* 0252F3E0 */ _t210 = cpu->r[1] + 0x000000FCu;
|
|
/* 0252F3E0 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t210);
|
|
/* 0252F3E4 */ _t211 = cpu->r[1] + 0x00000058u;
|
|
/* 0252F3E4 */ rbrew_write_f32(cpu->mem, _t211, cpu->f[8]);
|
|
/* 0252F3E8 */ _t212 = cpu->r[1] + 0x00000078u;
|
|
/* 0252F3E8 */ rbrew_write_f32(cpu->mem, _t212, cpu->f[7]);
|
|
/* 0252F3EC */ _t213 = cpu->r[1] + 0x00000114u;
|
|
/* 0252F3EC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t213);
|
|
/* 0252F3F0 */ _t214 = cpu->r[1] + 0x00000108u;
|
|
/* 0252F3F0 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t214);
|
|
/* 0252F3F4 */ _t215 = cpu->r[1] + 0x00000080u;
|
|
/* 0252F3F4 */ rbrew_write_f32(cpu->mem, _t215, cpu->f[12]);
|
|
/* 0252F3F8 */ _t216 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0252F3F8 */ rbrew_write_f32(cpu->mem, _t216, cpu->f[8]);
|
|
/* 0252F3FC */ _t217 = cpu->r[1] + 0x00000100u;
|
|
/* 0252F3FC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t217);
|
|
/* 0252F400 */ _t218 = cpu->r[1] + 0x000000F8u;
|
|
/* 0252F400 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t218);
|
|
/* 0252F404 */ _t219 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0252F404 */ rbrew_write_f32(cpu->mem, _t219, cpu->f[0]);
|
|
/* 0252F408 */ _t220 = cpu->r[1] + 0x00000068u;
|
|
/* 0252F408 */ rbrew_write_f32(cpu->mem, _t220, cpu->f[13]);
|
|
/* 0252F40C */ cpu->r[3] = cpu->r[30];
|
|
/* 0252F410 */ _t221 = cpu->r[1] + 0x00000064u;
|
|
/* 0252F410 */ rbrew_write_f32(cpu->mem, _t221, cpu->f[10]);
|
|
/* 0252F414 */ Gambit_fn_0252D85C(cpu);
|
|
/* 0252F418 */ _t222 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0252F418 */ cpu->r[31] = rbrew_read32(cpu->mem, _t222);
|
|
/* 0252F41C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0252F420 */ cpu->f[31] = cpu->f[1];
|
|
/* 0252F424 */ _t223 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252F424 */ _t224 = _t223 & 0x00000001u;
|
|
/* 0252F424 */ if (_t224) goto L_0252F45C; else goto L_0252F428;
|
|
L_0252F428: ; // 0x252f428
|
|
/* 0252F428 */ _t225 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0252F428 */ cpu->r[6] = rbrew_read32(cpu->mem, _t225);
|
|
/* 0252F42C */ _t226 = cpu->r[1] + 0x00000090u;
|
|
/* 0252F42C */ cpu->r[7] = rbrew_read32(cpu->mem, _t226);
|
|
/* 0252F430 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[7]);
|
|
/* 0252F434 */ _t227 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252F434 */ _t228 = _t227 & 0x00000001u;
|
|
/* 0252F434 */ if (_t228) goto L_0252F438; else goto L_0252F45C;
|
|
L_0252F438: ; // 0x252f438
|
|
/* 0252F438 */ cpu->r[3] = cpu->r[1] + 0x00000054u;
|
|
/* 0252F43C */ cpu->r[4] = cpu->r[31] + 0x0000007Cu;
|
|
/* 0252F440 */ Gambit_fn_02C69510(cpu);
|
|
/* 0252F444 */ _t229 = cpu->r[31] + 0x0000012Cu;
|
|
/* 0252F444 */ cpu->r[8] = rbrew_read32(cpu->mem, _t229);
|
|
/* 0252F448 */ _t230 = cpu->r[31] + 0x00000074u;
|
|
/* 0252F448 */ rbrew_write_f32(cpu->mem, _t230, cpu->f[31]);
|
|
/* 0252F44C */ cpu->r[8] = cpu->r[8] | 0x00000008u;
|
|
/* 0252F450 */ _t231 = cpu->r[31] + 0x00000070u;
|
|
/* 0252F450 */ rbrew_write_f32(cpu->mem, _t231, cpu->f[31]);
|
|
/* 0252F454 */ _t232 = cpu->r[31] + 0x0000012Cu;
|
|
/* 0252F454 */ rbrew_write32(cpu->mem, _t232, cpu->r[8]);
|
|
/* 0252F458 */ _t233 = cpu->r[31] + 0x00000078u;
|
|
/* 0252F458 */ rbrew_write_f32(cpu->mem, _t233, cpu->f[31]);
|
|
L_0252F45C: ; // 0x252f45c
|
|
/* 0252F45C */ cpu->r[3] = cpu->r[1] + 0x000000A4u;
|
|
/* 0252F460 */ cpu->r[4] = cpu->r[1] + 0x00000130u;
|
|
/* 0252F464 */ Gambit_fn_028B30F0(cpu);
|
|
L_0252F468: ; // 0x252f468
|
|
/* 0252F468 */ _t234 = cpu->r[1] + 0x00000160u;
|
|
/* 0252F468 */ cpu->r[28] = rbrew_read32(cpu->mem, _t234);
|
|
/* 0252F46C */ _t235 = cpu->r[1] + 0x00000164u;
|
|
/* 0252F46C */ cpu->r[29] = rbrew_read32(cpu->mem, _t235);
|
|
/* 0252F470 */ _t236 = cpu->r[1] + 0x00000198u;
|
|
/* 0252F470 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t236);
|
|
/* 0252F474 */ _t237 = cpu->r[1] + 0x00000178u;
|
|
/* 0252F474 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t237);
|
|
/* 0252F478 */ _t238 = cpu->r[1] + 0x00000190u;
|
|
/* 0252F478 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t238);
|
|
/* 0252F47C */ _t239 = cpu->r[1] + 0x00000188u;
|
|
/* 0252F47C */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t239);
|
|
/* 0252F480 */ _t240 = cpu->r[1] + 0x00000170u;
|
|
/* 0252F480 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t240);
|
|
/* 0252F484 */ _t241 = cpu->r[1] + 0x00000180u;
|
|
/* 0252F484 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t241);
|
|
/* 0252F488 */ _t242 = cpu->r[1] + 0x0000016Cu;
|
|
/* 0252F488 */ cpu->r[31] = rbrew_read32(cpu->mem, _t242);
|
|
/* 0252F48C */ _t243 = cpu->r[1] + 0x00000168u;
|
|
/* 0252F48C */ cpu->r[30] = rbrew_read32(cpu->mem, _t243);
|
|
/* 0252F490 */ _t244 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0252F490 */ _t245 = _t244 & 0x00000001u;
|
|
/* 0252F490 */ if (_t245) goto L_0252F494; // else: addr-0 trap, fall-through
|
|
L_0252F494: ; // 0x252f494
|
|
/* 0252F494 */ _t246 = cpu->r[1] + 0x000001A4u;
|
|
/* 0252F494 */ cpu->r[0] = rbrew_read32(cpu->mem, _t246);
|
|
/* 0252F498 */ cpu->lr = cpu->r[0];
|
|
/* 0252F49C */ cpu->r[1] = cpu->r[1] + 0x000001A0u;
|
|
/* 0252F4A0 */ return;
|
|
}
|
|
|
|
// fn_0252F4A4 @ 0x252f4a4
|
|
void Gambit_fn_0252F4A4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _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, _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, _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;
|
|
double _ft76, _ft77, _ft158, _ft159;
|
|
|
|
L_0252F4A4: ; // 0x252f4a4
|
|
/* 0252F4A4 */ cpu->r[0] = cpu->lr;
|
|
/* 0252F4A8 */ _t0 = cpu->r[1] + 0xFFFFFE60u;
|
|
/* 0252F4A8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252F4A8 */ cpu->r[1] = _t0;
|
|
/* 0252F4AC */ _t1 = cpu->r[1] + 0x00000190u;
|
|
/* 0252F4AC */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0252F4B0 */ /* nop */
|
|
/* 0252F4B4 */ _t2 = cpu->r[1] + 0x00000170u;
|
|
/* 0252F4B4 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[29]);
|
|
/* 0252F4B8 */ /* nop */
|
|
/* 0252F4BC */ _t3 = cpu->r[1] + 0x00000198u;
|
|
/* 0252F4BC */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 0252F4C0 */ _t4 = cpu->r[1] + 0x00000178u;
|
|
/* 0252F4C0 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[29]);
|
|
/* 0252F4C4 */ cpu->r[11] = 0x101F0000u;
|
|
/* 0252F4C8 */ _t5 = cpu->r[1] + 0x00000180u;
|
|
/* 0252F4C8 */ rbrew_write_f64(cpu->mem, _t5, cpu->f[30]);
|
|
/* 0252F4CC */ _t6 = cpu->r[1] + 0x000001A4u;
|
|
/* 0252F4CC */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0252F4D0 */ /* nop */
|
|
/* 0252F4D4 */ _t7 = cpu->r[1] + 0x0000016Cu;
|
|
/* 0252F4D4 */ rbrew_write32(cpu->mem, _t7, cpu->r[31]);
|
|
/* 0252F4D8 */ cpu->r[12] = 0x100C0000u;
|
|
/* 0252F4DC */ _t8 = cpu->r[1] + 0x00000188u;
|
|
/* 0252F4DC */ rbrew_write_f32(cpu->mem, _t8, cpu->f[30]);
|
|
/* 0252F4E0 */ _t9 = cpu->r[1] + 0x00000164u;
|
|
/* 0252F4E0 */ rbrew_write32(cpu->mem, _t9, cpu->r[29]);
|
|
/* 0252F4E4 */ _t10 = cpu->r[1] + 0x00000168u;
|
|
/* 0252F4E4 */ rbrew_write32(cpu->mem, _t10, cpu->r[30]);
|
|
/* 0252F4E8 */ _t11 = cpu->r[11] + 0x00003840u;
|
|
/* 0252F4E8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0252F4E8 */ cpu->r[11] = _t11;
|
|
/* 0252F4EC */ _t12 = cpu->r[11] + 0x00000004u;
|
|
/* 0252F4EC */ cpu->r[10] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0252F4F0 */ _t13 = cpu->r[12] + 0x00003BDCu;
|
|
/* 0252F4F0 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 0252F4F4 */ _t14 = cpu->r[11] + 0x00000008u;
|
|
/* 0252F4F4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0252F4F8 */ cpu->r[0] = 0x10110000u;
|
|
/* 0252F4FC */ _t15 = cpu->r[1] + 0x00000104u;
|
|
/* 0252F4FC */ rbrew_write32(cpu->mem, _t15, cpu->r[10]);
|
|
/* 0252F500 */ cpu->r[0] = cpu->r[0] + 0xFFFFEF7Cu;
|
|
/* 0252F504 */ _t16 = cpu->r[1] + 0x00000114u;
|
|
/* 0252F504 */ rbrew_write32(cpu->mem, _t16, cpu->r[12]);
|
|
/* 0252F508 */ cpu->r[30] = cpu->r[3];
|
|
/* 0252F50C */ _t17 = cpu->r[1] + 0x00000100u;
|
|
/* 0252F50C */ rbrew_write32(cpu->mem, _t17, cpu->r[9]);
|
|
/* 0252F510 */ _t18 = cpu->r[1] + 0x000000FCu;
|
|
/* 0252F510 */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
/* 0252F514 */ cpu->r[31] = cpu->r[4];
|
|
/* 0252F518 */ _t19 = cpu->r[1] + 0x0000010Cu;
|
|
/* 0252F518 */ rbrew_write32(cpu->mem, _t19, cpu->r[9]);
|
|
/* 0252F51C */ cpu->r[3] = cpu->r[31];
|
|
/* 0252F520 */ _t20 = cpu->r[1] + 0x00000110u;
|
|
/* 0252F520 */ rbrew_write32(cpu->mem, _t20, cpu->r[10]);
|
|
/* 0252F524 */ _t21 = cpu->r[1] + 0x00000118u;
|
|
/* 0252F524 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[29]);
|
|
/* 0252F528 */ cpu->r[4] = cpu->r[1] + 0x000000FCu;
|
|
/* 0252F52C */ _t22 = cpu->r[1] + 0x00000108u;
|
|
/* 0252F52C */ rbrew_write32(cpu->mem, _t22, cpu->r[12]);
|
|
/* 0252F530 */ Gambit_fn_022713B8(cpu);
|
|
/* 0252F534 */ cpu->r[10] = 0x100C0000u;
|
|
/* 0252F538 */ _t23 = cpu->r[30] + 0x00000080u;
|
|
/* 0252F538 */ cpu->r[11] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0252F53C */ cpu->r[0] = 0x10110000u;
|
|
/* 0252F540 */ _t24 = cpu->r[30] + 0x0000007Cu;
|
|
/* 0252F540 */ cpu->r[9] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0252F544 */ cpu->r[3] = cpu->r[1] + 0x0000014Cu;
|
|
/* 0252F548 */ _t25 = cpu->r[1] + 0x00000158u;
|
|
/* 0252F548 */ rbrew_write32(cpu->mem, _t25, cpu->r[11]);
|
|
/* 0252F54C */ cpu->r[0] = cpu->r[0] + 0xFFFFEF4Cu;
|
|
/* 0252F550 */ _t26 = cpu->r[10] + 0x00003C70u;
|
|
/* 0252F550 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 0252F554 */ _t27 = cpu->r[1] + 0x00000154u;
|
|
/* 0252F554 */ rbrew_write32(cpu->mem, _t27, cpu->r[9]);
|
|
/* 0252F558 */ cpu->r[4] = cpu->r[1] + 0x000000FCu;
|
|
/* 0252F55C */ _t28 = cpu->r[30] + 0x00000078u;
|
|
/* 0252F55C */ cpu->r[7] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0252F560 */ _t29 = cpu->r[1] + 0x0000014Cu;
|
|
/* 0252F560 */ rbrew_write32(cpu->mem, _t29, cpu->r[0]);
|
|
/* 0252F564 */ _t30 = cpu->r[1] + 0x0000015Cu;
|
|
/* 0252F564 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[12]);
|
|
/* 0252F568 */ cpu->r[5] = cpu->r[1] + 0x00000020u;
|
|
/* 0252F56C */ _t31 = cpu->r[1] + 0x00000150u;
|
|
/* 0252F56C */ rbrew_write32(cpu->mem, _t31, cpu->r[7]);
|
|
/* 0252F570 */ Gambit_fn_027DE3CC(cpu);
|
|
/* 0252F574 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252F578 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252F578 */ _t33 = _t32 & 0x00000001u;
|
|
/* 0252F578 */ if (_t33) goto L_0252FA1C; else goto L_0252F57C;
|
|
L_0252F57C: ; // 0x252f57c
|
|
/* 0252F57C */ _t34 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0252F57C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 0252F580 */ /* nop */
|
|
/* 0252F584 */ _t35 = cpu->r[1] + 0x00000028u;
|
|
/* 0252F584 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 0252F588 */ /* nop */
|
|
/* 0252F58C */ /* nop */
|
|
/* 0252F590 */ /* nop */
|
|
/* 0252F594 */ _t36 = cpu->r[1] + 0x00000090u;
|
|
/* 0252F594 */ cpu->r[0] = rbrew_read32(cpu->mem, _t36);
|
|
/* 0252F598 */ _t37 = cpu->r[1] + 0x00000094u;
|
|
/* 0252F598 */ cpu->r[8] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0252F59C */ cpu->f[11] = cpu->f[12] * cpu->f[9];
|
|
/* 0252F5A0 */ _t38 = cpu->r[1] + 0x00000140u;
|
|
/* 0252F5A0 */ rbrew_write32(cpu->mem, _t38, cpu->r[0]);
|
|
/* 0252F5A4 */ _t39 = cpu->r[1] + 0x00000020u;
|
|
/* 0252F5A4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t39);
|
|
/* 0252F5A8 */ _t40 = cpu->r[1] + 0x00000098u;
|
|
/* 0252F5A8 */ rbrew_write_f32(cpu->mem, _t40, cpu->f[11]);
|
|
/* 0252F5AC */ _t41 = cpu->r[1] + 0x00000098u;
|
|
/* 0252F5AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0252F5B0 */ cpu->f[11] = -cpu->f[0];
|
|
/* 0252F5B4 */ _t42 = cpu->r[1] + 0x00000024u;
|
|
/* 0252F5B4 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 0252F5B8 */ _t43 = cpu->r[1] + 0x00000144u;
|
|
/* 0252F5B8 */ rbrew_write32(cpu->mem, _t43, cpu->r[8]);
|
|
/* 0252F5BC */ /* nop */
|
|
/* 0252F5C0 */ _t44 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0252F5C0 */ rbrew_write_f32(cpu->mem, _t44, cpu->f[11]);
|
|
/* 0252F5C4 */ _t45 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0252F5C4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t45);
|
|
/* 0252F5C8 */ cpu->f[12] = -cpu->f[12];
|
|
/* 0252F5CC */ _t46 = cpu->r[1] + 0x00000038u;
|
|
/* 0252F5CC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t46);
|
|
/* 0252F5D0 */ cpu->f[7] = -cpu->f[8];
|
|
/* 0252F5D4 */ _t47 = cpu->r[1] + 0x00000148u;
|
|
/* 0252F5D4 */ rbrew_write32(cpu->mem, _t47, cpu->r[0]);
|
|
/* 0252F5D8 */ _t48 = cpu->r[1] + 0x00000148u;
|
|
/* 0252F5D8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 0252F5DC */ _t49 = cpu->r[1] + 0x00000044u;
|
|
/* 0252F5DC */ rbrew_write_f32(cpu->mem, _t49, cpu->f[12]);
|
|
/* 0252F5E0 */ _t50 = cpu->r[1] + 0x00000044u;
|
|
/* 0252F5E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t50);
|
|
/* 0252F5E4 */ _t51 = cpu->r[1] + 0x00000040u;
|
|
/* 0252F5E4 */ rbrew_write_f32(cpu->mem, _t51, cpu->f[7]);
|
|
/* 0252F5E8 */ _t52 = cpu->r[1] + 0x0000011Cu;
|
|
/* 0252F5E8 */ rbrew_write32(cpu->mem, _t52, cpu->r[10]);
|
|
/* 0252F5EC */ _t53 = cpu->r[1] + 0x0000011Cu;
|
|
/* 0252F5EC */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t53);
|
|
/* 0252F5F0 */ _t54 = cpu->r[1] + 0x00000040u;
|
|
/* 0252F5F0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t54);
|
|
/* 0252F5F4 */ _t55 = cpu->r[1] + 0x00000020u;
|
|
/* 0252F5F4 */ rbrew_write_f32(cpu->mem, _t55, cpu->f[7]);
|
|
/* 0252F5F8 */ cpu->f[10] = cpu->f[10] + cpu->f[13];
|
|
/* 0252F5FC */ _t56 = cpu->r[1] + 0x00000120u;
|
|
/* 0252F5FC */ rbrew_write32(cpu->mem, _t56, cpu->r[11]);
|
|
/* 0252F600 */ _t57 = cpu->r[1] + 0x00000120u;
|
|
/* 0252F600 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t57);
|
|
/* 0252F604 */ _t58 = cpu->r[1] + 0x00000124u;
|
|
/* 0252F604 */ rbrew_write32(cpu->mem, _t58, cpu->r[0]);
|
|
/* 0252F608 */ _t59 = cpu->r[1] + 0x00000124u;
|
|
/* 0252F608 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t59);
|
|
/* 0252F60C */ _t60 = cpu->r[1] + 0x00000038u;
|
|
/* 0252F60C */ rbrew_write_f32(cpu->mem, _t60, cpu->f[10]);
|
|
/* 0252F610 */ cpu->f[11] = cpu->f[0] * cpu->f[9];
|
|
/* 0252F614 */ _t61 = cpu->r[1] + 0x00000024u;
|
|
/* 0252F614 */ rbrew_write_f32(cpu->mem, _t61, cpu->f[8]);
|
|
/* 0252F618 */ /* nop */
|
|
/* 0252F61C */ /* nop */
|
|
/* 0252F620 */ /* nop */
|
|
/* 0252F624 */ /* nop */
|
|
/* 0252F628 */ /* nop */
|
|
/* 0252F62C */ _t62 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252F62C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t62);
|
|
/* 0252F630 */ _t63 = cpu->r[31] + 0x00000070u;
|
|
/* 0252F630 */ cpu->r[3] = rbrew_read32(cpu->mem, _t63);
|
|
/* 0252F634 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[29], cpu->f[10]);
|
|
/* 0252F638 */ _t64 = cpu->r[1] + 0x00000028u;
|
|
/* 0252F638 */ rbrew_write_f32(cpu->mem, _t64, cpu->f[0]);
|
|
/* 0252F63C */ _t65 = cpu->r[1] + 0x00000010u;
|
|
/* 0252F63C */ rbrew_write_f32(cpu->mem, _t65, cpu->f[11]);
|
|
/* 0252F640 */ _t66 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252F640 */ _t67 = _t66 & 0x00000001u;
|
|
/* 0252F640 */ if (_t67) goto L_0252F644; else goto L_0252F648;
|
|
L_0252F644: ; // 0x252f644
|
|
/* 0252F644 */ _t68 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252F644 */ rbrew_write_f32(cpu->mem, _t68, cpu->f[29]);
|
|
L_0252F648: ; // 0x252f648
|
|
/* 0252F648 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0252F64C */ Gambit_fn_0231B16C(cpu);
|
|
/* 0252F650 */ _t69 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252F650 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t69);
|
|
/* 0252F654 */ cpu->f[12] = cpu->f[12] * cpu->f[12];
|
|
/* 0252F658 */ _t70 = cpu->r[1] + 0x00000008u;
|
|
/* 0252F658 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t70);
|
|
/* 0252F65C */ cpu->f[0] = fma(cpu->f[13], cpu->f[13], cpu->f[12]);
|
|
/* 0252F660 */ _t71 = cpu->r[1] + 0x00000010u;
|
|
/* 0252F660 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t71);
|
|
/* 0252F664 */ cpu->r[11] = 0x100C0000u;
|
|
/* 0252F668 */ _t72 = cpu->r[11] + 0x00003C44u;
|
|
/* 0252F668 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t72);
|
|
/* 0252F66C */ cpu->f[11] = fma(cpu->f[12], cpu->f[12], cpu->f[0]);
|
|
/* 0252F670 */ cpu->r[7] = 0x100C0000u;
|
|
/* 0252F674 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[29]);
|
|
/* 0252F678 */ _t73 = cpu->r[7] + 0x00003C48u;
|
|
/* 0252F678 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t73);
|
|
/* 0252F67C */ _t74 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252F67C */ _t75 = _t74 & 0x00000001u;
|
|
/* 0252F67C */ if (_t75) goto L_0252F680; else goto L_0252F734;
|
|
L_0252F680: ; // 0x252f680
|
|
/* 0252F680 */ _ft76 = sqrt(cpu->f[11]);
|
|
/* 0252F680 */ _ft77 = (double)(int32_t)0x00000001u;
|
|
/* 0252F680 */ cpu->f[0] = _ft77 / _ft76;
|
|
/* 0252F684 */ cpu->f[7] = cpu->f[0] * cpu->f[0];
|
|
/* 0252F688 */ cpu->f[8] = cpu->f[0] * cpu->f[30];
|
|
/* 0252F68C */ cpu->f[7] = -fma(cpu->f[7], cpu->f[11], -(cpu->f[31]));
|
|
/* 0252F690 */ cpu->f[0] = cpu->f[7] * cpu->f[8];
|
|
/* 0252F694 */ cpu->f[11] = cpu->f[11] * cpu->f[0];
|
|
/* 0252F698 */ _t78 = cpu->r[1] + 0x00000010u;
|
|
/* 0252F698 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t78);
|
|
/* 0252F69C */ cpu->f[12] = cpu->f[12] * cpu->f[0];
|
|
/* 0252F6A0 */ /* nop */
|
|
/* 0252F6A4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[29]);
|
|
/* 0252F6A8 */ /* nop */
|
|
/* 0252F6AC */ _t79 = cpu->r[1] + 0x00000010u;
|
|
/* 0252F6AC */ rbrew_write_f32(cpu->mem, _t79, cpu->f[12]);
|
|
/* 0252F6B0 */ /* nop */
|
|
/* 0252F6B4 */ _t80 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252F6B4 */ _t81 = _t80 & 0x00000001u;
|
|
/* 0252F6B4 */ if (_t81) goto L_0252F6F8; else goto L_0252F6B8;
|
|
L_0252F6B8: ; // 0x252f6b8
|
|
/* 0252F6B8 */ /* nop */
|
|
/* 0252F6BC */ cpu->r[29] = 0x00000000u;
|
|
/* 0252F6C0 */ _t82 = cpu->r[1] + 0x000000A4u;
|
|
/* 0252F6C0 */ rbrew_write8(cpu->mem, _t82, (uint8_t)cpu->r[29]);
|
|
/* 0252F6C4 */ _t83 = cpu->r[31] + 0x00000004u;
|
|
/* 0252F6C4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t83);
|
|
/* 0252F6C8 */ _t84 = cpu->r[1] + 0x000000A0u;
|
|
/* 0252F6C8 */ rbrew_write32(cpu->mem, _t84, cpu->r[29]);
|
|
/* 0252F6CC */ _t85 = cpu->r[1] + 0x0000009Cu;
|
|
/* 0252F6CC */ rbrew_write32(cpu->mem, _t85, cpu->r[30]);
|
|
/* 0252F6D0 */ _t86 = cpu->r[9] + 0x000002E4u;
|
|
/* 0252F6D0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t86);
|
|
/* 0252F6D4 */ cpu->ctr = cpu->r[10];
|
|
/* 0252F6D8 */ cpu->r[4] = cpu->r[1] + 0x0000009Cu;
|
|
/* 0252F6DC */ cpu->r[3] = cpu->r[31];
|
|
/* 0252F6E0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252F6E4 */ _t87 = cpu->r[30] + 0x000001FCu;
|
|
/* 0252F6E4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t87);
|
|
/* 0252F6E8 */ cpu->r[0] = cpu->r[12] + 0x00000001u;
|
|
/* 0252F6EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000000Du);
|
|
/* 0252F6F0 */ _t88 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252F6F0 */ _t89 = _t88 & 0x00000001u;
|
|
/* 0252F6F0 */ if (_t89) goto L_0252FA1C; else goto L_0252F6F4;
|
|
L_0252F6F4: ; // 0x252f6f4
|
|
/* 0252F6F4 */ goto L_0252F76C;
|
|
L_0252F6F8: ; // 0x252f6f8
|
|
/* 0252F6F8 */ cpu->r[10] = 0x100C0000u;
|
|
/* 0252F6FC */ /* nop */
|
|
/* 0252F700 */ _t90 = cpu->r[10] + 0x00003CA0u;
|
|
/* 0252F700 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t90);
|
|
/* 0252F704 */ cpu->f[9] = cpu->f[12] * cpu->f[31];
|
|
/* 0252F708 */ /* nop */
|
|
/* 0252F70C */ _t91 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252F70C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t91);
|
|
/* 0252F710 */ _t92 = cpu->r[1] + 0x00000010u;
|
|
/* 0252F710 */ rbrew_write_f32(cpu->mem, _t92, cpu->f[9]);
|
|
/* 0252F714 */ cpu->f[10] = cpu->f[10] + cpu->f[0];
|
|
/* 0252F718 */ _t93 = cpu->r[31] + 0x00000004u;
|
|
/* 0252F718 */ cpu->r[7] = rbrew_read32(cpu->mem, _t93);
|
|
/* 0252F71C */ _t94 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252F71C */ rbrew_write_f32(cpu->mem, _t94, cpu->f[10]);
|
|
/* 0252F720 */ _t95 = cpu->r[7] + 0x00000314u;
|
|
/* 0252F720 */ cpu->r[8] = rbrew_read32(cpu->mem, _t95);
|
|
/* 0252F724 */ cpu->ctr = cpu->r[8];
|
|
/* 0252F728 */ cpu->r[3] = cpu->r[31];
|
|
/* 0252F72C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0252F730 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0252F734: ; // 0x252f734
|
|
/* 0252F734 */ cpu->r[29] = 0x00000000u;
|
|
/* 0252F738 */ _t96 = cpu->r[1] + 0x000000A4u;
|
|
/* 0252F738 */ rbrew_write8(cpu->mem, _t96, (uint8_t)cpu->r[29]);
|
|
/* 0252F73C */ _t97 = cpu->r[31] + 0x00000004u;
|
|
/* 0252F73C */ cpu->r[9] = rbrew_read32(cpu->mem, _t97);
|
|
/* 0252F740 */ _t98 = cpu->r[1] + 0x000000A0u;
|
|
/* 0252F740 */ rbrew_write32(cpu->mem, _t98, cpu->r[29]);
|
|
/* 0252F744 */ _t99 = cpu->r[1] + 0x0000009Cu;
|
|
/* 0252F744 */ rbrew_write32(cpu->mem, _t99, cpu->r[30]);
|
|
/* 0252F748 */ _t100 = cpu->r[9] + 0x000002E4u;
|
|
/* 0252F748 */ cpu->r[10] = rbrew_read32(cpu->mem, _t100);
|
|
/* 0252F74C */ cpu->ctr = cpu->r[10];
|
|
/* 0252F750 */ cpu->r[4] = cpu->r[1] + 0x0000009Cu;
|
|
/* 0252F754 */ cpu->r[3] = cpu->r[31];
|
|
/* 0252F758 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252F75C */ _t101 = cpu->r[30] + 0x000001FCu;
|
|
/* 0252F75C */ cpu->r[12] = rbrew_read32(cpu->mem, _t101);
|
|
/* 0252F760 */ cpu->r[0] = cpu->r[12] + 0x00000001u;
|
|
/* 0252F764 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000000Du);
|
|
/* 0252F768 */ _t102 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252F768 */ _t103 = _t102 & 0x00000001u;
|
|
/* 0252F768 */ if (_t103) goto L_0252FA1C; else goto L_0252F76C;
|
|
L_0252F76C: ; // 0x252f76c
|
|
/* 0252F76C */ _t104 = cpu->r[1] + 0x00000084u;
|
|
/* 0252F76C */ rbrew_write32(cpu->mem, _t104, cpu->r[29]);
|
|
/* 0252F770 */ cpu->r[31] = 0x101F0000u;
|
|
/* 0252F774 */ _t105 = cpu->r[1] + 0x000000ACu;
|
|
/* 0252F774 */ rbrew_write32(cpu->mem, _t105, cpu->r[29]);
|
|
/* 0252F778 */ cpu->r[31] = cpu->r[31] + 0xFFFF9BE0u;
|
|
/* 0252F77C */ cpu->r[7] = 0x100C0000u;
|
|
/* 0252F780 */ _t106 = cpu->r[1] + 0x000000A8u;
|
|
/* 0252F780 */ rbrew_write32(cpu->mem, _t106, cpu->r[29]);
|
|
/* 0252F784 */ cpu->r[6] = 0x100C0000u;
|
|
/* 0252F788 */ cpu->r[7] = cpu->r[7] + 0x00003B80u;
|
|
/* 0252F78C */ _t107 = cpu->r[31] + 0x00000004u;
|
|
/* 0252F78C */ cpu->r[8] = rbrew_read32(cpu->mem, _t107);
|
|
/* 0252F790 */ cpu->r[6] = cpu->r[6] + 0x00003B40u;
|
|
/* 0252F794 */ _t108 = cpu->r[1] + 0x00000088u;
|
|
/* 0252F794 */ rbrew_write32(cpu->mem, _t108, cpu->r[29]);
|
|
/* 0252F798 */ _t109 = cpu->r[1] + 0x000000B0u;
|
|
/* 0252F798 */ rbrew_write32(cpu->mem, _t109, cpu->r[7]);
|
|
/* 0252F79C */ _t110 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0252F79C */ rbrew_write32(cpu->mem, _t110, cpu->r[6]);
|
|
/* 0252F7A0 */ _t111 = cpu->r[8] + 0x00000014u;
|
|
/* 0252F7A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t111);
|
|
/* 0252F7A4 */ cpu->ctr = cpu->r[0];
|
|
/* 0252F7A8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0252F7AC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252F7B0 */ _t112 = cpu->r[30] + 0x00000030u;
|
|
/* 0252F7B0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t112);
|
|
/* 0252F7B4 */ cpu->r[4] = cpu->r[1] + 0x00000084u;
|
|
/* 0252F7B8 */ _t113 = cpu->r[31] + 0x00000000u;
|
|
/* 0252F7B8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t113);
|
|
/* 0252F7BC */ cpu->r[6] = 0x00000000u;
|
|
/* 0252F7C0 */ Gambit_fn_027B72F0(cpu);
|
|
/* 0252F7C4 */ cpu->r[31] = 0x101F0000u;
|
|
/* 0252F7C8 */ cpu->r[31] = cpu->r[31] + 0xFFFF9BE8u;
|
|
/* 0252F7CC */ _t114 = cpu->r[31] + 0x00000004u;
|
|
/* 0252F7CC */ cpu->r[11] = rbrew_read32(cpu->mem, _t114);
|
|
/* 0252F7D0 */ _t115 = cpu->r[11] + 0x00000014u;
|
|
/* 0252F7D0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t115);
|
|
/* 0252F7D4 */ _t116 = cpu->r[30] + 0x00000030u;
|
|
/* 0252F7D4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t116);
|
|
/* 0252F7D8 */ cpu->ctr = cpu->r[12];
|
|
/* 0252F7DC */ _t117 = cpu->r[10] + 0x000000E0u;
|
|
/* 0252F7DC */ cpu->r[29] = rbrew_read32(cpu->mem, _t117);
|
|
/* 0252F7E0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0252F7E4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252F7E8 */ _t118 = cpu->r[29] + 0x0000003Cu;
|
|
/* 0252F7E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t118);
|
|
/* 0252F7EC */ cpu->ctr = cpu->r[0];
|
|
/* 0252F7F0 */ _t119 = cpu->r[30] + 0x00000030u;
|
|
/* 0252F7F0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t119);
|
|
/* 0252F7F4 */ cpu->r[6] = 0x00000000u;
|
|
/* 0252F7F8 */ cpu->r[4] = cpu->r[1] + 0x000000A8u;
|
|
/* 0252F7FC */ _t120 = cpu->r[31] + 0x00000000u;
|
|
/* 0252F7FC */ cpu->r[5] = rbrew_read32(cpu->mem, _t120);
|
|
/* 0252F800 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252F804 */ _t121 = cpu->r[1] + 0x00000114u;
|
|
/* 0252F804 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t121);
|
|
/* 0252F808 */ _t122 = cpu->r[1] + 0x00000108u;
|
|
/* 0252F808 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t122);
|
|
/* 0252F80C */ /* nop */
|
|
/* 0252F810 */ cpu->f[11] = cpu->f[12] + cpu->f[13];
|
|
/* 0252F814 */ /* nop */
|
|
/* 0252F818 */ /* nop */
|
|
/* 0252F81C */ _t123 = cpu->r[30] + 0x000001FCu;
|
|
/* 0252F81C */ cpu->r[6] = rbrew_read32(cpu->mem, _t123);
|
|
/* 0252F820 */ /* nop */
|
|
/* 0252F824 */ _t124 = cpu->r[1] + 0x000000BCu;
|
|
/* 0252F824 */ rbrew_write_f32(cpu->mem, _t124, cpu->f[11]);
|
|
/* 0252F828 */ _t125 = cpu->r[1] + 0x000000BCu;
|
|
/* 0252F828 */ cpu->r[0] = rbrew_read32(cpu->mem, _t125);
|
|
/* 0252F82C */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 0252F830 */ /* nop */
|
|
/* 0252F834 */ _t126 = cpu->r[1] + 0x000000B4u;
|
|
/* 0252F834 */ cpu->r[8] = rbrew_read32(cpu->mem, _t126);
|
|
/* 0252F838 */ _t127 = cpu->r[30] + 0x000001FCu;
|
|
/* 0252F838 */ rbrew_write32(cpu->mem, _t127, cpu->r[6]);
|
|
/* 0252F83C */ _t128 = cpu->r[1] + 0x00000130u;
|
|
/* 0252F83C */ rbrew_write32(cpu->mem, _t128, cpu->r[0]);
|
|
/* 0252F840 */ _t129 = cpu->r[1] + 0x00000130u;
|
|
/* 0252F840 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t129);
|
|
/* 0252F844 */ _t130 = cpu->r[1] + 0x000000B8u;
|
|
/* 0252F844 */ cpu->r[9] = rbrew_read32(cpu->mem, _t130);
|
|
/* 0252F848 */ cpu->f[11] = cpu->f[12] * cpu->f[30];
|
|
/* 0252F84C */ _t131 = cpu->r[1] + 0x00000128u;
|
|
/* 0252F84C */ rbrew_write32(cpu->mem, _t131, cpu->r[8]);
|
|
/* 0252F850 */ _t132 = cpu->r[1] + 0x00000128u;
|
|
/* 0252F850 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t132);
|
|
/* 0252F854 */ _t133 = cpu->r[1] + 0x00000050u;
|
|
/* 0252F854 */ rbrew_write_f32(cpu->mem, _t133, cpu->f[11]);
|
|
/* 0252F858 */ cpu->f[0] = cpu->f[8] * cpu->f[30];
|
|
/* 0252F85C */ _t134 = cpu->r[1] + 0x0000012Cu;
|
|
/* 0252F85C */ rbrew_write32(cpu->mem, _t134, cpu->r[9]);
|
|
/* 0252F860 */ _t135 = cpu->r[1] + 0x0000012Cu;
|
|
/* 0252F860 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t135);
|
|
/* 0252F864 */ _t136 = cpu->r[1] + 0x00000050u;
|
|
/* 0252F864 */ cpu->r[0] = rbrew_read32(cpu->mem, _t136);
|
|
/* 0252F868 */ _t137 = cpu->r[1] + 0x00000048u;
|
|
/* 0252F868 */ rbrew_write_f32(cpu->mem, _t137, cpu->f[0]);
|
|
/* 0252F86C */ _t138 = cpu->r[1] + 0x00000048u;
|
|
/* 0252F86C */ cpu->r[8] = rbrew_read32(cpu->mem, _t138);
|
|
/* 0252F870 */ cpu->f[9] = cpu->f[10] * cpu->f[30];
|
|
/* 0252F874 */ _t139 = cpu->r[1] + 0x0000013Cu;
|
|
/* 0252F874 */ rbrew_write32(cpu->mem, _t139, cpu->r[0]);
|
|
/* 0252F878 */ _t140 = cpu->r[30] + 0x00000080u;
|
|
/* 0252F878 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t140);
|
|
/* 0252F87C */ _t141 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0252F87C */ rbrew_write_f32(cpu->mem, _t141, cpu->f[9]);
|
|
/* 0252F880 */ _t142 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0252F880 */ cpu->r[9] = rbrew_read32(cpu->mem, _t142);
|
|
/* 0252F884 */ _t143 = cpu->r[1] + 0x0000013Cu;
|
|
/* 0252F884 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t143);
|
|
/* 0252F888 */ _t144 = cpu->r[1] + 0x00000138u;
|
|
/* 0252F888 */ rbrew_write32(cpu->mem, _t144, cpu->r[9]);
|
|
/* 0252F88C */ _t145 = cpu->r[1] + 0x00000134u;
|
|
/* 0252F88C */ rbrew_write32(cpu->mem, _t145, cpu->r[8]);
|
|
/* 0252F890 */ /* nop */
|
|
/* 0252F894 */ cpu->f[8] = cpu->f[9] - cpu->f[10];
|
|
/* 0252F898 */ /* nop */
|
|
/* 0252F89C */ /* nop */
|
|
/* 0252F8A0 */ _t146 = cpu->r[1] + 0x000000C4u;
|
|
/* 0252F8A0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t146);
|
|
/* 0252F8A4 */ _t147 = cpu->r[1] + 0x000000C8u;
|
|
/* 0252F8A4 */ rbrew_write_f32(cpu->mem, _t147, cpu->f[8]);
|
|
/* 0252F8A8 */ _t148 = cpu->r[1] + 0x000000C8u;
|
|
/* 0252F8A8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t148);
|
|
/* 0252F8AC */ _t149 = cpu->r[1] + 0x000000C0u;
|
|
/* 0252F8AC */ cpu->r[6] = rbrew_read32(cpu->mem, _t149);
|
|
/* 0252F8B0 */ _t150 = cpu->r[1] + 0x00000018u;
|
|
/* 0252F8B0 */ rbrew_write32(cpu->mem, _t150, cpu->r[7]);
|
|
/* 0252F8B4 */ _t151 = cpu->r[1] + 0x00000018u;
|
|
/* 0252F8B4 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t151);
|
|
/* 0252F8B8 */ _t152 = cpu->r[1] + 0x00000014u;
|
|
/* 0252F8B8 */ rbrew_write32(cpu->mem, _t152, cpu->r[6]);
|
|
/* 0252F8BC */ cpu->f[9] = cpu->f[8] * cpu->f[8];
|
|
/* 0252F8C0 */ _t153 = cpu->r[1] + 0x00000014u;
|
|
/* 0252F8C0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t153);
|
|
/* 0252F8C4 */ _t154 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252F8C4 */ rbrew_write32(cpu->mem, _t154, cpu->r[8]);
|
|
/* 0252F8C8 */ cpu->f[11] = fma(cpu->f[12], cpu->f[12], cpu->f[9]);
|
|
/* 0252F8CC */ _t155 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252F8CC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t155);
|
|
/* 0252F8D0 */ cpu->f[11] = fma(cpu->f[0], cpu->f[0], cpu->f[11]);
|
|
/* 0252F8D4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[29]);
|
|
/* 0252F8D8 */ _t156 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252F8D8 */ _t157 = _t156 & 0x00000001u;
|
|
/* 0252F8D8 */ if (_t157) goto L_0252F8DC; else goto L_0252F910;
|
|
L_0252F8DC: ; // 0x252f8dc
|
|
/* 0252F8DC */ _ft158 = sqrt(cpu->f[11]);
|
|
/* 0252F8DC */ _ft159 = (double)(int32_t)0x00000001u;
|
|
/* 0252F8DC */ cpu->f[13] = _ft159 / _ft158;
|
|
/* 0252F8E0 */ cpu->f[8] = cpu->f[13] * cpu->f[13];
|
|
/* 0252F8E4 */ cpu->f[10] = cpu->f[13] * cpu->f[30];
|
|
/* 0252F8E8 */ cpu->f[8] = -fma(cpu->f[8], cpu->f[11], -(cpu->f[31]));
|
|
/* 0252F8EC */ cpu->f[13] = cpu->f[8] * cpu->f[10];
|
|
/* 0252F8F0 */ _t160 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252F8F0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t160);
|
|
/* 0252F8F4 */ /* nop */
|
|
/* 0252F8F8 */ cpu->f[0] = cpu->f[0] * cpu->f[13];
|
|
/* 0252F8FC */ /* nop */
|
|
/* 0252F900 */ /* nop */
|
|
/* 0252F904 */ _t161 = cpu->r[1] + 0x00000014u;
|
|
/* 0252F904 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t161);
|
|
/* 0252F908 */ _t162 = cpu->r[1] + 0x00000018u;
|
|
/* 0252F908 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t162);
|
|
/* 0252F90C */ _t163 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252F90C */ rbrew_write_f32(cpu->mem, _t163, cpu->f[0]);
|
|
L_0252F910: ; // 0x252f910
|
|
/* 0252F910 */ cpu->r[8] = 0x00000003u;
|
|
/* 0252F914 */ cpu->r[11] = cpu->r[30] + 0x00000050u;
|
|
/* 0252F918 */ cpu->ctr = cpu->r[8];
|
|
/* 0252F91C */ cpu->r[6] = cpu->r[1] + 0x000000C8u;
|
|
L_0252F920: ; // 0x252f920
|
|
/* 0252F920 */ _t164 = cpu->r[11] + 0x00000004u;
|
|
/* 0252F920 */ cpu->r[10] = rbrew_read32(cpu->mem, _t164);
|
|
/* 0252F924 */ _t165 = cpu->r[6] + 0x00000004u;
|
|
/* 0252F924 */ rbrew_write32(cpu->mem, _t165, cpu->r[10]);
|
|
/* 0252F928 */ _t166 = cpu->r[11] + 0x00000008u;
|
|
/* 0252F928 */ cpu->r[12] = rbrew_read32(cpu->mem, _t166);
|
|
/* 0252F92C */ _t167 = cpu->r[6] + 0x00000008u;
|
|
/* 0252F92C */ rbrew_write32(cpu->mem, _t167, cpu->r[12]);
|
|
/* 0252F930 */ _t168 = cpu->r[11] + 0x0000000Cu;
|
|
/* 0252F930 */ cpu->r[0] = rbrew_read32(cpu->mem, _t168);
|
|
/* 0252F934 */ _t169 = cpu->r[6] + 0x0000000Cu;
|
|
/* 0252F934 */ rbrew_write32(cpu->mem, _t169, cpu->r[0]);
|
|
/* 0252F938 */ _t170 = cpu->r[11] + 0x00000010u;
|
|
/* 0252F938 */ cpu->r[0] = rbrew_read32(cpu->mem, _t170);
|
|
/* 0252F938 */ cpu->r[11] = _t170;
|
|
/* 0252F93C */ _t171 = cpu->r[6] + 0x00000010u;
|
|
/* 0252F93C */ rbrew_write32(cpu->mem, _t171, cpu->r[0]);
|
|
/* 0252F93C */ cpu->r[6] = _t171;
|
|
/* 0252F940 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0252F940 */ _t172 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0252F940 */ _t173 = _t172 >> (0x00000002u & 31u);
|
|
/* 0252F940 */ _t174 = _t173 & 0x00000001u;
|
|
/* 0252F940 */ if (_t174) goto L_0252F920; else goto L_0252F944;
|
|
L_0252F944: ; // 0x252f944
|
|
/* 0252F944 */ _t175 = cpu->r[1] + 0x000000DCu;
|
|
/* 0252F944 */ rbrew_write_f32(cpu->mem, _t175, cpu->f[8]);
|
|
/* 0252F948 */ cpu->r[3] = cpu->r[1] + 0x000000CCu;
|
|
/* 0252F94C */ cpu->r[4] = 0x100C0000u;
|
|
/* 0252F950 */ _t176 = cpu->r[1] + 0x000000D8u;
|
|
/* 0252F950 */ rbrew_write_f32(cpu->mem, _t176, cpu->f[12]);
|
|
/* 0252F954 */ cpu->r[5] = 0x0000024Au;
|
|
/* 0252F958 */ cpu->r[4] = cpu->r[4] + 0x00003CBCu;
|
|
/* 0252F95C */ _t177 = cpu->r[1] + 0x000000E0u;
|
|
/* 0252F95C */ rbrew_write_f32(cpu->mem, _t177, cpu->f[0]);
|
|
/* 0252F960 */ Gambit_fn_0204D380(cpu);
|
|
/* 0252F964 */ _t178 = cpu->r[1] + 0x000000E0u;
|
|
/* 0252F964 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t178);
|
|
/* 0252F968 */ _t179 = cpu->r[1] + 0x000000E4u;
|
|
/* 0252F968 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t179);
|
|
/* 0252F96C */ _t180 = cpu->r[1] + 0x000000DCu;
|
|
/* 0252F96C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t180);
|
|
/* 0252F970 */ _t181 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0252F970 */ rbrew_write_f32(cpu->mem, _t181, cpu->f[7]);
|
|
/* 0252F974 */ _t182 = cpu->r[1] + 0x00000068u;
|
|
/* 0252F974 */ rbrew_write_f32(cpu->mem, _t182, cpu->f[10]);
|
|
/* 0252F978 */ _t183 = cpu->r[1] + 0x000000F4u;
|
|
/* 0252F978 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t183);
|
|
/* 0252F97C */ _t184 = cpu->r[1] + 0x00000078u;
|
|
/* 0252F97C */ rbrew_write_f32(cpu->mem, _t184, cpu->f[13]);
|
|
/* 0252F980 */ _t185 = cpu->r[1] + 0x00000070u;
|
|
/* 0252F980 */ rbrew_write_f32(cpu->mem, _t185, cpu->f[10]);
|
|
/* 0252F984 */ _t186 = cpu->r[1] + 0x000000CCu;
|
|
/* 0252F984 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t186);
|
|
/* 0252F988 */ _t187 = cpu->r[1] + 0x000000D8u;
|
|
/* 0252F988 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t187);
|
|
/* 0252F98C */ _t188 = cpu->r[1] + 0x00000054u;
|
|
/* 0252F98C */ rbrew_write_f32(cpu->mem, _t188, cpu->f[9]);
|
|
/* 0252F990 */ _t189 = cpu->r[1] + 0x000000D0u;
|
|
/* 0252F990 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t189);
|
|
/* 0252F994 */ _t190 = cpu->r[1] + 0x000000D4u;
|
|
/* 0252F994 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t190);
|
|
/* 0252F998 */ _t191 = cpu->r[1] + 0x00000064u;
|
|
/* 0252F998 */ rbrew_write_f32(cpu->mem, _t191, cpu->f[9]);
|
|
/* 0252F99C */ _t192 = cpu->r[1] + 0x000000F0u;
|
|
/* 0252F99C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t192);
|
|
/* 0252F9A0 */ _t193 = cpu->r[1] + 0x00000074u;
|
|
/* 0252F9A0 */ rbrew_write_f32(cpu->mem, _t193, cpu->f[11]);
|
|
/* 0252F9A4 */ _t194 = cpu->r[1] + 0x00000060u;
|
|
/* 0252F9A4 */ rbrew_write_f32(cpu->mem, _t194, cpu->f[8]);
|
|
/* 0252F9A8 */ _t195 = cpu->r[1] + 0x000000E8u;
|
|
/* 0252F9A8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t195);
|
|
/* 0252F9AC */ _t196 = cpu->r[1] + 0x00000058u;
|
|
/* 0252F9AC */ rbrew_write_f32(cpu->mem, _t196, cpu->f[0]);
|
|
/* 0252F9B0 */ _t197 = cpu->r[1] + 0x0000006Cu;
|
|
/* 0252F9B0 */ rbrew_write_f32(cpu->mem, _t197, cpu->f[12]);
|
|
/* 0252F9B4 */ _t198 = cpu->r[1] + 0x000000ECu;
|
|
/* 0252F9B4 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t198);
|
|
/* 0252F9B8 */ _t199 = cpu->r[1] + 0x000000F8u;
|
|
/* 0252F9B8 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t199);
|
|
/* 0252F9BC */ _t200 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0252F9BC */ rbrew_write_f32(cpu->mem, _t200, cpu->f[7]);
|
|
/* 0252F9C0 */ cpu->r[3] = cpu->r[30];
|
|
/* 0252F9C4 */ _t201 = cpu->r[1] + 0x00000080u;
|
|
/* 0252F9C4 */ rbrew_write_f32(cpu->mem, _t201, cpu->f[9]);
|
|
/* 0252F9C8 */ Gambit_fn_0252D85C(cpu);
|
|
/* 0252F9CC */ _t202 = cpu->r[1] + 0x00000084u;
|
|
/* 0252F9CC */ cpu->r[31] = rbrew_read32(cpu->mem, _t202);
|
|
/* 0252F9D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0252F9D4 */ cpu->f[31] = cpu->f[1];
|
|
/* 0252F9D8 */ _t203 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252F9D8 */ _t204 = _t203 & 0x00000001u;
|
|
/* 0252F9D8 */ if (_t204) goto L_0252FA10; else goto L_0252F9DC;
|
|
L_0252F9DC: ; // 0x252f9dc
|
|
/* 0252F9DC */ _t205 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0252F9DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t205);
|
|
/* 0252F9E0 */ _t206 = cpu->r[1] + 0x00000088u;
|
|
/* 0252F9E0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t206);
|
|
/* 0252F9E4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[6]);
|
|
/* 0252F9E8 */ _t207 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252F9E8 */ _t208 = _t207 & 0x00000001u;
|
|
/* 0252F9E8 */ if (_t208) goto L_0252F9EC; else goto L_0252FA10;
|
|
L_0252F9EC: ; // 0x252f9ec
|
|
/* 0252F9EC */ cpu->r[3] = cpu->r[1] + 0x00000054u;
|
|
/* 0252F9F0 */ cpu->r[4] = cpu->r[31] + 0x0000007Cu;
|
|
/* 0252F9F4 */ Gambit_fn_02C69510(cpu);
|
|
/* 0252F9F8 */ _t209 = cpu->r[31] + 0x0000012Cu;
|
|
/* 0252F9F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t209);
|
|
/* 0252F9FC */ _t210 = cpu->r[31] + 0x00000074u;
|
|
/* 0252F9FC */ rbrew_write_f32(cpu->mem, _t210, cpu->f[31]);
|
|
/* 0252FA00 */ cpu->r[0] = cpu->r[0] | 0x00000008u;
|
|
/* 0252FA04 */ _t211 = cpu->r[31] + 0x00000070u;
|
|
/* 0252FA04 */ rbrew_write_f32(cpu->mem, _t211, cpu->f[31]);
|
|
/* 0252FA08 */ _t212 = cpu->r[31] + 0x0000012Cu;
|
|
/* 0252FA08 */ rbrew_write32(cpu->mem, _t212, cpu->r[0]);
|
|
/* 0252FA0C */ _t213 = cpu->r[31] + 0x00000078u;
|
|
/* 0252FA0C */ rbrew_write_f32(cpu->mem, _t213, cpu->f[31]);
|
|
L_0252FA10: ; // 0x252fa10
|
|
/* 0252FA10 */ cpu->r[3] = cpu->r[1] + 0x000000A8u;
|
|
/* 0252FA14 */ cpu->r[4] = cpu->r[1] + 0x00000134u;
|
|
/* 0252FA18 */ Gambit_fn_028B30F0(cpu);
|
|
L_0252FA1C: ; // 0x252fa1c
|
|
/* 0252FA1C */ _t214 = cpu->r[1] + 0x00000164u;
|
|
/* 0252FA1C */ cpu->r[29] = rbrew_read32(cpu->mem, _t214);
|
|
/* 0252FA20 */ _t215 = cpu->r[1] + 0x00000198u;
|
|
/* 0252FA20 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t215);
|
|
/* 0252FA24 */ _t216 = cpu->r[1] + 0x00000178u;
|
|
/* 0252FA24 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t216);
|
|
/* 0252FA28 */ _t217 = cpu->r[1] + 0x00000190u;
|
|
/* 0252FA28 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t217);
|
|
/* 0252FA2C */ _t218 = cpu->r[1] + 0x00000188u;
|
|
/* 0252FA2C */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t218);
|
|
/* 0252FA30 */ _t219 = cpu->r[1] + 0x00000170u;
|
|
/* 0252FA30 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t219);
|
|
/* 0252FA34 */ _t220 = cpu->r[1] + 0x00000180u;
|
|
/* 0252FA34 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t220);
|
|
/* 0252FA38 */ _t221 = cpu->r[1] + 0x0000016Cu;
|
|
/* 0252FA38 */ cpu->r[31] = rbrew_read32(cpu->mem, _t221);
|
|
/* 0252FA3C */ _t222 = cpu->r[1] + 0x00000168u;
|
|
/* 0252FA3C */ cpu->r[30] = rbrew_read32(cpu->mem, _t222);
|
|
/* 0252FA40 */ _t223 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0252FA40 */ _t224 = _t223 & 0x00000001u;
|
|
/* 0252FA40 */ if (_t224) goto L_0252FA44; // else: addr-0 trap, fall-through
|
|
L_0252FA44: ; // 0x252fa44
|
|
/* 0252FA44 */ _t225 = cpu->r[1] + 0x000001A4u;
|
|
/* 0252FA44 */ cpu->r[0] = rbrew_read32(cpu->mem, _t225);
|
|
/* 0252FA48 */ cpu->lr = cpu->r[0];
|
|
/* 0252FA4C */ cpu->r[1] = cpu->r[1] + 0x000001A0u;
|
|
/* 0252FA50 */ return;
|
|
}
|
|
|
|
// fn_0252F4A8 @ 0x252f4a8
|
|
void Gambit_fn_0252F4A8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _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, _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, _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;
|
|
double _ft76, _ft77, _ft158, _ft159;
|
|
|
|
L_0252F4A8: ; // 0x252f4a8
|
|
/* 0252F4A8 */ _t0 = cpu->r[1] + 0xFFFFFE60u;
|
|
/* 0252F4A8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252F4A8 */ cpu->r[1] = _t0;
|
|
/* 0252F4AC */ _t1 = cpu->r[1] + 0x00000190u;
|
|
/* 0252F4AC */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0252F4B0 */ /* nop */
|
|
/* 0252F4B4 */ _t2 = cpu->r[1] + 0x00000170u;
|
|
/* 0252F4B4 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[29]);
|
|
/* 0252F4B8 */ /* nop */
|
|
/* 0252F4BC */ _t3 = cpu->r[1] + 0x00000198u;
|
|
/* 0252F4BC */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 0252F4C0 */ _t4 = cpu->r[1] + 0x00000178u;
|
|
/* 0252F4C0 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[29]);
|
|
/* 0252F4C4 */ cpu->r[11] = 0x101F0000u;
|
|
/* 0252F4C8 */ _t5 = cpu->r[1] + 0x00000180u;
|
|
/* 0252F4C8 */ rbrew_write_f64(cpu->mem, _t5, cpu->f[30]);
|
|
/* 0252F4CC */ _t6 = cpu->r[1] + 0x000001A4u;
|
|
/* 0252F4CC */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0252F4D0 */ /* nop */
|
|
/* 0252F4D4 */ _t7 = cpu->r[1] + 0x0000016Cu;
|
|
/* 0252F4D4 */ rbrew_write32(cpu->mem, _t7, cpu->r[31]);
|
|
/* 0252F4D8 */ cpu->r[12] = 0x100C0000u;
|
|
/* 0252F4DC */ _t8 = cpu->r[1] + 0x00000188u;
|
|
/* 0252F4DC */ rbrew_write_f32(cpu->mem, _t8, cpu->f[30]);
|
|
/* 0252F4E0 */ _t9 = cpu->r[1] + 0x00000164u;
|
|
/* 0252F4E0 */ rbrew_write32(cpu->mem, _t9, cpu->r[29]);
|
|
/* 0252F4E4 */ _t10 = cpu->r[1] + 0x00000168u;
|
|
/* 0252F4E4 */ rbrew_write32(cpu->mem, _t10, cpu->r[30]);
|
|
/* 0252F4E8 */ _t11 = cpu->r[11] + 0x00003840u;
|
|
/* 0252F4E8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0252F4E8 */ cpu->r[11] = _t11;
|
|
/* 0252F4EC */ _t12 = cpu->r[11] + 0x00000004u;
|
|
/* 0252F4EC */ cpu->r[10] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0252F4F0 */ _t13 = cpu->r[12] + 0x00003BDCu;
|
|
/* 0252F4F0 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 0252F4F4 */ _t14 = cpu->r[11] + 0x00000008u;
|
|
/* 0252F4F4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0252F4F8 */ cpu->r[0] = 0x10110000u;
|
|
/* 0252F4FC */ _t15 = cpu->r[1] + 0x00000104u;
|
|
/* 0252F4FC */ rbrew_write32(cpu->mem, _t15, cpu->r[10]);
|
|
/* 0252F500 */ cpu->r[0] = cpu->r[0] + 0xFFFFEF7Cu;
|
|
/* 0252F504 */ _t16 = cpu->r[1] + 0x00000114u;
|
|
/* 0252F504 */ rbrew_write32(cpu->mem, _t16, cpu->r[12]);
|
|
/* 0252F508 */ cpu->r[30] = cpu->r[3];
|
|
/* 0252F50C */ _t17 = cpu->r[1] + 0x00000100u;
|
|
/* 0252F50C */ rbrew_write32(cpu->mem, _t17, cpu->r[9]);
|
|
/* 0252F510 */ _t18 = cpu->r[1] + 0x000000FCu;
|
|
/* 0252F510 */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
/* 0252F514 */ cpu->r[31] = cpu->r[4];
|
|
/* 0252F518 */ _t19 = cpu->r[1] + 0x0000010Cu;
|
|
/* 0252F518 */ rbrew_write32(cpu->mem, _t19, cpu->r[9]);
|
|
/* 0252F51C */ cpu->r[3] = cpu->r[31];
|
|
/* 0252F520 */ _t20 = cpu->r[1] + 0x00000110u;
|
|
/* 0252F520 */ rbrew_write32(cpu->mem, _t20, cpu->r[10]);
|
|
/* 0252F524 */ _t21 = cpu->r[1] + 0x00000118u;
|
|
/* 0252F524 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[29]);
|
|
/* 0252F528 */ cpu->r[4] = cpu->r[1] + 0x000000FCu;
|
|
/* 0252F52C */ _t22 = cpu->r[1] + 0x00000108u;
|
|
/* 0252F52C */ rbrew_write32(cpu->mem, _t22, cpu->r[12]);
|
|
/* 0252F530 */ Gambit_fn_022713B8(cpu);
|
|
/* 0252F534 */ cpu->r[10] = 0x100C0000u;
|
|
/* 0252F538 */ _t23 = cpu->r[30] + 0x00000080u;
|
|
/* 0252F538 */ cpu->r[11] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0252F53C */ cpu->r[0] = 0x10110000u;
|
|
/* 0252F540 */ _t24 = cpu->r[30] + 0x0000007Cu;
|
|
/* 0252F540 */ cpu->r[9] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0252F544 */ cpu->r[3] = cpu->r[1] + 0x0000014Cu;
|
|
/* 0252F548 */ _t25 = cpu->r[1] + 0x00000158u;
|
|
/* 0252F548 */ rbrew_write32(cpu->mem, _t25, cpu->r[11]);
|
|
/* 0252F54C */ cpu->r[0] = cpu->r[0] + 0xFFFFEF4Cu;
|
|
/* 0252F550 */ _t26 = cpu->r[10] + 0x00003C70u;
|
|
/* 0252F550 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 0252F554 */ _t27 = cpu->r[1] + 0x00000154u;
|
|
/* 0252F554 */ rbrew_write32(cpu->mem, _t27, cpu->r[9]);
|
|
/* 0252F558 */ cpu->r[4] = cpu->r[1] + 0x000000FCu;
|
|
/* 0252F55C */ _t28 = cpu->r[30] + 0x00000078u;
|
|
/* 0252F55C */ cpu->r[7] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0252F560 */ _t29 = cpu->r[1] + 0x0000014Cu;
|
|
/* 0252F560 */ rbrew_write32(cpu->mem, _t29, cpu->r[0]);
|
|
/* 0252F564 */ _t30 = cpu->r[1] + 0x0000015Cu;
|
|
/* 0252F564 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[12]);
|
|
/* 0252F568 */ cpu->r[5] = cpu->r[1] + 0x00000020u;
|
|
/* 0252F56C */ _t31 = cpu->r[1] + 0x00000150u;
|
|
/* 0252F56C */ rbrew_write32(cpu->mem, _t31, cpu->r[7]);
|
|
/* 0252F570 */ Gambit_fn_027DE3CC(cpu);
|
|
/* 0252F574 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252F578 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252F578 */ _t33 = _t32 & 0x00000001u;
|
|
/* 0252F578 */ if (_t33) goto L_0252FA1C; else goto L_0252F57C;
|
|
L_0252F57C: ; // 0x252f57c
|
|
/* 0252F57C */ _t34 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0252F57C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 0252F580 */ /* nop */
|
|
/* 0252F584 */ _t35 = cpu->r[1] + 0x00000028u;
|
|
/* 0252F584 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 0252F588 */ /* nop */
|
|
/* 0252F58C */ /* nop */
|
|
/* 0252F590 */ /* nop */
|
|
/* 0252F594 */ _t36 = cpu->r[1] + 0x00000090u;
|
|
/* 0252F594 */ cpu->r[0] = rbrew_read32(cpu->mem, _t36);
|
|
/* 0252F598 */ _t37 = cpu->r[1] + 0x00000094u;
|
|
/* 0252F598 */ cpu->r[8] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0252F59C */ cpu->f[11] = cpu->f[12] * cpu->f[9];
|
|
/* 0252F5A0 */ _t38 = cpu->r[1] + 0x00000140u;
|
|
/* 0252F5A0 */ rbrew_write32(cpu->mem, _t38, cpu->r[0]);
|
|
/* 0252F5A4 */ _t39 = cpu->r[1] + 0x00000020u;
|
|
/* 0252F5A4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t39);
|
|
/* 0252F5A8 */ _t40 = cpu->r[1] + 0x00000098u;
|
|
/* 0252F5A8 */ rbrew_write_f32(cpu->mem, _t40, cpu->f[11]);
|
|
/* 0252F5AC */ _t41 = cpu->r[1] + 0x00000098u;
|
|
/* 0252F5AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0252F5B0 */ cpu->f[11] = -cpu->f[0];
|
|
/* 0252F5B4 */ _t42 = cpu->r[1] + 0x00000024u;
|
|
/* 0252F5B4 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 0252F5B8 */ _t43 = cpu->r[1] + 0x00000144u;
|
|
/* 0252F5B8 */ rbrew_write32(cpu->mem, _t43, cpu->r[8]);
|
|
/* 0252F5BC */ /* nop */
|
|
/* 0252F5C0 */ _t44 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0252F5C0 */ rbrew_write_f32(cpu->mem, _t44, cpu->f[11]);
|
|
/* 0252F5C4 */ _t45 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0252F5C4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t45);
|
|
/* 0252F5C8 */ cpu->f[12] = -cpu->f[12];
|
|
/* 0252F5CC */ _t46 = cpu->r[1] + 0x00000038u;
|
|
/* 0252F5CC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t46);
|
|
/* 0252F5D0 */ cpu->f[7] = -cpu->f[8];
|
|
/* 0252F5D4 */ _t47 = cpu->r[1] + 0x00000148u;
|
|
/* 0252F5D4 */ rbrew_write32(cpu->mem, _t47, cpu->r[0]);
|
|
/* 0252F5D8 */ _t48 = cpu->r[1] + 0x00000148u;
|
|
/* 0252F5D8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 0252F5DC */ _t49 = cpu->r[1] + 0x00000044u;
|
|
/* 0252F5DC */ rbrew_write_f32(cpu->mem, _t49, cpu->f[12]);
|
|
/* 0252F5E0 */ _t50 = cpu->r[1] + 0x00000044u;
|
|
/* 0252F5E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t50);
|
|
/* 0252F5E4 */ _t51 = cpu->r[1] + 0x00000040u;
|
|
/* 0252F5E4 */ rbrew_write_f32(cpu->mem, _t51, cpu->f[7]);
|
|
/* 0252F5E8 */ _t52 = cpu->r[1] + 0x0000011Cu;
|
|
/* 0252F5E8 */ rbrew_write32(cpu->mem, _t52, cpu->r[10]);
|
|
/* 0252F5EC */ _t53 = cpu->r[1] + 0x0000011Cu;
|
|
/* 0252F5EC */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t53);
|
|
/* 0252F5F0 */ _t54 = cpu->r[1] + 0x00000040u;
|
|
/* 0252F5F0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t54);
|
|
/* 0252F5F4 */ _t55 = cpu->r[1] + 0x00000020u;
|
|
/* 0252F5F4 */ rbrew_write_f32(cpu->mem, _t55, cpu->f[7]);
|
|
/* 0252F5F8 */ cpu->f[10] = cpu->f[10] + cpu->f[13];
|
|
/* 0252F5FC */ _t56 = cpu->r[1] + 0x00000120u;
|
|
/* 0252F5FC */ rbrew_write32(cpu->mem, _t56, cpu->r[11]);
|
|
/* 0252F600 */ _t57 = cpu->r[1] + 0x00000120u;
|
|
/* 0252F600 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t57);
|
|
/* 0252F604 */ _t58 = cpu->r[1] + 0x00000124u;
|
|
/* 0252F604 */ rbrew_write32(cpu->mem, _t58, cpu->r[0]);
|
|
/* 0252F608 */ _t59 = cpu->r[1] + 0x00000124u;
|
|
/* 0252F608 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t59);
|
|
/* 0252F60C */ _t60 = cpu->r[1] + 0x00000038u;
|
|
/* 0252F60C */ rbrew_write_f32(cpu->mem, _t60, cpu->f[10]);
|
|
/* 0252F610 */ cpu->f[11] = cpu->f[0] * cpu->f[9];
|
|
/* 0252F614 */ _t61 = cpu->r[1] + 0x00000024u;
|
|
/* 0252F614 */ rbrew_write_f32(cpu->mem, _t61, cpu->f[8]);
|
|
/* 0252F618 */ /* nop */
|
|
/* 0252F61C */ /* nop */
|
|
/* 0252F620 */ /* nop */
|
|
/* 0252F624 */ /* nop */
|
|
/* 0252F628 */ /* nop */
|
|
/* 0252F62C */ _t62 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252F62C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t62);
|
|
/* 0252F630 */ _t63 = cpu->r[31] + 0x00000070u;
|
|
/* 0252F630 */ cpu->r[3] = rbrew_read32(cpu->mem, _t63);
|
|
/* 0252F634 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[29], cpu->f[10]);
|
|
/* 0252F638 */ _t64 = cpu->r[1] + 0x00000028u;
|
|
/* 0252F638 */ rbrew_write_f32(cpu->mem, _t64, cpu->f[0]);
|
|
/* 0252F63C */ _t65 = cpu->r[1] + 0x00000010u;
|
|
/* 0252F63C */ rbrew_write_f32(cpu->mem, _t65, cpu->f[11]);
|
|
/* 0252F640 */ _t66 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252F640 */ _t67 = _t66 & 0x00000001u;
|
|
/* 0252F640 */ if (_t67) goto L_0252F644; else goto L_0252F648;
|
|
L_0252F644: ; // 0x252f644
|
|
/* 0252F644 */ _t68 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252F644 */ rbrew_write_f32(cpu->mem, _t68, cpu->f[29]);
|
|
L_0252F648: ; // 0x252f648
|
|
/* 0252F648 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0252F64C */ Gambit_fn_0231B16C(cpu);
|
|
/* 0252F650 */ _t69 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252F650 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t69);
|
|
/* 0252F654 */ cpu->f[12] = cpu->f[12] * cpu->f[12];
|
|
/* 0252F658 */ _t70 = cpu->r[1] + 0x00000008u;
|
|
/* 0252F658 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t70);
|
|
/* 0252F65C */ cpu->f[0] = fma(cpu->f[13], cpu->f[13], cpu->f[12]);
|
|
/* 0252F660 */ _t71 = cpu->r[1] + 0x00000010u;
|
|
/* 0252F660 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t71);
|
|
/* 0252F664 */ cpu->r[11] = 0x100C0000u;
|
|
/* 0252F668 */ _t72 = cpu->r[11] + 0x00003C44u;
|
|
/* 0252F668 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t72);
|
|
/* 0252F66C */ cpu->f[11] = fma(cpu->f[12], cpu->f[12], cpu->f[0]);
|
|
/* 0252F670 */ cpu->r[7] = 0x100C0000u;
|
|
/* 0252F674 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[29]);
|
|
/* 0252F678 */ _t73 = cpu->r[7] + 0x00003C48u;
|
|
/* 0252F678 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t73);
|
|
/* 0252F67C */ _t74 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252F67C */ _t75 = _t74 & 0x00000001u;
|
|
/* 0252F67C */ if (_t75) goto L_0252F680; else goto L_0252F734;
|
|
L_0252F680: ; // 0x252f680
|
|
/* 0252F680 */ _ft76 = sqrt(cpu->f[11]);
|
|
/* 0252F680 */ _ft77 = (double)(int32_t)0x00000001u;
|
|
/* 0252F680 */ cpu->f[0] = _ft77 / _ft76;
|
|
/* 0252F684 */ cpu->f[7] = cpu->f[0] * cpu->f[0];
|
|
/* 0252F688 */ cpu->f[8] = cpu->f[0] * cpu->f[30];
|
|
/* 0252F68C */ cpu->f[7] = -fma(cpu->f[7], cpu->f[11], -(cpu->f[31]));
|
|
/* 0252F690 */ cpu->f[0] = cpu->f[7] * cpu->f[8];
|
|
/* 0252F694 */ cpu->f[11] = cpu->f[11] * cpu->f[0];
|
|
/* 0252F698 */ _t78 = cpu->r[1] + 0x00000010u;
|
|
/* 0252F698 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t78);
|
|
/* 0252F69C */ cpu->f[12] = cpu->f[12] * cpu->f[0];
|
|
/* 0252F6A0 */ /* nop */
|
|
/* 0252F6A4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[29]);
|
|
/* 0252F6A8 */ /* nop */
|
|
/* 0252F6AC */ _t79 = cpu->r[1] + 0x00000010u;
|
|
/* 0252F6AC */ rbrew_write_f32(cpu->mem, _t79, cpu->f[12]);
|
|
/* 0252F6B0 */ /* nop */
|
|
/* 0252F6B4 */ _t80 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252F6B4 */ _t81 = _t80 & 0x00000001u;
|
|
/* 0252F6B4 */ if (_t81) goto L_0252F6F8; else goto L_0252F6B8;
|
|
L_0252F6B8: ; // 0x252f6b8
|
|
/* 0252F6B8 */ /* nop */
|
|
/* 0252F6BC */ cpu->r[29] = 0x00000000u;
|
|
/* 0252F6C0 */ _t82 = cpu->r[1] + 0x000000A4u;
|
|
/* 0252F6C0 */ rbrew_write8(cpu->mem, _t82, (uint8_t)cpu->r[29]);
|
|
/* 0252F6C4 */ _t83 = cpu->r[31] + 0x00000004u;
|
|
/* 0252F6C4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t83);
|
|
/* 0252F6C8 */ _t84 = cpu->r[1] + 0x000000A0u;
|
|
/* 0252F6C8 */ rbrew_write32(cpu->mem, _t84, cpu->r[29]);
|
|
/* 0252F6CC */ _t85 = cpu->r[1] + 0x0000009Cu;
|
|
/* 0252F6CC */ rbrew_write32(cpu->mem, _t85, cpu->r[30]);
|
|
/* 0252F6D0 */ _t86 = cpu->r[9] + 0x000002E4u;
|
|
/* 0252F6D0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t86);
|
|
/* 0252F6D4 */ cpu->ctr = cpu->r[10];
|
|
/* 0252F6D8 */ cpu->r[4] = cpu->r[1] + 0x0000009Cu;
|
|
/* 0252F6DC */ cpu->r[3] = cpu->r[31];
|
|
/* 0252F6E0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252F6E4 */ _t87 = cpu->r[30] + 0x000001FCu;
|
|
/* 0252F6E4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t87);
|
|
/* 0252F6E8 */ cpu->r[0] = cpu->r[12] + 0x00000001u;
|
|
/* 0252F6EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000000Du);
|
|
/* 0252F6F0 */ _t88 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252F6F0 */ _t89 = _t88 & 0x00000001u;
|
|
/* 0252F6F0 */ if (_t89) goto L_0252FA1C; else goto L_0252F6F4;
|
|
L_0252F6F4: ; // 0x252f6f4
|
|
/* 0252F6F4 */ goto L_0252F76C;
|
|
L_0252F6F8: ; // 0x252f6f8
|
|
/* 0252F6F8 */ cpu->r[10] = 0x100C0000u;
|
|
/* 0252F6FC */ /* nop */
|
|
/* 0252F700 */ _t90 = cpu->r[10] + 0x00003CA0u;
|
|
/* 0252F700 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t90);
|
|
/* 0252F704 */ cpu->f[9] = cpu->f[12] * cpu->f[31];
|
|
/* 0252F708 */ /* nop */
|
|
/* 0252F70C */ _t91 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252F70C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t91);
|
|
/* 0252F710 */ _t92 = cpu->r[1] + 0x00000010u;
|
|
/* 0252F710 */ rbrew_write_f32(cpu->mem, _t92, cpu->f[9]);
|
|
/* 0252F714 */ cpu->f[10] = cpu->f[10] + cpu->f[0];
|
|
/* 0252F718 */ _t93 = cpu->r[31] + 0x00000004u;
|
|
/* 0252F718 */ cpu->r[7] = rbrew_read32(cpu->mem, _t93);
|
|
/* 0252F71C */ _t94 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0252F71C */ rbrew_write_f32(cpu->mem, _t94, cpu->f[10]);
|
|
/* 0252F720 */ _t95 = cpu->r[7] + 0x00000314u;
|
|
/* 0252F720 */ cpu->r[8] = rbrew_read32(cpu->mem, _t95);
|
|
/* 0252F724 */ cpu->ctr = cpu->r[8];
|
|
/* 0252F728 */ cpu->r[3] = cpu->r[31];
|
|
/* 0252F72C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0252F730 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0252F734: ; // 0x252f734
|
|
/* 0252F734 */ cpu->r[29] = 0x00000000u;
|
|
/* 0252F738 */ _t96 = cpu->r[1] + 0x000000A4u;
|
|
/* 0252F738 */ rbrew_write8(cpu->mem, _t96, (uint8_t)cpu->r[29]);
|
|
/* 0252F73C */ _t97 = cpu->r[31] + 0x00000004u;
|
|
/* 0252F73C */ cpu->r[9] = rbrew_read32(cpu->mem, _t97);
|
|
/* 0252F740 */ _t98 = cpu->r[1] + 0x000000A0u;
|
|
/* 0252F740 */ rbrew_write32(cpu->mem, _t98, cpu->r[29]);
|
|
/* 0252F744 */ _t99 = cpu->r[1] + 0x0000009Cu;
|
|
/* 0252F744 */ rbrew_write32(cpu->mem, _t99, cpu->r[30]);
|
|
/* 0252F748 */ _t100 = cpu->r[9] + 0x000002E4u;
|
|
/* 0252F748 */ cpu->r[10] = rbrew_read32(cpu->mem, _t100);
|
|
/* 0252F74C */ cpu->ctr = cpu->r[10];
|
|
/* 0252F750 */ cpu->r[4] = cpu->r[1] + 0x0000009Cu;
|
|
/* 0252F754 */ cpu->r[3] = cpu->r[31];
|
|
/* 0252F758 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252F75C */ _t101 = cpu->r[30] + 0x000001FCu;
|
|
/* 0252F75C */ cpu->r[12] = rbrew_read32(cpu->mem, _t101);
|
|
/* 0252F760 */ cpu->r[0] = cpu->r[12] + 0x00000001u;
|
|
/* 0252F764 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000000Du);
|
|
/* 0252F768 */ _t102 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252F768 */ _t103 = _t102 & 0x00000001u;
|
|
/* 0252F768 */ if (_t103) goto L_0252FA1C; else goto L_0252F76C;
|
|
L_0252F76C: ; // 0x252f76c
|
|
/* 0252F76C */ _t104 = cpu->r[1] + 0x00000084u;
|
|
/* 0252F76C */ rbrew_write32(cpu->mem, _t104, cpu->r[29]);
|
|
/* 0252F770 */ cpu->r[31] = 0x101F0000u;
|
|
/* 0252F774 */ _t105 = cpu->r[1] + 0x000000ACu;
|
|
/* 0252F774 */ rbrew_write32(cpu->mem, _t105, cpu->r[29]);
|
|
/* 0252F778 */ cpu->r[31] = cpu->r[31] + 0xFFFF9BE0u;
|
|
/* 0252F77C */ cpu->r[7] = 0x100C0000u;
|
|
/* 0252F780 */ _t106 = cpu->r[1] + 0x000000A8u;
|
|
/* 0252F780 */ rbrew_write32(cpu->mem, _t106, cpu->r[29]);
|
|
/* 0252F784 */ cpu->r[6] = 0x100C0000u;
|
|
/* 0252F788 */ cpu->r[7] = cpu->r[7] + 0x00003B80u;
|
|
/* 0252F78C */ _t107 = cpu->r[31] + 0x00000004u;
|
|
/* 0252F78C */ cpu->r[8] = rbrew_read32(cpu->mem, _t107);
|
|
/* 0252F790 */ cpu->r[6] = cpu->r[6] + 0x00003B40u;
|
|
/* 0252F794 */ _t108 = cpu->r[1] + 0x00000088u;
|
|
/* 0252F794 */ rbrew_write32(cpu->mem, _t108, cpu->r[29]);
|
|
/* 0252F798 */ _t109 = cpu->r[1] + 0x000000B0u;
|
|
/* 0252F798 */ rbrew_write32(cpu->mem, _t109, cpu->r[7]);
|
|
/* 0252F79C */ _t110 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0252F79C */ rbrew_write32(cpu->mem, _t110, cpu->r[6]);
|
|
/* 0252F7A0 */ _t111 = cpu->r[8] + 0x00000014u;
|
|
/* 0252F7A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t111);
|
|
/* 0252F7A4 */ cpu->ctr = cpu->r[0];
|
|
/* 0252F7A8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0252F7AC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252F7B0 */ _t112 = cpu->r[30] + 0x00000030u;
|
|
/* 0252F7B0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t112);
|
|
/* 0252F7B4 */ cpu->r[4] = cpu->r[1] + 0x00000084u;
|
|
/* 0252F7B8 */ _t113 = cpu->r[31] + 0x00000000u;
|
|
/* 0252F7B8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t113);
|
|
/* 0252F7BC */ cpu->r[6] = 0x00000000u;
|
|
/* 0252F7C0 */ Gambit_fn_027B72F0(cpu);
|
|
/* 0252F7C4 */ cpu->r[31] = 0x101F0000u;
|
|
/* 0252F7C8 */ cpu->r[31] = cpu->r[31] + 0xFFFF9BE8u;
|
|
/* 0252F7CC */ _t114 = cpu->r[31] + 0x00000004u;
|
|
/* 0252F7CC */ cpu->r[11] = rbrew_read32(cpu->mem, _t114);
|
|
/* 0252F7D0 */ _t115 = cpu->r[11] + 0x00000014u;
|
|
/* 0252F7D0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t115);
|
|
/* 0252F7D4 */ _t116 = cpu->r[30] + 0x00000030u;
|
|
/* 0252F7D4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t116);
|
|
/* 0252F7D8 */ cpu->ctr = cpu->r[12];
|
|
/* 0252F7DC */ _t117 = cpu->r[10] + 0x000000E0u;
|
|
/* 0252F7DC */ cpu->r[29] = rbrew_read32(cpu->mem, _t117);
|
|
/* 0252F7E0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0252F7E4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252F7E8 */ _t118 = cpu->r[29] + 0x0000003Cu;
|
|
/* 0252F7E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t118);
|
|
/* 0252F7EC */ cpu->ctr = cpu->r[0];
|
|
/* 0252F7F0 */ _t119 = cpu->r[30] + 0x00000030u;
|
|
/* 0252F7F0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t119);
|
|
/* 0252F7F4 */ cpu->r[6] = 0x00000000u;
|
|
/* 0252F7F8 */ cpu->r[4] = cpu->r[1] + 0x000000A8u;
|
|
/* 0252F7FC */ _t120 = cpu->r[31] + 0x00000000u;
|
|
/* 0252F7FC */ cpu->r[5] = rbrew_read32(cpu->mem, _t120);
|
|
/* 0252F800 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0252F804 */ _t121 = cpu->r[1] + 0x00000114u;
|
|
/* 0252F804 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t121);
|
|
/* 0252F808 */ _t122 = cpu->r[1] + 0x00000108u;
|
|
/* 0252F808 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t122);
|
|
/* 0252F80C */ /* nop */
|
|
/* 0252F810 */ cpu->f[11] = cpu->f[12] + cpu->f[13];
|
|
/* 0252F814 */ /* nop */
|
|
/* 0252F818 */ /* nop */
|
|
/* 0252F81C */ _t123 = cpu->r[30] + 0x000001FCu;
|
|
/* 0252F81C */ cpu->r[6] = rbrew_read32(cpu->mem, _t123);
|
|
/* 0252F820 */ /* nop */
|
|
/* 0252F824 */ _t124 = cpu->r[1] + 0x000000BCu;
|
|
/* 0252F824 */ rbrew_write_f32(cpu->mem, _t124, cpu->f[11]);
|
|
/* 0252F828 */ _t125 = cpu->r[1] + 0x000000BCu;
|
|
/* 0252F828 */ cpu->r[0] = rbrew_read32(cpu->mem, _t125);
|
|
/* 0252F82C */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 0252F830 */ /* nop */
|
|
/* 0252F834 */ _t126 = cpu->r[1] + 0x000000B4u;
|
|
/* 0252F834 */ cpu->r[8] = rbrew_read32(cpu->mem, _t126);
|
|
/* 0252F838 */ _t127 = cpu->r[30] + 0x000001FCu;
|
|
/* 0252F838 */ rbrew_write32(cpu->mem, _t127, cpu->r[6]);
|
|
/* 0252F83C */ _t128 = cpu->r[1] + 0x00000130u;
|
|
/* 0252F83C */ rbrew_write32(cpu->mem, _t128, cpu->r[0]);
|
|
/* 0252F840 */ _t129 = cpu->r[1] + 0x00000130u;
|
|
/* 0252F840 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t129);
|
|
/* 0252F844 */ _t130 = cpu->r[1] + 0x000000B8u;
|
|
/* 0252F844 */ cpu->r[9] = rbrew_read32(cpu->mem, _t130);
|
|
/* 0252F848 */ cpu->f[11] = cpu->f[12] * cpu->f[30];
|
|
/* 0252F84C */ _t131 = cpu->r[1] + 0x00000128u;
|
|
/* 0252F84C */ rbrew_write32(cpu->mem, _t131, cpu->r[8]);
|
|
/* 0252F850 */ _t132 = cpu->r[1] + 0x00000128u;
|
|
/* 0252F850 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t132);
|
|
/* 0252F854 */ _t133 = cpu->r[1] + 0x00000050u;
|
|
/* 0252F854 */ rbrew_write_f32(cpu->mem, _t133, cpu->f[11]);
|
|
/* 0252F858 */ cpu->f[0] = cpu->f[8] * cpu->f[30];
|
|
/* 0252F85C */ _t134 = cpu->r[1] + 0x0000012Cu;
|
|
/* 0252F85C */ rbrew_write32(cpu->mem, _t134, cpu->r[9]);
|
|
/* 0252F860 */ _t135 = cpu->r[1] + 0x0000012Cu;
|
|
/* 0252F860 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t135);
|
|
/* 0252F864 */ _t136 = cpu->r[1] + 0x00000050u;
|
|
/* 0252F864 */ cpu->r[0] = rbrew_read32(cpu->mem, _t136);
|
|
/* 0252F868 */ _t137 = cpu->r[1] + 0x00000048u;
|
|
/* 0252F868 */ rbrew_write_f32(cpu->mem, _t137, cpu->f[0]);
|
|
/* 0252F86C */ _t138 = cpu->r[1] + 0x00000048u;
|
|
/* 0252F86C */ cpu->r[8] = rbrew_read32(cpu->mem, _t138);
|
|
/* 0252F870 */ cpu->f[9] = cpu->f[10] * cpu->f[30];
|
|
/* 0252F874 */ _t139 = cpu->r[1] + 0x0000013Cu;
|
|
/* 0252F874 */ rbrew_write32(cpu->mem, _t139, cpu->r[0]);
|
|
/* 0252F878 */ _t140 = cpu->r[30] + 0x00000080u;
|
|
/* 0252F878 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t140);
|
|
/* 0252F87C */ _t141 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0252F87C */ rbrew_write_f32(cpu->mem, _t141, cpu->f[9]);
|
|
/* 0252F880 */ _t142 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0252F880 */ cpu->r[9] = rbrew_read32(cpu->mem, _t142);
|
|
/* 0252F884 */ _t143 = cpu->r[1] + 0x0000013Cu;
|
|
/* 0252F884 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t143);
|
|
/* 0252F888 */ _t144 = cpu->r[1] + 0x00000138u;
|
|
/* 0252F888 */ rbrew_write32(cpu->mem, _t144, cpu->r[9]);
|
|
/* 0252F88C */ _t145 = cpu->r[1] + 0x00000134u;
|
|
/* 0252F88C */ rbrew_write32(cpu->mem, _t145, cpu->r[8]);
|
|
/* 0252F890 */ /* nop */
|
|
/* 0252F894 */ cpu->f[8] = cpu->f[9] - cpu->f[10];
|
|
/* 0252F898 */ /* nop */
|
|
/* 0252F89C */ /* nop */
|
|
/* 0252F8A0 */ _t146 = cpu->r[1] + 0x000000C4u;
|
|
/* 0252F8A0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t146);
|
|
/* 0252F8A4 */ _t147 = cpu->r[1] + 0x000000C8u;
|
|
/* 0252F8A4 */ rbrew_write_f32(cpu->mem, _t147, cpu->f[8]);
|
|
/* 0252F8A8 */ _t148 = cpu->r[1] + 0x000000C8u;
|
|
/* 0252F8A8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t148);
|
|
/* 0252F8AC */ _t149 = cpu->r[1] + 0x000000C0u;
|
|
/* 0252F8AC */ cpu->r[6] = rbrew_read32(cpu->mem, _t149);
|
|
/* 0252F8B0 */ _t150 = cpu->r[1] + 0x00000018u;
|
|
/* 0252F8B0 */ rbrew_write32(cpu->mem, _t150, cpu->r[7]);
|
|
/* 0252F8B4 */ _t151 = cpu->r[1] + 0x00000018u;
|
|
/* 0252F8B4 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t151);
|
|
/* 0252F8B8 */ _t152 = cpu->r[1] + 0x00000014u;
|
|
/* 0252F8B8 */ rbrew_write32(cpu->mem, _t152, cpu->r[6]);
|
|
/* 0252F8BC */ cpu->f[9] = cpu->f[8] * cpu->f[8];
|
|
/* 0252F8C0 */ _t153 = cpu->r[1] + 0x00000014u;
|
|
/* 0252F8C0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t153);
|
|
/* 0252F8C4 */ _t154 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252F8C4 */ rbrew_write32(cpu->mem, _t154, cpu->r[8]);
|
|
/* 0252F8C8 */ cpu->f[11] = fma(cpu->f[12], cpu->f[12], cpu->f[9]);
|
|
/* 0252F8CC */ _t155 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252F8CC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t155);
|
|
/* 0252F8D0 */ cpu->f[11] = fma(cpu->f[0], cpu->f[0], cpu->f[11]);
|
|
/* 0252F8D4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[29]);
|
|
/* 0252F8D8 */ _t156 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252F8D8 */ _t157 = _t156 & 0x00000001u;
|
|
/* 0252F8D8 */ if (_t157) goto L_0252F8DC; else goto L_0252F910;
|
|
L_0252F8DC: ; // 0x252f8dc
|
|
/* 0252F8DC */ _ft158 = sqrt(cpu->f[11]);
|
|
/* 0252F8DC */ _ft159 = (double)(int32_t)0x00000001u;
|
|
/* 0252F8DC */ cpu->f[13] = _ft159 / _ft158;
|
|
/* 0252F8E0 */ cpu->f[8] = cpu->f[13] * cpu->f[13];
|
|
/* 0252F8E4 */ cpu->f[10] = cpu->f[13] * cpu->f[30];
|
|
/* 0252F8E8 */ cpu->f[8] = -fma(cpu->f[8], cpu->f[11], -(cpu->f[31]));
|
|
/* 0252F8EC */ cpu->f[13] = cpu->f[8] * cpu->f[10];
|
|
/* 0252F8F0 */ _t160 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252F8F0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t160);
|
|
/* 0252F8F4 */ /* nop */
|
|
/* 0252F8F8 */ cpu->f[0] = cpu->f[0] * cpu->f[13];
|
|
/* 0252F8FC */ /* nop */
|
|
/* 0252F900 */ /* nop */
|
|
/* 0252F904 */ _t161 = cpu->r[1] + 0x00000014u;
|
|
/* 0252F904 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t161);
|
|
/* 0252F908 */ _t162 = cpu->r[1] + 0x00000018u;
|
|
/* 0252F908 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t162);
|
|
/* 0252F90C */ _t163 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0252F90C */ rbrew_write_f32(cpu->mem, _t163, cpu->f[0]);
|
|
L_0252F910: ; // 0x252f910
|
|
/* 0252F910 */ cpu->r[8] = 0x00000003u;
|
|
/* 0252F914 */ cpu->r[11] = cpu->r[30] + 0x00000050u;
|
|
/* 0252F918 */ cpu->ctr = cpu->r[8];
|
|
/* 0252F91C */ cpu->r[6] = cpu->r[1] + 0x000000C8u;
|
|
L_0252F920: ; // 0x252f920
|
|
/* 0252F920 */ _t164 = cpu->r[11] + 0x00000004u;
|
|
/* 0252F920 */ cpu->r[10] = rbrew_read32(cpu->mem, _t164);
|
|
/* 0252F924 */ _t165 = cpu->r[6] + 0x00000004u;
|
|
/* 0252F924 */ rbrew_write32(cpu->mem, _t165, cpu->r[10]);
|
|
/* 0252F928 */ _t166 = cpu->r[11] + 0x00000008u;
|
|
/* 0252F928 */ cpu->r[12] = rbrew_read32(cpu->mem, _t166);
|
|
/* 0252F92C */ _t167 = cpu->r[6] + 0x00000008u;
|
|
/* 0252F92C */ rbrew_write32(cpu->mem, _t167, cpu->r[12]);
|
|
/* 0252F930 */ _t168 = cpu->r[11] + 0x0000000Cu;
|
|
/* 0252F930 */ cpu->r[0] = rbrew_read32(cpu->mem, _t168);
|
|
/* 0252F934 */ _t169 = cpu->r[6] + 0x0000000Cu;
|
|
/* 0252F934 */ rbrew_write32(cpu->mem, _t169, cpu->r[0]);
|
|
/* 0252F938 */ _t170 = cpu->r[11] + 0x00000010u;
|
|
/* 0252F938 */ cpu->r[0] = rbrew_read32(cpu->mem, _t170);
|
|
/* 0252F938 */ cpu->r[11] = _t170;
|
|
/* 0252F93C */ _t171 = cpu->r[6] + 0x00000010u;
|
|
/* 0252F93C */ rbrew_write32(cpu->mem, _t171, cpu->r[0]);
|
|
/* 0252F93C */ cpu->r[6] = _t171;
|
|
/* 0252F940 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0252F940 */ _t172 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0252F940 */ _t173 = _t172 >> (0x00000002u & 31u);
|
|
/* 0252F940 */ _t174 = _t173 & 0x00000001u;
|
|
/* 0252F940 */ if (_t174) goto L_0252F920; else goto L_0252F944;
|
|
L_0252F944: ; // 0x252f944
|
|
/* 0252F944 */ _t175 = cpu->r[1] + 0x000000DCu;
|
|
/* 0252F944 */ rbrew_write_f32(cpu->mem, _t175, cpu->f[8]);
|
|
/* 0252F948 */ cpu->r[3] = cpu->r[1] + 0x000000CCu;
|
|
/* 0252F94C */ cpu->r[4] = 0x100C0000u;
|
|
/* 0252F950 */ _t176 = cpu->r[1] + 0x000000D8u;
|
|
/* 0252F950 */ rbrew_write_f32(cpu->mem, _t176, cpu->f[12]);
|
|
/* 0252F954 */ cpu->r[5] = 0x0000024Au;
|
|
/* 0252F958 */ cpu->r[4] = cpu->r[4] + 0x00003CBCu;
|
|
/* 0252F95C */ _t177 = cpu->r[1] + 0x000000E0u;
|
|
/* 0252F95C */ rbrew_write_f32(cpu->mem, _t177, cpu->f[0]);
|
|
/* 0252F960 */ Gambit_fn_0204D380(cpu);
|
|
/* 0252F964 */ _t178 = cpu->r[1] + 0x000000E0u;
|
|
/* 0252F964 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t178);
|
|
/* 0252F968 */ _t179 = cpu->r[1] + 0x000000E4u;
|
|
/* 0252F968 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t179);
|
|
/* 0252F96C */ _t180 = cpu->r[1] + 0x000000DCu;
|
|
/* 0252F96C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t180);
|
|
/* 0252F970 */ _t181 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0252F970 */ rbrew_write_f32(cpu->mem, _t181, cpu->f[7]);
|
|
/* 0252F974 */ _t182 = cpu->r[1] + 0x00000068u;
|
|
/* 0252F974 */ rbrew_write_f32(cpu->mem, _t182, cpu->f[10]);
|
|
/* 0252F978 */ _t183 = cpu->r[1] + 0x000000F4u;
|
|
/* 0252F978 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t183);
|
|
/* 0252F97C */ _t184 = cpu->r[1] + 0x00000078u;
|
|
/* 0252F97C */ rbrew_write_f32(cpu->mem, _t184, cpu->f[13]);
|
|
/* 0252F980 */ _t185 = cpu->r[1] + 0x00000070u;
|
|
/* 0252F980 */ rbrew_write_f32(cpu->mem, _t185, cpu->f[10]);
|
|
/* 0252F984 */ _t186 = cpu->r[1] + 0x000000CCu;
|
|
/* 0252F984 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t186);
|
|
/* 0252F988 */ _t187 = cpu->r[1] + 0x000000D8u;
|
|
/* 0252F988 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t187);
|
|
/* 0252F98C */ _t188 = cpu->r[1] + 0x00000054u;
|
|
/* 0252F98C */ rbrew_write_f32(cpu->mem, _t188, cpu->f[9]);
|
|
/* 0252F990 */ _t189 = cpu->r[1] + 0x000000D0u;
|
|
/* 0252F990 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t189);
|
|
/* 0252F994 */ _t190 = cpu->r[1] + 0x000000D4u;
|
|
/* 0252F994 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t190);
|
|
/* 0252F998 */ _t191 = cpu->r[1] + 0x00000064u;
|
|
/* 0252F998 */ rbrew_write_f32(cpu->mem, _t191, cpu->f[9]);
|
|
/* 0252F99C */ _t192 = cpu->r[1] + 0x000000F0u;
|
|
/* 0252F99C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t192);
|
|
/* 0252F9A0 */ _t193 = cpu->r[1] + 0x00000074u;
|
|
/* 0252F9A0 */ rbrew_write_f32(cpu->mem, _t193, cpu->f[11]);
|
|
/* 0252F9A4 */ _t194 = cpu->r[1] + 0x00000060u;
|
|
/* 0252F9A4 */ rbrew_write_f32(cpu->mem, _t194, cpu->f[8]);
|
|
/* 0252F9A8 */ _t195 = cpu->r[1] + 0x000000E8u;
|
|
/* 0252F9A8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t195);
|
|
/* 0252F9AC */ _t196 = cpu->r[1] + 0x00000058u;
|
|
/* 0252F9AC */ rbrew_write_f32(cpu->mem, _t196, cpu->f[0]);
|
|
/* 0252F9B0 */ _t197 = cpu->r[1] + 0x0000006Cu;
|
|
/* 0252F9B0 */ rbrew_write_f32(cpu->mem, _t197, cpu->f[12]);
|
|
/* 0252F9B4 */ _t198 = cpu->r[1] + 0x000000ECu;
|
|
/* 0252F9B4 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t198);
|
|
/* 0252F9B8 */ _t199 = cpu->r[1] + 0x000000F8u;
|
|
/* 0252F9B8 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t199);
|
|
/* 0252F9BC */ _t200 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0252F9BC */ rbrew_write_f32(cpu->mem, _t200, cpu->f[7]);
|
|
/* 0252F9C0 */ cpu->r[3] = cpu->r[30];
|
|
/* 0252F9C4 */ _t201 = cpu->r[1] + 0x00000080u;
|
|
/* 0252F9C4 */ rbrew_write_f32(cpu->mem, _t201, cpu->f[9]);
|
|
/* 0252F9C8 */ Gambit_fn_0252D85C(cpu);
|
|
/* 0252F9CC */ _t202 = cpu->r[1] + 0x00000084u;
|
|
/* 0252F9CC */ cpu->r[31] = rbrew_read32(cpu->mem, _t202);
|
|
/* 0252F9D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0252F9D4 */ cpu->f[31] = cpu->f[1];
|
|
/* 0252F9D8 */ _t203 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252F9D8 */ _t204 = _t203 & 0x00000001u;
|
|
/* 0252F9D8 */ if (_t204) goto L_0252FA10; else goto L_0252F9DC;
|
|
L_0252F9DC: ; // 0x252f9dc
|
|
/* 0252F9DC */ _t205 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0252F9DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t205);
|
|
/* 0252F9E0 */ _t206 = cpu->r[1] + 0x00000088u;
|
|
/* 0252F9E0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t206);
|
|
/* 0252F9E4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[6]);
|
|
/* 0252F9E8 */ _t207 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252F9E8 */ _t208 = _t207 & 0x00000001u;
|
|
/* 0252F9E8 */ if (_t208) goto L_0252F9EC; else goto L_0252FA10;
|
|
L_0252F9EC: ; // 0x252f9ec
|
|
/* 0252F9EC */ cpu->r[3] = cpu->r[1] + 0x00000054u;
|
|
/* 0252F9F0 */ cpu->r[4] = cpu->r[31] + 0x0000007Cu;
|
|
/* 0252F9F4 */ Gambit_fn_02C69510(cpu);
|
|
/* 0252F9F8 */ _t209 = cpu->r[31] + 0x0000012Cu;
|
|
/* 0252F9F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t209);
|
|
/* 0252F9FC */ _t210 = cpu->r[31] + 0x00000074u;
|
|
/* 0252F9FC */ rbrew_write_f32(cpu->mem, _t210, cpu->f[31]);
|
|
/* 0252FA00 */ cpu->r[0] = cpu->r[0] | 0x00000008u;
|
|
/* 0252FA04 */ _t211 = cpu->r[31] + 0x00000070u;
|
|
/* 0252FA04 */ rbrew_write_f32(cpu->mem, _t211, cpu->f[31]);
|
|
/* 0252FA08 */ _t212 = cpu->r[31] + 0x0000012Cu;
|
|
/* 0252FA08 */ rbrew_write32(cpu->mem, _t212, cpu->r[0]);
|
|
/* 0252FA0C */ _t213 = cpu->r[31] + 0x00000078u;
|
|
/* 0252FA0C */ rbrew_write_f32(cpu->mem, _t213, cpu->f[31]);
|
|
L_0252FA10: ; // 0x252fa10
|
|
/* 0252FA10 */ cpu->r[3] = cpu->r[1] + 0x000000A8u;
|
|
/* 0252FA14 */ cpu->r[4] = cpu->r[1] + 0x00000134u;
|
|
/* 0252FA18 */ Gambit_fn_028B30F0(cpu);
|
|
L_0252FA1C: ; // 0x252fa1c
|
|
/* 0252FA1C */ _t214 = cpu->r[1] + 0x00000164u;
|
|
/* 0252FA1C */ cpu->r[29] = rbrew_read32(cpu->mem, _t214);
|
|
/* 0252FA20 */ _t215 = cpu->r[1] + 0x00000198u;
|
|
/* 0252FA20 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t215);
|
|
/* 0252FA24 */ _t216 = cpu->r[1] + 0x00000178u;
|
|
/* 0252FA24 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t216);
|
|
/* 0252FA28 */ _t217 = cpu->r[1] + 0x00000190u;
|
|
/* 0252FA28 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t217);
|
|
/* 0252FA2C */ _t218 = cpu->r[1] + 0x00000188u;
|
|
/* 0252FA2C */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t218);
|
|
/* 0252FA30 */ _t219 = cpu->r[1] + 0x00000170u;
|
|
/* 0252FA30 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t219);
|
|
/* 0252FA34 */ _t220 = cpu->r[1] + 0x00000180u;
|
|
/* 0252FA34 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t220);
|
|
/* 0252FA38 */ _t221 = cpu->r[1] + 0x0000016Cu;
|
|
/* 0252FA38 */ cpu->r[31] = rbrew_read32(cpu->mem, _t221);
|
|
/* 0252FA3C */ _t222 = cpu->r[1] + 0x00000168u;
|
|
/* 0252FA3C */ cpu->r[30] = rbrew_read32(cpu->mem, _t222);
|
|
/* 0252FA40 */ _t223 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0252FA40 */ _t224 = _t223 & 0x00000001u;
|
|
/* 0252FA40 */ if (_t224) goto L_0252FA44; // else: addr-0 trap, fall-through
|
|
L_0252FA44: ; // 0x252fa44
|
|
/* 0252FA44 */ _t225 = cpu->r[1] + 0x000001A4u;
|
|
/* 0252FA44 */ cpu->r[0] = rbrew_read32(cpu->mem, _t225);
|
|
/* 0252FA48 */ cpu->lr = cpu->r[0];
|
|
/* 0252FA4C */ cpu->r[1] = cpu->r[1] + 0x000001A0u;
|
|
/* 0252FA50 */ return;
|
|
}
|
|
|
|
// fn_0252FA54 @ 0x252fa54
|
|
void Gambit_fn_0252FA54(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0252FA54: ; // 0x252fa54
|
|
/* 0252FA54 */ cpu->r[0] = 0x000000C3u;
|
|
/* 0252FA58 */ _t0 = cpu->r[3] + 0x00000210u;
|
|
/* 0252FA58 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 0252FA5C */ return;
|
|
}
|
|
|
|
// fn_0252FA60 @ 0x252fa60
|
|
void Gambit_fn_0252FA60(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_0252E2D8: ; // 0x252e2d8
|
|
/* 0252E2D8 */ _t0 = cpu->r[3] + 0x0000021Cu;
|
|
/* 0252E2D8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 0252E2DC */ cpu->r[11] = 0x100C0000u;
|
|
/* 0252E2E0 */ cpu->f[13] = cpu->f[13] - cpu->f[1];
|
|
/* 0252E2E4 */ _t1 = cpu->r[11] + 0x00003BDCu;
|
|
/* 0252E2E4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 0252E2E8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[13]);
|
|
/* 0252E2EC */ _t2 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252E2EC */ _t3 = _t2 & 0x00000001u;
|
|
/* 0252E2EC */ if (_t3) goto L_0252E2F0; else goto L_0252E2F4;
|
|
L_0252E2F0: ; // 0x252e2f0
|
|
/* 0252E2F0 */ cpu->f[13] = cpu->f[0];
|
|
L_0252E2F4: ; // 0x252e2f4
|
|
/* 0252E2F4 */ cpu->r[12] = 0x0000012Cu;
|
|
/* 0252E2F8 */ _t4 = cpu->r[3] + 0x0000021Cu;
|
|
/* 0252E2F8 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[13]);
|
|
/* 0252E2FC */ cpu->r[0] = 0x00000000u;
|
|
/* 0252E300 */ _t5 = cpu->r[3] + 0x00000220u;
|
|
/* 0252E300 */ rbrew_write32(cpu->mem, _t5, cpu->r[12]);
|
|
/* 0252E304 */ _t6 = cpu->r[3] + 0x0000022Cu;
|
|
/* 0252E304 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0252E308 */ return;
|
|
L_0252FA60: ; // 0x252fa60
|
|
/* 0252FA60 */ goto L_0252E2D8;
|
|
}
|
|
|
|
// fn_0252FA64 @ 0x252fa64
|
|
void Gambit_fn_0252FA64(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_0252DE40: ; // 0x252de40
|
|
/* 0252DE40 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0252DE44 */ _t0 = cpu->r[3] + 0x00006000u;
|
|
/* 0252DE44 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0252DE48 */ _t1 = cpu->r[3] + 0x00000004u;
|
|
/* 0252DE48 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0252DE4C */ _t2 = cpu->r[12] + 0x00000164u;
|
|
/* 0252DE4C */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0252DE50 */ cpu->ctr = cpu->r[0];
|
|
/* 0252DE54 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
L_0252FA64: ; // 0x252fa64
|
|
/* 0252FA64 */ cpu->r[12] = 0x100C0000u;
|
|
/* 0252FA68 */ _t3 = cpu->r[12] + 0x00003BDCu;
|
|
/* 0252FA68 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 0252FA6C */ _t4 = cpu->r[3] + 0x0000021Cu;
|
|
/* 0252FA6C */ rbrew_write_f32(cpu->mem, _t4, cpu->f[0]);
|
|
/* 0252FA70 */ goto L_0252DE40;
|
|
}
|
|
|
|
// fn_0252FA74 @ 0x252fa74
|
|
void Gambit_fn_0252FA74(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37;
|
|
double _ft9, _ft10;
|
|
|
|
L_0252FA74: ; // 0x252fa74
|
|
/* 0252FA74 */ _t0 = cpu->r[3] + 0x00000080u;
|
|
/* 0252FA74 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 0252FA78 */ _t1 = cpu->r[4] + 0x0000024Cu;
|
|
/* 0252FA78 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 0252FA7C */ _t2 = cpu->r[4] + 0x00000244u;
|
|
/* 0252FA7C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 0252FA80 */ cpu->f[0] = cpu->f[0] - cpu->f[9];
|
|
/* 0252FA84 */ _t3 = cpu->r[3] + 0x00000078u;
|
|
/* 0252FA84 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 0252FA88 */ cpu->f[13] = cpu->f[9] - cpu->f[12];
|
|
/* 0252FA8C */ cpu->f[10] = cpu->f[0] * cpu->f[0];
|
|
/* 0252FA90 */ cpu->r[12] = 0x100C0000u;
|
|
/* 0252FA94 */ cpu->f[9] = fma(cpu->f[13], cpu->f[13], cpu->f[10]);
|
|
/* 0252FA98 */ _t4 = cpu->r[12] + 0x00003BDCu;
|
|
/* 0252FA98 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 0252FA9C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[0]);
|
|
/* 0252FAA0 */ _t5 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252FAA0 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0252FAA0 */ if (_t6) goto L_0252FAA4; else goto L_0252FAC8;
|
|
L_0252FAA4: ; // 0x252faa4
|
|
/* 0252FAA4 */ cpu->r[12] = 0x100C0000u;
|
|
/* 0252FAA8 */ _t7 = cpu->r[12] + 0x00003C48u;
|
|
/* 0252FAA8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 0252FAAC */ cpu->r[12] = 0x100C0000u;
|
|
/* 0252FAB0 */ _t8 = cpu->r[12] + 0x00003C44u;
|
|
/* 0252FAB0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 0252FAB4 */ _ft9 = sqrt(cpu->f[9]);
|
|
/* 0252FAB4 */ _ft10 = (double)(int32_t)0x00000001u;
|
|
/* 0252FAB4 */ cpu->f[0] = _ft10 / _ft9;
|
|
/* 0252FAB8 */ cpu->f[10] = cpu->f[0] * cpu->f[0];
|
|
/* 0252FABC */ cpu->f[13] = cpu->f[0] * cpu->f[11];
|
|
/* 0252FAC0 */ cpu->f[10] = -fma(cpu->f[10], cpu->f[9], -(cpu->f[12]));
|
|
/* 0252FAC4 */ cpu->f[0] = cpu->f[10] * cpu->f[13];
|
|
L_0252FAC8: ; // 0x252fac8
|
|
/* 0252FAC8 */ cpu->r[12] = 0x100C0000u;
|
|
/* 0252FACC */ cpu->f[0] = cpu->f[0] * cpu->f[9];
|
|
/* 0252FAD0 */ _t11 = cpu->r[12] + 0x00003C28u;
|
|
/* 0252FAD0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 0252FAD4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[13]);
|
|
/* 0252FAD8 */ _t12 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0252FAD8 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0252FAD8 */ if (_t13) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0252FAD8 */ goto L_0252FADC;
|
|
L_0252FADC: ; // 0x252fadc
|
|
/* 0252FADC */ cpu->r[12] = 0x100C0000u;
|
|
/* 0252FAE0 */ _t14 = cpu->r[12] + 0x00003C24u;
|
|
/* 0252FAE0 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 0252FAE4 */ cpu->r[3] = cpu->r[4];
|
|
/* 0252FAE8 */ goto L_025C81EC;
|
|
L_025C81EC: ; // 0x25c81ec
|
|
/* 025C81EC */ cpu->r[12] = 0x100D0000u;
|
|
/* 025C81F0 */ _t15 = cpu->r[12] + 0x00005D90u;
|
|
/* 025C81F0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 025C81F4 */ cpu->r[12] = 0x100D0000u;
|
|
/* 025C81F8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[13]);
|
|
/* 025C81FC */ _t16 = cpu->r[12] + 0x00005D8Cu;
|
|
/* 025C81FC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 025C8200 */ _t17 = cpu->r[3] + 0x000007D0u;
|
|
/* 025C8200 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 025C8204 */ cpu->f[12] = cpu->f[1];
|
|
/* 025C8208 */ _t18 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 025C8208 */ _t19 = _t18 & 0x00000001u;
|
|
/* 025C8208 */ if (_t19) goto L_025C820C; else goto L_025C821C;
|
|
L_025C820C: ; // 0x25c820c
|
|
/* 025C820C */ cpu->f[12] = cpu->f[13];
|
|
/* 025C8210 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[11]);
|
|
/* 025C8214 */ _t20 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 025C8214 */ _t21 = _t20 & 0x00000001u;
|
|
/* 025C8214 */ if (_t21) goto L_025C8230; else goto L_025C8218;
|
|
L_025C8218: ; // 0x25c8218
|
|
/* 025C8218 */ goto L_025C8234;
|
|
L_025C821C: ; // 0x25c821c
|
|
/* 025C821C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[0]);
|
|
/* 025C8220 */ _t22 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 025C8220 */ _t23 = _t22 & 0x00000001u;
|
|
/* 025C8220 */ if (_t23) goto L_025C8224; else goto L_025C8228;
|
|
L_025C8224: ; // 0x25c8224
|
|
/* 025C8224 */ cpu->f[12] = cpu->f[0];
|
|
L_025C8228: ; // 0x25c8228
|
|
/* 025C8228 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[11]);
|
|
/* 025C822C */ _t24 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 025C822C */ _t25 = _t24 & 0x00000001u;
|
|
/* 025C822C */ if (_t25) goto L_025C8230; else goto L_025C8234;
|
|
L_025C8230: ; // 0x25c8230
|
|
/* 025C8230 */ _t26 = cpu->r[3] + 0x000007D0u;
|
|
/* 025C8230 */ rbrew_write_f32(cpu->mem, _t26, cpu->f[12]);
|
|
L_025C8234: ; // 0x25c8234
|
|
/* 025C8234 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[13]);
|
|
/* 025C8238 */ _t27 = cpu->r[3] + 0x000007D8u;
|
|
/* 025C8238 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 025C823C */ _t28 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 025C823C */ _t29 = _t28 & 0x00000001u;
|
|
/* 025C823C */ if (_t29) goto L_025C8240; else goto L_025C8250;
|
|
L_025C8240: ; // 0x25c8240
|
|
/* 025C8240 */ cpu->f[1] = cpu->f[13];
|
|
/* 025C8244 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[11]);
|
|
/* 025C8248 */ _t30 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 025C8248 */ _t31 = _t30 & 0x00000001u;
|
|
/* 025C8248 */ if (_t31) goto L_025C8264; else goto L_025C824C;
|
|
L_025C824C: ; // 0x25c824c
|
|
/* 025C824C */ return;
|
|
L_025C8250: ; // 0x25c8250
|
|
/* 025C8250 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[0]);
|
|
/* 025C8254 */ _t32 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 025C8254 */ _t33 = _t32 & 0x00000001u;
|
|
/* 025C8254 */ if (_t33) goto L_025C8258; else goto L_025C825C;
|
|
L_025C8258: ; // 0x25c8258
|
|
/* 025C8258 */ cpu->f[1] = cpu->f[0];
|
|
L_025C825C: ; // 0x25c825c
|
|
/* 025C825C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[11]);
|
|
/* 025C8260 */ _t34 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 025C8260 */ _t35 = _t34 & 0x00000001u;
|
|
/* 025C8260 */ _t36 = _t35 ^ 0x00000001u;
|
|
/* 025C8260 */ if (_t36) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 025C8260 */ goto L_025C8264;
|
|
L_025C8264: ; // 0x25c8264
|
|
/* 025C8264 */ _t37 = cpu->r[3] + 0x000007D8u;
|
|
/* 025C8264 */ rbrew_write_f32(cpu->mem, _t37, cpu->f[1]);
|
|
/* 025C8268 */ return;
|
|
}
|
|
|
|
// fn_0252FB00 @ 0x252fb00
|
|
void Gambit_fn_0252FB00(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _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_0252FB00: ; // 0x252fb00
|
|
/* 0252FB00 */ _t0 = cpu->r[1] + 0xFFFFFFB8u;
|
|
/* 0252FB00 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0252FB00 */ cpu->r[1] = _t0;
|
|
/* 0252FB04 */ /* nop */
|
|
/* 0252FB08 */ cpu->r[0] = cpu->lr;
|
|
/* 0252FB0C */ cpu->r[7] = 0xFFFFFFFEu;
|
|
/* 0252FB10 */ _t1 = cpu->r[1] + 0x00000028u;
|
|
/* 0252FB10 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[30]);
|
|
/* 0252FB14 */ /* nop */
|
|
/* 0252FB18 */ _t2 = cpu->r[1] + 0x00000038u;
|
|
/* 0252FB18 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 0252FB1C */ /* nop */
|
|
/* 0252FB20 */ _t3 = cpu->r[1] + 0x00000030u;
|
|
/* 0252FB20 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[30]);
|
|
/* 0252FB24 */ cpu->r[10] = 0x101F0000u;
|
|
/* 0252FB28 */ _t4 = cpu->r[1] + 0x00000040u;
|
|
/* 0252FB28 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[31]);
|
|
/* 0252FB2C */ cpu->r[8] = 0xFFFFFFFFu;
|
|
/* 0252FB30 */ _t5 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0252FB30 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0252FB34 */ cpu->r[11] = 0x101F0000u;
|
|
/* 0252FB38 */ cpu->r[12] = 0xFFFFFFFDu;
|
|
/* 0252FB3C */ _t6 = cpu->r[10] + 0xFFFF9C00u;
|
|
/* 0252FB3C */ rbrew_write32(cpu->mem, _t6, cpu->r[7]);
|
|
/* 0252FB3C */ cpu->r[10] = _t6;
|
|
/* 0252FB40 */ cpu->r[5] = 0x101F0000u;
|
|
/* 0252FB44 */ _t7 = cpu->r[10] + 0x00000004u;
|
|
/* 0252FB44 */ rbrew_write32(cpu->mem, _t7, cpu->r[8]);
|
|
/* 0252FB48 */ cpu->r[10] = 0x101F0000u;
|
|
/* 0252FB4C */ _t8 = cpu->r[11] + 0xFFFF9BF8u;
|
|
/* 0252FB4C */ rbrew_write32(cpu->mem, _t8, cpu->r[12]);
|
|
/* 0252FB4C */ cpu->r[11] = _t8;
|
|
/* 0252FB50 */ cpu->r[10] = cpu->r[10] + 0xFFFF9C10u;
|
|
/* 0252FB54 */ _t9 = cpu->r[11] + 0x00000004u;
|
|
/* 0252FB54 */ rbrew_write32(cpu->mem, _t9, cpu->r[8]);
|
|
/* 0252FB58 */ cpu->r[31] = 0x101F0000u;
|
|
/* 0252FB5C */ cpu->r[5] = cpu->r[5] + 0x00005BFCu;
|
|
/* 0252FB60 */ _t10 = cpu->r[10] + 0x00000004u;
|
|
/* 0252FB60 */ rbrew_write32(cpu->mem, _t10, cpu->r[8]);
|
|
/* 0252FB64 */ _t11 = cpu->r[5] + 0x00000008u;
|
|
/* 0252FB64 */ cpu->r[29] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0252FB68 */ cpu->r[9] = 0x101F0000u;
|
|
/* 0252FB6C */ _t12 = cpu->r[5] + 0x00000000u;
|
|
/* 0252FB6C */ cpu->r[27] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0252FB70 */ cpu->r[0] = 0x00000002u;
|
|
/* 0252FB74 */ _t13 = cpu->r[5] + 0x00000004u;
|
|
/* 0252FB74 */ cpu->r[28] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0252FB78 */ _t14 = cpu->r[9] + 0xFFFF9C08u;
|
|
/* 0252FB78 */ rbrew_write32(cpu->mem, _t14, cpu->r[8]);
|
|
/* 0252FB78 */ cpu->r[9] = _t14;
|
|
/* 0252FB7C */ _t15 = cpu->r[31] + 0xFFFF9C88u;
|
|
/* 0252FB7C */ rbrew_write32(cpu->mem, _t15, cpu->r[27]);
|
|
/* 0252FB7C */ cpu->r[31] = _t15;
|
|
/* 0252FB80 */ _t16 = cpu->r[1] + 0x00000008u;
|
|
/* 0252FB80 */ rbrew_write32(cpu->mem, _t16, cpu->r[0]);
|
|
/* 0252FB84 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 0252FB84 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0252FB88 */ _t18 = cpu->r[31] + 0x00000010u;
|
|
/* 0252FB88 */ rbrew_write32(cpu->mem, _t18, cpu->r[27]);
|
|
/* 0252FB8C */ cpu->r[4] = 0x101F0000u;
|
|
/* 0252FB90 */ _t19 = cpu->r[31] + 0x00000018u;
|
|
/* 0252FB90 */ rbrew_write32(cpu->mem, _t19, cpu->r[29]);
|
|
/* 0252FB94 */ cpu->r[0] = 0x00000004u;
|
|
/* 0252FB98 */ _t20 = cpu->r[4] + 0x00005C2Cu;
|
|
/* 0252FB98 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0252FB98 */ cpu->r[4] = _t20;
|
|
/* 0252FB9C */ _t21 = cpu->r[5] + 0x0000000Cu;
|
|
/* 0252FB9C */ cpu->r[25] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0252FBA0 */ _t22 = cpu->r[31] + 0x00000030u;
|
|
/* 0252FBA0 */ rbrew_write32(cpu->mem, _t22, cpu->r[11]);
|
|
/* 0252FBA4 */ _t23 = cpu->r[31] + 0x0000002Cu;
|
|
/* 0252FBA4 */ rbrew_write32(cpu->mem, _t23, cpu->r[25]);
|
|
/* 0252FBA8 */ _t24 = cpu->r[31] + 0x00000008u;
|
|
/* 0252FBA8 */ rbrew_write32(cpu->mem, _t24, cpu->r[29]);
|
|
/* 0252FBAC */ _t25 = cpu->r[9] + 0x00000004u;
|
|
/* 0252FBAC */ rbrew_write32(cpu->mem, _t25, cpu->r[8]);
|
|
/* 0252FBB0 */ _t26 = cpu->r[31] + 0x00000024u;
|
|
/* 0252FBB0 */ rbrew_write32(cpu->mem, _t26, cpu->r[28]);
|
|
/* 0252FBB4 */ cpu->r[9] = 0x101F0000u;
|
|
/* 0252FBB8 */ _t27 = cpu->r[31] + 0x00000028u;
|
|
/* 0252FBB8 */ rbrew_write32(cpu->mem, _t27, cpu->r[29]);
|
|
/* 0252FBBC */ cpu->r[7] = 0x101F0000u;
|
|
/* 0252FBC0 */ _t28 = cpu->r[9] + 0xFFFF9C20u;
|
|
/* 0252FBC0 */ rbrew_write32(cpu->mem, _t28, cpu->r[0]);
|
|
/* 0252FBC4 */ _t29 = cpu->r[7] + 0x00005C1Cu;
|
|
/* 0252FBC4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0252FBC4 */ cpu->r[7] = _t29;
|
|
/* 0252FBC8 */ _t30 = cpu->r[31] + 0x00000004u;
|
|
/* 0252FBC8 */ rbrew_write32(cpu->mem, _t30, cpu->r[28]);
|
|
/* 0252FBCC */ _t31 = cpu->r[31] + 0x00000020u;
|
|
/* 0252FBCC */ rbrew_write32(cpu->mem, _t31, cpu->r[27]);
|
|
/* 0252FBD0 */ _t32 = cpu->r[31] + 0x00000014u;
|
|
/* 0252FBD0 */ rbrew_write32(cpu->mem, _t32, cpu->r[28]);
|
|
/* 0252FBD4 */ _t33 = cpu->r[4] + 0x0000000Cu;
|
|
/* 0252FBD4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 0252FBD8 */ _t34 = cpu->r[31] + 0x00000040u;
|
|
/* 0252FBD8 */ rbrew_write32(cpu->mem, _t34, cpu->r[9]);
|
|
/* 0252FBDC */ _t35 = cpu->r[31] + 0x0000003Cu;
|
|
/* 0252FBDC */ rbrew_write32(cpu->mem, _t35, cpu->r[0]);
|
|
/* 0252FBE0 */ _t36 = cpu->r[10] + 0x00000000u;
|
|
/* 0252FBE0 */ rbrew_write32(cpu->mem, _t36, cpu->r[12]);
|
|
/* 0252FBE4 */ _t37 = cpu->r[7] + 0x00000004u;
|
|
/* 0252FBE4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0252FBE8 */ _t38 = cpu->r[7] + 0x00000008u;
|
|
/* 0252FBE8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t38);
|
|
/* 0252FBEC */ _t39 = cpu->r[31] + 0x00000044u;
|
|
/* 0252FBEC */ rbrew_write32(cpu->mem, _t39, cpu->r[10]);
|
|
/* 0252FBF0 */ _t40 = cpu->r[31] + 0x00000048u;
|
|
/* 0252FBF0 */ rbrew_write32(cpu->mem, _t40, cpu->r[0]);
|
|
/* 0252FBF4 */ _t41 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0252FBF4 */ rbrew_write32(cpu->mem, _t41, cpu->r[25]);
|
|
/* 0252FBF8 */ _t42 = cpu->r[7] + 0x0000000Cu;
|
|
/* 0252FBF8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t42);
|
|
/* 0252FBFC */ _t43 = cpu->r[4] + 0x00000004u;
|
|
/* 0252FBFC */ cpu->r[5] = rbrew_read32(cpu->mem, _t43);
|
|
/* 0252FC00 */ _t44 = cpu->r[31] + 0x0000004Cu;
|
|
/* 0252FC00 */ rbrew_write32(cpu->mem, _t44, cpu->r[0]);
|
|
/* 0252FC04 */ cpu->r[11] = 0x101F0000u;
|
|
/* 0252FC08 */ _t45 = cpu->r[11] + 0xFFFF9C18u;
|
|
/* 0252FC08 */ rbrew_write32(cpu->mem, _t45, cpu->r[12]);
|
|
/* 0252FC08 */ cpu->r[11] = _t45;
|
|
/* 0252FC0C */ _t46 = cpu->r[11] + 0x00000004u;
|
|
/* 0252FC0C */ rbrew_write32(cpu->mem, _t46, cpu->r[8]);
|
|
/* 0252FC10 */ cpu->r[8] = 0x101F0000u;
|
|
/* 0252FC14 */ _t47 = cpu->r[31] + 0x00000034u;
|
|
/* 0252FC14 */ rbrew_write32(cpu->mem, _t47, cpu->r[5]);
|
|
/* 0252FC18 */ _t48 = cpu->r[8] + 0x00005BDCu;
|
|
/* 0252FC18 */ cpu->r[26] = rbrew_read32(cpu->mem, _t48);
|
|
/* 0252FC18 */ cpu->r[8] = _t48;
|
|
/* 0252FC1C */ _t49 = cpu->r[8] + 0x00000008u;
|
|
/* 0252FC1C */ cpu->r[30] = rbrew_read32(cpu->mem, _t49);
|
|
/* 0252FC20 */ _t50 = cpu->r[4] + 0x00000008u;
|
|
/* 0252FC20 */ cpu->r[6] = rbrew_read32(cpu->mem, _t50);
|
|
/* 0252FC24 */ _t51 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0252FC24 */ rbrew_write32(cpu->mem, _t51, cpu->r[25]);
|
|
/* 0252FC28 */ _t52 = cpu->r[31] + 0x00000038u;
|
|
/* 0252FC28 */ rbrew_write32(cpu->mem, _t52, cpu->r[6]);
|
|
/* 0252FC2C */ cpu->r[4] = 0x101F0000u;
|
|
/* 0252FC30 */ _t53 = cpu->r[31] + 0x00000088u;
|
|
/* 0252FC30 */ rbrew_write32(cpu->mem, _t53, cpu->r[30]);
|
|
/* 0252FC34 */ cpu->r[4] = cpu->r[4] + 0x00005C4Cu;
|
|
/* 0252FC38 */ _t54 = cpu->r[31] + 0x00000080u;
|
|
/* 0252FC38 */ rbrew_write32(cpu->mem, _t54, cpu->r[26]);
|
|
/* 0252FC3C */ _t55 = cpu->r[4] + 0x00000004u;
|
|
/* 0252FC3C */ cpu->r[10] = rbrew_read32(cpu->mem, _t55);
|
|
/* 0252FC40 */ _t56 = cpu->r[31] + 0x00000058u;
|
|
/* 0252FC40 */ rbrew_write32(cpu->mem, _t56, cpu->r[30]);
|
|
/* 0252FC44 */ _t57 = cpu->r[31] + 0x00000064u;
|
|
/* 0252FC44 */ rbrew_write32(cpu->mem, _t57, cpu->r[10]);
|
|
/* 0252FC48 */ cpu->r[9] = 0x101F0000u;
|
|
/* 0252FC4C */ _t58 = cpu->r[8] + 0x00000004u;
|
|
/* 0252FC4C */ cpu->r[5] = rbrew_read32(cpu->mem, _t58);
|
|
/* 0252FC50 */ _t59 = cpu->r[9] + 0x00005C3Cu;
|
|
/* 0252FC50 */ cpu->r[6] = rbrew_read32(cpu->mem, _t59);
|
|
/* 0252FC50 */ cpu->r[9] = _t59;
|
|
/* 0252FC54 */ _t60 = cpu->r[31] + 0x00000090u;
|
|
/* 0252FC54 */ rbrew_write32(cpu->mem, _t60, cpu->r[26]);
|
|
/* 0252FC58 */ _t61 = cpu->r[31] + 0x00000070u;
|
|
/* 0252FC58 */ rbrew_write32(cpu->mem, _t61, cpu->r[6]);
|
|
/* 0252FC5C */ _t62 = cpu->r[8] + 0x0000000Cu;
|
|
/* 0252FC5C */ cpu->r[3] = rbrew_read32(cpu->mem, _t62);
|
|
/* 0252FC60 */ _t63 = cpu->r[9] + 0x00000004u;
|
|
/* 0252FC60 */ cpu->r[8] = rbrew_read32(cpu->mem, _t63);
|
|
/* 0252FC64 */ _t64 = cpu->r[9] + 0x0000000Cu;
|
|
/* 0252FC64 */ cpu->r[10] = rbrew_read32(cpu->mem, _t64);
|
|
/* 0252FC68 */ _t65 = cpu->r[31] + 0x00000074u;
|
|
/* 0252FC68 */ rbrew_write32(cpu->mem, _t65, cpu->r[8]);
|
|
/* 0252FC6C */ cpu->r[11] = 0x101F0000u;
|
|
/* 0252FC70 */ _t66 = cpu->r[31] + 0x0000007Cu;
|
|
/* 0252FC70 */ rbrew_write32(cpu->mem, _t66, cpu->r[10]);
|
|
/* 0252FC74 */ _t67 = cpu->r[11] + 0x00005C0Cu;
|
|
/* 0252FC74 */ cpu->r[12] = rbrew_read32(cpu->mem, _t67);
|
|
/* 0252FC74 */ cpu->r[11] = _t67;
|
|
/* 0252FC78 */ _t68 = cpu->r[4] + 0x0000000Cu;
|
|
/* 0252FC78 */ cpu->r[0] = rbrew_read32(cpu->mem, _t68);
|
|
/* 0252FC7C */ _t69 = cpu->r[31] + 0x0000005Cu;
|
|
/* 0252FC7C */ rbrew_write32(cpu->mem, _t69, cpu->r[3]);
|
|
/* 0252FC80 */ _t70 = cpu->r[31] + 0x0000006Cu;
|
|
/* 0252FC80 */ rbrew_write32(cpu->mem, _t70, cpu->r[0]);
|
|
/* 0252FC84 */ _t71 = cpu->r[31] + 0x00000094u;
|
|
/* 0252FC84 */ rbrew_write32(cpu->mem, _t71, cpu->r[5]);
|
|
/* 0252FC88 */ _t72 = cpu->r[31] + 0x00000054u;
|
|
/* 0252FC88 */ rbrew_write32(cpu->mem, _t72, cpu->r[5]);
|
|
/* 0252FC8C */ _t73 = cpu->r[31] + 0x00000084u;
|
|
/* 0252FC8C */ rbrew_write32(cpu->mem, _t73, cpu->r[5]);
|
|
/* 0252FC90 */ _t74 = cpu->r[31] + 0x00000050u;
|
|
/* 0252FC90 */ rbrew_write32(cpu->mem, _t74, cpu->r[26]);
|
|
/* 0252FC94 */ _t75 = cpu->r[31] + 0x0000008Cu;
|
|
/* 0252FC94 */ rbrew_write32(cpu->mem, _t75, cpu->r[3]);
|
|
/* 0252FC98 */ _t76 = cpu->r[31] + 0x000000BCu;
|
|
/* 0252FC98 */ rbrew_write32(cpu->mem, _t76, cpu->r[25]);
|
|
/* 0252FC9C */ _t77 = cpu->r[31] + 0x000000A0u;
|
|
/* 0252FC9C */ rbrew_write32(cpu->mem, _t77, cpu->r[12]);
|
|
/* 0252FCA0 */ _t78 = cpu->r[11] + 0x00000004u;
|
|
/* 0252FCA0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t78);
|
|
/* 0252FCA4 */ _t79 = cpu->r[9] + 0x00000008u;
|
|
/* 0252FCA4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t79);
|
|
/* 0252FCA8 */ _t80 = cpu->r[31] + 0x000000A4u;
|
|
/* 0252FCA8 */ rbrew_write32(cpu->mem, _t80, cpu->r[0]);
|
|
/* 0252FCAC */ _t81 = cpu->r[31] + 0x00000078u;
|
|
/* 0252FCAC */ rbrew_write32(cpu->mem, _t81, cpu->r[9]);
|
|
/* 0252FCB0 */ _t82 = cpu->r[4] + 0x00000000u;
|
|
/* 0252FCB0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t82);
|
|
/* 0252FCB4 */ _t83 = cpu->r[11] + 0x00000008u;
|
|
/* 0252FCB4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t83);
|
|
/* 0252FCB8 */ _t84 = cpu->r[31] + 0x00000060u;
|
|
/* 0252FCB8 */ rbrew_write32(cpu->mem, _t84, cpu->r[7]);
|
|
/* 0252FCBC */ _t85 = cpu->r[31] + 0x000000A8u;
|
|
/* 0252FCBC */ rbrew_write32(cpu->mem, _t85, cpu->r[5]);
|
|
/* 0252FCC0 */ _t86 = cpu->r[31] + 0x00000098u;
|
|
/* 0252FCC0 */ rbrew_write32(cpu->mem, _t86, cpu->r[30]);
|
|
/* 0252FCC4 */ _t87 = cpu->r[31] + 0x0000009Cu;
|
|
/* 0252FCC4 */ rbrew_write32(cpu->mem, _t87, cpu->r[3]);
|
|
/* 0252FCC8 */ _t88 = cpu->r[31] + 0x000000B0u;
|
|
/* 0252FCC8 */ rbrew_write32(cpu->mem, _t88, cpu->r[27]);
|
|
/* 0252FCCC */ _t89 = cpu->r[31] + 0x000000B8u;
|
|
/* 0252FCCC */ rbrew_write32(cpu->mem, _t89, cpu->r[29]);
|
|
/* 0252FCD0 */ _t90 = cpu->r[11] + 0x0000000Cu;
|
|
/* 0252FCD0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t90);
|
|
/* 0252FCD4 */ _t91 = cpu->r[31] + 0x000000B4u;
|
|
/* 0252FCD4 */ rbrew_write32(cpu->mem, _t91, cpu->r[28]);
|
|
/* 0252FCD8 */ _t92 = cpu->r[31] + 0x000000ACu;
|
|
/* 0252FCD8 */ rbrew_write32(cpu->mem, _t92, cpu->r[6]);
|
|
/* 0252FCDC */ cpu->r[8] = 0x100C0000u;
|
|
/* 0252FCE0 */ _t93 = cpu->r[4] + 0x00000008u;
|
|
/* 0252FCE0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t93);
|
|
/* 0252FCE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0xFFFFFF40u);
|
|
/* 0252FCE8 */ _t94 = cpu->r[8] + 0x00003C24u;
|
|
/* 0252FCE8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t94);
|
|
/* 0252FCEC */ cpu->r[7] = 0x100C0000u;
|
|
/* 0252FCF0 */ _t95 = cpu->r[31] + 0x00000068u;
|
|
/* 0252FCF0 */ rbrew_write32(cpu->mem, _t95, cpu->r[0]);
|
|
/* 0252FCF4 */ cpu->r[3] = cpu->r[31] + 0x000000C0u;
|
|
/* 0252FCF8 */ _t96 = cpu->r[7] + 0x00003C90u;
|
|
/* 0252FCF8 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t96);
|
|
/* 0252FCFC */ _t97 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252FCFC */ _t98 = _t97 & 0x00000001u;
|
|
/* 0252FCFC */ if (_t98) goto L_0252FD00; else goto L_0252FD10;
|
|
L_0252FD00: ; // 0x252fd00
|
|
/* 0252FD00 */ cpu->r[3] = 0x00000010u;
|
|
/* 0252FD04 */ Gambit_fn_02801A78(cpu);
|
|
/* 0252FD08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252FD0C */ _t99 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252FD0C */ _t100 = _t99 & 0x00000001u;
|
|
/* 0252FD0C */ if (_t100) goto L_0252FD30; else goto L_0252FD10;
|
|
L_0252FD10: ; // 0x252fd10
|
|
/* 0252FD10 */ _t101 = cpu->r[3] + 0x00000004u;
|
|
/* 0252FD10 */ rbrew_write_f32(cpu->mem, _t101, cpu->f[30]);
|
|
/* 0252FD14 */ cpu->r[6] = 0x100C0000u;
|
|
/* 0252FD18 */ _t102 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0252FD18 */ rbrew_write_f32(cpu->mem, _t102, cpu->f[31]);
|
|
/* 0252FD1C */ cpu->r[5] = 0x100C0000u;
|
|
/* 0252FD20 */ _t103 = cpu->r[6] + 0x00003C8Cu;
|
|
/* 0252FD20 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t103);
|
|
/* 0252FD24 */ _t104 = cpu->r[5] + 0x00003CD4u;
|
|
/* 0252FD24 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t104);
|
|
/* 0252FD28 */ _t105 = cpu->r[3] + 0x00000000u;
|
|
/* 0252FD28 */ rbrew_write_f32(cpu->mem, _t105, cpu->f[11]);
|
|
/* 0252FD2C */ _t106 = cpu->r[3] + 0x00000008u;
|
|
/* 0252FD2C */ rbrew_write_f32(cpu->mem, _t106, cpu->f[10]);
|
|
L_0252FD30: ; // 0x252fd30
|
|
/* 0252FD30 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0xFFFFFF30u);
|
|
/* 0252FD34 */ cpu->r[3] = cpu->r[31] + 0x000000D0u;
|
|
/* 0252FD38 */ _t107 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252FD38 */ _t108 = _t107 & 0x00000001u;
|
|
/* 0252FD38 */ if (_t108) goto L_0252FD3C; else goto L_0252FD4C;
|
|
L_0252FD3C: ; // 0x252fd3c
|
|
/* 0252FD3C */ cpu->r[3] = 0x00000010u;
|
|
/* 0252FD40 */ Gambit_fn_02801A78(cpu);
|
|
/* 0252FD44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252FD48 */ _t109 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252FD48 */ _t110 = _t109 & 0x00000001u;
|
|
/* 0252FD48 */ if (_t110) goto L_0252FD6C; else goto L_0252FD4C;
|
|
L_0252FD4C: ; // 0x252fd4c
|
|
/* 0252FD4C */ _t111 = cpu->r[3] + 0x00000004u;
|
|
/* 0252FD4C */ rbrew_write_f32(cpu->mem, _t111, cpu->f[30]);
|
|
/* 0252FD50 */ cpu->r[12] = 0x100C0000u;
|
|
/* 0252FD54 */ _t112 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0252FD54 */ rbrew_write_f32(cpu->mem, _t112, cpu->f[31]);
|
|
/* 0252FD58 */ cpu->r[11] = 0x100C0000u;
|
|
/* 0252FD5C */ _t113 = cpu->r[12] + 0x00003CD4u;
|
|
/* 0252FD5C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t113);
|
|
/* 0252FD60 */ _t114 = cpu->r[11] + 0x00003C8Cu;
|
|
/* 0252FD60 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t114);
|
|
/* 0252FD64 */ _t115 = cpu->r[3] + 0x00000000u;
|
|
/* 0252FD64 */ rbrew_write_f32(cpu->mem, _t115, cpu->f[9]);
|
|
/* 0252FD68 */ _t116 = cpu->r[3] + 0x00000008u;
|
|
/* 0252FD68 */ rbrew_write_f32(cpu->mem, _t116, cpu->f[8]);
|
|
L_0252FD6C: ; // 0x252fd6c
|
|
/* 0252FD6C */ cpu->r[9] = 0x100C0000u;
|
|
/* 0252FD70 */ cpu->r[6] = 0x100C0000u;
|
|
/* 0252FD74 */ _t117 = cpu->r[9] + 0x00003CD8u;
|
|
/* 0252FD74 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t117);
|
|
/* 0252FD78 */ cpu->r[8] = 0x100C0000u;
|
|
/* 0252FD7C */ cpu->r[12] = 0x101F0000u;
|
|
/* 0252FD80 */ _t118 = cpu->r[6] + 0x00003CE4u;
|
|
/* 0252FD80 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t118);
|
|
/* 0252FD84 */ cpu->r[12] = cpu->r[12] + 0x00005BCCu;
|
|
/* 0252FD88 */ _t119 = cpu->r[8] + 0x00003CE0u;
|
|
/* 0252FD88 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t119);
|
|
/* 0252FD8C */ cpu->r[11] = 0x100C0000u;
|
|
/* 0252FD90 */ _t120 = cpu->r[12] + 0x00000008u;
|
|
/* 0252FD90 */ cpu->r[5] = rbrew_read32(cpu->mem, _t120);
|
|
/* 0252FD94 */ cpu->r[8] = 0x101F0000u;
|
|
/* 0252FD98 */ _t121 = cpu->r[11] + 0x00003CE8u;
|
|
/* 0252FD98 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t121);
|
|
/* 0252FD9C */ _t122 = cpu->r[31] + 0x000000E8u;
|
|
/* 0252FD9C */ rbrew_write32(cpu->mem, _t122, cpu->r[5]);
|
|
/* 0252FDA0 */ cpu->r[10] = 0x101F0000u;
|
|
/* 0252FDA4 */ _t123 = cpu->r[8] + 0xFFFF9B98u;
|
|
/* 0252FDA4 */ rbrew_write_f32(cpu->mem, _t123, cpu->f[13]);
|
|
/* 0252FDA4 */ cpu->r[8] = _t123;
|
|
/* 0252FDA8 */ _t124 = cpu->r[8] + 0x00000004u;
|
|
/* 0252FDA8 */ rbrew_write_f32(cpu->mem, _t124, cpu->f[12]);
|
|
/* 0252FDAC */ _t125 = cpu->r[10] + 0xFFFF9BC0u;
|
|
/* 0252FDAC */ rbrew_write_f32(cpu->mem, _t125, cpu->f[30]);
|
|
/* 0252FDAC */ cpu->r[10] = _t125;
|
|
/* 0252FDB0 */ cpu->r[7] = 0x101F0000u;
|
|
/* 0252FDB4 */ _t126 = cpu->r[12] + 0x00000004u;
|
|
/* 0252FDB4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t126);
|
|
/* 0252FDB8 */ _t127 = cpu->r[7] + 0xFFFF9BA0u;
|
|
/* 0252FDB8 */ rbrew_write_f32(cpu->mem, _t127, cpu->f[30]);
|
|
/* 0252FDB8 */ cpu->r[7] = _t127;
|
|
/* 0252FDBC */ cpu->r[5] = 0x100C0000u;
|
|
/* 0252FDC0 */ _t128 = cpu->r[7] + 0x00000004u;
|
|
/* 0252FDC0 */ rbrew_write_f32(cpu->mem, _t128, cpu->f[30]);
|
|
/* 0252FDC4 */ cpu->r[7] = 0x100C0000u;
|
|
/* 0252FDC8 */ _t129 = cpu->r[5] + 0x00003C44u;
|
|
/* 0252FDC8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t129);
|
|
/* 0252FDCC */ cpu->r[6] = 0x101F0000u;
|
|
/* 0252FDD0 */ _t130 = cpu->r[12] + 0x0000000Cu;
|
|
/* 0252FDD0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t130);
|
|
/* 0252FDD4 */ _t131 = cpu->r[7] + 0x00003C54u;
|
|
/* 0252FDD4 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t131);
|
|
/* 0252FDD8 */ cpu->r[7] = 0x101F0000u;
|
|
/* 0252FDDC */ _t132 = cpu->r[6] + 0xFFFF9C24u;
|
|
/* 0252FDDC */ rbrew_write_f32(cpu->mem, _t132, cpu->f[31]);
|
|
/* 0252FDDC */ cpu->r[6] = _t132;
|
|
/* 0252FDE0 */ _t133 = cpu->r[6] + 0x00000004u;
|
|
/* 0252FDE0 */ rbrew_write_f32(cpu->mem, _t133, cpu->f[31]);
|
|
/* 0252FDE4 */ _t134 = cpu->r[6] + 0x00000008u;
|
|
/* 0252FDE4 */ rbrew_write_f32(cpu->mem, _t134, cpu->f[31]);
|
|
/* 0252FDE8 */ _t135 = cpu->r[6] + 0x0000000Cu;
|
|
/* 0252FDE8 */ rbrew_write_f32(cpu->mem, _t135, cpu->f[11]);
|
|
/* 0252FDEC */ _t136 = cpu->r[10] + 0x00000004u;
|
|
/* 0252FDEC */ rbrew_write_f32(cpu->mem, _t136, cpu->f[30]);
|
|
/* 0252FDF0 */ cpu->r[6] = 0x100C0000u;
|
|
/* 0252FDF4 */ _t137 = cpu->r[12] + 0x00000000u;
|
|
/* 0252FDF4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t137);
|
|
/* 0252FDF8 */ _t138 = cpu->r[6] + 0x00003BDCu;
|
|
/* 0252FDF8 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t138);
|
|
/* 0252FDFC */ cpu->r[6] = 0x101F0000u;
|
|
/* 0252FE00 */ _t139 = cpu->r[7] + 0xFFFF9C34u;
|
|
/* 0252FE00 */ rbrew_write_f32(cpu->mem, _t139, cpu->f[31]);
|
|
/* 0252FE00 */ cpu->r[7] = _t139;
|
|
/* 0252FE04 */ _t140 = cpu->r[6] + 0xFFFF9BA8u;
|
|
/* 0252FE04 */ rbrew_write_f32(cpu->mem, _t140, cpu->f[10]);
|
|
/* 0252FE04 */ cpu->r[6] = _t140;
|
|
/* 0252FE08 */ cpu->r[12] = 0x101F0000u;
|
|
/* 0252FE0C */ _t141 = cpu->r[7] + 0x00000004u;
|
|
/* 0252FE0C */ rbrew_write_f32(cpu->mem, _t141, cpu->f[8]);
|
|
/* 0252FE10 */ _t142 = cpu->r[7] + 0x00000008u;
|
|
/* 0252FE10 */ rbrew_write_f32(cpu->mem, _t142, cpu->f[8]);
|
|
/* 0252FE14 */ cpu->r[11] = 0x100C0000u;
|
|
/* 0252FE18 */ _t143 = cpu->r[7] + 0x0000000Cu;
|
|
/* 0252FE18 */ rbrew_write_f32(cpu->mem, _t143, cpu->f[11]);
|
|
/* 0252FE1C */ _t144 = cpu->r[11] + 0x00003CDCu;
|
|
/* 0252FE1C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t144);
|
|
/* 0252FE20 */ _t145 = cpu->r[6] + 0x00000004u;
|
|
/* 0252FE20 */ rbrew_write_f32(cpu->mem, _t145, cpu->f[12]);
|
|
/* 0252FE24 */ _t146 = cpu->r[12] + 0xFFFF9B90u;
|
|
/* 0252FE24 */ rbrew_write_f32(cpu->mem, _t146, cpu->f[0]);
|
|
/* 0252FE24 */ cpu->r[12] = _t146;
|
|
/* 0252FE28 */ cpu->r[9] = 0x101F0000u;
|
|
/* 0252FE2C */ _t147 = cpu->r[31] + 0x000000E4u;
|
|
/* 0252FE2C */ rbrew_write32(cpu->mem, _t147, cpu->r[0]);
|
|
/* 0252FE30 */ _t148 = cpu->r[9] + 0xFFFF9BC8u;
|
|
/* 0252FE30 */ rbrew_write_f32(cpu->mem, _t148, cpu->f[8]);
|
|
/* 0252FE30 */ cpu->r[9] = _t148;
|
|
/* 0252FE34 */ cpu->r[11] = 0x101F0000u;
|
|
/* 0252FE38 */ _t149 = cpu->r[9] + 0x00000004u;
|
|
/* 0252FE38 */ rbrew_write_f32(cpu->mem, _t149, cpu->f[8]);
|
|
/* 0252FE3C */ cpu->r[9] = 0x100C0000u;
|
|
/* 0252FE40 */ _t150 = cpu->r[31] + 0x000000E0u;
|
|
/* 0252FE40 */ rbrew_write32(cpu->mem, _t150, cpu->r[10]);
|
|
/* 0252FE44 */ _t151 = cpu->r[11] + 0xFFFF9BB8u;
|
|
/* 0252FE44 */ rbrew_write_f32(cpu->mem, _t151, cpu->f[8]);
|
|
/* 0252FE44 */ cpu->r[11] = _t151;
|
|
/* 0252FE48 */ cpu->r[10] = 0x100C0000u;
|
|
/* 0252FE4C */ _t152 = cpu->r[11] + 0x00000004u;
|
|
/* 0252FE4C */ rbrew_write_f32(cpu->mem, _t152, cpu->f[8]);
|
|
/* 0252FE50 */ cpu->r[11] = 0x101F0000u;
|
|
/* 0252FE54 */ _t153 = cpu->r[9] + 0x00003CF8u;
|
|
/* 0252FE54 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t153);
|
|
/* 0252FE58 */ cpu->r[9] = 0x101F0000u;
|
|
/* 0252FE5C */ _t154 = cpu->r[10] + 0x00003CF0u;
|
|
/* 0252FE5C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t154);
|
|
/* 0252FE60 */ cpu->r[9] = cpu->r[9] + 0xFFFF9BD0u;
|
|
/* 0252FE64 */ _t155 = cpu->r[11] + 0xFFFF9C5Cu;
|
|
/* 0252FE64 */ rbrew_write_f32(cpu->mem, _t155, cpu->f[0]);
|
|
/* 0252FE64 */ cpu->r[11] = _t155;
|
|
/* 0252FE68 */ cpu->r[6] = 0x101F0000u;
|
|
/* 0252FE6C */ _t156 = cpu->r[31] + 0x000000ECu;
|
|
/* 0252FE6C */ rbrew_write32(cpu->mem, _t156, cpu->r[8]);
|
|
/* 0252FE70 */ cpu->r[0] = 0x100C0000u;
|
|
/* 0252FE74 */ cpu->r[5] = 0x101F0000u;
|
|
/* 0252FE78 */ _t157 = cpu->r[12] + 0x00000004u;
|
|
/* 0252FE78 */ rbrew_write_f32(cpu->mem, _t157, cpu->f[13]);
|
|
/* 0252FE7C */ cpu->r[8] = 0x100C0000u;
|
|
/* 0252FE80 */ _t158 = cpu->r[5] + 0xFFFF9BB0u;
|
|
/* 0252FE80 */ rbrew_write_f32(cpu->mem, _t158, cpu->f[9]);
|
|
/* 0252FE80 */ cpu->r[5] = _t158;
|
|
/* 0252FE84 */ cpu->r[0] = cpu->r[0] + 0x00003A70u;
|
|
/* 0252FE88 */ _t159 = cpu->r[5] + 0x00000004u;
|
|
/* 0252FE88 */ rbrew_write_f32(cpu->mem, _t159, cpu->f[13]);
|
|
/* 0252FE8C */ cpu->r[5] = 0x101F0000u;
|
|
/* 0252FE90 */ _t160 = cpu->r[9] + 0x00000004u;
|
|
/* 0252FE90 */ rbrew_write32(cpu->mem, _t160, cpu->r[0]);
|
|
/* 0252FE94 */ cpu->r[12] = 0x100C0000u;
|
|
/* 0252FE98 */ _t161 = cpu->r[11] + 0x00000004u;
|
|
/* 0252FE98 */ rbrew_write_f32(cpu->mem, _t161, cpu->f[8]);
|
|
/* 0252FE9C */ cpu->r[12] = cpu->r[12] + 0x00003CFCu;
|
|
/* 0252FEA0 */ _t162 = cpu->r[8] + 0x00003CF4u;
|
|
/* 0252FEA0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t162);
|
|
/* 0252FEA4 */ cpu->r[8] = 0x101F0000u;
|
|
/* 0252FEA8 */ _t163 = cpu->r[5] + 0xFFFF9C68u;
|
|
/* 0252FEA8 */ rbrew_write_f32(cpu->mem, _t163, cpu->f[11]);
|
|
/* 0252FEA8 */ cpu->r[5] = _t163;
|
|
/* 0252FEAC */ cpu->r[8] = cpu->r[8] + 0xFFFF9BD8u;
|
|
/* 0252FEB0 */ cpu->r[6] = cpu->r[6] + 0xFFFF9BE0u;
|
|
/* 0252FEB4 */ _t164 = cpu->r[9] + 0x00000000u;
|
|
/* 0252FEB4 */ rbrew_write32(cpu->mem, _t164, cpu->r[12]);
|
|
/* 0252FEB8 */ cpu->r[12] = 0x100C0000u;
|
|
/* 0252FEBC */ _t165 = cpu->r[6] + 0x00000004u;
|
|
/* 0252FEBC */ rbrew_write32(cpu->mem, _t165, cpu->r[0]);
|
|
/* 0252FEC0 */ _t166 = cpu->r[12] + 0x00003CECu;
|
|
/* 0252FEC0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t166);
|
|
/* 0252FEC4 */ cpu->r[10] = 0x101F0000u;
|
|
/* 0252FEC8 */ _t167 = cpu->r[5] + 0x00000004u;
|
|
/* 0252FEC8 */ rbrew_write_f32(cpu->mem, _t167, cpu->f[8]);
|
|
/* 0252FECC */ cpu->r[12] = 0x101F0000u;
|
|
/* 0252FED0 */ _t168 = cpu->r[10] + 0xFFFF9C50u;
|
|
/* 0252FED0 */ rbrew_write_f32(cpu->mem, _t168, cpu->f[13]);
|
|
/* 0252FED0 */ cpu->r[10] = _t168;
|
|
/* 0252FED4 */ cpu->r[12] = cpu->r[12] + 0xFFFF9BF0u;
|
|
/* 0252FED8 */ _t169 = cpu->r[8] + 0x00000004u;
|
|
/* 0252FED8 */ rbrew_write32(cpu->mem, _t169, cpu->r[0]);
|
|
/* 0252FEDC */ cpu->r[9] = 0x101F0000u;
|
|
/* 0252FEE0 */ _t170 = cpu->r[12] + 0x00000004u;
|
|
/* 0252FEE0 */ rbrew_write32(cpu->mem, _t170, cpu->r[0]);
|
|
/* 0252FEE4 */ cpu->r[7] = 0x100C0000u;
|
|
/* 0252FEE8 */ _t171 = cpu->r[9] + 0xFFFF9C44u;
|
|
/* 0252FEE8 */ rbrew_write_f32(cpu->mem, _t171, cpu->f[12]);
|
|
/* 0252FEE8 */ cpu->r[9] = _t171;
|
|
/* 0252FEEC */ cpu->r[7] = cpu->r[7] + 0x00003D04u;
|
|
/* 0252FEF0 */ _t172 = cpu->r[5] + 0x00000008u;
|
|
/* 0252FEF0 */ rbrew_write_f32(cpu->mem, _t172, cpu->f[0]);
|
|
/* 0252FEF4 */ cpu->r[5] = 0x101F0000u;
|
|
/* 0252FEF8 */ _t173 = cpu->r[10] + 0x00000004u;
|
|
/* 0252FEF8 */ rbrew_write_f32(cpu->mem, _t173, cpu->f[8]);
|
|
/* 0252FEFC */ cpu->r[5] = cpu->r[5] + 0xFFFF9BE8u;
|
|
/* 0252FF00 */ cpu->r[3] = 0x101F0000u;
|
|
/* 0252FF04 */ _t174 = cpu->r[8] + 0x00000000u;
|
|
/* 0252FF04 */ rbrew_write32(cpu->mem, _t174, cpu->r[7]);
|
|
/* 0252FF08 */ cpu->r[8] = 0x100C0000u;
|
|
/* 0252FF0C */ _t175 = cpu->r[5] + 0x00000004u;
|
|
/* 0252FF0C */ rbrew_write32(cpu->mem, _t175, cpu->r[0]);
|
|
/* 0252FF10 */ cpu->r[8] = cpu->r[8] + 0x00003D0Cu;
|
|
/* 0252FF14 */ _t176 = cpu->r[10] + 0x00000008u;
|
|
/* 0252FF14 */ rbrew_write_f32(cpu->mem, _t176, cpu->f[12]);
|
|
/* 0252FF18 */ _t177 = cpu->r[5] + 0x00000000u;
|
|
/* 0252FF18 */ rbrew_write32(cpu->mem, _t177, cpu->r[7]);
|
|
/* 0252FF1C */ cpu->r[7] = 0x02530000u;
|
|
/* 0252FF20 */ _t178 = cpu->r[11] + 0x00000008u;
|
|
/* 0252FF20 */ rbrew_write_f32(cpu->mem, _t178, cpu->f[13]);
|
|
/* 0252FF24 */ cpu->r[11] = 0x100C0000u;
|
|
/* 0252FF28 */ cpu->r[3] = cpu->r[3] + 0xFFFF9C74u;
|
|
/* 0252FF2C */ _t179 = cpu->r[6] + 0x00000000u;
|
|
/* 0252FF2C */ rbrew_write32(cpu->mem, _t179, cpu->r[8]);
|
|
/* 0252FF30 */ cpu->r[11] = cpu->r[11] + 0x00003D14u;
|
|
/* 0252FF34 */ _t180 = cpu->r[3] + 0x00000004u;
|
|
/* 0252FF34 */ rbrew_write32(cpu->mem, _t180, cpu->r[0]);
|
|
/* 0252FF38 */ cpu->r[7] = cpu->r[7] + 0x000007F4u;
|
|
/* 0252FF3C */ _t181 = cpu->r[12] + 0x00000000u;
|
|
/* 0252FF3C */ rbrew_write32(cpu->mem, _t181, cpu->r[11]);
|
|
/* 0252FF40 */ cpu->r[12] = 0x100C0000u;
|
|
/* 0252FF44 */ _t182 = cpu->r[9] + 0x00000004u;
|
|
/* 0252FF44 */ rbrew_write_f32(cpu->mem, _t182, cpu->f[8]);
|
|
/* 0252FF48 */ cpu->r[5] = 0x100C0000u;
|
|
/* 0252FF4C */ _t183 = cpu->r[3] + 0x00000010u;
|
|
/* 0252FF4C */ rbrew_write32(cpu->mem, _t183, cpu->r[7]);
|
|
/* 0252FF50 */ cpu->r[5] = cpu->r[5] + 0x00003BBCu;
|
|
/* 0252FF54 */ _t184 = cpu->r[9] + 0x00000008u;
|
|
/* 0252FF54 */ rbrew_write_f32(cpu->mem, _t184, cpu->f[11]);
|
|
/* 0252FF58 */ _t185 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0252FF58 */ rbrew_write32(cpu->mem, _t185, cpu->r[0]);
|
|
/* 0252FF5C */ cpu->r[12] = cpu->r[12] + 0x00003D1Cu;
|
|
/* 0252FF60 */ _t186 = cpu->r[3] + 0x00000008u;
|
|
/* 0252FF60 */ rbrew_write32(cpu->mem, _t186, cpu->r[5]);
|
|
/* 0252FF64 */ _t187 = cpu->r[3] + 0x00000000u;
|
|
/* 0252FF64 */ rbrew_write32(cpu->mem, _t187, cpu->r[12]);
|
|
/* 0252FF68 */ Gambit_fn_027DB2F8(cpu);
|
|
/* 0252FF6C */ cpu->r[3] = 0x101C0000u;
|
|
/* 0252FF70 */ cpu->r[3] = cpu->r[3] + 0x000068CCu;
|
|
/* 0252FF74 */ Gambit_fn_02C83090(cpu);
|
|
/* 0252FF78 */ /* nop */
|
|
/* 0252FF7C */ _t188 = cpu->r[1] + 0x00000030u;
|
|
/* 0252FF7C */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t188);
|
|
/* 0252FF80 */ _t189 = cpu->r[1] + 0x00000040u;
|
|
/* 0252FF80 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t189);
|
|
/* 0252FF84 */ _t190 = cpu->r[1] + 0x00000028u;
|
|
/* 0252FF84 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t190);
|
|
/* 0252FF88 */ _t191 = cpu->r[1] + 0x00000038u;
|
|
/* 0252FF88 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t191);
|
|
/* 0252FF8C */ _t192 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0252FF8C */ _t193 = _t192 & 0x00000001u;
|
|
/* 0252FF8C */ if (_t193) goto L_0252FF90; // else: addr-0 trap, fall-through
|
|
L_0252FF90: ; // 0x252ff90
|
|
/* 0252FF90 */ _t194 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0252FF90 */ cpu->r[0] = rbrew_read32(cpu->mem, _t194);
|
|
/* 0252FF94 */ cpu->lr = cpu->r[0];
|
|
/* 0252FF98 */ cpu->r[1] = cpu->r[1] + 0x00000048u;
|
|
/* 0252FF9C */ return;
|
|
}
|
|
|
|
// fn_0252FFA0 @ 0x252ffa0
|
|
void Gambit_fn_0252FFA0(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_0252FFA0: ; // 0x252ffa0
|
|
/* 0252FFA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252FFA4 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252FFA4 */ _t1 = _t0 & 0x00000001u;
|
|
/* 0252FFA4 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0252FFA4 */ goto L_0252FFA8;
|
|
L_0252FFA8: ; // 0x252ffa8
|
|
/* 0252FFA8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0252FFA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0252FFAC */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252FFAC */ _t3 = _t2 & 0x00000001u;
|
|
/* 0252FFAC */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0252FFAC */ goto L_0252FFB0;
|
|
L_0252FFB0: ; // 0x252ffb0
|
|
/* 0252FFB0 */ 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_0252FFB4 @ 0x252ffb4
|
|
void Gambit_fn_0252FFB4(CPUState* cpu) {
|
|
L_0252FFB4: ; // 0x252ffb4
|
|
/* 0252FFB4 */ return;
|
|
}
|
|
|
|
// fn_0252FFB8 @ 0x252ffb8
|
|
void Gambit_fn_0252FFB8(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_0252FFB8: ; // 0x252ffb8
|
|
/* 0252FFB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252FFBC */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252FFBC */ _t1 = _t0 & 0x00000001u;
|
|
/* 0252FFBC */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0252FFBC */ goto L_0252FFC0;
|
|
L_0252FFC0: ; // 0x252ffc0
|
|
/* 0252FFC0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0252FFC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0252FFC4 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252FFC4 */ _t3 = _t2 & 0x00000001u;
|
|
/* 0252FFC4 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0252FFC4 */ goto L_0252FFC8;
|
|
L_0252FFC8: ; // 0x252ffc8
|
|
/* 0252FFC8 */ 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_0252FFCC @ 0x252ffcc
|
|
void Gambit_fn_0252FFCC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_0252FFCC: ; // 0x252ffcc
|
|
/* 0252FFCC */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 0252FFCC */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0252FFD0 */ _t1 = cpu->r[3] + 0x00000008u;
|
|
/* 0252FFD0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0252FFD4 */ cpu->r[12] = cpu->r[11] + cpu->r[12];
|
|
/* 0252FFD8 */ cpu->r[11] = 0x10110000u;
|
|
/* 0252FFDC */ _t2 = cpu->r[11] + 0x00007399u;
|
|
/* 0252FFDC */ cpu->r[0] = rbrew_read8(cpu->mem, _t2);
|
|
/* 0252FFE0 */ _t3 = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 0252FFE0 */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[0]);
|
|
/* 0252FFE4 */ return;
|
|
}
|
|
|
|
// fn_0252FFE8 @ 0x252ffe8
|
|
void Gambit_fn_0252FFE8(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_0252FFE8: ; // 0x252ffe8
|
|
/* 0252FFE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0252FFEC */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252FFEC */ _t1 = _t0 & 0x00000001u;
|
|
/* 0252FFEC */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0252FFEC */ goto L_0252FFF0;
|
|
L_0252FFF0: ; // 0x252fff0
|
|
/* 0252FFF0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0252FFF0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0252FFF4 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0252FFF4 */ _t3 = _t2 & 0x00000001u;
|
|
/* 0252FFF4 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0252FFF4 */ goto L_0252FFF8;
|
|
L_0252FFF8: ; // 0x252fff8
|
|
/* 0252FFF8 */ 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_0252FFFC @ 0x252fffc
|
|
void Gambit_fn_0252FFFC(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_0252FFFC: ; // 0x252fffc
|
|
/* 0252FFFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02530000 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02530000 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02530000 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02530000 */ goto L_02530004;
|
|
L_02530004: ; // 0x2530004
|
|
/* 02530004 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02530004 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02530008 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02530008 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02530008 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02530008 */ goto L_0253000C;
|
|
L_0253000C: ; // 0x253000c
|
|
/* 0253000C */ 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_02530010 @ 0x2530010
|
|
void Gambit_fn_02530010(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_02530010: ; // 0x2530010
|
|
/* 02530010 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02530014 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02530014 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02530014 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02530014 */ goto L_02530018;
|
|
L_02530018: ; // 0x2530018
|
|
/* 02530018 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02530018 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0253001C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0253001C */ _t3 = _t2 & 0x00000001u;
|
|
/* 0253001C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0253001C */ goto L_02530020;
|
|
L_02530020: ; // 0x2530020
|
|
/* 02530020 */ 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_02530024 @ 0x2530024
|
|
void Gambit_fn_02530024(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_02530024: ; // 0x2530024
|
|
/* 02530024 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02530028 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02530028 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02530028 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02530028 */ goto L_0253002C;
|
|
L_0253002C: ; // 0x253002c
|
|
/* 0253002C */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0253002C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02530030 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02530030 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02530030 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02530030 */ goto L_02530034;
|
|
L_02530034: ; // 0x2530034
|
|
/* 02530034 */ 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_02530038 @ 0x2530038
|
|
void Gambit_fn_02530038(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_02530038: ; // 0x2530038
|
|
/* 02530038 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0253003C */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0253003C */ _t1 = _t0 & 0x00000001u;
|
|
/* 0253003C */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0253003C */ goto L_02530040;
|
|
L_02530040: ; // 0x2530040
|
|
/* 02530040 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02530040 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02530044 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02530044 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02530044 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02530044 */ goto L_02530048;
|
|
L_02530048: ; // 0x2530048
|
|
/* 02530048 */ 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_0253004C @ 0x253004c
|
|
void Gambit_fn_0253004C(CPUState* cpu) {
|
|
L_0253004C: ; // 0x253004c
|
|
/* 0253004C */ return;
|
|
}
|
|
|
|
// fn_02530050 @ 0x2530050
|
|
void Gambit_fn_02530050(CPUState* cpu) {
|
|
L_02530050: ; // 0x2530050
|
|
/* 02530050 */ return;
|
|
}
|
|
|
|
// fn_02530054 @ 0x2530054
|
|
void Gambit_fn_02530054(CPUState* cpu) {
|
|
L_02530054: ; // 0x2530054
|
|
/* 02530054 */ return;
|
|
}
|
|
|
|
// fn_02530058 @ 0x2530058
|
|
void Gambit_fn_02530058(CPUState* cpu) {
|
|
L_02530058: ; // 0x2530058
|
|
/* 02530058 */ return;
|
|
}
|
|
|
|
// fn_0253005C @ 0x253005c
|
|
void Gambit_fn_0253005C(CPUState* cpu) {
|
|
L_0253005C: ; // 0x253005c
|
|
/* 0253005C */ return;
|
|
}
|
|
|
|
// fn_02530060 @ 0x2530060
|
|
void Gambit_fn_02530060(CPUState* cpu) {
|
|
L_02530060: ; // 0x2530060
|
|
/* 02530060 */ return;
|
|
}
|
|
|
|
// fn_02530064 @ 0x2530064
|
|
void Gambit_fn_02530064(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_02530064: ; // 0x2530064
|
|
/* 02530064 */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 02530064 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02530068 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0253006C */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0253006C */ _t2 = _t1 & 0x00000001u;
|
|
/* 0253006C */ if (_t2) goto L_02530078; else goto L_02530070;
|
|
L_02530070: ; // 0x2530070
|
|
/* 02530070 */ cpu->r[3] = cpu->r[12] + 0x00000034u;
|
|
/* 02530074 */ return;
|
|
L_02530078: ; // 0x2530078
|
|
/* 02530078 */ cpu->r[3] = 0x00000000u;
|
|
/* 0253007C */ return;
|
|
}
|
|
|
|
// fn_02530080 @ 0x2530080
|
|
void Gambit_fn_02530080(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_02530080: ; // 0x2530080
|
|
/* 02530080 */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 02530080 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02530084 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02530088 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02530088 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02530088 */ if (_t2) goto L_02530094; else goto L_0253008C;
|
|
L_0253008C: ; // 0x253008c
|
|
/* 0253008C */ cpu->r[3] = cpu->r[12] + 0x00000064u;
|
|
/* 02530090 */ return;
|
|
L_02530094: ; // 0x2530094
|
|
/* 02530094 */ cpu->r[3] = 0x00000000u;
|
|
/* 02530098 */ return;
|
|
}
|
|
|
|
// fn_0253009C @ 0x253009c
|
|
void Gambit_fn_0253009C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0253009C: ; // 0x253009c
|
|
/* 0253009C */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0253009C */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 025300A0 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 025300A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 025300A4 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025300A4 */ _t2 = _t1 & 0x00000001u;
|
|
/* 025300A4 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 025300A4 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 025300A4 */ goto L_025300A8;
|
|
L_025300A8: ; // 0x25300a8
|
|
/* 025300A8 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 025300A8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 025300AC */ _t5 = cpu->r[12] + 0x0000004Cu;
|
|
/* 025300AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 025300B0 */ cpu->ctr = cpu->r[0];
|
|
/* 025300B4 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_025300B8 @ 0x25300b8
|
|
void Gambit_fn_025300B8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_025300B8: ; // 0x25300b8
|
|
/* 025300B8 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 025300B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 025300BC */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Du, 0x0000001Fu, 0x0000001Fu);
|
|
/* 025300BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 025300C0 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025300C0 */ _t2 = _t1 & 0x00000001u;
|
|
/* 025300C0 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 025300C0 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 025300C0 */ goto L_025300C4;
|
|
L_025300C4: ; // 0x25300c4
|
|
/* 025300C4 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 025300C4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 025300C8 */ _t5 = cpu->r[12] + 0x0000005Cu;
|
|
/* 025300C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 025300CC */ cpu->ctr = cpu->r[0];
|
|
/* 025300D0 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_025300D4 @ 0x25300d4
|
|
void Gambit_fn_025300D4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_025300D4: ; // 0x25300d4
|
|
/* 025300D4 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 025300D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 025300D8 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Au, 0x0000001Fu, 0x0000001Fu);
|
|
/* 025300D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 025300DC */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025300DC */ _t2 = _t1 & 0x00000001u;
|
|
/* 025300DC */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 025300DC */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 025300DC */ goto L_025300E0;
|
|
L_025300E0: ; // 0x25300e0
|
|
/* 025300E0 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 025300E0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 025300E4 */ _t5 = cpu->r[11] + 0x00000074u;
|
|
/* 025300E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 025300E8 */ cpu->ctr = cpu->r[0];
|
|
/* 025300EC */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_025300F0 @ 0x25300f0
|
|
void Gambit_fn_025300F0(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_025300F0: ; // 0x25300f0
|
|
/* 025300F0 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 025300F0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 025300F4 */ _t1 = cpu->r[12] + 0x0000002Cu;
|
|
/* 025300F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 025300F8 */ cpu->ctr = cpu->r[0];
|
|
/* 025300FC */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02530100 @ 0x2530100
|
|
void Gambit_fn_02530100(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02530100: ; // 0x2530100
|
|
/* 02530100 */ cpu->r[0] = cpu->lr;
|
|
/* 02530104 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02530104 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02530104 */ cpu->r[1] = _t0;
|
|
/* 02530108 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02530108 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0253010C */ cpu->r[31] = cpu->r[3];
|
|
/* 02530110 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02530110 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02530114 */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02530114 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02530118 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 0253011C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0253011C */ _t5 = _t4 & 0x00000001u;
|
|
/* 0253011C */ if (_t5) goto L_02530120; else goto L_0253013C;
|
|
L_02530120: ; // 0x2530120
|
|
/* 02530120 */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 02530120 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02530124 */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 02530124 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02530128 */ cpu->ctr = cpu->r[0];
|
|
/* 0253012C */ cpu->r[3] = cpu->r[31];
|
|
/* 02530130 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02530134 */ cpu->r[0] = 0x00000002u;
|
|
/* 02530138 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02530138 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_0253013C: ; // 0x253013c
|
|
/* 0253013C */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0253013C */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02530140 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02530140 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02530144 */ cpu->lr = cpu->r[0];
|
|
/* 02530148 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0253014C */ return;
|
|
}
|
|
|
|
// fn_02530104 @ 0x2530104
|
|
void Gambit_fn_02530104(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02530104: ; // 0x2530104
|
|
/* 02530104 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02530104 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02530104 */ cpu->r[1] = _t0;
|
|
/* 02530108 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02530108 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0253010C */ cpu->r[31] = cpu->r[3];
|
|
/* 02530110 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02530110 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02530114 */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02530114 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02530118 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 0253011C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0253011C */ _t5 = _t4 & 0x00000001u;
|
|
/* 0253011C */ if (_t5) goto L_02530120; else goto L_0253013C;
|
|
L_02530120: ; // 0x2530120
|
|
/* 02530120 */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 02530120 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02530124 */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 02530124 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02530128 */ cpu->ctr = cpu->r[0];
|
|
/* 0253012C */ cpu->r[3] = cpu->r[31];
|
|
/* 02530130 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02530134 */ cpu->r[0] = 0x00000002u;
|
|
/* 02530138 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02530138 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_0253013C: ; // 0x253013c
|
|
/* 0253013C */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0253013C */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02530140 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02530140 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02530144 */ cpu->lr = cpu->r[0];
|
|
/* 02530148 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0253014C */ return;
|
|
}
|
|
|
|
// fn_02530158 @ 0x2530158
|
|
void Gambit_fn_02530158(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_02530158: ; // 0x2530158
|
|
/* 02530158 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0253015C */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0253015C */ _t1 = _t0 & 0x00000001u;
|
|
/* 0253015C */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0253015C */ goto L_02530160;
|
|
L_02530160: ; // 0x2530160
|
|
/* 02530160 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02530160 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02530164 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02530164 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02530164 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02530164 */ goto L_02530168;
|
|
L_02530168: ; // 0x2530168
|
|
/* 02530168 */ 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_0253016C @ 0x253016c
|
|
void Gambit_fn_0253016C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0253016C: ; // 0x253016c
|
|
/* 0253016C */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0253016C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02530170 */ _t1 = cpu->r[12] + 0x0000008Cu;
|
|
/* 02530170 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02530174 */ cpu->ctr = cpu->r[0];
|
|
/* 02530178 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0253017C @ 0x253017c
|
|
void Gambit_fn_0253017C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0253017C: ; // 0x253017c
|
|
/* 0253017C */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0253017C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02530180 */ _t1 = cpu->r[12] + 0x00000124u;
|
|
/* 02530180 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02530184 */ cpu->ctr = cpu->r[0];
|
|
/* 02530188 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0253018C @ 0x253018c
|
|
void Gambit_fn_0253018C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0253018C: ; // 0x253018c
|
|
/* 0253018C */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0253018C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02530190 */ _t1 = cpu->r[12] + 0x00000124u;
|
|
/* 02530190 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02530194 */ cpu->ctr = cpu->r[0];
|
|
/* 02530198 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0253019C @ 0x253019c
|
|
void Gambit_fn_0253019C(CPUState* cpu) {
|
|
L_0253019C: ; // 0x253019c
|
|
/* 0253019C */ cpu->r[3] = 0x00000001u;
|
|
/* 025301A0 */ return;
|
|
}
|
|
|
|
// fn_025301A4 @ 0x25301a4
|
|
void Gambit_fn_025301A4(CPUState* cpu) {
|
|
L_025301A4: ; // 0x25301a4
|
|
/* 025301A4 */ return;
|
|
}
|
|
|
|
// fn_025301A8 @ 0x25301a8
|
|
void Gambit_fn_025301A8(CPUState* cpu) {
|
|
L_025301A8: ; // 0x25301a8
|
|
/* 025301A8 */ return;
|
|
}
|
|
|
|
// fn_025301AC @ 0x25301ac
|
|
void Gambit_fn_025301AC(CPUState* cpu) {
|
|
L_025301AC: ; // 0x25301ac
|
|
/* 025301AC */ return;
|
|
}
|
|
|
|
// fn_025301B0 @ 0x25301b0
|
|
void Gambit_fn_025301B0(CPUState* cpu) {
|
|
L_025301B0: ; // 0x25301b0
|
|
/* 025301B0 */ cpu->r[3] = 0x00000001u;
|
|
/* 025301B4 */ return;
|
|
}
|
|
|
|
// fn_025301B8 @ 0x25301b8
|
|
void Gambit_fn_025301B8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_025301B8: ; // 0x25301b8
|
|
/* 025301B8 */ cpu->r[10] = 0x101F0000u;
|
|
/* 025301BC */ _t0 = cpu->r[10] + 0x00006338u;
|
|
/* 025301BC */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 025301BC */ cpu->r[10] = _t0;
|
|
/* 025301C0 */ _t1 = cpu->r[3] + 0x00000000u;
|
|
/* 025301C0 */ rbrew_write32(cpu->mem, _t1, cpu->r[11]);
|
|
/* 025301C4 */ _t2 = cpu->r[10] + 0x00000004u;
|
|
/* 025301C4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 025301C8 */ _t3 = cpu->r[3] + 0x00000004u;
|
|
/* 025301C8 */ rbrew_write32(cpu->mem, _t3, cpu->r[12]);
|
|
/* 025301CC */ _t4 = cpu->r[10] + 0x00000008u;
|
|
/* 025301CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 025301D0 */ _t5 = cpu->r[3] + 0x00000008u;
|
|
/* 025301D0 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 025301D4 */ return;
|
|
}
|
|
|
|
// fn_025301D8 @ 0x25301d8
|
|
void Gambit_fn_025301D8(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_025301D8: ; // 0x25301d8
|
|
/* 025301D8 */ _t0 = cpu->r[3] + 0x00000140u;
|
|
/* 025301D8 */ cpu->r[3] = rbrew_read8(cpu->mem, _t0);
|
|
/* 025301DC */ return;
|
|
}
|
|
|
|
// fn_025301E0 @ 0x25301e0
|
|
void Gambit_fn_025301E0(CPUState* cpu) {
|
|
L_025301E0: ; // 0x25301e0
|
|
/* 025301E0 */ cpu->r[3] = 0x00000001u;
|
|
/* 025301E4 */ return;
|
|
}
|
|
|
|
// fn_025301E8 @ 0x25301e8
|
|
void Gambit_fn_025301E8(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_025301E8: ; // 0x25301e8
|
|
/* 025301E8 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 025301E8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 025301EC */ _t1 = cpu->r[12] + 0x00000234u;
|
|
/* 025301EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 025301F0 */ cpu->ctr = cpu->r[0];
|
|
/* 025301F4 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_025301F8 @ 0x25301f8
|
|
void Gambit_fn_025301F8(CPUState* cpu) {
|
|
L_025301F8: ; // 0x25301f8
|
|
/* 025301F8 */ return;
|
|
}
|
|
|
|
// fn_025301FC @ 0x25301fc
|
|
void Gambit_fn_025301FC(CPUState* cpu) {
|
|
L_025301FC: ; // 0x25301fc
|
|
/* 025301FC */ return;
|
|
}
|
|
|
|
// fn_02530200 @ 0x2530200
|
|
void Gambit_fn_02530200(CPUState* cpu) {
|
|
L_02530200: ; // 0x2530200
|
|
/* 02530200 */ return;
|
|
}
|
|
|
|
// fn_02530204 @ 0x2530204
|
|
void Gambit_fn_02530204(CPUState* cpu) {
|
|
L_02530204: ; // 0x2530204
|
|
/* 02530204 */ return;
|
|
}
|
|
|
|
// fn_02530208 @ 0x2530208
|
|
void Gambit_fn_02530208(CPUState* cpu) {
|
|
L_02530208: ; // 0x2530208
|
|
/* 02530208 */ return;
|
|
}
|
|
|
|
// fn_0253020C @ 0x253020c
|
|
void Gambit_fn_0253020C(CPUState* cpu) {
|
|
L_0253020C: ; // 0x253020c
|
|
/* 0253020C */ return;
|
|
}
|
|
|
|
// fn_02530210 @ 0x2530210
|
|
void Gambit_fn_02530210(CPUState* cpu) {
|
|
L_02530210: ; // 0x2530210
|
|
/* 02530210 */ return;
|
|
}
|
|
|
|
// fn_02530214 @ 0x2530214
|
|
void Gambit_fn_02530214(CPUState* cpu) {
|
|
L_02530214: ; // 0x2530214
|
|
/* 02530214 */ return;
|
|
}
|
|
|
|
// fn_02530218 @ 0x2530218
|
|
void Gambit_fn_02530218(CPUState* cpu) {
|
|
L_02530218: ; // 0x2530218
|
|
/* 02530218 */ return;
|
|
}
|
|
|
|
// fn_0253021C @ 0x253021c
|
|
void Gambit_fn_0253021C(CPUState* cpu) {
|
|
L_0253021C: ; // 0x253021c
|
|
/* 0253021C */ return;
|
|
}
|
|
|
|
// fn_02530220 @ 0x2530220
|
|
void Gambit_fn_02530220(CPUState* cpu) {
|
|
L_02530220: ; // 0x2530220
|
|
/* 02530220 */ return;
|
|
}
|
|
|
|
// fn_02530224 @ 0x2530224
|
|
void Gambit_fn_02530224(CPUState* cpu) {
|
|
L_02530224: ; // 0x2530224
|
|
/* 02530224 */ cpu->r[3] = 0x00000001u;
|
|
/* 02530228 */ return;
|
|
}
|
|
|
|
// fn_0253022C @ 0x253022c
|
|
void Gambit_fn_0253022C(CPUState* cpu) {
|
|
L_0253022C: ; // 0x253022c
|
|
/* 0253022C */ cpu->r[3] = 0x00000000u;
|
|
/* 02530230 */ return;
|
|
}
|
|
|
|
// fn_02530234 @ 0x2530234
|
|
void Gambit_fn_02530234(CPUState* cpu) {
|
|
L_02530234: ; // 0x2530234
|
|
/* 02530234 */ cpu->r[3] = 0x00000000u;
|
|
/* 02530238 */ return;
|
|
}
|
|
|
|
// fn_0253023C @ 0x253023c
|
|
void Gambit_fn_0253023C(CPUState* cpu) {
|
|
L_0253023C: ; // 0x253023c
|
|
/* 0253023C */ cpu->r[3] = 0x00000000u;
|
|
/* 02530240 */ return;
|
|
}
|
|
|
|
// fn_02530244 @ 0x2530244
|
|
void Gambit_fn_02530244(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02530244: ; // 0x2530244
|
|
/* 02530244 */ _t0 = cpu->r[3] + 0x000000E4u;
|
|
/* 02530244 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 02530248 */ return;
|
|
}
|
|
|
|
// fn_0253024C @ 0x253024c
|
|
void Gambit_fn_0253024C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0253024C: ; // 0x253024c
|
|
/* 0253024C */ _t0 = cpu->r[4] + 0x00000078u;
|
|
/* 0253024C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02530250 */ _t1 = cpu->r[3] + 0x00000000u;
|
|
/* 02530250 */ rbrew_write32(cpu->mem, _t1, cpu->r[12]);
|
|
/* 02530254 */ _t2 = cpu->r[4] + 0x0000007Cu;
|
|
/* 02530254 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02530258 */ _t3 = cpu->r[3] + 0x00000004u;
|
|
/* 02530258 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0253025C */ _t4 = cpu->r[4] + 0x00000080u;
|
|
/* 0253025C */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02530260 */ _t5 = cpu->r[3] + 0x00000008u;
|
|
/* 02530260 */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 02530264 */ return;
|
|
}
|
|
|
|
// fn_02530268 @ 0x2530268
|
|
void Gambit_fn_02530268(CPUState* cpu) {
|
|
L_02530268: ; // 0x2530268
|
|
/* 02530268 */ cpu->r[3] = 0x100C0000u;
|
|
/* 0253026C */ cpu->r[3] = cpu->r[3] + 0x00003BCCu;
|
|
/* 02530270 */ return;
|
|
}
|
|
|
|
// fn_02530274 @ 0x2530274
|
|
void Gambit_fn_02530274(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32;
|
|
|
|
L_02530274: ; // 0x2530274
|
|
/* 02530274 */ cpu->r[10] = 0x101D0000u;
|
|
/* 02530278 */ _t0 = cpu->r[10] + 0xFFFFDDF4u;
|
|
/* 02530278 */ cpu->r[10] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0253027C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02530280 */ cpu->r[10] = 0x101D0000u;
|
|
/* 02530284 */ cpu->r[10] = cpu->r[10] + 0x00000374u;
|
|
/* 02530288 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02530288 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02530288 */ if (_t2) goto L_0253028C; else goto L_025302A4;
|
|
L_0253028C: ; // 0x253028c
|
|
/* 0253028C */ cpu->r[0] = 0x100C0000u;
|
|
/* 02530290 */ cpu->r[9] = 0x00000001u;
|
|
/* 02530294 */ cpu->r[11] = 0x101D0000u;
|
|
/* 02530298 */ cpu->r[0] = cpu->r[0] + 0x00003B50u;
|
|
/* 0253029C */ _t3 = cpu->r[11] + 0xFFFFDDF4u;
|
|
/* 0253029C */ rbrew_write32(cpu->mem, _t3, cpu->r[9]);
|
|
/* 025302A0 */ _t4 = cpu->r[10] + 0x00000000u;
|
|
/* 025302A0 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
L_025302A4: ; // 0x25302a4
|
|
/* 025302A4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[10]);
|
|
/* 025302A8 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025302A8 */ _t6 = _t5 & 0x00000001u;
|
|
/* 025302A8 */ if (_t6) goto L_025302AC; else goto L_025302B4;
|
|
L_025302AC: ; // 0x25302ac
|
|
/* 025302AC */ cpu->r[3] = 0x00000001u;
|
|
/* 025302B0 */ return;
|
|
L_025302B4: ; // 0x25302b4
|
|
/* 025302B4 */ cpu->r[9] = 0x101D0000u;
|
|
/* 025302B8 */ _t7 = cpu->r[9] + 0xFFFFDDF0u;
|
|
/* 025302B8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t7);
|
|
/* 025302BC */ cpu->r[11] = 0x101D0000u;
|
|
/* 025302C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 025302C4 */ cpu->r[11] = cpu->r[11] + 0xFFFFFF40u;
|
|
/* 025302C8 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025302C8 */ _t9 = _t8 & 0x00000001u;
|
|
/* 025302C8 */ if (_t9) goto L_025302CC; else goto L_025302E4;
|
|
L_025302CC: ; // 0x25302cc
|
|
/* 025302CC */ cpu->r[9] = 0x100C0000u;
|
|
/* 025302D0 */ cpu->r[0] = 0x00000001u;
|
|
/* 025302D4 */ cpu->r[10] = 0x101D0000u;
|
|
/* 025302D8 */ cpu->r[9] = cpu->r[9] + 0x00003B20u;
|
|
/* 025302DC */ _t10 = cpu->r[10] + 0xFFFFDDF0u;
|
|
/* 025302DC */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 025302E0 */ _t11 = cpu->r[11] + 0x00000000u;
|
|
/* 025302E0 */ rbrew_write32(cpu->mem, _t11, cpu->r[9]);
|
|
L_025302E4: ; // 0x25302e4
|
|
/* 025302E4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[11]);
|
|
/* 025302E8 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025302E8 */ _t13 = _t12 & 0x00000001u;
|
|
/* 025302E8 */ if (_t13) goto L_025302EC; else goto L_025302F4;
|
|
L_025302EC: ; // 0x25302ec
|
|
/* 025302EC */ cpu->r[0] = 0x00000001u;
|
|
/* 025302F0 */ goto L_025303AC;
|
|
L_025302F4: ; // 0x25302f4
|
|
/* 025302F4 */ cpu->r[11] = 0x101D0000u;
|
|
/* 025302F8 */ _t14 = cpu->r[11] + 0xFFFFDA10u;
|
|
/* 025302F8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t14);
|
|
/* 025302FC */ cpu->r[9] = 0x101D0000u;
|
|
/* 02530300 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02530304 */ cpu->r[9] = cpu->r[9] + 0xFFFFFBBCu;
|
|
/* 02530308 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02530308 */ _t16 = _t15 & 0x00000001u;
|
|
/* 02530308 */ if (_t16) goto L_0253030C; else goto L_02530324;
|
|
L_0253030C: ; // 0x253030c
|
|
/* 0253030C */ cpu->r[11] = 0x100C0000u;
|
|
/* 02530310 */ cpu->r[10] = 0x00000001u;
|
|
/* 02530314 */ cpu->r[12] = 0x101D0000u;
|
|
/* 02530318 */ cpu->r[11] = cpu->r[11] + 0x00003B10u;
|
|
/* 0253031C */ _t17 = cpu->r[12] + 0xFFFFDA10u;
|
|
/* 0253031C */ rbrew_write32(cpu->mem, _t17, cpu->r[10]);
|
|
/* 02530320 */ _t18 = cpu->r[9] + 0x00000000u;
|
|
/* 02530320 */ rbrew_write32(cpu->mem, _t18, cpu->r[11]);
|
|
L_02530324: ; // 0x2530324
|
|
/* 02530324 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[9]);
|
|
/* 02530328 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02530328 */ _t20 = _t19 & 0x00000001u;
|
|
/* 02530328 */ if (_t20) goto L_0253032C; else goto L_02530334;
|
|
L_0253032C: ; // 0x253032c
|
|
/* 0253032C */ cpu->r[0] = 0x00000001u;
|
|
/* 02530330 */ goto L_025303A8;
|
|
L_02530334: ; // 0x2530334
|
|
/* 02530334 */ cpu->r[9] = 0x101D0000u;
|
|
/* 02530338 */ _t21 = cpu->r[9] + 0xFFFFD4E8u;
|
|
/* 02530338 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02530338 */ cpu->r[9] = _t21;
|
|
/* 0253033C */ cpu->r[10] = 0x101D0000u;
|
|
/* 02530340 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02530344 */ cpu->r[10] = cpu->r[10] + 0xFFFFD4ECu;
|
|
/* 02530348 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02530348 */ _t23 = _t22 & 0x00000001u;
|
|
/* 02530348 */ if (_t23) goto L_0253034C; else goto L_02530360;
|
|
L_0253034C: ; // 0x253034c
|
|
/* 0253034C */ cpu->r[0] = 0x100C0000u;
|
|
/* 02530350 */ cpu->r[11] = 0x00000001u;
|
|
/* 02530354 */ cpu->r[0] = cpu->r[0] + 0x00003B00u;
|
|
/* 02530358 */ _t24 = cpu->r[9] + 0x00000000u;
|
|
/* 02530358 */ rbrew_write32(cpu->mem, _t24, cpu->r[11]);
|
|
/* 0253035C */ _t25 = cpu->r[10] + 0x00000000u;
|
|
/* 0253035C */ rbrew_write32(cpu->mem, _t25, cpu->r[0]);
|
|
L_02530360: ; // 0x2530360
|
|
/* 02530360 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[10]);
|
|
/* 02530364 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02530364 */ _t27 = _t26 & 0x00000001u;
|
|
/* 02530364 */ if (_t27) goto L_02530368; else goto L_02530370;
|
|
L_02530368: ; // 0x2530368
|
|
/* 02530368 */ cpu->r[0] = 0x00000001u;
|
|
/* 0253036C */ goto L_025303A8;
|
|
L_02530370: ; // 0x2530370
|
|
/* 02530370 */ cpu->r[10] = 0x101D0000u;
|
|
/* 02530374 */ _t28 = cpu->r[10] + 0xFFFFD4E0u;
|
|
/* 02530374 */ cpu->r[9] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02530374 */ cpu->r[10] = _t28;
|
|
/* 02530378 */ cpu->r[11] = 0x101D0000u;
|
|
/* 0253037C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02530380 */ cpu->r[11] = cpu->r[11] + 0xFFFFD4E4u;
|
|
/* 02530384 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02530384 */ _t30 = _t29 & 0x00000001u;
|
|
/* 02530384 */ if (_t30) goto L_02530388; else goto L_0253039C;
|
|
L_02530388: ; // 0x2530388
|
|
/* 02530388 */ cpu->r[9] = 0x100C0000u;
|
|
/* 0253038C */ cpu->r[0] = 0x00000001u;
|
|
/* 02530390 */ cpu->r[9] = cpu->r[9] + 0x00003A60u;
|
|
/* 02530394 */ _t31 = cpu->r[10] + 0x00000000u;
|
|
/* 02530394 */ rbrew_write32(cpu->mem, _t31, cpu->r[0]);
|
|
/* 02530398 */ _t32 = cpu->r[11] + 0x00000000u;
|
|
/* 02530398 */ rbrew_write32(cpu->mem, _t32, cpu->r[9]);
|
|
L_0253039C: ; // 0x253039c
|
|
/* 0253039C */ cpu->r[0] = cpu->r[4] ^ cpu->r[11];
|
|
/* 025303A0 */ cpu->r[0] = rbrew_clz32(cpu->r[0]);
|
|
/* 025303A4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
L_025303A8: ; // 0x25303a8
|
|
/* 025303A8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
L_025303AC: ; // 0x25303ac
|
|
/* 025303AC */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 025303B0 */ return;
|
|
}
|
|
|
|
// fn_025303B4 @ 0x25303b4
|
|
void Gambit_fn_025303B4(CPUState* cpu) {
|
|
L_025303B4: ; // 0x25303b4
|
|
/* 025303B4 */ return;
|
|
}
|
|
|
|
// fn_025303B8 @ 0x25303b8
|
|
void Gambit_fn_025303B8(CPUState* cpu) {
|
|
L_025303B8: ; // 0x25303b8
|
|
/* 025303B8 */ cpu->r[3] = 0x100C0000u;
|
|
/* 025303BC */ cpu->r[3] = cpu->r[3] + 0x00003BA8u;
|
|
/* 025303C0 */ return;
|
|
}
|
|
|
|
// fn_025303C4 @ 0x25303c4
|
|
void Gambit_fn_025303C4(CPUState* cpu) {
|
|
L_025303C4: ; // 0x25303c4
|
|
/* 025303C4 */ cpu->r[3] = 0x00000001u;
|
|
/* 025303C8 */ return;
|
|
}
|
|
|
|
// fn_025303CC @ 0x25303cc
|
|
void Gambit_fn_025303CC(CPUState* cpu) {
|
|
L_025303CC: ; // 0x25303cc
|
|
/* 025303CC */ cpu->r[3] = 0x00000001u;
|
|
/* 025303D0 */ return;
|
|
}
|
|
|
|
// fn_025303E0 @ 0x25303e0
|
|
void Gambit_fn_025303E0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_020188D4: ; // 0x20188d4
|
|
/* 020188D4 */ cpu->r[0] = cpu->lr;
|
|
/* 020188D8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 020188D8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 020188D8 */ cpu->r[1] = _t0;
|
|
/* 020188DC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020188DC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 020188E0 */ cpu->r[31] = cpu->r[3];
|
|
/* 020188E4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 020188E4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 020188E8 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 020188E8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 020188EC */ cpu->r[12] = 0x00000000u;
|
|
/* 020188F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 020188F4 */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 020188F4 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 020188F8 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020188F8 */ _t6 = _t5 & 0x00000001u;
|
|
/* 020188F8 */ if (_t6) goto L_02018920; else goto L_020188FC;
|
|
L_020188FC: ; // 0x20188fc
|
|
/* 020188FC */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 020188FC */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 02018900 */ /* nop */
|
|
/* 02018904 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 02018908 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02018908 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02018908 */ if (_t9) goto L_0201890C; else goto L_02018920;
|
|
L_0201890C: ; // 0x201890c
|
|
/* 0201890C */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 0201890C */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02018910 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 02018910 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02018914 */ cpu->ctr = cpu->r[0];
|
|
/* 02018918 */ cpu->r[3] = cpu->r[31];
|
|
/* 0201891C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02018920: ; // 0x2018920
|
|
/* 02018920 */ cpu->r[3] = cpu->r[31];
|
|
/* 02018924 */ Gambit_fn_0201884C(cpu);
|
|
/* 02018928 */ cpu->r[3] = cpu->r[31];
|
|
/* 0201892C */ Gambit_fn_027FC37C(cpu);
|
|
/* 02018930 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 02018930 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02018934 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02018934 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02018938 */ cpu->lr = cpu->r[0];
|
|
/* 0201893C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02018940 */ return;
|
|
L_025303E0: ; // 0x25303e0
|
|
/* 025303E0 */ cpu->r[3] = cpu->r[3] + 0x000001B0u;
|
|
/* 025303E4 */ goto L_020188D4;
|
|
}
|
|
|
|
// fn_025303E8 @ 0x25303e8
|
|
void Gambit_fn_025303E8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_025303E8: ; // 0x25303e8
|
|
/* 025303E8 */ cpu->r[0] = cpu->lr;
|
|
/* 025303EC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 025303EC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 025303EC */ cpu->r[1] = _t0;
|
|
/* 025303F0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025303F0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 025303F4 */ cpu->r[31] = cpu->r[3];
|
|
/* 025303F8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 025303F8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 025303FC */ _t3 = cpu->r[31] + 0x000001BEu;
|
|
/* 025303FC */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02530400 */ cpu->r[3] = cpu->r[31] + 0x000001B0u;
|
|
/* 02530404 */ /* nop */
|
|
/* 02530408 */ Gambit_fn_027FC35C(cpu);
|
|
/* 0253040C */ cpu->r[3] = cpu->r[31] + 0x000001B0u;
|
|
/* 02530410 */ Gambit_fn_020187C4(cpu);
|
|
/* 02530414 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 02530414 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02530418 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02530418 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0253041C */ cpu->lr = cpu->r[0];
|
|
/* 02530420 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02530424 */ return;
|
|
}
|
|
|
|
// fn_025303EC @ 0x25303ec
|
|
void Gambit_fn_025303EC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_025303EC: ; // 0x25303ec
|
|
/* 025303EC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 025303EC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 025303EC */ cpu->r[1] = _t0;
|
|
/* 025303F0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025303F0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 025303F4 */ cpu->r[31] = cpu->r[3];
|
|
/* 025303F8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 025303F8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 025303FC */ _t3 = cpu->r[31] + 0x000001BEu;
|
|
/* 025303FC */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02530400 */ cpu->r[3] = cpu->r[31] + 0x000001B0u;
|
|
/* 02530404 */ /* nop */
|
|
/* 02530408 */ Gambit_fn_027FC35C(cpu);
|
|
/* 0253040C */ cpu->r[3] = cpu->r[31] + 0x000001B0u;
|
|
/* 02530410 */ Gambit_fn_020187C4(cpu);
|
|
/* 02530414 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 02530414 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02530418 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02530418 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0253041C */ cpu->lr = cpu->r[0];
|
|
/* 02530420 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02530424 */ return;
|
|
}
|
|
|
|
// fn_02530428 @ 0x2530428
|
|
void Gambit_fn_02530428(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_02530428: ; // 0x2530428
|
|
/* 02530428 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0253042C */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0253042C */ _t1 = _t0 & 0x00000001u;
|
|
/* 0253042C */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0253042C */ goto L_02530430;
|
|
L_02530430: ; // 0x2530430
|
|
/* 02530430 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02530430 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02530434 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02530434 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02530434 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02530434 */ goto L_02530438;
|
|
L_02530438: ; // 0x2530438
|
|
/* 02530438 */ 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_0253043C @ 0x253043c
|
|
void Gambit_fn_0253043C(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_0253043C: ; // 0x253043c
|
|
/* 0253043C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02530440 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02530440 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02530440 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02530440 */ goto L_02530444;
|
|
L_02530444: ; // 0x2530444
|
|
/* 02530444 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02530444 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02530448 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02530448 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02530448 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02530448 */ goto L_0253044C;
|
|
L_0253044C: ; // 0x253044c
|
|
/* 0253044C */ 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_02530450 @ 0x2530450
|
|
void Gambit_fn_02530450(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_02530450: ; // 0x2530450
|
|
/* 02530450 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02530454 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02530454 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02530454 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02530454 */ goto L_02530458;
|
|
L_02530458: ; // 0x2530458
|
|
/* 02530458 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02530458 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0253045C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0253045C */ _t3 = _t2 & 0x00000001u;
|
|
/* 0253045C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0253045C */ goto L_02530460;
|
|
L_02530460: ; // 0x2530460
|
|
/* 02530460 */ 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_02530464 @ 0x2530464
|
|
void Gambit_fn_02530464(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _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_02530464: ; // 0x2530464
|
|
/* 02530464 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 02530464 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02530464 */ cpu->r[1] = _t0;
|
|
/* 02530468 */ /* nop */
|
|
/* 0253046C */ cpu->r[0] = cpu->lr;
|
|
/* 02530470 */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 02530470 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02530474 */ cpu->r[29] = cpu->r[6];
|
|
/* 02530478 */ cpu->r[28] = cpu->r[3];
|
|
/* 0253047C */ cpu->r[30] = cpu->r[5];
|
|
/* 02530480 */ _t2 = cpu->r[30] + 0x00000000u;
|
|
/* 02530480 */ cpu->r[27] = rbrew_read8(cpu->mem, _t2);
|
|
/* 02530484 */ cpu->r[31] = 0x101D0000u;
|
|
/* 02530488 */ _t3 = cpu->r[28] + 0x0000001Cu;
|
|
/* 02530488 */ rbrew_write32(cpu->mem, _t3, cpu->r[4]);
|
|
/* 0253048C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02530490 */ _t4 = cpu->r[28] + 0x0000000Fu;
|
|
/* 02530490 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[27]);
|
|
/* 02530494 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02530494 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02530494 */ if (_t6) goto L_025304D8; else goto L_02530498;
|
|
L_02530498: ; // 0x2530498
|
|
/* 02530498 */ _t7 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 02530498 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0253049C */ Gambit_fn_02826F20(cpu);
|
|
/* 025304A0 */ _t8 = cpu->r[3] + 0x0000000Cu;
|
|
/* 025304A0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t8);
|
|
/* 025304A4 */ _t9 = cpu->r[9] + 0x00000034u;
|
|
/* 025304A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 025304A8 */ cpu->ctr = cpu->r[0];
|
|
/* 025304AC */ cpu->r[5] = 0x00000004u;
|
|
/* 025304B0 */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 025304B4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 025304B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 025304BC */ cpu->r[0] = cpu->r[27];
|
|
/* 025304C0 */ _t10 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 025304C0 */ _t11 = _t10 & 0x00000001u;
|
|
/* 025304C0 */ if (_t11) goto L_025304C8; else goto L_025304C4;
|
|
L_025304C4: ; // 0x25304c4
|
|
/* 025304C4 */ cpu->r[0] = 0x00000001u;
|
|
L_025304C8: ; // 0x25304c8
|
|
/* 025304C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 025304CC */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025304CC */ _t13 = _t12 & 0x00000001u;
|
|
/* 025304CC */ if (_t13) goto L_025304D8; else goto L_025304D0;
|
|
L_025304D0: ; // 0x25304d0
|
|
/* 025304D0 */ _t14 = cpu->r[28] + 0x00000024u;
|
|
/* 025304D0 */ rbrew_write32(cpu->mem, _t14, cpu->r[3]);
|
|
/* 025304D4 */ _t15 = cpu->r[28] + 0x00000020u;
|
|
/* 025304D4 */ rbrew_write32(cpu->mem, _t15, cpu->r[27]);
|
|
L_025304D8: ; // 0x25304d8
|
|
/* 025304D8 */ _t16 = cpu->r[28] + 0x00000020u;
|
|
/* 025304D8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t16);
|
|
/* 025304DC */ cpu->r[0] = 0x00000000u;
|
|
/* 025304E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 025304E4 */ cpu->r[12] = cpu->r[0];
|
|
/* 025304E8 */ _t17 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 025304E8 */ _t18 = _t17 & 0x00000001u;
|
|
/* 025304E8 */ if (_t18) goto L_025304EC; else goto L_02530510;
|
|
L_025304EC: ; // 0x25304ec
|
|
/* 025304EC */ cpu->ctr = cpu->r[7];
|
|
/* 025304F0 */ cpu->r[10] = 0x00000000u;
|
|
L_025304F4: ; // 0x25304f4
|
|
/* 025304F4 */ _t19 = cpu->r[28] + 0x00000024u;
|
|
/* 025304F4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 025304F8 */ _t20 = cpu->r[11] + cpu->r[10];
|
|
/* 025304F8 */ rbrew_write16(cpu->mem, _t20, (uint16_t)cpu->r[0]);
|
|
/* 025304FC */ cpu->r[8] = cpu->r[11] + cpu->r[10];
|
|
/* 02530500 */ _t21 = cpu->r[8] + 0x00000004u;
|
|
/* 02530500 */ rbrew_write32(cpu->mem, _t21, cpu->r[12]);
|
|
/* 02530504 */ cpu->r[10] = cpu->r[10] + 0x00000008u;
|
|
/* 02530508 */ _t22 = cpu->r[8] + 0x00000002u;
|
|
/* 02530508 */ rbrew_write16(cpu->mem, _t22, (uint16_t)cpu->r[0]);
|
|
/* 0253050C */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0253050C */ _t23 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0253050C */ _t24 = _t23 >> (0x00000002u & 31u);
|
|
/* 0253050C */ _t25 = _t24 & 0x00000001u;
|
|
/* 0253050C */ if (_t25) goto L_025304F4; else goto L_02530510;
|
|
L_02530510: ; // 0x2530510
|
|
/* 02530510 */ _t26 = cpu->r[28] + 0x0000000Fu;
|
|
/* 02530510 */ cpu->r[27] = rbrew_read8(cpu->mem, _t26);
|
|
/* 02530514 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02530518 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02530518 */ _t28 = _t27 & 0x00000001u;
|
|
/* 02530518 */ if (_t28) goto L_0253055C; else goto L_0253051C;
|
|
L_0253051C: ; // 0x253051c
|
|
/* 0253051C */ _t29 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 0253051C */ cpu->r[3] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02530520 */ Gambit_fn_02826F20(cpu);
|
|
/* 02530524 */ _t30 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02530524 */ cpu->r[12] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02530528 */ _t31 = cpu->r[12] + 0x00000034u;
|
|
/* 02530528 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0253052C */ cpu->ctr = cpu->r[0];
|
|
/* 02530530 */ cpu->r[5] = 0x00000004u;
|
|
/* 02530534 */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02530538 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0253053C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02530540 */ cpu->r[11] = cpu->r[27];
|
|
/* 02530544 */ _t32 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02530544 */ _t33 = _t32 & 0x00000001u;
|
|
/* 02530544 */ if (_t33) goto L_0253054C; else goto L_02530548;
|
|
L_02530548: ; // 0x2530548
|
|
/* 02530548 */ cpu->r[11] = 0x00000001u;
|
|
L_0253054C: ; // 0x253054c
|
|
/* 0253054C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02530550 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02530550 */ _t35 = _t34 & 0x00000001u;
|
|
/* 02530550 */ if (_t35) goto L_0253055C; else goto L_02530554;
|
|
L_02530554: ; // 0x2530554
|
|
/* 02530554 */ _t36 = cpu->r[28] + 0x0000002Cu;
|
|
/* 02530554 */ rbrew_write32(cpu->mem, _t36, cpu->r[3]);
|
|
/* 02530558 */ _t37 = cpu->r[28] + 0x00000028u;
|
|
/* 02530558 */ rbrew_write32(cpu->mem, _t37, cpu->r[27]);
|
|
L_0253055C: ; // 0x253055c
|
|
/* 0253055C */ _t38 = cpu->r[28] + 0x00000028u;
|
|
/* 0253055C */ cpu->r[6] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02530560 */ cpu->r[0] = 0x00000000u;
|
|
/* 02530564 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 02530568 */ cpu->r[12] = cpu->r[0];
|
|
/* 0253056C */ _t39 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0253056C */ _t40 = _t39 & 0x00000001u;
|
|
/* 0253056C */ if (_t40) goto L_02530570; else goto L_02530594;
|
|
L_02530570: ; // 0x2530570
|
|
/* 02530570 */ cpu->ctr = cpu->r[6];
|
|
/* 02530574 */ cpu->r[9] = 0x00000000u;
|
|
L_02530578: ; // 0x2530578
|
|
/* 02530578 */ _t41 = cpu->r[28] + 0x0000002Cu;
|
|
/* 02530578 */ cpu->r[5] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0253057C */ _t42 = cpu->r[5] + cpu->r[9];
|
|
/* 0253057C */ rbrew_write16(cpu->mem, _t42, (uint16_t)cpu->r[0]);
|
|
/* 02530580 */ cpu->r[7] = cpu->r[5] + cpu->r[9];
|
|
/* 02530584 */ _t43 = cpu->r[7] + 0x00000004u;
|
|
/* 02530584 */ rbrew_write32(cpu->mem, _t43, cpu->r[12]);
|
|
/* 02530588 */ cpu->r[9] = cpu->r[9] + 0x00000008u;
|
|
/* 0253058C */ _t44 = cpu->r[7] + 0x00000002u;
|
|
/* 0253058C */ rbrew_write16(cpu->mem, _t44, (uint16_t)cpu->r[0]);
|
|
/* 02530590 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02530590 */ _t45 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02530590 */ _t46 = _t45 >> (0x00000002u & 31u);
|
|
/* 02530590 */ _t47 = _t46 & 0x00000001u;
|
|
/* 02530590 */ if (_t47) goto L_02530578; else goto L_02530594;
|
|
L_02530594: ; // 0x2530594
|
|
/* 02530594 */ _t48 = cpu->r[28] + 0x0000000Fu;
|
|
/* 02530594 */ cpu->r[27] = rbrew_read8(cpu->mem, _t48);
|
|
/* 02530598 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0253059C */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0253059C */ _t50 = _t49 & 0x00000001u;
|
|
/* 0253059C */ if (_t50) goto L_025305E0; else goto L_025305A0;
|
|
L_025305A0: ; // 0x25305a0
|
|
/* 025305A0 */ _t51 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 025305A0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t51);
|
|
/* 025305A4 */ Gambit_fn_02826F20(cpu);
|
|
/* 025305A8 */ _t52 = cpu->r[3] + 0x0000000Cu;
|
|
/* 025305A8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t52);
|
|
/* 025305AC */ _t53 = cpu->r[6] + 0x00000034u;
|
|
/* 025305AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t53);
|
|
/* 025305B0 */ cpu->ctr = cpu->r[0];
|
|
/* 025305B4 */ cpu->r[5] = 0x00000004u;
|
|
/* 025305B8 */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 025305BC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 025305C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 025305C4 */ cpu->r[10] = cpu->r[27];
|
|
/* 025305C8 */ _t54 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 025305C8 */ _t55 = _t54 & 0x00000001u;
|
|
/* 025305C8 */ if (_t55) goto L_025305D0; else goto L_025305CC;
|
|
L_025305CC: ; // 0x25305cc
|
|
/* 025305CC */ cpu->r[10] = 0x00000001u;
|
|
L_025305D0: ; // 0x25305d0
|
|
/* 025305D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 025305D4 */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025305D4 */ _t57 = _t56 & 0x00000001u;
|
|
/* 025305D4 */ if (_t57) goto L_025305E0; else goto L_025305D8;
|
|
L_025305D8: ; // 0x25305d8
|
|
/* 025305D8 */ _t58 = cpu->r[28] + 0x00000034u;
|
|
/* 025305D8 */ rbrew_write32(cpu->mem, _t58, cpu->r[3]);
|
|
/* 025305DC */ _t59 = cpu->r[28] + 0x00000030u;
|
|
/* 025305DC */ rbrew_write32(cpu->mem, _t59, cpu->r[27]);
|
|
L_025305E0: ; // 0x25305e0
|
|
/* 025305E0 */ _t60 = cpu->r[28] + 0x00000030u;
|
|
/* 025305E0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t60);
|
|
/* 025305E4 */ cpu->r[0] = 0x00000000u;
|
|
/* 025305E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 025305EC */ cpu->r[5] = cpu->r[0];
|
|
/* 025305F0 */ _t61 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 025305F0 */ _t62 = _t61 & 0x00000001u;
|
|
/* 025305F0 */ if (_t62) goto L_025305F4; else goto L_02530618;
|
|
L_025305F4: ; // 0x25305f4
|
|
/* 025305F4 */ cpu->ctr = cpu->r[12];
|
|
/* 025305F8 */ cpu->r[8] = 0x00000000u;
|
|
L_025305FC: ; // 0x25305fc
|
|
/* 025305FC */ _t63 = cpu->r[28] + 0x00000034u;
|
|
/* 025305FC */ cpu->r[9] = rbrew_read32(cpu->mem, _t63);
|
|
/* 02530600 */ _t64 = cpu->r[9] + cpu->r[8];
|
|
/* 02530600 */ rbrew_write16(cpu->mem, _t64, (uint16_t)cpu->r[0]);
|
|
/* 02530604 */ cpu->r[6] = cpu->r[9] + cpu->r[8];
|
|
/* 02530608 */ _t65 = cpu->r[6] + 0x00000004u;
|
|
/* 02530608 */ rbrew_write32(cpu->mem, _t65, cpu->r[5]);
|
|
/* 0253060C */ cpu->r[8] = cpu->r[8] + 0x00000008u;
|
|
/* 02530610 */ _t66 = cpu->r[6] + 0x00000002u;
|
|
/* 02530610 */ rbrew_write16(cpu->mem, _t66, (uint16_t)cpu->r[0]);
|
|
/* 02530614 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02530614 */ _t67 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02530614 */ _t68 = _t67 >> (0x00000002u & 31u);
|
|
/* 02530614 */ _t69 = _t68 & 0x00000001u;
|
|
/* 02530614 */ if (_t69) goto L_025305FC; else goto L_02530618;
|
|
L_02530618: ; // 0x2530618
|
|
/* 02530618 */ _t70 = cpu->r[30] + 0x00000000u;
|
|
/* 02530618 */ cpu->r[25] = rbrew_read8(cpu->mem, _t70);
|
|
/* 0253061C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 02530620 */ _t71 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02530620 */ _t72 = _t71 & 0x00000001u;
|
|
/* 02530620 */ if (_t72) goto L_025306FC; else goto L_02530624;
|
|
L_02530624: ; // 0x2530624
|
|
/* 02530624 */ _t73 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 02530624 */ cpu->r[3] = rbrew_read32(cpu->mem, _t73);
|
|
/* 02530628 */ Gambit_fn_02826F20(cpu);
|
|
/* 0253062C */ _t74 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0253062C */ cpu->r[10] = rbrew_read32(cpu->mem, _t74);
|
|
/* 02530630 */ _t75 = cpu->r[10] + 0x00000034u;
|
|
/* 02530630 */ cpu->r[12] = rbrew_read32(cpu->mem, _t75);
|
|
/* 02530634 */ cpu->ctr = cpu->r[12];
|
|
/* 02530638 */ cpu->r[5] = 0x00000004u;
|
|
/* 0253063C */ cpu->r[4] = (uint32_t)((int32_t)cpu->r[25] * (int32_t)0x00000024u);
|
|
/* 02530640 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02530644 */ cpu->r[24] = cpu->r[3];
|
|
/* 02530648 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 0253064C */ cpu->r[30] = cpu->r[25];
|
|
/* 02530650 */ cpu->r[7] = 0x00000000u;
|
|
/* 02530654 */ _t76 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02530654 */ _t77 = _t76 & 0x00000001u;
|
|
/* 02530654 */ if (_t77) goto L_0253065C; else goto L_02530658;
|
|
L_02530658: ; // 0x2530658
|
|
/* 02530658 */ cpu->r[30] = 0x00000001u;
|
|
L_0253065C: ; // 0x253065c
|
|
/* 0253065C */ cpu->r[31] = 0x10110000u;
|
|
/* 02530660 */ cpu->r[22] = (uint32_t)((int32_t)cpu->r[7] * (int32_t)0x00000024u);
|
|
/* 02530664 */ _t78 = cpu->r[31] + 0x00007399u;
|
|
/* 02530664 */ cpu->r[31] = rbrew_read8(cpu->mem, _t78);
|
|
/* 02530668 */ cpu->r[23] = 0x00000018u;
|
|
L_0253066C: ; // 0x253066c
|
|
/* 0253066C */ cpu->r[27] = cpu->r[24] + cpu->r[22];
|
|
/* 0253066C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02530670 */ _t79 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02530670 */ _t80 = _t79 & 0x00000001u;
|
|
/* 02530670 */ if (_t80) goto L_025306E0; else goto L_02530674;
|
|
L_02530674: ; // 0x2530674
|
|
/* 02530674 */ cpu->r[26] = cpu->r[27];
|
|
/* 02530674 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 02530678 */ _t81 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02530678 */ _t82 = _t81 & 0x00000001u;
|
|
/* 02530678 */ if (_t82) goto L_0253067C; else goto L_0253068C;
|
|
L_0253067C: ; // 0x253067c
|
|
/* 0253067C */ cpu->r[3] = 0x00000024u;
|
|
/* 02530680 */ Gambit_fn_02801A78(cpu);
|
|
/* 02530684 */ cpu->r[26] = cpu->r[3];
|
|
/* 02530684 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 02530688 */ _t83 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02530688 */ _t84 = _t83 & 0x00000001u;
|
|
/* 02530688 */ if (_t84) goto L_025306D4; else goto L_0253068C;
|
|
L_0253068C: ; // 0x253068c
|
|
/* 0253068C */ cpu->r[11] = cpu->r[26];
|
|
/* 0253068C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02530690 */ _t85 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02530690 */ _t86 = _t85 & 0x00000001u;
|
|
/* 02530690 */ if (_t86) goto L_02530694; else goto L_025306A4;
|
|
L_02530694: ; // 0x2530694
|
|
/* 02530694 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02530698 */ Gambit_fn_02801A78(cpu);
|
|
/* 0253069C */ cpu->r[11] = cpu->r[3];
|
|
/* 0253069C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 025306A0 */ _t87 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025306A0 */ _t88 = _t87 & 0x00000001u;
|
|
/* 025306A0 */ if (_t88) goto L_025306C0; else goto L_025306A4;
|
|
L_025306A4: ; // 0x25306a4
|
|
/* 025306A4 */ cpu->r[5] = 0x100C0000u;
|
|
/* 025306A8 */ _t89 = cpu->r[11] + 0x00000008u;
|
|
/* 025306A8 */ rbrew_write32(cpu->mem, _t89, cpu->r[23]);
|
|
/* 025306AC */ cpu->r[0] = cpu->r[26] + 0x0000000Cu;
|
|
/* 025306B0 */ cpu->r[5] = cpu->r[5] + 0x00003A88u;
|
|
/* 025306B4 */ _t90 = cpu->r[11] + 0x00000000u;
|
|
/* 025306B4 */ rbrew_write32(cpu->mem, _t90, cpu->r[0]);
|
|
/* 025306B8 */ _t91 = cpu->r[11] + 0x00000004u;
|
|
/* 025306B8 */ rbrew_write32(cpu->mem, _t91, cpu->r[5]);
|
|
/* 025306BC */ _t92 = cpu->r[26] + 0x00000023u;
|
|
/* 025306BC */ rbrew_write8(cpu->mem, _t92, (uint8_t)cpu->r[31]);
|
|
L_025306C0: ; // 0x25306c0
|
|
/* 025306C0 */ cpu->r[6] = 0x100C0000u;
|
|
/* 025306C4 */ _t93 = cpu->r[26] + 0x00000000u;
|
|
/* 025306C4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t93);
|
|
/* 025306C8 */ cpu->r[6] = cpu->r[6] + 0x00003AD0u;
|
|
/* 025306CC */ _t94 = cpu->r[26] + 0x00000004u;
|
|
/* 025306CC */ rbrew_write32(cpu->mem, _t94, cpu->r[6]);
|
|
/* 025306D0 */ _t95 = cpu->r[7] + 0x00000000u;
|
|
/* 025306D0 */ rbrew_write8(cpu->mem, _t95, (uint8_t)cpu->r[31]);
|
|
L_025306D4: ; // 0x25306d4
|
|
/* 025306D4 */ cpu->r[0] = 0x100C0000u;
|
|
/* 025306D8 */ cpu->r[0] = cpu->r[0] + 0x00003AE8u;
|
|
/* 025306DC */ _t96 = cpu->r[27] + 0x00000004u;
|
|
/* 025306DC */ rbrew_write32(cpu->mem, _t96, cpu->r[0]);
|
|
L_025306E0: ; // 0x25306e0
|
|
/* 025306E0 */ cpu->r[30] = cpu->r[30] + 0xFFFFFFFFu;
|
|
/* 025306E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 025306E4 */ cpu->r[22] = cpu->r[22] + 0x00000024u;
|
|
/* 025306E8 */ _t97 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025306E8 */ _t98 = _t97 & 0x00000001u;
|
|
/* 025306E8 */ if (_t98) goto L_025306EC; else goto L_0253066C;
|
|
L_025306EC: ; // 0x25306ec
|
|
/* 025306EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 025306F0 */ _t99 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025306F0 */ _t100 = _t99 & 0x00000001u;
|
|
/* 025306F0 */ if (_t100) goto L_025306FC; else goto L_025306F4;
|
|
L_025306F4: ; // 0x25306f4
|
|
/* 025306F4 */ _t101 = cpu->r[28] + 0x00000018u;
|
|
/* 025306F4 */ rbrew_write32(cpu->mem, _t101, cpu->r[24]);
|
|
/* 025306F8 */ _t102 = cpu->r[28] + 0x00000014u;
|
|
/* 025306F8 */ rbrew_write32(cpu->mem, _t102, cpu->r[25]);
|
|
L_025306FC: ; // 0x25306fc
|
|
/* 025306FC */ _t103 = cpu->r[28] + 0x0000000Eu;
|
|
/* 025306FC */ rbrew_write8(cpu->mem, _t103, (uint8_t)cpu->r[29]);
|
|
/* 02530700 */ /* nop */
|
|
/* 02530704 */ _t104 = cpu->r[1] + 0x00000034u;
|
|
/* 02530704 */ cpu->r[0] = rbrew_read32(cpu->mem, _t104);
|
|
/* 02530708 */ cpu->lr = cpu->r[0];
|
|
/* 0253070C */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 02530710 */ return;
|
|
}
|
|
|
|
// fn_02530714 @ 0x2530714
|
|
void Gambit_fn_02530714(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _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_02530714: ; // 0x2530714
|
|
/* 02530714 */ _t0 = cpu->r[7] + 0x00000000u;
|
|
/* 02530714 */ cpu->r[8] = rbrew_read8(cpu->mem, _t0);
|
|
/* 02530718 */ _t1 = cpu->r[3] + 0x00000020u;
|
|
/* 02530718 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0253071C */ _t2 = cpu->r[3] + 0x00000024u;
|
|
/* 0253071C */ cpu->r[11] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02530720 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[12]);
|
|
/* 02530724 */ _t3 = cpu->r[4] + 0x00000000u;
|
|
/* 02530724 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02530728 */ _t4 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02530728 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02530728 */ if (_t5) goto L_0253072C; else goto L_02530734;
|
|
L_0253072C: ; // 0x253072c
|
|
/* 0253072C */ cpu->r[10] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02530730 */ cpu->r[11] = cpu->r[11] + cpu->r[10];
|
|
L_02530734: ; // 0x2530734
|
|
/* 02530734 */ _t6 = cpu->r[11] + 0x00000000u;
|
|
/* 02530734 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02530738 */ _t7 = cpu->r[4] + 0x00000004u;
|
|
/* 02530738 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0253073C */ _t8 = cpu->r[11] + 0x00000004u;
|
|
/* 0253073C */ rbrew_write32(cpu->mem, _t8, cpu->r[8]);
|
|
/* 02530740 */ _t9 = cpu->r[7] + 0x00000000u;
|
|
/* 02530740 */ cpu->r[9] = rbrew_read8(cpu->mem, _t9);
|
|
/* 02530744 */ _t10 = cpu->r[3] + 0x00000028u;
|
|
/* 02530744 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02530748 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[12]);
|
|
/* 0253074C */ _t11 = cpu->r[3] + 0x0000002Cu;
|
|
/* 0253074C */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02530750 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02530750 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02530750 */ if (_t13) goto L_02530754; else goto L_0253075C;
|
|
L_02530754: ; // 0x2530754
|
|
/* 02530754 */ cpu->r[0] = rbrew_rlwinm(cpu->r[9], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02530758 */ cpu->r[10] = cpu->r[10] + cpu->r[0];
|
|
L_0253075C: ; // 0x253075c
|
|
/* 0253075C */ _t14 = cpu->r[5] + 0x00000000u;
|
|
/* 0253075C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02530760 */ _t15 = cpu->r[10] + 0x00000000u;
|
|
/* 02530760 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 02530764 */ _t16 = cpu->r[5] + 0x00000004u;
|
|
/* 02530764 */ cpu->r[8] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02530768 */ _t17 = cpu->r[10] + 0x00000004u;
|
|
/* 02530768 */ rbrew_write32(cpu->mem, _t17, cpu->r[8]);
|
|
/* 0253076C */ _t18 = cpu->r[3] + 0x00000030u;
|
|
/* 0253076C */ cpu->r[9] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02530770 */ _t19 = cpu->r[7] + 0x00000000u;
|
|
/* 02530770 */ cpu->r[11] = rbrew_read8(cpu->mem, _t19);
|
|
/* 02530774 */ _t20 = cpu->r[3] + 0x00000034u;
|
|
/* 02530774 */ cpu->r[12] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02530778 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[9]);
|
|
/* 0253077C */ _t21 = cpu->r[6] + 0x00000000u;
|
|
/* 0253077C */ cpu->r[7] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02530780 */ _t22 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02530780 */ _t23 = _t22 & 0x00000001u;
|
|
/* 02530780 */ if (_t23) goto L_02530784; else goto L_0253078C;
|
|
L_02530784: ; // 0x2530784
|
|
/* 02530784 */ cpu->r[11] = rbrew_rlwinm(cpu->r[11], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02530788 */ cpu->r[12] = cpu->r[12] + cpu->r[11];
|
|
L_0253078C: ; // 0x253078c
|
|
/* 0253078C */ _t24 = cpu->r[12] + 0x00000000u;
|
|
/* 0253078C */ rbrew_write32(cpu->mem, _t24, cpu->r[7]);
|
|
/* 02530790 */ _t25 = cpu->r[6] + 0x00000004u;
|
|
/* 02530790 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02530794 */ _t26 = cpu->r[12] + 0x00000004u;
|
|
/* 02530794 */ rbrew_write32(cpu->mem, _t26, cpu->r[0]);
|
|
/* 02530798 */ return;
|
|
}
|
|
|
|
// fn_0253079C @ 0x253079c
|
|
void Gambit_fn_0253079C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0253079C: ; // 0x253079c
|
|
/* 0253079C */ cpu->r[0] = cpu->lr;
|
|
/* 025307A0 */ cpu->r[12] = 0x101D0000u;
|
|
/* 025307A4 */ cpu->r[7] = 0x02530000u;
|
|
/* 025307A8 */ cpu->r[6] = 0x02530000u;
|
|
/* 025307AC */ cpu->r[10] = 0x101C0000u;
|
|
/* 025307B0 */ cpu->r[7] = cpu->r[7] + 0x00000150u;
|
|
/* 025307B4 */ cpu->r[6] = cpu->r[6] + 0x00000150u;
|
|
/* 025307B8 */ cpu->r[10] = cpu->r[10] + 0x000068DCu;
|
|
/* 025307BC */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 025307BC */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 025307C0 */ cpu->r[0] = 0x101C0000u;
|
|
/* 025307C4 */ _t1 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 025307C4 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 025307C4 */ cpu->r[1] = _t1;
|
|
/* 025307C8 */ cpu->r[0] = cpu->r[0] + 0x000068D8u;
|
|
/* 025307CC */ _t2 = cpu->r[12] + 0xFFFF9034u;
|
|
/* 025307CC */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 025307D0 */ cpu->r[8] = 0x00000000u;
|
|
/* 025307D4 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 025307D4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 025307D8 */ cpu->r[9] = cpu->r[1] + 0x0000000Cu;
|
|
/* 025307DC */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025307DC */ rbrew_write32(cpu->mem, _t4, cpu->r[12]);
|
|
/* 025307E0 */ Gambit_fn_02791B10(cpu);
|
|
/* 025307E4 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 025307E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 025307E8 */ cpu->lr = cpu->r[0];
|
|
/* 025307EC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 025307F0 */ return;
|
|
}
|
|
|
|
// fn_025307C4 @ 0x25307c4
|
|
void Gambit_fn_025307C4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_025307C4: ; // 0x25307c4
|
|
/* 025307C4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 025307C4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 025307C4 */ cpu->r[1] = _t0;
|
|
/* 025307C8 */ cpu->r[0] = cpu->r[0] + 0x000068D8u;
|
|
/* 025307CC */ _t1 = cpu->r[12] + 0xFFFF9034u;
|
|
/* 025307CC */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 025307D0 */ cpu->r[8] = 0x00000000u;
|
|
/* 025307D4 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 025307D4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 025307D8 */ cpu->r[9] = cpu->r[1] + 0x0000000Cu;
|
|
/* 025307DC */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025307DC */ rbrew_write32(cpu->mem, _t3, cpu->r[12]);
|
|
/* 025307E0 */ Gambit_fn_02791B10(cpu);
|
|
/* 025307E4 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 025307E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 025307E8 */ cpu->lr = cpu->r[0];
|
|
/* 025307EC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 025307F0 */ return;
|
|
}
|
|
|
|
// fn_025307F4 @ 0x25307f4
|
|
void Gambit_fn_025307F4(CPUState* cpu) {
|
|
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_025307F4: ; // 0x25307f4
|
|
/* 025307F4 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 025307F4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 025307F4 */ cpu->r[1] = _t0;
|
|
/* 025307F8 */ cpu->r[0] = cpu->lr;
|
|
/* 025307FC */ /* nop */
|
|
/* 02530800 */ cpu->r[30] = cpu->r[5];
|
|
/* 02530804 */ cpu->r[26] = cpu->r[3];
|
|
/* 02530808 */ cpu->r[27] = cpu->r[7];
|
|
/* 0253080C */ cpu->r[3] = cpu->r[30];
|
|
/* 02530810 */ cpu->r[31] = cpu->r[6];
|
|
/* 02530814 */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02530814 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02530818 */ cpu->r[29] = cpu->r[4];
|
|
/* 0253081C */ cpu->r[4] = cpu->r[27];
|
|
/* 02530820 */ Gambit_fn_027DB318(cpu);
|
|
/* 02530824 */ cpu->r[28] = cpu->r[3] + cpu->r[31];
|
|
/* 02530824 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 02530828 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02530828 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02530828 */ if (_t3) goto L_025308BC; else goto L_0253082C;
|
|
L_0253082C: ; // 0x253082c
|
|
/* 0253082C */ cpu->r[5] = cpu->r[28];
|
|
/* 02530830 */ cpu->r[4] = cpu->r[29];
|
|
/* 02530834 */ cpu->r[3] = cpu->r[26];
|
|
/* 02530838 */ Gambit_fn_0253079C(cpu);
|
|
/* 0253083C */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0253083C */ cpu->r[29] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02530840 */ _t5 = cpu->r[30] + 0x00000004u;
|
|
/* 02530840 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02530844 */ cpu->r[30] = cpu->r[30] - cpu->r[29];
|
|
/* 02530848 */ cpu->r[31] = cpu->r[0] - cpu->r[29];
|
|
/* 0253084C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]);
|
|
/* 02530850 */ cpu->r[25] = 0x00000000u;
|
|
/* 02530854 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02530854 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02530854 */ if (_t7) goto L_025308BC; else goto L_02530858;
|
|
L_02530858: ; // 0x2530858
|
|
/* 02530858 */ cpu->r[24] = 0x101C0000u;
|
|
L_0253085C: ; // 0x253085c
|
|
/* 0253085C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02530860 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02530860 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02530860 */ if (_t9) goto L_02530878; else goto L_02530864;
|
|
L_02530864: ; // 0x2530864
|
|
/* 02530864 */ cpu->ctr = cpu->r[27];
|
|
/* 02530868 */ cpu->r[3] = cpu->r[31];
|
|
/* 0253086C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02530870 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02530874 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02530874 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02530874 */ if (_t11) goto L_025308A8; else goto L_02530878;
|
|
L_02530878: ; // 0x2530878
|
|
/* 02530878 */ _t12 = cpu->r[24] + 0x000068D8u;
|
|
/* 02530878 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0253087C */ cpu->r[6] = cpu->r[26] + cpu->r[0];
|
|
/* 02530880 */ _t13 = cpu->r[6] + 0x00000104u;
|
|
/* 02530880 */ cpu->r[12] = rbrew_read8(cpu->mem, _t13);
|
|
/* 02530884 */ _t14 = cpu->r[26] + 0x00000030u;
|
|
/* 02530884 */ cpu->r[10] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02530888 */ cpu->r[9] = rbrew_rlwinm(cpu->r[12], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0253088C */ _t15 = cpu->r[9] + cpu->r[10];
|
|
/* 0253088C */ cpu->r[11] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02530890 */ cpu->r[8] = rbrew_rlwinm(cpu->r[25], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02530894 */ _t16 = cpu->r[11] + 0x00000004u;
|
|
/* 02530894 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02530898 */ cpu->r[4] = cpu->r[31];
|
|
/* 0253089C */ _t17 = cpu->r[8] + cpu->r[0];
|
|
/* 0253089C */ cpu->r[3] = rbrew_read32(cpu->mem, _t17);
|
|
/* 025308A0 */ cpu->r[25] = cpu->r[25] + 0x00000001u;
|
|
/* 025308A4 */ Gambit_fn_0252D67C(cpu);
|
|
L_025308A8: ; // 0x25308a8
|
|
/* 025308A8 */ cpu->r[12] = cpu->r[31] + cpu->r[29];
|
|
/* 025308AC */ _t18 = cpu->r[12] + 0x00000004u;
|
|
/* 025308AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 025308B0 */ cpu->r[31] = cpu->r[0] - cpu->r[29];
|
|
/* 025308B4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]);
|
|
/* 025308B8 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025308B8 */ _t20 = _t19 & 0x00000001u;
|
|
/* 025308B8 */ if (_t20) goto L_025308BC; else goto L_0253085C;
|
|
L_025308BC: ; // 0x25308bc
|
|
/* 025308BC */ cpu->r[3] = cpu->r[28];
|
|
/* 025308C0 */ /* nop */
|
|
/* 025308C4 */ _t21 = cpu->r[1] + 0x0000002Cu;
|
|
/* 025308C4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 025308C8 */ cpu->lr = cpu->r[0];
|
|
/* 025308CC */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 025308D0 */ return;
|
|
}
|
|
|
|
// fn_025308D4 @ 0x25308d4
|
|
void Gambit_fn_025308D4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _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_025308D4: ; // 0x25308d4
|
|
/* 025308D4 */ cpu->r[0] = cpu->lr;
|
|
/* 025308D8 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 025308D8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 025308D8 */ cpu->r[1] = _t0;
|
|
/* 025308DC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025308DC */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 025308E0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 025308E0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 025308E4 */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 025308E4 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 025308E8 */ cpu->r[31] = cpu->r[3];
|
|
/* 025308E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 025308EC */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 025308EC */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 025308F0 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025308F0 */ _t6 = _t5 & 0x00000001u;
|
|
/* 025308F0 */ if (_t6) goto L_025308F4; else goto L_02530904;
|
|
L_025308F4: ; // 0x25308f4
|
|
/* 025308F4 */ cpu->r[3] = 0x0000009Cu;
|
|
/* 025308F8 */ Gambit_fn_02801A78(cpu);
|
|
/* 025308FC */ cpu->r[31] = cpu->r[3];
|
|
/* 025308FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02530900 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02530900 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02530900 */ if (_t8) goto L_02530974; else goto L_02530904;
|
|
L_02530904: ; // 0x2530904
|
|
/* 02530904 */ cpu->r[29] = cpu->r[31] + 0x00000004u;
|
|
/* 02530904 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 02530908 */ cpu->r[30] = 0x00000000u;
|
|
/* 0253090C */ _t9 = cpu->r[31] + 0x00000000u;
|
|
/* 0253090C */ rbrew_write32(cpu->mem, _t9, cpu->r[30]);
|
|
/* 02530910 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02530910 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02530910 */ if (_t11) goto L_02530914; else goto L_02530924;
|
|
L_02530914: ; // 0x2530914
|
|
/* 02530914 */ cpu->r[3] = 0x00000098u;
|
|
/* 02530918 */ Gambit_fn_02801A78(cpu);
|
|
/* 0253091C */ cpu->r[29] = cpu->r[3];
|
|
/* 0253091C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 02530920 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02530920 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02530920 */ if (_t13) goto L_02530974; else goto L_02530924;
|
|
L_02530924: ; // 0x2530924
|
|
/* 02530924 */ _t14 = cpu->r[29] + 0x00000000u;
|
|
/* 02530924 */ rbrew_write32(cpu->mem, _t14, cpu->r[30]);
|
|
/* 02530928 */ cpu->r[3] = cpu->r[29] + 0x00000008u;
|
|
/* 02530928 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0253092C */ _t15 = cpu->r[29] + 0x00000004u;
|
|
/* 0253092C */ rbrew_write32(cpu->mem, _t15, cpu->r[30]);
|
|
/* 02530930 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02530930 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02530930 */ if (_t17) goto L_02530934; else goto L_02530944;
|
|
L_02530934: ; // 0x2530934
|
|
/* 02530934 */ cpu->r[3] = 0x00000010u;
|
|
/* 02530938 */ Gambit_fn_02801A78(cpu);
|
|
/* 0253093C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02530940 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02530940 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02530940 */ if (_t19) goto L_02530954; else goto L_02530944;
|
|
L_02530944: ; // 0x2530944
|
|
/* 02530944 */ _t20 = cpu->r[3] + 0x00000004u;
|
|
/* 02530944 */ rbrew_write32(cpu->mem, _t20, cpu->r[30]);
|
|
/* 02530948 */ _t21 = cpu->r[3] + 0x00000008u;
|
|
/* 02530948 */ rbrew_write32(cpu->mem, _t21, cpu->r[30]);
|
|
/* 0253094C */ _t22 = cpu->r[3] + 0x00000000u;
|
|
/* 0253094C */ rbrew_write32(cpu->mem, _t22, cpu->r[30]);
|
|
/* 02530950 */ _t23 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02530950 */ rbrew_write32(cpu->mem, _t23, cpu->r[30]);
|
|
L_02530954: ; // 0x2530954
|
|
/* 02530954 */ cpu->r[11] = cpu->r[29] + 0x00000008u;
|
|
/* 02530958 */ cpu->r[0] = cpu->r[11] + 0x00000010u;
|
|
/* 02530958 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0253095C */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0253095C */ _t25 = _t24 & 0x00000001u;
|
|
/* 0253095C */ if (_t25) goto L_02530974; else goto L_02530960;
|
|
L_02530960: ; // 0x2530960
|
|
/* 02530960 */ _t26 = cpu->r[29] + 0x00000008u;
|
|
/* 02530960 */ rbrew_write32(cpu->mem, _t26, cpu->r[0]);
|
|
/* 02530964 */ cpu->r[12] = 0x00000040u;
|
|
/* 02530968 */ _t27 = cpu->r[29] + 0x00000010u;
|
|
/* 02530968 */ rbrew_write32(cpu->mem, _t27, cpu->r[30]);
|
|
/* 0253096C */ _t28 = cpu->r[29] + 0x0000000Cu;
|
|
/* 0253096C */ rbrew_write32(cpu->mem, _t28, cpu->r[12]);
|
|
/* 02530970 */ _t29 = cpu->r[29] + 0x00000014u;
|
|
/* 02530970 */ rbrew_write32(cpu->mem, _t29, cpu->r[30]);
|
|
L_02530974: ; // 0x2530974
|
|
/* 02530974 */ _t30 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02530974 */ cpu->r[29] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02530978 */ _t31 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02530978 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0253097C */ cpu->r[3] = cpu->r[31];
|
|
/* 02530980 */ _t32 = cpu->r[1] + 0x00000010u;
|
|
/* 02530980 */ cpu->r[30] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02530984 */ cpu->lr = cpu->r[0];
|
|
/* 02530988 */ _t33 = cpu->r[1] + 0x00000014u;
|
|
/* 02530988 */ cpu->r[31] = rbrew_read32(cpu->mem, _t33);
|
|
/* 0253098C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02530990 */ return;
|
|
}
|
|
|
|
// fn_025308D8 @ 0x25308d8
|
|
void Gambit_fn_025308D8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _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_025308D8: ; // 0x25308d8
|
|
/* 025308D8 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 025308D8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 025308D8 */ cpu->r[1] = _t0;
|
|
/* 025308DC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 025308DC */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 025308E0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 025308E0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 025308E4 */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 025308E4 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 025308E8 */ cpu->r[31] = cpu->r[3];
|
|
/* 025308E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 025308EC */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 025308EC */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 025308F0 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025308F0 */ _t6 = _t5 & 0x00000001u;
|
|
/* 025308F0 */ if (_t6) goto L_025308F4; else goto L_02530904;
|
|
L_025308F4: ; // 0x25308f4
|
|
/* 025308F4 */ cpu->r[3] = 0x0000009Cu;
|
|
/* 025308F8 */ Gambit_fn_02801A78(cpu);
|
|
/* 025308FC */ cpu->r[31] = cpu->r[3];
|
|
/* 025308FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02530900 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02530900 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02530900 */ if (_t8) goto L_02530974; else goto L_02530904;
|
|
L_02530904: ; // 0x2530904
|
|
/* 02530904 */ cpu->r[29] = cpu->r[31] + 0x00000004u;
|
|
/* 02530904 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 02530908 */ cpu->r[30] = 0x00000000u;
|
|
/* 0253090C */ _t9 = cpu->r[31] + 0x00000000u;
|
|
/* 0253090C */ rbrew_write32(cpu->mem, _t9, cpu->r[30]);
|
|
/* 02530910 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02530910 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02530910 */ if (_t11) goto L_02530914; else goto L_02530924;
|
|
L_02530914: ; // 0x2530914
|
|
/* 02530914 */ cpu->r[3] = 0x00000098u;
|
|
/* 02530918 */ Gambit_fn_02801A78(cpu);
|
|
/* 0253091C */ cpu->r[29] = cpu->r[3];
|
|
/* 0253091C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 02530920 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02530920 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02530920 */ if (_t13) goto L_02530974; else goto L_02530924;
|
|
L_02530924: ; // 0x2530924
|
|
/* 02530924 */ _t14 = cpu->r[29] + 0x00000000u;
|
|
/* 02530924 */ rbrew_write32(cpu->mem, _t14, cpu->r[30]);
|
|
/* 02530928 */ cpu->r[3] = cpu->r[29] + 0x00000008u;
|
|
/* 02530928 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0253092C */ _t15 = cpu->r[29] + 0x00000004u;
|
|
/* 0253092C */ rbrew_write32(cpu->mem, _t15, cpu->r[30]);
|
|
/* 02530930 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02530930 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02530930 */ if (_t17) goto L_02530934; else goto L_02530944;
|
|
L_02530934: ; // 0x2530934
|
|
/* 02530934 */ cpu->r[3] = 0x00000010u;
|
|
/* 02530938 */ Gambit_fn_02801A78(cpu);
|
|
/* 0253093C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02530940 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02530940 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02530940 */ if (_t19) goto L_02530954; else goto L_02530944;
|
|
L_02530944: ; // 0x2530944
|
|
/* 02530944 */ _t20 = cpu->r[3] + 0x00000004u;
|
|
/* 02530944 */ rbrew_write32(cpu->mem, _t20, cpu->r[30]);
|
|
/* 02530948 */ _t21 = cpu->r[3] + 0x00000008u;
|
|
/* 02530948 */ rbrew_write32(cpu->mem, _t21, cpu->r[30]);
|
|
/* 0253094C */ _t22 = cpu->r[3] + 0x00000000u;
|
|
/* 0253094C */ rbrew_write32(cpu->mem, _t22, cpu->r[30]);
|
|
/* 02530950 */ _t23 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02530950 */ rbrew_write32(cpu->mem, _t23, cpu->r[30]);
|
|
L_02530954: ; // 0x2530954
|
|
/* 02530954 */ cpu->r[11] = cpu->r[29] + 0x00000008u;
|
|
/* 02530958 */ cpu->r[0] = cpu->r[11] + 0x00000010u;
|
|
/* 02530958 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0253095C */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0253095C */ _t25 = _t24 & 0x00000001u;
|
|
/* 0253095C */ if (_t25) goto L_02530974; else goto L_02530960;
|
|
L_02530960: ; // 0x2530960
|
|
/* 02530960 */ _t26 = cpu->r[29] + 0x00000008u;
|
|
/* 02530960 */ rbrew_write32(cpu->mem, _t26, cpu->r[0]);
|
|
/* 02530964 */ cpu->r[12] = 0x00000040u;
|
|
/* 02530968 */ _t27 = cpu->r[29] + 0x00000010u;
|
|
/* 02530968 */ rbrew_write32(cpu->mem, _t27, cpu->r[30]);
|
|
/* 0253096C */ _t28 = cpu->r[29] + 0x0000000Cu;
|
|
/* 0253096C */ rbrew_write32(cpu->mem, _t28, cpu->r[12]);
|
|
/* 02530970 */ _t29 = cpu->r[29] + 0x00000014u;
|
|
/* 02530970 */ rbrew_write32(cpu->mem, _t29, cpu->r[30]);
|
|
L_02530974: ; // 0x2530974
|
|
/* 02530974 */ _t30 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02530974 */ cpu->r[29] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02530978 */ _t31 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02530978 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0253097C */ cpu->r[3] = cpu->r[31];
|
|
/* 02530980 */ _t32 = cpu->r[1] + 0x00000010u;
|
|
/* 02530980 */ cpu->r[30] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02530984 */ cpu->lr = cpu->r[0];
|
|
/* 02530988 */ _t33 = cpu->r[1] + 0x00000014u;
|
|
/* 02530988 */ cpu->r[31] = rbrew_read32(cpu->mem, _t33);
|
|
/* 0253098C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02530990 */ return;
|
|
}
|
|
|
|
// fn_02530994 @ 0x2530994
|
|
void Gambit_fn_02530994(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_02530994: ; // 0x2530994
|
|
/* 02530994 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 02530994 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02530994 */ cpu->r[1] = _t0;
|
|
/* 02530998 */ /* nop */
|
|
/* 0253099C */ cpu->r[0] = cpu->lr;
|
|
/* 025309A0 */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 025309A0 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 025309A4 */ cpu->r[29] = cpu->r[4];
|
|
/* 025309A8 */ _t2 = cpu->r[29] + 0x00000044u;
|
|
/* 025309A8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t2);
|
|
/* 025309AC */ cpu->r[28] = cpu->r[3];
|
|
/* 025309B0 */ cpu->r[30] = cpu->r[5];
|
|
/* 025309B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 025309B8 */ cpu->r[31] = cpu->r[6];
|
|
/* 025309BC */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 025309BC */ _t4 = _t3 & 0x00000001u;
|
|
/* 025309BC */ if (_t4) goto L_025309C0; else goto L_02530A28;
|
|
L_025309C0: ; // 0x25309c0
|
|
/* 025309C0 */ cpu->r[12] = 0x101D0000u;
|
|
/* 025309C4 */ _t5 = cpu->r[12] + 0xFFFFAEA8u;
|
|
/* 025309C4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 025309C8 */ cpu->r[27] = cpu->r[12] + 0x0000005Cu;
|
|
/* 025309CC */ cpu->r[3] = cpu->r[27];
|
|
/* 025309D0 */ Gambit_fn_02836FFC(cpu);
|
|
/* 025309D4 */ cpu->r[6] = 0x100C0000u;
|
|
/* 025309D8 */ cpu->r[5] = 0x00000001u;
|
|
/* 025309DC */ cpu->r[6] = cpu->r[6] + 0x00004130u;
|
|
/* 025309E0 */ cpu->r[7] = cpu->r[31];
|
|
/* 025309E4 */ cpu->r[4] = cpu->r[30];
|
|
/* 025309E8 */ cpu->r[3] = cpu->r[29];
|
|
/* 025309EC */ Gambit_fn_023BB9D4(cpu);
|
|
/* 025309F0 */ _t6 = cpu->r[28] + 0x00000000u;
|
|
/* 025309F0 */ rbrew_write32(cpu->mem, _t6, cpu->r[3]);
|
|
/* 025309F4 */ cpu->r[5] = cpu->r[31];
|
|
/* 025309F8 */ cpu->r[4] = 0x00000000u;
|
|
/* 025309FC */ Gambit_fn_025313CC(cpu);
|
|
/* 02530A00 */ _t7 = cpu->r[28] + 0x00000008u;
|
|
/* 02530A00 */ rbrew_write32(cpu->mem, _t7, cpu->r[3]);
|
|
/* 02530A04 */ _t8 = cpu->r[28] + 0x00000004u;
|
|
/* 02530A04 */ rbrew_write32(cpu->mem, _t8, cpu->r[3]);
|
|
/* 02530A08 */ _t9 = cpu->r[28] + 0x00000000u;
|
|
/* 02530A08 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02530A0C */ Gambit_fn_026EE308(cpu);
|
|
/* 02530A10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02530A14 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02530A14 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02530A14 */ if (_t11) goto L_02530A20; else goto L_02530A18;
|
|
L_02530A18: ; // 0x2530a18
|
|
/* 02530A18 */ _t12 = cpu->r[28] + 0x00000000u;
|
|
/* 02530A18 */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02530A1C */ Gambit_fn_026EE1F4(cpu);
|
|
L_02530A20: ; // 0x2530a20
|
|
/* 02530A20 */ cpu->r[3] = cpu->r[27];
|
|
/* 02530A24 */ Gambit_fn_02837030(cpu);
|
|
L_02530A28: ; // 0x2530a28
|
|
/* 02530A28 */ /* nop */
|
|
/* 02530A2C */ _t13 = cpu->r[1] + 0x00000024u;
|
|
/* 02530A2C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02530A30 */ cpu->lr = cpu->r[0];
|
|
/* 02530A34 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 02530A38 */ return;
|
|
}
|
|
|