Created
August 4, 2015 22:31
-
-
Save vlj/dd1ae47070206ce68c26 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Recompiling block : | |
00177ab0: 00 00 00 0e mfcr r12 | |
00177ac0: 00 00 00 08 stdu r1,-208(r1) #ffffff30 | |
00177ad0: 00 00 00 08 std r20,112(r1) #70 | |
00177ae0: 00 00 00 0b std r23,136(r1) #88 | |
00177af0: 00 00 00 0e std r25,152(r1) #98 | |
00177b00: 00 00 00 08 std r26,160(r1) #a0 | |
00177b10: 00 00 00 0e std r21,120(r1) #78 | |
00177b20: 00 00 00 0d std r22,128(r1) #80 | |
00177b30: 00 00 00 02 std r24,144(r1) #90 | |
00177b40: 00 00 00 06 std r27,168(r1) #a8 | |
00177b50: 00 00 00 06 std r28,176(r1) #b0 | |
00177b60: 00 00 00 07 std r29,184(r1) #b8 | |
00177b70: 00 00 00 08 std r30,192(r1) #c0 | |
00177b80: 00 00 00 06 std r31,200(r1) #c8 | |
00177b90: 00 00 00 07 mr r26,r3 | |
00177ba0: 00 00 00 07 mr r20,r4 | |
00177bb0: 00 00 00 08 mr r25,r6 | |
00177bc0: 00 00 00 07 mr r23,r7 | |
00177bd0: 00 00 00 09 stw r12,216(r1) #d8 | |
00177be0: 00 00 00 0a mflr r0 | |
00177bf0: 00 00 00 08 std r0,224(r1) #e0 | |
00177c00: 00 00 00 0a lwz r0,8(r3) #8 | |
00177c10: 00 00 00 06 cmpwi cr7,r0,0 #0 | |
00177c20: 00 00 00 07 ble cr7,0x177f08 | |
00177c30: 00 00 00 08 add r0,r5,r8 | |
00177c40: 00 00 00 0a li r21,0 #0 | |
00177c50: 00 00 00 07 divw r22,r0,r6 | |
00177c60: 00 00 00 0a divw r24,r5,r6 | |
00177c70: 00 00 00 09 cmpw cr4,r22,r24 | |
00177c80: 00 00 00 02 ble cr4,0x177f50 | |
00177c90: 00 00 00 07 lwz r4,36(r26) #24 | |
00177ca0: 00 00 00 09 clrldi r27,r23,32 | |
00177cb0: 00 00 00 07 lwz r31,40(r26) #28 | |
00177cc0: 00 00 00 09 extsw r4,r4 | |
00177cd0: 00 00 00 08 mr r3,r27 | |
00177ce0: 00 00 00 0c bl 0x173764 | |
00177cf0: 00 00 00 0a nop | |
00177d00: 00 00 00 09 cmpwi cr7,r3,0 #0 | |
00177d10: 00 00 00 09 blt cr7,0x177fa0 | |
00177d20: 00 00 00 0a rlwinm r9,r3,2,0,29 | |
00177d30: 00 00 00 0d lwz r0,32(r26) #20 | |
00177d40: 00 00 00 0d add r9,r9,r0 | |
00177d50: 00 00 00 07 clrldi r9,r9,32 | |
00177d60: 00 00 00 09 lwz r11,0(r9) #0 | |
00177d70: 00 00 00 07 cmpwi cr7,r11,0 #0 | |
00177d80: 00 00 00 0b blt cr7,0x177e24 | |
00177d90: 00 00 00 0d lwz r9,28(r26) #1c | |
00177da0: 00 00 00 0b mr r3,r27 | |
00177db0: 00 00 00 0a addi r30,-1(r11) #ffffffff | |
00177dc0: 00 00 00 0a add r9,r11,r9 | |
00177dd0: 00 00 00 0e addi r9,-1(r9) #ffffffff | |
00177de0: 00 00 00 0e clrldi r9,r9,32 | |
00177df0: 00 00 00 0d lbz r4,0(r9) #0 | |
00177e00: 00 00 00 0d extsb r4,r4 | |
00177e10: 00 00 00 08 bl 0x173a48 | |
00177e20: 00 00 00 0e nop | |
00177e30: 00 00 00 0e cmpwi cr7,r30,-1 #ffffffff | |
00177e40: 00 00 00 0b beq cr7,0x178034 | |
00177e50: 00 00 00 0d lwz r11,0(r26) #0 | |
00177e60: 00 00 00 0d lwz r0,16(r26) #10 | |
00177e70: 00 00 00 10 cmpwi cr7,r11,0 #0 | |
00177e80: 00 00 00 0a mullw r9,r30,r11 | |
00177e90: 00 00 00 09 rlwinm r9,r9,2,0,29 | |
00177ea0: 00 00 00 09 add r3,r9,r0 | |
00177eb0: 00 00 00 0a ble cr7,0x177e24 | |
00177ec0: 00 00 00 0e clrldi r11,r11,32 | |
00177ed0: 00 00 00 0e mtctr r11 | |
00177ee0: 00 00 00 09 rlwinm r9,r21,2,0,29 | |
00177ef0: 00 00 00 0b rlwinm r11,r24,2,0,29 | |
00177f00: 00 00 00 09 add r9,r9,r20 | |
00177f10: 00 00 00 0d clrldi r10,r3,32 | |
00177f20: 00 00 00 0f clrldi r9,r9,32 | |
00177f30: 00 00 00 0d addi r21,1(r21) #1 | |
00177f40: 00 00 00 09 addi r3,4(r3) #4 | |
00177f50: 00 00 00 08 cmpw cr7,r25,r21 | |
00177f60: 00 00 00 0c lfs f13,0(r10) #0 | |
00177f70: 00 00 00 0d lwz r0,0(r9) #0 | |
00177f80: 00 00 00 0c add r11,r11,r0 | |
00177f90: 00 00 00 0d clrldi r11,r11,32 | |
00177fa0: 00 00 00 09 lfs f0,0(r11) #0 | |
00177fb0: 00 00 00 0e fadds f0,f0,f13 | |
00177fc0: 00 00 00 10 stfs f0,0(r11) #0 | |
00177fd0: 00 00 00 0d beq cr7,0x1781bc | |
00177fe0: 00 00 00 0e bdnz cr0,0x177fa0 | |
00177ff0: 00 00 00 0d cmpw cr4,r22,r24 | |
00178000: 00 00 00 11 b 0x177f20 | |
00178010: 00 00 00 0f rlwinm r9,r11,0,17,31 | |
00178020: 00 00 00 0c lwz r0,8(r26) #8 | |
00178030: 00 00 00 0d rldicl r30,r11,49,49 | |
00178040: 00 00 00 0d subf r28,r9,r0 | |
00178050: 00 00 00 0f extsw r29,r31 | |
00178060: 00 00 00 00 mr r3,r27 | |
00178070: 00 00 00 07 mr r4,r29 | |
00178080: 00 00 00 09 bl 0x173a1c | |
00178090: 00 00 00 07 nop | |
001780a0: 00 00 00 0b cmpwi cr7,r3,0 #0 | |
001780b0: 00 00 00 0e bge cr7,0x1780e8 | |
00178190: 00 00 00 0e rlwinm r0,r3,16,0,31 | |
001781a0: 00 00 00 0f lis r10,255 #ff | |
001781b0: 00 00 00 0c lis r9,-256 #ffffff00 | |
001781c0: 00 00 00 0c ori r10,255(r10) #ff | |
001781d0: 00 00 00 0d rlwinm r11,r0,8,0,23 | |
001781e0: 00 00 00 13 ori r9,65280(r9) #ff00 | |
001781f0: 00 00 00 10 rlwinm r0,r0,24,8,31 | |
00178200: 00 00 00 0c and r11,r11,r9 | |
00178210: 00 00 00 0d and r0,r0,r10 | |
00178220: 00 00 00 0b lis r8,3855 #f0f | |
00178230: 00 00 00 10 or r0,r0,r11 | |
00178240: 00 00 00 00 lis r9,-3856 #fffff0f0 | |
00178250: 00 00 00 0f ori r8,3855(r8) #f0f | |
00178260: 00 00 00 0a rlwinm r11,r0,4,0,27 | |
00178270: 00 00 00 0a ori r9,61680(r9) #f0f0 | |
00178280: 00 00 00 0f rlwinm r0,r0,28,4,31 | |
00178290: 00 00 00 0f and r11,r11,r9 | |
001782a0: 00 00 00 0f and r0,r0,r8 | |
001782b0: 00 00 00 0e lis r10,13107 #3333 | |
001782c0: 00 00 00 09 or r0,r0,r11 | |
001782d0: 00 00 00 0f lis r9,-13108 #ffffcccc | |
001782e0: 00 00 00 11 ori r10,13107(r10) #3333 | |
001782f0: 00 00 00 0d rlwinm r11,r0,2,0,29 | |
00178300: 00 00 00 11 ori r9,52428(r9) #cccc | |
00178310: 00 00 00 0e rlwinm r0,r0,30,2,31 | |
00178320: 00 00 00 14 and r11,r11,r9 | |
00178330: 00 00 00 0f and r0,r0,r10 | |
00178340: 00 00 00 0c lis r8,21845 #5555 | |
00178350: 00 00 00 0d or r0,r0,r11 | |
00178360: 00 00 00 0e lis r10,-21846 #ffffaaaa | |
00178370: 00 00 00 00 subf r11,r30,r28 | |
00178380: 00 00 00 12 rlwinm r9,r0,1,0,30 | |
00178390: 00 00 00 0e ori r8,21845(r8) #5555 | |
001783a0: 00 00 00 0e ori r10,43690(r10) #aaaa | |
001783b0: 00 00 00 0d rlwinm r0,r0,31,1,31 | |
001783c0: 00 00 00 00 cmpwi cr7,r11,1 #1 | |
001783d0: 00 00 00 00 and r0,r0,r8 | |
001783e0: 00 00 00 13 and r9,r9,r10 | |
001783f0: 00 00 00 0e or r3,r0,r9 | |
00178400: 00 00 00 0c ble cr7,0x178454 | |
00178410: 00 00 00 11 lwz r8,20(r26) #14 | |
00178420: 00 00 00 12 srawi r11,r11,1 | |
00178430: 00 00 00 11 li r10,1 #1 | |
00178440: 00 00 00 12 add r9,r11,r30 | |
00178450: 00 00 00 07 rlwinm r9,r9,2,0,29 | |
00178460: 00 00 00 0e add r9,r9,r8 | |
00178470: 00 00 00 0f clrldi r9,r9,32 | |
00178480: 00 00 00 0c lwz r0,0(r9) #0 | |
00178490: 00 00 00 0f cmplw cr7,r3,r0 | |
001784a0: 00 00 00 0e blt cr7,0x1784a8 | |
001784b0: 00 00 00 00 li r10,0 #0 | |
001784c0: 00 00 00 0f neg r0,r10 | |
001784d0: 00 00 00 0d addi r9,-1(r10) #ffffffff | |
001784e0: 00 00 00 0c and r0,r11,r0 | |
001784f0: 00 00 00 0e and r9,r11,r9 | |
00178500: 00 00 00 11 subf r28,r0,r28 | |
00178510: 00 00 00 10 add r30,r30,r9 | |
00178520: 00 00 00 0c subf r11,r30,r28 | |
00178530: 00 00 00 0d cmpwi cr7,r11,1 #1 | |
00178540: 00 00 00 0b bgt cr7,0x1784f8 | |
00178550: 00 00 00 11 lwz r9,28(r26) #1c | |
00178560: 00 00 00 13 add r9,r30,r9 | |
00178570: 00 00 00 11 clrldi r9,r9,32 | |
00178580: 00 00 00 0d lbz r0,0(r9) #0 | |
00178590: 00 00 00 0e extsb r0,r0 | |
001785a0: 00 00 00 12 cmpw cr7,r0,r31 | |
001785b0: 00 00 00 11 bgt cr7,0x17863c | |
001785c0: 00 00 00 12 mr r3,r27 | |
001785d0: 00 00 00 10 extsw r4,r0 | |
001785e0: 00 00 00 0c bl 0x174024 | |
001785f0: 00 00 00 00 nop | |
00178600: 00 00 00 12 b 0x17840c | |
00178620: 00 00 00 12 ld r0,224(r1) #e0 | |
00178630: 00 00 00 11 extsw r3,r3 | |
00178640: 00 00 00 00 lwz r12,216(r1) #d8 | |
00178650: 00 00 00 00 ld r20,112(r1) #70 | |
00178660: 00 00 00 05 mtlr r0 | |
00178670: 00 00 00 07 ld r21,120(r1) #78 | |
00178680: 00 00 00 05 mtocrf 8,r12 | |
00178690: 00 00 00 09 ld r22,128(r1) #80 | |
001786a0: 00 00 00 0b ld r23,136(r1) #88 | |
001786b0: 00 00 00 09 ld r24,144(r1) #90 | |
001786c0: 00 00 00 07 ld r25,152(r1) #98 | |
001786d0: 00 00 00 07 ld r26,160(r1) #a0 | |
001786e0: 00 00 00 0a ld r27,168(r1) #a8 | |
001786f0: 00 00 00 0a ld r28,176(r1) #b0 | |
00178700: 00 00 00 0a ld r29,184(r1) #b8 | |
00178710: 00 00 00 0a ld r30,192(r1) #c0 | |
00178720: 00 00 00 05 ld r31,200(r1) #c8 | |
00178730: 00 00 00 09 addi r1,208(r1) #d0 | |
00178740: 00 00 00 0a blr | |
00178780: 00 00 00 0b addi r24,1(r24) #1 | |
00178790: 00 00 00 0c li r21,0 #0 | |
001787a0: 00 00 00 0a bdz cr0,0x1785b4 | |
001787b0: 00 00 00 0a b 0x17857c | |
001787c0: 00 00 00 0c li r3,0 #0 | |
001787d0: 00 00 00 0e b 0x178764 | |
LLVM bytecode: | |
; ModuleID = 'Module' | |
target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" | |
target triple = "x86_64-pc-windows-elf" | |
declare x86_64_win64cc i32 @execute_unknown_function(i8*, i64) | |
declare x86_64_win64cc i32 @execute_unknown_block(i8*, i64) | |
define x86_64_win64cc i32 @fn_0x0005DEAC_0(i8* %ppu_state, i64 %context) { | |
entry: | |
br label %instr_0x0005DEAC | |
instr_0x0005DEAC: ; preds = %entry | |
%0 = call i32 @MFOCRF(i8* %ppu_state, i32 12) | |
br label %instr_0x0005DEB0 | |
instr_0x0005DEB0: ; preds = %instr_0x0005DEAC | |
%1 = call i32 @STDU(i8* %ppu_state, i32 1, i32 1, i32 -208) | |
br label %instr_0x0005DEB4 | |
instr_0x0005DEB4: ; preds = %instr_0x0005DEB0 | |
%2 = call i32 @STD(i8* %ppu_state, i32 20, i32 1, i32 112) | |
br label %instr_0x0005DEB8 | |
instr_0x0005DEB8: ; preds = %instr_0x0005DEB4 | |
%3 = call i32 @STD(i8* %ppu_state, i32 23, i32 1, i32 136) | |
br label %instr_0x0005DEBC | |
instr_0x0005DEBC: ; preds = %instr_0x0005DEB8 | |
%4 = call i32 @STD(i8* %ppu_state, i32 25, i32 1, i32 152) | |
br label %instr_0x0005DEC0 | |
instr_0x0005DEC0: ; preds = %instr_0x0005DEBC | |
%5 = call i32 @STD(i8* %ppu_state, i32 26, i32 1, i32 160) | |
br label %instr_0x0005DEC4 | |
instr_0x0005DEC4: ; preds = %instr_0x0005DEC0 | |
%6 = call i32 @STD(i8* %ppu_state, i32 21, i32 1, i32 120) | |
br label %instr_0x0005DEC8 | |
instr_0x0005DEC8: ; preds = %instr_0x0005DEC4 | |
%7 = call i32 @STD(i8* %ppu_state, i32 22, i32 1, i32 128) | |
br label %instr_0x0005DECC | |
instr_0x0005DECC: ; preds = %instr_0x0005DEC8 | |
%8 = call i32 @STD(i8* %ppu_state, i32 24, i32 1, i32 144) | |
br label %instr_0x0005DED0 | |
instr_0x0005DED0: ; preds = %instr_0x0005DECC | |
%9 = call i32 @STD(i8* %ppu_state, i32 27, i32 1, i32 168) | |
br label %instr_0x0005DED4 | |
instr_0x0005DED4: ; preds = %instr_0x0005DED0 | |
%10 = call i32 @STD(i8* %ppu_state, i32 28, i32 1, i32 176) | |
br label %instr_0x0005DED8 | |
instr_0x0005DED8: ; preds = %instr_0x0005DED4 | |
%11 = call i32 @STD(i8* %ppu_state, i32 29, i32 1, i32 184) | |
br label %instr_0x0005DEDC | |
instr_0x0005DEDC: ; preds = %instr_0x0005DED8 | |
%12 = call i32 @STD(i8* %ppu_state, i32 30, i32 1, i32 192) | |
br label %instr_0x0005DEE0 | |
instr_0x0005DEE0: ; preds = %instr_0x0005DEDC | |
%13 = call i32 @STD(i8* %ppu_state, i32 31, i32 1, i32 200) | |
br label %instr_0x0005DEE4 | |
instr_0x0005DEE4: ; preds = %instr_0x0005DEE0 | |
%14 = call i32 @OR(i8* %ppu_state, i32 26, i32 3, i32 3, i32 0) | |
br label %instr_0x0005DEE8 | |
instr_0x0005DEE8: ; preds = %instr_0x0005DEE4 | |
%15 = call i32 @OR(i8* %ppu_state, i32 20, i32 4, i32 4, i32 0) | |
br label %instr_0x0005DEEC | |
instr_0x0005DEEC: ; preds = %instr_0x0005DEE8 | |
%16 = call i32 @OR(i8* %ppu_state, i32 25, i32 6, i32 6, i32 0) | |
br label %instr_0x0005DEF0 | |
instr_0x0005DEF0: ; preds = %instr_0x0005DEEC | |
%17 = call i32 @OR(i8* %ppu_state, i32 23, i32 7, i32 7, i32 0) | |
br label %instr_0x0005DEF4 | |
instr_0x0005DEF4: ; preds = %instr_0x0005DEF0 | |
%18 = call i32 @STW(i8* %ppu_state, i32 12, i32 1, i32 216) | |
br label %instr_0x0005DEF8 | |
instr_0x0005DEF8: ; preds = %instr_0x0005DEF4 | |
%19 = call i32 @MFSPR(i8* %ppu_state, i32 0, i32 256) | |
br label %instr_0x0005DEFC | |
instr_0x0005DEFC: ; preds = %instr_0x0005DEF8 | |
%20 = call i32 @STD(i8* %ppu_state, i32 0, i32 1, i32 224) | |
br label %instr_0x0005DF00 | |
instr_0x0005DF00: ; preds = %instr_0x0005DEFC | |
%21 = call i32 @LWZ(i8* %ppu_state, i32 0, i32 3, i32 8) | |
br label %instr_0x0005DF04 | |
instr_0x0005DF04: ; preds = %instr_0x0005DF00 | |
%22 = call i32 @CMPI(i8* %ppu_state, i32 7, i32 0, i32 0, i32 0) | |
br label %instr_0x0005DF08 | |
instr_0x0005DF08: ; preds = %instr_0x0005DF04 | |
%23 = getelementptr i8* %ppu_state, i32 1576 | |
%24 = bitcast i8* %23 to i64* | |
%25 = load i64* %24, align 8 | |
%26 = getelementptr i8* %ppu_state, i32 1540 | |
%27 = bitcast i8* %26 to i32* | |
%28 = load i32* %27, align 4 | |
%29 = lshr i32 %28, 2 | |
%30 = and i32 %29, 1 | |
%31 = trunc i32 %30 to i1 | |
%32 = xor i1 %31, true | |
br i1 %32, label %instr_0x0005E1F0, label %instr_0x0005DF0C | |
instr_0x0005DF0C: ; preds = %instr_0x0005DF08 | |
%33 = call i32 @ADD(i8* %ppu_state, i32 0, i32 5, i32 8, i32 0, i32 0) | |
br label %instr_0x0005DF10 | |
instr_0x0005DF10: ; preds = %instr_0x0005DF0C | |
%34 = call i32 @ADDI(i8* %ppu_state, i32 21, i32 0, i32 0) | |
br label %instr_0x0005DF14 | |
instr_0x0005DF14: ; preds = %instr_0x0005DF10 | |
%35 = call i32 @DIVW(i8* %ppu_state, i32 22, i32 0, i32 6, i32 0, i32 0) | |
br label %instr_0x0005DF18 | |
instr_0x0005DF18: ; preds = %instr_0x0005DF14 | |
%36 = call i32 @DIVW(i8* %ppu_state, i32 24, i32 5, i32 6, i32 0, i32 0) | |
br label %instr_0x0005DF1C | |
instr_0x0005DF1C: ; preds = %instr_0x0005DF18 | |
%37 = call i32 @CMP(i8* %ppu_state, i32 4, i32 0, i32 22, i32 24) | |
br label %instr_0x0005DF20 | |
instr_0x0005DF20: ; preds = %instr_0x0005E000, %instr_0x0005DFAC, %instr_0x0005DF1C | |
%38 = getelementptr i8* %ppu_state, i32 1576 | |
%39 = bitcast i8* %38 to i64* | |
%40 = load i64* %39, align 8 | |
%41 = getelementptr i8* %ppu_state, i32 1540 | |
%42 = bitcast i8* %41 to i32* | |
%43 = load i32* %42, align 4 | |
%44 = lshr i32 %43, 14 | |
%45 = and i32 %44, 1 | |
%46 = trunc i32 %45 to i1 | |
%47 = xor i1 %46, true | |
br i1 %47, label %instr_0x0005E1F0, label %instr_0x0005DF24 | |
instr_0x0005DF24: ; preds = %instr_0x0005DF20 | |
%48 = call i32 @LWZ(i8* %ppu_state, i32 4, i32 26, i32 36) | |
br label %instr_0x0005DF28 | |
instr_0x0005DF28: ; preds = %instr_0x0005DF24 | |
%49 = call i32 @RLDICL(i8* %ppu_state, i32 27, i32 23, i32 0, i32 32, i32 0) | |
br label %instr_0x0005DF2C | |
instr_0x0005DF2C: ; preds = %instr_0x0005DF28 | |
%50 = call i32 @LWZ(i8* %ppu_state, i32 31, i32 26, i32 40) | |
br label %instr_0x0005DF30 | |
instr_0x0005DF30: ; preds = %instr_0x0005DF2C | |
%51 = call i32 @EXTSW(i8* %ppu_state, i32 4, i32 4, i32 0) | |
br label %instr_0x0005DF34 | |
instr_0x0005DF34: ; preds = %instr_0x0005DF30 | |
%52 = call i32 @OR(i8* %ppu_state, i32 3, i32 27, i32 27, i32 0) | |
br label %instr_0x0005DF38 | |
instr_0x0005DF38: ; preds = %instr_0x0005DF34 | |
%53 = getelementptr i8* %ppu_state, i32 1568 | |
%54 = bitcast i8* %53 to i64* | |
store i64 384828, i64* %54, align 8 | |
%55 = getelementptr i8* %ppu_state, i32 1664 | |
%56 = bitcast i8* %55 to i32* | |
store i32 367036, i32* %56, align 4 | |
%57 = load i64* inttoptr (i64 8623115688 to i64*) | |
%58 = inttoptr i64 %57 to i32 (i8*, i64)* | |
%59 = call i32 %58(i8* %ppu_state, i64 0) | |
%60 = icmp eq i32 %59, -1 | |
br i1 %60, label %instr_0x0005DF38_then_all_fs, label %instr_0x0005DF38_merge_all_fs | |
instr_0x0005DF38_then_all_fs: ; preds = %instr_0x0005DF38 | |
ret i32 0 | |
instr_0x0005DF38_merge_all_fs: ; preds = %instr_0x0005DF38 | |
br label %instr_0x0005DF3C | |
instr_0x0005DF3C: ; preds = %instr_0x0005DF38_merge_all_fs | |
%61 = call i32 @ORI(i8* %ppu_state, i32 0, i32 0, i32 0) | |
br label %instr_0x0005DF40 | |
instr_0x0005DF40: ; preds = %instr_0x0005DF3C | |
%62 = call i32 @CMPI(i8* %ppu_state, i32 7, i32 0, i32 3, i32 0) | |
br label %instr_0x0005DF44 | |
instr_0x0005DF44: ; preds = %instr_0x0005DF40 | |
%63 = getelementptr i8* %ppu_state, i32 1576 | |
%64 = bitcast i8* %63 to i64* | |
%65 = load i64* %64, align 8 | |
%66 = getelementptr i8* %ppu_state, i32 1540 | |
%67 = bitcast i8* %66 to i32* | |
%68 = load i32* %67, align 4 | |
%69 = lshr i32 %68, 3 | |
%70 = and i32 %69, 1 | |
%71 = trunc i32 %70 to i1 | |
br i1 %71, label %instr_0x0005E1D4, label %instr_0x0005DF48 | |
instr_0x0005DF48: ; preds = %instr_0x0005DF44 | |
%72 = call i32 @RLWINM(i8* %ppu_state, i32 9, i32 3, i32 2, i32 0, i32 29, i32 0) | |
br label %instr_0x0005DF4C | |
instr_0x0005DF4C: ; preds = %instr_0x0005DF48 | |
%73 = call i32 @LWZ(i8* %ppu_state, i32 0, i32 26, i32 32) | |
br label %instr_0x0005DF50 | |
instr_0x0005DF50: ; preds = %instr_0x0005DF4C | |
%74 = call i32 @ADD(i8* %ppu_state, i32 9, i32 9, i32 0, i32 0, i32 0) | |
br label %instr_0x0005DF54 | |
instr_0x0005DF54: ; preds = %instr_0x0005DF50 | |
%75 = call i32 @RLDICL(i8* %ppu_state, i32 9, i32 9, i32 0, i32 32, i32 0) | |
br label %instr_0x0005DF58 | |
instr_0x0005DF58: ; preds = %instr_0x0005DF54 | |
%76 = call i32 @LWZ(i8* %ppu_state, i32 11, i32 9, i32 0) | |
br label %instr_0x0005DF5C | |
instr_0x0005DF5C: ; preds = %instr_0x0005DF58 | |
%77 = call i32 @CMPI(i8* %ppu_state, i32 7, i32 0, i32 11, i32 0) | |
br label %instr_0x0005DF60 | |
instr_0x0005DF60: ; preds = %instr_0x0005DF5C | |
%78 = getelementptr i8* %ppu_state, i32 1576 | |
%79 = bitcast i8* %78 to i64* | |
%80 = load i64* %79, align 8 | |
%81 = getelementptr i8* %ppu_state, i32 1540 | |
%82 = bitcast i8* %81 to i32* | |
%83 = load i32* %82, align 4 | |
%84 = lshr i32 %83, 3 | |
%85 = and i32 %84, 1 | |
%86 = trunc i32 %85 to i1 | |
br i1 %86, label %instr_0x0005E004, label %instr_0x0005DF64 | |
instr_0x0005DF64: ; preds = %instr_0x0005DF60 | |
%87 = call i32 @LWZ(i8* %ppu_state, i32 9, i32 26, i32 28) | |
br label %instr_0x0005DF68 | |
instr_0x0005DF68: ; preds = %instr_0x0005DF64 | |
%88 = call i32 @OR(i8* %ppu_state, i32 3, i32 27, i32 27, i32 0) | |
br label %instr_0x0005DF6C | |
instr_0x0005DF6C: ; preds = %instr_0x0005DF68 | |
%89 = call i32 @ADDI(i8* %ppu_state, i32 30, i32 11, i32 -1) | |
br label %instr_0x0005DF70 | |
instr_0x0005DF70: ; preds = %instr_0x0005DF6C | |
%90 = call i32 @ADD(i8* %ppu_state, i32 9, i32 11, i32 9, i32 0, i32 0) | |
br label %instr_0x0005DF74 | |
instr_0x0005DF74: ; preds = %instr_0x0005DF70 | |
%91 = call i32 @ADDI(i8* %ppu_state, i32 9, i32 9, i32 -1) | |
br label %instr_0x0005DF78 | |
instr_0x0005DF78: ; preds = %instr_0x0005DF74 | |
%92 = call i32 @RLDICL(i8* %ppu_state, i32 9, i32 9, i32 0, i32 32, i32 0) | |
br label %instr_0x0005DF7C | |
instr_0x0005DF7C: ; preds = %instr_0x0005DF78 | |
%93 = call i32 @LBZ(i8* %ppu_state, i32 4, i32 9, i32 0) | |
br label %instr_0x0005DF80 | |
instr_0x0005DF80: ; preds = %instr_0x0005DF7C | |
%94 = call i32 @EXTSB(i8* %ppu_state, i32 4, i32 4, i32 0) | |
br label %instr_0x0005DF84 | |
instr_0x0005DF84: ; preds = %instr_0x0005DF80 | |
%95 = getelementptr i8* %ppu_state, i32 1568 | |
%96 = bitcast i8* %95 to i64* | |
store i64 384904, i64* %96, align 8 | |
%97 = getelementptr i8* %ppu_state, i32 1664 | |
%98 = bitcast i8* %97 to i32* | |
store i32 367548, i32* %98, align 4 | |
%99 = load i64* inttoptr (i64 8623115688 to i64*) | |
%100 = inttoptr i64 %99 to i32 (i8*, i64)* | |
%101 = call i32 %100(i8* %ppu_state, i64 0) | |
%102 = icmp eq i32 %101, -1 | |
br i1 %102, label %instr_0x0005DF84_then_all_fs, label %instr_0x0005DF84_merge_all_fs | |
instr_0x0005DF84_then_all_fs: ; preds = %instr_0x0005DF84 | |
ret i32 0 | |
instr_0x0005DF84_merge_all_fs: ; preds = %instr_0x0005DF84 | |
br label %instr_0x0005DF88 | |
instr_0x0005DF88: ; preds = %instr_0x0005DF84_merge_all_fs | |
%103 = call i32 @ORI(i8* %ppu_state, i32 0, i32 0, i32 0) | |
br label %instr_0x0005DF8C | |
instr_0x0005DF8C: ; preds = %instr_0x0005E180, %instr_0x0005DF88 | |
%104 = call i32 @CMPI(i8* %ppu_state, i32 7, i32 0, i32 30, i32 -1) | |
br label %instr_0x0005DF90 | |
instr_0x0005DF90: ; preds = %instr_0x0005DF8C | |
%105 = getelementptr i8* %ppu_state, i32 1576 | |
%106 = bitcast i8* %105 to i64* | |
%107 = load i64* %106, align 8 | |
%108 = getelementptr i8* %ppu_state, i32 1540 | |
%109 = bitcast i8* %108 to i32* | |
%110 = load i32* %109, align 4 | |
%111 = lshr i32 %110, 1 | |
%112 = and i32 %111, 1 | |
%113 = trunc i32 %112 to i1 | |
br i1 %113, label %instr_0x0005E184, label %instr_0x0005DF94 | |
instr_0x0005DF94: ; preds = %instr_0x0005DF90 | |
%114 = call i32 @LWZ(i8* %ppu_state, i32 11, i32 26, i32 0) | |
br label %instr_0x0005DF98 | |
instr_0x0005DF98: ; preds = %instr_0x0005DF94 | |
%115 = call i32 @LWZ(i8* %ppu_state, i32 0, i32 26, i32 16) | |
br label %instr_0x0005DF9C | |
instr_0x0005DF9C: ; preds = %instr_0x0005DF98 | |
%116 = call i32 @CMPI(i8* %ppu_state, i32 7, i32 0, i32 11, i32 0) | |
br label %instr_0x0005DFA0 | |
instr_0x0005DFA0: ; preds = %instr_0x0005DF9C | |
%117 = call i32 @MULLW(i8* %ppu_state, i32 9, i32 30, i32 11, i32 0, i32 0) | |
br label %instr_0x0005DFA4 | |
instr_0x0005DFA4: ; preds = %instr_0x0005DFA0 | |
%118 = call i32 @RLWINM(i8* %ppu_state, i32 9, i32 9, i32 2, i32 0, i32 29, i32 0) | |
br label %instr_0x0005DFA8 | |
instr_0x0005DFA8: ; preds = %instr_0x0005DFA4 | |
%119 = call i32 @ADD(i8* %ppu_state, i32 3, i32 9, i32 0, i32 0, i32 0) | |
br label %instr_0x0005DFAC | |
instr_0x0005DFAC: ; preds = %instr_0x0005DFA8 | |
%120 = getelementptr i8* %ppu_state, i32 1576 | |
%121 = bitcast i8* %120 to i64* | |
%122 = load i64* %121, align 8 | |
%123 = getelementptr i8* %ppu_state, i32 1540 | |
%124 = bitcast i8* %123 to i32* | |
%125 = load i32* %124, align 4 | |
%126 = lshr i32 %125, 2 | |
%127 = and i32 %126, 1 | |
%128 = trunc i32 %127 to i1 | |
%129 = xor i1 %128, true | |
br i1 %129, label %instr_0x0005DF20, label %instr_0x0005DFB0 | |
instr_0x0005DFB0: ; preds = %instr_0x0005DFAC | |
%130 = call i32 @RLDICL(i8* %ppu_state, i32 11, i32 11, i32 0, i32 32, i32 0) | |
br label %instr_0x0005DFB4 | |
instr_0x0005DFB4: ; preds = %instr_0x0005DFB0 | |
%131 = call i32 @MTSPR(i8* %ppu_state, i32 288, i32 11) | |
br label %instr_0x0005DFB8 | |
instr_0x0005DFB8: ; preds = %instr_0x0005E1EC, %instr_0x0005DFF8, %instr_0x0005DFB4 | |
%132 = call i32 @RLWINM(i8* %ppu_state, i32 9, i32 21, i32 2, i32 0, i32 29, i32 0) | |
br label %instr_0x0005DFBC | |
instr_0x0005DFBC: ; preds = %instr_0x0005DFB8 | |
%133 = call i32 @RLWINM(i8* %ppu_state, i32 11, i32 24, i32 2, i32 0, i32 29, i32 0) | |
br label %instr_0x0005DFC0 | |
instr_0x0005DFC0: ; preds = %instr_0x0005DFBC | |
%134 = call i32 @ADD(i8* %ppu_state, i32 9, i32 9, i32 20, i32 0, i32 0) | |
br label %instr_0x0005DFC4 | |
instr_0x0005DFC4: ; preds = %instr_0x0005DFC0 | |
%135 = call i32 @RLDICL(i8* %ppu_state, i32 10, i32 3, i32 0, i32 32, i32 0) | |
br label %instr_0x0005DFC8 | |
instr_0x0005DFC8: ; preds = %instr_0x0005DFC4 | |
%136 = call i32 @RLDICL(i8* %ppu_state, i32 9, i32 9, i32 0, i32 32, i32 0) | |
br label %instr_0x0005DFCC | |
instr_0x0005DFCC: ; preds = %instr_0x0005DFC8 | |
%137 = call i32 @ADDI(i8* %ppu_state, i32 21, i32 21, i32 1) | |
br label %instr_0x0005DFD0 | |
instr_0x0005DFD0: ; preds = %instr_0x0005DFCC | |
%138 = call i32 @ADDI(i8* %ppu_state, i32 3, i32 3, i32 4) | |
br label %instr_0x0005DFD4 | |
instr_0x0005DFD4: ; preds = %instr_0x0005DFD0 | |
%139 = call i32 @CMP(i8* %ppu_state, i32 7, i32 0, i32 25, i32 21) | |
br label %instr_0x0005DFD8 | |
instr_0x0005DFD8: ; preds = %instr_0x0005DFD4 | |
%140 = call i32 @LFS(i8* %ppu_state, i32 13, i32 10, i32 0) | |
br label %instr_0x0005DFDC | |
instr_0x0005DFDC: ; preds = %instr_0x0005DFD8 | |
%141 = call i32 @LWZ(i8* %ppu_state, i32 0, i32 9, i32 0) | |
br label %instr_0x0005DFE0 | |
instr_0x0005DFE0: ; preds = %instr_0x0005DFDC | |
%142 = call i32 @ADD(i8* %ppu_state, i32 11, i32 11, i32 0, i32 0, i32 0) | |
br label %instr_0x0005DFE4 | |
instr_0x0005DFE4: ; preds = %instr_0x0005DFE0 | |
%143 = call i32 @RLDICL(i8* %ppu_state, i32 11, i32 11, i32 0, i32 32, i32 0) | |
br label %instr_0x0005DFE8 | |
instr_0x0005DFE8: ; preds = %instr_0x0005DFE4 | |
%144 = call i32 @LFS(i8* %ppu_state, i32 0, i32 11, i32 0) | |
br label %instr_0x0005DFEC | |
instr_0x0005DFEC: ; preds = %instr_0x0005DFE8 | |
%145 = call i32 @FADDS(i8* %ppu_state, i32 0, i32 0, i32 13, i32 0) | |
br label %instr_0x0005DFF0 | |
instr_0x0005DFF0: ; preds = %instr_0x0005DFEC | |
%146 = call i32 @STFS(i8* %ppu_state, i32 0, i32 11, i32 0) | |
br label %instr_0x0005DFF4 | |
instr_0x0005DFF4: ; preds = %instr_0x0005DFF0 | |
%147 = getelementptr i8* %ppu_state, i32 1576 | |
%148 = bitcast i8* %147 to i64* | |
%149 = load i64* %148, align 8 | |
%150 = getelementptr i8* %ppu_state, i32 1540 | |
%151 = bitcast i8* %150 to i32* | |
%152 = load i32* %151, align 4 | |
%153 = lshr i32 %152, 1 | |
%154 = and i32 %153, 1 | |
%155 = trunc i32 %154 to i1 | |
br i1 %155, label %instr_0x0005E1E0, label %instr_0x0005DFF8 | |
instr_0x0005DFF8: ; preds = %instr_0x0005DFF4 | |
%156 = getelementptr i8* %ppu_state, i32 1576 | |
%157 = bitcast i8* %156 to i64* | |
%158 = load i64* %157, align 8 | |
%159 = sub i64 %158, 1 | |
%160 = getelementptr i8* %ppu_state, i32 1576 | |
%161 = bitcast i8* %160 to i64* | |
store i64 %159, i64* %161, align 8 | |
%162 = icmp ne i64 %159, 0 | |
br i1 %162, label %instr_0x0005DFB8, label %instr_0x0005DFFC | |
instr_0x0005DFFC: ; preds = %instr_0x0005E1E8, %instr_0x0005DFF8 | |
%163 = call i32 @CMP(i8* %ppu_state, i32 4, i32 0, i32 22, i32 24) | |
br label %instr_0x0005E000 | |
instr_0x0005E000: ; preds = %instr_0x0005DFFC | |
br label %instr_0x0005DF20 | |
instr_0x0005E004: ; preds = %instr_0x0005DF60 | |
%164 = call i32 @RLWINM(i8* %ppu_state, i32 9, i32 11, i32 0, i32 17, i32 31, i32 0) | |
br label %instr_0x0005E008 | |
instr_0x0005E008: ; preds = %instr_0x0005E004 | |
%165 = call i32 @LWZ(i8* %ppu_state, i32 0, i32 26, i32 8) | |
br label %instr_0x0005E00C | |
instr_0x0005E00C: ; preds = %instr_0x0005E008 | |
%166 = call i32 @RLDICL(i8* %ppu_state, i32 30, i32 11, i32 49, i32 49, i32 0) | |
br label %instr_0x0005E010 | |
instr_0x0005E010: ; preds = %instr_0x0005E00C | |
%167 = call i32 @SUBF(i8* %ppu_state, i32 28, i32 9, i32 0, i32 0, i32 0) | |
br label %instr_0x0005E014 | |
instr_0x0005E014: ; preds = %instr_0x0005E010 | |
%168 = call i32 @EXTSW(i8* %ppu_state, i32 29, i32 31, i32 0) | |
br label %instr_0x0005E018 | |
instr_0x0005E018: ; preds = %instr_0x0005E014 | |
%169 = call i32 @OR(i8* %ppu_state, i32 3, i32 27, i32 27, i32 0) | |
br label %instr_0x0005E01C | |
instr_0x0005E01C: ; preds = %instr_0x0005E018 | |
%170 = call i32 @OR(i8* %ppu_state, i32 4, i32 29, i32 29, i32 0) | |
br label %instr_0x0005E020 | |
instr_0x0005E020: ; preds = %instr_0x0005E01C | |
%171 = getelementptr i8* %ppu_state, i32 1568 | |
%172 = bitcast i8* %171 to i64* | |
store i64 385060, i64* %172, align 8 | |
%173 = getelementptr i8* %ppu_state, i32 1664 | |
%174 = bitcast i8* %173 to i32* | |
store i32 367036, i32* %174, align 4 | |
%175 = load i64* inttoptr (i64 8623115688 to i64*) | |
%176 = inttoptr i64 %175 to i32 (i8*, i64)* | |
%177 = call i32 %176(i8* %ppu_state, i64 0) | |
%178 = icmp eq i32 %177, -1 | |
br i1 %178, label %instr_0x0005E020_then_all_fs, label %instr_0x0005E020_merge_all_fs | |
instr_0x0005E020_then_all_fs: ; preds = %instr_0x0005E020 | |
ret i32 0 | |
instr_0x0005E020_merge_all_fs: ; preds = %instr_0x0005E020 | |
br label %instr_0x0005E024 | |
instr_0x0005E024: ; preds = %instr_0x0005E020_merge_all_fs | |
%179 = call i32 @ORI(i8* %ppu_state, i32 0, i32 0, i32 0) | |
br label %instr_0x0005E028 | |
instr_0x0005E028: ; preds = %instr_0x0005E024 | |
%180 = call i32 @CMPI(i8* %ppu_state, i32 7, i32 0, i32 3, i32 0) | |
br label %instr_0x0005E02C | |
instr_0x0005E02C: ; preds = %instr_0x0005E028 | |
%181 = getelementptr i8* %ppu_state, i32 1576 | |
%182 = bitcast i8* %181 to i64* | |
%183 = load i64* %182, align 8 | |
%184 = getelementptr i8* %ppu_state, i32 1540 | |
%185 = bitcast i8* %184 to i32* | |
%186 = load i32* %185, align 4 | |
%187 = lshr i32 %186, 3 | |
%188 = and i32 %187, 1 | |
%189 = trunc i32 %188 to i1 | |
%190 = xor i1 %189, true | |
br i1 %190, label %instr_0x0005E064, label %instr_0x0005E030 | |
instr_0x0005E030: ; preds = %instr_0x0005E02C | |
%191 = phi i32 [ 385068, %instr_0x0005E02C ] | |
%192 = getelementptr i8* %ppu_state, i32 1664 | |
%193 = bitcast i8* %192 to i32* | |
store i32 385072, i32* %193, align 4 | |
%194 = zext i32 %191 to i64 | |
%195 = or i64 %194, 1652205199294464 | |
%196 = load i64* inttoptr (i64 8623115696 to i64*) | |
%197 = inttoptr i64 %196 to i32 (i8*, i64)* | |
%198 = call i32 %197(i8* %ppu_state, i64 %195) | |
%199 = icmp eq i32 %198, -1 | |
br i1 %199, label %instr_0x0005E030_then_all_fs, label %instr_0x0005E030_merge_all_fs | |
instr_0x0005E030_then_all_fs: ; preds = %instr_0x0005E030 | |
ret i32 0 | |
instr_0x0005E030_merge_all_fs: ; preds = %instr_0x0005E030 | |
%200 = icmp ne i32 %198, 0 | |
br i1 %200, label %instr_0x0005E030_then_0, label %instr_0x0005E030_merge_0 | |
instr_0x0005E030_then_0: ; preds = %instr_0x0005E030_merge_all_fs | |
%201 = zext i32 %198 to i64 | |
%202 = or i64 %201, 1652205199294464 | |
%203 = call i32 @execute_unknown_block(i8* %ppu_state, i64 %202) | |
br label %instr_0x0005E030_merge_0 | |
instr_0x0005E030_merge_0: ; preds = %instr_0x0005E030_then_0, %instr_0x0005E030_merge_all_fs | |
ret i32 0 | |
instr_0x0005E064: ; preds = %instr_0x0005E02C | |
%204 = call i32 @RLWINM(i8* %ppu_state, i32 0, i32 3, i32 16, i32 0, i32 31, i32 0) | |
br label %instr_0x0005E068 | |
instr_0x0005E068: ; preds = %instr_0x0005E064 | |
%205 = call i32 @ADDIS(i8* %ppu_state, i32 10, i32 0, i32 255) | |
br label %instr_0x0005E06C | |
instr_0x0005E06C: ; preds = %instr_0x0005E068 | |
%206 = call i32 @ADDIS(i8* %ppu_state, i32 9, i32 0, i32 -256) | |
br label %instr_0x0005E070 | |
instr_0x0005E070: ; preds = %instr_0x0005E06C | |
%207 = call i32 @ORI(i8* %ppu_state, i32 10, i32 10, i32 255) | |
br label %instr_0x0005E074 | |
instr_0x0005E074: ; preds = %instr_0x0005E070 | |
%208 = call i32 @RLWINM(i8* %ppu_state, i32 11, i32 0, i32 8, i32 0, i32 23, i32 0) | |
br label %instr_0x0005E078 | |
instr_0x0005E078: ; preds = %instr_0x0005E074 | |
%209 = call i32 @ORI(i8* %ppu_state, i32 9, i32 9, i32 65280) | |
br label %instr_0x0005E07C | |
instr_0x0005E07C: ; preds = %instr_0x0005E078 | |
%210 = call i32 @RLWINM(i8* %ppu_state, i32 0, i32 0, i32 24, i32 8, i32 31, i32 0) | |
br label %instr_0x0005E080 | |
instr_0x0005E080: ; preds = %instr_0x0005E07C | |
%211 = call i32 @AND(i8* %ppu_state, i32 11, i32 11, i32 9, i32 0) | |
br label %instr_0x0005E084 | |
instr_0x0005E084: ; preds = %instr_0x0005E080 | |
%212 = call i32 @AND(i8* %ppu_state, i32 0, i32 0, i32 10, i32 0) | |
br label %instr_0x0005E088 | |
instr_0x0005E088: ; preds = %instr_0x0005E084 | |
%213 = call i32 @ADDIS(i8* %ppu_state, i32 8, i32 0, i32 3855) | |
br label %instr_0x0005E08C | |
instr_0x0005E08C: ; preds = %instr_0x0005E088 | |
%214 = call i32 @OR(i8* %ppu_state, i32 0, i32 0, i32 11, i32 0) | |
br label %instr_0x0005E090 | |
instr_0x0005E090: ; preds = %instr_0x0005E08C | |
%215 = call i32 @ADDIS(i8* %ppu_state, i32 9, i32 0, i32 -3856) | |
br label %instr_0x0005E094 | |
instr_0x0005E094: ; preds = %instr_0x0005E090 | |
%216 = call i32 @ORI(i8* %ppu_state, i32 8, i32 8, i32 3855) | |
br label %instr_0x0005E098 | |
instr_0x0005E098: ; preds = %instr_0x0005E094 | |
%217 = call i32 @RLWINM(i8* %ppu_state, i32 11, i32 0, i32 4, i32 0, i32 27, i32 0) | |
br label %instr_0x0005E09C | |
instr_0x0005E09C: ; preds = %instr_0x0005E098 | |
%218 = call i32 @ORI(i8* %ppu_state, i32 9, i32 9, i32 61680) | |
br label %instr_0x0005E0A0 | |
instr_0x0005E0A0: ; preds = %instr_0x0005E09C | |
%219 = call i32 @RLWINM(i8* %ppu_state, i32 0, i32 0, i32 28, i32 4, i32 31, i32 0) | |
br label %instr_0x0005E0A4 | |
instr_0x0005E0A4: ; preds = %instr_0x0005E0A0 | |
%220 = call i32 @AND(i8* %ppu_state, i32 11, i32 11, i32 9, i32 0) | |
br label %instr_0x0005E0A8 | |
instr_0x0005E0A8: ; preds = %instr_0x0005E0A4 | |
%221 = call i32 @AND(i8* %ppu_state, i32 0, i32 0, i32 8, i32 0) | |
br label %instr_0x0005E0AC | |
instr_0x0005E0AC: ; preds = %instr_0x0005E0A8 | |
%222 = call i32 @ADDIS(i8* %ppu_state, i32 10, i32 0, i32 13107) | |
br label %instr_0x0005E0B0 | |
instr_0x0005E0B0: ; preds = %instr_0x0005E0AC | |
%223 = call i32 @OR(i8* %ppu_state, i32 0, i32 0, i32 11, i32 0) | |
br label %instr_0x0005E0B4 | |
instr_0x0005E0B4: ; preds = %instr_0x0005E0B0 | |
%224 = call i32 @ADDIS(i8* %ppu_state, i32 9, i32 0, i32 -13108) | |
br label %instr_0x0005E0B8 | |
instr_0x0005E0B8: ; preds = %instr_0x0005E0B4 | |
%225 = call i32 @ORI(i8* %ppu_state, i32 10, i32 10, i32 13107) | |
br label %instr_0x0005E0BC | |
instr_0x0005E0BC: ; preds = %instr_0x0005E0B8 | |
%226 = call i32 @RLWINM(i8* %ppu_state, i32 11, i32 0, i32 2, i32 0, i32 29, i32 0) | |
br label %instr_0x0005E0C0 | |
instr_0x0005E0C0: ; preds = %instr_0x0005E0BC | |
%227 = call i32 @ORI(i8* %ppu_state, i32 9, i32 9, i32 52428) | |
br label %instr_0x0005E0C4 | |
instr_0x0005E0C4: ; preds = %instr_0x0005E0C0 | |
%228 = call i32 @RLWINM(i8* %ppu_state, i32 0, i32 0, i32 30, i32 2, i32 31, i32 0) | |
br label %instr_0x0005E0C8 | |
instr_0x0005E0C8: ; preds = %instr_0x0005E0C4 | |
%229 = call i32 @AND(i8* %ppu_state, i32 11, i32 11, i32 9, i32 0) | |
br label %instr_0x0005E0CC | |
instr_0x0005E0CC: ; preds = %instr_0x0005E0C8 | |
%230 = call i32 @AND(i8* %ppu_state, i32 0, i32 0, i32 10, i32 0) | |
br label %instr_0x0005E0D0 | |
instr_0x0005E0D0: ; preds = %instr_0x0005E0CC | |
%231 = call i32 @ADDIS(i8* %ppu_state, i32 8, i32 0, i32 21845) | |
br label %instr_0x0005E0D4 | |
instr_0x0005E0D4: ; preds = %instr_0x0005E0D0 | |
%232 = call i32 @OR(i8* %ppu_state, i32 0, i32 0, i32 11, i32 0) | |
br label %instr_0x0005E0D8 | |
instr_0x0005E0D8: ; preds = %instr_0x0005E0D4 | |
%233 = call i32 @ADDIS(i8* %ppu_state, i32 10, i32 0, i32 -21846) | |
br label %instr_0x0005E0DC | |
instr_0x0005E0DC: ; preds = %instr_0x0005E0D8 | |
%234 = call i32 @SUBF(i8* %ppu_state, i32 11, i32 30, i32 28, i32 0, i32 0) | |
br label %instr_0x0005E0E0 | |
instr_0x0005E0E0: ; preds = %instr_0x0005E0DC | |
%235 = call i32 @RLWINM(i8* %ppu_state, i32 9, i32 0, i32 1, i32 0, i32 30, i32 0) | |
br label %instr_0x0005E0E4 | |
instr_0x0005E0E4: ; preds = %instr_0x0005E0E0 | |
%236 = call i32 @ORI(i8* %ppu_state, i32 8, i32 8, i32 21845) | |
br label %instr_0x0005E0E8 | |
instr_0x0005E0E8: ; preds = %instr_0x0005E0E4 | |
%237 = call i32 @ORI(i8* %ppu_state, i32 10, i32 10, i32 43690) | |
br label %instr_0x0005E0EC | |
instr_0x0005E0EC: ; preds = %instr_0x0005E0E8 | |
%238 = call i32 @RLWINM(i8* %ppu_state, i32 0, i32 0, i32 31, i32 1, i32 31, i32 0) | |
br label %instr_0x0005E0F0 | |
instr_0x0005E0F0: ; preds = %instr_0x0005E0EC | |
%239 = call i32 @CMPI(i8* %ppu_state, i32 7, i32 0, i32 11, i32 1) | |
br label %instr_0x0005E0F4 | |
instr_0x0005E0F4: ; preds = %instr_0x0005E0F0 | |
%240 = call i32 @AND(i8* %ppu_state, i32 0, i32 0, i32 8, i32 0) | |
br label %instr_0x0005E0F8 | |
instr_0x0005E0F8: ; preds = %instr_0x0005E0F4 | |
%241 = call i32 @AND(i8* %ppu_state, i32 9, i32 9, i32 10, i32 0) | |
br label %instr_0x0005E0FC | |
instr_0x0005E0FC: ; preds = %instr_0x0005E0F8 | |
%242 = call i32 @OR(i8* %ppu_state, i32 3, i32 0, i32 9, i32 0) | |
br label %instr_0x0005E100 | |
instr_0x0005E100: ; preds = %instr_0x0005E0FC | |
%243 = getelementptr i8* %ppu_state, i32 1576 | |
%244 = bitcast i8* %243 to i64* | |
%245 = load i64* %244, align 8 | |
%246 = getelementptr i8* %ppu_state, i32 1540 | |
%247 = bitcast i8* %246 to i32* | |
%248 = load i32* %247, align 4 | |
%249 = lshr i32 %248, 2 | |
%250 = and i32 %249, 1 | |
%251 = trunc i32 %250 to i1 | |
%252 = xor i1 %251, true | |
br i1 %252, label %instr_0x0005E154, label %instr_0x0005E104 | |
instr_0x0005E104: ; preds = %instr_0x0005E100 | |
%253 = call i32 @LWZ(i8* %ppu_state, i32 8, i32 26, i32 20) | |
br label %instr_0x0005E108 | |
instr_0x0005E108: ; preds = %instr_0x0005E150, %instr_0x0005E104 | |
%254 = call i32 @SRAWI(i8* %ppu_state, i32 11, i32 11, i32 1, i32 0) | |
br label %instr_0x0005E10C | |
instr_0x0005E10C: ; preds = %instr_0x0005E108 | |
%255 = call i32 @ADDI(i8* %ppu_state, i32 10, i32 0, i32 1) | |
br label %instr_0x0005E110 | |
instr_0x0005E110: ; preds = %instr_0x0005E10C | |
%256 = call i32 @ADD(i8* %ppu_state, i32 9, i32 11, i32 30, i32 0, i32 0) | |
br label %instr_0x0005E114 | |
instr_0x0005E114: ; preds = %instr_0x0005E110 | |
%257 = call i32 @RLWINM(i8* %ppu_state, i32 9, i32 9, i32 2, i32 0, i32 29, i32 0) | |
br label %instr_0x0005E118 | |
instr_0x0005E118: ; preds = %instr_0x0005E114 | |
%258 = call i32 @ADD(i8* %ppu_state, i32 9, i32 9, i32 8, i32 0, i32 0) | |
br label %instr_0x0005E11C | |
instr_0x0005E11C: ; preds = %instr_0x0005E118 | |
%259 = call i32 @RLDICL(i8* %ppu_state, i32 9, i32 9, i32 0, i32 32, i32 0) | |
br label %instr_0x0005E120 | |
instr_0x0005E120: ; preds = %instr_0x0005E11C | |
%260 = call i32 @LWZ(i8* %ppu_state, i32 0, i32 9, i32 0) | |
br label %instr_0x0005E124 | |
instr_0x0005E124: ; preds = %instr_0x0005E120 | |
%261 = getelementptr i8* %ppu_state, i32 792 | |
%262 = bitcast i8* %261 to i32* | |
%263 = load i32* %262, align 8 | |
%264 = zext i32 %263 to i64 | |
%265 = getelementptr i8* %ppu_state, i32 768 | |
%266 = bitcast i8* %265 to i32* | |
%267 = load i32* %266, align 8 | |
%268 = zext i32 %267 to i64 | |
%269 = icmp ult i64 %264, %268 | |
%270 = icmp ugt i64 %264, %268 | |
%271 = icmp eq i64 %264, %268 | |
%272 = getelementptr i8* %ppu_state, i32 1540 | |
%273 = bitcast i8* %272 to i32* | |
%274 = load i32* %273, align 4 | |
%275 = getelementptr i8* %ppu_state, i32 1544 | |
%276 = bitcast i8* %275 to i64* | |
%277 = load i64* %276, align 8 | |
%278 = lshr i64 %277, 31 | |
%279 = and i64 %278, 1 | |
%280 = and i32 %274, -16 | |
%281 = zext i1 %269 to i32 | |
%282 = shl i32 %281, 3 | |
%283 = or i32 %280, %282 | |
%284 = zext i1 %270 to i32 | |
%285 = shl i32 %284, 2 | |
%286 = or i32 %283, %285 | |
%287 = zext i1 %271 to i32 | |
%288 = shl i32 %287, 1 | |
%289 = or i32 %286, %288 | |
%290 = trunc i64 %279 to i32 | |
%291 = or i32 %289, %290 | |
%292 = getelementptr i8* %ppu_state, i32 1540 | |
%293 = bitcast i8* %292 to i32* | |
store i32 %291, i32* %293, align 4 | |
br label %instr_0x0005E128 | |
instr_0x0005E128: ; preds = %instr_0x0005E124 | |
%294 = getelementptr i8* %ppu_state, i32 1576 | |
%295 = bitcast i8* %294 to i64* | |
%296 = load i64* %295, align 8 | |
%297 = getelementptr i8* %ppu_state, i32 1540 | |
%298 = bitcast i8* %297 to i32* | |
%299 = load i32* %298, align 4 | |
%300 = lshr i32 %299, 3 | |
%301 = and i32 %300, 1 | |
%302 = trunc i32 %301 to i1 | |
br i1 %302, label %instr_0x0005E130, label %instr_0x0005E12C | |
instr_0x0005E12C: ; preds = %instr_0x0005E128 | |
%303 = call i32 @ADDI(i8* %ppu_state, i32 10, i32 0, i32 0) | |
br label %instr_0x0005E130 | |
instr_0x0005E130: ; preds = %instr_0x0005E12C, %instr_0x0005E128 | |
%304 = call i32 @NEG(i8* %ppu_state, i32 0, i32 10, i32 0, i32 0) | |
br label %instr_0x0005E134 | |
instr_0x0005E134: ; preds = %instr_0x0005E130 | |
%305 = call i32 @ADDI(i8* %ppu_state, i32 9, i32 10, i32 -1) | |
br label %instr_0x0005E138 | |
instr_0x0005E138: ; preds = %instr_0x0005E134 | |
%306 = call i32 @AND(i8* %ppu_state, i32 0, i32 11, i32 0, i32 0) | |
br label %instr_0x0005E13C | |
instr_0x0005E13C: ; preds = %instr_0x0005E138 | |
%307 = call i32 @AND(i8* %ppu_state, i32 9, i32 11, i32 9, i32 0) | |
br label %instr_0x0005E140 | |
instr_0x0005E140: ; preds = %instr_0x0005E13C | |
%308 = call i32 @SUBF(i8* %ppu_state, i32 28, i32 0, i32 28, i32 0, i32 0) | |
br label %instr_0x0005E144 | |
instr_0x0005E144: ; preds = %instr_0x0005E140 | |
%309 = call i32 @ADD(i8* %ppu_state, i32 30, i32 30, i32 9, i32 0, i32 0) | |
br label %instr_0x0005E148 | |
instr_0x0005E148: ; preds = %instr_0x0005E144 | |
%310 = call i32 @SUBF(i8* %ppu_state, i32 11, i32 30, i32 28, i32 0, i32 0) | |
br label %instr_0x0005E14C | |
instr_0x0005E14C: ; preds = %instr_0x0005E148 | |
%311 = call i32 @CMPI(i8* %ppu_state, i32 7, i32 0, i32 11, i32 1) | |
br label %instr_0x0005E150 | |
instr_0x0005E150: ; preds = %instr_0x0005E14C | |
%312 = getelementptr i8* %ppu_state, i32 1576 | |
%313 = bitcast i8* %312 to i64* | |
%314 = load i64* %313, align 8 | |
%315 = getelementptr i8* %ppu_state, i32 1540 | |
%316 = bitcast i8* %315 to i32* | |
%317 = load i32* %316, align 4 | |
%318 = lshr i32 %317, 2 | |
%319 = and i32 %318, 1 | |
%320 = trunc i32 %319 to i1 | |
br i1 %320, label %instr_0x0005E108, label %instr_0x0005E154 | |
instr_0x0005E154: ; preds = %instr_0x0005E150, %instr_0x0005E100 | |
%321 = call i32 @LWZ(i8* %ppu_state, i32 9, i32 26, i32 28) | |
br label %instr_0x0005E158 | |
instr_0x0005E158: ; preds = %instr_0x0005E154 | |
%322 = call i32 @ADD(i8* %ppu_state, i32 9, i32 30, i32 9, i32 0, i32 0) | |
br label %instr_0x0005E15C | |
instr_0x0005E15C: ; preds = %instr_0x0005E158 | |
%323 = call i32 @RLDICL(i8* %ppu_state, i32 9, i32 9, i32 0, i32 32, i32 0) | |
br label %instr_0x0005E160 | |
instr_0x0005E160: ; preds = %instr_0x0005E15C | |
%324 = call i32 @LBZ(i8* %ppu_state, i32 0, i32 9, i32 0) | |
br label %instr_0x0005E164 | |
instr_0x0005E164: ; preds = %instr_0x0005E160 | |
%325 = call i32 @EXTSB(i8* %ppu_state, i32 0, i32 0, i32 0) | |
br label %instr_0x0005E168 | |
instr_0x0005E168: ; preds = %instr_0x0005E164 | |
%326 = call i32 @CMP(i8* %ppu_state, i32 7, i32 0, i32 0, i32 31) | |
br label %instr_0x0005E16C | |
instr_0x0005E16C: ; preds = %instr_0x0005E168 | |
%327 = getelementptr i8* %ppu_state, i32 1576 | |
%328 = bitcast i8* %327 to i64* | |
%329 = load i64* %328, align 8 | |
%330 = getelementptr i8* %ppu_state, i32 1540 | |
%331 = bitcast i8* %330 to i32* | |
%332 = load i32* %331, align 4 | |
%333 = lshr i32 %332, 2 | |
%334 = and i32 %333, 1 | |
%335 = trunc i32 %334 to i1 | |
br i1 %335, label %instr_0x0005E1F8, label %instr_0x0005E170 | |
instr_0x0005E170: ; preds = %instr_0x0005E16C | |
%336 = call i32 @OR(i8* %ppu_state, i32 3, i32 27, i32 27, i32 0) | |
br label %instr_0x0005E174 | |
instr_0x0005E174: ; preds = %instr_0x0005E170 | |
%337 = call i32 @EXTSW(i8* %ppu_state, i32 4, i32 0, i32 0) | |
br label %instr_0x0005E178 | |
instr_0x0005E178: ; preds = %instr_0x0005E174 | |
%338 = getelementptr i8* %ppu_state, i32 1568 | |
%339 = bitcast i8* %338 to i64* | |
store i64 385404, i64* %339, align 8 | |
%340 = getelementptr i8* %ppu_state, i32 1664 | |
%341 = bitcast i8* %340 to i32* | |
store i32 367548, i32* %341, align 4 | |
%342 = load i64* inttoptr (i64 8623115688 to i64*) | |
%343 = inttoptr i64 %342 to i32 (i8*, i64)* | |
%344 = call i32 %343(i8* %ppu_state, i64 0) | |
%345 = icmp eq i32 %344, -1 | |
br i1 %345, label %instr_0x0005E178_then_all_fs, label %instr_0x0005E178_merge_all_fs | |
instr_0x0005E178_then_all_fs: ; preds = %instr_0x0005E178 | |
ret i32 0 | |
instr_0x0005E178_merge_all_fs: ; preds = %instr_0x0005E178 | |
br label %instr_0x0005E17C | |
instr_0x0005E17C: ; preds = %instr_0x0005E178_merge_all_fs | |
%346 = call i32 @ORI(i8* %ppu_state, i32 0, i32 0, i32 0) | |
br label %instr_0x0005E180 | |
instr_0x0005E180: ; preds = %instr_0x0005E17C | |
br label %instr_0x0005DF8C | |
instr_0x0005E184: ; preds = %instr_0x0005DF90 | |
%347 = phi i32 [ 384912, %instr_0x0005DF90 ] | |
%348 = getelementptr i8* %ppu_state, i32 1664 | |
%349 = bitcast i8* %348 to i32* | |
store i32 385412, i32* %349, align 4 | |
%350 = zext i32 %347 to i64 | |
%351 = or i64 %350, 1652205199294464 | |
%352 = load i64* inttoptr (i64 8623115696 to i64*) | |
%353 = inttoptr i64 %352 to i32 (i8*, i64)* | |
%354 = call i32 %353(i8* %ppu_state, i64 %351) | |
%355 = icmp eq i32 %354, -1 | |
br i1 %355, label %instr_0x0005E184_then_all_fs, label %instr_0x0005E184_merge_all_fs | |
instr_0x0005E184_then_all_fs: ; preds = %instr_0x0005E184 | |
ret i32 0 | |
instr_0x0005E184_merge_all_fs: ; preds = %instr_0x0005E184 | |
%356 = icmp ne i32 %354, 0 | |
br i1 %356, label %instr_0x0005E184_then_0, label %instr_0x0005E184_merge_0 | |
instr_0x0005E184_then_0: ; preds = %instr_0x0005E184_merge_all_fs | |
%357 = zext i32 %354 to i64 | |
%358 = or i64 %357, 1652205199294464 | |
%359 = call i32 @execute_unknown_block(i8* %ppu_state, i64 %358) | |
br label %instr_0x0005E184_merge_0 | |
instr_0x0005E184_merge_0: ; preds = %instr_0x0005E184_then_0, %instr_0x0005E184_merge_all_fs | |
ret i32 0 | |
instr_0x0005E188: ; preds = %instr_0x0005E1F4 | |
%360 = call i32 @LD(i8* %ppu_state, i32 0, i32 1, i32 224) | |
br label %instr_0x0005E18C | |
instr_0x0005E18C: ; preds = %instr_0x0005E188 | |
%361 = call i32 @EXTSW(i8* %ppu_state, i32 3, i32 3, i32 0) | |
br label %instr_0x0005E190 | |
instr_0x0005E190: ; preds = %instr_0x0005E18C | |
%362 = call i32 @LWZ(i8* %ppu_state, i32 12, i32 1, i32 216) | |
br label %instr_0x0005E194 | |
instr_0x0005E194: ; preds = %instr_0x0005E190 | |
%363 = call i32 @LD(i8* %ppu_state, i32 20, i32 1, i32 112) | |
br label %instr_0x0005E198 | |
instr_0x0005E198: ; preds = %instr_0x0005E194 | |
%364 = call i32 @MTSPR(i8* %ppu_state, i32 256, i32 0) | |
br label %instr_0x0005E19C | |
instr_0x0005E19C: ; preds = %instr_0x0005E198 | |
%365 = call i32 @LD(i8* %ppu_state, i32 21, i32 1, i32 120) | |
br label %instr_0x0005E1A0 | |
instr_0x0005E1A0: ; preds = %instr_0x0005E19C | |
%366 = getelementptr i8* %ppu_state, i32 864 | |
%367 = bitcast i8* %366 to i32* | |
%368 = load i32* %367, align 8 | |
%369 = getelementptr i8* %ppu_state, i32 1540 | |
%370 = bitcast i8* %369 to i32* | |
%371 = load i32* %370, align 4 | |
%372 = and i32 %371, -983041 | |
%373 = and i32 %368, -983041 | |
%374 = or i32 %372, %373 | |
%375 = getelementptr i8* %ppu_state, i32 1540 | |
%376 = bitcast i8* %375 to i32* | |
store i32 %374, i32* %376, align 4 | |
br label %instr_0x0005E1A4 | |
instr_0x0005E1A4: ; preds = %instr_0x0005E1A0 | |
%377 = call i32 @LD(i8* %ppu_state, i32 22, i32 1, i32 128) | |
br label %instr_0x0005E1A8 | |
instr_0x0005E1A8: ; preds = %instr_0x0005E1A4 | |
%378 = call i32 @LD(i8* %ppu_state, i32 23, i32 1, i32 136) | |
br label %instr_0x0005E1AC | |
instr_0x0005E1AC: ; preds = %instr_0x0005E1A8 | |
%379 = call i32 @LD(i8* %ppu_state, i32 24, i32 1, i32 144) | |
br label %instr_0x0005E1B0 | |
instr_0x0005E1B0: ; preds = %instr_0x0005E1AC | |
%380 = call i32 @LD(i8* %ppu_state, i32 25, i32 1, i32 152) | |
br label %instr_0x0005E1B4 | |
instr_0x0005E1B4: ; preds = %instr_0x0005E1B0 | |
%381 = call i32 @LD(i8* %ppu_state, i32 26, i32 1, i32 160) | |
br label %instr_0x0005E1B8 | |
instr_0x0005E1B8: ; preds = %instr_0x0005E1B4 | |
%382 = call i32 @LD(i8* %ppu_state, i32 27, i32 1, i32 168) | |
br label %instr_0x0005E1BC | |
instr_0x0005E1BC: ; preds = %instr_0x0005E1B8 | |
%383 = call i32 @LD(i8* %ppu_state, i32 28, i32 1, i32 176) | |
br label %instr_0x0005E1C0 | |
instr_0x0005E1C0: ; preds = %instr_0x0005E1BC | |
%384 = call i32 @LD(i8* %ppu_state, i32 29, i32 1, i32 184) | |
br label %instr_0x0005E1C4 | |
instr_0x0005E1C4: ; preds = %instr_0x0005E1C0 | |
%385 = call i32 @LD(i8* %ppu_state, i32 30, i32 1, i32 192) | |
br label %instr_0x0005E1C8 | |
instr_0x0005E1C8: ; preds = %instr_0x0005E1C4 | |
%386 = call i32 @LD(i8* %ppu_state, i32 31, i32 1, i32 200) | |
br label %instr_0x0005E1CC | |
instr_0x0005E1CC: ; preds = %instr_0x0005E1C8 | |
%387 = call i32 @ADDI(i8* %ppu_state, i32 1, i32 1, i32 208) | |
br label %instr_0x0005E1D0 | |
instr_0x0005E1D0: ; preds = %instr_0x0005E1CC | |
%388 = getelementptr i8* %ppu_state, i32 1568 | |
%389 = bitcast i8* %388 to i64* | |
%390 = load i64* %389, align 8 | |
%391 = and i64 %390, -4 | |
%392 = trunc i64 %391 to i32 | |
%393 = getelementptr i8* %ppu_state, i32 1576 | |
%394 = bitcast i8* %393 to i64* | |
%395 = load i64* %394, align 8 | |
%396 = getelementptr i8* %ppu_state, i32 1664 | |
%397 = bitcast i8* %396 to i32* | |
store i32 %392, i32* %397, align 4 | |
ret i32 0 | |
instr_0x0005E1D4: ; preds = %instr_0x0005DF44 | |
%398 = phi i32 [ 384836, %instr_0x0005DF44 ] | |
%399 = getelementptr i8* %ppu_state, i32 1664 | |
%400 = bitcast i8* %399 to i32* | |
store i32 385492, i32* %400, align 4 | |
%401 = zext i32 %398 to i64 | |
%402 = or i64 %401, 1652205199294464 | |
%403 = load i64* inttoptr (i64 8623115696 to i64*) | |
%404 = inttoptr i64 %403 to i32 (i8*, i64)* | |
%405 = call i32 %404(i8* %ppu_state, i64 %402) | |
%406 = icmp eq i32 %405, -1 | |
br i1 %406, label %instr_0x0005E1D4_then_all_fs, label %instr_0x0005E1D4_merge_all_fs | |
instr_0x0005E1D4_then_all_fs: ; preds = %instr_0x0005E1D4 | |
ret i32 0 | |
instr_0x0005E1D4_merge_all_fs: ; preds = %instr_0x0005E1D4 | |
%407 = icmp ne i32 %405, 0 | |
br i1 %407, label %instr_0x0005E1D4_then_0, label %instr_0x0005E1D4_merge_0 | |
instr_0x0005E1D4_then_0: ; preds = %instr_0x0005E1D4_merge_all_fs | |
%408 = zext i32 %405 to i64 | |
%409 = or i64 %408, 1652205199294464 | |
%410 = call i32 @execute_unknown_block(i8* %ppu_state, i64 %409) | |
br label %instr_0x0005E1D4_merge_0 | |
instr_0x0005E1D4_merge_0: ; preds = %instr_0x0005E1D4_then_0, %instr_0x0005E1D4_merge_all_fs | |
ret i32 0 | |
instr_0x0005E1E0: ; preds = %instr_0x0005DFF4 | |
%411 = call i32 @ADDI(i8* %ppu_state, i32 24, i32 24, i32 1) | |
br label %instr_0x0005E1E4 | |
instr_0x0005E1E4: ; preds = %instr_0x0005E1E0 | |
%412 = call i32 @ADDI(i8* %ppu_state, i32 21, i32 0, i32 0) | |
br label %instr_0x0005E1E8 | |
instr_0x0005E1E8: ; preds = %instr_0x0005E1E4 | |
%413 = getelementptr i8* %ppu_state, i32 1576 | |
%414 = bitcast i8* %413 to i64* | |
%415 = load i64* %414, align 8 | |
%416 = sub i64 %415, 1 | |
%417 = getelementptr i8* %ppu_state, i32 1576 | |
%418 = bitcast i8* %417 to i64* | |
store i64 %416, i64* %418, align 8 | |
%419 = icmp ne i64 %416, 0 | |
%420 = xor i1 %419, true | |
br i1 %420, label %instr_0x0005DFFC, label %instr_0x0005E1EC | |
instr_0x0005E1EC: ; preds = %instr_0x0005E1E8 | |
br label %instr_0x0005DFB8 | |
instr_0x0005E1F0: ; preds = %instr_0x0005DF20, %instr_0x0005DF08 | |
%421 = call i32 @ADDI(i8* %ppu_state, i32 3, i32 0, i32 0) | |
br label %instr_0x0005E1F4 | |
instr_0x0005E1F4: ; preds = %instr_0x0005E1F0 | |
br label %instr_0x0005E188 | |
instr_0x0005E1F8: ; preds = %instr_0x0005E16C | |
%422 = phi i32 [ 385388, %instr_0x0005E16C ] | |
%423 = getelementptr i8* %ppu_state, i32 1664 | |
%424 = bitcast i8* %423 to i32* | |
store i32 385528, i32* %424, align 4 | |
%425 = zext i32 %422 to i64 | |
%426 = or i64 %425, 1652205199294464 | |
%427 = load i64* inttoptr (i64 8623115696 to i64*) | |
%428 = inttoptr i64 %427 to i32 (i8*, i64)* | |
%429 = call i32 %428(i8* %ppu_state, i64 %426) | |
%430 = icmp eq i32 %429, -1 | |
br i1 %430, label %instr_0x0005E1F8_then_all_fs, label %instr_0x0005E1F8_merge_all_fs | |
instr_0x0005E1F8_then_all_fs: ; preds = %instr_0x0005E1F8 | |
ret i32 0 | |
instr_0x0005E1F8_merge_all_fs: ; preds = %instr_0x0005E1F8 | |
%431 = icmp ne i32 %429, 0 | |
br i1 %431, label %instr_0x0005E1F8_then_0, label %instr_0x0005E1F8_merge_0 | |
instr_0x0005E1F8_then_0: ; preds = %instr_0x0005E1F8_merge_all_fs | |
%432 = zext i32 %429 to i64 | |
%433 = or i64 %432, 1652205199294464 | |
%434 = call i32 @execute_unknown_block(i8* %ppu_state, i64 %433) | |
br label %instr_0x0005E1F8_merge_0 | |
instr_0x0005E1F8_merge_0: ; preds = %instr_0x0005E1F8_then_0, %instr_0x0005E1F8_merge_all_fs | |
ret i32 0 | |
} | |
declare x86_64_win64cc i32 @MFOCRF(i8*, i32) | |
declare x86_64_win64cc i32 @STDU(i8*, i32, i32, i32) | |
declare x86_64_win64cc i32 @STD(i8*, i32, i32, i32) | |
declare x86_64_win64cc i32 @OR(i8*, i32, i32, i32, i32) | |
declare x86_64_win64cc i32 @STW(i8*, i32, i32, i32) | |
declare x86_64_win64cc i32 @MFSPR(i8*, i32, i32) | |
declare x86_64_win64cc i32 @LWZ(i8*, i32, i32, i32) | |
declare x86_64_win64cc i32 @CMPI(i8*, i32, i32, i32, i32) | |
declare x86_64_win64cc i32 @ADD(i8*, i32, i32, i32, i32, i32) | |
declare x86_64_win64cc i32 @ADDI(i8*, i32, i32, i32) | |
declare x86_64_win64cc i32 @DIVW(i8*, i32, i32, i32, i32, i32) | |
declare x86_64_win64cc i32 @CMP(i8*, i32, i32, i32, i32) | |
declare x86_64_win64cc i32 @RLDICL(i8*, i32, i32, i32, i32, i32) | |
declare x86_64_win64cc i32 @EXTSW(i8*, i32, i32, i32) | |
declare x86_64_win64cc i32 @ORI(i8*, i32, i32, i32) | |
declare x86_64_win64cc i32 @RLWINM(i8*, i32, i32, i32, i32, i32, i32) | |
declare x86_64_win64cc i32 @LBZ(i8*, i32, i32, i32) | |
declare x86_64_win64cc i32 @EXTSB(i8*, i32, i32, i32) | |
declare x86_64_win64cc i32 @MULLW(i8*, i32, i32, i32, i32, i32) | |
declare x86_64_win64cc i32 @MTSPR(i8*, i32, i32) | |
declare x86_64_win64cc i32 @LFS(i8*, i32, i32, i32) | |
declare x86_64_win64cc i32 @FADDS(i8*, i32, i32, i32, i32) | |
declare x86_64_win64cc i32 @STFS(i8*, i32, i32, i32) | |
declare x86_64_win64cc i32 @SUBF(i8*, i32, i32, i32, i32, i32) | |
declare x86_64_win64cc i32 @ADDIS(i8*, i32, i32, i32) | |
declare x86_64_win64cc i32 @AND(i8*, i32, i32, i32, i32) | |
declare x86_64_win64cc i32 @SRAWI(i8*, i32, i32, i32, i32) | |
declare x86_64_win64cc i32 @NEG(i8*, i32, i32, i32, i32) | |
declare x86_64_win64cc i32 @LD(i8*, i32, i32, i32) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment