Last active
August 29, 2015 14:26
-
-
Save vlj/0a9047b60dacd04ce756 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 : | |
0029ab30: 04 fd 02 00 cmpwi cr7,r5,0 #0 | |
0029ab40: fd fd fb fd mflr r0 | |
0029ab50: fd f9 fb fb stdu r1,-272(r1) #fffffef0 | |
0029ab60: 00 f9 00 fd std r16,144(r1) #90 | |
0029ab70: 04 fd 0c fd std r17,152(r1) #98 | |
0029ab80: 06 04 04 06 std r22,192(r1) #c0 | |
0029ab90: 02 02 00 02 std r23,200(r1) #c8 | |
0029aba0: fd fd fd fb std r14,128(r1) #80 | |
0029abb0: fd f9 fb fb std r15,136(r1) #88 | |
0029abc0: f9 fb fb f9 std r18,160(r1) #a0 | |
0029abd0: fd f9 fb fb std r19,168(r1) #a8 | |
0029abe0: fb f9 fd f9 std r20,176(r1) #b0 | |
0029abf0: fb f9 fd f9 std r21,184(r1) #b8 | |
0029ac00: f9 fb fd f9 std r24,208(r1) #d0 | |
0029ac10: fd fb fd fd std r25,216(r1) #d8 | |
0029ac20: fd 00 fd 00 std r26,224(r1) #e0 | |
0029ac30: 02 00 02 02 std r27,232(r1) #e8 | |
0029ac40: 04 02 02 04 std r28,240(r1) #f0 | |
0029ac50: 04 02 06 02 std r29,248(r1) #f8 | |
0029ac60: 06 02 06 02 std r30,256(r1) #100 | |
0029ac70: 06 02 06 02 std r31,264(r1) #108 | |
0029ac80: 00 06 02 04 std r0,288(r1) #120 | |
0029ac90: 02 02 00 02 mr r16,r5 | |
0029aca0: 02 fb 00 fd mr r22,r3 | |
0029acb0: fd f9 fd f9 mr r23,r4 | |
0029acc0: fd fb fb fd stw r7,112(r1) #70 | |
0029acd0: 00 00 02 00 mr r17,r6 | |
0029ace0: 06 02 06 04 beq cr7,0x29b1bc | |
0029acf0: 06 00 06 00 cmplwi cr7,r4,32 #20 | |
0029ad00: 02 fd 00 fd ble cr7,0x29b084 | |
0029ad10: 00 f3 00 f9 rlwinm r9,r6,3,0,28 | |
0029ad20: f9 fd f9 fb rlwinm r0,r6,5,0,26 | |
0029ad30: fb fb fb fb mr r25,r6 | |
0029ad40: f9 fd f9 fb add r14,r9,r0 | |
0029ad50: fb fb f9 fd clrldi r21,r6,32 | |
0029ad60: f9 fd f9 fb clrldi r24,r7,32 | |
0029ad70: fd fb fb fd neg r20,r6 | |
0029ad80: fd fd 00 fd rlwinm r0,r23,31,1,31 | |
0029ad90: fd 02 00 00 mullw r9,r17,r23 | |
0029ada0: 02 02 02 04 add r18,r9,r22 | |
0029adb0: 04 02 04 04 mullw r0,r17,r0 | |
0029adc0: 04 04 04 04 subf r31,r25,r18 | |
0029add0: 02 04 04 04 add r23,r0,r22 | |
0029ade0: 02 06 00 06 subf r29,r22,r31 | |
0029adf0: 00 04 02 00 add r19,r23,r25 | |
0029ae00: fd 02 fd 00 cmplw cr7,r29,r14 | |
0029ae10: fb fd fb fb ble cr7,0x29b25c | |
0029ae20: fd fb f9 fd clrldi r15,r22,32 | |
0029ae30: fd 00 fd 00 mr r6,r21 | |
0029ae40: 02 04 04 02 mr r3,r15 | |
0029ae50: 06 02 06 00 mr r7,r24 | |
0029ae60: 02 fd 02 00 clrldi r26,r23,32 | |
0029ae70: f9 00 fb fb divwu r29,r29,r17 | |
0029ae80: fb fb fb fb rlwinm r29,r29,29,3,31 | |
0029ae90: fb fb fb fb addi r29,1(r29) #1 | |
0029aea0: fb fb fb fb mullw r29,r17,r29 | |
0029aeb0: fb fb fb fb rlwinm r28,r29,1,0,30 | |
0029aec0: fb fb fb fb add r27,r22,r29 | |
0029aed0: fb fb fb fd add r5,r22,r28 | |
0029aee0: 02 f9 00 fd clrldi r27,r27,32 | |
0029aef0: 00 00 00 fd clrldi r5,r5,32 | |
0029af00: 02 02 02 00 mr r4,r27 | |
0029af10: 00 04 02 04 subf r28,r28,r31 | |
0029af20: 00 0c 00 06 bl 0x29abd0 | |
0029af30: 04 04 02 06 subf r3,r29,r23 | |
0029af40: 04 02 06 02 add r5,r23,r29 | |
0029af50: 02 02 04 02 subf r29,r29,r31 | |
0029af60: 00 00 02 fd clrldi r3,r3,32 | |
0029af70: fb 00 f9 00 clrldi r5,r5,32 | |
0029af80: f9 fd f9 fb mr r4,r26 | |
0029af90: fb fd fd fd mr r6,r21 | |
0029afa0: 02 00 06 00 mr r7,r24 | |
0029afb0: 02 06 02 06 clrldi r29,r29,32 | |
0029afc0: 02 02 02 00 bl 0x29ac48 | |
0029afd0: fb 00 fb 00 clrldi r3,r28,32 | |
0029afe0: fd fb fb fb clrldi r5,r31,32 | |
0029aff0: fb fb fb fb mr r4,r29 | |
0029b000: fb fb fb fb mr r6,r21 | |
0029b010: fb fb fb fb mr r7,r24 | |
0029b020: fb fb fb fb bl 0x29ac90 | |
0029b030: fb fb fb fb mr r3,r27 | |
0029b040: fb 00 f9 00 mr r4,r26 | |
0029b050: 02 fb 02 fd mr r5,r29 | |
0029b060: 02 00 02 00 mr r6,r21 | |
0029b070: 00 04 02 02 mr r7,r24 | |
0029b080: 02 04 04 02 bl 0x29acd8 | |
0029b090: 02 04 04 02 cmplw cr7,r23,r22 | |
0029b0a0: 02 04 04 02 mr r31,r23 | |
0029b0b0: 02 04 00 06 ble cr7,0x29b108 | |
0029b0c0: 00 02 00 02 mr r30,r23 | |
0029b0d0: fd 00 fd fd neg r29,r25 | |
0029b0e0: f9 fd fb fb subf r26,r25,r23 | |
0029b0f0: f9 fd fb fd b 0x29b0fc | |
0029b120: 02 02 04 00 std r2,40(r1) #28 | |
0029b130: fd 00 00 fd lwz r0,0(r24) #0 | |
0029b140: f9 00 f9 00 add r31,r30,r29 | |
0029b150: f9 fd f9 fd clrldi r4,r30,32 | |
0029b160: f9 fd f9 fd lwz r2,4(r24) #4 | |
0029b170: f9 fd f9 fd mtctr r0 | |
0029b180: f9 fd f9 fd clrldi r3,r31,32 | |
0029b190: f9 fd f9 fd add r26,r26,r29 | |
0029b1a0: fd fb fd fb bcctrl 20,0,0 | |
0029b1b0: fd 00 fb 02 ld r2,40(r1) #28 | |
0029b1c0: 00 00 00 02 add r0,r25,r26 | |
0029b1d0: 00 02 04 00 cmpwi cr7,r3,0 #0 | |
0029b1e0: 04 02 04 02 cmplw cr6,r0,r22 | |
0029b1f0: 04 04 02 04 beq cr7,0x29b1b4 | |
0029b200: 04 04 02 04 mr r31,r30 | |
0029b210: 02 04 02 04 cmplw cr7,r18,r19 | |
0029b220: 02 02 02 02 add r30,r19,r25 | |
0029b230: 00 fd 00 00 clrldi r26,r31,32 | |
0029b240: fb fd fb fb bgt cr7,0x29b250 | |
0029b280: 02 04 04 02 std r2,40(r1) #28 | |
0029b290: 02 00 00 02 lwz r0,0(r24) #0 | |
0029b2a0: fb 00 fb fd clrldi r3,r19,32 | |
0029b2b0: f3 00 f9 fd mr r4,r26 | |
0029b2c0: fd fb fb fb lwz r2,4(r24) #4 | |
0029b2d0: fb fb fb fb mtctr r0 | |
0029b2e0: fd f9 fd f9 add r30,r30,r25 | |
0029b2f0: fb fb fb fb bcctrl 20,0,0 | |
0029b300: fd fb fd fb ld r2,40(r1) #28 | |
0029b310: fd fd fd fd subf r0,r25,r30 | |
0029b320: fd 02 fd 00 cmpwi cr7,r3,0 #0 | |
0029b330: 04 00 02 02 cmplw cr6,r0,r18 | |
0029b340: 00 06 00 04 beq cr7,0x29b308 | |
0029b350: 02 04 02 04 mr r23,r19 | |
0029b360: 02 04 02 04 mr r27,r31 | |
0029b370: 02 04 02 04 cmplw cr7,r23,r18 | |
0029b380: 00 04 02 00 blt cr7,0x29b428 | |
0029b390: 00 02 fd 02 cmplw cr7,r27,r22 | |
0029b3a0: 02 f9 00 fb ble cr7,0x29b410 | |
0029b3b0: fd f9 fd fb subf r28,r25,r27 | |
0029b3c0: fb 00 fb 00 mr r30,r27 | |
0029b3d0: 02 00 04 00 clrldi r26,r31,32 | |
0029b3e0: 04 04 04 02 add r27,r20,r27 | |
0029b3f0: 04 00 02 02 std r2,40(r1) #28 | |
0029b400: fd fd 00 fb clrldi r29,r27,32 | |
0029b410: fd fb fd f9 lwz r0,0(r24) #0 | |
0029b420: fb fd f9 fd mr r4,r26 | |
0029b430: fd f9 fd fb lwz r2,4(r24) #4 | |
0029b440: f9 fd fb fb mr r3,r29 | |
0029b450: fd fb fb fd mtctr r0 | |
0029b460: fb fb fd fb add r28,r28,r20 | |
0029b470: fb 00 fb fd bcctrl 20,0,0 | |
0029b480: fd 02 fb 02 ld r2,40(r1) #28 | |
0029b490: 04 00 00 02 mr r4,r29 | |
0029b4a0: 00 04 00 04 cmpwi cr7,r3,0 #0 | |
0029b4b0: 02 04 02 04 mr r5,r21 | |
0029b4c0: 02 04 02 04 blt cr7,0x29b4d8 | |
0029b4d0: 02 04 02 04 bne cr7,0x29b570 | |
0029b520: fb fd fb fd add r0,r28,r25 | |
0029b530: 00 00 02 00 mr r30,r27 | |
0029b540: 04 04 02 06 cmplw cr7,r0,r22 | |
0029b550: 02 02 04 02 bgt cr7,0x29b4f4 | |
0029b560: 00 00 fd 02 cmpw cr7,r22,r27 | |
0029b570: f9 00 fb fd beq cr7,0x29b5f4 | |
0029b580: f9 00 f9 fd cmpw cr7,r23,r18 | |
0029b590: f9 00 f9 fd beq cr7,0x29b644 | |
0029b5a0: fb fb fd fb subf r27,r25,r27 | |
0029b5b0: fb fd f9 00 clrldi r3,r23,32 | |
0029b5c0: fd f9 00 f9 clrldi r4,r27,32 | |
0029b5d0: fb 00 f9 00 mr r5,r21 | |
0029b5e0: fd 00 fb 00 add r23,r23,r25 | |
0029b5f0: fd 02 fd 02 bl 0x29add8 | |
0029b600: 02 02 00 04 cmplw cr7,r23,r18 | |
0029b610: 04 02 02 04 bge cr7,0x29b570 | |
0029b620: 02 04 02 04 std r2,40(r1) #28 | |
0029b630: 02 04 02 04 lwz r0,0(r24) #0 | |
0029b640: 02 02 04 02 clrldi r30,r23,32 | |
0029b650: 02 00 04 fd clrldi r3,r31,32 | |
0029b660: 00 00 00 fd lwz r2,4(r24) #4 | |
0029b670: fd fb fd fb mr r4,r30 | |
0029b680: fb fb fd fb mtctr r0 | |
0029b690: fd 00 fd 02 bcctrl 20,0,0 | |
0029b6a0: 02 02 04 02 ld r2,40(r1) #28 | |
0029b6b0: 04 02 04 02 cmpwi cr7,r3,0 #0 | |
0029b6c0: 00 02 fd 02 blt cr7,0x29b6dc | |
0029b6d0: 00 fd fd fd bne cr7,0x29b600 | |
0029b750: 02 fd 00 00 mr r27,r30 | |
0029b760: 02 00 02 00 cmpw cr7,r22,r27 | |
0029b770: 04 00 04 02 bne cr7,0x29b6f4 | |
0029b780: 02 04 00 06 cmpw cr7,r23,r18 | |
0029b790: 02 04 02 02 beq cr7,0x29b820 | |
0029b860: fb fd fb fb subf r27,r25,r27 | |
0029b870: fd fb fb fd subf r31,r25,r31 | |
0029b880: fd fb fb fd subf r19,r25,r19 | |
0029b890: 00 f9 00 fb cmpw cr7,r27,r31 | |
0029b8a0: fd fd fd fd beq cr7,0x29b8c0 | |
0029b8b0: 00 fd 00 fd clrldi r3,r27,32 | |
0029b8c0: fd 04 fd 02 clrldi r4,r19,32 | |
0029b8d0: 00 02 02 02 clrldi r5,r31,32 | |
0029b8e0: 04 00 06 fd mr r6,r21 | |
0029b8f0: fd 0c fd 06 mr r23,r18 | |
0029b900: 02 04 02 02 bl 0x29ae98 | |
0029b910: 02 02 02 02 b 0x29b7a8 | |
0029b9d0: fb fd fb fb subf r11,r22,r31 | |
0029b9e0: fd fb fb fd subf r0,r19,r18 | |
0029b9f0: fb fb fd fb rlwinm r10,r16,30,2,31 | |
0029ba00: fd fd fb 00 divwu r11,r11,r17 | |
0029ba10: 00 fd fd 00 rlwinm r9,r16,31,1,31 | |
0029ba20: fd 02 fd 02 divwu r23,r0,r17 | |
0029ba30: 02 00 02 02 cmplw cr7,r11,r23 | |
0029ba40: 02 02 02 04 add r16,r9,r10 | |
0029ba50: 02 02 02 04 bgt cr7,0x29bbac | |
0029ba60: 02 02 04 00 mr r3,r15 | |
0029ba70: 00 04 00 04 clrldi r4,r11,32 | |
0029ba80: 00 02 00 02 clrldi r5,r16,32 | |
0029ba90: fd 00 00 fd mr r6,r21 | |
0029baa0: fb 00 fb fd mr r7,r24 | |
0029bab0: fb fd fb fd mr r22,r19 | |
0029bac0: fd 00 fd 02 bl 0x29b6dc | |
0029bad0: 04 00 04 02 cmpwi cr7,r16,0 #0 | |
0029bae0: 04 02 04 02 beq cr7,0x29bc3c | |
0029baf0: fd 04 fd 02 cmplwi cr7,r23,32 #20 | |
0029bb00: fd 00 fd fd bgt cr7,0x29b7a0 | |
0029bb10: fb fd fb fd cmplwi cr7,r23,1 #1 | |
0029bb20: fb fd fb fd lwz r26,112(r1) #70 | |
0029bb30: fb fd fb fd mr r27,r22 | |
0029bb40: fb fd fb fd clrldi r25,r22,32 | |
0029bb50: fb fd fb fd neg r29,r17 | |
0029bb60: fb fd fb fd ble cr7,0x29bc00 | |
0029bb70: fd fd fd fd addi r23,-1(r23) #ffffffff | |
0029bb80: 00 fd 02 fd cmpwi cr7,r23,0 #0 | |
0029bb90: 02 00 02 00 beq cr7,0x29bc24 | |
0029bba0: 04 00 04 00 add r27,r27,r17 | |
0029bbb0: 02 02 02 04 std r2,40(r1) #28 | |
0029bbc0: 02 02 04 00 lwz r0,0(r26) #0 | |
0029bbd0: 00 04 00 04 clrldi r28,r27,32 | |
0029bbe0: 02 02 00 04 mr r4,r25 | |
0029bbf0: 04 fd 00 00 lwz r2,4(r26) #4 | |
0029bc00: fd fd fd fd mr r3,r28 | |
0029bc10: fd fb fd fb mtctr r0 | |
0029bc20: fd fd 00 fb mr r30,r27 | |
0029bc30: 04 00 02 02 mr r31,r27 | |
0029bc40: 02 04 02 04 bcctrl 20,0,0 | |
0029bc50: 02 02 02 00 ld r2,40(r1) #28 | |
0029bc60: 00 fd 00 fd cmpwi cr7,r3,0 #0 | |
0029bc70: fd fb 00 fb bge cr7,0x29bc7c | |
0029bc80: fd fb fd fb b 0x29be04 | |
0029bc90: fd fb fd fb mr r30,r31 | |
0029bca0: fd fb fd fb std r2,40(r1) #28 | |
0029bcb0: fd fb fd fb lwz r0,0(r26) #0 | |
0029bcc0: fd fb fd fb add r31,r31,r29 | |
0029bcd0: f9 02 fb fd mr r3,r28 | |
0029bce0: 00 fd 00 00 lwz r2,4(r26) #4 | |
0029bcf0: 00 00 00 02 clrldi r4,r31,32 | |
0029bd00: 02 00 fd 02 mtctr r0 | |
0029bd10: f7 09 1c 1e bcctrl 20,0,0 | |
0029bd20: dc f7 1b 1c ld r2,40(r1) #28 | |
0029bd30: ee fb fb fb cmpwi cr7,r3,0 #0 | |
0029bd40: fb e4 f5 11 blt cr7,0x29bd14 | |
0029bd50: 22 1e 1b 18 cmpw cr7,r27,r30 | |
0029bd60: 25 23 23 25 beq cr7,0x29bce4 | |
0029bd70: 1b 18 18 1b clrldi r3,r30,32 | |
0029bd80: 1e 1e 23 1c mr r4,r28 | |
0029bd90: 22 1b 15 1b clrldi r5,r17,32 | |
0029bda0: 25 22 23 23 addi r23,-1(r23) #ffffffff | |
0029bdb0: dc dc da e3 bl 0x29b814 | |
0029bdc0: 23 22 1e 15 cmpwi cr7,r23,0 #0 | |
0029bdd0: e7 ef e7 dd bne cr7,0x29bd44 | |
0029bde0: da e3 e7 f2 ld r0,288(r1) #120 | |
0029bdf0: ee ea dd e3 ld r14,128(r1) #80 | |
0029be00: e3 dd dd dc ld r15,136(r1) #88 | |
0029be10: dc dc dd dc mtlr r0 | |
0029be20: e3 e4 e4 e4 ld r16,144(r1) #90 | |
0029be30: fb fd 02 1b ld r17,152(r1) #98 | |
0029be40: 23 22 1b 0d ld r18,160(r1) #a0 | |
0029be50: 22 10 08 fb ld r19,168(r1) #a8 | |
0029be60: 18 1b 1e 1e ld r20,176(r1) #b0 | |
0029be70: e7 eb ee f2 ld r21,184(r1) #b8 | |
0029be80: ef e7 e1 dd ld r22,192(r1) #c0 | |
0029be90: ee e4 dd dc ld r23,200(r1) #c8 | |
0029bea0: f7 01 0a 09 ld r24,208(r1) #d0 | |
0029beb0: 1b 1c 1c 1c ld r25,216(r1) #d8 | |
0029bec0: 23 22 23 23 ld r26,224(r1) #e0 | |
0029bed0: 23 1e 22 1b ld r27,232(r1) #e8 | |
0029bee0: 1c 22 1b 11 ld r28,240(r1) #f0 | |
0029bef0: 10 18 1b 25 ld r29,248(r1) #f8 | |
0029bf00: 18 1e 14 1e ld r30,256(r1) #100 | |
0029bf10: ee e1 e1 da ld r31,264(r1) #108 | |
0029bf20: 18 22 23 22 addi r1,272(r1) #110 | |
0029bf30: e1 dc e1 dd blr | |
0029bfc0: dc e4 f5 04 clrldi r4,r23,32 | |
0029bfd0: 23 18 fd ee clrldi r3,r19,32 | |
0029bfe0: ef ee f2 ef clrldi r5,r16,32 | |
0029bff0: dd e7 ef ee mr r6,r21 | |
0029c000: e3 e3 e3 ea mr r7,r24 | |
0029c010: 14 10 15 14 mr r23,r11 | |
0029c020: 18 1b 1c 23 bl 0x29bae4 | |
0029c030: 1e 22 1e 25 cmpwi cr7,r16,0 #0 | |
0029c040: 1b 1b 22 1e bne cr7,0x29beec | |
0029c290: 0a 0a fd eb mr r4,r28 | |
0029c2a0: 01 04 14 1c mr r3,r25 | |
0029c2b0: e7 f5 04 1b clrldi r5,r17,32 | |
0029c2c0: dc e1 e4 e7 bl 0x29bbe0 | |
0029c2d0: ee e3 e1 f5 b 0x29c0f8 | |
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_0x000A6ACC_0(i8* %ppu_state, i64 %context) { | |
entry: | |
br label %instr_0x000A6ACC | |
instr_0x000A6ACC: ; preds = %entry | |
%0 = getelementptr i8* %ppu_state, i32 808 | |
%1 = bitcast i8* %0 to i32* | |
%2 = load i32* %1, align 8 | |
%3 = sext i32 %2 to i64 | |
%4 = icmp slt i64 %3, 0 | |
%5 = icmp sgt i64 %3, 0 | |
%6 = icmp eq i64 %3, 0 | |
%7 = getelementptr i8* %ppu_state, i32 1540 | |
%8 = bitcast i8* %7 to i32* | |
%9 = load i32* %8, align 4 | |
%10 = getelementptr i8* %ppu_state, i32 1544 | |
%11 = bitcast i8* %10 to i64* | |
%12 = load i64* %11, align 8 | |
%13 = lshr i64 %12, 31 | |
%14 = and i64 %13, 1 | |
%15 = and i32 %9, -16 | |
%16 = zext i1 %4 to i32 | |
%17 = shl i32 %16, 3 | |
%18 = or i32 %15, %17 | |
%19 = zext i1 %5 to i32 | |
%20 = shl i32 %19, 2 | |
%21 = or i32 %18, %20 | |
%22 = zext i1 %6 to i32 | |
%23 = shl i32 %22, 1 | |
%24 = or i32 %21, %23 | |
%25 = trunc i64 %14 to i32 | |
%26 = or i32 %24, %25 | |
%27 = getelementptr i8* %ppu_state, i32 1540 | |
%28 = bitcast i8* %27 to i32* | |
store i32 %26, i32* %28, align 4 | |
br label %instr_0x000A6AD0 | |
instr_0x000A6AD0: ; preds = %instr_0x000A6ACC | |
%29 = getelementptr i8* %ppu_state, i32 1568 | |
%30 = bitcast i8* %29 to i64* | |
%31 = load i64* %30, align 8 | |
%32 = getelementptr i8* %ppu_state, i32 768 | |
%33 = bitcast i8* %32 to i64* | |
store i64 %31, i64* %33, align 8 | |
br label %instr_0x000A6AD4 | |
instr_0x000A6AD4: ; preds = %instr_0x000A6AD0 | |
%34 = getelementptr i8* %ppu_state, i32 776 | |
%35 = bitcast i8* %34 to i64* | |
%36 = load i64* %35, align 8 | |
%37 = add i64 %36, -272 | |
%38 = getelementptr i8* %ppu_state, i32 776 | |
%39 = bitcast i8* %38 to i64* | |
%40 = load i64* %39, align 8 | |
%41 = call i64 @llvm.bswap.i64(i64 %40) | |
%42 = and i64 %37, 4294967295 | |
%43 = add i64 %42, 2147418112 | |
%44 = inttoptr i64 %43 to i64* | |
store i64 %41, i64* %44 | |
%45 = getelementptr i8* %ppu_state, i32 776 | |
%46 = bitcast i8* %45 to i64* | |
store i64 %37, i64* %46, align 8 | |
br label %instr_0x000A6AD8 | |
instr_0x000A6AD8: ; preds = %instr_0x000A6AD4 | |
%47 = getelementptr i8* %ppu_state, i32 776 | |
%48 = bitcast i8* %47 to i64* | |
%49 = load i64* %48, align 8 | |
%50 = add i64 %49, 144 | |
%51 = getelementptr i8* %ppu_state, i32 896 | |
%52 = bitcast i8* %51 to i64* | |
%53 = load i64* %52, align 8 | |
%54 = call i64 @llvm.bswap.i64(i64 %53) | |
%55 = and i64 %50, 4294967295 | |
%56 = add i64 %55, 2147418112 | |
%57 = inttoptr i64 %56 to i64* | |
store i64 %54, i64* %57 | |
br label %instr_0x000A6ADC | |
instr_0x000A6ADC: ; preds = %instr_0x000A6AD8 | |
%58 = getelementptr i8* %ppu_state, i32 776 | |
%59 = bitcast i8* %58 to i64* | |
%60 = load i64* %59, align 8 | |
%61 = add i64 %60, 152 | |
%62 = getelementptr i8* %ppu_state, i32 904 | |
%63 = bitcast i8* %62 to i64* | |
%64 = load i64* %63, align 8 | |
%65 = call i64 @llvm.bswap.i64(i64 %64) | |
%66 = and i64 %61, 4294967295 | |
%67 = add i64 %66, 2147418112 | |
%68 = inttoptr i64 %67 to i64* | |
store i64 %65, i64* %68 | |
br label %instr_0x000A6AE0 | |
instr_0x000A6AE0: ; preds = %instr_0x000A6ADC | |
%69 = getelementptr i8* %ppu_state, i32 776 | |
%70 = bitcast i8* %69 to i64* | |
%71 = load i64* %70, align 8 | |
%72 = add i64 %71, 192 | |
%73 = getelementptr i8* %ppu_state, i32 944 | |
%74 = bitcast i8* %73 to i64* | |
%75 = load i64* %74, align 8 | |
%76 = call i64 @llvm.bswap.i64(i64 %75) | |
%77 = and i64 %72, 4294967295 | |
%78 = add i64 %77, 2147418112 | |
%79 = inttoptr i64 %78 to i64* | |
store i64 %76, i64* %79 | |
br label %instr_0x000A6AE4 | |
instr_0x000A6AE4: ; preds = %instr_0x000A6AE0 | |
%80 = getelementptr i8* %ppu_state, i32 776 | |
%81 = bitcast i8* %80 to i64* | |
%82 = load i64* %81, align 8 | |
%83 = add i64 %82, 200 | |
%84 = getelementptr i8* %ppu_state, i32 952 | |
%85 = bitcast i8* %84 to i64* | |
%86 = load i64* %85, align 8 | |
%87 = call i64 @llvm.bswap.i64(i64 %86) | |
%88 = and i64 %83, 4294967295 | |
%89 = add i64 %88, 2147418112 | |
%90 = inttoptr i64 %89 to i64* | |
store i64 %87, i64* %90 | |
br label %instr_0x000A6AE8 | |
instr_0x000A6AE8: ; preds = %instr_0x000A6AE4 | |
%91 = getelementptr i8* %ppu_state, i32 776 | |
%92 = bitcast i8* %91 to i64* | |
%93 = load i64* %92, align 8 | |
%94 = add i64 %93, 128 | |
%95 = getelementptr i8* %ppu_state, i32 880 | |
%96 = bitcast i8* %95 to i64* | |
%97 = load i64* %96, align 8 | |
%98 = call i64 @llvm.bswap.i64(i64 %97) | |
%99 = and i64 %94, 4294967295 | |
%100 = add i64 %99, 2147418112 | |
%101 = inttoptr i64 %100 to i64* | |
store i64 %98, i64* %101 | |
br label %instr_0x000A6AEC | |
instr_0x000A6AEC: ; preds = %instr_0x000A6AE8 | |
%102 = getelementptr i8* %ppu_state, i32 776 | |
%103 = bitcast i8* %102 to i64* | |
%104 = load i64* %103, align 8 | |
%105 = add i64 %104, 136 | |
%106 = getelementptr i8* %ppu_state, i32 888 | |
%107 = bitcast i8* %106 to i64* | |
%108 = load i64* %107, align 8 | |
%109 = call i64 @llvm.bswap.i64(i64 %108) | |
%110 = and i64 %105, 4294967295 | |
%111 = add i64 %110, 2147418112 | |
%112 = inttoptr i64 %111 to i64* | |
store i64 %109, i64* %112 | |
br label %instr_0x000A6AF0 | |
instr_0x000A6AF0: ; preds = %instr_0x000A6AEC | |
%113 = getelementptr i8* %ppu_state, i32 776 | |
%114 = bitcast i8* %113 to i64* | |
%115 = load i64* %114, align 8 | |
%116 = add i64 %115, 160 | |
%117 = getelementptr i8* %ppu_state, i32 912 | |
%118 = bitcast i8* %117 to i64* | |
%119 = load i64* %118, align 8 | |
%120 = call i64 @llvm.bswap.i64(i64 %119) | |
%121 = and i64 %116, 4294967295 | |
%122 = add i64 %121, 2147418112 | |
%123 = inttoptr i64 %122 to i64* | |
store i64 %120, i64* %123 | |
br label %instr_0x000A6AF4 | |
instr_0x000A6AF4: ; preds = %instr_0x000A6AF0 | |
%124 = getelementptr i8* %ppu_state, i32 776 | |
%125 = bitcast i8* %124 to i64* | |
%126 = load i64* %125, align 8 | |
%127 = add i64 %126, 168 | |
%128 = getelementptr i8* %ppu_state, i32 920 | |
%129 = bitcast i8* %128 to i64* | |
%130 = load i64* %129, align 8 | |
%131 = call i64 @llvm.bswap.i64(i64 %130) | |
%132 = and i64 %127, 4294967295 | |
%133 = add i64 %132, 2147418112 | |
%134 = inttoptr i64 %133 to i64* | |
store i64 %131, i64* %134 | |
br label %instr_0x000A6AF8 | |
instr_0x000A6AF8: ; preds = %instr_0x000A6AF4 | |
%135 = getelementptr i8* %ppu_state, i32 776 | |
%136 = bitcast i8* %135 to i64* | |
%137 = load i64* %136, align 8 | |
%138 = add i64 %137, 176 | |
%139 = getelementptr i8* %ppu_state, i32 928 | |
%140 = bitcast i8* %139 to i64* | |
%141 = load i64* %140, align 8 | |
%142 = call i64 @llvm.bswap.i64(i64 %141) | |
%143 = and i64 %138, 4294967295 | |
%144 = add i64 %143, 2147418112 | |
%145 = inttoptr i64 %144 to i64* | |
store i64 %142, i64* %145 | |
br label %instr_0x000A6AFC | |
instr_0x000A6AFC: ; preds = %instr_0x000A6AF8 | |
%146 = getelementptr i8* %ppu_state, i32 776 | |
%147 = bitcast i8* %146 to i64* | |
%148 = load i64* %147, align 8 | |
%149 = add i64 %148, 184 | |
%150 = getelementptr i8* %ppu_state, i32 936 | |
%151 = bitcast i8* %150 to i64* | |
%152 = load i64* %151, align 8 | |
%153 = call i64 @llvm.bswap.i64(i64 %152) | |
%154 = and i64 %149, 4294967295 | |
%155 = add i64 %154, 2147418112 | |
%156 = inttoptr i64 %155 to i64* | |
store i64 %153, i64* %156 | |
br label %instr_0x000A6B00 | |
instr_0x000A6B00: ; preds = %instr_0x000A6AFC | |
%157 = getelementptr i8* %ppu_state, i32 776 | |
%158 = bitcast i8* %157 to i64* | |
%159 = load i64* %158, align 8 | |
%160 = add i64 %159, 208 | |
%161 = getelementptr i8* %ppu_state, i32 960 | |
%162 = bitcast i8* %161 to i64* | |
%163 = load i64* %162, align 8 | |
%164 = call i64 @llvm.bswap.i64(i64 %163) | |
%165 = and i64 %160, 4294967295 | |
%166 = add i64 %165, 2147418112 | |
%167 = inttoptr i64 %166 to i64* | |
store i64 %164, i64* %167 | |
br label %instr_0x000A6B04 | |
instr_0x000A6B04: ; preds = %instr_0x000A6B00 | |
%168 = getelementptr i8* %ppu_state, i32 776 | |
%169 = bitcast i8* %168 to i64* | |
%170 = load i64* %169, align 8 | |
%171 = add i64 %170, 216 | |
%172 = getelementptr i8* %ppu_state, i32 968 | |
%173 = bitcast i8* %172 to i64* | |
%174 = load i64* %173, align 8 | |
%175 = call i64 @llvm.bswap.i64(i64 %174) | |
%176 = and i64 %171, 4294967295 | |
%177 = add i64 %176, 2147418112 | |
%178 = inttoptr i64 %177 to i64* | |
store i64 %175, i64* %178 | |
br label %instr_0x000A6B08 | |
instr_0x000A6B08: ; preds = %instr_0x000A6B04 | |
%179 = getelementptr i8* %ppu_state, i32 776 | |
%180 = bitcast i8* %179 to i64* | |
%181 = load i64* %180, align 8 | |
%182 = add i64 %181, 224 | |
%183 = getelementptr i8* %ppu_state, i32 976 | |
%184 = bitcast i8* %183 to i64* | |
%185 = load i64* %184, align 8 | |
%186 = call i64 @llvm.bswap.i64(i64 %185) | |
%187 = and i64 %182, 4294967295 | |
%188 = add i64 %187, 2147418112 | |
%189 = inttoptr i64 %188 to i64* | |
store i64 %186, i64* %189 | |
br label %instr_0x000A6B0C | |
instr_0x000A6B0C: ; preds = %instr_0x000A6B08 | |
%190 = getelementptr i8* %ppu_state, i32 776 | |
%191 = bitcast i8* %190 to i64* | |
%192 = load i64* %191, align 8 | |
%193 = add i64 %192, 232 | |
%194 = getelementptr i8* %ppu_state, i32 984 | |
%195 = bitcast i8* %194 to i64* | |
%196 = load i64* %195, align 8 | |
%197 = call i64 @llvm.bswap.i64(i64 %196) | |
%198 = and i64 %193, 4294967295 | |
%199 = add i64 %198, 2147418112 | |
%200 = inttoptr i64 %199 to i64* | |
store i64 %197, i64* %200 | |
br label %instr_0x000A6B10 | |
instr_0x000A6B10: ; preds = %instr_0x000A6B0C | |
%201 = getelementptr i8* %ppu_state, i32 776 | |
%202 = bitcast i8* %201 to i64* | |
%203 = load i64* %202, align 8 | |
%204 = add i64 %203, 240 | |
%205 = getelementptr i8* %ppu_state, i32 992 | |
%206 = bitcast i8* %205 to i64* | |
%207 = load i64* %206, align 8 | |
%208 = call i64 @llvm.bswap.i64(i64 %207) | |
%209 = and i64 %204, 4294967295 | |
%210 = add i64 %209, 2147418112 | |
%211 = inttoptr i64 %210 to i64* | |
store i64 %208, i64* %211 | |
br label %instr_0x000A6B14 | |
instr_0x000A6B14: ; preds = %instr_0x000A6B10 | |
%212 = getelementptr i8* %ppu_state, i32 776 | |
%213 = bitcast i8* %212 to i64* | |
%214 = load i64* %213, align 8 | |
%215 = add i64 %214, 248 | |
%216 = getelementptr i8* %ppu_state, i32 1000 | |
%217 = bitcast i8* %216 to i64* | |
%218 = load i64* %217, align 8 | |
%219 = call i64 @llvm.bswap.i64(i64 %218) | |
%220 = and i64 %215, 4294967295 | |
%221 = add i64 %220, 2147418112 | |
%222 = inttoptr i64 %221 to i64* | |
store i64 %219, i64* %222 | |
br label %instr_0x000A6B18 | |
instr_0x000A6B18: ; preds = %instr_0x000A6B14 | |
%223 = getelementptr i8* %ppu_state, i32 776 | |
%224 = bitcast i8* %223 to i64* | |
%225 = load i64* %224, align 8 | |
%226 = add i64 %225, 256 | |
%227 = getelementptr i8* %ppu_state, i32 1008 | |
%228 = bitcast i8* %227 to i64* | |
%229 = load i64* %228, align 8 | |
%230 = call i64 @llvm.bswap.i64(i64 %229) | |
%231 = and i64 %226, 4294967295 | |
%232 = add i64 %231, 2147418112 | |
%233 = inttoptr i64 %232 to i64* | |
store i64 %230, i64* %233 | |
br label %instr_0x000A6B1C | |
instr_0x000A6B1C: ; preds = %instr_0x000A6B18 | |
%234 = getelementptr i8* %ppu_state, i32 776 | |
%235 = bitcast i8* %234 to i64* | |
%236 = load i64* %235, align 8 | |
%237 = add i64 %236, 264 | |
%238 = getelementptr i8* %ppu_state, i32 1016 | |
%239 = bitcast i8* %238 to i64* | |
%240 = load i64* %239, align 8 | |
%241 = call i64 @llvm.bswap.i64(i64 %240) | |
%242 = and i64 %237, 4294967295 | |
%243 = add i64 %242, 2147418112 | |
%244 = inttoptr i64 %243 to i64* | |
store i64 %241, i64* %244 | |
br label %instr_0x000A6B20 | |
instr_0x000A6B20: ; preds = %instr_0x000A6B1C | |
%245 = getelementptr i8* %ppu_state, i32 776 | |
%246 = bitcast i8* %245 to i64* | |
%247 = load i64* %246, align 8 | |
%248 = add i64 %247, 288 | |
%249 = getelementptr i8* %ppu_state, i32 768 | |
%250 = bitcast i8* %249 to i64* | |
%251 = load i64* %250, align 8 | |
%252 = call i64 @llvm.bswap.i64(i64 %251) | |
%253 = and i64 %248, 4294967295 | |
%254 = add i64 %253, 2147418112 | |
%255 = inttoptr i64 %254 to i64* | |
store i64 %252, i64* %255 | |
br label %instr_0x000A6B24 | |
instr_0x000A6B24: ; preds = %instr_0x000A6B20 | |
%256 = getelementptr i8* %ppu_state, i32 808 | |
%257 = bitcast i8* %256 to i64* | |
%258 = load i64* %257, align 8 | |
%259 = getelementptr i8* %ppu_state, i32 808 | |
%260 = bitcast i8* %259 to i64* | |
%261 = load i64* %260, align 8 | |
%262 = or i64 %258, %261 | |
%263 = getelementptr i8* %ppu_state, i32 896 | |
%264 = bitcast i8* %263 to i64* | |
store i64 %262, i64* %264, align 8 | |
br label %instr_0x000A6B28 | |
instr_0x000A6B28: ; preds = %instr_0x000A6B24 | |
%265 = getelementptr i8* %ppu_state, i32 792 | |
%266 = bitcast i8* %265 to i64* | |
%267 = load i64* %266, align 8 | |
%268 = getelementptr i8* %ppu_state, i32 792 | |
%269 = bitcast i8* %268 to i64* | |
%270 = load i64* %269, align 8 | |
%271 = or i64 %267, %270 | |
%272 = getelementptr i8* %ppu_state, i32 944 | |
%273 = bitcast i8* %272 to i64* | |
store i64 %271, i64* %273, align 8 | |
br label %instr_0x000A6B2C | |
instr_0x000A6B2C: ; preds = %instr_0x000A6B28 | |
%274 = getelementptr i8* %ppu_state, i32 800 | |
%275 = bitcast i8* %274 to i64* | |
%276 = load i64* %275, align 8 | |
%277 = getelementptr i8* %ppu_state, i32 800 | |
%278 = bitcast i8* %277 to i64* | |
%279 = load i64* %278, align 8 | |
%280 = or i64 %276, %279 | |
%281 = getelementptr i8* %ppu_state, i32 952 | |
%282 = bitcast i8* %281 to i64* | |
store i64 %280, i64* %282, align 8 | |
br label %instr_0x000A6B30 | |
instr_0x000A6B30: ; preds = %instr_0x000A6B2C | |
%283 = getelementptr i8* %ppu_state, i32 776 | |
%284 = bitcast i8* %283 to i64* | |
%285 = load i64* %284, align 8 | |
%286 = add i64 %285, 112 | |
%287 = getelementptr i8* %ppu_state, i32 824 | |
%288 = bitcast i8* %287 to i32* | |
%289 = load i32* %288, align 8 | |
%290 = call i32 @llvm.bswap.i32(i32 %289) | |
%291 = and i64 %286, 4294967295 | |
%292 = add i64 %291, 2147418112 | |
%293 = inttoptr i64 %292 to i32* | |
store i32 %290, i32* %293 | |
br label %instr_0x000A6B34 | |
instr_0x000A6B34: ; preds = %instr_0x000A6B30 | |
%294 = getelementptr i8* %ppu_state, i32 816 | |
%295 = bitcast i8* %294 to i64* | |
%296 = load i64* %295, align 8 | |
%297 = getelementptr i8* %ppu_state, i32 816 | |
%298 = bitcast i8* %297 to i64* | |
%299 = load i64* %298, align 8 | |
%300 = or i64 %296, %299 | |
%301 = getelementptr i8* %ppu_state, i32 904 | |
%302 = bitcast i8* %301 to i64* | |
store i64 %300, i64* %302, align 8 | |
br label %instr_0x000A6B38 | |
instr_0x000A6B38: ; preds = %instr_0x000A6B34 | |
%303 = getelementptr i8* %ppu_state, i32 1576 | |
%304 = bitcast i8* %303 to i64* | |
%305 = load i64* %304, align 8 | |
%306 = getelementptr i8* %ppu_state, i32 1540 | |
%307 = bitcast i8* %306 to i32* | |
%308 = load i32* %307, align 4 | |
%309 = lshr i32 %308, 1 | |
%310 = and i32 %309, 1 | |
%311 = trunc i32 %310 to i1 | |
br i1 %311, label %instr_0x000A7014, label %instr_0x000A6B3C | |
instr_0x000A6B3C: ; preds = %instr_0x000A6B38 | |
%312 = getelementptr i8* %ppu_state, i32 800 | |
%313 = bitcast i8* %312 to i32* | |
%314 = load i32* %313, align 8 | |
%315 = zext i32 %314 to i64 | |
%316 = icmp ult i64 %315, 32 | |
%317 = icmp ugt i64 %315, 32 | |
%318 = icmp eq i64 %315, 32 | |
%319 = getelementptr i8* %ppu_state, i32 1540 | |
%320 = bitcast i8* %319 to i32* | |
%321 = load i32* %320, align 4 | |
%322 = getelementptr i8* %ppu_state, i32 1544 | |
%323 = bitcast i8* %322 to i64* | |
%324 = load i64* %323, align 8 | |
%325 = lshr i64 %324, 31 | |
%326 = and i64 %325, 1 | |
%327 = and i32 %321, -16 | |
%328 = zext i1 %316 to i32 | |
%329 = shl i32 %328, 3 | |
%330 = or i32 %327, %329 | |
%331 = zext i1 %317 to i32 | |
%332 = shl i32 %331, 2 | |
%333 = or i32 %330, %332 | |
%334 = zext i1 %318 to i32 | |
%335 = shl i32 %334, 1 | |
%336 = or i32 %333, %335 | |
%337 = trunc i64 %326 to i32 | |
%338 = or i32 %336, %337 | |
%339 = getelementptr i8* %ppu_state, i32 1540 | |
%340 = bitcast i8* %339 to i32* | |
store i32 %338, i32* %340, align 4 | |
br label %instr_0x000A6B40 | |
instr_0x000A6B40: ; preds = %instr_0x000A6B3C | |
%341 = getelementptr i8* %ppu_state, i32 1576 | |
%342 = bitcast i8* %341 to i64* | |
%343 = load i64* %342, align 8 | |
%344 = getelementptr i8* %ppu_state, i32 1540 | |
%345 = bitcast i8* %344 to i32* | |
%346 = load i32* %345, align 4 | |
%347 = lshr i32 %346, 2 | |
%348 = and i32 %347, 1 | |
%349 = trunc i32 %348 to i1 | |
%350 = xor i1 %349, true | |
br i1 %350, label %instr_0x000A6EC4, label %instr_0x000A6B44 | |
instr_0x000A6B44: ; preds = %instr_0x000A6B40 | |
%351 = getelementptr i8* %ppu_state, i32 816 | |
%352 = bitcast i8* %351 to i32* | |
%353 = load i32* %352, align 8 | |
%354 = zext i32 %353 to i64 | |
%355 = shl i64 %354, 32 | |
%356 = or i64 %354, %355 | |
%357 = lshr i64 %356, 61 | |
%358 = shl i64 %356, 3 | |
%359 = or i64 %358, %357 | |
%360 = and i64 %359, 4294967288 | |
%361 = getelementptr i8* %ppu_state, i32 840 | |
%362 = bitcast i8* %361 to i64* | |
store i64 %360, i64* %362, align 8 | |
br label %instr_0x000A6B48 | |
instr_0x000A6B48: ; preds = %instr_0x000A6B44 | |
%363 = getelementptr i8* %ppu_state, i32 816 | |
%364 = bitcast i8* %363 to i32* | |
%365 = load i32* %364, align 8 | |
%366 = zext i32 %365 to i64 | |
%367 = shl i64 %366, 32 | |
%368 = or i64 %366, %367 | |
%369 = lshr i64 %368, 59 | |
%370 = shl i64 %368, 5 | |
%371 = or i64 %370, %369 | |
%372 = and i64 %371, 4294967264 | |
%373 = getelementptr i8* %ppu_state, i32 768 | |
%374 = bitcast i8* %373 to i64* | |
store i64 %372, i64* %374, align 8 | |
br label %instr_0x000A6B4C | |
instr_0x000A6B4C: ; preds = %instr_0x000A6B48 | |
%375 = getelementptr i8* %ppu_state, i32 816 | |
%376 = bitcast i8* %375 to i64* | |
%377 = load i64* %376, align 8 | |
%378 = getelementptr i8* %ppu_state, i32 816 | |
%379 = bitcast i8* %378 to i64* | |
%380 = load i64* %379, align 8 | |
%381 = or i64 %377, %380 | |
%382 = getelementptr i8* %ppu_state, i32 968 | |
%383 = bitcast i8* %382 to i64* | |
store i64 %381, i64* %383, align 8 | |
br label %instr_0x000A6B50 | |
instr_0x000A6B50: ; preds = %instr_0x000A6B4C | |
%384 = getelementptr i8* %ppu_state, i32 840 | |
%385 = bitcast i8* %384 to i64* | |
%386 = load i64* %385, align 8 | |
%387 = getelementptr i8* %ppu_state, i32 768 | |
%388 = bitcast i8* %387 to i64* | |
%389 = load i64* %388, align 8 | |
%390 = add i64 %386, %389 | |
%391 = getelementptr i8* %ppu_state, i32 880 | |
%392 = bitcast i8* %391 to i64* | |
store i64 %390, i64* %392, align 8 | |
br label %instr_0x000A6B54 | |
instr_0x000A6B54: ; preds = %instr_0x000A6B50 | |
%393 = getelementptr i8* %ppu_state, i32 816 | |
%394 = bitcast i8* %393 to i64* | |
%395 = load i64* %394, align 8 | |
%396 = and i64 %395, 4294967295 | |
%397 = getelementptr i8* %ppu_state, i32 936 | |
%398 = bitcast i8* %397 to i64* | |
store i64 %396, i64* %398, align 8 | |
br label %instr_0x000A6B58 | |
instr_0x000A6B58: ; preds = %instr_0x000A6B54 | |
%399 = getelementptr i8* %ppu_state, i32 824 | |
%400 = bitcast i8* %399 to i64* | |
%401 = load i64* %400, align 8 | |
%402 = and i64 %401, 4294967295 | |
%403 = getelementptr i8* %ppu_state, i32 960 | |
%404 = bitcast i8* %403 to i64* | |
store i64 %402, i64* %404, align 8 | |
br label %instr_0x000A6B5C | |
instr_0x000A6B5C: ; preds = %instr_0x000A6B58 | |
%405 = getelementptr i8* %ppu_state, i32 816 | |
%406 = bitcast i8* %405 to i64* | |
%407 = load i64* %406, align 8 | |
%408 = sub i64 0, %407 | |
%409 = getelementptr i8* %ppu_state, i32 928 | |
%410 = bitcast i8* %409 to i64* | |
store i64 %408, i64* %410, align 8 | |
br label %instr_0x000A6B60 | |
instr_0x000A6B60: ; preds = %instr_0x000A6EC0, %instr_0x000A6B5C | |
%411 = getelementptr i8* %ppu_state, i32 952 | |
%412 = bitcast i8* %411 to i32* | |
%413 = load i32* %412, align 8 | |
%414 = zext i32 %413 to i64 | |
%415 = shl i64 %414, 32 | |
%416 = or i64 %414, %415 | |
%417 = lshr i64 %416, 33 | |
%418 = shl i64 %416, 31 | |
%419 = or i64 %418, %417 | |
%420 = and i64 %419, 2147483647 | |
%421 = getelementptr i8* %ppu_state, i32 768 | |
%422 = bitcast i8* %421 to i64* | |
store i64 %420, i64* %422, align 8 | |
br label %instr_0x000A6B64 | |
instr_0x000A6B64: ; preds = %instr_0x000A6B60 | |
%423 = getelementptr i8* %ppu_state, i32 904 | |
%424 = bitcast i8* %423 to i32* | |
%425 = load i32* %424, align 8 | |
%426 = getelementptr i8* %ppu_state, i32 952 | |
%427 = bitcast i8* %426 to i32* | |
%428 = load i32* %427, align 8 | |
%429 = sext i32 %425 to i64 | |
%430 = sext i32 %428 to i64 | |
%431 = mul i64 %429, %430 | |
%432 = getelementptr i8* %ppu_state, i32 840 | |
%433 = bitcast i8* %432 to i64* | |
store i64 %431, i64* %433, align 8 | |
br label %instr_0x000A6B68 | |
instr_0x000A6B68: ; preds = %instr_0x000A6B64 | |
%434 = getelementptr i8* %ppu_state, i32 840 | |
%435 = bitcast i8* %434 to i64* | |
%436 = load i64* %435, align 8 | |
%437 = getelementptr i8* %ppu_state, i32 944 | |
%438 = bitcast i8* %437 to i64* | |
%439 = load i64* %438, align 8 | |
%440 = add i64 %436, %439 | |
%441 = getelementptr i8* %ppu_state, i32 912 | |
%442 = bitcast i8* %441 to i64* | |
store i64 %440, i64* %442, align 8 | |
br label %instr_0x000A6B6C | |
instr_0x000A6B6C: ; preds = %instr_0x000A6B68 | |
%443 = getelementptr i8* %ppu_state, i32 904 | |
%444 = bitcast i8* %443 to i32* | |
%445 = load i32* %444, align 8 | |
%446 = getelementptr i8* %ppu_state, i32 768 | |
%447 = bitcast i8* %446 to i32* | |
%448 = load i32* %447, align 8 | |
%449 = sext i32 %445 to i64 | |
%450 = sext i32 %448 to i64 | |
%451 = mul i64 %449, %450 | |
%452 = getelementptr i8* %ppu_state, i32 768 | |
%453 = bitcast i8* %452 to i64* | |
store i64 %451, i64* %453, align 8 | |
br label %instr_0x000A6B70 | |
instr_0x000A6B70: ; preds = %instr_0x000A6B6C | |
%454 = getelementptr i8* %ppu_state, i32 968 | |
%455 = bitcast i8* %454 to i64* | |
%456 = load i64* %455, align 8 | |
%457 = getelementptr i8* %ppu_state, i32 912 | |
%458 = bitcast i8* %457 to i64* | |
%459 = load i64* %458, align 8 | |
%460 = sub i64 %459, %456 | |
%461 = getelementptr i8* %ppu_state, i32 1016 | |
%462 = bitcast i8* %461 to i64* | |
store i64 %460, i64* %462, align 8 | |
br label %instr_0x000A6B74 | |
instr_0x000A6B74: ; preds = %instr_0x000A6B70 | |
%463 = getelementptr i8* %ppu_state, i32 768 | |
%464 = bitcast i8* %463 to i64* | |
%465 = load i64* %464, align 8 | |
%466 = getelementptr i8* %ppu_state, i32 944 | |
%467 = bitcast i8* %466 to i64* | |
%468 = load i64* %467, align 8 | |
%469 = add i64 %465, %468 | |
%470 = getelementptr i8* %ppu_state, i32 952 | |
%471 = bitcast i8* %470 to i64* | |
store i64 %469, i64* %471, align 8 | |
br label %instr_0x000A6B78 | |
instr_0x000A6B78: ; preds = %instr_0x000A6B74 | |
%472 = getelementptr i8* %ppu_state, i32 944 | |
%473 = bitcast i8* %472 to i64* | |
%474 = load i64* %473, align 8 | |
%475 = getelementptr i8* %ppu_state, i32 1016 | |
%476 = bitcast i8* %475 to i64* | |
%477 = load i64* %476, align 8 | |
%478 = sub i64 %477, %474 | |
%479 = getelementptr i8* %ppu_state, i32 1000 | |
%480 = bitcast i8* %479 to i64* | |
store i64 %478, i64* %480, align 8 | |
br label %instr_0x000A6B7C | |
instr_0x000A6B7C: ; preds = %instr_0x000A6B78 | |
%481 = getelementptr i8* %ppu_state, i32 952 | |
%482 = bitcast i8* %481 to i64* | |
%483 = load i64* %482, align 8 | |
%484 = getelementptr i8* %ppu_state, i32 968 | |
%485 = bitcast i8* %484 to i64* | |
%486 = load i64* %485, align 8 | |
%487 = add i64 %483, %486 | |
%488 = getelementptr i8* %ppu_state, i32 920 | |
%489 = bitcast i8* %488 to i64* | |
store i64 %487, i64* %489, align 8 | |
br label %instr_0x000A6B80 | |
instr_0x000A6B80: ; preds = %instr_0x000A6B7C | |
%490 = getelementptr i8* %ppu_state, i32 1000 | |
%491 = bitcast i8* %490 to i32* | |
%492 = load i32* %491, align 8 | |
%493 = zext i32 %492 to i64 | |
%494 = getelementptr i8* %ppu_state, i32 880 | |
%495 = bitcast i8* %494 to i32* | |
%496 = load i32* %495, align 8 | |
%497 = zext i32 %496 to i64 | |
%498 = icmp ult i64 %493, %497 | |
%499 = icmp ugt i64 %493, %497 | |
%500 = icmp eq i64 %493, %497 | |
%501 = getelementptr i8* %ppu_state, i32 1540 | |
%502 = bitcast i8* %501 to i32* | |
%503 = load i32* %502, align 4 | |
%504 = getelementptr i8* %ppu_state, i32 1544 | |
%505 = bitcast i8* %504 to i64* | |
%506 = load i64* %505, align 8 | |
%507 = lshr i64 %506, 31 | |
%508 = and i64 %507, 1 | |
%509 = and i32 %503, -16 | |
%510 = zext i1 %498 to i32 | |
%511 = shl i32 %510, 3 | |
%512 = or i32 %509, %511 | |
%513 = zext i1 %499 to i32 | |
%514 = shl i32 %513, 2 | |
%515 = or i32 %512, %514 | |
%516 = zext i1 %500 to i32 | |
%517 = shl i32 %516, 1 | |
%518 = or i32 %515, %517 | |
%519 = trunc i64 %508 to i32 | |
%520 = or i32 %518, %519 | |
%521 = getelementptr i8* %ppu_state, i32 1540 | |
%522 = bitcast i8* %521 to i32* | |
store i32 %520, i32* %522, align 4 | |
br label %instr_0x000A6B84 | |
instr_0x000A6B84: ; preds = %instr_0x000A6B80 | |
%523 = getelementptr i8* %ppu_state, i32 1576 | |
%524 = bitcast i8* %523 to i64* | |
%525 = load i64* %524, align 8 | |
%526 = getelementptr i8* %ppu_state, i32 1540 | |
%527 = bitcast i8* %526 to i32* | |
%528 = load i32* %527, align 4 | |
%529 = lshr i32 %528, 2 | |
%530 = and i32 %529, 1 | |
%531 = trunc i32 %530 to i1 | |
%532 = xor i1 %531, true | |
br i1 %532, label %instr_0x000A6FD0, label %instr_0x000A6B88 | |
instr_0x000A6B88: ; preds = %instr_0x000A6B84 | |
%533 = getelementptr i8* %ppu_state, i32 944 | |
%534 = bitcast i8* %533 to i64* | |
%535 = load i64* %534, align 8 | |
%536 = and i64 %535, 4294967295 | |
%537 = getelementptr i8* %ppu_state, i32 888 | |
%538 = bitcast i8* %537 to i64* | |
store i64 %536, i64* %538, align 8 | |
br label %instr_0x000A6B8C | |
instr_0x000A6B8C: ; preds = %instr_0x000A6B88 | |
%539 = getelementptr i8* %ppu_state, i32 936 | |
%540 = bitcast i8* %539 to i64* | |
%541 = load i64* %540, align 8 | |
%542 = getelementptr i8* %ppu_state, i32 936 | |
%543 = bitcast i8* %542 to i64* | |
%544 = load i64* %543, align 8 | |
%545 = or i64 %541, %544 | |
%546 = getelementptr i8* %ppu_state, i32 816 | |
%547 = bitcast i8* %546 to i64* | |
store i64 %545, i64* %547, align 8 | |
br label %instr_0x000A6B90 | |
instr_0x000A6B90: ; preds = %instr_0x000A6B8C | |
%548 = getelementptr i8* %ppu_state, i32 888 | |
%549 = bitcast i8* %548 to i64* | |
%550 = load i64* %549, align 8 | |
%551 = getelementptr i8* %ppu_state, i32 888 | |
%552 = bitcast i8* %551 to i64* | |
%553 = load i64* %552, align 8 | |
%554 = or i64 %550, %553 | |
%555 = getelementptr i8* %ppu_state, i32 792 | |
%556 = bitcast i8* %555 to i64* | |
store i64 %554, i64* %556, align 8 | |
br label %instr_0x000A6B94 | |
instr_0x000A6B94: ; preds = %instr_0x000A6B90 | |
%557 = getelementptr i8* %ppu_state, i32 960 | |
%558 = bitcast i8* %557 to i64* | |
%559 = load i64* %558, align 8 | |
%560 = getelementptr i8* %ppu_state, i32 960 | |
%561 = bitcast i8* %560 to i64* | |
%562 = load i64* %561, align 8 | |
%563 = or i64 %559, %562 | |
%564 = getelementptr i8* %ppu_state, i32 824 | |
%565 = bitcast i8* %564 to i64* | |
store i64 %563, i64* %565, align 8 | |
br label %instr_0x000A6B98 | |
instr_0x000A6B98: ; preds = %instr_0x000A6B94 | |
%566 = getelementptr i8* %ppu_state, i32 952 | |
%567 = bitcast i8* %566 to i64* | |
%568 = load i64* %567, align 8 | |
%569 = and i64 %568, 4294967295 | |
%570 = getelementptr i8* %ppu_state, i32 976 | |
%571 = bitcast i8* %570 to i64* | |
store i64 %569, i64* %571, align 8 | |
br label %instr_0x000A6B9C | |
instr_0x000A6B9C: ; preds = %instr_0x000A6B98 | |
%572 = getelementptr i8* %ppu_state, i32 1000 | |
%573 = bitcast i8* %572 to i32* | |
%574 = load i32* %573, align 8 | |
%575 = getelementptr i8* %ppu_state, i32 904 | |
%576 = bitcast i8* %575 to i32* | |
%577 = load i32* %576, align 8 | |
%578 = udiv i32 %574, %577 | |
%579 = zext i32 %578 to i64 | |
%580 = getelementptr i8* %ppu_state, i32 1000 | |
%581 = bitcast i8* %580 to i64* | |
store i64 %579, i64* %581, align 8 | |
br label %instr_0x000A6BA0 | |
instr_0x000A6BA0: ; preds = %instr_0x000A6B9C | |
%582 = getelementptr i8* %ppu_state, i32 1000 | |
%583 = bitcast i8* %582 to i32* | |
%584 = load i32* %583, align 8 | |
%585 = zext i32 %584 to i64 | |
%586 = shl i64 %585, 32 | |
%587 = or i64 %585, %586 | |
%588 = lshr i64 %587, 35 | |
%589 = shl i64 %587, 29 | |
%590 = or i64 %589, %588 | |
%591 = and i64 %590, 536870911 | |
%592 = getelementptr i8* %ppu_state, i32 1000 | |
%593 = bitcast i8* %592 to i64* | |
store i64 %591, i64* %593, align 8 | |
br label %instr_0x000A6BA4 | |
instr_0x000A6BA4: ; preds = %instr_0x000A6BA0 | |
%594 = getelementptr i8* %ppu_state, i32 1000 | |
%595 = bitcast i8* %594 to i64* | |
%596 = load i64* %595, align 8 | |
%597 = add i64 %596, 1 | |
%598 = getelementptr i8* %ppu_state, i32 1000 | |
%599 = bitcast i8* %598 to i64* | |
store i64 %597, i64* %599, align 8 | |
br label %instr_0x000A6BA8 | |
instr_0x000A6BA8: ; preds = %instr_0x000A6BA4 | |
%600 = getelementptr i8* %ppu_state, i32 904 | |
%601 = bitcast i8* %600 to i32* | |
%602 = load i32* %601, align 8 | |
%603 = getelementptr i8* %ppu_state, i32 1000 | |
%604 = bitcast i8* %603 to i32* | |
%605 = load i32* %604, align 8 | |
%606 = sext i32 %602 to i64 | |
%607 = sext i32 %605 to i64 | |
%608 = mul i64 %606, %607 | |
%609 = getelementptr i8* %ppu_state, i32 1000 | |
%610 = bitcast i8* %609 to i64* | |
store i64 %608, i64* %610, align 8 | |
br label %instr_0x000A6BAC | |
instr_0x000A6BAC: ; preds = %instr_0x000A6BA8 | |
%611 = getelementptr i8* %ppu_state, i32 1000 | |
%612 = bitcast i8* %611 to i32* | |
%613 = load i32* %612, align 8 | |
%614 = zext i32 %613 to i64 | |
%615 = shl i64 %614, 32 | |
%616 = or i64 %614, %615 | |
%617 = lshr i64 %616, 63 | |
%618 = shl i64 %616, 1 | |
%619 = or i64 %618, %617 | |
%620 = and i64 %619, 4294967294 | |
%621 = getelementptr i8* %ppu_state, i32 992 | |
%622 = bitcast i8* %621 to i64* | |
store i64 %620, i64* %622, align 8 | |
br label %instr_0x000A6BB0 | |
instr_0x000A6BB0: ; preds = %instr_0x000A6BAC | |
%623 = getelementptr i8* %ppu_state, i32 944 | |
%624 = bitcast i8* %623 to i64* | |
%625 = load i64* %624, align 8 | |
%626 = getelementptr i8* %ppu_state, i32 1000 | |
%627 = bitcast i8* %626 to i64* | |
%628 = load i64* %627, align 8 | |
%629 = add i64 %625, %628 | |
%630 = getelementptr i8* %ppu_state, i32 984 | |
%631 = bitcast i8* %630 to i64* | |
store i64 %629, i64* %631, align 8 | |
br label %instr_0x000A6BB4 | |
instr_0x000A6BB4: ; preds = %instr_0x000A6BB0 | |
%632 = getelementptr i8* %ppu_state, i32 944 | |
%633 = bitcast i8* %632 to i64* | |
%634 = load i64* %633, align 8 | |
%635 = getelementptr i8* %ppu_state, i32 992 | |
%636 = bitcast i8* %635 to i64* | |
%637 = load i64* %636, align 8 | |
%638 = add i64 %634, %637 | |
%639 = getelementptr i8* %ppu_state, i32 808 | |
%640 = bitcast i8* %639 to i64* | |
store i64 %638, i64* %640, align 8 | |
br label %instr_0x000A6BB8 | |
instr_0x000A6BB8: ; preds = %instr_0x000A6BB4 | |
%641 = getelementptr i8* %ppu_state, i32 984 | |
%642 = bitcast i8* %641 to i64* | |
%643 = load i64* %642, align 8 | |
%644 = and i64 %643, 4294967295 | |
%645 = getelementptr i8* %ppu_state, i32 984 | |
%646 = bitcast i8* %645 to i64* | |
store i64 %644, i64* %646, align 8 | |
br label %instr_0x000A6BBC | |
instr_0x000A6BBC: ; preds = %instr_0x000A6BB8 | |
%647 = getelementptr i8* %ppu_state, i32 808 | |
%648 = bitcast i8* %647 to i64* | |
%649 = load i64* %648, align 8 | |
%650 = and i64 %649, 4294967295 | |
%651 = getelementptr i8* %ppu_state, i32 808 | |
%652 = bitcast i8* %651 to i64* | |
store i64 %650, i64* %652, align 8 | |
br label %instr_0x000A6BC0 | |
instr_0x000A6BC0: ; preds = %instr_0x000A6BBC | |
%653 = getelementptr i8* %ppu_state, i32 984 | |
%654 = bitcast i8* %653 to i64* | |
%655 = load i64* %654, align 8 | |
%656 = getelementptr i8* %ppu_state, i32 984 | |
%657 = bitcast i8* %656 to i64* | |
%658 = load i64* %657, align 8 | |
%659 = or i64 %655, %658 | |
%660 = getelementptr i8* %ppu_state, i32 800 | |
%661 = bitcast i8* %660 to i64* | |
store i64 %659, i64* %661, align 8 | |
br label %instr_0x000A6BC4 | |
instr_0x000A6BC4: ; preds = %instr_0x000A6BC0 | |
%662 = getelementptr i8* %ppu_state, i32 992 | |
%663 = bitcast i8* %662 to i64* | |
%664 = load i64* %663, align 8 | |
%665 = getelementptr i8* %ppu_state, i32 1016 | |
%666 = bitcast i8* %665 to i64* | |
%667 = load i64* %666, align 8 | |
%668 = sub i64 %667, %664 | |
%669 = getelementptr i8* %ppu_state, i32 992 | |
%670 = bitcast i8* %669 to i64* | |
store i64 %668, i64* %670, align 8 | |
br label %instr_0x000A6BC8 | |
instr_0x000A6BC8: ; preds = %instr_0x000A6BC4 | |
%671 = getelementptr i8* %ppu_state, i32 1568 | |
%672 = bitcast i8* %671 to i64* | |
store i64 682956, i64* %672, align 8 | |
%673 = getelementptr i8* %ppu_state, i32 1664 | |
%674 = bitcast i8* %673 to i32* | |
store i32 682104, i32* %674, align 4 | |
%675 = load i64* inttoptr (i64 8623353112 to i64*) | |
%676 = inttoptr i64 %675 to i32 (i8*, i64)* | |
%677 = call i32 %676(i8* %ppu_state, i64 0) | |
%678 = icmp eq i32 %677, -1 | |
br i1 %678, label %instr_0x000A6BC8_then_all_fs, label %instr_0x000A6BC8_merge_all_fs | |
instr_0x000A6BC8_then_all_fs: ; preds = %instr_0x000A6BC8 | |
ret i32 0 | |
instr_0x000A6BC8_merge_all_fs: ; preds = %instr_0x000A6BC8 | |
br label %instr_0x000A6BCC | |
instr_0x000A6BCC: ; preds = %instr_0x000A6BC8_merge_all_fs | |
%679 = getelementptr i8* %ppu_state, i32 1000 | |
%680 = bitcast i8* %679 to i64* | |
%681 = load i64* %680, align 8 | |
%682 = getelementptr i8* %ppu_state, i32 952 | |
%683 = bitcast i8* %682 to i64* | |
%684 = load i64* %683, align 8 | |
%685 = sub i64 %684, %681 | |
%686 = getelementptr i8* %ppu_state, i32 792 | |
%687 = bitcast i8* %686 to i64* | |
store i64 %685, i64* %687, align 8 | |
br label %instr_0x000A6BD0 | |
instr_0x000A6BD0: ; preds = %instr_0x000A6BCC | |
%688 = getelementptr i8* %ppu_state, i32 952 | |
%689 = bitcast i8* %688 to i64* | |
%690 = load i64* %689, align 8 | |
%691 = getelementptr i8* %ppu_state, i32 1000 | |
%692 = bitcast i8* %691 to i64* | |
%693 = load i64* %692, align 8 | |
%694 = add i64 %690, %693 | |
%695 = getelementptr i8* %ppu_state, i32 808 | |
%696 = bitcast i8* %695 to i64* | |
store i64 %694, i64* %696, align 8 | |
br label %instr_0x000A6BD4 | |
instr_0x000A6BD4: ; preds = %instr_0x000A6BD0 | |
%697 = getelementptr i8* %ppu_state, i32 1000 | |
%698 = bitcast i8* %697 to i64* | |
%699 = load i64* %698, align 8 | |
%700 = getelementptr i8* %ppu_state, i32 1016 | |
%701 = bitcast i8* %700 to i64* | |
%702 = load i64* %701, align 8 | |
%703 = sub i64 %702, %699 | |
%704 = getelementptr i8* %ppu_state, i32 1000 | |
%705 = bitcast i8* %704 to i64* | |
store i64 %703, i64* %705, align 8 | |
br label %instr_0x000A6BD8 | |
instr_0x000A6BD8: ; preds = %instr_0x000A6BD4 | |
%706 = getelementptr i8* %ppu_state, i32 792 | |
%707 = bitcast i8* %706 to i64* | |
%708 = load i64* %707, align 8 | |
%709 = and i64 %708, 4294967295 | |
%710 = getelementptr i8* %ppu_state, i32 792 | |
%711 = bitcast i8* %710 to i64* | |
store i64 %709, i64* %711, align 8 | |
br label %instr_0x000A6BDC | |
instr_0x000A6BDC: ; preds = %instr_0x000A6BD8 | |
%712 = getelementptr i8* %ppu_state, i32 808 | |
%713 = bitcast i8* %712 to i64* | |
%714 = load i64* %713, align 8 | |
%715 = and i64 %714, 4294967295 | |
%716 = getelementptr i8* %ppu_state, i32 808 | |
%717 = bitcast i8* %716 to i64* | |
store i64 %715, i64* %717, align 8 | |
br label %instr_0x000A6BE0 | |
instr_0x000A6BE0: ; preds = %instr_0x000A6BDC | |
%718 = getelementptr i8* %ppu_state, i32 976 | |
%719 = bitcast i8* %718 to i64* | |
%720 = load i64* %719, align 8 | |
%721 = getelementptr i8* %ppu_state, i32 976 | |
%722 = bitcast i8* %721 to i64* | |
%723 = load i64* %722, align 8 | |
%724 = or i64 %720, %723 | |
%725 = getelementptr i8* %ppu_state, i32 800 | |
%726 = bitcast i8* %725 to i64* | |
store i64 %724, i64* %726, align 8 | |
br label %instr_0x000A6BE4 | |
instr_0x000A6BE4: ; preds = %instr_0x000A6BE0 | |
%727 = getelementptr i8* %ppu_state, i32 936 | |
%728 = bitcast i8* %727 to i64* | |
%729 = load i64* %728, align 8 | |
%730 = getelementptr i8* %ppu_state, i32 936 | |
%731 = bitcast i8* %730 to i64* | |
%732 = load i64* %731, align 8 | |
%733 = or i64 %729, %732 | |
%734 = getelementptr i8* %ppu_state, i32 816 | |
%735 = bitcast i8* %734 to i64* | |
store i64 %733, i64* %735, align 8 | |
br label %instr_0x000A6BE8 | |
instr_0x000A6BE8: ; preds = %instr_0x000A6BE4 | |
%736 = getelementptr i8* %ppu_state, i32 960 | |
%737 = bitcast i8* %736 to i64* | |
%738 = load i64* %737, align 8 | |
%739 = getelementptr i8* %ppu_state, i32 960 | |
%740 = bitcast i8* %739 to i64* | |
%741 = load i64* %740, align 8 | |
%742 = or i64 %738, %741 | |
%743 = getelementptr i8* %ppu_state, i32 824 | |
%744 = bitcast i8* %743 to i64* | |
store i64 %742, i64* %744, align 8 | |
br label %instr_0x000A6BEC | |
instr_0x000A6BEC: ; preds = %instr_0x000A6BE8 | |
%745 = getelementptr i8* %ppu_state, i32 1000 | |
%746 = bitcast i8* %745 to i64* | |
%747 = load i64* %746, align 8 | |
%748 = and i64 %747, 4294967295 | |
%749 = getelementptr i8* %ppu_state, i32 1000 | |
%750 = bitcast i8* %749 to i64* | |
store i64 %748, i64* %750, align 8 | |
br label %instr_0x000A6BF0 | |
instr_0x000A6BF0: ; preds = %instr_0x000A6BEC | |
%751 = getelementptr i8* %ppu_state, i32 1568 | |
%752 = bitcast i8* %751 to i64* | |
store i64 682996, i64* %752, align 8 | |
%753 = getelementptr i8* %ppu_state, i32 1664 | |
%754 = bitcast i8* %753 to i32* | |
store i32 682104, i32* %754, align 4 | |
%755 = load i64* inttoptr (i64 8623353112 to i64*) | |
%756 = inttoptr i64 %755 to i32 (i8*, i64)* | |
%757 = call i32 %756(i8* %ppu_state, i64 0) | |
%758 = icmp eq i32 %757, -1 | |
br i1 %758, label %instr_0x000A6BF0_then_all_fs, label %instr_0x000A6BF0_merge_all_fs | |
instr_0x000A6BF0_then_all_fs: ; preds = %instr_0x000A6BF0 | |
ret i32 0 | |
instr_0x000A6BF0_merge_all_fs: ; preds = %instr_0x000A6BF0 | |
br label %instr_0x000A6BF4 | |
instr_0x000A6BF4: ; preds = %instr_0x000A6BF0_merge_all_fs | |
%759 = getelementptr i8* %ppu_state, i32 992 | |
%760 = bitcast i8* %759 to i64* | |
%761 = load i64* %760, align 8 | |
%762 = and i64 %761, 4294967295 | |
%763 = getelementptr i8* %ppu_state, i32 792 | |
%764 = bitcast i8* %763 to i64* | |
store i64 %762, i64* %764, align 8 | |
br label %instr_0x000A6BF8 | |
instr_0x000A6BF8: ; preds = %instr_0x000A6BF4 | |
%765 = getelementptr i8* %ppu_state, i32 1016 | |
%766 = bitcast i8* %765 to i64* | |
%767 = load i64* %766, align 8 | |
%768 = and i64 %767, 4294967295 | |
%769 = getelementptr i8* %ppu_state, i32 808 | |
%770 = bitcast i8* %769 to i64* | |
store i64 %768, i64* %770, align 8 | |
br label %instr_0x000A6BFC | |
instr_0x000A6BFC: ; preds = %instr_0x000A6BF8 | |
%771 = getelementptr i8* %ppu_state, i32 1000 | |
%772 = bitcast i8* %771 to i64* | |
%773 = load i64* %772, align 8 | |
%774 = getelementptr i8* %ppu_state, i32 1000 | |
%775 = bitcast i8* %774 to i64* | |
%776 = load i64* %775, align 8 | |
%777 = or i64 %773, %776 | |
%778 = getelementptr i8* %ppu_state, i32 800 | |
%779 = bitcast i8* %778 to i64* | |
store i64 %777, i64* %779, align 8 | |
br label %instr_0x000A6C00 | |
instr_0x000A6C00: ; preds = %instr_0x000A6BFC | |
%780 = getelementptr i8* %ppu_state, i32 936 | |
%781 = bitcast i8* %780 to i64* | |
%782 = load i64* %781, align 8 | |
%783 = getelementptr i8* %ppu_state, i32 936 | |
%784 = bitcast i8* %783 to i64* | |
%785 = load i64* %784, align 8 | |
%786 = or i64 %782, %785 | |
%787 = getelementptr i8* %ppu_state, i32 816 | |
%788 = bitcast i8* %787 to i64* | |
store i64 %786, i64* %788, align 8 | |
br label %instr_0x000A6C04 | |
instr_0x000A6C04: ; preds = %instr_0x000A6C00 | |
%789 = getelementptr i8* %ppu_state, i32 960 | |
%790 = bitcast i8* %789 to i64* | |
%791 = load i64* %790, align 8 | |
%792 = getelementptr i8* %ppu_state, i32 960 | |
%793 = bitcast i8* %792 to i64* | |
%794 = load i64* %793, align 8 | |
%795 = or i64 %791, %794 | |
%796 = getelementptr i8* %ppu_state, i32 824 | |
%797 = bitcast i8* %796 to i64* | |
store i64 %795, i64* %797, align 8 | |
br label %instr_0x000A6C08 | |
instr_0x000A6C08: ; preds = %instr_0x000A6C04 | |
%798 = getelementptr i8* %ppu_state, i32 1568 | |
%799 = bitcast i8* %798 to i64* | |
store i64 683020, i64* %799, align 8 | |
%800 = getelementptr i8* %ppu_state, i32 1664 | |
%801 = bitcast i8* %800 to i32* | |
store i32 682104, i32* %801, align 4 | |
%802 = load i64* inttoptr (i64 8623353112 to i64*) | |
%803 = inttoptr i64 %802 to i32 (i8*, i64)* | |
%804 = call i32 %803(i8* %ppu_state, i64 0) | |
%805 = icmp eq i32 %804, -1 | |
br i1 %805, label %instr_0x000A6C08_then_all_fs, label %instr_0x000A6C08_merge_all_fs | |
instr_0x000A6C08_then_all_fs: ; preds = %instr_0x000A6C08 | |
ret i32 0 | |
instr_0x000A6C08_merge_all_fs: ; preds = %instr_0x000A6C08 | |
br label %instr_0x000A6C0C | |
instr_0x000A6C0C: ; preds = %instr_0x000A6C08_merge_all_fs | |
%806 = getelementptr i8* %ppu_state, i32 984 | |
%807 = bitcast i8* %806 to i64* | |
%808 = load i64* %807, align 8 | |
%809 = getelementptr i8* %ppu_state, i32 984 | |
%810 = bitcast i8* %809 to i64* | |
%811 = load i64* %810, align 8 | |
%812 = or i64 %808, %811 | |
%813 = getelementptr i8* %ppu_state, i32 792 | |
%814 = bitcast i8* %813 to i64* | |
store i64 %812, i64* %814, align 8 | |
br label %instr_0x000A6C10 | |
instr_0x000A6C10: ; preds = %instr_0x000A6C0C | |
%815 = getelementptr i8* %ppu_state, i32 976 | |
%816 = bitcast i8* %815 to i64* | |
%817 = load i64* %816, align 8 | |
%818 = getelementptr i8* %ppu_state, i32 976 | |
%819 = bitcast i8* %818 to i64* | |
%820 = load i64* %819, align 8 | |
%821 = or i64 %817, %820 | |
%822 = getelementptr i8* %ppu_state, i32 800 | |
%823 = bitcast i8* %822 to i64* | |
store i64 %821, i64* %823, align 8 | |
br label %instr_0x000A6C14 | |
instr_0x000A6C14: ; preds = %instr_0x000A6C10 | |
%824 = getelementptr i8* %ppu_state, i32 1000 | |
%825 = bitcast i8* %824 to i64* | |
%826 = load i64* %825, align 8 | |
%827 = getelementptr i8* %ppu_state, i32 1000 | |
%828 = bitcast i8* %827 to i64* | |
%829 = load i64* %828, align 8 | |
%830 = or i64 %826, %829 | |
%831 = getelementptr i8* %ppu_state, i32 808 | |
%832 = bitcast i8* %831 to i64* | |
store i64 %830, i64* %832, align 8 | |
br label %instr_0x000A6C18 | |
instr_0x000A6C18: ; preds = %instr_0x000A6C14 | |
%833 = getelementptr i8* %ppu_state, i32 936 | |
%834 = bitcast i8* %833 to i64* | |
%835 = load i64* %834, align 8 | |
%836 = getelementptr i8* %ppu_state, i32 936 | |
%837 = bitcast i8* %836 to i64* | |
%838 = load i64* %837, align 8 | |
%839 = or i64 %835, %838 | |
%840 = getelementptr i8* %ppu_state, i32 816 | |
%841 = bitcast i8* %840 to i64* | |
store i64 %839, i64* %841, align 8 | |
br label %instr_0x000A6C1C | |
instr_0x000A6C1C: ; preds = %instr_0x000A6C18 | |
%842 = getelementptr i8* %ppu_state, i32 960 | |
%843 = bitcast i8* %842 to i64* | |
%844 = load i64* %843, align 8 | |
%845 = getelementptr i8* %ppu_state, i32 960 | |
%846 = bitcast i8* %845 to i64* | |
%847 = load i64* %846, align 8 | |
%848 = or i64 %844, %847 | |
%849 = getelementptr i8* %ppu_state, i32 824 | |
%850 = bitcast i8* %849 to i64* | |
store i64 %848, i64* %850, align 8 | |
br label %instr_0x000A6C20 | |
instr_0x000A6C20: ; preds = %instr_0x000A6C1C | |
%851 = getelementptr i8* %ppu_state, i32 1568 | |
%852 = bitcast i8* %851 to i64* | |
store i64 683044, i64* %852, align 8 | |
%853 = getelementptr i8* %ppu_state, i32 1664 | |
%854 = bitcast i8* %853 to i32* | |
store i32 682104, i32* %854, align 4 | |
%855 = load i64* inttoptr (i64 8623353112 to i64*) | |
%856 = inttoptr i64 %855 to i32 (i8*, i64)* | |
%857 = call i32 %856(i8* %ppu_state, i64 0) | |
%858 = icmp eq i32 %857, -1 | |
br i1 %858, label %instr_0x000A6C20_then_all_fs, label %instr_0x000A6C20_merge_all_fs | |
instr_0x000A6C20_then_all_fs: ; preds = %instr_0x000A6C20 | |
ret i32 0 | |
instr_0x000A6C20_merge_all_fs: ; preds = %instr_0x000A6C20 | |
br label %instr_0x000A6C24 | |
instr_0x000A6C24: ; preds = %instr_0x000A6C20_merge_all_fs | |
%859 = getelementptr i8* %ppu_state, i32 952 | |
%860 = bitcast i8* %859 to i32* | |
%861 = load i32* %860, align 8 | |
%862 = zext i32 %861 to i64 | |
%863 = getelementptr i8* %ppu_state, i32 944 | |
%864 = bitcast i8* %863 to i32* | |
%865 = load i32* %864, align 8 | |
%866 = zext i32 %865 to i64 | |
%867 = icmp ult i64 %862, %866 | |
%868 = icmp ugt i64 %862, %866 | |
%869 = icmp eq i64 %862, %866 | |
%870 = getelementptr i8* %ppu_state, i32 1540 | |
%871 = bitcast i8* %870 to i32* | |
%872 = load i32* %871, align 4 | |
%873 = getelementptr i8* %ppu_state, i32 1544 | |
%874 = bitcast i8* %873 to i64* | |
%875 = load i64* %874, align 8 | |
%876 = lshr i64 %875, 31 | |
%877 = and i64 %876, 1 | |
%878 = and i32 %872, -16 | |
%879 = zext i1 %867 to i32 | |
%880 = shl i32 %879, 3 | |
%881 = or i32 %878, %880 | |
%882 = zext i1 %868 to i32 | |
%883 = shl i32 %882, 2 | |
%884 = or i32 %881, %883 | |
%885 = zext i1 %869 to i32 | |
%886 = shl i32 %885, 1 | |
%887 = or i32 %884, %886 | |
%888 = trunc i64 %877 to i32 | |
%889 = or i32 %887, %888 | |
%890 = getelementptr i8* %ppu_state, i32 1540 | |
%891 = bitcast i8* %890 to i32* | |
store i32 %889, i32* %891, align 4 | |
br label %instr_0x000A6C28 | |
instr_0x000A6C28: ; preds = %instr_0x000A6C24 | |
%892 = getelementptr i8* %ppu_state, i32 952 | |
%893 = bitcast i8* %892 to i64* | |
%894 = load i64* %893, align 8 | |
%895 = getelementptr i8* %ppu_state, i32 952 | |
%896 = bitcast i8* %895 to i64* | |
%897 = load i64* %896, align 8 | |
%898 = or i64 %894, %897 | |
%899 = getelementptr i8* %ppu_state, i32 1016 | |
%900 = bitcast i8* %899 to i64* | |
store i64 %898, i64* %900, align 8 | |
br label %instr_0x000A6C2C | |
instr_0x000A6C2C: ; preds = %instr_0x000A6C28 | |
%901 = getelementptr i8* %ppu_state, i32 1576 | |
%902 = bitcast i8* %901 to i64* | |
%903 = load i64* %902, align 8 | |
%904 = getelementptr i8* %ppu_state, i32 1540 | |
%905 = bitcast i8* %904 to i32* | |
%906 = load i32* %905, align 4 | |
%907 = lshr i32 %906, 2 | |
%908 = and i32 %907, 1 | |
%909 = trunc i32 %908 to i1 | |
%910 = xor i1 %909, true | |
br i1 %910, label %instr_0x000A6C84, label %instr_0x000A6C30 | |
instr_0x000A6C30: ; preds = %instr_0x000A6C2C | |
%911 = getelementptr i8* %ppu_state, i32 952 | |
%912 = bitcast i8* %911 to i64* | |
%913 = load i64* %912, align 8 | |
%914 = getelementptr i8* %ppu_state, i32 952 | |
%915 = bitcast i8* %914 to i64* | |
%916 = load i64* %915, align 8 | |
%917 = or i64 %913, %916 | |
%918 = getelementptr i8* %ppu_state, i32 1008 | |
%919 = bitcast i8* %918 to i64* | |
store i64 %917, i64* %919, align 8 | |
br label %instr_0x000A6C34 | |
instr_0x000A6C34: ; preds = %instr_0x000A6C30 | |
%920 = getelementptr i8* %ppu_state, i32 968 | |
%921 = bitcast i8* %920 to i64* | |
%922 = load i64* %921, align 8 | |
%923 = sub i64 0, %922 | |
%924 = getelementptr i8* %ppu_state, i32 1000 | |
%925 = bitcast i8* %924 to i64* | |
store i64 %923, i64* %925, align 8 | |
br label %instr_0x000A6C38 | |
instr_0x000A6C38: ; preds = %instr_0x000A6C34 | |
%926 = getelementptr i8* %ppu_state, i32 968 | |
%927 = bitcast i8* %926 to i64* | |
%928 = load i64* %927, align 8 | |
%929 = getelementptr i8* %ppu_state, i32 952 | |
%930 = bitcast i8* %929 to i64* | |
%931 = load i64* %930, align 8 | |
%932 = sub i64 %931, %928 | |
%933 = getelementptr i8* %ppu_state, i32 976 | |
%934 = bitcast i8* %933 to i64* | |
store i64 %932, i64* %934, align 8 | |
br label %instr_0x000A6C3C | |
instr_0x000A6C3C: ; preds = %instr_0x000A6C38 | |
br label %instr_0x000A6C48 | |
instr_0x000A6C40: ; preds = %instr_0x000A6C7C | |
%935 = phi i32 [ 683132, %instr_0x000A6C7C ] | |
%936 = getelementptr i8* %ppu_state, i32 1664 | |
%937 = bitcast i8* %936 to i32* | |
store i32 683072, i32* %937, align 4 | |
%938 = zext i32 %935 to i64 | |
%939 = or i64 %938, 2932174172979200 | |
%940 = load i64* inttoptr (i64 8623353120 to i64*) | |
%941 = inttoptr i64 %940 to i32 (i8*, i64)* | |
%942 = call i32 %941(i8* %ppu_state, i64 %939) | |
%943 = icmp eq i32 %942, -1 | |
br i1 %943, label %instr_0x000A6C40_then_all_fs, label %instr_0x000A6C40_merge_all_fs | |
instr_0x000A6C40_then_all_fs: ; preds = %instr_0x000A6C40 | |
ret i32 0 | |
instr_0x000A6C40_merge_all_fs: ; preds = %instr_0x000A6C40 | |
%944 = icmp ne i32 %942, 0 | |
br i1 %944, label %instr_0x000A6C40_then_0, label %instr_0x000A6C40_merge_0 | |
instr_0x000A6C40_then_0: ; preds = %instr_0x000A6C40_merge_all_fs | |
%945 = zext i32 %942 to i64 | |
%946 = or i64 %945, 2932174172979200 | |
%947 = call i32 @execute_unknown_block(i8* %ppu_state, i64 %946) | |
br label %instr_0x000A6C40_merge_0 | |
instr_0x000A6C40_merge_0: ; preds = %instr_0x000A6C40_then_0, %instr_0x000A6C40_merge_all_fs | |
ret i32 0 | |
instr_0x000A6C48: ; preds = %instr_0x000A6C3C | |
%948 = getelementptr i8* %ppu_state, i32 776 | |
%949 = bitcast i8* %948 to i64* | |
%950 = load i64* %949, align 8 | |
%951 = add i64 %950, 40 | |
%952 = getelementptr i8* %ppu_state, i32 784 | |
%953 = bitcast i8* %952 to i64* | |
%954 = load i64* %953, align 8 | |
%955 = call i64 @llvm.bswap.i64(i64 %954) | |
%956 = and i64 %951, 4294967295 | |
%957 = add i64 %956, 2147418112 | |
%958 = inttoptr i64 %957 to i64* | |
store i64 %955, i64* %958 | |
br label %instr_0x000A6C4C | |
instr_0x000A6C4C: ; preds = %instr_0x000A6C48 | |
%959 = getelementptr i8* %ppu_state, i32 960 | |
%960 = bitcast i8* %959 to i64* | |
%961 = load i64* %960, align 8 | |
%962 = add i64 %961, 0 | |
%963 = and i64 %962, 4294967295 | |
%964 = add i64 %963, 2147418112 | |
%965 = inttoptr i64 %964 to i32* | |
%966 = load i32* %965 | |
%967 = call i32 @llvm.bswap.i32(i32 %966) | |
%968 = zext i32 %967 to i64 | |
%969 = getelementptr i8* %ppu_state, i32 768 | |
%970 = bitcast i8* %969 to i64* | |
store i64 %968, i64* %970, align 8 | |
br label %instr_0x000A6C50 | |
instr_0x000A6C50: ; preds = %instr_0x000A6C4C | |
%971 = getelementptr i8* %ppu_state, i32 1008 | |
%972 = bitcast i8* %971 to i64* | |
%973 = load i64* %972, align 8 | |
%974 = getelementptr i8* %ppu_state, i32 1000 | |
%975 = bitcast i8* %974 to i64* | |
%976 = load i64* %975, align 8 | |
%977 = add i64 %973, %976 | |
%978 = getelementptr i8* %ppu_state, i32 1016 | |
%979 = bitcast i8* %978 to i64* | |
store i64 %977, i64* %979, align 8 | |
br label %instr_0x000A6C54 | |
instr_0x000A6C54: ; preds = %instr_0x000A6C50 | |
%980 = getelementptr i8* %ppu_state, i32 1008 | |
%981 = bitcast i8* %980 to i64* | |
%982 = load i64* %981, align 8 | |
%983 = and i64 %982, 4294967295 | |
%984 = getelementptr i8* %ppu_state, i32 800 | |
%985 = bitcast i8* %984 to i64* | |
store i64 %983, i64* %985, align 8 | |
br label %instr_0x000A6C58 | |
instr_0x000A6C58: ; preds = %instr_0x000A6C54 | |
%986 = getelementptr i8* %ppu_state, i32 960 | |
%987 = bitcast i8* %986 to i64* | |
%988 = load i64* %987, align 8 | |
%989 = add i64 %988, 4 | |
%990 = and i64 %989, 4294967295 | |
%991 = add i64 %990, 2147418112 | |
%992 = inttoptr i64 %991 to i32* | |
%993 = load i32* %992 | |
%994 = call i32 @llvm.bswap.i32(i32 %993) | |
%995 = zext i32 %994 to i64 | |
%996 = getelementptr i8* %ppu_state, i32 784 | |
%997 = bitcast i8* %996 to i64* | |
store i64 %995, i64* %997, align 8 | |
br label %instr_0x000A6C5C | |
instr_0x000A6C5C: ; preds = %instr_0x000A6C58 | |
%998 = getelementptr i8* %ppu_state, i32 768 | |
%999 = bitcast i8* %998 to i64* | |
%1000 = load i64* %999, align 8 | |
%1001 = getelementptr i8* %ppu_state, i32 1576 | |
%1002 = bitcast i8* %1001 to i64* | |
store i64 %1000, i64* %1002, align 8 | |
br label %instr_0x000A6C60 | |
instr_0x000A6C60: ; preds = %instr_0x000A6C5C | |
%1003 = getelementptr i8* %ppu_state, i32 1016 | |
%1004 = bitcast i8* %1003 to i64* | |
%1005 = load i64* %1004, align 8 | |
%1006 = and i64 %1005, 4294967295 | |
%1007 = getelementptr i8* %ppu_state, i32 792 | |
%1008 = bitcast i8* %1007 to i64* | |
store i64 %1006, i64* %1008, align 8 | |
br label %instr_0x000A6C64 | |
instr_0x000A6C64: ; preds = %instr_0x000A6C60 | |
%1009 = getelementptr i8* %ppu_state, i32 976 | |
%1010 = bitcast i8* %1009 to i64* | |
%1011 = load i64* %1010, align 8 | |
%1012 = getelementptr i8* %ppu_state, i32 1000 | |
%1013 = bitcast i8* %1012 to i64* | |
%1014 = load i64* %1013, align 8 | |
%1015 = add i64 %1011, %1014 | |
%1016 = getelementptr i8* %ppu_state, i32 976 | |
%1017 = bitcast i8* %1016 to i64* | |
store i64 %1015, i64* %1017, align 8 | |
br label %instr_0x000A6C68 | |
instr_0x000A6C68: ; preds = %instr_0x000A6C64 | |
%1018 = getelementptr i8* %ppu_state, i32 1576 | |
%1019 = bitcast i8* %1018 to i64* | |
%1020 = load i64* %1019, align 8 | |
%1021 = and i64 %1020, -4 | |
%1022 = trunc i64 %1021 to i32 | |
%1023 = getelementptr i8* %ppu_state, i32 1576 | |
%1024 = bitcast i8* %1023 to i64* | |
%1025 = load i64* %1024, align 8 | |
%1026 = getelementptr i8* %ppu_state, i32 1568 | |
%1027 = bitcast i8* %1026 to i64* | |
store i64 683116, i64* %1027, align 8 | |
%1028 = getelementptr i8* %ppu_state, i32 1664 | |
%1029 = bitcast i8* %1028 to i32* | |
store i32 %1022, i32* %1029, align 4 | |
switch i32 %1022, label %instr_0x000A6C68_unknown_function [ | |
i32 469328, label %instr_0x000A6C68_0x00072950 | |
] | |
instr_0x000A6C68_unknown_function: ; preds = %instr_0x000A6C68 | |
%1030 = call i32 @execute_unknown_function(i8* %ppu_state, i64 0) | |
br label %instr_0x000A6C6C | |
instr_0x000A6C68_0x00072950: ; preds = %instr_0x000A6C68 | |
%1031 = load i64* inttoptr (i64 8623353112 to i64*) | |
%1032 = inttoptr i64 %1031 to i32 (i8*, i64)* | |
%1033 = call i32 %1032(i8* %ppu_state, i64 0) | |
%1034 = icmp eq i32 %1033, -1 | |
br i1 %1034, label %instr_0x000A6C68_then_all_fs, label %instr_0x000A6C68_merge_all_fs | |
instr_0x000A6C68_then_all_fs: ; preds = %instr_0x000A6C68_0x00072950 | |
ret i32 0 | |
instr_0x000A6C68_merge_all_fs: ; preds = %instr_0x000A6C68_0x00072950 | |
br label %instr_0x000A6C6C | |
instr_0x000A6C6C: ; preds = %instr_0x000A6C68_merge_all_fs, %instr_0x000A6C68_unknown_function | |
%1035 = getelementptr i8* %ppu_state, i32 776 | |
%1036 = bitcast i8* %1035 to i64* | |
%1037 = load i64* %1036, align 8 | |
%1038 = add i64 %1037, 40 | |
%1039 = and i64 %1038, 4294967295 | |
%1040 = add i64 %1039, 2147418112 | |
%1041 = inttoptr i64 %1040 to i64* | |
%1042 = load i64* %1041 | |
%1043 = call i64 @llvm.bswap.i64(i64 %1042) | |
%1044 = getelementptr i8* %ppu_state, i32 784 | |
%1045 = bitcast i8* %1044 to i64* | |
store i64 %1043, i64* %1045, align 8 | |
br label %instr_0x000A6C70 | |
instr_0x000A6C70: ; preds = %instr_0x000A6C6C | |
%1046 = getelementptr i8* %ppu_state, i32 968 | |
%1047 = bitcast i8* %1046 to i64* | |
%1048 = load i64* %1047, align 8 | |
%1049 = getelementptr i8* %ppu_state, i32 976 | |
%1050 = bitcast i8* %1049 to i64* | |
%1051 = load i64* %1050, align 8 | |
%1052 = add i64 %1048, %1051 | |
%1053 = getelementptr i8* %ppu_state, i32 768 | |
%1054 = bitcast i8* %1053 to i64* | |
store i64 %1052, i64* %1054, align 8 | |
br label %instr_0x000A6C74 | |
instr_0x000A6C74: ; preds = %instr_0x000A6C70 | |
%1055 = getelementptr i8* %ppu_state, i32 792 | |
%1056 = bitcast i8* %1055 to i32* | |
%1057 = load i32* %1056, align 8 | |
%1058 = sext i32 %1057 to i64 | |
%1059 = icmp slt i64 %1058, 0 | |
%1060 = icmp sgt i64 %1058, 0 | |
%1061 = icmp eq i64 %1058, 0 | |
%1062 = getelementptr i8* %ppu_state, i32 1540 | |
%1063 = bitcast i8* %1062 to i32* | |
%1064 = load i32* %1063, align 4 | |
%1065 = getelementptr i8* %ppu_state, i32 1544 | |
%1066 = bitcast i8* %1065 to i64* | |
%1067 = load i64* %1066, align 8 | |
%1068 = lshr i64 %1067, 31 | |
%1069 = and i64 %1068, 1 | |
%1070 = and i32 %1064, -16 | |
%1071 = zext i1 %1059 to i32 | |
%1072 = shl i32 %1071, 3 | |
%1073 = or i32 %1070, %1072 | |
%1074 = zext i1 %1060 to i32 | |
%1075 = shl i32 %1074, 2 | |
%1076 = or i32 %1073, %1075 | |
%1077 = zext i1 %1061 to i32 | |
%1078 = shl i32 %1077, 1 | |
%1079 = or i32 %1076, %1078 | |
%1080 = trunc i64 %1069 to i32 | |
%1081 = or i32 %1079, %1080 | |
%1082 = getelementptr i8* %ppu_state, i32 1540 | |
%1083 = bitcast i8* %1082 to i32* | |
store i32 %1081, i32* %1083, align 4 | |
br label %instr_0x000A6C78 | |
instr_0x000A6C78: ; preds = %instr_0x000A6C74 | |
%1084 = getelementptr i8* %ppu_state, i32 768 | |
%1085 = bitcast i8* %1084 to i32* | |
%1086 = load i32* %1085, align 8 | |
%1087 = zext i32 %1086 to i64 | |
%1088 = getelementptr i8* %ppu_state, i32 944 | |
%1089 = bitcast i8* %1088 to i32* | |
%1090 = load i32* %1089, align 8 | |
%1091 = zext i32 %1090 to i64 | |
%1092 = icmp ult i64 %1087, %1091 | |
%1093 = icmp ugt i64 %1087, %1091 | |
%1094 = icmp eq i64 %1087, %1091 | |
%1095 = getelementptr i8* %ppu_state, i32 1540 | |
%1096 = bitcast i8* %1095 to i32* | |
%1097 = load i32* %1096, align 4 | |
%1098 = getelementptr i8* %ppu_state, i32 1544 | |
%1099 = bitcast i8* %1098 to i64* | |
%1100 = load i64* %1099, align 8 | |
%1101 = lshr i64 %1100, 31 | |
%1102 = and i64 %1101, 1 | |
%1103 = and i32 %1097, -241 | |
%1104 = zext i1 %1092 to i32 | |
%1105 = shl i32 %1104, 7 | |
%1106 = or i32 %1103, %1105 | |
%1107 = zext i1 %1093 to i32 | |
%1108 = shl i32 %1107, 6 | |
%1109 = or i32 %1106, %1108 | |
%1110 = zext i1 %1094 to i32 | |
%1111 = shl i32 %1110, 5 | |
%1112 = or i32 %1109, %1111 | |
%1113 = trunc i64 %1102 to i32 | |
%1114 = shl i32 %1113, 4 | |
%1115 = or i32 %1112, %1114 | |
%1116 = getelementptr i8* %ppu_state, i32 1540 | |
%1117 = bitcast i8* %1116 to i32* | |
store i32 %1115, i32* %1117, align 4 | |
br label %instr_0x000A6C7C | |
instr_0x000A6C7C: ; preds = %instr_0x000A6C78 | |
%1118 = getelementptr i8* %ppu_state, i32 1576 | |
%1119 = bitcast i8* %1118 to i64* | |
%1120 = load i64* %1119, align 8 | |
%1121 = getelementptr i8* %ppu_state, i32 1540 | |
%1122 = bitcast i8* %1121 to i32* | |
%1123 = load i32* %1122, align 4 | |
%1124 = lshr i32 %1123, 1 | |
%1125 = and i32 %1124, 1 | |
%1126 = trunc i32 %1125 to i1 | |
br i1 %1126, label %instr_0x000A6C40, label %instr_0x000A6C80 | |
instr_0x000A6C80: ; preds = %instr_0x000A6C7C | |
%1127 = getelementptr i8* %ppu_state, i32 1008 | |
%1128 = bitcast i8* %1127 to i64* | |
%1129 = load i64* %1128, align 8 | |
%1130 = getelementptr i8* %ppu_state, i32 1008 | |
%1131 = bitcast i8* %1130 to i64* | |
%1132 = load i64* %1131, align 8 | |
%1133 = or i64 %1129, %1132 | |
%1134 = getelementptr i8* %ppu_state, i32 1016 | |
%1135 = bitcast i8* %1134 to i64* | |
store i64 %1133, i64* %1135, align 8 | |
br label %instr_0x000A6C84 | |
instr_0x000A6C84: ; preds = %instr_0x000A6C80, %instr_0x000A6C2C | |
%1136 = getelementptr i8* %ppu_state, i32 912 | |
%1137 = bitcast i8* %1136 to i32* | |
%1138 = load i32* %1137, align 8 | |
%1139 = zext i32 %1138 to i64 | |
%1140 = getelementptr i8* %ppu_state, i32 920 | |
%1141 = bitcast i8* %1140 to i32* | |
%1142 = load i32* %1141, align 8 | |
%1143 = zext i32 %1142 to i64 | |
%1144 = icmp ult i64 %1139, %1143 | |
%1145 = icmp ugt i64 %1139, %1143 | |
%1146 = icmp eq i64 %1139, %1143 | |
%1147 = getelementptr i8* %ppu_state, i32 1540 | |
%1148 = bitcast i8* %1147 to i32* | |
%1149 = load i32* %1148, align 4 | |
%1150 = getelementptr i8* %ppu_state, i32 1544 | |
%1151 = bitcast i8* %1150 to i64* | |
%1152 = load i64* %1151, align 8 | |
%1153 = lshr i64 %1152, 31 | |
%1154 = and i64 %1153, 1 | |
%1155 = and i32 %1149, -16 | |
%1156 = zext i1 %1144 to i32 | |
%1157 = shl i32 %1156, 3 | |
%1158 = or i32 %1155, %1157 | |
%1159 = zext i1 %1145 to i32 | |
%1160 = shl i32 %1159, 2 | |
%1161 = or i32 %1158, %1160 | |
%1162 = zext i1 %1146 to i32 | |
%1163 = shl i32 %1162, 1 | |
%1164 = or i32 %1161, %1163 | |
%1165 = trunc i64 %1154 to i32 | |
%1166 = or i32 %1164, %1165 | |
%1167 = getelementptr i8* %ppu_state, i32 1540 | |
%1168 = bitcast i8* %1167 to i32* | |
store i32 %1166, i32* %1168, align 4 | |
br label %instr_0x000A6C88 | |
instr_0x000A6C88: ; preds = %instr_0x000A6C84 | |
%1169 = getelementptr i8* %ppu_state, i32 920 | |
%1170 = bitcast i8* %1169 to i64* | |
%1171 = load i64* %1170, align 8 | |
%1172 = getelementptr i8* %ppu_state, i32 968 | |
%1173 = bitcast i8* %1172 to i64* | |
%1174 = load i64* %1173, align 8 | |
%1175 = add i64 %1171, %1174 | |
%1176 = getelementptr i8* %ppu_state, i32 1008 | |
%1177 = bitcast i8* %1176 to i64* | |
store i64 %1175, i64* %1177, align 8 | |
br label %instr_0x000A6C8C | |
instr_0x000A6C8C: ; preds = %instr_0x000A6C88 | |
%1178 = getelementptr i8* %ppu_state, i32 1016 | |
%1179 = bitcast i8* %1178 to i64* | |
%1180 = load i64* %1179, align 8 | |
%1181 = and i64 %1180, 4294967295 | |
%1182 = getelementptr i8* %ppu_state, i32 976 | |
%1183 = bitcast i8* %1182 to i64* | |
store i64 %1181, i64* %1183, align 8 | |
br label %instr_0x000A6C90 | |
instr_0x000A6C90: ; preds = %instr_0x000A6C8C | |
%1184 = getelementptr i8* %ppu_state, i32 1576 | |
%1185 = bitcast i8* %1184 to i64* | |
%1186 = load i64* %1185, align 8 | |
%1187 = getelementptr i8* %ppu_state, i32 1540 | |
%1188 = bitcast i8* %1187 to i32* | |
%1189 = load i32* %1188, align 4 | |
%1190 = lshr i32 %1189, 2 | |
%1191 = and i32 %1190, 1 | |
%1192 = trunc i32 %1191 to i1 | |
br i1 %1192, label %instr_0x000A6CA0, label %instr_0x000A6C94 | |
instr_0x000A6C94: ; preds = %instr_0x000A6C90 | |
%1193 = phi i32 [ 683152, %instr_0x000A6C90 ] | |
%1194 = getelementptr i8* %ppu_state, i32 1664 | |
%1195 = bitcast i8* %1194 to i32* | |
store i32 683156, i32* %1195, align 4 | |
%1196 = zext i32 %1193 to i64 | |
%1197 = or i64 %1196, 2932174172979200 | |
%1198 = load i64* inttoptr (i64 8623353120 to i64*) | |
%1199 = inttoptr i64 %1198 to i32 (i8*, i64)* | |
%1200 = call i32 %1199(i8* %ppu_state, i64 %1197) | |
%1201 = icmp eq i32 %1200, -1 | |
br i1 %1201, label %instr_0x000A6C94_then_all_fs, label %instr_0x000A6C94_merge_all_fs | |
instr_0x000A6C94_then_all_fs: ; preds = %instr_0x000A6C94 | |
ret i32 0 | |
instr_0x000A6C94_merge_all_fs: ; preds = %instr_0x000A6C94 | |
%1202 = icmp ne i32 %1200, 0 | |
br i1 %1202, label %instr_0x000A6C94_then_0, label %instr_0x000A6C94_merge_0 | |
instr_0x000A6C94_then_0: ; preds = %instr_0x000A6C94_merge_all_fs | |
%1203 = zext i32 %1200 to i64 | |
%1204 = or i64 %1203, 2932174172979200 | |
%1205 = call i32 @execute_unknown_block(i8* %ppu_state, i64 %1204) | |
br label %instr_0x000A6C94_merge_0 | |
instr_0x000A6C94_merge_0: ; preds = %instr_0x000A6C94_then_0, %instr_0x000A6C94_merge_all_fs | |
ret i32 0 | |
instr_0x000A6C98: ; preds = %instr_0x000A6CD0 | |
%1206 = phi i32 [ 683216, %instr_0x000A6CD0 ] | |
%1207 = getelementptr i8* %ppu_state, i32 1664 | |
%1208 = bitcast i8* %1207 to i32* | |
store i32 683160, i32* %1208, align 4 | |
%1209 = zext i32 %1206 to i64 | |
%1210 = or i64 %1209, 2932174172979200 | |
%1211 = load i64* inttoptr (i64 8623353120 to i64*) | |
%1212 = inttoptr i64 %1211 to i32 (i8*, i64)* | |
%1213 = call i32 %1212(i8* %ppu_state, i64 %1210) | |
%1214 = icmp eq i32 %1213, -1 | |
br i1 %1214, label %instr_0x000A6C98_then_all_fs, label %instr_0x000A6C98_merge_all_fs | |
instr_0x000A6C98_then_all_fs: ; preds = %instr_0x000A6C98 | |
ret i32 0 | |
instr_0x000A6C98_merge_all_fs: ; preds = %instr_0x000A6C98 | |
%1215 = icmp ne i32 %1213, 0 | |
br i1 %1215, label %instr_0x000A6C98_then_0, label %instr_0x000A6C98_merge_0 | |
instr_0x000A6C98_then_0: ; preds = %instr_0x000A6C98_merge_all_fs | |
%1216 = zext i32 %1213 to i64 | |
%1217 = or i64 %1216, 2932174172979200 | |
%1218 = call i32 @execute_unknown_block(i8* %ppu_state, i64 %1217) | |
br label %instr_0x000A6C98_merge_0 | |
instr_0x000A6C98_merge_0: ; preds = %instr_0x000A6C98_then_0, %instr_0x000A6C98_merge_all_fs | |
ret i32 0 | |
instr_0x000A6CA0: ; preds = %instr_0x000A6C90 | |
%1219 = getelementptr i8* %ppu_state, i32 776 | |
%1220 = bitcast i8* %1219 to i64* | |
%1221 = load i64* %1220, align 8 | |
%1222 = add i64 %1221, 40 | |
%1223 = getelementptr i8* %ppu_state, i32 784 | |
%1224 = bitcast i8* %1223 to i64* | |
%1225 = load i64* %1224, align 8 | |
%1226 = call i64 @llvm.bswap.i64(i64 %1225) | |
%1227 = and i64 %1222, 4294967295 | |
%1228 = add i64 %1227, 2147418112 | |
%1229 = inttoptr i64 %1228 to i64* | |
store i64 %1226, i64* %1229 | |
br label %instr_0x000A6CA4 | |
instr_0x000A6CA4: ; preds = %instr_0x000A6CA0 | |
%1230 = getelementptr i8* %ppu_state, i32 960 | |
%1231 = bitcast i8* %1230 to i64* | |
%1232 = load i64* %1231, align 8 | |
%1233 = add i64 %1232, 0 | |
%1234 = and i64 %1233, 4294967295 | |
%1235 = add i64 %1234, 2147418112 | |
%1236 = inttoptr i64 %1235 to i32* | |
%1237 = load i32* %1236 | |
%1238 = call i32 @llvm.bswap.i32(i32 %1237) | |
%1239 = zext i32 %1238 to i64 | |
%1240 = getelementptr i8* %ppu_state, i32 768 | |
%1241 = bitcast i8* %1240 to i64* | |
store i64 %1239, i64* %1241, align 8 | |
br label %instr_0x000A6CA8 | |
instr_0x000A6CA8: ; preds = %instr_0x000A6CA4 | |
%1242 = getelementptr i8* %ppu_state, i32 920 | |
%1243 = bitcast i8* %1242 to i64* | |
%1244 = load i64* %1243, align 8 | |
%1245 = and i64 %1244, 4294967295 | |
%1246 = getelementptr i8* %ppu_state, i32 792 | |
%1247 = bitcast i8* %1246 to i64* | |
store i64 %1245, i64* %1247, align 8 | |
br label %instr_0x000A6CAC | |
instr_0x000A6CAC: ; preds = %instr_0x000A6CA8 | |
%1248 = getelementptr i8* %ppu_state, i32 976 | |
%1249 = bitcast i8* %1248 to i64* | |
%1250 = load i64* %1249, align 8 | |
%1251 = getelementptr i8* %ppu_state, i32 976 | |
%1252 = bitcast i8* %1251 to i64* | |
%1253 = load i64* %1252, align 8 | |
%1254 = or i64 %1250, %1253 | |
%1255 = getelementptr i8* %ppu_state, i32 800 | |
%1256 = bitcast i8* %1255 to i64* | |
store i64 %1254, i64* %1256, align 8 | |
br label %instr_0x000A6CB0 | |
instr_0x000A6CB0: ; preds = %instr_0x000A6CAC | |
%1257 = getelementptr i8* %ppu_state, i32 960 | |
%1258 = bitcast i8* %1257 to i64* | |
%1259 = load i64* %1258, align 8 | |
%1260 = add i64 %1259, 4 | |
%1261 = and i64 %1260, 4294967295 | |
%1262 = add i64 %1261, 2147418112 | |
%1263 = inttoptr i64 %1262 to i32* | |
%1264 = load i32* %1263 | |
%1265 = call i32 @llvm.bswap.i32(i32 %1264) | |
%1266 = zext i32 %1265 to i64 | |
%1267 = getelementptr i8* %ppu_state, i32 784 | |
%1268 = bitcast i8* %1267 to i64* | |
store i64 %1266, i64* %1268, align 8 | |
br label %instr_0x000A6CB4 | |
instr_0x000A6CB4: ; preds = %instr_0x000A6CB0 | |
%1269 = getelementptr i8* %ppu_state, i32 768 | |
%1270 = bitcast i8* %1269 to i64* | |
%1271 = load i64* %1270, align 8 | |
%1272 = getelementptr i8* %ppu_state, i32 1576 | |
%1273 = bitcast i8* %1272 to i64* | |
store i64 %1271, i64* %1273, align 8 | |
br label %instr_0x000A6CB8 | |
instr_0x000A6CB8: ; preds = %instr_0x000A6CB4 | |
%1274 = getelementptr i8* %ppu_state, i32 1008 | |
%1275 = bitcast i8* %1274 to i64* | |
%1276 = load i64* %1275, align 8 | |
%1277 = getelementptr i8* %ppu_state, i32 968 | |
%1278 = bitcast i8* %1277 to i64* | |
%1279 = load i64* %1278, align 8 | |
%1280 = add i64 %1276, %1279 | |
%1281 = getelementptr i8* %ppu_state, i32 1008 | |
%1282 = bitcast i8* %1281 to i64* | |
store i64 %1280, i64* %1282, align 8 | |
br label %instr_0x000A6CBC | |
instr_0x000A6CBC: ; preds = %instr_0x000A6CB8 | |
%1283 = getelementptr i8* %ppu_state, i32 1576 | |
%1284 = bitcast i8* %1283 to i64* | |
%1285 = load i64* %1284, align 8 | |
%1286 = and i64 %1285, -4 | |
%1287 = trunc i64 %1286 to i32 | |
%1288 = getelementptr i8* %ppu_state, i32 1576 | |
%1289 = bitcast i8* %1288 to i64* | |
%1290 = load i64* %1289, align 8 | |
%1291 = getelementptr i8* %ppu_state, i32 1568 | |
%1292 = bitcast i8* %1291 to i64* | |
store i64 683200, i64* %1292, align 8 | |
%1293 = getelementptr i8* %ppu_state, i32 1664 | |
%1294 = bitcast i8* %1293 to i32* | |
store i32 %1287, i32* %1294, align 4 | |
switch i32 %1287, label %instr_0x000A6CBC_unknown_function [ | |
i32 469328, label %instr_0x000A6CBC_0x00072950 | |
] | |
instr_0x000A6CBC_unknown_function: ; preds = %instr_0x000A6CBC | |
%1295 = call i32 @execute_unknown_function(i8* %ppu_state, i64 0) | |
br label %instr_0x000A6CC0 | |
instr_0x000A6CBC_0x00072950: ; preds = %instr_0x000A6CBC | |
%1296 = load i64* inttoptr (i64 8623353112 to i64*) | |
%1297 = inttoptr i64 %1296 to i32 (i8*, i64)* | |
%1298 = call i32 %1297(i8* %ppu_state, i64 0) | |
%1299 = icmp eq i32 %1298, -1 | |
br i1 %1299, label %instr_0x000A6CBC_then_all_fs, label %instr_0x000A6CBC_merge_all_fs | |
instr_0x000A6CBC_then_all_fs: ; preds = %instr_0x000A6CBC_0x00072950 | |
ret i32 0 | |
instr_0x000A6CBC_merge_all_fs: ; preds = %instr_0x000A6CBC_0x00072950 | |
br label %instr_0x000A6CC0 | |
instr_0x000A6CC0: ; preds = %instr_0x000A6CBC_merge_all_fs, %instr_0x000A6CBC_unknown_function | |
%1300 = getelementptr i8* %ppu_state, i32 776 | |
%1301 = bitcast i8* %1300 to i64* | |
%1302 = load i64* %1301, align 8 | |
%1303 = add i64 %1302, 40 | |
%1304 = and i64 %1303, 4294967295 | |
%1305 = add i64 %1304, 2147418112 | |
%1306 = inttoptr i64 %1305 to i64* | |
%1307 = load i64* %1306 | |
%1308 = call i64 @llvm.bswap.i64(i64 %1307) | |
%1309 = getelementptr i8* %ppu_state, i32 784 | |
%1310 = bitcast i8* %1309 to i64* | |
store i64 %1308, i64* %1310, align 8 | |
br label %instr_0x000A6CC4 | |
instr_0x000A6CC4: ; preds = %instr_0x000A6CC0 | |
%1311 = getelementptr i8* %ppu_state, i32 968 | |
%1312 = bitcast i8* %1311 to i64* | |
%1313 = load i64* %1312, align 8 | |
%1314 = getelementptr i8* %ppu_state, i32 1008 | |
%1315 = bitcast i8* %1314 to i64* | |
%1316 = load i64* %1315, align 8 | |
%1317 = sub i64 %1316, %1313 | |
%1318 = getelementptr i8* %ppu_state, i32 768 | |
%1319 = bitcast i8* %1318 to i64* | |
store i64 %1317, i64* %1319, align 8 | |
br label %instr_0x000A6CC8 | |
instr_0x000A6CC8: ; preds = %instr_0x000A6CC4 | |
%1320 = getelementptr i8* %ppu_state, i32 792 | |
%1321 = bitcast i8* %1320 to i32* | |
%1322 = load i32* %1321, align 8 | |
%1323 = sext i32 %1322 to i64 | |
%1324 = icmp slt i64 %1323, 0 | |
%1325 = icmp sgt i64 %1323, 0 | |
%1326 = icmp eq i64 %1323, 0 | |
%1327 = getelementptr i8* %ppu_state, i32 1540 | |
%1328 = bitcast i8* %1327 to i32* | |
%1329 = load i32* %1328, align 4 | |
%1330 = getelementptr i8* %ppu_state, i32 1544 | |
%1331 = bitcast i8* %1330 to i64* | |
%1332 = load i64* %1331, align 8 | |
%1333 = lshr i64 %1332, 31 | |
%1334 = and i64 %1333, 1 | |
%1335 = and i32 %1329, -16 | |
%1336 = zext i1 %1324 to i32 | |
%1337 = shl i32 %1336, 3 | |
%1338 = or i32 %1335, %1337 | |
%1339 = zext i1 %1325 to i32 | |
%1340 = shl i32 %1339, 2 | |
%1341 = or i32 %1338, %1340 | |
%1342 = zext i1 %1326 to i32 | |
%1343 = shl i32 %1342, 1 | |
%1344 = or i32 %1341, %1343 | |
%1345 = trunc i64 %1334 to i32 | |
%1346 = or i32 %1344, %1345 | |
%1347 = getelementptr i8* %ppu_state, i32 1540 | |
%1348 = bitcast i8* %1347 to i32* | |
store i32 %1346, i32* %1348, align 4 | |
br label %instr_0x000A6CCC | |
instr_0x000A6CCC: ; preds = %instr_0x000A6CC8 | |
%1349 = getelementptr i8* %ppu_state, i32 768 | |
%1350 = bitcast i8* %1349 to i32* | |
%1351 = load i32* %1350, align 8 | |
%1352 = zext i32 %1351 to i64 | |
%1353 = getelementptr i8* %ppu_state, i32 912 | |
%1354 = bitcast i8* %1353 to i32* | |
%1355 = load i32* %1354, align 8 | |
%1356 = zext i32 %1355 to i64 | |
%1357 = icmp ult i64 %1352, %1356 | |
%1358 = icmp ugt i64 %1352, %1356 | |
%1359 = icmp eq i64 %1352, %1356 | |
%1360 = getelementptr i8* %ppu_state, i32 1540 | |
%1361 = bitcast i8* %1360 to i32* | |
%1362 = load i32* %1361, align 4 | |
%1363 = getelementptr i8* %ppu_state, i32 1544 | |
%1364 = bitcast i8* %1363 to i64* | |
%1365 = load i64* %1364, align 8 | |
%1366 = lshr i64 %1365, 31 | |
%1367 = and i64 %1366, 1 | |
%1368 = and i32 %1362, -241 | |
%1369 = zext i1 %1357 to i32 | |
%1370 = shl i32 %1369, 7 | |
%1371 = or i32 %1368, %1370 | |
%1372 = zext i1 %1358 to i32 | |
%1373 = shl i32 %1372, 6 | |
%1374 = or i32 %1371, %1373 | |
%1375 = zext i1 %1359 to i32 | |
%1376 = shl i32 %1375, 5 | |
%1377 = or i32 %1374, %1376 | |
%1378 = trunc i64 %1367 to i32 | |
%1379 = shl i32 %1378, 4 | |
%1380 = or i32 %1377, %1379 | |
%1381 = getelementptr i8* %ppu_state, i32 1540 | |
%1382 = bitcast i8* %1381 to i32* | |
store i32 %1380, i32* %1382, align 4 | |
br label %instr_0x000A6CD0 | |
instr_0x000A6CD0: ; preds = %instr_0x000A6CCC | |
%1383 = getelementptr i8* %ppu_state, i32 1576 | |
%1384 = bitcast i8* %1383 to i64* | |
%1385 = load i64* %1384, align 8 | |
%1386 = getelementptr i8* %ppu_state, i32 1540 | |
%1387 = bitcast i8* %1386 to i32* | |
%1388 = load i32* %1387, align 4 | |
%1389 = lshr i32 %1388, 1 | |
%1390 = and i32 %1389, 1 | |
%1391 = trunc i32 %1390 to i1 | |
br i1 %1391, label %instr_0x000A6C98, label %instr_0x000A6CD4 | |
instr_0x000A6CD4: ; preds = %instr_0x000A6CD0 | |
%1392 = getelementptr i8* %ppu_state, i32 920 | |
%1393 = bitcast i8* %1392 to i64* | |
%1394 = load i64* %1393, align 8 | |
%1395 = getelementptr i8* %ppu_state, i32 920 | |
%1396 = bitcast i8* %1395 to i64* | |
%1397 = load i64* %1396, align 8 | |
%1398 = or i64 %1394, %1397 | |
%1399 = getelementptr i8* %ppu_state, i32 952 | |
%1400 = bitcast i8* %1399 to i64* | |
store i64 %1398, i64* %1400, align 8 | |
br label %instr_0x000A6CD8 | |
instr_0x000A6CD8: ; preds = %instr_0x000A6CD4 | |
%1401 = getelementptr i8* %ppu_state, i32 1016 | |
%1402 = bitcast i8* %1401 to i64* | |
%1403 = load i64* %1402, align 8 | |
%1404 = getelementptr i8* %ppu_state, i32 1016 | |
%1405 = bitcast i8* %1404 to i64* | |
%1406 = load i64* %1405, align 8 | |
%1407 = or i64 %1403, %1406 | |
%1408 = getelementptr i8* %ppu_state, i32 984 | |
%1409 = bitcast i8* %1408 to i64* | |
store i64 %1407, i64* %1409, align 8 | |
br label %instr_0x000A6CDC | |
instr_0x000A6CDC: ; preds = %instr_0x000A6E44, %instr_0x000A6CD8 | |
%1410 = getelementptr i8* %ppu_state, i32 952 | |
%1411 = bitcast i8* %1410 to i32* | |
%1412 = load i32* %1411, align 8 | |
%1413 = zext i32 %1412 to i64 | |
%1414 = getelementptr i8* %ppu_state, i32 912 | |
%1415 = bitcast i8* %1414 to i32* | |
%1416 = load i32* %1415, align 8 | |
%1417 = zext i32 %1416 to i64 | |
%1418 = icmp ult i64 %1413, %1417 | |
%1419 = icmp ugt i64 %1413, %1417 | |
%1420 = icmp eq i64 %1413, %1417 | |
%1421 = getelementptr i8* %ppu_state, i32 1540 | |
%1422 = bitcast i8* %1421 to i32* | |
%1423 = load i32* %1422, align 4 | |
%1424 = getelementptr i8* %ppu_state, i32 1544 | |
%1425 = bitcast i8* %1424 to i64* | |
%1426 = load i64* %1425, align 8 | |
%1427 = lshr i64 %1426, 31 | |
%1428 = and i64 %1427, 1 | |
%1429 = and i32 %1423, -16 | |
%1430 = zext i1 %1418 to i32 | |
%1431 = shl i32 %1430, 3 | |
%1432 = or i32 %1429, %1431 | |
%1433 = zext i1 %1419 to i32 | |
%1434 = shl i32 %1433, 2 | |
%1435 = or i32 %1432, %1434 | |
%1436 = zext i1 %1420 to i32 | |
%1437 = shl i32 %1436, 1 | |
%1438 = or i32 %1435, %1437 | |
%1439 = trunc i64 %1428 to i32 | |
%1440 = or i32 %1438, %1439 | |
%1441 = getelementptr i8* %ppu_state, i32 1540 | |
%1442 = bitcast i8* %1441 to i32* | |
store i32 %1440, i32* %1442, align 4 | |
br label %instr_0x000A6CE0 | |
instr_0x000A6CE0: ; preds = %instr_0x000A6CDC | |
%1443 = getelementptr i8* %ppu_state, i32 1576 | |
%1444 = bitcast i8* %1443 to i64* | |
%1445 = load i64* %1444, align 8 | |
%1446 = getelementptr i8* %ppu_state, i32 1540 | |
%1447 = bitcast i8* %1446 to i32* | |
%1448 = load i32* %1447, align 4 | |
%1449 = lshr i32 %1448, 3 | |
%1450 = and i32 %1449, 1 | |
%1451 = trunc i32 %1450 to i1 | |
br i1 %1451, label %instr_0x000A6D88, label %instr_0x000A6CE4 | |
instr_0x000A6CE4: ; preds = %instr_0x000A6DB4, %instr_0x000A6D84, %instr_0x000A6CE0 | |
%1452 = getelementptr i8* %ppu_state, i32 984 | |
%1453 = bitcast i8* %1452 to i32* | |
%1454 = load i32* %1453, align 8 | |
%1455 = zext i32 %1454 to i64 | |
%1456 = getelementptr i8* %ppu_state, i32 944 | |
%1457 = bitcast i8* %1456 to i32* | |
%1458 = load i32* %1457, align 8 | |
%1459 = zext i32 %1458 to i64 | |
%1460 = icmp ult i64 %1455, %1459 | |
%1461 = icmp ugt i64 %1455, %1459 | |
%1462 = icmp eq i64 %1455, %1459 | |
%1463 = getelementptr i8* %ppu_state, i32 1540 | |
%1464 = bitcast i8* %1463 to i32* | |
%1465 = load i32* %1464, align 4 | |
%1466 = getelementptr i8* %ppu_state, i32 1544 | |
%1467 = bitcast i8* %1466 to i64* | |
%1468 = load i64* %1467, align 8 | |
%1469 = lshr i64 %1468, 31 | |
%1470 = and i64 %1469, 1 | |
%1471 = and i32 %1465, -16 | |
%1472 = zext i1 %1460 to i32 | |
%1473 = shl i32 %1472, 3 | |
%1474 = or i32 %1471, %1473 | |
%1475 = zext i1 %1461 to i32 | |
%1476 = shl i32 %1475, 2 | |
%1477 = or i32 %1474, %1476 | |
%1478 = zext i1 %1462 to i32 | |
%1479 = shl i32 %1478, 1 | |
%1480 = or i32 %1477, %1479 | |
%1481 = trunc i64 %1470 to i32 | |
%1482 = or i32 %1480, %1481 | |
%1483 = getelementptr i8* %ppu_state, i32 1540 | |
%1484 = bitcast i8* %1483 to i32* | |
store i32 %1482, i32* %1484, align 4 | |
br label %instr_0x000A6CE8 | |
instr_0x000A6CE8: ; preds = %instr_0x000A6CE4 | |
%1485 = getelementptr i8* %ppu_state, i32 1576 | |
%1486 = bitcast i8* %1485 to i64* | |
%1487 = load i64* %1486, align 8 | |
%1488 = getelementptr i8* %ppu_state, i32 1540 | |
%1489 = bitcast i8* %1488 to i32* | |
%1490 = load i32* %1489, align 4 | |
%1491 = lshr i32 %1490, 2 | |
%1492 = and i32 %1491, 1 | |
%1493 = trunc i32 %1492 to i1 | |
%1494 = xor i1 %1493, true | |
br i1 %1494, label %instr_0x000A6D58, label %instr_0x000A6CEC | |
instr_0x000A6CEC: ; preds = %instr_0x000A6CE8 | |
%1495 = getelementptr i8* %ppu_state, i32 968 | |
%1496 = bitcast i8* %1495 to i64* | |
%1497 = load i64* %1496, align 8 | |
%1498 = getelementptr i8* %ppu_state, i32 984 | |
%1499 = bitcast i8* %1498 to i64* | |
%1500 = load i64* %1499, align 8 | |
%1501 = sub i64 %1500, %1497 | |
%1502 = getelementptr i8* %ppu_state, i32 992 | |
%1503 = bitcast i8* %1502 to i64* | |
store i64 %1501, i64* %1503, align 8 | |
br label %instr_0x000A6CF0 | |
instr_0x000A6CF0: ; preds = %instr_0x000A6CEC | |
%1504 = getelementptr i8* %ppu_state, i32 984 | |
%1505 = bitcast i8* %1504 to i64* | |
%1506 = load i64* %1505, align 8 | |
%1507 = getelementptr i8* %ppu_state, i32 984 | |
%1508 = bitcast i8* %1507 to i64* | |
%1509 = load i64* %1508, align 8 | |
%1510 = or i64 %1506, %1509 | |
%1511 = getelementptr i8* %ppu_state, i32 1008 | |
%1512 = bitcast i8* %1511 to i64* | |
store i64 %1510, i64* %1512, align 8 | |
br label %instr_0x000A6CF4 | |
instr_0x000A6CF4: ; preds = %instr_0x000A6CF0 | |
%1513 = getelementptr i8* %ppu_state, i32 1016 | |
%1514 = bitcast i8* %1513 to i64* | |
%1515 = load i64* %1514, align 8 | |
%1516 = and i64 %1515, 4294967295 | |
%1517 = getelementptr i8* %ppu_state, i32 976 | |
%1518 = bitcast i8* %1517 to i64* | |
store i64 %1516, i64* %1518, align 8 | |
br label %instr_0x000A6CF8 | |
instr_0x000A6CF8: ; preds = %instr_0x000A6D54, %instr_0x000A6CF4 | |
%1519 = getelementptr i8* %ppu_state, i32 928 | |
%1520 = bitcast i8* %1519 to i64* | |
%1521 = load i64* %1520, align 8 | |
%1522 = getelementptr i8* %ppu_state, i32 984 | |
%1523 = bitcast i8* %1522 to i64* | |
%1524 = load i64* %1523, align 8 | |
%1525 = add i64 %1521, %1524 | |
%1526 = getelementptr i8* %ppu_state, i32 984 | |
%1527 = bitcast i8* %1526 to i64* | |
store i64 %1525, i64* %1527, align 8 | |
br label %instr_0x000A6CFC | |
instr_0x000A6CFC: ; preds = %instr_0x000A6CF8 | |
%1528 = getelementptr i8* %ppu_state, i32 776 | |
%1529 = bitcast i8* %1528 to i64* | |
%1530 = load i64* %1529, align 8 | |
%1531 = add i64 %1530, 40 | |
%1532 = getelementptr i8* %ppu_state, i32 784 | |
%1533 = bitcast i8* %1532 to i64* | |
%1534 = load i64* %1533, align 8 | |
%1535 = call i64 @llvm.bswap.i64(i64 %1534) | |
%1536 = and i64 %1531, 4294967295 | |
%1537 = add i64 %1536, 2147418112 | |
%1538 = inttoptr i64 %1537 to i64* | |
store i64 %1535, i64* %1538 | |
br label %instr_0x000A6D00 | |
instr_0x000A6D00: ; preds = %instr_0x000A6CFC | |
%1539 = getelementptr i8* %ppu_state, i32 984 | |
%1540 = bitcast i8* %1539 to i64* | |
%1541 = load i64* %1540, align 8 | |
%1542 = and i64 %1541, 4294967295 | |
%1543 = getelementptr i8* %ppu_state, i32 1000 | |
%1544 = bitcast i8* %1543 to i64* | |
store i64 %1542, i64* %1544, align 8 | |
br label %instr_0x000A6D04 | |
instr_0x000A6D04: ; preds = %instr_0x000A6D00 | |
%1545 = getelementptr i8* %ppu_state, i32 960 | |
%1546 = bitcast i8* %1545 to i64* | |
%1547 = load i64* %1546, align 8 | |
%1548 = add i64 %1547, 0 | |
%1549 = and i64 %1548, 4294967295 | |
%1550 = add i64 %1549, 2147418112 | |
%1551 = inttoptr i64 %1550 to i32* | |
%1552 = load i32* %1551 | |
%1553 = call i32 @llvm.bswap.i32(i32 %1552) | |
%1554 = zext i32 %1553 to i64 | |
%1555 = getelementptr i8* %ppu_state, i32 768 | |
%1556 = bitcast i8* %1555 to i64* | |
store i64 %1554, i64* %1556, align 8 | |
br label %instr_0x000A6D08 | |
instr_0x000A6D08: ; preds = %instr_0x000A6D04 | |
%1557 = getelementptr i8* %ppu_state, i32 976 | |
%1558 = bitcast i8* %1557 to i64* | |
%1559 = load i64* %1558, align 8 | |
%1560 = getelementptr i8* %ppu_state, i32 976 | |
%1561 = bitcast i8* %1560 to i64* | |
%1562 = load i64* %1561, align 8 | |
%1563 = or i64 %1559, %1562 | |
%1564 = getelementptr i8* %ppu_state, i32 800 | |
%1565 = bitcast i8* %1564 to i64* | |
store i64 %1563, i64* %1565, align 8 | |
br label %instr_0x000A6D0C | |
instr_0x000A6D0C: ; preds = %instr_0x000A6D08 | |
%1566 = getelementptr i8* %ppu_state, i32 960 | |
%1567 = bitcast i8* %1566 to i64* | |
%1568 = load i64* %1567, align 8 | |
%1569 = add i64 %1568, 4 | |
%1570 = and i64 %1569, 4294967295 | |
%1571 = add i64 %1570, 2147418112 | |
%1572 = inttoptr i64 %1571 to i32* | |
%1573 = load i32* %1572 | |
%1574 = call i32 @llvm.bswap.i32(i32 %1573) | |
%1575 = zext i32 %1574 to i64 | |
%1576 = getelementptr i8* %ppu_state, i32 784 | |
%1577 = bitcast i8* %1576 to i64* | |
store i64 %1575, i64* %1577, align 8 | |
br label %instr_0x000A6D10 | |
instr_0x000A6D10: ; preds = %instr_0x000A6D0C | |
%1578 = getelementptr i8* %ppu_state, i32 1000 | |
%1579 = bitcast i8* %1578 to i64* | |
%1580 = load i64* %1579, align 8 | |
%1581 = getelementptr i8* %ppu_state, i32 1000 | |
%1582 = bitcast i8* %1581 to i64* | |
%1583 = load i64* %1582, align 8 | |
%1584 = or i64 %1580, %1583 | |
%1585 = getelementptr i8* %ppu_state, i32 792 | |
%1586 = bitcast i8* %1585 to i64* | |
store i64 %1584, i64* %1586, align 8 | |
br label %instr_0x000A6D14 | |
instr_0x000A6D14: ; preds = %instr_0x000A6D10 | |
%1587 = getelementptr i8* %ppu_state, i32 768 | |
%1588 = bitcast i8* %1587 to i64* | |
%1589 = load i64* %1588, align 8 | |
%1590 = getelementptr i8* %ppu_state, i32 1576 | |
%1591 = bitcast i8* %1590 to i64* | |
store i64 %1589, i64* %1591, align 8 | |
br label %instr_0x000A6D18 | |
instr_0x000A6D18: ; preds = %instr_0x000A6D14 | |
%1592 = getelementptr i8* %ppu_state, i32 992 | |
%1593 = bitcast i8* %1592 to i64* | |
%1594 = load i64* %1593, align 8 | |
%1595 = getelementptr i8* %ppu_state, i32 928 | |
%1596 = bitcast i8* %1595 to i64* | |
%1597 = load i64* %1596, align 8 | |
%1598 = add i64 %1594, %1597 | |
%1599 = getelementptr i8* %ppu_state, i32 992 | |
%1600 = bitcast i8* %1599 to i64* | |
store i64 %1598, i64* %1600, align 8 | |
br label %instr_0x000A6D1C | |
instr_0x000A6D1C: ; preds = %instr_0x000A6D18 | |
%1601 = getelementptr i8* %ppu_state, i32 1576 | |
%1602 = bitcast i8* %1601 to i64* | |
%1603 = load i64* %1602, align 8 | |
%1604 = and i64 %1603, -4 | |
%1605 = trunc i64 %1604 to i32 | |
%1606 = getelementptr i8* %ppu_state, i32 1576 | |
%1607 = bitcast i8* %1606 to i64* | |
%1608 = load i64* %1607, align 8 | |
%1609 = getelementptr i8* %ppu_state, i32 1568 | |
%1610 = bitcast i8* %1609 to i64* | |
store i64 683296, i64* %1610, align 8 | |
%1611 = getelementptr i8* %ppu_state, i32 1664 | |
%1612 = bitcast i8* %1611 to i32* | |
store i32 %1605, i32* %1612, align 4 | |
switch i32 %1605, label %instr_0x000A6D1C_unknown_function [ | |
i32 469328, label %instr_0x000A6D1C_0x00072950 | |
] | |
instr_0x000A6D1C_unknown_function: ; preds = %instr_0x000A6D1C | |
%1613 = call i32 @execute_unknown_function(i8* %ppu_state, i64 0) | |
br label %instr_0x000A6D20 | |
instr_0x000A6D1C_0x00072950: ; preds = %instr_0x000A6D1C | |
%1614 = load i64* inttoptr (i64 8623353112 to i64*) | |
%1615 = inttoptr i64 %1614 to i32 (i8*, i64)* | |
%1616 = call i32 %1615(i8* %ppu_state, i64 0) | |
%1617 = icmp eq i32 %1616, -1 | |
br i1 %1617, label %instr_0x000A6D1C_then_all_fs, label %instr_0x000A6D1C_merge_all_fs | |
instr_0x000A6D1C_then_all_fs: ; preds = %instr_0x000A6D1C_0x00072950 | |
ret i32 0 | |
instr_0x000A6D1C_merge_all_fs: ; preds = %instr_0x000A6D1C_0x00072950 | |
br label %instr_0x000A6D20 | |
instr_0x000A6D20: ; preds = %instr_0x000A6D1C_merge_all_fs, %instr_0x000A6D1C_unknown_function | |
%1618 = getelementptr i8* %ppu_state, i32 776 | |
%1619 = bitcast i8* %1618 to i64* | |
%1620 = load i64* %1619, align 8 | |
%1621 = add i64 %1620, 40 | |
%1622 = and i64 %1621, 4294967295 | |
%1623 = add i64 %1622, 2147418112 | |
%1624 = inttoptr i64 %1623 to i64* | |
%1625 = load i64* %1624 | |
%1626 = call i64 @llvm.bswap.i64(i64 %1625) | |
%1627 = getelementptr i8* %ppu_state, i32 784 | |
%1628 = bitcast i8* %1627 to i64* | |
store i64 %1626, i64* %1628, align 8 | |
br label %instr_0x000A6D24 | |
instr_0x000A6D24: ; preds = %instr_0x000A6D20 | |
%1629 = getelementptr i8* %ppu_state, i32 1000 | |
%1630 = bitcast i8* %1629 to i64* | |
%1631 = load i64* %1630, align 8 | |
%1632 = getelementptr i8* %ppu_state, i32 1000 | |
%1633 = bitcast i8* %1632 to i64* | |
%1634 = load i64* %1633, align 8 | |
%1635 = or i64 %1631, %1634 | |
%1636 = getelementptr i8* %ppu_state, i32 800 | |
%1637 = bitcast i8* %1636 to i64* | |
store i64 %1635, i64* %1637, align 8 | |
br label %instr_0x000A6D28 | |
instr_0x000A6D28: ; preds = %instr_0x000A6D24 | |
%1638 = getelementptr i8* %ppu_state, i32 792 | |
%1639 = bitcast i8* %1638 to i32* | |
%1640 = load i32* %1639, align 8 | |
%1641 = sext i32 %1640 to i64 | |
%1642 = icmp slt i64 %1641, 0 | |
%1643 = icmp sgt i64 %1641, 0 | |
%1644 = icmp eq i64 %1641, 0 | |
%1645 = getelementptr i8* %ppu_state, i32 1540 | |
%1646 = bitcast i8* %1645 to i32* | |
%1647 = load i32* %1646, align 4 | |
%1648 = getelementptr i8* %ppu_state, i32 1544 | |
%1649 = bitcast i8* %1648 to i64* | |
%1650 = load i64* %1649, align 8 | |
%1651 = lshr i64 %1650, 31 | |
%1652 = and i64 %1651, 1 | |
%1653 = and i32 %1647, -16 | |
%1654 = zext i1 %1642 to i32 | |
%1655 = shl i32 %1654, 3 | |
%1656 = or i32 %1653, %1655 | |
%1657 = zext i1 %1643 to i32 | |
%1658 = shl i32 %1657, 2 | |
%1659 = or i32 %1656, %1658 | |
%1660 = zext i1 %1644 to i32 | |
%1661 = shl i32 %1660, 1 | |
%1662 = or i32 %1659, %1661 | |
%1663 = trunc i64 %1652 to i32 | |
%1664 = or i32 %1662, %1663 | |
%1665 = getelementptr i8* %ppu_state, i32 1540 | |
%1666 = bitcast i8* %1665 to i32* | |
store i32 %1664, i32* %1666, align 4 | |
br label %instr_0x000A6D2C | |
instr_0x000A6D2C: ; preds = %instr_0x000A6D28 | |
%1667 = getelementptr i8* %ppu_state, i32 936 | |
%1668 = bitcast i8* %1667 to i64* | |
%1669 = load i64* %1668, align 8 | |
%1670 = getelementptr i8* %ppu_state, i32 936 | |
%1671 = bitcast i8* %1670 to i64* | |
%1672 = load i64* %1671, align 8 | |
%1673 = or i64 %1669, %1672 | |
%1674 = getelementptr i8* %ppu_state, i32 808 | |
%1675 = bitcast i8* %1674 to i64* | |
store i64 %1673, i64* %1675, align 8 | |
br label %instr_0x000A6D30 | |
instr_0x000A6D30: ; preds = %instr_0x000A6D2C | |
%1676 = getelementptr i8* %ppu_state, i32 1576 | |
%1677 = bitcast i8* %1676 to i64* | |
%1678 = load i64* %1677, align 8 | |
%1679 = getelementptr i8* %ppu_state, i32 1540 | |
%1680 = bitcast i8* %1679 to i32* | |
%1681 = load i32* %1680, align 4 | |
%1682 = lshr i32 %1681, 3 | |
%1683 = and i32 %1682, 1 | |
%1684 = trunc i32 %1683 to i1 | |
br i1 %1684, label %instr_0x000A6D48, label %instr_0x000A6D34 | |
instr_0x000A6D34: ; preds = %instr_0x000A6D30 | |
%1685 = getelementptr i8* %ppu_state, i32 1576 | |
%1686 = bitcast i8* %1685 to i64* | |
%1687 = load i64* %1686, align 8 | |
%1688 = getelementptr i8* %ppu_state, i32 1540 | |
%1689 = bitcast i8* %1688 to i32* | |
%1690 = load i32* %1689, align 4 | |
%1691 = lshr i32 %1690, 1 | |
%1692 = and i32 %1691, 1 | |
%1693 = trunc i32 %1692 to i1 | |
%1694 = xor i1 %1693, true | |
br i1 %1694, label %instr_0x000A6DD4, label %instr_0x000A6D38 | |
instr_0x000A6D38: ; preds = %instr_0x000A6D34 | |
%1695 = phi i32 [ 683316, %instr_0x000A6D34 ] | |
%1696 = getelementptr i8* %ppu_state, i32 1664 | |
%1697 = bitcast i8* %1696 to i32* | |
store i32 683320, i32* %1697, align 4 | |
%1698 = zext i32 %1695 to i64 | |
%1699 = or i64 %1698, 2932174172979200 | |
%1700 = load i64* inttoptr (i64 8623353120 to i64*) | |
%1701 = inttoptr i64 %1700 to i32 (i8*, i64)* | |
%1702 = call i32 %1701(i8* %ppu_state, i64 %1699) | |
%1703 = icmp eq i32 %1702, -1 | |
br i1 %1703, label %instr_0x000A6D38_then_all_fs, label %instr_0x000A6D38_merge_all_fs | |
instr_0x000A6D38_then_all_fs: ; preds = %instr_0x000A6D38 | |
ret i32 0 | |
instr_0x000A6D38_merge_all_fs: ; preds = %instr_0x000A6D38 | |
%1704 = icmp ne i32 %1702, 0 | |
br i1 %1704, label %instr_0x000A6D38_then_0, label %instr_0x000A6D38_merge_0 | |
instr_0x000A6D38_then_0: ; preds = %instr_0x000A6D38_merge_all_fs | |
%1705 = zext i32 %1702 to i64 | |
%1706 = or i64 %1705, 2932174172979200 | |
%1707 = call i32 @execute_unknown_block(i8* %ppu_state, i64 %1706) | |
br label %instr_0x000A6D38_merge_0 | |
instr_0x000A6D38_merge_0: ; preds = %instr_0x000A6D38_then_0, %instr_0x000A6D38_merge_all_fs | |
ret i32 0 | |
instr_0x000A6D48: ; preds = %instr_0x000A6D30 | |
%1708 = getelementptr i8* %ppu_state, i32 992 | |
%1709 = bitcast i8* %1708 to i64* | |
%1710 = load i64* %1709, align 8 | |
%1711 = getelementptr i8* %ppu_state, i32 968 | |
%1712 = bitcast i8* %1711 to i64* | |
%1713 = load i64* %1712, align 8 | |
%1714 = add i64 %1710, %1713 | |
%1715 = getelementptr i8* %ppu_state, i32 768 | |
%1716 = bitcast i8* %1715 to i64* | |
store i64 %1714, i64* %1716, align 8 | |
br label %instr_0x000A6D4C | |
instr_0x000A6D4C: ; preds = %instr_0x000A6D48 | |
%1717 = getelementptr i8* %ppu_state, i32 984 | |
%1718 = bitcast i8* %1717 to i64* | |
%1719 = load i64* %1718, align 8 | |
%1720 = getelementptr i8* %ppu_state, i32 984 | |
%1721 = bitcast i8* %1720 to i64* | |
%1722 = load i64* %1721, align 8 | |
%1723 = or i64 %1719, %1722 | |
%1724 = getelementptr i8* %ppu_state, i32 1008 | |
%1725 = bitcast i8* %1724 to i64* | |
store i64 %1723, i64* %1725, align 8 | |
br label %instr_0x000A6D50 | |
instr_0x000A6D50: ; preds = %instr_0x000A6D4C | |
%1726 = getelementptr i8* %ppu_state, i32 768 | |
%1727 = bitcast i8* %1726 to i32* | |
%1728 = load i32* %1727, align 8 | |
%1729 = zext i32 %1728 to i64 | |
%1730 = getelementptr i8* %ppu_state, i32 944 | |
%1731 = bitcast i8* %1730 to i32* | |
%1732 = load i32* %1731, align 8 | |
%1733 = zext i32 %1732 to i64 | |
%1734 = icmp ult i64 %1729, %1733 | |
%1735 = icmp ugt i64 %1729, %1733 | |
%1736 = icmp eq i64 %1729, %1733 | |
%1737 = getelementptr i8* %ppu_state, i32 1540 | |
%1738 = bitcast i8* %1737 to i32* | |
%1739 = load i32* %1738, align 4 | |
%1740 = getelementptr i8* %ppu_state, i32 1544 | |
%1741 = bitcast i8* %1740 to i64* | |
%1742 = load i64* %1741, align 8 | |
%1743 = lshr i64 %1742, 31 | |
%1744 = and i64 %1743, 1 | |
%1745 = and i32 %1739, -16 | |
%1746 = zext i1 %1734 to i32 | |
%1747 = shl i32 %1746, 3 | |
%1748 = or i32 %1745, %1747 | |
%1749 = zext i1 %1735 to i32 | |
%1750 = shl i32 %1749, 2 | |
%1751 = or i32 %1748, %1750 | |
%1752 = zext i1 %1736 to i32 | |
%1753 = shl i32 %1752, 1 | |
%1754 = or i32 %1751, %1753 | |
%1755 = trunc i64 %1744 to i32 | |
%1756 = or i32 %1754, %1755 | |
%1757 = getelementptr i8* %ppu_state, i32 1540 | |
%1758 = bitcast i8* %1757 to i32* | |
store i32 %1756, i32* %1758, align 4 | |
br label %instr_0x000A6D54 | |
instr_0x000A6D54: ; preds = %instr_0x000A6D50 | |
%1759 = getelementptr i8* %ppu_state, i32 1576 | |
%1760 = bitcast i8* %1759 to i64* | |
%1761 = load i64* %1760, align 8 | |
%1762 = getelementptr i8* %ppu_state, i32 1540 | |
%1763 = bitcast i8* %1762 to i32* | |
%1764 = load i32* %1763, align 4 | |
%1765 = lshr i32 %1764, 2 | |
%1766 = and i32 %1765, 1 | |
%1767 = trunc i32 %1766 to i1 | |
br i1 %1767, label %instr_0x000A6CF8, label %instr_0x000A6D58 | |
instr_0x000A6D58: ; preds = %instr_0x000A6D54, %instr_0x000A6CE8 | |
%1768 = getelementptr i8* %ppu_state, i32 944 | |
%1769 = bitcast i8* %1768 to i32* | |
%1770 = load i32* %1769, align 8 | |
%1771 = sext i32 %1770 to i64 | |
%1772 = getelementptr i8* %ppu_state, i32 984 | |
%1773 = bitcast i8* %1772 to i32* | |
%1774 = load i32* %1773, align 8 | |
%1775 = sext i32 %1774 to i64 | |
%1776 = icmp slt i64 %1771, %1775 | |
%1777 = icmp sgt i64 %1771, %1775 | |
%1778 = icmp eq i64 %1771, %1775 | |
%1779 = getelementptr i8* %ppu_state, i32 1540 | |
%1780 = bitcast i8* %1779 to i32* | |
%1781 = load i32* %1780, align 4 | |
%1782 = getelementptr i8* %ppu_state, i32 1544 | |
%1783 = bitcast i8* %1782 to i64* | |
%1784 = load i64* %1783, align 8 | |
%1785 = lshr i64 %1784, 31 | |
%1786 = and i64 %1785, 1 | |
%1787 = and i32 %1781, -16 | |
%1788 = zext i1 %1776 to i32 | |
%1789 = shl i32 %1788, 3 | |
%1790 = or i32 %1787, %1789 | |
%1791 = zext i1 %1777 to i32 | |
%1792 = shl i32 %1791, 2 | |
%1793 = or i32 %1790, %1792 | |
%1794 = zext i1 %1778 to i32 | |
%1795 = shl i32 %1794, 1 | |
%1796 = or i32 %1793, %1795 | |
%1797 = trunc i64 %1786 to i32 | |
%1798 = or i32 %1796, %1797 | |
%1799 = getelementptr i8* %ppu_state, i32 1540 | |
%1800 = bitcast i8* %1799 to i32* | |
store i32 %1798, i32* %1800, align 4 | |
br label %instr_0x000A6D5C | |
instr_0x000A6D5C: ; preds = %instr_0x000A6D58 | |
%1801 = getelementptr i8* %ppu_state, i32 1576 | |
%1802 = bitcast i8* %1801 to i64* | |
%1803 = load i64* %1802, align 8 | |
%1804 = getelementptr i8* %ppu_state, i32 1540 | |
%1805 = bitcast i8* %1804 to i32* | |
%1806 = load i32* %1805, align 4 | |
%1807 = lshr i32 %1806, 1 | |
%1808 = and i32 %1807, 1 | |
%1809 = trunc i32 %1808 to i1 | |
br i1 %1809, label %instr_0x000A6DE0, label %instr_0x000A6D60 | |
instr_0x000A6D60: ; preds = %instr_0x000A6DDC, %instr_0x000A6D5C | |
%1810 = getelementptr i8* %ppu_state, i32 952 | |
%1811 = bitcast i8* %1810 to i32* | |
%1812 = load i32* %1811, align 8 | |
%1813 = sext i32 %1812 to i64 | |
%1814 = getelementptr i8* %ppu_state, i32 912 | |
%1815 = bitcast i8* %1814 to i32* | |
%1816 = load i32* %1815, align 8 | |
%1817 = sext i32 %1816 to i64 | |
%1818 = icmp slt i64 %1813, %1817 | |
%1819 = icmp sgt i64 %1813, %1817 | |
%1820 = icmp eq i64 %1813, %1817 | |
%1821 = getelementptr i8* %ppu_state, i32 1540 | |
%1822 = bitcast i8* %1821 to i32* | |
%1823 = load i32* %1822, align 4 | |
%1824 = getelementptr i8* %ppu_state, i32 1544 | |
%1825 = bitcast i8* %1824 to i64* | |
%1826 = load i64* %1825, align 8 | |
%1827 = lshr i64 %1826, 31 | |
%1828 = and i64 %1827, 1 | |
%1829 = and i32 %1823, -16 | |
%1830 = zext i1 %1818 to i32 | |
%1831 = shl i32 %1830, 3 | |
%1832 = or i32 %1829, %1831 | |
%1833 = zext i1 %1819 to i32 | |
%1834 = shl i32 %1833, 2 | |
%1835 = or i32 %1832, %1834 | |
%1836 = zext i1 %1820 to i32 | |
%1837 = shl i32 %1836, 1 | |
%1838 = or i32 %1835, %1837 | |
%1839 = trunc i64 %1828 to i32 | |
%1840 = or i32 %1838, %1839 | |
%1841 = getelementptr i8* %ppu_state, i32 1540 | |
%1842 = bitcast i8* %1841 to i32* | |
store i32 %1840, i32* %1842, align 4 | |
br label %instr_0x000A6D64 | |
instr_0x000A6D64: ; preds = %instr_0x000A6D60 | |
%1843 = getelementptr i8* %ppu_state, i32 1576 | |
%1844 = bitcast i8* %1843 to i64* | |
%1845 = load i64* %1844, align 8 | |
%1846 = getelementptr i8* %ppu_state, i32 1540 | |
%1847 = bitcast i8* %1846 to i32* | |
%1848 = load i32* %1847, align 4 | |
%1849 = lshr i32 %1848, 1 | |
%1850 = and i32 %1849, 1 | |
%1851 = trunc i32 %1850 to i1 | |
br i1 %1851, label %instr_0x000A6E18, label %instr_0x000A6D68 | |
instr_0x000A6D68: ; preds = %instr_0x000A6D64 | |
%1852 = getelementptr i8* %ppu_state, i32 968 | |
%1853 = bitcast i8* %1852 to i64* | |
%1854 = load i64* %1853, align 8 | |
%1855 = getelementptr i8* %ppu_state, i32 984 | |
%1856 = bitcast i8* %1855 to i64* | |
%1857 = load i64* %1856, align 8 | |
%1858 = sub i64 %1857, %1854 | |
%1859 = getelementptr i8* %ppu_state, i32 984 | |
%1860 = bitcast i8* %1859 to i64* | |
store i64 %1858, i64* %1860, align 8 | |
br label %instr_0x000A6D6C | |
instr_0x000A6D6C: ; preds = %instr_0x000A6D68 | |
%1861 = getelementptr i8* %ppu_state, i32 952 | |
%1862 = bitcast i8* %1861 to i64* | |
%1863 = load i64* %1862, align 8 | |
%1864 = and i64 %1863, 4294967295 | |
%1865 = getelementptr i8* %ppu_state, i32 792 | |
%1866 = bitcast i8* %1865 to i64* | |
store i64 %1864, i64* %1866, align 8 | |
br label %instr_0x000A6D70 | |
instr_0x000A6D70: ; preds = %instr_0x000A6D6C | |
%1867 = getelementptr i8* %ppu_state, i32 984 | |
%1868 = bitcast i8* %1867 to i64* | |
%1869 = load i64* %1868, align 8 | |
%1870 = and i64 %1869, 4294967295 | |
%1871 = getelementptr i8* %ppu_state, i32 800 | |
%1872 = bitcast i8* %1871 to i64* | |
store i64 %1870, i64* %1872, align 8 | |
br label %instr_0x000A6D74 | |
instr_0x000A6D74: ; preds = %instr_0x000A6D70 | |
%1873 = getelementptr i8* %ppu_state, i32 936 | |
%1874 = bitcast i8* %1873 to i64* | |
%1875 = load i64* %1874, align 8 | |
%1876 = getelementptr i8* %ppu_state, i32 936 | |
%1877 = bitcast i8* %1876 to i64* | |
%1878 = load i64* %1877, align 8 | |
%1879 = or i64 %1875, %1878 | |
%1880 = getelementptr i8* %ppu_state, i32 808 | |
%1881 = bitcast i8* %1880 to i64* | |
store i64 %1879, i64* %1881, align 8 | |
br label %instr_0x000A6D78 | |
instr_0x000A6D78: ; preds = %instr_0x000A6D74 | |
%1882 = getelementptr i8* %ppu_state, i32 952 | |
%1883 = bitcast i8* %1882 to i64* | |
%1884 = load i64* %1883, align 8 | |
%1885 = getelementptr i8* %ppu_state, i32 968 | |
%1886 = bitcast i8* %1885 to i64* | |
%1887 = load i64* %1886, align 8 | |
%1888 = add i64 %1884, %1887 | |
%1889 = getelementptr i8* %ppu_state, i32 952 | |
%1890 = bitcast i8* %1889 to i64* | |
store i64 %1888, i64* %1890, align 8 | |
br label %instr_0x000A6D7C | |
instr_0x000A6D7C: ; preds = %instr_0x000A6D78 | |
%1891 = getelementptr i8* %ppu_state, i32 1568 | |
%1892 = bitcast i8* %1891 to i64* | |
store i64 683392, i64* %1892, align 8 | |
%1893 = getelementptr i8* %ppu_state, i32 1664 | |
%1894 = bitcast i8* %1893 to i32* | |
store i32 681316, i32* %1894, align 4 | |
%1895 = load i64* inttoptr (i64 8623353112 to i64*) | |
%1896 = inttoptr i64 %1895 to i32 (i8*, i64)* | |
%1897 = call i32 %1896(i8* %ppu_state, i64 0) | |
%1898 = icmp eq i32 %1897, -1 | |
br i1 %1898, label %instr_0x000A6D7C_then_all_fs, label %instr_0x000A6D7C_merge_all_fs | |
instr_0x000A6D7C_then_all_fs: ; preds = %instr_0x000A6D7C | |
ret i32 0 | |
instr_0x000A6D7C_merge_all_fs: ; preds = %instr_0x000A6D7C | |
br label %instr_0x000A6D80 | |
instr_0x000A6D80: ; preds = %instr_0x000A6D7C_merge_all_fs | |
%1899 = getelementptr i8* %ppu_state, i32 952 | |
%1900 = bitcast i8* %1899 to i32* | |
%1901 = load i32* %1900, align 8 | |
%1902 = zext i32 %1901 to i64 | |
%1903 = getelementptr i8* %ppu_state, i32 912 | |
%1904 = bitcast i8* %1903 to i32* | |
%1905 = load i32* %1904, align 8 | |
%1906 = zext i32 %1905 to i64 | |
%1907 = icmp ult i64 %1902, %1906 | |
%1908 = icmp ugt i64 %1902, %1906 | |
%1909 = icmp eq i64 %1902, %1906 | |
%1910 = getelementptr i8* %ppu_state, i32 1540 | |
%1911 = bitcast i8* %1910 to i32* | |
%1912 = load i32* %1911, align 4 | |
%1913 = getelementptr i8* %ppu_state, i32 1544 | |
%1914 = bitcast i8* %1913 to i64* | |
%1915 = load i64* %1914, align 8 | |
%1916 = lshr i64 %1915, 31 | |
%1917 = and i64 %1916, 1 | |
%1918 = and i32 %1912, -16 | |
%1919 = zext i1 %1907 to i32 | |
%1920 = shl i32 %1919, 3 | |
%1921 = or i32 %1918, %1920 | |
%1922 = zext i1 %1908 to i32 | |
%1923 = shl i32 %1922, 2 | |
%1924 = or i32 %1921, %1923 | |
%1925 = zext i1 %1909 to i32 | |
%1926 = shl i32 %1925, 1 | |
%1927 = or i32 %1924, %1926 | |
%1928 = trunc i64 %1917 to i32 | |
%1929 = or i32 %1927, %1928 | |
%1930 = getelementptr i8* %ppu_state, i32 1540 | |
%1931 = bitcast i8* %1930 to i32* | |
store i32 %1929, i32* %1931, align 4 | |
br label %instr_0x000A6D84 | |
instr_0x000A6D84: ; preds = %instr_0x000A6D80 | |
%1932 = getelementptr i8* %ppu_state, i32 1576 | |
%1933 = bitcast i8* %1932 to i64* | |
%1934 = load i64* %1933, align 8 | |
%1935 = getelementptr i8* %ppu_state, i32 1540 | |
%1936 = bitcast i8* %1935 to i32* | |
%1937 = load i32* %1936, align 4 | |
%1938 = lshr i32 %1937, 3 | |
%1939 = and i32 %1938, 1 | |
%1940 = trunc i32 %1939 to i1 | |
%1941 = xor i1 %1940, true | |
br i1 %1941, label %instr_0x000A6CE4, label %instr_0x000A6D88 | |
instr_0x000A6D88: ; preds = %instr_0x000A6D84, %instr_0x000A6CE0 | |
%1942 = getelementptr i8* %ppu_state, i32 776 | |
%1943 = bitcast i8* %1942 to i64* | |
%1944 = load i64* %1943, align 8 | |
%1945 = add i64 %1944, 40 | |
%1946 = getelementptr i8* %ppu_state, i32 784 | |
%1947 = bitcast i8* %1946 to i64* | |
%1948 = load i64* %1947, align 8 | |
%1949 = call i64 @llvm.bswap.i64(i64 %1948) | |
%1950 = and i64 %1945, 4294967295 | |
%1951 = add i64 %1950, 2147418112 | |
%1952 = inttoptr i64 %1951 to i64* | |
store i64 %1949, i64* %1952 | |
br label %instr_0x000A6D8C | |
instr_0x000A6D8C: ; preds = %instr_0x000A6D88 | |
%1953 = getelementptr i8* %ppu_state, i32 960 | |
%1954 = bitcast i8* %1953 to i64* | |
%1955 = load i64* %1954, align 8 | |
%1956 = add i64 %1955, 0 | |
%1957 = and i64 %1956, 4294967295 | |
%1958 = add i64 %1957, 2147418112 | |
%1959 = inttoptr i64 %1958 to i32* | |
%1960 = load i32* %1959 | |
%1961 = call i32 @llvm.bswap.i32(i32 %1960) | |
%1962 = zext i32 %1961 to i64 | |
%1963 = getelementptr i8* %ppu_state, i32 768 | |
%1964 = bitcast i8* %1963 to i64* | |
store i64 %1962, i64* %1964, align 8 | |
br label %instr_0x000A6D90 | |
instr_0x000A6D90: ; preds = %instr_0x000A6D8C | |
%1965 = getelementptr i8* %ppu_state, i32 952 | |
%1966 = bitcast i8* %1965 to i64* | |
%1967 = load i64* %1966, align 8 | |
%1968 = and i64 %1967, 4294967295 | |
%1969 = getelementptr i8* %ppu_state, i32 1008 | |
%1970 = bitcast i8* %1969 to i64* | |
store i64 %1968, i64* %1970, align 8 | |
br label %instr_0x000A6D94 | |
instr_0x000A6D94: ; preds = %instr_0x000A6D90 | |
%1971 = getelementptr i8* %ppu_state, i32 1016 | |
%1972 = bitcast i8* %1971 to i64* | |
%1973 = load i64* %1972, align 8 | |
%1974 = and i64 %1973, 4294967295 | |
%1975 = getelementptr i8* %ppu_state, i32 792 | |
%1976 = bitcast i8* %1975 to i64* | |
store i64 %1974, i64* %1976, align 8 | |
br label %instr_0x000A6D98 | |
instr_0x000A6D98: ; preds = %instr_0x000A6D94 | |
%1977 = getelementptr i8* %ppu_state, i32 960 | |
%1978 = bitcast i8* %1977 to i64* | |
%1979 = load i64* %1978, align 8 | |
%1980 = add i64 %1979, 4 | |
%1981 = and i64 %1980, 4294967295 | |
%1982 = add i64 %1981, 2147418112 | |
%1983 = inttoptr i64 %1982 to i32* | |
%1984 = load i32* %1983 | |
%1985 = call i32 @llvm.bswap.i32(i32 %1984) | |
%1986 = zext i32 %1985 to i64 | |
%1987 = getelementptr i8* %ppu_state, i32 784 | |
%1988 = bitcast i8* %1987 to i64* | |
store i64 %1986, i64* %1988, align 8 | |
br label %instr_0x000A6D9C | |
instr_0x000A6D9C: ; preds = %instr_0x000A6D98 | |
%1989 = getelementptr i8* %ppu_state, i32 1008 | |
%1990 = bitcast i8* %1989 to i64* | |
%1991 = load i64* %1990, align 8 | |
%1992 = getelementptr i8* %ppu_state, i32 1008 | |
%1993 = bitcast i8* %1992 to i64* | |
%1994 = load i64* %1993, align 8 | |
%1995 = or i64 %1991, %1994 | |
%1996 = getelementptr i8* %ppu_state, i32 800 | |
%1997 = bitcast i8* %1996 to i64* | |
store i64 %1995, i64* %1997, align 8 | |
br label %instr_0x000A6DA0 | |
instr_0x000A6DA0: ; preds = %instr_0x000A6D9C | |
%1998 = getelementptr i8* %ppu_state, i32 768 | |
%1999 = bitcast i8* %1998 to i64* | |
%2000 = load i64* %1999, align 8 | |
%2001 = getelementptr i8* %ppu_state, i32 1576 | |
%2002 = bitcast i8* %2001 to i64* | |
store i64 %2000, i64* %2002, align 8 | |
br label %instr_0x000A6DA4 | |
instr_0x000A6DA4: ; preds = %instr_0x000A6DA0 | |
%2003 = getelementptr i8* %ppu_state, i32 1576 | |
%2004 = bitcast i8* %2003 to i64* | |
%2005 = load i64* %2004, align 8 | |
%2006 = and i64 %2005, -4 | |
%2007 = trunc i64 %2006 to i32 | |
%2008 = getelementptr i8* %ppu_state, i32 1576 | |
%2009 = bitcast i8* %2008 to i64* | |
%2010 = load i64* %2009, align 8 | |
%2011 = getelementptr i8* %ppu_state, i32 1568 | |
%2012 = bitcast i8* %2011 to i64* | |
store i64 683432, i64* %2012, align 8 | |
%2013 = getelementptr i8* %ppu_state, i32 1664 | |
%2014 = bitcast i8* %2013 to i32* | |
store i32 %2007, i32* %2014, align 4 | |
switch i32 %2007, label %instr_0x000A6DA4_unknown_function [ | |
i32 469328, label %instr_0x000A6DA4_0x00072950 | |
] | |
instr_0x000A6DA4_unknown_function: ; preds = %instr_0x000A6DA4 | |
%2015 = call i32 @execute_unknown_function(i8* %ppu_state, i64 0) | |
br label %instr_0x000A6DA8 | |
instr_0x000A6DA4_0x00072950: ; preds = %instr_0x000A6DA4 | |
%2016 = load i64* inttoptr (i64 8623353112 to i64*) | |
%2017 = inttoptr i64 %2016 to i32 (i8*, i64)* | |
%2018 = call i32 %2017(i8* %ppu_state, i64 0) | |
%2019 = icmp eq i32 %2018, -1 | |
br i1 %2019, label %instr_0x000A6DA4_then_all_fs, label %instr_0x000A6DA4_merge_all_fs | |
instr_0x000A6DA4_then_all_fs: ; preds = %instr_0x000A6DA4_0x00072950 | |
ret i32 0 | |
instr_0x000A6DA4_merge_all_fs: ; preds = %instr_0x000A6DA4_0x00072950 | |
br label %instr_0x000A6DA8 | |
instr_0x000A6DA8: ; preds = %instr_0x000A6DA4_merge_all_fs, %instr_0x000A6DA4_unknown_function | |
%2020 = getelementptr i8* %ppu_state, i32 776 | |
%2021 = bitcast i8* %2020 to i64* | |
%2022 = load i64* %2021, align 8 | |
%2023 = add i64 %2022, 40 | |
%2024 = and i64 %2023, 4294967295 | |
%2025 = add i64 %2024, 2147418112 | |
%2026 = inttoptr i64 %2025 to i64* | |
%2027 = load i64* %2026 | |
%2028 = call i64 @llvm.bswap.i64(i64 %2027) | |
%2029 = getelementptr i8* %ppu_state, i32 784 | |
%2030 = bitcast i8* %2029 to i64* | |
store i64 %2028, i64* %2030, align 8 | |
br label %instr_0x000A6DAC | |
instr_0x000A6DAC: ; preds = %instr_0x000A6DA8 | |
%2031 = getelementptr i8* %ppu_state, i32 792 | |
%2032 = bitcast i8* %2031 to i32* | |
%2033 = load i32* %2032, align 8 | |
%2034 = sext i32 %2033 to i64 | |
%2035 = icmp slt i64 %2034, 0 | |
%2036 = icmp sgt i64 %2034, 0 | |
%2037 = icmp eq i64 %2034, 0 | |
%2038 = getelementptr i8* %ppu_state, i32 1540 | |
%2039 = bitcast i8* %2038 to i32* | |
%2040 = load i32* %2039, align 4 | |
%2041 = getelementptr i8* %ppu_state, i32 1544 | |
%2042 = bitcast i8* %2041 to i64* | |
%2043 = load i64* %2042, align 8 | |
%2044 = lshr i64 %2043, 31 | |
%2045 = and i64 %2044, 1 | |
%2046 = and i32 %2040, -16 | |
%2047 = zext i1 %2035 to i32 | |
%2048 = shl i32 %2047, 3 | |
%2049 = or i32 %2046, %2048 | |
%2050 = zext i1 %2036 to i32 | |
%2051 = shl i32 %2050, 2 | |
%2052 = or i32 %2049, %2051 | |
%2053 = zext i1 %2037 to i32 | |
%2054 = shl i32 %2053, 1 | |
%2055 = or i32 %2052, %2054 | |
%2056 = trunc i64 %2045 to i32 | |
%2057 = or i32 %2055, %2056 | |
%2058 = getelementptr i8* %ppu_state, i32 1540 | |
%2059 = bitcast i8* %2058 to i32* | |
store i32 %2057, i32* %2059, align 4 | |
br label %instr_0x000A6DB0 | |
instr_0x000A6DB0: ; preds = %instr_0x000A6DAC | |
%2060 = getelementptr i8* %ppu_state, i32 1576 | |
%2061 = bitcast i8* %2060 to i64* | |
%2062 = load i64* %2061, align 8 | |
%2063 = getelementptr i8* %ppu_state, i32 1540 | |
%2064 = bitcast i8* %2063 to i32* | |
%2065 = load i32* %2064, align 4 | |
%2066 = lshr i32 %2065, 3 | |
%2067 = and i32 %2066, 1 | |
%2068 = trunc i32 %2067 to i1 | |
br i1 %2068, label %instr_0x000A6DCC, label %instr_0x000A6DB4 | |
instr_0x000A6DB4: ; preds = %instr_0x000A6DB0 | |
%2069 = getelementptr i8* %ppu_state, i32 1576 | |
%2070 = bitcast i8* %2069 to i64* | |
%2071 = load i64* %2070, align 8 | |
%2072 = getelementptr i8* %ppu_state, i32 1540 | |
%2073 = bitcast i8* %2072 to i32* | |
%2074 = load i32* %2073, align 4 | |
%2075 = lshr i32 %2074, 1 | |
%2076 = and i32 %2075, 1 | |
%2077 = trunc i32 %2076 to i1 | |
%2078 = xor i1 %2077, true | |
br i1 %2078, label %instr_0x000A6CE4, label %instr_0x000A6DB8 | |
instr_0x000A6DB8: ; preds = %instr_0x000A6DB4 | |
%2079 = phi i32 [ 683444, %instr_0x000A6DB4 ] | |
%2080 = getelementptr i8* %ppu_state, i32 1664 | |
%2081 = bitcast i8* %2080 to i32* | |
store i32 683448, i32* %2081, align 4 | |
%2082 = zext i32 %2079 to i64 | |
%2083 = or i64 %2082, 2932174172979200 | |
%2084 = load i64* inttoptr (i64 8623353120 to i64*) | |
%2085 = inttoptr i64 %2084 to i32 (i8*, i64)* | |
%2086 = call i32 %2085(i8* %ppu_state, i64 %2083) | |
%2087 = icmp eq i32 %2086, -1 | |
br i1 %2087, label %instr_0x000A6DB8_then_all_fs, label %instr_0x000A6DB8_merge_all_fs | |
instr_0x000A6DB8_then_all_fs: ; preds = %instr_0x000A6DB8 | |
ret i32 0 | |
instr_0x000A6DB8_merge_all_fs: ; preds = %instr_0x000A6DB8 | |
%2088 = icmp ne i32 %2086, 0 | |
br i1 %2088, label %instr_0x000A6DB8_then_0, label %instr_0x000A6DB8_merge_0 | |
instr_0x000A6DB8_then_0: ; preds = %instr_0x000A6DB8_merge_all_fs | |
%2089 = zext i32 %2086 to i64 | |
%2090 = or i64 %2089, 2932174172979200 | |
%2091 = call i32 @execute_unknown_block(i8* %ppu_state, i64 %2090) | |
br label %instr_0x000A6DB8_merge_0 | |
instr_0x000A6DB8_merge_0: ; preds = %instr_0x000A6DB8_then_0, %instr_0x000A6DB8_merge_all_fs | |
ret i32 0 | |
instr_0x000A6DCC: ; preds = %instr_0x000A6DB0 | |
%2092 = phi i32 [ 683440, %instr_0x000A6DB0 ] | |
%2093 = getelementptr i8* %ppu_state, i32 1664 | |
%2094 = bitcast i8* %2093 to i32* | |
store i32 683468, i32* %2094, align 4 | |
%2095 = zext i32 %2092 to i64 | |
%2096 = or i64 %2095, 2932174172979200 | |
%2097 = load i64* inttoptr (i64 8623353120 to i64*) | |
%2098 = inttoptr i64 %2097 to i32 (i8*, i64)* | |
%2099 = call i32 %2098(i8* %ppu_state, i64 %2096) | |
%2100 = icmp eq i32 %2099, -1 | |
br i1 %2100, label %instr_0x000A6DCC_then_all_fs, label %instr_0x000A6DCC_merge_all_fs | |
instr_0x000A6DCC_then_all_fs: ; preds = %instr_0x000A6DCC | |
ret i32 0 | |
instr_0x000A6DCC_merge_all_fs: ; preds = %instr_0x000A6DCC | |
%2101 = icmp ne i32 %2099, 0 | |
br i1 %2101, label %instr_0x000A6DCC_then_0, label %instr_0x000A6DCC_merge_0 | |
instr_0x000A6DCC_then_0: ; preds = %instr_0x000A6DCC_merge_all_fs | |
%2102 = zext i32 %2099 to i64 | |
%2103 = or i64 %2102, 2932174172979200 | |
%2104 = call i32 @execute_unknown_block(i8* %ppu_state, i64 %2103) | |
br label %instr_0x000A6DCC_merge_0 | |
instr_0x000A6DCC_merge_0: ; preds = %instr_0x000A6DCC_then_0, %instr_0x000A6DCC_merge_all_fs | |
ret i32 0 | |
instr_0x000A6DD4: ; preds = %instr_0x000A6D34 | |
%2105 = getelementptr i8* %ppu_state, i32 1008 | |
%2106 = bitcast i8* %2105 to i64* | |
%2107 = load i64* %2106, align 8 | |
%2108 = getelementptr i8* %ppu_state, i32 1008 | |
%2109 = bitcast i8* %2108 to i64* | |
%2110 = load i64* %2109, align 8 | |
%2111 = or i64 %2107, %2110 | |
%2112 = getelementptr i8* %ppu_state, i32 984 | |
%2113 = bitcast i8* %2112 to i64* | |
store i64 %2111, i64* %2113, align 8 | |
br label %instr_0x000A6DD8 | |
instr_0x000A6DD8: ; preds = %instr_0x000A6DD4 | |
%2114 = getelementptr i8* %ppu_state, i32 944 | |
%2115 = bitcast i8* %2114 to i32* | |
%2116 = load i32* %2115, align 8 | |
%2117 = sext i32 %2116 to i64 | |
%2118 = getelementptr i8* %ppu_state, i32 984 | |
%2119 = bitcast i8* %2118 to i32* | |
%2120 = load i32* %2119, align 8 | |
%2121 = sext i32 %2120 to i64 | |
%2122 = icmp slt i64 %2117, %2121 | |
%2123 = icmp sgt i64 %2117, %2121 | |
%2124 = icmp eq i64 %2117, %2121 | |
%2125 = getelementptr i8* %ppu_state, i32 1540 | |
%2126 = bitcast i8* %2125 to i32* | |
%2127 = load i32* %2126, align 4 | |
%2128 = getelementptr i8* %ppu_state, i32 1544 | |
%2129 = bitcast i8* %2128 to i64* | |
%2130 = load i64* %2129, align 8 | |
%2131 = lshr i64 %2130, 31 | |
%2132 = and i64 %2131, 1 | |
%2133 = and i32 %2127, -16 | |
%2134 = zext i1 %2122 to i32 | |
%2135 = shl i32 %2134, 3 | |
%2136 = or i32 %2133, %2135 | |
%2137 = zext i1 %2123 to i32 | |
%2138 = shl i32 %2137, 2 | |
%2139 = or i32 %2136, %2138 | |
%2140 = zext i1 %2124 to i32 | |
%2141 = shl i32 %2140, 1 | |
%2142 = or i32 %2139, %2141 | |
%2143 = trunc i64 %2132 to i32 | |
%2144 = or i32 %2142, %2143 | |
%2145 = getelementptr i8* %ppu_state, i32 1540 | |
%2146 = bitcast i8* %2145 to i32* | |
store i32 %2144, i32* %2146, align 4 | |
br label %instr_0x000A6DDC | |
instr_0x000A6DDC: ; preds = %instr_0x000A6DD8 | |
%2147 = getelementptr i8* %ppu_state, i32 1576 | |
%2148 = bitcast i8* %2147 to i64* | |
%2149 = load i64* %2148, align 8 | |
%2150 = getelementptr i8* %ppu_state, i32 1540 | |
%2151 = bitcast i8* %2150 to i32* | |
%2152 = load i32* %2151, align 4 | |
%2153 = lshr i32 %2152, 1 | |
%2154 = and i32 %2153, 1 | |
%2155 = trunc i32 %2154 to i1 | |
%2156 = xor i1 %2155, true | |
br i1 %2156, label %instr_0x000A6D60, label %instr_0x000A6DE0 | |
instr_0x000A6DE0: ; preds = %instr_0x000A6DDC, %instr_0x000A6D5C | |
%2157 = getelementptr i8* %ppu_state, i32 952 | |
%2158 = bitcast i8* %2157 to i32* | |
%2159 = load i32* %2158, align 8 | |
%2160 = sext i32 %2159 to i64 | |
%2161 = getelementptr i8* %ppu_state, i32 912 | |
%2162 = bitcast i8* %2161 to i32* | |
%2163 = load i32* %2162, align 8 | |
%2164 = sext i32 %2163 to i64 | |
%2165 = icmp slt i64 %2160, %2164 | |
%2166 = icmp sgt i64 %2160, %2164 | |
%2167 = icmp eq i64 %2160, %2164 | |
%2168 = getelementptr i8* %ppu_state, i32 1540 | |
%2169 = bitcast i8* %2168 to i32* | |
%2170 = load i32* %2169, align 4 | |
%2171 = getelementptr i8* %ppu_state, i32 1544 | |
%2172 = bitcast i8* %2171 to i64* | |
%2173 = load i64* %2172, align 8 | |
%2174 = lshr i64 %2173, 31 | |
%2175 = and i64 %2174, 1 | |
%2176 = and i32 %2170, -16 | |
%2177 = zext i1 %2165 to i32 | |
%2178 = shl i32 %2177, 3 | |
%2179 = or i32 %2176, %2178 | |
%2180 = zext i1 %2166 to i32 | |
%2181 = shl i32 %2180, 2 | |
%2182 = or i32 %2179, %2181 | |
%2183 = zext i1 %2167 to i32 | |
%2184 = shl i32 %2183, 1 | |
%2185 = or i32 %2182, %2184 | |
%2186 = trunc i64 %2175 to i32 | |
%2187 = or i32 %2185, %2186 | |
%2188 = getelementptr i8* %ppu_state, i32 1540 | |
%2189 = bitcast i8* %2188 to i32* | |
store i32 %2187, i32* %2189, align 4 | |
br label %instr_0x000A6DE4 | |
instr_0x000A6DE4: ; preds = %instr_0x000A6DE0 | |
%2190 = getelementptr i8* %ppu_state, i32 1576 | |
%2191 = bitcast i8* %2190 to i64* | |
%2192 = load i64* %2191, align 8 | |
%2193 = getelementptr i8* %ppu_state, i32 1540 | |
%2194 = bitcast i8* %2193 to i32* | |
%2195 = load i32* %2194, align 4 | |
%2196 = lshr i32 %2195, 1 | |
%2197 = and i32 %2196, 1 | |
%2198 = trunc i32 %2197 to i1 | |
br i1 %2198, label %instr_0x000A6E74, label %instr_0x000A6DE8 | |
instr_0x000A6DE8: ; preds = %instr_0x000A6DE4 | |
%2199 = phi i32 [ 683492, %instr_0x000A6DE4 ] | |
%2200 = getelementptr i8* %ppu_state, i32 1664 | |
%2201 = bitcast i8* %2200 to i32* | |
store i32 683496, i32* %2201, align 4 | |
%2202 = zext i32 %2199 to i64 | |
%2203 = or i64 %2202, 2932174172979200 | |
%2204 = load i64* inttoptr (i64 8623353120 to i64*) | |
%2205 = inttoptr i64 %2204 to i32 (i8*, i64)* | |
%2206 = call i32 %2205(i8* %ppu_state, i64 %2203) | |
%2207 = icmp eq i32 %2206, -1 | |
br i1 %2207, label %instr_0x000A6DE8_then_all_fs, label %instr_0x000A6DE8_merge_all_fs | |
instr_0x000A6DE8_then_all_fs: ; preds = %instr_0x000A6DE8 | |
ret i32 0 | |
instr_0x000A6DE8_merge_all_fs: ; preds = %instr_0x000A6DE8 | |
%2208 = icmp ne i32 %2206, 0 | |
br i1 %2208, label %instr_0x000A6DE8_then_0, label %instr_0x000A6DE8_merge_0 | |
instr_0x000A6DE8_then_0: ; preds = %instr_0x000A6DE8_merge_all_fs | |
%2209 = zext i32 %2206 to i64 | |
%2210 = or i64 %2209, 2932174172979200 | |
%2211 = call i32 @execute_unknown_block(i8* %ppu_state, i64 %2210) | |
br label %instr_0x000A6DE8_merge_0 | |
instr_0x000A6DE8_merge_0: ; preds = %instr_0x000A6DE8_then_0, %instr_0x000A6DE8_merge_all_fs | |
ret i32 0 | |
instr_0x000A6E18: ; preds = %instr_0x000A6D64 | |
%2212 = getelementptr i8* %ppu_state, i32 968 | |
%2213 = bitcast i8* %2212 to i64* | |
%2214 = load i64* %2213, align 8 | |
%2215 = getelementptr i8* %ppu_state, i32 984 | |
%2216 = bitcast i8* %2215 to i64* | |
%2217 = load i64* %2216, align 8 | |
%2218 = sub i64 %2217, %2214 | |
%2219 = getelementptr i8* %ppu_state, i32 984 | |
%2220 = bitcast i8* %2219 to i64* | |
store i64 %2218, i64* %2220, align 8 | |
br label %instr_0x000A6E1C | |
instr_0x000A6E1C: ; preds = %instr_0x000A6E18 | |
%2221 = getelementptr i8* %ppu_state, i32 968 | |
%2222 = bitcast i8* %2221 to i64* | |
%2223 = load i64* %2222, align 8 | |
%2224 = getelementptr i8* %ppu_state, i32 1016 | |
%2225 = bitcast i8* %2224 to i64* | |
%2226 = load i64* %2225, align 8 | |
%2227 = sub i64 %2226, %2223 | |
%2228 = getelementptr i8* %ppu_state, i32 1016 | |
%2229 = bitcast i8* %2228 to i64* | |
store i64 %2227, i64* %2229, align 8 | |
br label %instr_0x000A6E20 | |
instr_0x000A6E20: ; preds = %instr_0x000A6E1C | |
%2230 = getelementptr i8* %ppu_state, i32 968 | |
%2231 = bitcast i8* %2230 to i64* | |
%2232 = load i64* %2231, align 8 | |
%2233 = getelementptr i8* %ppu_state, i32 920 | |
%2234 = bitcast i8* %2233 to i64* | |
%2235 = load i64* %2234, align 8 | |
%2236 = sub i64 %2235, %2232 | |
%2237 = getelementptr i8* %ppu_state, i32 920 | |
%2238 = bitcast i8* %2237 to i64* | |
store i64 %2236, i64* %2238, align 8 | |
br label %instr_0x000A6E24 | |
instr_0x000A6E24: ; preds = %instr_0x000A6E20 | |
%2239 = getelementptr i8* %ppu_state, i32 984 | |
%2240 = bitcast i8* %2239 to i32* | |
%2241 = load i32* %2240, align 8 | |
%2242 = sext i32 %2241 to i64 | |
%2243 = getelementptr i8* %ppu_state, i32 1016 | |
%2244 = bitcast i8* %2243 to i32* | |
%2245 = load i32* %2244, align 8 | |
%2246 = sext i32 %2245 to i64 | |
%2247 = icmp slt i64 %2242, %2246 | |
%2248 = icmp sgt i64 %2242, %2246 | |
%2249 = icmp eq i64 %2242, %2246 | |
%2250 = getelementptr i8* %ppu_state, i32 1540 | |
%2251 = bitcast i8* %2250 to i32* | |
%2252 = load i32* %2251, align 4 | |
%2253 = getelementptr i8* %ppu_state, i32 1544 | |
%2254 = bitcast i8* %2253 to i64* | |
%2255 = load i64* %2254, align 8 | |
%2256 = lshr i64 %2255, 31 | |
%2257 = and i64 %2256, 1 | |
%2258 = and i32 %2252, -16 | |
%2259 = zext i1 %2247 to i32 | |
%2260 = shl i32 %2259, 3 | |
%2261 = or i32 %2258, %2260 | |
%2262 = zext i1 %2248 to i32 | |
%2263 = shl i32 %2262, 2 | |
%2264 = or i32 %2261, %2263 | |
%2265 = zext i1 %2249 to i32 | |
%2266 = shl i32 %2265, 1 | |
%2267 = or i32 %2264, %2266 | |
%2268 = trunc i64 %2257 to i32 | |
%2269 = or i32 %2267, %2268 | |
%2270 = getelementptr i8* %ppu_state, i32 1540 | |
%2271 = bitcast i8* %2270 to i32* | |
store i32 %2269, i32* %2271, align 4 | |
br label %instr_0x000A6E28 | |
instr_0x000A6E28: ; preds = %instr_0x000A6E24 | |
%2272 = getelementptr i8* %ppu_state, i32 1576 | |
%2273 = bitcast i8* %2272 to i64* | |
%2274 = load i64* %2273, align 8 | |
%2275 = getelementptr i8* %ppu_state, i32 1540 | |
%2276 = bitcast i8* %2275 to i32* | |
%2277 = load i32* %2276, align 4 | |
%2278 = lshr i32 %2277, 1 | |
%2279 = and i32 %2278, 1 | |
%2280 = trunc i32 %2279 to i1 | |
br i1 %2280, label %instr_0x000A6E48, label %instr_0x000A6E2C | |
instr_0x000A6E2C: ; preds = %instr_0x000A6E28 | |
%2281 = getelementptr i8* %ppu_state, i32 984 | |
%2282 = bitcast i8* %2281 to i64* | |
%2283 = load i64* %2282, align 8 | |
%2284 = and i64 %2283, 4294967295 | |
%2285 = getelementptr i8* %ppu_state, i32 792 | |
%2286 = bitcast i8* %2285 to i64* | |
store i64 %2284, i64* %2286, align 8 | |
br label %instr_0x000A6E30 | |
instr_0x000A6E30: ; preds = %instr_0x000A6E2C | |
%2287 = getelementptr i8* %ppu_state, i32 920 | |
%2288 = bitcast i8* %2287 to i64* | |
%2289 = load i64* %2288, align 8 | |
%2290 = and i64 %2289, 4294967295 | |
%2291 = getelementptr i8* %ppu_state, i32 800 | |
%2292 = bitcast i8* %2291 to i64* | |
store i64 %2290, i64* %2292, align 8 | |
br label %instr_0x000A6E34 | |
instr_0x000A6E34: ; preds = %instr_0x000A6E30 | |
%2293 = getelementptr i8* %ppu_state, i32 1016 | |
%2294 = bitcast i8* %2293 to i64* | |
%2295 = load i64* %2294, align 8 | |
%2296 = and i64 %2295, 4294967295 | |
%2297 = getelementptr i8* %ppu_state, i32 808 | |
%2298 = bitcast i8* %2297 to i64* | |
store i64 %2296, i64* %2298, align 8 | |
br label %instr_0x000A6E38 | |
instr_0x000A6E38: ; preds = %instr_0x000A6E34 | |
%2299 = getelementptr i8* %ppu_state, i32 936 | |
%2300 = bitcast i8* %2299 to i64* | |
%2301 = load i64* %2300, align 8 | |
%2302 = getelementptr i8* %ppu_state, i32 936 | |
%2303 = bitcast i8* %2302 to i64* | |
%2304 = load i64* %2303, align 8 | |
%2305 = or i64 %2301, %2304 | |
%2306 = getelementptr i8* %ppu_state, i32 816 | |
%2307 = bitcast i8* %2306 to i64* | |
store i64 %2305, i64* %2307, align 8 | |
br label %instr_0x000A6E3C | |
instr_0x000A6E3C: ; preds = %instr_0x000A6E38 | |
%2308 = getelementptr i8* %ppu_state, i32 912 | |
%2309 = bitcast i8* %2308 to i64* | |
%2310 = load i64* %2309, align 8 | |
%2311 = getelementptr i8* %ppu_state, i32 912 | |
%2312 = bitcast i8* %2311 to i64* | |
%2313 = load i64* %2312, align 8 | |
%2314 = or i64 %2310, %2313 | |
%2315 = getelementptr i8* %ppu_state, i32 952 | |
%2316 = bitcast i8* %2315 to i64* | |
store i64 %2314, i64* %2316, align 8 | |
br label %instr_0x000A6E40 | |
instr_0x000A6E40: ; preds = %instr_0x000A6E3C | |
%2317 = getelementptr i8* %ppu_state, i32 1568 | |
%2318 = bitcast i8* %2317 to i64* | |
store i64 683588, i64* %2318, align 8 | |
%2319 = getelementptr i8* %ppu_state, i32 1664 | |
%2320 = bitcast i8* %2319 to i32* | |
store i32 680920, i32* %2320, align 4 | |
%2321 = load i64* inttoptr (i64 8623353112 to i64*) | |
%2322 = inttoptr i64 %2321 to i32 (i8*, i64)* | |
%2323 = call i32 %2322(i8* %ppu_state, i64 0) | |
%2324 = icmp eq i32 %2323, -1 | |
br i1 %2324, label %instr_0x000A6E40_then_all_fs, label %instr_0x000A6E40_merge_all_fs | |
instr_0x000A6E40_then_all_fs: ; preds = %instr_0x000A6E40 | |
ret i32 0 | |
instr_0x000A6E40_merge_all_fs: ; preds = %instr_0x000A6E40 | |
br label %instr_0x000A6E44 | |
instr_0x000A6E44: ; preds = %instr_0x000A6E40_merge_all_fs | |
br label %instr_0x000A6CDC | |
instr_0x000A6E48: ; preds = %instr_0x000A6E28 | |
%2325 = phi i32 [ 683560, %instr_0x000A6E28 ] | |
%2326 = getelementptr i8* %ppu_state, i32 1664 | |
%2327 = bitcast i8* %2326 to i32* | |
store i32 683592, i32* %2327, align 4 | |
%2328 = zext i32 %2325 to i64 | |
%2329 = or i64 %2328, 2932174172979200 | |
%2330 = load i64* inttoptr (i64 8623353120 to i64*) | |
%2331 = inttoptr i64 %2330 to i32 (i8*, i64)* | |
%2332 = call i32 %2331(i8* %ppu_state, i64 %2329) | |
%2333 = icmp eq i32 %2332, -1 | |
br i1 %2333, label %instr_0x000A6E48_then_all_fs, label %instr_0x000A6E48_merge_all_fs | |
instr_0x000A6E48_then_all_fs: ; preds = %instr_0x000A6E48 | |
ret i32 0 | |
instr_0x000A6E48_merge_all_fs: ; preds = %instr_0x000A6E48 | |
%2334 = icmp ne i32 %2332, 0 | |
br i1 %2334, label %instr_0x000A6E48_then_0, label %instr_0x000A6E48_merge_0 | |
instr_0x000A6E48_then_0: ; preds = %instr_0x000A6E48_merge_all_fs | |
%2335 = zext i32 %2332 to i64 | |
%2336 = or i64 %2335, 2932174172979200 | |
%2337 = call i32 @execute_unknown_block(i8* %ppu_state, i64 %2336) | |
br label %instr_0x000A6E48_merge_0 | |
instr_0x000A6E48_merge_0: ; preds = %instr_0x000A6E48_then_0, %instr_0x000A6E48_merge_all_fs | |
ret i32 0 | |
instr_0x000A6E74: ; preds = %instr_0x000A6DE4 | |
%2338 = getelementptr i8* %ppu_state, i32 944 | |
%2339 = bitcast i8* %2338 to i64* | |
%2340 = load i64* %2339, align 8 | |
%2341 = getelementptr i8* %ppu_state, i32 1016 | |
%2342 = bitcast i8* %2341 to i64* | |
%2343 = load i64* %2342, align 8 | |
%2344 = sub i64 %2343, %2340 | |
%2345 = getelementptr i8* %ppu_state, i32 856 | |
%2346 = bitcast i8* %2345 to i64* | |
store i64 %2344, i64* %2346, align 8 | |
br label %instr_0x000A6E78 | |
instr_0x000A6E78: ; preds = %instr_0x000A6E74 | |
%2347 = getelementptr i8* %ppu_state, i32 920 | |
%2348 = bitcast i8* %2347 to i64* | |
%2349 = load i64* %2348, align 8 | |
%2350 = getelementptr i8* %ppu_state, i32 912 | |
%2351 = bitcast i8* %2350 to i64* | |
%2352 = load i64* %2351, align 8 | |
%2353 = sub i64 %2352, %2349 | |
%2354 = getelementptr i8* %ppu_state, i32 768 | |
%2355 = bitcast i8* %2354 to i64* | |
store i64 %2353, i64* %2355, align 8 | |
br label %instr_0x000A6E7C | |
instr_0x000A6E7C: ; preds = %instr_0x000A6E78 | |
%2356 = getelementptr i8* %ppu_state, i32 896 | |
%2357 = bitcast i8* %2356 to i32* | |
%2358 = load i32* %2357, align 8 | |
%2359 = zext i32 %2358 to i64 | |
%2360 = shl i64 %2359, 32 | |
%2361 = or i64 %2359, %2360 | |
%2362 = lshr i64 %2361, 34 | |
%2363 = shl i64 %2361, 30 | |
%2364 = or i64 %2363, %2362 | |
%2365 = and i64 %2364, 1073741823 | |
%2366 = getelementptr i8* %ppu_state, i32 848 | |
%2367 = bitcast i8* %2366 to i64* | |
store i64 %2365, i64* %2367, align 8 | |
br label %instr_0x000A6E80 | |
instr_0x000A6E80: ; preds = %instr_0x000A6E7C | |
%2368 = getelementptr i8* %ppu_state, i32 856 | |
%2369 = bitcast i8* %2368 to i32* | |
%2370 = load i32* %2369, align 8 | |
%2371 = getelementptr i8* %ppu_state, i32 904 | |
%2372 = bitcast i8* %2371 to i32* | |
%2373 = load i32* %2372, align 8 | |
%2374 = udiv i32 %2370, %2373 | |
%2375 = zext i32 %2374 to i64 | |
%2376 = getelementptr i8* %ppu_state, i32 856 | |
%2377 = bitcast i8* %2376 to i64* | |
store i64 %2375, i64* %2377, align 8 | |
br label %instr_0x000A6E84 | |
instr_0x000A6E84: ; preds = %instr_0x000A6E80 | |
%2378 = getelementptr i8* %ppu_state, i32 896 | |
%2379 = bitcast i8* %2378 to i32* | |
%2380 = load i32* %2379, align 8 | |
%2381 = zext i32 %2380 to i64 | |
%2382 = shl i64 %2381, 32 | |
%2383 = or i64 %2381, %2382 | |
%2384 = lshr i64 %2383, 33 | |
%2385 = shl i64 %2383, 31 | |
%2386 = or i64 %2385, %2384 | |
%2387 = and i64 %2386, 2147483647 | |
%2388 = getelementptr i8* %ppu_state, i32 840 | |
%2389 = bitcast i8* %2388 to i64* | |
store i64 %2387, i64* %2389, align 8 | |
br label %instr_0x000A6E88 | |
instr_0x000A6E88: ; preds = %instr_0x000A6E84 | |
%2390 = getelementptr i8* %ppu_state, i32 768 | |
%2391 = bitcast i8* %2390 to i32* | |
%2392 = load i32* %2391, align 8 | |
%2393 = getelementptr i8* %ppu_state, i32 904 | |
%2394 = bitcast i8* %2393 to i32* | |
%2395 = load i32* %2394, align 8 | |
%2396 = udiv i32 %2392, %2395 | |
%2397 = zext i32 %2396 to i64 | |
%2398 = getelementptr i8* %ppu_state, i32 952 | |
%2399 = bitcast i8* %2398 to i64* | |
store i64 %2397, i64* %2399, align 8 | |
br label %instr_0x000A6E8C | |
instr_0x000A6E8C: ; preds = %instr_0x000A6E88 | |
%2400 = getelementptr i8* %ppu_state, i32 856 | |
%2401 = bitcast i8* %2400 to i32* | |
%2402 = load i32* %2401, align 8 | |
%2403 = zext i32 %2402 to i64 | |
%2404 = getelementptr i8* %ppu_state, i32 952 | |
%2405 = bitcast i8* %2404 to i32* | |
%2406 = load i32* %2405, align 8 | |
%2407 = zext i32 %2406 to i64 | |
%2408 = icmp ult i64 %2403, %2407 | |
%2409 = icmp ugt i64 %2403, %2407 | |
%2410 = icmp eq i64 %2403, %2407 | |
%2411 = getelementptr i8* %ppu_state, i32 1540 | |
%2412 = bitcast i8* %2411 to i32* | |
%2413 = load i32* %2412, align 4 | |
%2414 = getelementptr i8* %ppu_state, i32 1544 | |
%2415 = bitcast i8* %2414 to i64* | |
%2416 = load i64* %2415, align 8 | |
%2417 = lshr i64 %2416, 31 | |
%2418 = and i64 %2417, 1 | |
%2419 = and i32 %2413, -16 | |
%2420 = zext i1 %2408 to i32 | |
%2421 = shl i32 %2420, 3 | |
%2422 = or i32 %2419, %2421 | |
%2423 = zext i1 %2409 to i32 | |
%2424 = shl i32 %2423, 2 | |
%2425 = or i32 %2422, %2424 | |
%2426 = zext i1 %2410 to i32 | |
%2427 = shl i32 %2426, 1 | |
%2428 = or i32 %2425, %2427 | |
%2429 = trunc i64 %2418 to i32 | |
%2430 = or i32 %2428, %2429 | |
%2431 = getelementptr i8* %ppu_state, i32 1540 | |
%2432 = bitcast i8* %2431 to i32* | |
store i32 %2430, i32* %2432, align 4 | |
br label %instr_0x000A6E90 | |
instr_0x000A6E90: ; preds = %instr_0x000A6E8C | |
%2433 = getelementptr i8* %ppu_state, i32 840 | |
%2434 = bitcast i8* %2433 to i64* | |
%2435 = load i64* %2434, align 8 | |
%2436 = getelementptr i8* %ppu_state, i32 848 | |
%2437 = bitcast i8* %2436 to i64* | |
%2438 = load i64* %2437, align 8 | |
%2439 = add i64 %2435, %2438 | |
%2440 = getelementptr i8* %ppu_state, i32 896 | |
%2441 = bitcast i8* %2440 to i64* | |
store i64 %2439, i64* %2441, align 8 | |
br label %instr_0x000A6E94 | |
instr_0x000A6E94: ; preds = %instr_0x000A6E90 | |
%2442 = getelementptr i8* %ppu_state, i32 1576 | |
%2443 = bitcast i8* %2442 to i64* | |
%2444 = load i64* %2443, align 8 | |
%2445 = getelementptr i8* %ppu_state, i32 1540 | |
%2446 = bitcast i8* %2445 to i32* | |
%2447 = load i32* %2446, align 4 | |
%2448 = lshr i32 %2447, 2 | |
%2449 = and i32 %2448, 1 | |
%2450 = trunc i32 %2449 to i1 | |
br i1 %2450, label %instr_0x000A6FF0, label %instr_0x000A6E98 | |
instr_0x000A6E98: ; preds = %instr_0x000A6E94 | |
%2451 = getelementptr i8* %ppu_state, i32 888 | |
%2452 = bitcast i8* %2451 to i64* | |
%2453 = load i64* %2452, align 8 | |
%2454 = getelementptr i8* %ppu_state, i32 888 | |
%2455 = bitcast i8* %2454 to i64* | |
%2456 = load i64* %2455, align 8 | |
%2457 = or i64 %2453, %2456 | |
%2458 = getelementptr i8* %ppu_state, i32 792 | |
%2459 = bitcast i8* %2458 to i64* | |
store i64 %2457, i64* %2459, align 8 | |
br label %instr_0x000A6E9C | |
instr_0x000A6E9C: ; preds = %instr_0x000A6E98 | |
%2460 = getelementptr i8* %ppu_state, i32 856 | |
%2461 = bitcast i8* %2460 to i64* | |
%2462 = load i64* %2461, align 8 | |
%2463 = and i64 %2462, 4294967295 | |
%2464 = getelementptr i8* %ppu_state, i32 800 | |
%2465 = bitcast i8* %2464 to i64* | |
store i64 %2463, i64* %2465, align 8 | |
br label %instr_0x000A6EA0 | |
instr_0x000A6EA0: ; preds = %instr_0x000A6E9C | |
%2466 = getelementptr i8* %ppu_state, i32 896 | |
%2467 = bitcast i8* %2466 to i64* | |
%2468 = load i64* %2467, align 8 | |
%2469 = and i64 %2468, 4294967295 | |
%2470 = getelementptr i8* %ppu_state, i32 808 | |
%2471 = bitcast i8* %2470 to i64* | |
store i64 %2469, i64* %2471, align 8 | |
br label %instr_0x000A6EA4 | |
instr_0x000A6EA4: ; preds = %instr_0x000A6EA0 | |
%2472 = getelementptr i8* %ppu_state, i32 936 | |
%2473 = bitcast i8* %2472 to i64* | |
%2474 = load i64* %2473, align 8 | |
%2475 = getelementptr i8* %ppu_state, i32 936 | |
%2476 = bitcast i8* %2475 to i64* | |
%2477 = load i64* %2476, align 8 | |
%2478 = or i64 %2474, %2477 | |
%2479 = getelementptr i8* %ppu_state, i32 816 | |
%2480 = bitcast i8* %2479 to i64* | |
store i64 %2478, i64* %2480, align 8 | |
br label %instr_0x000A6EA8 | |
instr_0x000A6EA8: ; preds = %instr_0x000A6EA4 | |
%2481 = getelementptr i8* %ppu_state, i32 960 | |
%2482 = bitcast i8* %2481 to i64* | |
%2483 = load i64* %2482, align 8 | |
%2484 = getelementptr i8* %ppu_state, i32 960 | |
%2485 = bitcast i8* %2484 to i64* | |
%2486 = load i64* %2485, align 8 | |
%2487 = or i64 %2483, %2486 | |
%2488 = getelementptr i8* %ppu_state, i32 824 | |
%2489 = bitcast i8* %2488 to i64* | |
store i64 %2487, i64* %2489, align 8 | |
br label %instr_0x000A6EAC | |
instr_0x000A6EAC: ; preds = %instr_0x000A6EA8 | |
%2490 = getelementptr i8* %ppu_state, i32 920 | |
%2491 = bitcast i8* %2490 to i64* | |
%2492 = load i64* %2491, align 8 | |
%2493 = getelementptr i8* %ppu_state, i32 920 | |
%2494 = bitcast i8* %2493 to i64* | |
%2495 = load i64* %2494, align 8 | |
%2496 = or i64 %2492, %2495 | |
%2497 = getelementptr i8* %ppu_state, i32 944 | |
%2498 = bitcast i8* %2497 to i64* | |
store i64 %2496, i64* %2498, align 8 | |
br label %instr_0x000A6EB0 | |
instr_0x000A6EB0: ; preds = %instr_0x000A6EAC | |
%2499 = getelementptr i8* %ppu_state, i32 1568 | |
%2500 = bitcast i8* %2499 to i64* | |
store i64 683700, i64* %2500, align 8 | |
%2501 = getelementptr i8* %ppu_state, i32 1664 | |
%2502 = bitcast i8* %2501 to i32* | |
store i32 682700, i32* %2502, align 4 | |
%2503 = load i64* inttoptr (i64 8623353112 to i64*) | |
%2504 = inttoptr i64 %2503 to i32 (i8*, i64)* | |
%2505 = call i32 %2504(i8* %ppu_state, i64 0) | |
%2506 = icmp eq i32 %2505, -1 | |
br i1 %2506, label %instr_0x000A6EB0_then_all_fs, label %instr_0x000A6EB0_merge_all_fs | |
instr_0x000A6EB0_then_all_fs: ; preds = %instr_0x000A6EB0 | |
ret i32 0 | |
instr_0x000A6EB0_merge_all_fs: ; preds = %instr_0x000A6EB0 | |
br label %instr_0x000A6EB4 | |
instr_0x000A6EB4: ; preds = %instr_0x000A6EB0_merge_all_fs | |
%2507 = getelementptr i8* %ppu_state, i32 896 | |
%2508 = bitcast i8* %2507 to i32* | |
%2509 = load i32* %2508, align 8 | |
%2510 = sext i32 %2509 to i64 | |
%2511 = icmp slt i64 %2510, 0 | |
%2512 = icmp sgt i64 %2510, 0 | |
%2513 = icmp eq i64 %2510, 0 | |
%2514 = getelementptr i8* %ppu_state, i32 1540 | |
%2515 = bitcast i8* %2514 to i32* | |
%2516 = load i32* %2515, align 4 | |
%2517 = getelementptr i8* %ppu_state, i32 1544 | |
%2518 = bitcast i8* %2517 to i64* | |
%2519 = load i64* %2518, align 8 | |
%2520 = lshr i64 %2519, 31 | |
%2521 = and i64 %2520, 1 | |
%2522 = and i32 %2516, -16 | |
%2523 = zext i1 %2511 to i32 | |
%2524 = shl i32 %2523, 3 | |
%2525 = or i32 %2522, %2524 | |
%2526 = zext i1 %2512 to i32 | |
%2527 = shl i32 %2526, 2 | |
%2528 = or i32 %2525, %2527 | |
%2529 = zext i1 %2513 to i32 | |
%2530 = shl i32 %2529, 1 | |
%2531 = or i32 %2528, %2530 | |
%2532 = trunc i64 %2521 to i32 | |
%2533 = or i32 %2531, %2532 | |
%2534 = getelementptr i8* %ppu_state, i32 1540 | |
%2535 = bitcast i8* %2534 to i32* | |
store i32 %2533, i32* %2535, align 4 | |
br label %instr_0x000A6EB8 | |
instr_0x000A6EB8: ; preds = %instr_0x000A6EB4 | |
%2536 = getelementptr i8* %ppu_state, i32 1576 | |
%2537 = bitcast i8* %2536 to i64* | |
%2538 = load i64* %2537, align 8 | |
%2539 = getelementptr i8* %ppu_state, i32 1540 | |
%2540 = bitcast i8* %2539 to i32* | |
%2541 = load i32* %2540, align 4 | |
%2542 = lshr i32 %2541, 1 | |
%2543 = and i32 %2542, 1 | |
%2544 = trunc i32 %2543 to i1 | |
br i1 %2544, label %instr_0x000A7014, label %instr_0x000A6EBC | |
instr_0x000A6EBC: ; preds = %instr_0x000A7010, %instr_0x000A6EB8 | |
%2545 = getelementptr i8* %ppu_state, i32 952 | |
%2546 = bitcast i8* %2545 to i32* | |
%2547 = load i32* %2546, align 8 | |
%2548 = zext i32 %2547 to i64 | |
%2549 = icmp ult i64 %2548, 32 | |
%2550 = icmp ugt i64 %2548, 32 | |
%2551 = icmp eq i64 %2548, 32 | |
%2552 = getelementptr i8* %ppu_state, i32 1540 | |
%2553 = bitcast i8* %2552 to i32* | |
%2554 = load i32* %2553, align 4 | |
%2555 = getelementptr i8* %ppu_state, i32 1544 | |
%2556 = bitcast i8* %2555 to i64* | |
%2557 = load i64* %2556, align 8 | |
%2558 = lshr i64 %2557, 31 | |
%2559 = and i64 %2558, 1 | |
%2560 = and i32 %2554, -16 | |
%2561 = zext i1 %2549 to i32 | |
%2562 = shl i32 %2561, 3 | |
%2563 = or i32 %2560, %2562 | |
%2564 = zext i1 %2550 to i32 | |
%2565 = shl i32 %2564, 2 | |
%2566 = or i32 %2563, %2565 | |
%2567 = zext i1 %2551 to i32 | |
%2568 = shl i32 %2567, 1 | |
%2569 = or i32 %2566, %2568 | |
%2570 = trunc i64 %2559 to i32 | |
%2571 = or i32 %2569, %2570 | |
%2572 = getelementptr i8* %ppu_state, i32 1540 | |
%2573 = bitcast i8* %2572 to i32* | |
store i32 %2571, i32* %2573, align 4 | |
br label %instr_0x000A6EC0 | |
instr_0x000A6EC0: ; preds = %instr_0x000A6EBC | |
%2574 = getelementptr i8* %ppu_state, i32 1576 | |
%2575 = bitcast i8* %2574 to i64* | |
%2576 = load i64* %2575, align 8 | |
%2577 = getelementptr i8* %ppu_state, i32 1540 | |
%2578 = bitcast i8* %2577 to i32* | |
%2579 = load i32* %2578, align 4 | |
%2580 = lshr i32 %2579, 2 | |
%2581 = and i32 %2580, 1 | |
%2582 = trunc i32 %2581 to i1 | |
br i1 %2582, label %instr_0x000A6B60, label %instr_0x000A6EC4 | |
instr_0x000A6EC4: ; preds = %instr_0x000A6EC0, %instr_0x000A6B40 | |
%2583 = getelementptr i8* %ppu_state, i32 952 | |
%2584 = bitcast i8* %2583 to i32* | |
%2585 = load i32* %2584, align 8 | |
%2586 = zext i32 %2585 to i64 | |
%2587 = icmp ult i64 %2586, 1 | |
%2588 = icmp ugt i64 %2586, 1 | |
%2589 = icmp eq i64 %2586, 1 | |
%2590 = getelementptr i8* %ppu_state, i32 1540 | |
%2591 = bitcast i8* %2590 to i32* | |
%2592 = load i32* %2591, align 4 | |
%2593 = getelementptr i8* %ppu_state, i32 1544 | |
%2594 = bitcast i8* %2593 to i64* | |
%2595 = load i64* %2594, align 8 | |
%2596 = lshr i64 %2595, 31 | |
%2597 = and i64 %2596, 1 | |
%2598 = and i32 %2592, -16 | |
%2599 = zext i1 %2587 to i32 | |
%2600 = shl i32 %2599, 3 | |
%2601 = or i32 %2598, %2600 | |
%2602 = zext i1 %2588 to i32 | |
%2603 = shl i32 %2602, 2 | |
%2604 = or i32 %2601, %2603 | |
%2605 = zext i1 %2589 to i32 | |
%2606 = shl i32 %2605, 1 | |
%2607 = or i32 %2604, %2606 | |
%2608 = trunc i64 %2597 to i32 | |
%2609 = or i32 %2607, %2608 | |
%2610 = getelementptr i8* %ppu_state, i32 1540 | |
%2611 = bitcast i8* %2610 to i32* | |
store i32 %2609, i32* %2611, align 4 | |
br label %instr_0x000A6EC8 | |
instr_0x000A6EC8: ; preds = %instr_0x000A6EC4 | |
%2612 = getelementptr i8* %ppu_state, i32 776 | |
%2613 = bitcast i8* %2612 to i64* | |
%2614 = load i64* %2613, align 8 | |
%2615 = add i64 %2614, 112 | |
%2616 = and i64 %2615, 4294967295 | |
%2617 = add i64 %2616, 2147418112 | |
%2618 = inttoptr i64 %2617 to i32* | |
%2619 = load i32* %2618 | |
%2620 = call i32 @llvm.bswap.i32(i32 %2619) | |
%2621 = zext i32 %2620 to i64 | |
%2622 = getelementptr i8* %ppu_state, i32 976 | |
%2623 = bitcast i8* %2622 to i64* | |
store i64 %2621, i64* %2623, align 8 | |
br label %instr_0x000A6ECC | |
instr_0x000A6ECC: ; preds = %instr_0x000A6EC8 | |
%2624 = getelementptr i8* %ppu_state, i32 944 | |
%2625 = bitcast i8* %2624 to i64* | |
%2626 = load i64* %2625, align 8 | |
%2627 = getelementptr i8* %ppu_state, i32 944 | |
%2628 = bitcast i8* %2627 to i64* | |
%2629 = load i64* %2628, align 8 | |
%2630 = or i64 %2626, %2629 | |
%2631 = getelementptr i8* %ppu_state, i32 984 | |
%2632 = bitcast i8* %2631 to i64* | |
store i64 %2630, i64* %2632, align 8 | |
br label %instr_0x000A6ED0 | |
instr_0x000A6ED0: ; preds = %instr_0x000A6ECC | |
%2633 = getelementptr i8* %ppu_state, i32 944 | |
%2634 = bitcast i8* %2633 to i64* | |
%2635 = load i64* %2634, align 8 | |
%2636 = and i64 %2635, 4294967295 | |
%2637 = getelementptr i8* %ppu_state, i32 968 | |
%2638 = bitcast i8* %2637 to i64* | |
store i64 %2636, i64* %2638, align 8 | |
br label %instr_0x000A6ED4 | |
instr_0x000A6ED4: ; preds = %instr_0x000A6ED0 | |
%2639 = getelementptr i8* %ppu_state, i32 904 | |
%2640 = bitcast i8* %2639 to i64* | |
%2641 = load i64* %2640, align 8 | |
%2642 = sub i64 0, %2641 | |
%2643 = getelementptr i8* %ppu_state, i32 1000 | |
%2644 = bitcast i8* %2643 to i64* | |
store i64 %2642, i64* %2644, align 8 | |
br label %instr_0x000A6ED8 | |
instr_0x000A6ED8: ; preds = %instr_0x000A6ED4 | |
%2645 = getelementptr i8* %ppu_state, i32 1576 | |
%2646 = bitcast i8* %2645 to i64* | |
%2647 = load i64* %2646, align 8 | |
%2648 = getelementptr i8* %ppu_state, i32 1540 | |
%2649 = bitcast i8* %2648 to i32* | |
%2650 = load i32* %2649, align 4 | |
%2651 = lshr i32 %2650, 2 | |
%2652 = and i32 %2651, 1 | |
%2653 = trunc i32 %2652 to i1 | |
%2654 = xor i1 %2653, true | |
br i1 %2654, label %instr_0x000A6F78, label %instr_0x000A6EDC | |
instr_0x000A6EDC: ; preds = %instr_0x000A70B4, %instr_0x000A6F58, %instr_0x000A6ED8 | |
%2655 = getelementptr i8* %ppu_state, i32 952 | |
%2656 = bitcast i8* %2655 to i64* | |
%2657 = load i64* %2656, align 8 | |
%2658 = add i64 %2657, -1 | |
%2659 = getelementptr i8* %ppu_state, i32 952 | |
%2660 = bitcast i8* %2659 to i64* | |
store i64 %2658, i64* %2660, align 8 | |
br label %instr_0x000A6EE0 | |
instr_0x000A6EE0: ; preds = %instr_0x000A6EDC | |
%2661 = getelementptr i8* %ppu_state, i32 952 | |
%2662 = bitcast i8* %2661 to i32* | |
%2663 = load i32* %2662, align 8 | |
%2664 = sext i32 %2663 to i64 | |
%2665 = icmp slt i64 %2664, 0 | |
%2666 = icmp sgt i64 %2664, 0 | |
%2667 = icmp eq i64 %2664, 0 | |
%2668 = getelementptr i8* %ppu_state, i32 1540 | |
%2669 = bitcast i8* %2668 to i32* | |
%2670 = load i32* %2669, align 4 | |
%2671 = getelementptr i8* %ppu_state, i32 1544 | |
%2672 = bitcast i8* %2671 to i64* | |
%2673 = load i64* %2672, align 8 | |
%2674 = lshr i64 %2673, 31 | |
%2675 = and i64 %2674, 1 | |
%2676 = and i32 %2670, -16 | |
%2677 = zext i1 %2665 to i32 | |
%2678 = shl i32 %2677, 3 | |
%2679 = or i32 %2676, %2678 | |
%2680 = zext i1 %2666 to i32 | |
%2681 = shl i32 %2680, 2 | |
%2682 = or i32 %2679, %2681 | |
%2683 = zext i1 %2667 to i32 | |
%2684 = shl i32 %2683, 1 | |
%2685 = or i32 %2682, %2684 | |
%2686 = trunc i64 %2675 to i32 | |
%2687 = or i32 %2685, %2686 | |
%2688 = getelementptr i8* %ppu_state, i32 1540 | |
%2689 = bitcast i8* %2688 to i32* | |
store i32 %2687, i32* %2689, align 4 | |
br label %instr_0x000A6EE4 | |
instr_0x000A6EE4: ; preds = %instr_0x000A6EE0 | |
%2690 = getelementptr i8* %ppu_state, i32 1576 | |
%2691 = bitcast i8* %2690 to i64* | |
%2692 = load i64* %2691, align 8 | |
%2693 = getelementptr i8* %ppu_state, i32 1540 | |
%2694 = bitcast i8* %2693 to i32* | |
%2695 = load i32* %2694, align 4 | |
%2696 = lshr i32 %2695, 1 | |
%2697 = and i32 %2696, 1 | |
%2698 = trunc i32 %2697 to i1 | |
br i1 %2698, label %instr_0x000A6F78, label %instr_0x000A6EE8 | |
instr_0x000A6EE8: ; preds = %instr_0x000A6F74, %instr_0x000A6EE4 | |
%2699 = getelementptr i8* %ppu_state, i32 984 | |
%2700 = bitcast i8* %2699 to i64* | |
%2701 = load i64* %2700, align 8 | |
%2702 = getelementptr i8* %ppu_state, i32 904 | |
%2703 = bitcast i8* %2702 to i64* | |
%2704 = load i64* %2703, align 8 | |
%2705 = add i64 %2701, %2704 | |
%2706 = getelementptr i8* %ppu_state, i32 984 | |
%2707 = bitcast i8* %2706 to i64* | |
store i64 %2705, i64* %2707, align 8 | |
br label %instr_0x000A6EEC | |
instr_0x000A6EEC: ; preds = %instr_0x000A6EE8 | |
%2708 = getelementptr i8* %ppu_state, i32 776 | |
%2709 = bitcast i8* %2708 to i64* | |
%2710 = load i64* %2709, align 8 | |
%2711 = add i64 %2710, 40 | |
%2712 = getelementptr i8* %ppu_state, i32 784 | |
%2713 = bitcast i8* %2712 to i64* | |
%2714 = load i64* %2713, align 8 | |
%2715 = call i64 @llvm.bswap.i64(i64 %2714) | |
%2716 = and i64 %2711, 4294967295 | |
%2717 = add i64 %2716, 2147418112 | |
%2718 = inttoptr i64 %2717 to i64* | |
store i64 %2715, i64* %2718 | |
br label %instr_0x000A6EF0 | |
instr_0x000A6EF0: ; preds = %instr_0x000A6EEC | |
%2719 = getelementptr i8* %ppu_state, i32 976 | |
%2720 = bitcast i8* %2719 to i64* | |
%2721 = load i64* %2720, align 8 | |
%2722 = add i64 %2721, 0 | |
%2723 = and i64 %2722, 4294967295 | |
%2724 = add i64 %2723, 2147418112 | |
%2725 = inttoptr i64 %2724 to i32* | |
%2726 = load i32* %2725 | |
%2727 = call i32 @llvm.bswap.i32(i32 %2726) | |
%2728 = zext i32 %2727 to i64 | |
%2729 = getelementptr i8* %ppu_state, i32 768 | |
%2730 = bitcast i8* %2729 to i64* | |
store i64 %2728, i64* %2730, align 8 | |
br label %instr_0x000A6EF4 | |
instr_0x000A6EF4: ; preds = %instr_0x000A6EF0 | |
%2731 = getelementptr i8* %ppu_state, i32 984 | |
%2732 = bitcast i8* %2731 to i64* | |
%2733 = load i64* %2732, align 8 | |
%2734 = and i64 %2733, 4294967295 | |
%2735 = getelementptr i8* %ppu_state, i32 992 | |
%2736 = bitcast i8* %2735 to i64* | |
store i64 %2734, i64* %2736, align 8 | |
br label %instr_0x000A6EF8 | |
instr_0x000A6EF8: ; preds = %instr_0x000A6EF4 | |
%2737 = getelementptr i8* %ppu_state, i32 968 | |
%2738 = bitcast i8* %2737 to i64* | |
%2739 = load i64* %2738, align 8 | |
%2740 = getelementptr i8* %ppu_state, i32 968 | |
%2741 = bitcast i8* %2740 to i64* | |
%2742 = load i64* %2741, align 8 | |
%2743 = or i64 %2739, %2742 | |
%2744 = getelementptr i8* %ppu_state, i32 800 | |
%2745 = bitcast i8* %2744 to i64* | |
store i64 %2743, i64* %2745, align 8 | |
br label %instr_0x000A6EFC | |
instr_0x000A6EFC: ; preds = %instr_0x000A6EF8 | |
%2746 = getelementptr i8* %ppu_state, i32 976 | |
%2747 = bitcast i8* %2746 to i64* | |
%2748 = load i64* %2747, align 8 | |
%2749 = add i64 %2748, 4 | |
%2750 = and i64 %2749, 4294967295 | |
%2751 = add i64 %2750, 2147418112 | |
%2752 = inttoptr i64 %2751 to i32* | |
%2753 = load i32* %2752 | |
%2754 = call i32 @llvm.bswap.i32(i32 %2753) | |
%2755 = zext i32 %2754 to i64 | |
%2756 = getelementptr i8* %ppu_state, i32 784 | |
%2757 = bitcast i8* %2756 to i64* | |
store i64 %2755, i64* %2757, align 8 | |
br label %instr_0x000A6F00 | |
instr_0x000A6F00: ; preds = %instr_0x000A6EFC | |
%2758 = getelementptr i8* %ppu_state, i32 992 | |
%2759 = bitcast i8* %2758 to i64* | |
%2760 = load i64* %2759, align 8 | |
%2761 = getelementptr i8* %ppu_state, i32 992 | |
%2762 = bitcast i8* %2761 to i64* | |
%2763 = load i64* %2762, align 8 | |
%2764 = or i64 %2760, %2763 | |
%2765 = getelementptr i8* %ppu_state, i32 792 | |
%2766 = bitcast i8* %2765 to i64* | |
store i64 %2764, i64* %2766, align 8 | |
br label %instr_0x000A6F04 | |
instr_0x000A6F04: ; preds = %instr_0x000A6F00 | |
%2767 = getelementptr i8* %ppu_state, i32 768 | |
%2768 = bitcast i8* %2767 to i64* | |
%2769 = load i64* %2768, align 8 | |
%2770 = getelementptr i8* %ppu_state, i32 1576 | |
%2771 = bitcast i8* %2770 to i64* | |
store i64 %2769, i64* %2771, align 8 | |
br label %instr_0x000A6F08 | |
instr_0x000A6F08: ; preds = %instr_0x000A6F04 | |
%2772 = getelementptr i8* %ppu_state, i32 984 | |
%2773 = bitcast i8* %2772 to i64* | |
%2774 = load i64* %2773, align 8 | |
%2775 = getelementptr i8* %ppu_state, i32 984 | |
%2776 = bitcast i8* %2775 to i64* | |
%2777 = load i64* %2776, align 8 | |
%2778 = or i64 %2774, %2777 | |
%2779 = getelementptr i8* %ppu_state, i32 1008 | |
%2780 = bitcast i8* %2779 to i64* | |
store i64 %2778, i64* %2780, align 8 | |
br label %instr_0x000A6F0C | |
instr_0x000A6F0C: ; preds = %instr_0x000A6F08 | |
%2781 = getelementptr i8* %ppu_state, i32 984 | |
%2782 = bitcast i8* %2781 to i64* | |
%2783 = load i64* %2782, align 8 | |
%2784 = getelementptr i8* %ppu_state, i32 984 | |
%2785 = bitcast i8* %2784 to i64* | |
%2786 = load i64* %2785, align 8 | |
%2787 = or i64 %2783, %2786 | |
%2788 = getelementptr i8* %ppu_state, i32 1016 | |
%2789 = bitcast i8* %2788 to i64* | |
store i64 %2787, i64* %2789, align 8 | |
br label %instr_0x000A6F10 | |
instr_0x000A6F10: ; preds = %instr_0x000A6F0C | |
%2790 = getelementptr i8* %ppu_state, i32 1576 | |
%2791 = bitcast i8* %2790 to i64* | |
%2792 = load i64* %2791, align 8 | |
%2793 = and i64 %2792, -4 | |
%2794 = trunc i64 %2793 to i32 | |
%2795 = getelementptr i8* %ppu_state, i32 1576 | |
%2796 = bitcast i8* %2795 to i64* | |
%2797 = load i64* %2796, align 8 | |
%2798 = getelementptr i8* %ppu_state, i32 1568 | |
%2799 = bitcast i8* %2798 to i64* | |
store i64 683796, i64* %2799, align 8 | |
%2800 = getelementptr i8* %ppu_state, i32 1664 | |
%2801 = bitcast i8* %2800 to i32* | |
store i32 %2794, i32* %2801, align 4 | |
switch i32 %2794, label %instr_0x000A6F10_unknown_function [ | |
i32 469328, label %instr_0x000A6F10_0x00072950 | |
] | |
instr_0x000A6F10_unknown_function: ; preds = %instr_0x000A6F10 | |
%2802 = call i32 @execute_unknown_function(i8* %ppu_state, i64 0) | |
br label %instr_0x000A6F14 | |
instr_0x000A6F10_0x00072950: ; preds = %instr_0x000A6F10 | |
%2803 = load i64* inttoptr (i64 8623353112 to i64*) | |
%2804 = inttoptr i64 %2803 to i32 (i8*, i64)* | |
%2805 = call i32 %2804(i8* %ppu_state, i64 0) | |
%2806 = icmp eq i32 %2805, -1 | |
br i1 %2806, label %instr_0x000A6F10_then_all_fs, label %instr_0x000A6F10_merge_all_fs | |
instr_0x000A6F10_then_all_fs: ; preds = %instr_0x000A6F10_0x00072950 | |
ret i32 0 | |
instr_0x000A6F10_merge_all_fs: ; preds = %instr_0x000A6F10_0x00072950 | |
br label %instr_0x000A6F14 | |
instr_0x000A6F14: ; preds = %instr_0x000A6F10_merge_all_fs, %instr_0x000A6F10_unknown_function | |
%2807 = getelementptr i8* %ppu_state, i32 776 | |
%2808 = bitcast i8* %2807 to i64* | |
%2809 = load i64* %2808, align 8 | |
%2810 = add i64 %2809, 40 | |
%2811 = and i64 %2810, 4294967295 | |
%2812 = add i64 %2811, 2147418112 | |
%2813 = inttoptr i64 %2812 to i64* | |
%2814 = load i64* %2813 | |
%2815 = call i64 @llvm.bswap.i64(i64 %2814) | |
%2816 = getelementptr i8* %ppu_state, i32 784 | |
%2817 = bitcast i8* %2816 to i64* | |
store i64 %2815, i64* %2817, align 8 | |
br label %instr_0x000A6F18 | |
instr_0x000A6F18: ; preds = %instr_0x000A6F14 | |
%2818 = getelementptr i8* %ppu_state, i32 792 | |
%2819 = bitcast i8* %2818 to i32* | |
%2820 = load i32* %2819, align 8 | |
%2821 = sext i32 %2820 to i64 | |
%2822 = icmp slt i64 %2821, 0 | |
%2823 = icmp sgt i64 %2821, 0 | |
%2824 = icmp eq i64 %2821, 0 | |
%2825 = getelementptr i8* %ppu_state, i32 1540 | |
%2826 = bitcast i8* %2825 to i32* | |
%2827 = load i32* %2826, align 4 | |
%2828 = getelementptr i8* %ppu_state, i32 1544 | |
%2829 = bitcast i8* %2828 to i64* | |
%2830 = load i64* %2829, align 8 | |
%2831 = lshr i64 %2830, 31 | |
%2832 = and i64 %2831, 1 | |
%2833 = and i32 %2827, -16 | |
%2834 = zext i1 %2822 to i32 | |
%2835 = shl i32 %2834, 3 | |
%2836 = or i32 %2833, %2835 | |
%2837 = zext i1 %2823 to i32 | |
%2838 = shl i32 %2837, 2 | |
%2839 = or i32 %2836, %2838 | |
%2840 = zext i1 %2824 to i32 | |
%2841 = shl i32 %2840, 1 | |
%2842 = or i32 %2839, %2841 | |
%2843 = trunc i64 %2832 to i32 | |
%2844 = or i32 %2842, %2843 | |
%2845 = getelementptr i8* %ppu_state, i32 1540 | |
%2846 = bitcast i8* %2845 to i32* | |
store i32 %2844, i32* %2846, align 4 | |
br label %instr_0x000A6F1C | |
instr_0x000A6F1C: ; preds = %instr_0x000A6F18 | |
%2847 = getelementptr i8* %ppu_state, i32 1576 | |
%2848 = bitcast i8* %2847 to i64* | |
%2849 = load i64* %2848, align 8 | |
%2850 = getelementptr i8* %ppu_state, i32 1540 | |
%2851 = bitcast i8* %2850 to i32* | |
%2852 = load i32* %2851, align 4 | |
%2853 = lshr i32 %2852, 3 | |
%2854 = and i32 %2853, 1 | |
%2855 = trunc i32 %2854 to i1 | |
%2856 = xor i1 %2855, true | |
br i1 %2856, label %instr_0x000A6F28, label %instr_0x000A6F20 | |
instr_0x000A6F20: ; preds = %instr_0x000A6F1C | |
br label %instr_0x000A70A4 | |
instr_0x000A6F24: ; preds = %instr_0x000A6F50 | |
%2857 = getelementptr i8* %ppu_state, i32 1016 | |
%2858 = bitcast i8* %2857 to i64* | |
%2859 = load i64* %2858, align 8 | |
%2860 = getelementptr i8* %ppu_state, i32 1016 | |
%2861 = bitcast i8* %2860 to i64* | |
%2862 = load i64* %2861, align 8 | |
%2863 = or i64 %2859, %2862 | |
%2864 = getelementptr i8* %ppu_state, i32 1008 | |
%2865 = bitcast i8* %2864 to i64* | |
store i64 %2863, i64* %2865, align 8 | |
br label %instr_0x000A6F28 | |
instr_0x000A6F28: ; preds = %instr_0x000A6F24, %instr_0x000A6F1C | |
%2866 = getelementptr i8* %ppu_state, i32 776 | |
%2867 = bitcast i8* %2866 to i64* | |
%2868 = load i64* %2867, align 8 | |
%2869 = add i64 %2868, 40 | |
%2870 = getelementptr i8* %ppu_state, i32 784 | |
%2871 = bitcast i8* %2870 to i64* | |
%2872 = load i64* %2871, align 8 | |
%2873 = call i64 @llvm.bswap.i64(i64 %2872) | |
%2874 = and i64 %2869, 4294967295 | |
%2875 = add i64 %2874, 2147418112 | |
%2876 = inttoptr i64 %2875 to i64* | |
store i64 %2873, i64* %2876 | |
br label %instr_0x000A6F2C | |
instr_0x000A6F2C: ; preds = %instr_0x000A6F28 | |
%2877 = getelementptr i8* %ppu_state, i32 976 | |
%2878 = bitcast i8* %2877 to i64* | |
%2879 = load i64* %2878, align 8 | |
%2880 = add i64 %2879, 0 | |
%2881 = and i64 %2880, 4294967295 | |
%2882 = add i64 %2881, 2147418112 | |
%2883 = inttoptr i64 %2882 to i32* | |
%2884 = load i32* %2883 | |
%2885 = call i32 @llvm.bswap.i32(i32 %2884) | |
%2886 = zext i32 %2885 to i64 | |
%2887 = getelementptr i8* %ppu_state, i32 768 | |
%2888 = bitcast i8* %2887 to i64* | |
store i64 %2886, i64* %2888, align 8 | |
br label %instr_0x000A6F30 | |
instr_0x000A6F30: ; preds = %instr_0x000A6F2C | |
%2889 = getelementptr i8* %ppu_state, i32 1016 | |
%2890 = bitcast i8* %2889 to i64* | |
%2891 = load i64* %2890, align 8 | |
%2892 = getelementptr i8* %ppu_state, i32 1000 | |
%2893 = bitcast i8* %2892 to i64* | |
%2894 = load i64* %2893, align 8 | |
%2895 = add i64 %2891, %2894 | |
%2896 = getelementptr i8* %ppu_state, i32 1016 | |
%2897 = bitcast i8* %2896 to i64* | |
store i64 %2895, i64* %2897, align 8 | |
br label %instr_0x000A6F34 | |
instr_0x000A6F34: ; preds = %instr_0x000A6F30 | |
%2898 = getelementptr i8* %ppu_state, i32 992 | |
%2899 = bitcast i8* %2898 to i64* | |
%2900 = load i64* %2899, align 8 | |
%2901 = getelementptr i8* %ppu_state, i32 992 | |
%2902 = bitcast i8* %2901 to i64* | |
%2903 = load i64* %2902, align 8 | |
%2904 = or i64 %2900, %2903 | |
%2905 = getelementptr i8* %ppu_state, i32 792 | |
%2906 = bitcast i8* %2905 to i64* | |
store i64 %2904, i64* %2906, align 8 | |
br label %instr_0x000A6F38 | |
instr_0x000A6F38: ; preds = %instr_0x000A6F34 | |
%2907 = getelementptr i8* %ppu_state, i32 976 | |
%2908 = bitcast i8* %2907 to i64* | |
%2909 = load i64* %2908, align 8 | |
%2910 = add i64 %2909, 4 | |
%2911 = and i64 %2910, 4294967295 | |
%2912 = add i64 %2911, 2147418112 | |
%2913 = inttoptr i64 %2912 to i32* | |
%2914 = load i32* %2913 | |
%2915 = call i32 @llvm.bswap.i32(i32 %2914) | |
%2916 = zext i32 %2915 to i64 | |
%2917 = getelementptr i8* %ppu_state, i32 784 | |
%2918 = bitcast i8* %2917 to i64* | |
store i64 %2916, i64* %2918, align 8 | |
br label %instr_0x000A6F3C | |
instr_0x000A6F3C: ; preds = %instr_0x000A6F38 | |
%2919 = getelementptr i8* %ppu_state, i32 1016 | |
%2920 = bitcast i8* %2919 to i64* | |
%2921 = load i64* %2920, align 8 | |
%2922 = and i64 %2921, 4294967295 | |
%2923 = getelementptr i8* %ppu_state, i32 800 | |
%2924 = bitcast i8* %2923 to i64* | |
store i64 %2922, i64* %2924, align 8 | |
br label %instr_0x000A6F40 | |
instr_0x000A6F40: ; preds = %instr_0x000A6F3C | |
%2925 = getelementptr i8* %ppu_state, i32 768 | |
%2926 = bitcast i8* %2925 to i64* | |
%2927 = load i64* %2926, align 8 | |
%2928 = getelementptr i8* %ppu_state, i32 1576 | |
%2929 = bitcast i8* %2928 to i64* | |
store i64 %2927, i64* %2929, align 8 | |
br label %instr_0x000A6F44 | |
instr_0x000A6F44: ; preds = %instr_0x000A6F40 | |
%2930 = getelementptr i8* %ppu_state, i32 1576 | |
%2931 = bitcast i8* %2930 to i64* | |
%2932 = load i64* %2931, align 8 | |
%2933 = and i64 %2932, -4 | |
%2934 = trunc i64 %2933 to i32 | |
%2935 = getelementptr i8* %ppu_state, i32 1576 | |
%2936 = bitcast i8* %2935 to i64* | |
%2937 = load i64* %2936, align 8 | |
%2938 = getelementptr i8* %ppu_state, i32 1568 | |
%2939 = bitcast i8* %2938 to i64* | |
store i64 683848, i64* %2939, align 8 | |
%2940 = getelementptr i8* %ppu_state, i32 1664 | |
%2941 = bitcast i8* %2940 to i32* | |
store i32 %2934, i32* %2941, align 4 | |
switch i32 %2934, label %instr_0x000A6F44_unknown_function [ | |
i32 469328, label %instr_0x000A6F44_0x00072950 | |
] | |
instr_0x000A6F44_unknown_function: ; preds = %instr_0x000A6F44 | |
%2942 = call i32 @execute_unknown_function(i8* %ppu_state, i64 0) | |
br label %instr_0x000A6F48 | |
instr_0x000A6F44_0x00072950: ; preds = %instr_0x000A6F44 | |
%2943 = load i64* inttoptr (i64 8623353112 to i64*) | |
%2944 = inttoptr i64 %2943 to i32 (i8*, i64)* | |
%2945 = call i32 %2944(i8* %ppu_state, i64 0) | |
%2946 = icmp eq i32 %2945, -1 | |
br i1 %2946, label %instr_0x000A6F44_then_all_fs, label %instr_0x000A6F44_merge_all_fs | |
instr_0x000A6F44_then_all_fs: ; preds = %instr_0x000A6F44_0x00072950 | |
ret i32 0 | |
instr_0x000A6F44_merge_all_fs: ; preds = %instr_0x000A6F44_0x00072950 | |
br label %instr_0x000A6F48 | |
instr_0x000A6F48: ; preds = %instr_0x000A6F44_merge_all_fs, %instr_0x000A6F44_unknown_function | |
%2947 = getelementptr i8* %ppu_state, i32 776 | |
%2948 = bitcast i8* %2947 to i64* | |
%2949 = load i64* %2948, align 8 | |
%2950 = add i64 %2949, 40 | |
%2951 = and i64 %2950, 4294967295 | |
%2952 = add i64 %2951, 2147418112 | |
%2953 = inttoptr i64 %2952 to i64* | |
%2954 = load i64* %2953 | |
%2955 = call i64 @llvm.bswap.i64(i64 %2954) | |
%2956 = getelementptr i8* %ppu_state, i32 784 | |
%2957 = bitcast i8* %2956 to i64* | |
store i64 %2955, i64* %2957, align 8 | |
br label %instr_0x000A6F4C | |
instr_0x000A6F4C: ; preds = %instr_0x000A6F48 | |
%2958 = getelementptr i8* %ppu_state, i32 792 | |
%2959 = bitcast i8* %2958 to i32* | |
%2960 = load i32* %2959, align 8 | |
%2961 = sext i32 %2960 to i64 | |
%2962 = icmp slt i64 %2961, 0 | |
%2963 = icmp sgt i64 %2961, 0 | |
%2964 = icmp eq i64 %2961, 0 | |
%2965 = getelementptr i8* %ppu_state, i32 1540 | |
%2966 = bitcast i8* %2965 to i32* | |
%2967 = load i32* %2966, align 4 | |
%2968 = getelementptr i8* %ppu_state, i32 1544 | |
%2969 = bitcast i8* %2968 to i64* | |
%2970 = load i64* %2969, align 8 | |
%2971 = lshr i64 %2970, 31 | |
%2972 = and i64 %2971, 1 | |
%2973 = and i32 %2967, -16 | |
%2974 = zext i1 %2962 to i32 | |
%2975 = shl i32 %2974, 3 | |
%2976 = or i32 %2973, %2975 | |
%2977 = zext i1 %2963 to i32 | |
%2978 = shl i32 %2977, 2 | |
%2979 = or i32 %2976, %2978 | |
%2980 = zext i1 %2964 to i32 | |
%2981 = shl i32 %2980, 1 | |
%2982 = or i32 %2979, %2981 | |
%2983 = trunc i64 %2972 to i32 | |
%2984 = or i32 %2982, %2983 | |
%2985 = getelementptr i8* %ppu_state, i32 1540 | |
%2986 = bitcast i8* %2985 to i32* | |
store i32 %2984, i32* %2986, align 4 | |
br label %instr_0x000A6F50 | |
instr_0x000A6F50: ; preds = %instr_0x000A6F4C | |
%2987 = getelementptr i8* %ppu_state, i32 1576 | |
%2988 = bitcast i8* %2987 to i64* | |
%2989 = load i64* %2988, align 8 | |
%2990 = getelementptr i8* %ppu_state, i32 1540 | |
%2991 = bitcast i8* %2990 to i32* | |
%2992 = load i32* %2991, align 4 | |
%2993 = lshr i32 %2992, 3 | |
%2994 = and i32 %2993, 1 | |
%2995 = trunc i32 %2994 to i1 | |
br i1 %2995, label %instr_0x000A6F24, label %instr_0x000A6F54 | |
instr_0x000A6F54: ; preds = %instr_0x000A6F50 | |
%2996 = getelementptr i8* %ppu_state, i32 984 | |
%2997 = bitcast i8* %2996 to i32* | |
%2998 = load i32* %2997, align 8 | |
%2999 = sext i32 %2998 to i64 | |
%3000 = getelementptr i8* %ppu_state, i32 1008 | |
%3001 = bitcast i8* %3000 to i32* | |
%3002 = load i32* %3001, align 8 | |
%3003 = sext i32 %3002 to i64 | |
%3004 = icmp slt i64 %2999, %3003 | |
%3005 = icmp sgt i64 %2999, %3003 | |
%3006 = icmp eq i64 %2999, %3003 | |
%3007 = getelementptr i8* %ppu_state, i32 1540 | |
%3008 = bitcast i8* %3007 to i32* | |
%3009 = load i32* %3008, align 4 | |
%3010 = getelementptr i8* %ppu_state, i32 1544 | |
%3011 = bitcast i8* %3010 to i64* | |
%3012 = load i64* %3011, align 8 | |
%3013 = lshr i64 %3012, 31 | |
%3014 = and i64 %3013, 1 | |
%3015 = and i32 %3009, -16 | |
%3016 = zext i1 %3004 to i32 | |
%3017 = shl i32 %3016, 3 | |
%3018 = or i32 %3015, %3017 | |
%3019 = zext i1 %3005 to i32 | |
%3020 = shl i32 %3019, 2 | |
%3021 = or i32 %3018, %3020 | |
%3022 = zext i1 %3006 to i32 | |
%3023 = shl i32 %3022, 1 | |
%3024 = or i32 %3021, %3023 | |
%3025 = trunc i64 %3014 to i32 | |
%3026 = or i32 %3024, %3025 | |
%3027 = getelementptr i8* %ppu_state, i32 1540 | |
%3028 = bitcast i8* %3027 to i32* | |
store i32 %3026, i32* %3028, align 4 | |
br label %instr_0x000A6F58 | |
instr_0x000A6F58: ; preds = %instr_0x000A6F54 | |
%3029 = getelementptr i8* %ppu_state, i32 1576 | |
%3030 = bitcast i8* %3029 to i64* | |
%3031 = load i64* %3030, align 8 | |
%3032 = getelementptr i8* %ppu_state, i32 1540 | |
%3033 = bitcast i8* %3032 to i32* | |
%3034 = load i32* %3033, align 4 | |
%3035 = lshr i32 %3034, 1 | |
%3036 = and i32 %3035, 1 | |
%3037 = trunc i32 %3036 to i1 | |
br i1 %3037, label %instr_0x000A6EDC, label %instr_0x000A6F5C | |
instr_0x000A6F5C: ; preds = %instr_0x000A6F58 | |
%3038 = getelementptr i8* %ppu_state, i32 1008 | |
%3039 = bitcast i8* %3038 to i64* | |
%3040 = load i64* %3039, align 8 | |
%3041 = and i64 %3040, 4294967295 | |
%3042 = getelementptr i8* %ppu_state, i32 792 | |
%3043 = bitcast i8* %3042 to i64* | |
store i64 %3041, i64* %3043, align 8 | |
br label %instr_0x000A6F60 | |
instr_0x000A6F60: ; preds = %instr_0x000A6F5C | |
%3044 = getelementptr i8* %ppu_state, i32 992 | |
%3045 = bitcast i8* %3044 to i64* | |
%3046 = load i64* %3045, align 8 | |
%3047 = getelementptr i8* %ppu_state, i32 992 | |
%3048 = bitcast i8* %3047 to i64* | |
%3049 = load i64* %3048, align 8 | |
%3050 = or i64 %3046, %3049 | |
%3051 = getelementptr i8* %ppu_state, i32 800 | |
%3052 = bitcast i8* %3051 to i64* | |
store i64 %3050, i64* %3052, align 8 | |
br label %instr_0x000A6F64 | |
instr_0x000A6F64: ; preds = %instr_0x000A6F60 | |
%3053 = getelementptr i8* %ppu_state, i32 904 | |
%3054 = bitcast i8* %3053 to i64* | |
%3055 = load i64* %3054, align 8 | |
%3056 = and i64 %3055, 4294967295 | |
%3057 = getelementptr i8* %ppu_state, i32 808 | |
%3058 = bitcast i8* %3057 to i64* | |
store i64 %3056, i64* %3058, align 8 | |
br label %instr_0x000A6F68 | |
instr_0x000A6F68: ; preds = %instr_0x000A6F64 | |
%3059 = getelementptr i8* %ppu_state, i32 952 | |
%3060 = bitcast i8* %3059 to i64* | |
%3061 = load i64* %3060, align 8 | |
%3062 = add i64 %3061, -1 | |
%3063 = getelementptr i8* %ppu_state, i32 952 | |
%3064 = bitcast i8* %3063 to i64* | |
store i64 %3062, i64* %3064, align 8 | |
br label %instr_0x000A6F6C | |
instr_0x000A6F6C: ; preds = %instr_0x000A6F68 | |
%3065 = getelementptr i8* %ppu_state, i32 1568 | |
%3066 = bitcast i8* %3065 to i64* | |
store i64 683888, i64* %3066, align 8 | |
%3067 = getelementptr i8* %ppu_state, i32 1664 | |
%3068 = bitcast i8* %3067 to i32* | |
store i32 682448, i32* %3068, align 4 | |
%3069 = load i64* inttoptr (i64 8623353112 to i64*) | |
%3070 = inttoptr i64 %3069 to i32 (i8*, i64)* | |
%3071 = call i32 %3070(i8* %ppu_state, i64 0) | |
%3072 = icmp eq i32 %3071, -1 | |
br i1 %3072, label %instr_0x000A6F6C_then_all_fs, label %instr_0x000A6F6C_merge_all_fs | |
instr_0x000A6F6C_then_all_fs: ; preds = %instr_0x000A6F6C | |
ret i32 0 | |
instr_0x000A6F6C_merge_all_fs: ; preds = %instr_0x000A6F6C | |
br label %instr_0x000A6F70 | |
instr_0x000A6F70: ; preds = %instr_0x000A6F6C_merge_all_fs | |
%3073 = getelementptr i8* %ppu_state, i32 952 | |
%3074 = bitcast i8* %3073 to i32* | |
%3075 = load i32* %3074, align 8 | |
%3076 = sext i32 %3075 to i64 | |
%3077 = icmp slt i64 %3076, 0 | |
%3078 = icmp sgt i64 %3076, 0 | |
%3079 = icmp eq i64 %3076, 0 | |
%3080 = getelementptr i8* %ppu_state, i32 1540 | |
%3081 = bitcast i8* %3080 to i32* | |
%3082 = load i32* %3081, align 4 | |
%3083 = getelementptr i8* %ppu_state, i32 1544 | |
%3084 = bitcast i8* %3083 to i64* | |
%3085 = load i64* %3084, align 8 | |
%3086 = lshr i64 %3085, 31 | |
%3087 = and i64 %3086, 1 | |
%3088 = and i32 %3082, -16 | |
%3089 = zext i1 %3077 to i32 | |
%3090 = shl i32 %3089, 3 | |
%3091 = or i32 %3088, %3090 | |
%3092 = zext i1 %3078 to i32 | |
%3093 = shl i32 %3092, 2 | |
%3094 = or i32 %3091, %3093 | |
%3095 = zext i1 %3079 to i32 | |
%3096 = shl i32 %3095, 1 | |
%3097 = or i32 %3094, %3096 | |
%3098 = trunc i64 %3087 to i32 | |
%3099 = or i32 %3097, %3098 | |
%3100 = getelementptr i8* %ppu_state, i32 1540 | |
%3101 = bitcast i8* %3100 to i32* | |
store i32 %3099, i32* %3101, align 4 | |
br label %instr_0x000A6F74 | |
instr_0x000A6F74: ; preds = %instr_0x000A6F70 | |
%3102 = getelementptr i8* %ppu_state, i32 1576 | |
%3103 = bitcast i8* %3102 to i64* | |
%3104 = load i64* %3103, align 8 | |
%3105 = getelementptr i8* %ppu_state, i32 1540 | |
%3106 = bitcast i8* %3105 to i32* | |
%3107 = load i32* %3106, align 4 | |
%3108 = lshr i32 %3107, 1 | |
%3109 = and i32 %3108, 1 | |
%3110 = trunc i32 %3109 to i1 | |
%3111 = xor i1 %3110, true | |
br i1 %3111, label %instr_0x000A6EE8, label %instr_0x000A6F78 | |
instr_0x000A6F78: ; preds = %instr_0x000A6F74, %instr_0x000A6EE4, %instr_0x000A6ED8 | |
%3112 = getelementptr i8* %ppu_state, i32 776 | |
%3113 = bitcast i8* %3112 to i64* | |
%3114 = load i64* %3113, align 8 | |
%3115 = add i64 %3114, 288 | |
%3116 = and i64 %3115, 4294967295 | |
%3117 = add i64 %3116, 2147418112 | |
%3118 = inttoptr i64 %3117 to i64* | |
%3119 = load i64* %3118 | |
%3120 = call i64 @llvm.bswap.i64(i64 %3119) | |
%3121 = getelementptr i8* %ppu_state, i32 768 | |
%3122 = bitcast i8* %3121 to i64* | |
store i64 %3120, i64* %3122, align 8 | |
br label %instr_0x000A6F7C | |
instr_0x000A6F7C: ; preds = %instr_0x000A6F78 | |
%3123 = getelementptr i8* %ppu_state, i32 776 | |
%3124 = bitcast i8* %3123 to i64* | |
%3125 = load i64* %3124, align 8 | |
%3126 = add i64 %3125, 128 | |
%3127 = and i64 %3126, 4294967295 | |
%3128 = add i64 %3127, 2147418112 | |
%3129 = inttoptr i64 %3128 to i64* | |
%3130 = load i64* %3129 | |
%3131 = call i64 @llvm.bswap.i64(i64 %3130) | |
%3132 = getelementptr i8* %ppu_state, i32 880 | |
%3133 = bitcast i8* %3132 to i64* | |
store i64 %3131, i64* %3133, align 8 | |
br label %instr_0x000A6F80 | |
instr_0x000A6F80: ; preds = %instr_0x000A6F7C | |
%3134 = getelementptr i8* %ppu_state, i32 776 | |
%3135 = bitcast i8* %3134 to i64* | |
%3136 = load i64* %3135, align 8 | |
%3137 = add i64 %3136, 136 | |
%3138 = and i64 %3137, 4294967295 | |
%3139 = add i64 %3138, 2147418112 | |
%3140 = inttoptr i64 %3139 to i64* | |
%3141 = load i64* %3140 | |
%3142 = call i64 @llvm.bswap.i64(i64 %3141) | |
%3143 = getelementptr i8* %ppu_state, i32 888 | |
%3144 = bitcast i8* %3143 to i64* | |
store i64 %3142, i64* %3144, align 8 | |
br label %instr_0x000A6F84 | |
instr_0x000A6F84: ; preds = %instr_0x000A6F80 | |
%3145 = getelementptr i8* %ppu_state, i32 768 | |
%3146 = bitcast i8* %3145 to i64* | |
%3147 = load i64* %3146, align 8 | |
%3148 = getelementptr i8* %ppu_state, i32 1568 | |
%3149 = bitcast i8* %3148 to i64* | |
store i64 %3147, i64* %3149, align 8 | |
br label %instr_0x000A6F88 | |
instr_0x000A6F88: ; preds = %instr_0x000A6F84 | |
%3150 = getelementptr i8* %ppu_state, i32 776 | |
%3151 = bitcast i8* %3150 to i64* | |
%3152 = load i64* %3151, align 8 | |
%3153 = add i64 %3152, 144 | |
%3154 = and i64 %3153, 4294967295 | |
%3155 = add i64 %3154, 2147418112 | |
%3156 = inttoptr i64 %3155 to i64* | |
%3157 = load i64* %3156 | |
%3158 = call i64 @llvm.bswap.i64(i64 %3157) | |
%3159 = getelementptr i8* %ppu_state, i32 896 | |
%3160 = bitcast i8* %3159 to i64* | |
store i64 %3158, i64* %3160, align 8 | |
br label %instr_0x000A6F8C | |
instr_0x000A6F8C: ; preds = %instr_0x000A6F88 | |
%3161 = getelementptr i8* %ppu_state, i32 776 | |
%3162 = bitcast i8* %3161 to i64* | |
%3163 = load i64* %3162, align 8 | |
%3164 = add i64 %3163, 152 | |
%3165 = and i64 %3164, 4294967295 | |
%3166 = add i64 %3165, 2147418112 | |
%3167 = inttoptr i64 %3166 to i64* | |
%3168 = load i64* %3167 | |
%3169 = call i64 @llvm.bswap.i64(i64 %3168) | |
%3170 = getelementptr i8* %ppu_state, i32 904 | |
%3171 = bitcast i8* %3170 to i64* | |
store i64 %3169, i64* %3171, align 8 | |
br label %instr_0x000A6F90 | |
instr_0x000A6F90: ; preds = %instr_0x000A6F8C | |
%3172 = getelementptr i8* %ppu_state, i32 776 | |
%3173 = bitcast i8* %3172 to i64* | |
%3174 = load i64* %3173, align 8 | |
%3175 = add i64 %3174, 160 | |
%3176 = and i64 %3175, 4294967295 | |
%3177 = add i64 %3176, 2147418112 | |
%3178 = inttoptr i64 %3177 to i64* | |
%3179 = load i64* %3178 | |
%3180 = call i64 @llvm.bswap.i64(i64 %3179) | |
%3181 = getelementptr i8* %ppu_state, i32 912 | |
%3182 = bitcast i8* %3181 to i64* | |
store i64 %3180, i64* %3182, align 8 | |
br label %instr_0x000A6F94 | |
instr_0x000A6F94: ; preds = %instr_0x000A6F90 | |
%3183 = getelementptr i8* %ppu_state, i32 776 | |
%3184 = bitcast i8* %3183 to i64* | |
%3185 = load i64* %3184, align 8 | |
%3186 = add i64 %3185, 168 | |
%3187 = and i64 %3186, 4294967295 | |
%3188 = add i64 %3187, 2147418112 | |
%3189 = inttoptr i64 %3188 to i64* | |
%3190 = load i64* %3189 | |
%3191 = call i64 @llvm.bswap.i64(i64 %3190) | |
%3192 = getelementptr i8* %ppu_state, i32 920 | |
%3193 = bitcast i8* %3192 to i64* | |
store i64 %3191, i64* %3193, align 8 | |
br label %instr_0x000A6F98 | |
instr_0x000A6F98: ; preds = %instr_0x000A6F94 | |
%3194 = getelementptr i8* %ppu_state, i32 776 | |
%3195 = bitcast i8* %3194 to i64* | |
%3196 = load i64* %3195, align 8 | |
%3197 = add i64 %3196, 176 | |
%3198 = and i64 %3197, 4294967295 | |
%3199 = add i64 %3198, 2147418112 | |
%3200 = inttoptr i64 %3199 to i64* | |
%3201 = load i64* %3200 | |
%3202 = call i64 @llvm.bswap.i64(i64 %3201) | |
%3203 = getelementptr i8* %ppu_state, i32 928 | |
%3204 = bitcast i8* %3203 to i64* | |
store i64 %3202, i64* %3204, align 8 | |
br label %instr_0x000A6F9C | |
instr_0x000A6F9C: ; preds = %instr_0x000A6F98 | |
%3205 = getelementptr i8* %ppu_state, i32 776 | |
%3206 = bitcast i8* %3205 to i64* | |
%3207 = load i64* %3206, align 8 | |
%3208 = add i64 %3207, 184 | |
%3209 = and i64 %3208, 4294967295 | |
%3210 = add i64 %3209, 2147418112 | |
%3211 = inttoptr i64 %3210 to i64* | |
%3212 = load i64* %3211 | |
%3213 = call i64 @llvm.bswap.i64(i64 %3212) | |
%3214 = getelementptr i8* %ppu_state, i32 936 | |
%3215 = bitcast i8* %3214 to i64* | |
store i64 %3213, i64* %3215, align 8 | |
br label %instr_0x000A6FA0 | |
instr_0x000A6FA0: ; preds = %instr_0x000A6F9C | |
%3216 = getelementptr i8* %ppu_state, i32 776 | |
%3217 = bitcast i8* %3216 to i64* | |
%3218 = load i64* %3217, align 8 | |
%3219 = add i64 %3218, 192 | |
%3220 = and i64 %3219, 4294967295 | |
%3221 = add i64 %3220, 2147418112 | |
%3222 = inttoptr i64 %3221 to i64* | |
%3223 = load i64* %3222 | |
%3224 = call i64 @llvm.bswap.i64(i64 %3223) | |
%3225 = getelementptr i8* %ppu_state, i32 944 | |
%3226 = bitcast i8* %3225 to i64* | |
store i64 %3224, i64* %3226, align 8 | |
br label %instr_0x000A6FA4 | |
instr_0x000A6FA4: ; preds = %instr_0x000A6FA0 | |
%3227 = getelementptr i8* %ppu_state, i32 776 | |
%3228 = bitcast i8* %3227 to i64* | |
%3229 = load i64* %3228, align 8 | |
%3230 = add i64 %3229, 200 | |
%3231 = and i64 %3230, 4294967295 | |
%3232 = add i64 %3231, 2147418112 | |
%3233 = inttoptr i64 %3232 to i64* | |
%3234 = load i64* %3233 | |
%3235 = call i64 @llvm.bswap.i64(i64 %3234) | |
%3236 = getelementptr i8* %ppu_state, i32 952 | |
%3237 = bitcast i8* %3236 to i64* | |
store i64 %3235, i64* %3237, align 8 | |
br label %instr_0x000A6FA8 | |
instr_0x000A6FA8: ; preds = %instr_0x000A6FA4 | |
%3238 = getelementptr i8* %ppu_state, i32 776 | |
%3239 = bitcast i8* %3238 to i64* | |
%3240 = load i64* %3239, align 8 | |
%3241 = add i64 %3240, 208 | |
%3242 = and i64 %3241, 4294967295 | |
%3243 = add i64 %3242, 2147418112 | |
%3244 = inttoptr i64 %3243 to i64* | |
%3245 = load i64* %3244 | |
%3246 = call i64 @llvm.bswap.i64(i64 %3245) | |
%3247 = getelementptr i8* %ppu_state, i32 960 | |
%3248 = bitcast i8* %3247 to i64* | |
store i64 %3246, i64* %3248, align 8 | |
br label %instr_0x000A6FAC | |
instr_0x000A6FAC: ; preds = %instr_0x000A6FA8 | |
%3249 = getelementptr i8* %ppu_state, i32 776 | |
%3250 = bitcast i8* %3249 to i64* | |
%3251 = load i64* %3250, align 8 | |
%3252 = add i64 %3251, 216 | |
%3253 = and i64 %3252, 4294967295 | |
%3254 = add i64 %3253, 2147418112 | |
%3255 = inttoptr i64 %3254 to i64* | |
%3256 = load i64* %3255 | |
%3257 = call i64 @llvm.bswap.i64(i64 %3256) | |
%3258 = getelementptr i8* %ppu_state, i32 968 | |
%3259 = bitcast i8* %3258 to i64* | |
store i64 %3257, i64* %3259, align 8 | |
br label %instr_0x000A6FB0 | |
instr_0x000A6FB0: ; preds = %instr_0x000A6FAC | |
%3260 = getelementptr i8* %ppu_state, i32 776 | |
%3261 = bitcast i8* %3260 to i64* | |
%3262 = load i64* %3261, align 8 | |
%3263 = add i64 %3262, 224 | |
%3264 = and i64 %3263, 4294967295 | |
%3265 = add i64 %3264, 2147418112 | |
%3266 = inttoptr i64 %3265 to i64* | |
%3267 = load i64* %3266 | |
%3268 = call i64 @llvm.bswap.i64(i64 %3267) | |
%3269 = getelementptr i8* %ppu_state, i32 976 | |
%3270 = bitcast i8* %3269 to i64* | |
store i64 %3268, i64* %3270, align 8 | |
br label %instr_0x000A6FB4 | |
instr_0x000A6FB4: ; preds = %instr_0x000A6FB0 | |
%3271 = getelementptr i8* %ppu_state, i32 776 | |
%3272 = bitcast i8* %3271 to i64* | |
%3273 = load i64* %3272, align 8 | |
%3274 = add i64 %3273, 232 | |
%3275 = and i64 %3274, 4294967295 | |
%3276 = add i64 %3275, 2147418112 | |
%3277 = inttoptr i64 %3276 to i64* | |
%3278 = load i64* %3277 | |
%3279 = call i64 @llvm.bswap.i64(i64 %3278) | |
%3280 = getelementptr i8* %ppu_state, i32 984 | |
%3281 = bitcast i8* %3280 to i64* | |
store i64 %3279, i64* %3281, align 8 | |
br label %instr_0x000A6FB8 | |
instr_0x000A6FB8: ; preds = %instr_0x000A6FB4 | |
%3282 = getelementptr i8* %ppu_state, i32 776 | |
%3283 = bitcast i8* %3282 to i64* | |
%3284 = load i64* %3283, align 8 | |
%3285 = add i64 %3284, 240 | |
%3286 = and i64 %3285, 4294967295 | |
%3287 = add i64 %3286, 2147418112 | |
%3288 = inttoptr i64 %3287 to i64* | |
%3289 = load i64* %3288 | |
%3290 = call i64 @llvm.bswap.i64(i64 %3289) | |
%3291 = getelementptr i8* %ppu_state, i32 992 | |
%3292 = bitcast i8* %3291 to i64* | |
store i64 %3290, i64* %3292, align 8 | |
br label %instr_0x000A6FBC | |
instr_0x000A6FBC: ; preds = %instr_0x000A6FB8 | |
%3293 = getelementptr i8* %ppu_state, i32 776 | |
%3294 = bitcast i8* %3293 to i64* | |
%3295 = load i64* %3294, align 8 | |
%3296 = add i64 %3295, 248 | |
%3297 = and i64 %3296, 4294967295 | |
%3298 = add i64 %3297, 2147418112 | |
%3299 = inttoptr i64 %3298 to i64* | |
%3300 = load i64* %3299 | |
%3301 = call i64 @llvm.bswap.i64(i64 %3300) | |
%3302 = getelementptr i8* %ppu_state, i32 1000 | |
%3303 = bitcast i8* %3302 to i64* | |
store i64 %3301, i64* %3303, align 8 | |
br label %instr_0x000A6FC0 | |
instr_0x000A6FC0: ; preds = %instr_0x000A6FBC | |
%3304 = getelementptr i8* %ppu_state, i32 776 | |
%3305 = bitcast i8* %3304 to i64* | |
%3306 = load i64* %3305, align 8 | |
%3307 = add i64 %3306, 256 | |
%3308 = and i64 %3307, 4294967295 | |
%3309 = add i64 %3308, 2147418112 | |
%3310 = inttoptr i64 %3309 to i64* | |
%3311 = load i64* %3310 | |
%3312 = call i64 @llvm.bswap.i64(i64 %3311) | |
%3313 = getelementptr i8* %ppu_state, i32 1008 | |
%3314 = bitcast i8* %3313 to i64* | |
store i64 %3312, i64* %3314, align 8 | |
br label %instr_0x000A6FC4 | |
instr_0x000A6FC4: ; preds = %instr_0x000A6FC0 | |
%3315 = getelementptr i8* %ppu_state, i32 776 | |
%3316 = bitcast i8* %3315 to i64* | |
%3317 = load i64* %3316, align 8 | |
%3318 = add i64 %3317, 264 | |
%3319 = and i64 %3318, 4294967295 | |
%3320 = add i64 %3319, 2147418112 | |
%3321 = inttoptr i64 %3320 to i64* | |
%3322 = load i64* %3321 | |
%3323 = call i64 @llvm.bswap.i64(i64 %3322) | |
%3324 = getelementptr i8* %ppu_state, i32 1016 | |
%3325 = bitcast i8* %3324 to i64* | |
store i64 %3323, i64* %3325, align 8 | |
br label %instr_0x000A6FC8 | |
instr_0x000A6FC8: ; preds = %instr_0x000A6FC4 | |
%3326 = getelementptr i8* %ppu_state, i32 776 | |
%3327 = bitcast i8* %3326 to i64* | |
%3328 = load i64* %3327, align 8 | |
%3329 = add i64 %3328, 272 | |
%3330 = getelementptr i8* %ppu_state, i32 776 | |
%3331 = bitcast i8* %3330 to i64* | |
store i64 %3329, i64* %3331, align 8 | |
br label %instr_0x000A6FCC | |
instr_0x000A6FCC: ; preds = %instr_0x000A6FC8 | |
%3332 = getelementptr i8* %ppu_state, i32 1568 | |
%3333 = bitcast i8* %3332 to i64* | |
%3334 = load i64* %3333, align 8 | |
%3335 = and i64 %3334, -4 | |
%3336 = trunc i64 %3335 to i32 | |
%3337 = getelementptr i8* %ppu_state, i32 1576 | |
%3338 = bitcast i8* %3337 to i64* | |
%3339 = load i64* %3338, align 8 | |
%3340 = getelementptr i8* %ppu_state, i32 1664 | |
%3341 = bitcast i8* %3340 to i32* | |
store i32 %3336, i32* %3341, align 4 | |
ret i32 0 | |
instr_0x000A6FD0: ; preds = %instr_0x000A6B84 | |
%3342 = phi i32 [ 682884, %instr_0x000A6B84 ] | |
%3343 = getelementptr i8* %ppu_state, i32 1664 | |
%3344 = bitcast i8* %3343 to i32* | |
store i32 683984, i32* %3344, align 4 | |
%3345 = zext i32 %3342 to i64 | |
%3346 = or i64 %3345, 2932174172979200 | |
%3347 = load i64* inttoptr (i64 8623353120 to i64*) | |
%3348 = inttoptr i64 %3347 to i32 (i8*, i64)* | |
%3349 = call i32 %3348(i8* %ppu_state, i64 %3346) | |
%3350 = icmp eq i32 %3349, -1 | |
br i1 %3350, label %instr_0x000A6FD0_then_all_fs, label %instr_0x000A6FD0_merge_all_fs | |
instr_0x000A6FD0_then_all_fs: ; preds = %instr_0x000A6FD0 | |
ret i32 0 | |
instr_0x000A6FD0_merge_all_fs: ; preds = %instr_0x000A6FD0 | |
%3351 = icmp ne i32 %3349, 0 | |
br i1 %3351, label %instr_0x000A6FD0_then_0, label %instr_0x000A6FD0_merge_0 | |
instr_0x000A6FD0_then_0: ; preds = %instr_0x000A6FD0_merge_all_fs | |
%3352 = zext i32 %3349 to i64 | |
%3353 = or i64 %3352, 2932174172979200 | |
%3354 = call i32 @execute_unknown_block(i8* %ppu_state, i64 %3353) | |
br label %instr_0x000A6FD0_merge_0 | |
instr_0x000A6FD0_merge_0: ; preds = %instr_0x000A6FD0_then_0, %instr_0x000A6FD0_merge_all_fs | |
ret i32 0 | |
instr_0x000A6FF0: ; preds = %instr_0x000A6E94 | |
%3355 = getelementptr i8* %ppu_state, i32 952 | |
%3356 = bitcast i8* %3355 to i64* | |
%3357 = load i64* %3356, align 8 | |
%3358 = and i64 %3357, 4294967295 | |
%3359 = getelementptr i8* %ppu_state, i32 800 | |
%3360 = bitcast i8* %3359 to i64* | |
store i64 %3358, i64* %3360, align 8 | |
br label %instr_0x000A6FF4 | |
instr_0x000A6FF4: ; preds = %instr_0x000A6FF0 | |
%3361 = getelementptr i8* %ppu_state, i32 920 | |
%3362 = bitcast i8* %3361 to i64* | |
%3363 = load i64* %3362, align 8 | |
%3364 = and i64 %3363, 4294967295 | |
%3365 = getelementptr i8* %ppu_state, i32 792 | |
%3366 = bitcast i8* %3365 to i64* | |
store i64 %3364, i64* %3366, align 8 | |
br label %instr_0x000A6FF8 | |
instr_0x000A6FF8: ; preds = %instr_0x000A6FF4 | |
%3367 = getelementptr i8* %ppu_state, i32 896 | |
%3368 = bitcast i8* %3367 to i64* | |
%3369 = load i64* %3368, align 8 | |
%3370 = and i64 %3369, 4294967295 | |
%3371 = getelementptr i8* %ppu_state, i32 808 | |
%3372 = bitcast i8* %3371 to i64* | |
store i64 %3370, i64* %3372, align 8 | |
br label %instr_0x000A6FFC | |
instr_0x000A6FFC: ; preds = %instr_0x000A6FF8 | |
%3373 = getelementptr i8* %ppu_state, i32 936 | |
%3374 = bitcast i8* %3373 to i64* | |
%3375 = load i64* %3374, align 8 | |
%3376 = getelementptr i8* %ppu_state, i32 936 | |
%3377 = bitcast i8* %3376 to i64* | |
%3378 = load i64* %3377, align 8 | |
%3379 = or i64 %3375, %3378 | |
%3380 = getelementptr i8* %ppu_state, i32 816 | |
%3381 = bitcast i8* %3380 to i64* | |
store i64 %3379, i64* %3381, align 8 | |
br label %instr_0x000A7000 | |
instr_0x000A7000: ; preds = %instr_0x000A6FFC | |
%3382 = getelementptr i8* %ppu_state, i32 960 | |
%3383 = bitcast i8* %3382 to i64* | |
%3384 = load i64* %3383, align 8 | |
%3385 = getelementptr i8* %ppu_state, i32 960 | |
%3386 = bitcast i8* %3385 to i64* | |
%3387 = load i64* %3386, align 8 | |
%3388 = or i64 %3384, %3387 | |
%3389 = getelementptr i8* %ppu_state, i32 824 | |
%3390 = bitcast i8* %3389 to i64* | |
store i64 %3388, i64* %3390, align 8 | |
br label %instr_0x000A7004 | |
instr_0x000A7004: ; preds = %instr_0x000A7000 | |
%3391 = getelementptr i8* %ppu_state, i32 856 | |
%3392 = bitcast i8* %3391 to i64* | |
%3393 = load i64* %3392, align 8 | |
%3394 = getelementptr i8* %ppu_state, i32 856 | |
%3395 = bitcast i8* %3394 to i64* | |
%3396 = load i64* %3395, align 8 | |
%3397 = or i64 %3393, %3396 | |
%3398 = getelementptr i8* %ppu_state, i32 952 | |
%3399 = bitcast i8* %3398 to i64* | |
store i64 %3397, i64* %3399, align 8 | |
br label %instr_0x000A7008 | |
instr_0x000A7008: ; preds = %instr_0x000A7004 | |
%3400 = getelementptr i8* %ppu_state, i32 1568 | |
%3401 = bitcast i8* %3400 to i64* | |
store i64 684044, i64* %3401, align 8 | |
%3402 = getelementptr i8* %ppu_state, i32 1664 | |
%3403 = bitcast i8* %3402 to i32* | |
store i32 682700, i32* %3403, align 4 | |
%3404 = load i64* inttoptr (i64 8623353112 to i64*) | |
%3405 = inttoptr i64 %3404 to i32 (i8*, i64)* | |
%3406 = call i32 %3405(i8* %ppu_state, i64 0) | |
%3407 = icmp eq i32 %3406, -1 | |
br i1 %3407, label %instr_0x000A7008_then_all_fs, label %instr_0x000A7008_merge_all_fs | |
instr_0x000A7008_then_all_fs: ; preds = %instr_0x000A7008 | |
ret i32 0 | |
instr_0x000A7008_merge_all_fs: ; preds = %instr_0x000A7008 | |
br label %instr_0x000A700C | |
instr_0x000A700C: ; preds = %instr_0x000A7008_merge_all_fs | |
%3408 = getelementptr i8* %ppu_state, i32 896 | |
%3409 = bitcast i8* %3408 to i32* | |
%3410 = load i32* %3409, align 8 | |
%3411 = sext i32 %3410 to i64 | |
%3412 = icmp slt i64 %3411, 0 | |
%3413 = icmp sgt i64 %3411, 0 | |
%3414 = icmp eq i64 %3411, 0 | |
%3415 = getelementptr i8* %ppu_state, i32 1540 | |
%3416 = bitcast i8* %3415 to i32* | |
%3417 = load i32* %3416, align 4 | |
%3418 = getelementptr i8* %ppu_state, i32 1544 | |
%3419 = bitcast i8* %3418 to i64* | |
%3420 = load i64* %3419, align 8 | |
%3421 = lshr i64 %3420, 31 | |
%3422 = and i64 %3421, 1 | |
%3423 = and i32 %3417, -16 | |
%3424 = zext i1 %3412 to i32 | |
%3425 = shl i32 %3424, 3 | |
%3426 = or i32 %3423, %3425 | |
%3427 = zext i1 %3413 to i32 | |
%3428 = shl i32 %3427, 2 | |
%3429 = or i32 %3426, %3428 | |
%3430 = zext i1 %3414 to i32 | |
%3431 = shl i32 %3430, 1 | |
%3432 = or i32 %3429, %3431 | |
%3433 = trunc i64 %3422 to i32 | |
%3434 = or i32 %3432, %3433 | |
%3435 = getelementptr i8* %ppu_state, i32 1540 | |
%3436 = bitcast i8* %3435 to i32* | |
store i32 %3434, i32* %3436, align 4 | |
br label %instr_0x000A7010 | |
instr_0x000A7010: ; preds = %instr_0x000A700C | |
%3437 = getelementptr i8* %ppu_state, i32 1576 | |
%3438 = bitcast i8* %3437 to i64* | |
%3439 = load i64* %3438, align 8 | |
%3440 = getelementptr i8* %ppu_state, i32 1540 | |
%3441 = bitcast i8* %3440 to i32* | |
%3442 = load i32* %3441, align 4 | |
%3443 = lshr i32 %3442, 1 | |
%3444 = and i32 %3443, 1 | |
%3445 = trunc i32 %3444 to i1 | |
%3446 = xor i1 %3445, true | |
br i1 %3446, label %instr_0x000A6EBC, label %instr_0x000A7014 | |
instr_0x000A7014: ; preds = %instr_0x000A7010, %instr_0x000A6EB8, %instr_0x000A6B38 | |
%3447 = phi i32 [ 684048, %instr_0x000A7010 ], [ 683704, %instr_0x000A6EB8 ], [ 682808, %instr_0x000A6B38 ] | |
%3448 = getelementptr i8* %ppu_state, i32 1664 | |
%3449 = bitcast i8* %3448 to i32* | |
store i32 684052, i32* %3449, align 4 | |
%3450 = zext i32 %3447 to i64 | |
%3451 = or i64 %3450, 2932174172979200 | |
%3452 = load i64* inttoptr (i64 8623353120 to i64*) | |
%3453 = inttoptr i64 %3452 to i32 (i8*, i64)* | |
%3454 = call i32 %3453(i8* %ppu_state, i64 %3451) | |
%3455 = icmp eq i32 %3454, -1 | |
br i1 %3455, label %instr_0x000A7014_then_all_fs, label %instr_0x000A7014_merge_all_fs | |
instr_0x000A7014_then_all_fs: ; preds = %instr_0x000A7014 | |
ret i32 0 | |
instr_0x000A7014_merge_all_fs: ; preds = %instr_0x000A7014 | |
%3456 = icmp ne i32 %3454, 0 | |
br i1 %3456, label %instr_0x000A7014_then_0, label %instr_0x000A7014_merge_0 | |
instr_0x000A7014_then_0: ; preds = %instr_0x000A7014_merge_all_fs | |
%3457 = zext i32 %3454 to i64 | |
%3458 = or i64 %3457, 2932174172979200 | |
%3459 = call i32 @execute_unknown_block(i8* %ppu_state, i64 %3458) | |
br label %instr_0x000A7014_merge_0 | |
instr_0x000A7014_merge_0: ; preds = %instr_0x000A7014_then_0, %instr_0x000A7014_merge_all_fs | |
ret i32 0 | |
instr_0x000A70A4: ; preds = %instr_0x000A6F20 | |
%3460 = getelementptr i8* %ppu_state, i32 992 | |
%3461 = bitcast i8* %3460 to i64* | |
%3462 = load i64* %3461, align 8 | |
%3463 = getelementptr i8* %ppu_state, i32 992 | |
%3464 = bitcast i8* %3463 to i64* | |
%3465 = load i64* %3464, align 8 | |
%3466 = or i64 %3462, %3465 | |
%3467 = getelementptr i8* %ppu_state, i32 800 | |
%3468 = bitcast i8* %3467 to i64* | |
store i64 %3466, i64* %3468, align 8 | |
br label %instr_0x000A70A8 | |
instr_0x000A70A8: ; preds = %instr_0x000A70A4 | |
%3469 = getelementptr i8* %ppu_state, i32 968 | |
%3470 = bitcast i8* %3469 to i64* | |
%3471 = load i64* %3470, align 8 | |
%3472 = getelementptr i8* %ppu_state, i32 968 | |
%3473 = bitcast i8* %3472 to i64* | |
%3474 = load i64* %3473, align 8 | |
%3475 = or i64 %3471, %3474 | |
%3476 = getelementptr i8* %ppu_state, i32 792 | |
%3477 = bitcast i8* %3476 to i64* | |
store i64 %3475, i64* %3477, align 8 | |
br label %instr_0x000A70AC | |
instr_0x000A70AC: ; preds = %instr_0x000A70A8 | |
%3478 = getelementptr i8* %ppu_state, i32 904 | |
%3479 = bitcast i8* %3478 to i64* | |
%3480 = load i64* %3479, align 8 | |
%3481 = and i64 %3480, 4294967295 | |
%3482 = getelementptr i8* %ppu_state, i32 808 | |
%3483 = bitcast i8* %3482 to i64* | |
store i64 %3481, i64* %3483, align 8 | |
br label %instr_0x000A70B0 | |
instr_0x000A70B0: ; preds = %instr_0x000A70AC | |
%3484 = getelementptr i8* %ppu_state, i32 1568 | |
%3485 = bitcast i8* %3484 to i64* | |
store i64 684212, i64* %3485, align 8 | |
%3486 = getelementptr i8* %ppu_state, i32 1664 | |
%3487 = bitcast i8* %3486 to i32* | |
store i32 682448, i32* %3487, align 4 | |
%3488 = load i64* inttoptr (i64 8623353112 to i64*) | |
%3489 = inttoptr i64 %3488 to i32 (i8*, i64)* | |
%3490 = call i32 %3489(i8* %ppu_state, i64 0) | |
%3491 = icmp eq i32 %3490, -1 | |
br i1 %3491, label %instr_0x000A70B0_then_all_fs, label %instr_0x000A70B0_merge_all_fs | |
instr_0x000A70B0_then_all_fs: ; preds = %instr_0x000A70B0 | |
ret i32 0 | |
instr_0x000A70B0_merge_all_fs: ; preds = %instr_0x000A70B0 | |
br label %instr_0x000A70B4 | |
instr_0x000A70B4: ; preds = %instr_0x000A70B0_merge_all_fs | |
br label %instr_0x000A6EDC | |
} | |
; Function Attrs: nounwind readnone | |
declare i64 @llvm.bswap.i64(i64) #0 | |
; Function Attrs: nounwind readnone | |
declare i32 @llvm.bswap.i32(i32) #0 | |
attributes #0 = { nounwind readnone } |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment