#include "psprecomp/runtime.hpp" #include "generated_units.hpp" #include "vcs_resident_regions.hpp" #include "vcs_tier2_superblocks.hpp" #include #include #include #include namespace psprecomp { // PSPRECOMP_V811_COMPACT_DISPATCH: 64-slot occupancy masks + per-group base id. static constexpr std::uint64_t kEntryMasks_recomp_unit_0158[64] = { 0x0000000040501101ull, 0x0000000000000000ull, 0x0004000000080004ull, 0x0000000000000004ull, 0x0000000000000000ull, 0x0000000000000000ull, 0x2400020000000000ull, 0x1510002000000008ull, 0x8000000000000040ull, 0x0840000000000000ull, 0x0A02054000000280ull, 0x85090905010A1212ull, 0x4241404284848280ull, 0x0424022402120242ull, 0x4002000889022448ull, 0x8842040811550244ull, 0x1128229AA95024D2ull, 0x1409112822250541ull, 0x004B400098216218ull, 0x8A15102888891450ull, 0x5140040015408888ull, 0x0888890A80A22224ull, 0x5091040015455424ull, 0x1A28010410005515ull, 0x9889082489248908ull, 0x2245049442511550ull, 0x13112104A2242A05ull, 0x0000406A05512AAAull, 0x00A0C08046242800ull, 0x10820020A0120C15ull, 0x3548A054A2011846ull, 0x0024140A28890006ull, 0x3444A48450192142ull, 0x940A12284024140Aull, 0x0024000020001148ull, 0x0544000120000000ull, 0x0000000201900100ull, 0x0200000040000001ull, 0x0085000000082540ull, 0x0005000000100000ull, 0x4509090501054000ull, 0x9090501142424140ull, 0x2120242424140450ull, 0x9022448042402240ull, 0x0008500002000088ull, 0x0A4AAAA404204210ull, 0x02E0811484042204ull, 0x4408801549522141ull, 0x0214000080020A84ull, 0x02AAA90108108400ull, 0x452101088102AA6Aull, 0x055254885040B820ull, 0x02200082A1110220ull, 0x000B400705622808ull, 0x0000101000000000ull, 0xA69A69A64C000000ull, 0x0000040040404C88ull, 0x0000000A801A8000ull, 0x5404890342804000ull, 0x1198081001081B85ull, 0x00000000040010A4ull, 0x0D40488400091080ull, 0x2224088800848822ull, 0x1004040100040001ull, }; static constexpr std::uint16_t kEntryBases_recomp_unit_0158[64] = { 1u, 7u, 7u, 10u, 11u, 11u, 11u, 14u, 20u, 22u, 24u, 32u, 48u, 62u, 74u, 85u, 100u, 122u, 139u, 154u, 172u, 185u, 201u, 218u, 233u, 251u, 270u, 288u, 305u, 317u, 330u, 350u, 363u, 382u, 398u, 405u, 411u, 416u, 419u, 427u, 430u, 443u, 458u, 472u, 485u, 491u, 508u, 522u, 539u, 548u, 562u, 580u, 598u, 609u, 624u, 626u, 645u, 653u, 660u, 673u, 689u, 694u, 706u, 719u, }; void recomp_unit_0158_entry(Runtime &rt, AllegrexContext &ctx, std::uint16_t direct_entry_id, GuestMemory::AotFastView &aot_mem) { // PSPRECOMP_AOT_REGCACHE_BEGIN // PSPRECOMP_AOT_REGCACHE_META gprs=4,5,29,16,6,17 fprs=12,13,14,20 gpr_occ=4353 fpr_occ=1103 gpr_total=5457 fpr_total=1447 std::uint32_t aot_gpr_4 = ctx.gpr[4]; std::uint32_t aot_gpr_5 = ctx.gpr[5]; std::uint32_t aot_gpr_29 = ctx.gpr[29]; std::uint32_t aot_gpr_16 = ctx.gpr[16]; std::uint32_t aot_gpr_6 = ctx.gpr[6]; std::uint32_t aot_gpr_17 = ctx.gpr[17]; float aot_fpr_12 = ctx.fpr[12]; float aot_fpr_13 = ctx.fpr[13]; float aot_fpr_14 = ctx.fpr[14]; float aot_fpr_20 = ctx.fpr[20]; bool aot_regcache_valid = true; #define AOT_REGCACHE_SYNC_OUT() do { if (aot_regcache_valid) { ctx.gpr[4] = aot_gpr_4; ctx.gpr[5] = aot_gpr_5; ctx.gpr[29] = aot_gpr_29; ctx.gpr[16] = aot_gpr_16; ctx.gpr[6] = aot_gpr_6; ctx.gpr[17] = aot_gpr_17; ctx.fpr[12] = aot_fpr_12; ctx.fpr[13] = aot_fpr_13; ctx.fpr[14] = aot_fpr_14; ctx.fpr[20] = aot_fpr_20; } } while (false) #define AOT_REGCACHE_SYNC_IN() do { if (aot_regcache_valid) { aot_gpr_4 = ctx.gpr[4]; aot_gpr_5 = ctx.gpr[5]; aot_gpr_29 = ctx.gpr[29]; aot_gpr_16 = ctx.gpr[16]; aot_gpr_6 = ctx.gpr[6]; aot_gpr_17 = ctx.gpr[17]; aot_fpr_12 = ctx.fpr[12]; aot_fpr_13 = ctx.fpr[13]; aot_fpr_14 = ctx.fpr[14]; aot_fpr_20 = ctx.fpr[20]; } } while (false) // PSPRECOMP_AOT_REGCACHE_END std::uint32_t jump_target = 0u; std::uint32_t local_transfers = 0u; std::uint32_t local_redispatch_rounds = 0u; std::uint32_t local_pc = ctx.pc; std::uint32_t entry_id = direct_entry_id; LOCAL_DISPATCH: { if (entry_id == 0u) { const std::uint32_t entry_delta = local_pc - 0x08A7C004u; entry_id = 0u; if (entry_delta < 16372u && (entry_delta & 3u) == 0u) { const std::uint32_t entry_slot = entry_delta >> 2u; const std::uint32_t entry_group = entry_slot >> 6u; const std::uint64_t entry_mask = kEntryMasks_recomp_unit_0158[entry_group]; const std::uint64_t entry_bit = 1ull << (entry_slot & 63u); if ((entry_mask & entry_bit) != 0u) { entry_id = static_cast( kEntryBases_recomp_unit_0158[entry_group] + std::popcount(entry_mask & (entry_bit - 1ull))); } } } switch (entry_id) { case 1u: goto L_08A7C004; case 2u: goto L_08A7C024; case 3u: goto L_08A7C034; case 4u: goto L_08A7C054; case 5u: goto L_08A7C05C; case 6u: goto L_08A7C07C; case 7u: goto L_08A7C20C; case 8u: goto L_08A7C250; case 9u: goto L_08A7C2CC; case 10u: goto L_08A7C30C; case 11u: goto L_08A7C6A8; case 12u: goto L_08A7C6EC; case 13u: goto L_08A7C6F8; case 14u: goto L_08A7C710; case 15u: goto L_08A7C798; case 16u: goto L_08A7C7D4; case 17u: goto L_08A7C7E4; case 18u: goto L_08A7C7EC; case 19u: goto L_08A7C7F4; case 20u: goto L_08A7C81C; case 21u: goto L_08A7C900; case 22u: goto L_08A7C9DC; case 23u: goto L_08A7C9F0; case 24u: goto L_08A7CA20; case 25u: goto L_08A7CA28; case 26u: goto L_08A7CA9C; case 27u: goto L_08A7CAA4; case 28u: goto L_08A7CAAC; case 29u: goto L_08A7CAC8; case 30u: goto L_08A7CAE8; case 31u: goto L_08A7CAF0; case 32u: goto L_08A7CB08; case 33u: goto L_08A7CB14; case 34u: goto L_08A7CB28; case 35u: goto L_08A7CB34; case 36u: goto L_08A7CB48; case 37u: goto L_08A7CB50; case 38u: goto L_08A7CB64; case 39u: goto L_08A7CB84; case 40u: goto L_08A7CB8C; case 41u: goto L_08A7CBA4; case 42u: goto L_08A7CBB0; case 43u: goto L_08A7CBC4; case 44u: goto L_08A7CBD0; case 45u: goto L_08A7CBE4; case 46u: goto L_08A7CBEC; case 47u: goto L_08A7CC00; case 48u: goto L_08A7CC20; case 49u: goto L_08A7CC28; case 50u: goto L_08A7CC40; case 51u: goto L_08A7CC4C; case 52u: goto L_08A7CC60; case 53u: goto L_08A7CC6C; case 54u: goto L_08A7CC80; case 55u: goto L_08A7CC88; case 56u: goto L_08A7CC9C; case 57u: goto L_08A7CCBC; case 58u: goto L_08A7CCC4; case 59u: goto L_08A7CCDC; case 60u: goto L_08A7CCE8; case 61u: goto L_08A7CCFC; case 62u: goto L_08A7CD08; case 63u: goto L_08A7CD1C; case 64u: goto L_08A7CD28; case 65u: goto L_08A7CD48; case 66u: goto L_08A7CD54; case 67u: goto L_08A7CD68; case 68u: goto L_08A7CD8C; case 69u: goto L_08A7CD98; case 70u: goto L_08A7CDA8; case 71u: goto L_08A7CDCC; case 72u: goto L_08A7CDD8; case 73u: goto L_08A7CDEC; case 74u: goto L_08A7CE10; case 75u: goto L_08A7CE1C; case 76u: goto L_08A7CE2C; case 77u: goto L_08A7CE38; case 78u: goto L_08A7CE48; case 79u: goto L_08A7CE64; case 80u: goto L_08A7CE70; case 81u: goto L_08A7CE80; case 82u: goto L_08A7CE90; case 83u: goto L_08A7CEC8; case 84u: goto L_08A7CEFC; case 85u: goto L_08A7CF0C; case 86u: goto L_08A7CF1C; case 87u: goto L_08A7CF28; case 88u: goto L_08A7CF44; case 89u: goto L_08A7CF4C; case 90u: goto L_08A7CF54; case 91u: goto L_08A7CF5C; case 92u: goto L_08A7CF64; case 93u: goto L_08A7CF74; case 94u: goto L_08A7CF90; case 95u: goto L_08A7CFAC; case 96u: goto L_08A7CFC8; case 97u: goto L_08A7CFDC; case 98u: goto L_08A7CFF0; case 99u: goto L_08A7D000; case 100u: goto L_08A7D008; case 101u: goto L_08A7D014; case 102u: goto L_08A7D01C; case 103u: goto L_08A7D020; case 104u: goto L_08A7D02C; case 105u: goto L_08A7D038; case 106u: goto L_08A7D054; case 107u: goto L_08A7D05C; case 108u: goto L_08A7D064; case 109u: goto L_08A7D070; case 110u: goto L_08A7D078; case 111u: goto L_08A7D080; case 112u: goto L_08A7D088; case 113u: goto L_08A7D090; case 114u: goto L_08A7D094; case 115u: goto L_08A7D0A0; case 116u: goto L_08A7D0A8; case 117u: goto L_08A7D0B8; case 118u: goto L_08A7D0D0; case 119u: goto L_08A7D0D8; case 120u: goto L_08A7D0E4; case 121u: goto L_08A7D0F4; case 122u: goto L_08A7D104; case 123u: goto L_08A7D11C; case 124u: goto L_08A7D124; case 125u: goto L_08A7D12C; case 126u: goto L_08A7D144; case 127u: goto L_08A7D14C; case 128u: goto L_08A7D158; case 129u: goto L_08A7D168; case 130u: goto L_08A7D178; case 131u: goto L_08A7D190; case 132u: goto L_08A7D198; case 133u: goto L_08A7D1A4; case 134u: goto L_08A7D1B4; case 135u: goto L_08A7D1C4; case 136u: goto L_08A7D1D0; case 137u: goto L_08A7D1EC; case 138u: goto L_08A7D1F4; case 139u: goto L_08A7D210; case 140u: goto L_08A7D214; case 141u: goto L_08A7D228; case 142u: goto L_08A7D238; case 143u: goto L_08A7D23C; case 144u: goto L_08A7D244; case 145u: goto L_08A7D258; case 146u: goto L_08A7D270; case 147u: goto L_08A7D274; case 148u: goto L_08A7D280; case 149u: goto L_08A7D2BC; case 150u: goto L_08A7D2C4; case 151u: goto L_08A7D2C8; case 152u: goto L_08A7D2D0; case 153u: goto L_08A7D2DC; case 154u: goto L_08A7D314; case 155u: goto L_08A7D31C; case 156u: goto L_08A7D32C; case 157u: goto L_08A7D334; case 158u: goto L_08A7D344; case 159u: goto L_08A7D350; case 160u: goto L_08A7D360; case 161u: goto L_08A7D370; case 162u: goto L_08A7D380; case 163u: goto L_08A7D390; case 164u: goto L_08A7D398; case 165u: goto L_08A7D3B4; case 166u: goto L_08A7D3C4; case 167u: goto L_08A7D3CC; case 168u: goto L_08A7D3D4; case 169u: goto L_08A7D3E8; case 170u: goto L_08A7D3F0; case 171u: goto L_08A7D400; case 172u: goto L_08A7D410; case 173u: goto L_08A7D420; case 174u: goto L_08A7D430; case 175u: goto L_08A7D440; case 176u: goto L_08A7D45C; case 177u: goto L_08A7D464; case 178u: goto L_08A7D46C; case 179u: goto L_08A7D474; case 180u: goto L_08A7D4AC; case 181u: goto L_08A7D4DC; case 182u: goto L_08A7D4E4; case 183u: goto L_08A7D4F4; case 184u: goto L_08A7D4FC; case 185u: goto L_08A7D50C; case 186u: goto L_08A7D518; case 187u: goto L_08A7D528; case 188u: goto L_08A7D538; case 189u: goto L_08A7D548; case 190u: goto L_08A7D558; case 191u: goto L_08A7D560; case 192u: goto L_08A7D580; case 193u: goto L_08A7D588; case 194u: goto L_08A7D590; case 195u: goto L_08A7D5A4; case 196u: goto L_08A7D5B0; case 197u: goto L_08A7D5C0; case 198u: goto L_08A7D5D0; case 199u: goto L_08A7D5E0; case 200u: goto L_08A7D5F0; case 201u: goto L_08A7D60C; case 202u: goto L_08A7D618; case 203u: goto L_08A7D62C; case 204u: goto L_08A7D634; case 205u: goto L_08A7D63C; case 206u: goto L_08A7D644; case 207u: goto L_08A7D64C; case 208u: goto L_08A7D65C; case 209u: goto L_08A7D664; case 210u: goto L_08A7D66C; case 211u: goto L_08A7D674; case 212u: goto L_08A7D6AC; case 213u: goto L_08A7D6C4; case 214u: goto L_08A7D6D4; case 215u: goto L_08A7D6E0; case 216u: goto L_08A7D6F4; case 217u: goto L_08A7D6FC; case 218u: goto L_08A7D704; case 219u: goto L_08A7D70C; case 220u: goto L_08A7D714; case 221u: goto L_08A7D724; case 222u: goto L_08A7D72C; case 223u: goto L_08A7D734; case 224u: goto L_08A7D73C; case 225u: goto L_08A7D774; case 226u: goto L_08A7D78C; case 227u: goto L_08A7D7A4; case 228u: goto L_08A7D7D0; case 229u: goto L_08A7D7D8; case 230u: goto L_08A7D7E8; case 231u: goto L_08A7D7F0; case 232u: goto L_08A7D7F4; case 233u: goto L_08A7D810; case 234u: goto L_08A7D824; case 235u: goto L_08A7D830; case 236u: goto L_08A7D840; case 237u: goto L_08A7D84C; case 238u: goto L_08A7D858; case 239u: goto L_08A7D864; case 240u: goto L_08A7D870; case 241u: goto L_08A7D880; case 242u: goto L_08A7D88C; case 243u: goto L_08A7D898; case 244u: goto L_08A7D8B0; case 245u: goto L_08A7D8C4; case 246u: goto L_08A7D8D0; case 247u: goto L_08A7D8E0; case 248u: goto L_08A7D8F0; case 249u: goto L_08A7D8F4; case 250u: goto L_08A7D900; case 251u: goto L_08A7D914; case 252u: goto L_08A7D91C; case 253u: goto L_08A7D924; case 254u: goto L_08A7D92C; case 255u: goto L_08A7D934; case 256u: goto L_08A7D944; case 257u: goto L_08A7D954; case 258u: goto L_08A7D95C; case 259u: goto L_08A7D968; case 260u: goto L_08A7D97C; case 261u: goto L_08A7D98C; case 262u: goto L_08A7D994; case 263u: goto L_08A7D9A0; case 264u: goto L_08A7D9AC; case 265u: goto L_08A7D9C4; case 266u: goto L_08A7D9CC; case 267u: goto L_08A7D9DC; case 268u: goto L_08A7D9E8; case 269u: goto L_08A7D9F8; case 270u: goto L_08A7DA04; case 271u: goto L_08A7DA0C; case 272u: goto L_08A7DA28; case 273u: goto L_08A7DA30; case 274u: goto L_08A7DA38; case 275u: goto L_08A7DA4C; case 276u: goto L_08A7DA58; case 277u: goto L_08A7DA68; case 278u: goto L_08A7DA78; case 279u: goto L_08A7DA80; case 280u: goto L_08A7DA8C; case 281u: goto L_08A7DAA4; case 282u: goto L_08A7DAB8; case 283u: goto L_08A7DAC4; case 284u: goto L_08A7DAD4; case 285u: goto L_08A7DAE4; case 286u: goto L_08A7DAE8; case 287u: goto L_08A7DAF4; case 288u: goto L_08A7DB08; case 289u: goto L_08A7DB10; case 290u: goto L_08A7DB18; case 291u: goto L_08A7DB20; case 292u: goto L_08A7DB28; case 293u: goto L_08A7DB30; case 294u: goto L_08A7DB38; case 295u: goto L_08A7DB44; case 296u: goto L_08A7DB54; case 297u: goto L_08A7DB5C; case 298u: goto L_08A7DB64; case 299u: goto L_08A7DB6C; case 300u: goto L_08A7DB88; case 301u: goto L_08A7DB90; case 302u: goto L_08A7DB98; case 303u: goto L_08A7DB9C; case 304u: goto L_08A7DBBC; case 305u: goto L_08A7DC30; case 306u: goto L_08A7DC38; case 307u: goto L_08A7DC4C; case 308u: goto L_08A7DC58; case 309u: goto L_08A7DC68; case 310u: goto L_08A7DC6C; case 311u: goto L_08A7DC7C; case 312u: goto L_08A7DCA0; case 313u: goto L_08A7DCBC; case 314u: goto L_08A7DCC0; case 315u: goto L_08A7DCD8; case 316u: goto L_08A7DCE0; case 317u: goto L_08A7DD04; case 318u: goto L_08A7DD0C; case 319u: goto L_08A7DD14; case 320u: goto L_08A7DD2C; case 321u: goto L_08A7DD30; case 322u: goto L_08A7DD48; case 323u: goto L_08A7DD54; case 324u: goto L_08A7DD78; case 325u: goto L_08A7DD80; case 326u: goto L_08A7DD98; case 327u: goto L_08A7DDC8; case 328u: goto L_08A7DDE0; case 329u: goto L_08A7DDF4; case 330u: goto L_08A7DE08; case 331u: goto L_08A7DE0C; case 332u: goto L_08A7DE1C; case 333u: goto L_08A7DE30; case 334u: goto L_08A7DE34; case 335u: goto L_08A7DE44; case 336u: goto L_08A7DE68; case 337u: goto L_08A7DE78; case 338u: goto L_08A7DE80; case 339u: goto L_08A7DE8C; case 340u: goto L_08A7DE94; case 341u: goto L_08A7DE9C; case 342u: goto L_08A7DEB8; case 343u: goto L_08A7DEC0; case 344u: goto L_08A7DED0; case 345u: goto L_08A7DEDC; case 346u: goto L_08A7DEE4; case 347u: goto L_08A7DEEC; case 348u: goto L_08A7DEF4; case 349u: goto L_08A7DEF8; case 350u: goto L_08A7DF08; case 351u: goto L_08A7DF0C; case 352u: goto L_08A7DF44; case 353u: goto L_08A7DF50; case 354u: goto L_08A7DF60; case 355u: goto L_08A7DF70; case 356u: goto L_08A7DF78; case 357u: goto L_08A7DF88; case 358u: goto L_08A7DF90; case 359u: goto L_08A7DFAC; case 360u: goto L_08A7DFB4; case 361u: goto L_08A7DFCC; case 362u: goto L_08A7DFD8; case 363u: goto L_08A7E008; case 364u: goto L_08A7E01C; case 365u: goto L_08A7E024; case 366u: goto L_08A7E038; case 367u: goto L_08A7E044; case 368u: goto L_08A7E050; case 369u: goto L_08A7E054; case 370u: goto L_08A7E074; case 371u: goto L_08A7E07C; case 372u: goto L_08A7E08C; case 373u: goto L_08A7E0A0; case 374u: goto L_08A7E0AC; case 375u: goto L_08A7E0B8; case 376u: goto L_08A7E0C0; case 377u: goto L_08A7E0CC; case 378u: goto L_08A7E0DC; case 379u: goto L_08A7E0EC; case 380u: goto L_08A7E0F4; case 381u: goto L_08A7E0F8; case 382u: goto L_08A7E108; case 383u: goto L_08A7E110; case 384u: goto L_08A7E12C; case 385u: goto L_08A7E134; case 386u: goto L_08A7E14C; case 387u: goto L_08A7E158; case 388u: goto L_08A7E17C; case 389u: goto L_08A7E190; case 390u: goto L_08A7E198; case 391u: goto L_08A7E1A8; case 392u: goto L_08A7E1B4; case 393u: goto L_08A7E1C8; case 394u: goto L_08A7E1D0; case 395u: goto L_08A7E1EC; case 396u: goto L_08A7E1F4; case 397u: goto L_08A7E200; case 398u: goto L_08A7E210; case 399u: goto L_08A7E21C; case 400u: goto L_08A7E224; case 401u: goto L_08A7E234; case 402u: goto L_08A7E278; case 403u: goto L_08A7E2CC; case 404u: goto L_08A7E2D8; case 405u: goto L_08A7E378; case 406u: goto L_08A7E384; case 407u: goto L_08A7E3CC; case 408u: goto L_08A7E3DC; case 409u: goto L_08A7E3E4; case 410u: goto L_08A7E3EC; case 411u: goto L_08A7E424; case 412u: goto L_08A7E454; case 413u: goto L_08A7E460; case 414u: goto L_08A7E464; case 415u: goto L_08A7E488; case 416u: goto L_08A7E504; case 417u: goto L_08A7E57C; case 418u: goto L_08A7E5E8; case 419u: goto L_08A7E61C; case 420u: goto L_08A7E624; case 421u: goto L_08A7E62C; case 422u: goto L_08A7E638; case 423u: goto L_08A7E650; case 424u: goto L_08A7E6C4; case 425u: goto L_08A7E6CC; case 426u: goto L_08A7E6E0; case 427u: goto L_08A7E754; case 428u: goto L_08A7E7C4; case 429u: goto L_08A7E7CC; case 430u: goto L_08A7E83C; case 431u: goto L_08A7E844; case 432u: goto L_08A7E84C; case 433u: goto L_08A7E864; case 434u: goto L_08A7E884; case 435u: goto L_08A7E88C; case 436u: goto L_08A7E8A4; case 437u: goto L_08A7E8B0; case 438u: goto L_08A7E8C4; case 439u: goto L_08A7E8D0; case 440u: goto L_08A7E8E4; case 441u: goto L_08A7E8EC; case 442u: goto L_08A7E8FC; case 443u: goto L_08A7E91C; case 444u: goto L_08A7E924; case 445u: goto L_08A7E93C; case 446u: goto L_08A7E948; case 447u: goto L_08A7E95C; case 448u: goto L_08A7E968; case 449u: goto L_08A7E97C; case 450u: goto L_08A7E984; case 451u: goto L_08A7E994; case 452u: goto L_08A7E9B4; case 453u: goto L_08A7E9BC; case 454u: goto L_08A7E9D4; case 455u: goto L_08A7E9E0; case 456u: goto L_08A7E9F4; case 457u: goto L_08A7EA00; case 458u: goto L_08A7EA14; case 459u: goto L_08A7EA1C; case 460u: goto L_08A7EA2C; case 461u: goto L_08A7EA4C; case 462u: goto L_08A7EA54; case 463u: goto L_08A7EA6C; case 464u: goto L_08A7EA78; case 465u: goto L_08A7EA8C; case 466u: goto L_08A7EA98; case 467u: goto L_08A7EAAC; case 468u: goto L_08A7EAB8; case 469u: goto L_08A7EAD8; case 470u: goto L_08A7EAE4; case 471u: goto L_08A7EAF8; case 472u: goto L_08A7EB1C; case 473u: goto L_08A7EB28; case 474u: goto L_08A7EB38; case 475u: goto L_08A7EB5C; case 476u: goto L_08A7EB68; case 477u: goto L_08A7EB7C; case 478u: goto L_08A7EBA0; case 479u: goto L_08A7EBAC; case 480u: goto L_08A7EBBC; case 481u: goto L_08A7EBC8; case 482u: goto L_08A7EBD8; case 483u: goto L_08A7EBF4; case 484u: goto L_08A7EC00; case 485u: goto L_08A7EC10; case 486u: goto L_08A7EC20; case 487u: goto L_08A7EC68; case 488u: goto L_08A7ECB4; case 489u: goto L_08A7ECBC; case 490u: goto L_08A7ECD0; case 491u: goto L_08A7ED14; case 492u: goto L_08A7ED28; case 493u: goto L_08A7ED3C; case 494u: goto L_08A7ED58; case 495u: goto L_08A7ED6C; case 496u: goto L_08A7ED8C; case 497u: goto L_08A7ED98; case 498u: goto L_08A7EDA0; case 499u: goto L_08A7EDA8; case 500u: goto L_08A7EDB0; case 501u: goto L_08A7EDB8; case 502u: goto L_08A7EDC0; case 503u: goto L_08A7EDC8; case 504u: goto L_08A7EDD0; case 505u: goto L_08A7EDDC; case 506u: goto L_08A7EDE8; case 507u: goto L_08A7EDF0; case 508u: goto L_08A7EE0C; case 509u: goto L_08A7EE28; case 510u: goto L_08A7EE38; case 511u: goto L_08A7EE4C; case 512u: goto L_08A7EE6C; case 513u: goto L_08A7EE80; case 514u: goto L_08A7EE8C; case 515u: goto L_08A7EE94; case 516u: goto L_08A7EEA4; case 517u: goto L_08A7EEC0; case 518u: goto L_08A7EED8; case 519u: goto L_08A7EEDC; case 520u: goto L_08A7EEE0; case 521u: goto L_08A7EEE8; case 522u: goto L_08A7EF04; case 523u: goto L_08A7EF1C; case 524u: goto L_08A7EF24; case 525u: goto L_08A7EF38; case 526u: goto L_08A7EF48; case 527u: goto L_08A7EF54; case 528u: goto L_08A7EF5C; case 529u: goto L_08A7EF64; case 530u: goto L_08A7EF70; case 531u: goto L_08A7EF7C; case 532u: goto L_08A7EF84; case 533u: goto L_08A7EF8C; case 534u: goto L_08A7EF94; case 535u: goto L_08A7EFC0; case 536u: goto L_08A7EFD0; case 537u: goto L_08A7EFEC; case 538u: goto L_08A7EFFC; case 539u: goto L_08A7F00C; case 540u: goto L_08A7F020; case 541u: goto L_08A7F028; case 542u: goto L_08A7F030; case 543u: goto L_08A7F048; case 544u: goto L_08A7F080; case 545u: goto L_08A7F0CC; case 546u: goto L_08A7F0D4; case 547u: goto L_08A7F0E8; case 548u: goto L_08A7F12C; case 549u: goto L_08A7F140; case 550u: goto L_08A7F154; case 551u: goto L_08A7F170; case 552u: goto L_08A7F184; case 553u: goto L_08A7F1A4; case 554u: goto L_08A7F1B0; case 555u: goto L_08A7F1B8; case 556u: goto L_08A7F1C0; case 557u: goto L_08A7F1C8; case 558u: goto L_08A7F1D0; case 559u: goto L_08A7F1D8; case 560u: goto L_08A7F1E0; case 561u: goto L_08A7F1E8; case 562u: goto L_08A7F208; case 563u: goto L_08A7F210; case 564u: goto L_08A7F218; case 565u: goto L_08A7F21C; case 566u: goto L_08A7F228; case 567u: goto L_08A7F230; case 568u: goto L_08A7F238; case 569u: goto L_08A7F240; case 570u: goto L_08A7F248; case 571u: goto L_08A7F264; case 572u: goto L_08A7F280; case 573u: goto L_08A7F290; case 574u: goto L_08A7F2A4; case 575u: goto L_08A7F2C4; case 576u: goto L_08A7F2D8; case 577u: goto L_08A7F2E4; case 578u: goto L_08A7F2EC; case 579u: goto L_08A7F2FC; case 580u: goto L_08A7F318; case 581u: goto L_08A7F330; case 582u: goto L_08A7F334; case 583u: goto L_08A7F338; case 584u: goto L_08A7F340; case 585u: goto L_08A7F35C; case 586u: goto L_08A7F374; case 587u: goto L_08A7F37C; case 588u: goto L_08A7F390; case 589u: goto L_08A7F3A0; case 590u: goto L_08A7F3AC; case 591u: goto L_08A7F3B4; case 592u: goto L_08A7F3BC; case 593u: goto L_08A7F3C8; case 594u: goto L_08A7F3D4; case 595u: goto L_08A7F3DC; case 596u: goto L_08A7F3E4; case 597u: goto L_08A7F3EC; case 598u: goto L_08A7F418; case 599u: goto L_08A7F428; case 600u: goto L_08A7F444; case 601u: goto L_08A7F454; case 602u: goto L_08A7F464; case 603u: goto L_08A7F478; case 604u: goto L_08A7F480; case 605u: goto L_08A7F488; case 606u: goto L_08A7F4A0; case 607u: goto L_08A7F4D8; case 608u: goto L_08A7F4E8; case 609u: goto L_08A7F510; case 610u: goto L_08A7F530; case 611u: goto L_08A7F538; case 612u: goto L_08A7F548; case 613u: goto L_08A7F558; case 614u: goto L_08A7F55C; case 615u: goto L_08A7F564; case 616u: goto L_08A7F56C; case 617u: goto L_08A7F584; case 618u: goto L_08A7F588; case 619u: goto L_08A7F58C; case 620u: goto L_08A7F5BC; case 621u: goto L_08A7F5C4; case 622u: goto L_08A7F5C8; case 623u: goto L_08A7F5D0; case 624u: goto L_08A7F694; case 625u: goto L_08A7F6B4; case 626u: goto L_08A7F76C; case 627u: goto L_08A7F770; case 628u: goto L_08A7F77C; case 629u: goto L_08A7F788; case 630u: goto L_08A7F78C; case 631u: goto L_08A7F798; case 632u: goto L_08A7F7A0; case 633u: goto L_08A7F7A4; case 634u: goto L_08A7F7B0; case 635u: goto L_08A7F7B8; case 636u: goto L_08A7F7BC; case 637u: goto L_08A7F7C8; case 638u: goto L_08A7F7D0; case 639u: goto L_08A7F7D4; case 640u: goto L_08A7F7E0; case 641u: goto L_08A7F7E8; case 642u: goto L_08A7F7EC; case 643u: goto L_08A7F7F8; case 644u: goto L_08A7F800; case 645u: goto L_08A7F810; case 646u: goto L_08A7F820; case 647u: goto L_08A7F82C; case 648u: goto L_08A7F830; case 649u: goto L_08A7F83C; case 650u: goto L_08A7F85C; case 651u: goto L_08A7F87C; case 652u: goto L_08A7F8AC; case 653u: goto L_08A7F940; case 654u: goto L_08A7F948; case 655u: goto L_08A7F950; case 656u: goto L_08A7F954; case 657u: goto L_08A7F980; case 658u: goto L_08A7F988; case 659u: goto L_08A7F990; case 660u: goto L_08A7FA3C; case 661u: goto L_08A7FA60; case 662u: goto L_08A7FA68; case 663u: goto L_08A7FA7C; case 664u: goto L_08A7FA84; case 665u: goto L_08A7FA88; case 666u: goto L_08A7FAA4; case 667u: goto L_08A7FAB0; case 668u: goto L_08A7FAC0; case 669u: goto L_08A7FACC; case 670u: goto L_08A7FAEC; case 671u: goto L_08A7FAF4; case 672u: goto L_08A7FAFC; case 673u: goto L_08A7FB04; case 674u: goto L_08A7FB0C; case 675u: goto L_08A7FB20; case 676u: goto L_08A7FB24; case 677u: goto L_08A7FB28; case 678u: goto L_08A7FB30; case 679u: goto L_08A7FB34; case 680u: goto L_08A7FB50; case 681u: goto L_08A7FB64; case 682u: goto L_08A7FB94; case 683u: goto L_08A7FBB0; case 684u: goto L_08A7FBD0; case 685u: goto L_08A7FBD4; case 686u: goto L_08A7FBE0; case 687u: goto L_08A7FBE4; case 688u: goto L_08A7FBF4; case 689u: goto L_08A7FC0C; case 690u: goto L_08A7FC18; case 691u: goto L_08A7FC20; case 692u: goto L_08A7FC34; case 693u: goto L_08A7FC6C; case 694u: goto L_08A7FD20; case 695u: goto L_08A7FD34; case 696u: goto L_08A7FD44; case 697u: goto L_08A7FD50; case 698u: goto L_08A7FD8C; case 699u: goto L_08A7FDA0; case 700u: goto L_08A7FDB0; case 701u: goto L_08A7FDBC; case 702u: goto L_08A7FDDC; case 703u: goto L_08A7FDE4; case 704u: goto L_08A7FDEC; case 705u: goto L_08A7FDF0; case 706u: goto L_08A7FE08; case 707u: goto L_08A7FE18; case 708u: goto L_08A7FE30; case 709u: goto L_08A7FE40; case 710u: goto L_08A7FE4C; case 711u: goto L_08A7FE60; case 712u: goto L_08A7FE90; case 713u: goto L_08A7FEA0; case 714u: goto L_08A7FEB0; case 715u: goto L_08A7FECC; case 716u: goto L_08A7FED8; case 717u: goto L_08A7FEE8; case 718u: goto L_08A7FEF8; case 719u: goto L_08A7FF04; case 720u: goto L_08A7FF4C; case 721u: goto L_08A7FF84; case 722u: goto L_08A7FFAC; case 723u: goto L_08A7FFCC; case 724u: goto L_08A7FFF4; default: if (local_transfers == 0u) rt.unsupported(ctx.pc, 0u, "invalid internal function entry"); else ctx.pc = local_pc; AOT_REGCACHE_SYNC_OUT(); return; } } // PSPRECOMP_V812_SHARED_SCHED_BLOCK: one scheduler-exact slow boundary per unit. LOCAL_SCHED_BOUNDARY: ctx.pc = jump_target; AOT_REGCACHE_SYNC_OUT(); if (local_redispatch_rounds < 7u && rt.continue_generated_local_dispatch(ctx)) { ++local_redispatch_rounds; AOT_REGCACHE_SYNC_IN(); local_transfers = 0u; local_pc = ctx.pc; entry_id = 0u; goto LOCAL_DISPATCH; } return; L_08A7C004: aot_gpr_4 = (2236u << 16u); aot_gpr_4 = (aot_gpr_4 + static_cast(32304)); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(16))); aot_fpr_12 = std::bit_cast(std::bit_cast(aot_fpr_12) ^ 0x80000000u); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((!(std::isnan(aot_fpr_12) || std::isnan(ctx.fpr[22])) && aot_fpr_12 == ctx.fpr[22])) ? 0x00800000u : 0u); { const bool branch_taken = !((ctx.fcr31 & 0x00800000u) != 0u); aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(20))); if (branch_taken) { goto L_08A7C054; } goto L_08A7C024; } L_08A7C024: ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((!(std::isnan(aot_fpr_13) || std::isnan(ctx.fpr[22])) && aot_fpr_13 == ctx.fpr[22])) ? 0x00800000u : 0u); { const bool branch_taken = !((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_08A7C054; } goto L_08A7C034; } L_08A7C034: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-5528))); aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-5524))); ctx.gpr[25] = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(0))); { const float fs = aot_fpr_12; const float ft = ctx.fpr[24]; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_12 = std::bit_cast(0x7FC00000u); else aot_fpr_12 = fs * ft; } aot_fpr_14 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-5520))); { const float fs = aot_fpr_13; const float ft = ctx.fpr[24]; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_13 = std::bit_cast(0x7FC00000u); else aot_fpr_13 = fs * ft; } { const bool branch_taken = 0u == 0u; { const float fs = aot_fpr_14; const float ft = ctx.fpr[24]; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_14 = std::bit_cast(0x7FC00000u); else aot_fpr_14 = fs * ft; } if (branch_taken) { goto L_08A7C07C; } goto L_08A7C054; } L_08A7C054: ctx.gpr[31] = (0x08A7C05Cu); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0088_entry, 88u, 28u, 0x08964540u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7C05Cu) goto L_08A7C05C; AOT_REGCACHE_SYNC_OUT(); return; L_08A7C05C: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-5528))); ctx.fpr[22] = std::bit_cast(std::bit_cast(ctx.fpr[0])); aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-5524))); ctx.gpr[25] = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(0))); { const float fs = aot_fpr_12; const float ft = ctx.fpr[24]; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_12 = std::bit_cast(0x7FC00000u); else aot_fpr_12 = fs * ft; } aot_fpr_14 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-5520))); { const float fs = aot_fpr_13; const float ft = ctx.fpr[24]; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_13 = std::bit_cast(0x7FC00000u); else aot_fpr_13 = fs * ft; } { const float fs = aot_fpr_14; const float ft = ctx.fpr[24]; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_14 = std::bit_cast(0x7FC00000u); else aot_fpr_14 = fs * ft; } goto L_08A7C07C; L_08A7C07C: aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(44), ctx.gpr[18]); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(40), ctx.gpr[19]); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(36), ctx.gpr[20]); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(32), ctx.gpr[30]); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(28), ctx.gpr[23]); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(24), ctx.gpr[22]); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(16), ctx.gpr[21]); aot_gpr_4 = (8448u << 16u); ctx.gpr[21] = (aot_gpr_4 + static_cast(1)); aot_mem.aot_direct_store32(ctx.gpr[25] + static_cast(0), ctx.gpr[21]); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(20), ctx.gpr[21]); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(0))); aot_gpr_5 = (16585u << 16u); aot_gpr_5 = (aot_gpr_5 | 4059u); aot_gpr_4 = (aot_gpr_4 + static_cast(4)); ctx.fpr[15] = std::bit_cast(aot_gpr_5); aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(0), aot_gpr_4); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(0))); aot_gpr_5 = (22016u << 16u); aot_gpr_5 = (aot_gpr_5 + static_cast(-1)); aot_mem.aot_direct_store32(aot_gpr_4 + static_cast(0), aot_gpr_5); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(0))); aot_gpr_5 = (22528u << 16u); aot_gpr_4 = (aot_gpr_4 + static_cast(4)); aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(0), aot_gpr_4); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(0))); aot_gpr_5 = (aot_gpr_5 + static_cast(255)); ctx.fpr[15] = ctx.fpr[22] / ctx.fpr[15]; aot_mem.aot_direct_store32(aot_gpr_4 + static_cast(0), aot_gpr_5); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(0))); aot_gpr_5 = (16128u << 16u); aot_gpr_4 = (aot_gpr_4 + static_cast(4)); aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(0), aot_gpr_4); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(0))); aot_gpr_6 = (57088u << 16u); aot_gpr_6 = (aot_gpr_6 + static_cast(170)); ctx.gpr[19] = (0u | 1u); ctx.gpr[7] = (0u | 0u); ctx.gpr[8] = (0u | 0u); ctx.fpr[16] = std::bit_cast(aot_gpr_5); aot_gpr_5 = (22272u << 16u); aot_gpr_5 = (aot_gpr_5 + static_cast(-1)); aot_mem.aot_direct_store32(aot_gpr_4 + static_cast(0), aot_gpr_5); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(0))); aot_gpr_5 = (22528u << 16u); aot_gpr_4 = (aot_gpr_4 + static_cast(4)); aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(0), aot_gpr_4); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(0))); aot_gpr_5 = (aot_gpr_5 + static_cast(-1)); aot_mem.aot_direct_store32(aot_gpr_4 + static_cast(0), aot_gpr_5); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(0))); aot_gpr_4 = (aot_gpr_4 + static_cast(4)); aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(0), aot_gpr_4); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(0))); ctx.fpr[15] = ctx.fpr[15] + ctx.fpr[16]; aot_mem.aot_direct_store32(aot_gpr_4 + static_cast(0), aot_gpr_6); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(0))); ctx.fpr[17] = std::bit_cast(ctx.fpu_float_to_word_ct<1u>(aot_fpr_14)); aot_gpr_6 = (57600u << 16u); aot_gpr_4 = (aot_gpr_4 + static_cast(4)); aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(0), aot_gpr_4); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(0))); aot_gpr_6 = (aot_gpr_6 + static_cast(-1)); aot_mem.aot_direct_store32(aot_gpr_4 + static_cast(0), aot_gpr_6); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(0))); aot_fpr_13 = std::bit_cast(ctx.fpu_float_to_word_ct<1u>(aot_fpr_13)); aot_gpr_6 = (57856u << 16u); { const float fs = ctx.fpr[15]; const float ft = ctx.fpr[24]; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) ctx.fpr[15] = std::bit_cast(0x7FC00000u); else ctx.fpr[15] = fs * ft; } aot_gpr_4 = (aot_gpr_4 + static_cast(4)); aot_fpr_14 = std::bit_cast(ctx.fpu_float_to_word_ct<1u>(aot_fpr_14)); aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(0), aot_gpr_4); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(0))); aot_fpr_12 = std::bit_cast(ctx.fpu_float_to_word_ct<1u>(aot_fpr_12)); aot_gpr_6 = (aot_gpr_6 + static_cast(-1)); ctx.fpr[15] = std::bit_cast(ctx.fpu_float_to_word_ct<1u>(ctx.fpr[15])); aot_mem.aot_direct_store32(aot_gpr_4 + static_cast(0), aot_gpr_6); aot_gpr_5 = (std::bit_cast(aot_fpr_14)); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(0))); ctx.gpr[30] = (std::bit_cast(aot_fpr_13)); ctx.gpr[20] = (aot_gpr_5 + ctx.gpr[30]); ctx.gpr[21] = (std::bit_cast(aot_fpr_12)); aot_gpr_4 = (aot_gpr_4 + static_cast(4)); ctx.gpr[22] = (std::bit_cast(ctx.fpr[15])); aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(0), aot_gpr_4); ctx.gpr[23] = (std::bit_cast(ctx.fpr[17])); aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load8(aot_gpr_17 + static_cast(10)))))); aot_gpr_5 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load8(aot_gpr_17 + static_cast(11)))))); aot_gpr_4 = (aot_gpr_4 & 63u); ctx.gpr[11] = (ctx.gpr[19] << (aot_gpr_4 & 31u)); aot_gpr_4 = (aot_gpr_5 & 63u); aot_gpr_6 = (ctx.gpr[21] + ctx.gpr[22]); ctx.gpr[2] = (ctx.gpr[19] << (aot_gpr_4 & 31u)); ctx.gpr[9] = (aot_gpr_6 + ctx.gpr[23]); aot_gpr_5 = (aot_gpr_6 | 0u); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(0), ctx.gpr[2]); aot_gpr_4 = (aot_gpr_16 | 0u); aot_gpr_6 = (ctx.gpr[30] | 0u); ctx.gpr[10] = (ctx.gpr[20] | 0u); ctx.gpr[31] = (0x08A7C20Cu); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(4), 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0054_entry, 54u, 499u, 0x088DFA08u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7C20Cu) goto L_08A7C20C; AOT_REGCACHE_SYNC_OUT(); return; L_08A7C20C: aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load8(aot_gpr_17 + static_cast(10)))))); aot_gpr_6 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load8(aot_gpr_17 + static_cast(11)))))); aot_gpr_4 = (aot_gpr_4 & 63u); ctx.gpr[11] = (ctx.gpr[19] << (aot_gpr_4 & 31u)); aot_gpr_4 = (aot_gpr_6 & 63u); ctx.gpr[18] = (ctx.gpr[22] + static_cast(-64)); ctx.gpr[2] = (ctx.gpr[19] << (aot_gpr_4 & 31u)); aot_gpr_5 = (ctx.gpr[18] + ctx.gpr[21]); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(0), ctx.gpr[2]); ctx.gpr[9] = (aot_gpr_5 + ctx.gpr[23]); aot_gpr_4 = (aot_gpr_16 | 0u); aot_gpr_6 = (ctx.gpr[30] | 0u); ctx.gpr[7] = (0u | 0u); ctx.gpr[8] = (0u | 0u); ctx.gpr[10] = (ctx.gpr[20] | 0u); ctx.gpr[31] = (0x08A7C250u); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(4), 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0054_entry, 54u, 499u, 0x088DFA08u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7C250u) goto L_08A7C250; AOT_REGCACHE_SYNC_OUT(); return; L_08A7C250: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-5516))); aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-5512))); aot_fpr_14 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-5508))); { const float fs = aot_fpr_12; const float ft = ctx.fpr[24]; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_12 = std::bit_cast(0x7FC00000u); else aot_fpr_12 = fs * ft; } { const float fs = aot_fpr_13; const float ft = ctx.fpr[24]; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_13 = std::bit_cast(0x7FC00000u); else aot_fpr_13 = fs * ft; } { const float fs = aot_fpr_14; const float ft = ctx.fpr[24]; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_14 = std::bit_cast(0x7FC00000u); else aot_fpr_14 = fs * ft; } aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load8(aot_gpr_17 + static_cast(10)))))); aot_gpr_6 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load8(aot_gpr_17 + static_cast(11)))))); aot_fpr_12 = std::bit_cast(ctx.fpu_float_to_word_ct<1u>(aot_fpr_12)); aot_gpr_4 = (aot_gpr_4 & 63u); aot_fpr_13 = std::bit_cast(ctx.fpu_float_to_word_ct<1u>(aot_fpr_13)); ctx.gpr[11] = (ctx.gpr[19] << (aot_gpr_4 & 31u)); ctx.fpr[15] = std::bit_cast(ctx.fpu_float_to_word_ct<1u>(aot_fpr_14)); aot_gpr_4 = (aot_gpr_6 & 63u); ctx.gpr[2] = (ctx.gpr[19] << (aot_gpr_4 & 31u)); ctx.gpr[20] = (std::bit_cast(aot_fpr_12)); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(0), ctx.gpr[2]); ctx.gpr[21] = (std::bit_cast(aot_fpr_13)); aot_gpr_5 = (ctx.gpr[20] + ctx.gpr[22]); aot_fpr_14 = std::bit_cast(ctx.fpu_float_to_word_ct<1u>(aot_fpr_14)); aot_gpr_4 = (aot_gpr_16 | 0u); ctx.gpr[22] = (std::bit_cast(ctx.fpr[15])); aot_gpr_6 = (ctx.gpr[21] | 0u); ctx.gpr[9] = (aot_gpr_5 + ctx.gpr[22]); ctx.gpr[8] = (0u | 0u); ctx.gpr[7] = (std::bit_cast(aot_fpr_14)); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(4), 0u); ctx.gpr[23] = (ctx.gpr[7] + ctx.gpr[21]); ctx.gpr[7] = (0u | 0u); ctx.gpr[31] = (0x08A7C2CCu); ctx.gpr[10] = (ctx.gpr[23] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0054_entry, 54u, 499u, 0x088DFA08u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7C2CCu) goto L_08A7C2CC; AOT_REGCACHE_SYNC_OUT(); return; L_08A7C2CC: aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load8(aot_gpr_17 + static_cast(10)))))); aot_gpr_6 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load8(aot_gpr_17 + static_cast(11)))))); ctx.gpr[11] = (aot_gpr_4 & 63u); aot_gpr_4 = (aot_gpr_6 & 63u); ctx.gpr[2] = (ctx.gpr[19] << (aot_gpr_4 & 31u)); aot_gpr_5 = (ctx.gpr[18] + ctx.gpr[20]); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(0), ctx.gpr[2]); ctx.gpr[9] = (aot_gpr_5 + ctx.gpr[22]); ctx.gpr[11] = (ctx.gpr[19] << (ctx.gpr[11] & 31u)); aot_gpr_4 = (aot_gpr_16 | 0u); aot_gpr_6 = (ctx.gpr[21] | 0u); ctx.gpr[7] = (0u | 0u); ctx.gpr[8] = (0u | 0u); ctx.gpr[10] = (ctx.gpr[23] | 0u); ctx.gpr[31] = (0x08A7C30Cu); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(4), 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0054_entry, 54u, 499u, 0x088DFA08u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7C30Cu) goto L_08A7C30C; AOT_REGCACHE_SYNC_OUT(); return; L_08A7C30C: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(0))); aot_gpr_5 = (8448u << 16u); aot_mem.aot_direct_store32(aot_gpr_4 + static_cast(0), aot_gpr_5); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(0))); aot_gpr_5 = (52224u << 16u); aot_gpr_4 = (aot_gpr_4 + static_cast(4)); aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(0), aot_gpr_4); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(0))); aot_mem.aot_direct_store32(aot_gpr_4 + static_cast(0), aot_gpr_5); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(0))); aot_gpr_4 = (aot_gpr_4 + static_cast(4)); aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(0), aot_gpr_4); aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-8780))); aot_gpr_5 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-8748))); aot_gpr_4 = (aot_gpr_4 << 2u); aot_gpr_4 = (ctx.gpr[28] + aot_gpr_4); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(-8788))); aot_gpr_6 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-8736))); ctx.gpr[8] = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(44))); ctx.gpr[7] = (53760u << 16u); ctx.gpr[9] = (aot_mem.aot_direct_load32(ctx.gpr[8] + static_cast(29552))); aot_gpr_5 = (aot_gpr_5 | ctx.gpr[7]); aot_mem.aot_direct_store32(ctx.gpr[9] + static_cast(0), aot_gpr_5); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(40))); ctx.gpr[7] = (aot_mem.aot_direct_load32(ctx.gpr[8] + static_cast(29552))); aot_gpr_5 = (aot_gpr_4 & aot_gpr_5); ctx.gpr[7] = (ctx.gpr[7] + static_cast(4)); aot_mem.aot_direct_store32(ctx.gpr[8] + static_cast(29552), ctx.gpr[7]); ctx.gpr[7] = (39936u << 16u); ctx.gpr[10] = (aot_mem.aot_direct_load32(ctx.gpr[8] + static_cast(29552))); aot_gpr_5 = (aot_gpr_5 | ctx.gpr[7]); aot_mem.aot_direct_store32(ctx.gpr[10] + static_cast(0), aot_gpr_5); aot_gpr_5 = (aot_mem.aot_direct_load32(ctx.gpr[8] + static_cast(29552))); aot_gpr_4 = (aot_gpr_4 >> 8u); aot_gpr_5 = (aot_gpr_5 + static_cast(4)); aot_mem.aot_direct_store32(ctx.gpr[8] + static_cast(29552), aot_gpr_5); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(36))); ctx.gpr[9] = (40192u << 16u); aot_gpr_4 = (aot_gpr_4 & aot_gpr_5); aot_gpr_6 = (aot_gpr_6 | ctx.gpr[9]); aot_gpr_5 = (aot_mem.aot_direct_load32(ctx.gpr[8] + static_cast(29552))); aot_gpr_4 = (aot_gpr_6 | aot_gpr_4); aot_mem.aot_direct_store32(aot_gpr_5 + static_cast(0), aot_gpr_4); aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-8744))); aot_gpr_5 = (aot_mem.aot_direct_load32(ctx.gpr[8] + static_cast(29552))); aot_gpr_6 = (static_cast(static_cast(aot_gpr_4) >> 1u)); aot_gpr_6 = (aot_gpr_6 >> 31u); aot_gpr_4 = (aot_gpr_4 + aot_gpr_6); ctx.gpr[7] = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-8740))); aot_gpr_4 = (static_cast(static_cast(aot_gpr_4) >> 1u)); aot_fpr_12 = std::bit_cast(aot_gpr_4); aot_gpr_5 = (aot_gpr_5 + static_cast(4)); aot_gpr_4 = (static_cast(static_cast(ctx.gpr[7]) >> 1u)); aot_fpr_12 = static_cast(static_cast(std::bit_cast(aot_fpr_12))); aot_gpr_4 = (aot_gpr_4 >> 31u); aot_gpr_4 = (ctx.gpr[7] + aot_gpr_4); aot_gpr_4 = (static_cast(static_cast(aot_gpr_4) >> 1u)); aot_mem.aot_direct_store32(ctx.gpr[8] + static_cast(29552), aot_gpr_5); aot_fpr_13 = std::bit_cast(aot_gpr_4); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(0))); aot_gpr_5 = (std::bit_cast(aot_fpr_12)); aot_gpr_6 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(32))); aot_fpr_13 = static_cast(static_cast(std::bit_cast(aot_fpr_13))); aot_gpr_5 = (aot_gpr_5 >> 8u); aot_gpr_5 = (aot_gpr_5 | aot_gpr_6); aot_mem.aot_direct_store32(aot_gpr_4 + static_cast(0), aot_gpr_5); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(0))); aot_fpr_13 = std::bit_cast(std::bit_cast(aot_fpr_13) ^ 0x80000000u); aot_gpr_5 = (std::bit_cast(aot_fpr_13)); aot_gpr_4 = (aot_gpr_4 + static_cast(4)); aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(0), aot_gpr_4); aot_gpr_4 = (aot_gpr_5 >> 8u); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(0))); aot_gpr_6 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(28))); aot_gpr_4 = (aot_gpr_4 | aot_gpr_6); aot_mem.aot_direct_store32(aot_gpr_5 + static_cast(0), aot_gpr_4); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(0))); aot_gpr_4 = (std::bit_cast(aot_fpr_20)); aot_gpr_4 = (aot_gpr_4 >> 8u); aot_gpr_5 = (aot_gpr_5 + static_cast(4)); aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(0), aot_gpr_5); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(0))); aot_gpr_6 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(24))); aot_gpr_4 = (aot_gpr_4 | aot_gpr_6); aot_mem.aot_direct_store32(aot_gpr_5 + static_cast(0), aot_gpr_4); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(0))); aot_gpr_4 = (std::bit_cast(aot_fpr_20)); aot_gpr_4 = (aot_gpr_4 >> 8u); aot_gpr_5 = (aot_gpr_5 + static_cast(4)); aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(0), aot_gpr_5); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(0))); aot_gpr_6 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(16))); aot_gpr_4 = (aot_gpr_4 | aot_gpr_6); aot_mem.aot_direct_store32(aot_gpr_5 + static_cast(0), aot_gpr_4); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(0))); aot_gpr_5 = (0u | 4096u); aot_gpr_4 = (aot_gpr_4 + static_cast(4)); aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(0), aot_gpr_4); aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-8744))); aot_gpr_4 = (aot_gpr_5 - aot_gpr_4); aot_gpr_6 = (static_cast(static_cast(aot_gpr_4) >> 1u)); aot_gpr_6 = (aot_gpr_6 >> 31u); aot_gpr_4 = (aot_gpr_4 + aot_gpr_6); aot_gpr_6 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-8740))); aot_gpr_4 = (static_cast(static_cast(aot_gpr_4) >> 1u)); aot_gpr_5 = (aot_gpr_5 - aot_gpr_6); aot_gpr_4 = (aot_gpr_4 << 4u); aot_gpr_6 = (static_cast(static_cast(aot_gpr_5) >> 1u)); ctx.gpr[7] = (19456u << 16u); ctx.gpr[8] = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(0))); aot_gpr_6 = (aot_gpr_6 >> 31u); aot_gpr_4 = (aot_gpr_4 | ctx.gpr[7]); aot_gpr_5 = (aot_gpr_5 + aot_gpr_6); aot_mem.aot_direct_store32(ctx.gpr[8] + static_cast(0), aot_gpr_4); aot_gpr_4 = (static_cast(static_cast(aot_gpr_5) >> 1u)); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(0))); aot_gpr_4 = (aot_gpr_4 << 4u); aot_gpr_5 = (aot_gpr_5 + static_cast(4)); aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(0), aot_gpr_5); aot_gpr_5 = (19712u << 16u); aot_gpr_6 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(0))); aot_gpr_4 = (aot_gpr_4 | aot_gpr_5); aot_mem.aot_direct_store32(aot_gpr_6 + static_cast(0), aot_gpr_4); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(0))); ctx.gpr[7] = (54272u << 16u); aot_gpr_4 = (aot_gpr_4 + static_cast(4)); aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(0), aot_gpr_4); aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-8744))); aot_gpr_5 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-8740))); aot_gpr_6 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(0))); aot_gpr_5 = (aot_gpr_5 & 1023u); aot_mem.aot_direct_store32(aot_gpr_6 + static_cast(0), ctx.gpr[7]); aot_gpr_6 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(0))); aot_gpr_5 = (aot_gpr_5 << 10u); aot_gpr_6 = (aot_gpr_6 + static_cast(4)); aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(0), aot_gpr_6); aot_gpr_6 = (54528u << 16u); aot_gpr_5 = (aot_gpr_5 | aot_gpr_6); aot_gpr_4 = (aot_gpr_4 & 1023u); aot_gpr_6 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(0))); aot_gpr_4 = (aot_gpr_5 | aot_gpr_4); aot_mem.aot_direct_store32(aot_gpr_6 + static_cast(0), aot_gpr_4); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(0))); ctx.gpr[7] = (5376u << 16u); aot_gpr_4 = (aot_gpr_4 + static_cast(4)); aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(0), aot_gpr_4); aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-8744))); aot_gpr_5 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-8740))); aot_gpr_6 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(0))); aot_gpr_5 = (aot_gpr_5 + static_cast(-1)); aot_mem.aot_direct_store32(aot_gpr_6 + static_cast(0), ctx.gpr[7]); aot_gpr_6 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(0))); aot_gpr_5 = (aot_gpr_5 << 10u); aot_gpr_6 = (aot_gpr_6 + static_cast(4)); aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(0), aot_gpr_6); aot_gpr_6 = (5632u << 16u); aot_gpr_5 = (aot_gpr_5 | aot_gpr_6); aot_gpr_4 = (aot_gpr_4 + static_cast(-1)); aot_gpr_6 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(0))); aot_gpr_4 = (aot_gpr_5 | aot_gpr_4); aot_mem.aot_direct_store32(aot_gpr_6 + static_cast(0), aot_gpr_4); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(0))); aot_gpr_4 = (aot_gpr_4 + static_cast(4)); aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(0), aot_gpr_4); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(0))); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(20))); aot_mem.aot_direct_store32(aot_gpr_4 + static_cast(0), aot_gpr_5); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(0))); aot_gpr_5 = (59136u << 16u); aot_gpr_4 = (aot_gpr_4 + static_cast(4)); aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(0), aot_gpr_4); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(0))); aot_mem.aot_direct_store32(aot_gpr_4 + static_cast(0), aot_gpr_5); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(0))); aot_gpr_5 = (8704u << 16u); aot_gpr_4 = (aot_gpr_4 + static_cast(4)); aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(0), aot_gpr_4); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(0))); aot_gpr_5 = (aot_gpr_5 + static_cast(1)); aot_mem.aot_direct_store32(aot_gpr_4 + static_cast(0), aot_gpr_5); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(0))); aot_gpr_5 = (8960u << 16u); aot_gpr_4 = (aot_gpr_4 + static_cast(4)); aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(0), aot_gpr_4); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(0))); aot_gpr_5 = (aot_gpr_5 + static_cast(1)); aot_mem.aot_direct_store32(aot_gpr_4 + static_cast(0), aot_gpr_5); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(0))); aot_gpr_5 = (51200u << 16u); aot_gpr_4 = (aot_gpr_4 + static_cast(4)); aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(0), aot_gpr_4); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(0))); aot_gpr_5 = (aot_gpr_5 + static_cast(2)); aot_mem.aot_direct_store32(aot_gpr_4 + static_cast(0), aot_gpr_5); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(0))); aot_gpr_5 = (57088u << 16u); aot_gpr_4 = (aot_gpr_4 + static_cast(4)); aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(0), aot_gpr_4); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(0))); aot_gpr_5 = (aot_gpr_5 + static_cast(50)); aot_mem.aot_direct_store32(aot_gpr_4 + static_cast(0), aot_gpr_5); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(0))); aot_gpr_5 = (57344u << 16u); aot_gpr_4 = (aot_gpr_4 + static_cast(4)); aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(0), aot_gpr_4); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(0))); aot_mem.aot_direct_store32(aot_gpr_4 + static_cast(0), aot_gpr_5); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(0))); aot_gpr_5 = (57600u << 16u); aot_gpr_4 = (aot_gpr_4 + static_cast(4)); aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(0), aot_gpr_4); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(0))); aot_mem.aot_direct_store32(aot_gpr_4 + static_cast(0), aot_gpr_5); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(0))); aot_gpr_4 = (aot_gpr_4 + static_cast(4)); aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(0), aot_gpr_4); aot_fpr_20 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(48))); ctx.fpr[22] = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(52))); ctx.fpr[24] = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(56))); aot_gpr_16 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(60))); aot_gpr_17 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(64))); ctx.gpr[18] = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(68))); ctx.gpr[19] = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(72))); ctx.gpr[20] = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(76))); ctx.gpr[21] = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(80))); ctx.gpr[22] = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(84))); ctx.gpr[23] = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(88))); ctx.gpr[30] = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(92))); ctx.gpr[31] = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(96))); jump_target = ctx.gpr[31]; aot_gpr_29 = (aot_gpr_29 + static_cast(112)); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } // PSPRECOMP_V812_SHARED_SCHED_JUMP goto LOCAL_SCHED_BOUNDARY; L_08A7C6A8: aot_gpr_29 = (aot_gpr_29 + static_cast(-464)); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(436), aot_gpr_16); aot_gpr_16 = (2236u << 16u); aot_gpr_16 = (aot_gpr_16 + static_cast(32304)); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(416), std::bit_cast(aot_fpr_20)); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(420), std::bit_cast(ctx.fpr[22])); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(424), std::bit_cast(ctx.fpr[24])); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(428), std::bit_cast(ctx.fpr[26])); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(432), std::bit_cast(ctx.fpr[28])); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(440), aot_gpr_17); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(444), ctx.gpr[18]); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(448), ctx.gpr[19]); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(452), ctx.gpr[20]); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(456), ctx.gpr[21]); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(460), ctx.gpr[31]); ctx.gpr[31] = (0x08A7C6ECu); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(1980))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0035_entry, 35u, 139u, 0x08890984u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7C6ECu) goto L_08A7C6EC; AOT_REGCACHE_SYNC_OUT(); return; L_08A7C6EC: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(1980))); ctx.gpr[31] = (0x08A7C6F8u); aot_gpr_17 = (ctx.gpr[2] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0035_entry, 35u, 116u, 0x088907E0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7C6F8u) goto L_08A7C6F8; AOT_REGCACHE_SYNC_OUT(); return; L_08A7C6F8: aot_gpr_5 = (2234u << 16u); aot_fpr_20 = std::bit_cast(std::bit_cast(ctx.fpr[0])); aot_gpr_4 = (aot_gpr_29 | 0u); aot_gpr_6 = (0u | 108u); ctx.gpr[31] = (0x08A7C710u); aot_gpr_5 = (aot_gpr_5 + static_cast(7908)); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0088_entry, 88u, 36u, 0x089645DCu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7C710u) goto L_08A7C710; AOT_REGCACHE_SYNC_OUT(); return; L_08A7C710: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(0))); { const float fs = aot_fpr_12; const float ft = aot_fpr_20; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_12 = std::bit_cast(0x7FC00000u); else aot_fpr_12 = fs * ft; } aot_fpr_12 = std::bit_cast(std::bit_cast(aot_fpr_12) ^ 0x80000000u); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(12), std::bit_cast(aot_fpr_12)); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(4))); { const float fs = aot_fpr_12; const float ft = aot_fpr_20; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_12 = std::bit_cast(0x7FC00000u); else aot_fpr_12 = fs * ft; } aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(20), std::bit_cast(aot_fpr_20)); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(16), std::bit_cast(aot_fpr_12)); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(0))); { const float fs = aot_fpr_12; const float ft = aot_fpr_20; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_12 = std::bit_cast(0x7FC00000u); else aot_fpr_12 = fs * ft; } aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(24), std::bit_cast(aot_fpr_12)); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(4))); { const float fs = aot_fpr_12; const float ft = aot_fpr_20; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_12 = std::bit_cast(0x7FC00000u); else aot_fpr_12 = fs * ft; } aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(32), std::bit_cast(aot_fpr_20)); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(28), std::bit_cast(aot_fpr_12)); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(0))); { const float fs = aot_fpr_12; const float ft = aot_fpr_20; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_12 = std::bit_cast(0x7FC00000u); else aot_fpr_12 = fs * ft; } aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(36), std::bit_cast(aot_fpr_12)); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(4))); { const float fs = aot_fpr_12; const float ft = aot_fpr_20; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_12 = std::bit_cast(0x7FC00000u); else aot_fpr_12 = fs * ft; } aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(44), std::bit_cast(aot_fpr_20)); aot_fpr_12 = std::bit_cast(std::bit_cast(aot_fpr_12) ^ 0x80000000u); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(40), std::bit_cast(aot_fpr_12)); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(0))); { const float fs = aot_fpr_12; const float ft = aot_fpr_20; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_12 = std::bit_cast(0x7FC00000u); else aot_fpr_12 = fs * ft; } aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(1980))); aot_fpr_12 = std::bit_cast(std::bit_cast(aot_fpr_12) ^ 0x80000000u); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(48), std::bit_cast(aot_fpr_12)); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(4))); { const float fs = aot_fpr_12; const float ft = aot_fpr_20; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_12 = std::bit_cast(0x7FC00000u); else aot_fpr_12 = fs * ft; } aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(56), std::bit_cast(aot_fpr_20)); aot_fpr_12 = std::bit_cast(std::bit_cast(aot_fpr_12) ^ 0x80000000u); ctx.gpr[31] = (0x08A7C798u); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(52), std::bit_cast(aot_fpr_12)); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0035_entry, 35u, 121u, 0x08890828u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7C798u) goto L_08A7C798; AOT_REGCACHE_SYNC_OUT(); return; L_08A7C798: aot_gpr_4 = (aot_mem.aot_direct_load16(ctx.gpr[28] + static_cast(-25492))); aot_gpr_5 = (0u | 65535u); aot_gpr_4 = (static_cast(aot_gpr_4) < static_cast(aot_gpr_5) ? 1u : 0u); aot_gpr_5 = (17302u << 16u); ctx.fpr[22] = std::bit_cast(aot_gpr_5); aot_gpr_5 = (17056u << 16u); ctx.fpr[24] = std::bit_cast(aot_gpr_5); aot_gpr_5 = (16880u << 16u); ctx.fpr[26] = std::bit_cast(aot_gpr_5); aot_gpr_17 = (ctx.gpr[2] + static_cast(16)); ctx.gpr[18] = (aot_gpr_29 + static_cast(60)); ctx.gpr[19] = (aot_gpr_29 + static_cast(72)); aot_gpr_5 = (16840u << 16u); { const bool branch_taken = aot_gpr_4 == 0u; ctx.fpr[28] = std::bit_cast(aot_gpr_5); if (branch_taken) { goto L_08A7C7E4; } goto L_08A7C7D4; } L_08A7C7D4: aot_gpr_4 = (aot_mem.aot_direct_load16(ctx.gpr[28] + static_cast(-25492))); aot_gpr_4 = (aot_gpr_4 + static_cast(1)); { const bool branch_taken = 0u == 0u; aot_mem.aot_direct_store16(ctx.gpr[28] + static_cast(-25492), static_cast(aot_gpr_4)); if (branch_taken) { goto L_08A7C7F4; } goto L_08A7C7E4; } L_08A7C7E4: ctx.gpr[31] = (0x08A7C7ECu); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0036_entry, 36u, 274u, 0x088954BCu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7C7ECu) goto L_08A7C7EC; AOT_REGCACHE_SYNC_OUT(); return; L_08A7C7EC: aot_gpr_4 = (0u | 1u); aot_mem.aot_direct_store16(ctx.gpr[28] + static_cast(-25492), static_cast(aot_gpr_4)); goto L_08A7C7F4; L_08A7C7F4: aot_gpr_4 = (aot_gpr_16 + static_cast(48)); { const std::uint32_t vfpu_address = aot_gpr_4 + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } aot_gpr_4 = (ctx.gpr[28] + static_cast(10048)); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = aot_gpr_4 + static_cast(0); const std::uint32_t vfpu_words[4]{std::bit_cast(vfpu_value[0]), std::bit_cast(vfpu_value[1]), std::bit_cast(vfpu_value[2]), std::bit_cast(vfpu_value[3])}; aot_mem.aot_direct_store32_block(vfpu_address, vfpu_words); } aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(40))); aot_fpr_13 = std::bit_cast(0u); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 <= aot_fpr_13)) ? 0x00800000u : 0u); { const bool branch_taken = !((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_08A7C900; } goto L_08A7C81C; } L_08A7C81C: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(12))); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(176), std::bit_cast(aot_fpr_12)); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(16))); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(180), std::bit_cast(aot_fpr_12)); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(20))); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(184), std::bit_cast(aot_fpr_12)); aot_gpr_4 = (std::bit_cast(ctx.fpr[22])); ctx.set_vfpu_scalar_bits_ct<28u>(aot_gpr_4); aot_gpr_4 = (aot_gpr_29 + static_cast(176)); { const std::uint32_t vfpu_address = aot_gpr_4 + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } ctx.execute_vfpu_vscl_ct<0u, 0u, 28u, 3u>(); aot_gpr_5 = (aot_gpr_29 + static_cast(160)); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = aot_gpr_5 + static_cast(0); const std::uint32_t vfpu_words[4]{std::bit_cast(vfpu_value[0]), std::bit_cast(vfpu_value[1]), std::bit_cast(vfpu_value[2]), std::bit_cast(vfpu_value[3])}; aot_mem.aot_direct_store32_block(vfpu_address, vfpu_words); } aot_gpr_6 = (std::bit_cast(aot_fpr_20)); ctx.set_vfpu_scalar_bits_ct<28u>(aot_gpr_6); ctx.execute_vfpu_unary_ct<28u, 28u, 1u, 16u>(); { const std::uint32_t vfpu_address = aot_gpr_5 + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } ctx.execute_vfpu_vscl_ct<0u, 0u, 28u, 3u>(); aot_gpr_6 = (aot_gpr_29 + static_cast(144)); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = aot_gpr_6 + static_cast(0); const std::uint32_t vfpu_words[4]{std::bit_cast(vfpu_value[0]), std::bit_cast(vfpu_value[1]), std::bit_cast(vfpu_value[2]), std::bit_cast(vfpu_value[3])}; aot_mem.aot_direct_store32_block(vfpu_address, vfpu_words); } aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_6 + static_cast(0))); ctx.gpr[7] = (std::bit_cast(aot_fpr_12)); aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_6 + static_cast(4))); ctx.gpr[8] = (std::bit_cast(aot_fpr_13)); aot_fpr_14 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_6 + static_cast(8))); ctx.gpr[9] = (std::bit_cast(aot_fpr_14)); aot_mem.aot_direct_store32(ctx.gpr[18] + static_cast(0), ctx.gpr[7]); aot_mem.aot_direct_store32(ctx.gpr[18] + static_cast(4), ctx.gpr[8]); aot_mem.aot_direct_store32(ctx.gpr[18] + static_cast(8), ctx.gpr[9]); ctx.fpr[15] = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(24))); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(176), std::bit_cast(ctx.fpr[15])); ctx.fpr[15] = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(28))); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(180), std::bit_cast(ctx.fpr[15])); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(32))); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(184), std::bit_cast(aot_fpr_12)); ctx.gpr[7] = (std::bit_cast(ctx.fpr[22])); ctx.set_vfpu_scalar_bits_ct<28u>(ctx.gpr[7]); { const std::uint32_t vfpu_address = aot_gpr_4 + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } ctx.execute_vfpu_vscl_ct<0u, 0u, 28u, 3u>(); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = aot_gpr_6 + static_cast(0); const std::uint32_t vfpu_words[4]{std::bit_cast(vfpu_value[0]), std::bit_cast(vfpu_value[1]), std::bit_cast(vfpu_value[2]), std::bit_cast(vfpu_value[3])}; aot_mem.aot_direct_store32_block(vfpu_address, vfpu_words); } aot_gpr_4 = (std::bit_cast(aot_fpr_20)); ctx.set_vfpu_scalar_bits_ct<28u>(aot_gpr_4); ctx.execute_vfpu_unary_ct<28u, 28u, 1u, 16u>(); { const std::uint32_t vfpu_address = aot_gpr_6 + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } ctx.execute_vfpu_vscl_ct<0u, 0u, 28u, 3u>(); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = aot_gpr_5 + static_cast(0); const std::uint32_t vfpu_words[4]{std::bit_cast(vfpu_value[0]), std::bit_cast(vfpu_value[1]), std::bit_cast(vfpu_value[2]), std::bit_cast(vfpu_value[3])}; aot_mem.aot_direct_store32_block(vfpu_address, vfpu_words); } aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_5 + static_cast(0))); aot_gpr_4 = (std::bit_cast(aot_fpr_12)); aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_5 + static_cast(4))); aot_gpr_6 = (std::bit_cast(aot_fpr_13)); aot_fpr_14 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_5 + static_cast(8))); aot_gpr_5 = (std::bit_cast(aot_fpr_14)); aot_mem.aot_direct_store32(ctx.gpr[19] + static_cast(0), aot_gpr_4); aot_mem.aot_direct_store32(ctx.gpr[19] + static_cast(4), aot_gpr_6); aot_mem.aot_direct_store32(ctx.gpr[19] + static_cast(8), aot_gpr_5); { const bool branch_taken = 0u == 0u; if (branch_taken) { goto L_08A7C9DC; } goto L_08A7C900; } L_08A7C900: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(48))); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(224), std::bit_cast(aot_fpr_12)); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(52))); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(228), std::bit_cast(aot_fpr_12)); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(56))); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(232), std::bit_cast(aot_fpr_12)); aot_gpr_4 = (std::bit_cast(ctx.fpr[22])); ctx.set_vfpu_scalar_bits_ct<28u>(aot_gpr_4); aot_gpr_4 = (aot_gpr_29 + static_cast(224)); { const std::uint32_t vfpu_address = aot_gpr_4 + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } ctx.execute_vfpu_vscl_ct<0u, 0u, 28u, 3u>(); aot_gpr_5 = (aot_gpr_29 + static_cast(208)); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = aot_gpr_5 + static_cast(0); const std::uint32_t vfpu_words[4]{std::bit_cast(vfpu_value[0]), std::bit_cast(vfpu_value[1]), std::bit_cast(vfpu_value[2]), std::bit_cast(vfpu_value[3])}; aot_mem.aot_direct_store32_block(vfpu_address, vfpu_words); } aot_gpr_6 = (std::bit_cast(aot_fpr_20)); ctx.set_vfpu_scalar_bits_ct<28u>(aot_gpr_6); ctx.execute_vfpu_unary_ct<28u, 28u, 1u, 16u>(); { const std::uint32_t vfpu_address = aot_gpr_5 + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } ctx.execute_vfpu_vscl_ct<0u, 0u, 28u, 3u>(); aot_gpr_6 = (aot_gpr_29 + static_cast(192)); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = aot_gpr_6 + static_cast(0); const std::uint32_t vfpu_words[4]{std::bit_cast(vfpu_value[0]), std::bit_cast(vfpu_value[1]), std::bit_cast(vfpu_value[2]), std::bit_cast(vfpu_value[3])}; aot_mem.aot_direct_store32_block(vfpu_address, vfpu_words); } aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_6 + static_cast(0))); ctx.gpr[7] = (std::bit_cast(aot_fpr_12)); aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_6 + static_cast(4))); ctx.gpr[8] = (std::bit_cast(aot_fpr_13)); aot_fpr_14 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_6 + static_cast(8))); ctx.gpr[9] = (std::bit_cast(aot_fpr_14)); aot_mem.aot_direct_store32(ctx.gpr[18] + static_cast(0), ctx.gpr[7]); aot_mem.aot_direct_store32(ctx.gpr[18] + static_cast(4), ctx.gpr[8]); aot_mem.aot_direct_store32(ctx.gpr[18] + static_cast(8), ctx.gpr[9]); ctx.fpr[15] = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(36))); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(224), std::bit_cast(ctx.fpr[15])); ctx.fpr[15] = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(40))); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(228), std::bit_cast(ctx.fpr[15])); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(44))); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(232), std::bit_cast(aot_fpr_12)); ctx.gpr[7] = (std::bit_cast(ctx.fpr[22])); ctx.set_vfpu_scalar_bits_ct<28u>(ctx.gpr[7]); { const std::uint32_t vfpu_address = aot_gpr_4 + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } ctx.execute_vfpu_vscl_ct<0u, 0u, 28u, 3u>(); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = aot_gpr_6 + static_cast(0); const std::uint32_t vfpu_words[4]{std::bit_cast(vfpu_value[0]), std::bit_cast(vfpu_value[1]), std::bit_cast(vfpu_value[2]), std::bit_cast(vfpu_value[3])}; aot_mem.aot_direct_store32_block(vfpu_address, vfpu_words); } aot_gpr_4 = (std::bit_cast(aot_fpr_20)); ctx.set_vfpu_scalar_bits_ct<28u>(aot_gpr_4); ctx.execute_vfpu_unary_ct<28u, 28u, 1u, 16u>(); { const std::uint32_t vfpu_address = aot_gpr_6 + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } ctx.execute_vfpu_vscl_ct<0u, 0u, 28u, 3u>(); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = aot_gpr_5 + static_cast(0); const std::uint32_t vfpu_words[4]{std::bit_cast(vfpu_value[0]), std::bit_cast(vfpu_value[1]), std::bit_cast(vfpu_value[2]), std::bit_cast(vfpu_value[3])}; aot_mem.aot_direct_store32_block(vfpu_address, vfpu_words); } aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_5 + static_cast(0))); aot_gpr_4 = (std::bit_cast(aot_fpr_12)); aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_5 + static_cast(4))); aot_gpr_6 = (std::bit_cast(aot_fpr_13)); aot_fpr_14 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_5 + static_cast(8))); aot_gpr_5 = (std::bit_cast(aot_fpr_14)); aot_mem.aot_direct_store32(ctx.gpr[19] + static_cast(0), aot_gpr_4); aot_mem.aot_direct_store32(ctx.gpr[19] + static_cast(4), aot_gpr_6); aot_mem.aot_direct_store32(ctx.gpr[19] + static_cast(8), aot_gpr_5); goto L_08A7C9DC; L_08A7C9DC: aot_gpr_4 = (aot_gpr_29 | 0u); aot_gpr_5 = (aot_gpr_29 | 0u); aot_gpr_6 = (0u | 9u); ctx.gpr[31] = (0x08A7C9F0u); ctx.gpr[7] = (aot_gpr_17 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0023_entry, 23u, 233u, 0x088618A8u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7C9F0u) goto L_08A7C9F0; AOT_REGCACHE_SYNC_OUT(); return; L_08A7C9F0: aot_gpr_4 = (aot_mem.aot_direct_load8(aot_gpr_16 + static_cast(80))); aot_gpr_4 = (aot_gpr_4 << 5u); aot_gpr_5 = (0u - aot_gpr_4); aot_gpr_4 = (aot_gpr_4 << 2u); aot_gpr_5 = (aot_gpr_5 + aot_gpr_4); aot_gpr_4 = (aot_gpr_4 << 2u); aot_gpr_4 = (aot_gpr_5 + aot_gpr_4); aot_gpr_16 = (aot_gpr_4 + aot_gpr_16); aot_gpr_16 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(aot_gpr_16 + static_cast(112)))))); aot_gpr_4 = (0u | 1u); { const bool branch_taken = aot_gpr_16 == aot_gpr_4; aot_gpr_4 = (0u | 37u); if (branch_taken) { goto L_08A7CAA4; } goto L_08A7CA20; } L_08A7CA20: { const bool branch_taken = aot_gpr_16 == aot_gpr_4; if (branch_taken) { goto L_08A7CAA4; } goto L_08A7CA28; } L_08A7CA28: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(0))); aot_fpr_12 = aot_fpr_12 / ctx.fpr[24]; aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(4))); aot_fpr_14 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(60))); ctx.fpr[15] = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(64))); ctx.fpr[16] = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(72))); ctx.fpr[17] = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(76))); aot_gpr_6 = (2216u << 16u); aot_gpr_4 = (aot_gpr_29 + static_cast(108)); aot_gpr_6 = (aot_gpr_6 + static_cast(-19252)); aot_gpr_5 = (0u | 3u); aot_fpr_13 = aot_fpr_13 / ctx.fpr[24]; aot_fpr_14 = aot_fpr_14 / ctx.fpr[24]; ctx.fpr[15] = ctx.fpr[15] / ctx.fpr[24]; ctx.fpr[16] = ctx.fpr[16] / ctx.fpr[24]; ctx.fpr[17] = ctx.fpr[17] / ctx.fpr[24]; aot_fpr_12 = aot_fpr_12 + ctx.fpr[26]; aot_fpr_13 = aot_fpr_13 + ctx.fpr[28]; aot_fpr_14 = aot_fpr_14 + ctx.fpr[26]; ctx.fpr[15] = ctx.fpr[15] + ctx.fpr[28]; aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(108), std::bit_cast(aot_fpr_12)); aot_fpr_12 = ctx.fpr[16] + ctx.fpr[26]; aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(112), std::bit_cast(aot_fpr_13)); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(116), std::bit_cast(aot_fpr_14)); aot_fpr_13 = ctx.fpr[17] + ctx.fpr[28]; aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(120), std::bit_cast(ctx.fpr[15])); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(124), std::bit_cast(aot_fpr_12)); ctx.gpr[31] = (0x08A7CA9Cu); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(128), std::bit_cast(aot_fpr_13)); goto L_08A7DBBC; L_08A7CA9C: { const bool branch_taken = 0u == 0u; if (branch_taken) { goto L_08A7CE90; } goto L_08A7CAA4; } L_08A7CAA4: ctx.gpr[31] = (0x08A7CAACu); aot_gpr_4 = (aot_gpr_29 + static_cast(272)); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0115_entry, 115u, 291u, 0x089D1AECu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7CAACu) goto L_08A7CAAC; AOT_REGCACHE_SYNC_OUT(); return; L_08A7CAAC: aot_gpr_6 = (49864u << 16u); aot_gpr_16 = (aot_gpr_29 + static_cast(12)); aot_fpr_20 = std::bit_cast(aot_gpr_6); aot_gpr_4 = (aot_gpr_16 | 0u); aot_fpr_12 = std::bit_cast(std::bit_cast(aot_fpr_20)); ctx.gpr[31] = (0x08A7CAC8u); aot_gpr_5 = (aot_gpr_29 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0157_entry, 157u, 334u, 0x08A79B48u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7CAC8u) goto L_08A7CAC8; AOT_REGCACHE_SYNC_OUT(); return; L_08A7CAC8: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(0))); aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(4))); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(240), std::bit_cast(aot_fpr_12)); aot_fpr_14 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(272))); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 < aot_fpr_14)) ? 0x00800000u : 0u); { const bool branch_taken = !((ctx.fcr31 & 0x00800000u) != 0u); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(244), std::bit_cast(aot_fpr_13)); if (branch_taken) { goto L_08A7CAF0; } goto L_08A7CAE8; } L_08A7CAE8: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(240))); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(272), std::bit_cast(aot_fpr_12)); goto L_08A7CAF0; L_08A7CAF0: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(240))); aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(280))); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 <= aot_fpr_13)) ? 0x00800000u : 0u); if (((ctx.fcr31 & 0x00800000u) != 0u)) { aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(244))); goto L_08A7CB14; } goto L_08A7CB08; L_08A7CB08: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(240))); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(280), std::bit_cast(aot_fpr_12)); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(244))); goto L_08A7CB14; L_08A7CB14: aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(284))); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 < aot_fpr_13)) ? 0x00800000u : 0u); if (!((ctx.fcr31 & 0x00800000u) != 0u)) { aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(244))); goto L_08A7CB34; } goto L_08A7CB28; L_08A7CB28: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(244))); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(284), std::bit_cast(aot_fpr_12)); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(244))); goto L_08A7CB34; L_08A7CB34: aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(276))); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 <= aot_fpr_13)) ? 0x00800000u : 0u); { const bool branch_taken = ((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_08A7CB50; } goto L_08A7CB48; } L_08A7CB48: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(244))); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(276), std::bit_cast(aot_fpr_12)); goto L_08A7CB50; L_08A7CB50: aot_gpr_16 = (aot_gpr_29 + static_cast(24)); aot_fpr_12 = std::bit_cast(std::bit_cast(aot_fpr_20)); aot_gpr_4 = (aot_gpr_16 | 0u); ctx.gpr[31] = (0x08A7CB64u); aot_gpr_5 = (aot_gpr_29 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0157_entry, 157u, 334u, 0x08A79B48u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7CB64u) goto L_08A7CB64; AOT_REGCACHE_SYNC_OUT(); return; L_08A7CB64: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(0))); aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(4))); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(240), std::bit_cast(aot_fpr_12)); aot_fpr_14 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(272))); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 < aot_fpr_14)) ? 0x00800000u : 0u); { const bool branch_taken = !((ctx.fcr31 & 0x00800000u) != 0u); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(244), std::bit_cast(aot_fpr_13)); if (branch_taken) { goto L_08A7CB8C; } goto L_08A7CB84; } L_08A7CB84: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(240))); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(272), std::bit_cast(aot_fpr_12)); goto L_08A7CB8C; L_08A7CB8C: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(240))); aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(280))); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 <= aot_fpr_13)) ? 0x00800000u : 0u); if (((ctx.fcr31 & 0x00800000u) != 0u)) { aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(244))); goto L_08A7CBB0; } goto L_08A7CBA4; L_08A7CBA4: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(240))); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(280), std::bit_cast(aot_fpr_12)); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(244))); goto L_08A7CBB0; L_08A7CBB0: aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(284))); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 < aot_fpr_13)) ? 0x00800000u : 0u); if (!((ctx.fcr31 & 0x00800000u) != 0u)) { aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(244))); goto L_08A7CBD0; } goto L_08A7CBC4; L_08A7CBC4: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(244))); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(284), std::bit_cast(aot_fpr_12)); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(244))); goto L_08A7CBD0; L_08A7CBD0: aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(276))); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 <= aot_fpr_13)) ? 0x00800000u : 0u); { const bool branch_taken = ((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_08A7CBEC; } goto L_08A7CBE4; } L_08A7CBE4: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(244))); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(276), std::bit_cast(aot_fpr_12)); goto L_08A7CBEC; L_08A7CBEC: aot_gpr_16 = (aot_gpr_29 + static_cast(36)); aot_fpr_12 = std::bit_cast(std::bit_cast(aot_fpr_20)); aot_gpr_4 = (aot_gpr_16 | 0u); ctx.gpr[31] = (0x08A7CC00u); aot_gpr_5 = (aot_gpr_29 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0157_entry, 157u, 334u, 0x08A79B48u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7CC00u) goto L_08A7CC00; AOT_REGCACHE_SYNC_OUT(); return; L_08A7CC00: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(0))); aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(4))); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(240), std::bit_cast(aot_fpr_12)); aot_fpr_14 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(272))); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 < aot_fpr_14)) ? 0x00800000u : 0u); { const bool branch_taken = !((ctx.fcr31 & 0x00800000u) != 0u); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(244), std::bit_cast(aot_fpr_13)); if (branch_taken) { goto L_08A7CC28; } goto L_08A7CC20; } L_08A7CC20: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(240))); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(272), std::bit_cast(aot_fpr_12)); goto L_08A7CC28; L_08A7CC28: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(240))); aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(280))); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 <= aot_fpr_13)) ? 0x00800000u : 0u); if (((ctx.fcr31 & 0x00800000u) != 0u)) { aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(244))); goto L_08A7CC4C; } goto L_08A7CC40; L_08A7CC40: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(240))); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(280), std::bit_cast(aot_fpr_12)); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(244))); goto L_08A7CC4C; L_08A7CC4C: aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(284))); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 < aot_fpr_13)) ? 0x00800000u : 0u); if (!((ctx.fcr31 & 0x00800000u) != 0u)) { aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(244))); goto L_08A7CC6C; } goto L_08A7CC60; L_08A7CC60: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(244))); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(284), std::bit_cast(aot_fpr_12)); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(244))); goto L_08A7CC6C; L_08A7CC6C: aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(276))); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 <= aot_fpr_13)) ? 0x00800000u : 0u); { const bool branch_taken = ((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_08A7CC88; } goto L_08A7CC80; } L_08A7CC80: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(244))); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(276), std::bit_cast(aot_fpr_12)); goto L_08A7CC88; L_08A7CC88: aot_gpr_16 = (aot_gpr_29 + static_cast(48)); aot_fpr_12 = std::bit_cast(std::bit_cast(aot_fpr_20)); aot_gpr_4 = (aot_gpr_16 | 0u); ctx.gpr[31] = (0x08A7CC9Cu); aot_gpr_5 = (aot_gpr_29 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0157_entry, 157u, 334u, 0x08A79B48u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7CC9Cu) goto L_08A7CC9C; AOT_REGCACHE_SYNC_OUT(); return; L_08A7CC9C: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(0))); aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(4))); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(240), std::bit_cast(aot_fpr_12)); aot_fpr_14 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(272))); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 < aot_fpr_14)) ? 0x00800000u : 0u); { const bool branch_taken = !((ctx.fcr31 & 0x00800000u) != 0u); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(244), std::bit_cast(aot_fpr_13)); if (branch_taken) { goto L_08A7CCC4; } goto L_08A7CCBC; } L_08A7CCBC: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(240))); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(272), std::bit_cast(aot_fpr_12)); goto L_08A7CCC4; L_08A7CCC4: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(240))); aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(280))); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 <= aot_fpr_13)) ? 0x00800000u : 0u); if (((ctx.fcr31 & 0x00800000u) != 0u)) { aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(244))); goto L_08A7CCE8; } goto L_08A7CCDC; L_08A7CCDC: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(240))); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(280), std::bit_cast(aot_fpr_12)); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(244))); goto L_08A7CCE8; L_08A7CCE8: aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(284))); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 < aot_fpr_13)) ? 0x00800000u : 0u); if (!((ctx.fcr31 & 0x00800000u) != 0u)) { aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(244))); goto L_08A7CD08; } goto L_08A7CCFC; L_08A7CCFC: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(244))); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(284), std::bit_cast(aot_fpr_12)); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(244))); goto L_08A7CD08; L_08A7CD08: aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(276))); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 <= aot_fpr_13)) ? 0x00800000u : 0u); if (((ctx.fcr31 & 0x00800000u) != 0u)) { aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(272))); goto L_08A7CD28; } goto L_08A7CD1C; L_08A7CD1C: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(244))); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(276), std::bit_cast(aot_fpr_12)); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(272))); goto L_08A7CD28; L_08A7CD28: aot_fpr_12 = aot_fpr_12 / ctx.fpr[24]; aot_gpr_5 = (0u | 49u); aot_fpr_12 = aot_fpr_12 + ctx.fpr[26]; aot_fpr_12 = std::bit_cast(ctx.fpu_float_to_word_ct<1u>(aot_fpr_12)); aot_gpr_4 = (std::bit_cast(aot_fpr_12)); aot_gpr_5 = (static_cast(aot_gpr_5) < static_cast(aot_gpr_4) ? 1u : 0u); if (aot_gpr_5 != 0u) { aot_gpr_4 = (0u | 49u); goto L_08A7CD48; } goto L_08A7CD48; L_08A7CD48: aot_gpr_5 = (static_cast(aot_gpr_4) < 0 ? 1u : 0u); if (aot_gpr_5 != 0u) { aot_gpr_4 = (0u | 0u); goto L_08A7CD54; } goto L_08A7CD54; L_08A7CD54: aot_gpr_5 = (0u | 0u); ctx.gpr[19] = (0u | 0u); aot_gpr_5 = (static_cast(aot_gpr_5) < static_cast(aot_gpr_4) ? 1u : 0u); if (aot_gpr_5 != 0u) { ctx.gpr[19] = (aot_gpr_4 | 0u); goto L_08A7CD68; } goto L_08A7CD68; L_08A7CD68: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(280))); aot_fpr_12 = aot_fpr_12 / ctx.fpr[24]; aot_gpr_5 = (0u | 49u); aot_fpr_12 = aot_fpr_12 + ctx.fpr[26]; aot_fpr_12 = std::bit_cast(ctx.fpu_float_to_word_ct<1u>(aot_fpr_12)); aot_gpr_4 = (std::bit_cast(aot_fpr_12)); aot_gpr_5 = (static_cast(aot_gpr_5) < static_cast(aot_gpr_4) ? 1u : 0u); if (aot_gpr_5 != 0u) { aot_gpr_4 = (0u | 49u); goto L_08A7CD8C; } goto L_08A7CD8C; L_08A7CD8C: aot_gpr_5 = (static_cast(aot_gpr_4) < 0 ? 1u : 0u); if (aot_gpr_5 != 0u) { aot_gpr_4 = (0u | 0u); goto L_08A7CD98; } goto L_08A7CD98; L_08A7CD98: aot_gpr_16 = (0u | 49u); aot_gpr_5 = (static_cast(aot_gpr_4) < 49 ? 1u : 0u); if (aot_gpr_5 != 0u) { aot_gpr_16 = (aot_gpr_4 | 0u); goto L_08A7CDA8; } goto L_08A7CDA8; L_08A7CDA8: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(284))); aot_fpr_12 = aot_fpr_12 / ctx.fpr[24]; aot_gpr_5 = (0u | 49u); aot_fpr_12 = aot_fpr_12 + ctx.fpr[28]; aot_fpr_12 = std::bit_cast(ctx.fpu_float_to_word_ct<1u>(aot_fpr_12)); aot_gpr_4 = (std::bit_cast(aot_fpr_12)); aot_gpr_5 = (static_cast(aot_gpr_5) < static_cast(aot_gpr_4) ? 1u : 0u); if (aot_gpr_5 != 0u) { aot_gpr_4 = (0u | 49u); goto L_08A7CDCC; } goto L_08A7CDCC; L_08A7CDCC: aot_gpr_5 = (static_cast(aot_gpr_4) < 0 ? 1u : 0u); if (aot_gpr_5 != 0u) { aot_gpr_4 = (0u | 0u); goto L_08A7CDD8; } goto L_08A7CDD8; L_08A7CDD8: aot_gpr_5 = (0u | 0u); aot_gpr_17 = (0u | 0u); aot_gpr_5 = (static_cast(aot_gpr_5) < static_cast(aot_gpr_4) ? 1u : 0u); if (aot_gpr_5 != 0u) { aot_gpr_17 = (aot_gpr_4 | 0u); goto L_08A7CDEC; } goto L_08A7CDEC; L_08A7CDEC: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(276))); aot_fpr_12 = aot_fpr_12 / ctx.fpr[24]; aot_gpr_5 = (0u | 49u); aot_fpr_12 = aot_fpr_12 + ctx.fpr[28]; aot_fpr_12 = std::bit_cast(ctx.fpu_float_to_word_ct<1u>(aot_fpr_12)); aot_gpr_4 = (std::bit_cast(aot_fpr_12)); aot_gpr_5 = (static_cast(aot_gpr_5) < static_cast(aot_gpr_4) ? 1u : 0u); if (aot_gpr_5 != 0u) { aot_gpr_4 = (0u | 49u); goto L_08A7CE10; } goto L_08A7CE10; L_08A7CE10: aot_gpr_5 = (static_cast(aot_gpr_4) < 0 ? 1u : 0u); if (aot_gpr_5 != 0u) { aot_gpr_4 = (0u | 0u); goto L_08A7CE1C; } goto L_08A7CE1C; L_08A7CE1C: ctx.gpr[18] = (0u | 49u); aot_gpr_5 = (static_cast(aot_gpr_4) < 49 ? 1u : 0u); if (aot_gpr_5 != 0u) { ctx.gpr[18] = (aot_gpr_4 | 0u); goto L_08A7CE2C; } goto L_08A7CE2C; L_08A7CE2C: aot_gpr_4 = (aot_gpr_16 < ctx.gpr[19] ? 1u : 0u); { const bool branch_taken = aot_gpr_4 != 0u; if (branch_taken) { goto L_08A7CE90; } goto L_08A7CE38; } L_08A7CE38: ctx.gpr[20] = (aot_gpr_17 | 0u); aot_gpr_4 = (ctx.gpr[18] < ctx.gpr[20] ? 1u : 0u); { const bool branch_taken = aot_gpr_4 != 0u; aot_gpr_4 = (aot_gpr_17 << 4u); if (branch_taken) { goto L_08A7CE80; } goto L_08A7CE48; } L_08A7CE48: aot_gpr_5 = (aot_gpr_17 + aot_gpr_4); aot_gpr_4 = (aot_gpr_4 + aot_gpr_5); aot_gpr_4 = (aot_gpr_4 + aot_gpr_5); aot_gpr_4 = (ctx.gpr[19] + aot_gpr_4); ctx.gpr[21] = (aot_gpr_4 << 6u); aot_gpr_4 = (aot_gpr_4 << 3u); ctx.gpr[21] = (ctx.gpr[21] - aot_gpr_4); goto L_08A7CE64; L_08A7CE64: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-25496))); ctx.gpr[31] = (0x08A7CE70u); aot_gpr_4 = (aot_gpr_4 + ctx.gpr[21]); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0157_entry, 157u, 688u, 0x08A7B4CCu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7CE70u) goto L_08A7CE70; AOT_REGCACHE_SYNC_OUT(); return; L_08A7CE70: ctx.gpr[20] = (ctx.gpr[20] + static_cast(1)); aot_gpr_4 = (ctx.gpr[18] < ctx.gpr[20] ? 1u : 0u); { const bool branch_taken = aot_gpr_4 == 0u; ctx.gpr[21] = (ctx.gpr[21] + static_cast(2800)); if (branch_taken) { goto L_08A7CE64; } goto L_08A7CE80; } L_08A7CE80: ctx.gpr[19] = (ctx.gpr[19] + static_cast(1)); aot_gpr_4 = (aot_gpr_16 < ctx.gpr[19] ? 1u : 0u); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_08A7CE38; } goto L_08A7CE90; } L_08A7CE90: aot_fpr_20 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(416))); ctx.fpr[22] = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(420))); ctx.fpr[24] = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(424))); ctx.fpr[26] = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(428))); ctx.fpr[28] = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(432))); aot_gpr_16 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(436))); aot_gpr_17 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(440))); ctx.gpr[18] = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(444))); ctx.gpr[19] = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(448))); ctx.gpr[20] = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(452))); ctx.gpr[21] = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(456))); ctx.gpr[31] = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(460))); jump_target = ctx.gpr[31]; aot_gpr_29 = (aot_gpr_29 + static_cast(464)); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } // PSPRECOMP_V812_SHARED_SCHED_JUMP goto LOCAL_SCHED_BOUNDARY; L_08A7CEC8: aot_gpr_29 = (aot_gpr_29 + static_cast(-144)); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(120), aot_gpr_16); aot_gpr_16 = (aot_gpr_4 | 0u); aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(aot_gpr_16 + static_cast(86)))))); aot_gpr_5 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(7656))); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(116), std::bit_cast(aot_fpr_20)); aot_gpr_5 = (static_cast(aot_gpr_4) < static_cast(aot_gpr_5) ? 1u : 0u); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(124), aot_gpr_17); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(128), ctx.gpr[18]); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(132), ctx.gpr[19]); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(136), ctx.gpr[31]); { const bool branch_taken = aot_gpr_5 == 0u; aot_gpr_17 = (0u | 0u); if (branch_taken) { goto L_08A7CF0C; } goto L_08A7CEFC; } L_08A7CEFC: aot_gpr_5 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(24))); aot_gpr_4 = (aot_gpr_4 << 2u); aot_gpr_4 = (aot_gpr_5 + aot_gpr_4); aot_gpr_17 = (aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(0))); goto L_08A7CF0C; L_08A7CF0C: aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(aot_gpr_16 + static_cast(86)))))); aot_gpr_5 = (0u | 7466u); { const bool branch_taken = aot_gpr_4 != aot_gpr_5; if (branch_taken) { goto L_08A7CF28; } goto L_08A7CF1C; } L_08A7CF1C: aot_gpr_4 = (17302u << 16u); aot_fpr_12 = std::bit_cast(aot_gpr_4); aot_mem.aot_direct_store32(aot_gpr_17 + static_cast(44), std::bit_cast(aot_fpr_12)); goto L_08A7CF28; L_08A7CF28: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(72))); aot_gpr_4 = (aot_gpr_4 & 14u); aot_gpr_4 = (aot_gpr_4 ^ 10u); aot_gpr_4 = (aot_gpr_4 < static_cast(1) ? 1u : 0u); aot_gpr_4 = (aot_gpr_4 & 255u); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_08A7CF64; } goto L_08A7CF44; } L_08A7CF44: ctx.gpr[31] = (0x08A7CF4Cu); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0179_entry, 179u, 51u, 0x08AD0598u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7CF4Cu) goto L_08A7CF4C; AOT_REGCACHE_SYNC_OUT(); return; L_08A7CF4C: { const bool branch_taken = ctx.gpr[2] != 0u; if (branch_taken) { goto L_08A7CF5C; } goto L_08A7CF54; } L_08A7CF54: { const bool branch_taken = 0u == 0u; ctx.gpr[2] = (0u | 2u); if (branch_taken) { goto L_08A7DB9C; } goto L_08A7CF5C; } L_08A7CF5C: { const bool branch_taken = 0u == 0u; ctx.gpr[2] = (0u | 1u); if (branch_taken) { goto L_08A7DB9C; } goto L_08A7CF64; } L_08A7CF64: aot_gpr_4 = (aot_mem.aot_direct_load8(aot_gpr_17 + static_cast(16))); aot_gpr_5 = (0u | 1u); { const bool branch_taken = aot_gpr_4 != aot_gpr_5; if (branch_taken) { goto L_08A7D0A8; } goto L_08A7CF74; } L_08A7CF74: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(72))); aot_gpr_4 = (aot_gpr_4 & 14u); aot_gpr_4 = (aot_gpr_4 ^ 12u); aot_gpr_4 = (aot_gpr_4 < static_cast(1) ? 1u : 0u); aot_gpr_4 = (aot_gpr_4 & 255u); { const bool branch_taken = aot_gpr_4 != 0u; if (branch_taken) { goto L_08A7CFAC; } goto L_08A7CF90; } L_08A7CF90: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(72))); aot_gpr_4 = (aot_gpr_4 & 14u); aot_gpr_4 = (aot_gpr_4 ^ 8u); aot_gpr_4 = (aot_gpr_4 < static_cast(1) ? 1u : 0u); aot_gpr_4 = (aot_gpr_4 & 255u); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_08A7D0A8; } goto L_08A7CFAC; } L_08A7CFAC: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(72))); aot_gpr_4 = (aot_gpr_4 & 14u); aot_gpr_4 = (aot_gpr_4 ^ 8u); aot_gpr_4 = (aot_gpr_4 < static_cast(1) ? 1u : 0u); aot_gpr_4 = (aot_gpr_4 & 255u); { const bool branch_taken = aot_gpr_4 == 0u; ctx.gpr[18] = (0u | 0u); if (branch_taken) { goto L_08A7D008; } goto L_08A7CFC8; } L_08A7CFC8: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(72))); aot_gpr_5 = (512u << 16u); aot_gpr_4 = (aot_gpr_4 & aot_gpr_5); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_08A7D008; } goto L_08A7CFDC; } L_08A7CFDC: aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(aot_gpr_16 + static_cast(86)))))); aot_gpr_5 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(7656))); aot_gpr_5 = (static_cast(aot_gpr_4) < static_cast(aot_gpr_5) ? 1u : 0u); { const bool branch_taken = aot_gpr_5 == 0u; ctx.gpr[18] = (0u | 0u); if (branch_taken) { goto L_08A7D000; } goto L_08A7CFF0; } L_08A7CFF0: aot_gpr_5 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(24))); aot_gpr_4 = (aot_gpr_4 << 2u); aot_gpr_4 = (aot_gpr_5 + aot_gpr_4); ctx.gpr[18] = (aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(0))); goto L_08A7D000; L_08A7D000: ctx.gpr[18] = (aot_mem.aot_direct_load16(ctx.gpr[18] + static_cast(58))); ctx.gpr[18] = (ctx.gpr[18] & 3u); goto L_08A7D008; L_08A7D008: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(5864))); if (aot_gpr_4 != 0u) { aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(5864))); goto L_08A7D020; } goto L_08A7D014; L_08A7D014: ctx.gpr[31] = (0x08A7D01Cu); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 413u, 0x08B65B0Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7D01Cu) goto L_08A7D01C; AOT_REGCACHE_SYNC_OUT(); return; L_08A7D01C: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(5864))); goto L_08A7D020; L_08A7D020: aot_gpr_5 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(aot_gpr_16 + static_cast(86)))))); ctx.gpr[31] = (0x08A7D02Cu); aot_gpr_6 = (ctx.gpr[18] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0084_entry, 84u, 174u, 0x08954B84u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7D02Cu) goto L_08A7D02C; AOT_REGCACHE_SYNC_OUT(); return; L_08A7D02C: ctx.gpr[18] = (ctx.gpr[2] | 0u); { const bool branch_taken = ctx.gpr[18] == 0u; if (branch_taken) { goto L_08A7D0A8; } goto L_08A7D038; } L_08A7D038: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(72))); aot_gpr_5 = (8u << 16u); aot_gpr_4 = (aot_gpr_4 & aot_gpr_5); aot_gpr_4 = (0u < aot_gpr_4 ? 1u : 0u); aot_gpr_4 = (aot_gpr_4 & 255u); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_08A7D080; } goto L_08A7D054; } L_08A7D054: ctx.gpr[31] = (0x08A7D05Cu); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0179_entry, 179u, 50u, 0x08AD0530u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7D05Cu) goto L_08A7D05C; AOT_REGCACHE_SYNC_OUT(); return; L_08A7D05C: { const bool branch_taken = ctx.gpr[2] == 0u; if (branch_taken) { goto L_08A7D078; } goto L_08A7D064; } L_08A7D064: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(5864))); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_08A7D088; } goto L_08A7D070; } L_08A7D070: { const bool branch_taken = 0u == 0u; aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(5864))); if (branch_taken) { goto L_08A7D094; } goto L_08A7D078; } L_08A7D078: { const bool branch_taken = 0u == 0u; ctx.gpr[2] = (0u | 2u); if (branch_taken) { goto L_08A7DB9C; } goto L_08A7D080; } L_08A7D080: { const bool branch_taken = 0u == 0u; ctx.gpr[2] = (0u | 0u); if (branch_taken) { goto L_08A7DB9C; } goto L_08A7D088; } L_08A7D088: ctx.gpr[31] = (0x08A7D090u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 413u, 0x08B65B0Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7D090u) goto L_08A7D090; AOT_REGCACHE_SYNC_OUT(); return; L_08A7D090: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(5864))); goto L_08A7D094; L_08A7D094: aot_gpr_5 = (ctx.gpr[18] | 0u); ctx.gpr[31] = (0x08A7D0A0u); aot_gpr_6 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0084_entry, 84u, 191u, 0x08954C44u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7D0A0u) goto L_08A7D0A0; AOT_REGCACHE_SYNC_OUT(); return; L_08A7D0A0: { const bool branch_taken = 0u == 0u; ctx.gpr[2] = (0u | 1u); if (branch_taken) { goto L_08A7DB9C; } goto L_08A7D0A8; } L_08A7D0A8: aot_gpr_4 = (aot_mem.aot_direct_load8(aot_gpr_17 + static_cast(16))); aot_gpr_5 = (0u | 3u); { const bool branch_taken = aot_gpr_4 != aot_gpr_5; ctx.gpr[18] = (0u | 1u); if (branch_taken) { goto L_08A7D1A4; } goto L_08A7D0B8; } L_08A7D0B8: ctx.gpr[19] = (aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(72))); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(64))); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(68))); aot_gpr_4 = (aot_gpr_4 & 255u); ctx.gpr[31] = (0x08A7D0D0u); aot_gpr_5 = (aot_gpr_5 & 255u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0079_entry, 79u, 248u, 0x08941B38u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7D0D0u) goto L_08A7D0D0; AOT_REGCACHE_SYNC_OUT(); return; L_08A7D0D0: { const bool branch_taken = ctx.gpr[2] != 0u; if (branch_taken) { goto L_08A7D14C; } goto L_08A7D0D8; } L_08A7D0D8: aot_gpr_4 = (0u + static_cast(-1)); { const bool branch_taken = ctx.gpr[19] == aot_gpr_4; if (branch_taken) { goto L_08A7D12C; } goto L_08A7D0E4; } L_08A7D0E4: aot_gpr_5 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(7656))); aot_gpr_5 = (static_cast(ctx.gpr[19]) < static_cast(aot_gpr_5) ? 1u : 0u); { const bool branch_taken = aot_gpr_5 == 0u; aot_gpr_4 = (0u | 0u); if (branch_taken) { goto L_08A7D104; } goto L_08A7D0F4; } L_08A7D0F4: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(24))); aot_gpr_5 = (ctx.gpr[19] << 2u); aot_gpr_4 = (aot_gpr_4 + aot_gpr_5); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(0))); goto L_08A7D104; L_08A7D104: aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(36))); aot_gpr_5 = (aot_gpr_5 + static_cast(48)); aot_gpr_6 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(aot_gpr_5 + static_cast(0)))))); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_5 + static_cast(4))); jump_target = aot_gpr_5; ctx.gpr[31] = (0x08A7D11Cu); aot_gpr_4 = (aot_gpr_4 + aot_gpr_6); ctx.pc = jump_target; if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_call(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7D11Cu) goto L_08A7D11C; AOT_REGCACHE_SYNC_OUT(); return; L_08A7D11C: { const bool branch_taken = ctx.gpr[2] != 0u; if (branch_taken) { goto L_08A7D12C; } goto L_08A7D124; } L_08A7D124: { const bool branch_taken = 0u == 0u; ctx.gpr[18] = (0u | 0u); if (branch_taken) { goto L_08A7D78C; } goto L_08A7D12C; } L_08A7D12C: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(92))); aot_gpr_4 = (aot_gpr_4 + static_cast(72)); aot_gpr_5 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(aot_gpr_4 + static_cast(0)))))); aot_gpr_6 = (aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(4))); jump_target = aot_gpr_6; ctx.gpr[31] = (0x08A7D144u); aot_gpr_4 = (aot_gpr_16 + aot_gpr_5); ctx.pc = jump_target; if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_call(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7D144u) goto L_08A7D144; AOT_REGCACHE_SYNC_OUT(); return; L_08A7D144: { const bool branch_taken = 0u == 0u; ctx.gpr[2] = (0u | 0u); if (branch_taken) { goto L_08A7DB9C; } goto L_08A7D14C; } L_08A7D14C: aot_gpr_4 = (0u + static_cast(-1)); { const bool branch_taken = ctx.gpr[19] == aot_gpr_4; if (branch_taken) { goto L_08A7D78C; } goto L_08A7D158; } L_08A7D158: aot_gpr_5 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(7656))); aot_gpr_5 = (static_cast(ctx.gpr[19]) < static_cast(aot_gpr_5) ? 1u : 0u); { const bool branch_taken = aot_gpr_5 == 0u; aot_gpr_4 = (0u | 0u); if (branch_taken) { goto L_08A7D178; } goto L_08A7D168; } L_08A7D168: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(24))); aot_gpr_5 = (ctx.gpr[19] << 2u); aot_gpr_4 = (aot_gpr_4 + aot_gpr_5); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(0))); goto L_08A7D178; L_08A7D178: aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(36))); aot_gpr_5 = (aot_gpr_5 + static_cast(48)); aot_gpr_6 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(aot_gpr_5 + static_cast(0)))))); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_5 + static_cast(4))); jump_target = aot_gpr_5; ctx.gpr[31] = (0x08A7D190u); aot_gpr_4 = (aot_gpr_4 + aot_gpr_6); ctx.pc = jump_target; if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_call(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7D190u) goto L_08A7D190; AOT_REGCACHE_SYNC_OUT(); return; L_08A7D190: { const bool branch_taken = ctx.gpr[2] == 0u; if (branch_taken) { goto L_08A7D78C; } goto L_08A7D198; } L_08A7D198: aot_gpr_4 = (0u | 255u); { const bool branch_taken = 0u == 0u; aot_mem.aot_direct_store8(aot_gpr_17 + static_cast(57), static_cast(aot_gpr_4)); if (branch_taken) { goto L_08A7D78C; } goto L_08A7D1A4; } L_08A7D1A4: aot_gpr_4 = (aot_mem.aot_direct_load8(aot_gpr_17 + static_cast(16))); aot_gpr_5 = (0u | 1u); { const bool branch_taken = aot_gpr_4 == aot_gpr_5; if (branch_taken) { goto L_08A7D6C4; } goto L_08A7D1B4; } L_08A7D1B4: aot_gpr_4 = (aot_mem.aot_direct_load8(aot_gpr_17 + static_cast(16))); aot_gpr_5 = (0u | 4u); { const bool branch_taken = aot_gpr_4 == aot_gpr_5; if (branch_taken) { goto L_08A7D6C4; } goto L_08A7D1C4; } L_08A7D1C4: aot_gpr_4 = (aot_mem.aot_direct_load8(ctx.gpr[28] + static_cast(-7080))); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_08A7D464; } goto L_08A7D1D0; } L_08A7D1D0: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(72))); aot_gpr_4 = (aot_gpr_4 & 14u); aot_gpr_4 = (aot_gpr_4 ^ 14u); aot_gpr_4 = (aot_gpr_4 < static_cast(1) ? 1u : 0u); aot_gpr_4 = (aot_gpr_4 & 255u); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_08A7D464; } goto L_08A7D1EC; } L_08A7D1EC: ctx.gpr[31] = (0x08A7D1F4u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0087_entry, 87u, 28u, 0x089602C8u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7D1F4u) goto L_08A7D1F4; AOT_REGCACHE_SYNC_OUT(); return; L_08A7D1F4: aot_gpr_4 = (2237u << 16u); aot_gpr_4 = (aot_gpr_4 + static_cast(-28736)); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(104))); aot_gpr_6 = (aot_gpr_5 + static_cast(4)); aot_gpr_6 = (aot_mem.aot_direct_load32(aot_gpr_6 + static_cast(0))); { const bool branch_taken = aot_gpr_6 == 0u; aot_gpr_4 = (ctx.gpr[2] | 0u); if (branch_taken) { goto L_08A7D244; } goto L_08A7D210; } L_08A7D210: aot_mem.aot_direct_store8(aot_gpr_29 + static_cast(92), static_cast(0u)); goto L_08A7D214; L_08A7D214: ctx.gpr[7] = (aot_mem.aot_direct_load32(aot_gpr_6 + static_cast(16))); ctx.gpr[7] = (ctx.gpr[7] < aot_gpr_4 ? 1u : 0u); ctx.gpr[7] = (ctx.gpr[7] & 255u); if (ctx.gpr[7] != 0u) { aot_gpr_6 = (aot_gpr_6 + static_cast(12)); goto L_08A7D238; } goto L_08A7D228; L_08A7D228: aot_gpr_5 = (aot_gpr_6 | 0u); aot_gpr_6 = (aot_gpr_5 + static_cast(8)); { const bool branch_taken = 0u == 0u; aot_gpr_6 = (aot_mem.aot_direct_load32(aot_gpr_6 + static_cast(0))); if (branch_taken) { goto L_08A7D23C; } goto L_08A7D238; } L_08A7D238: aot_gpr_6 = (aot_mem.aot_direct_load32(aot_gpr_6 + static_cast(0))); goto L_08A7D23C; L_08A7D23C: if (aot_gpr_6 != 0u) { aot_mem.aot_direct_store8(aot_gpr_29 + static_cast(92), static_cast(0u)); goto L_08A7D214; } goto L_08A7D244; L_08A7D244: aot_gpr_6 = (2237u << 16u); aot_gpr_6 = (aot_gpr_6 + static_cast(-28736)); aot_gpr_6 = (aot_mem.aot_direct_load32(aot_gpr_6 + static_cast(104))); if (aot_gpr_5 == aot_gpr_6) { aot_gpr_4 = (2237u << 16u); goto L_08A7D274; } goto L_08A7D258; L_08A7D258: aot_mem.aot_direct_store8(aot_gpr_29 + static_cast(93), static_cast(0u)); aot_gpr_6 = (aot_mem.aot_direct_load32(aot_gpr_5 + static_cast(16))); aot_gpr_4 = (aot_gpr_4 < aot_gpr_6 ? 1u : 0u); aot_gpr_4 = (aot_gpr_4 & 255u); { const bool branch_taken = aot_gpr_4 == 0u; aot_gpr_4 = (2237u << 16u); if (branch_taken) { goto L_08A7D280; } goto L_08A7D270; } L_08A7D270: aot_gpr_4 = (2237u << 16u); goto L_08A7D274; L_08A7D274: aot_gpr_4 = (aot_gpr_4 + static_cast(-28736)); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(104))); aot_gpr_4 = (2237u << 16u); goto L_08A7D280; L_08A7D280: aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(88), aot_gpr_5); aot_gpr_4 = (aot_gpr_4 + static_cast(-28736)); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(104))); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(88))); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(104), aot_gpr_4); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(84), aot_gpr_5); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(104))); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(84))); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(80), aot_gpr_4); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(80))); aot_gpr_4 = (aot_gpr_5 ^ aot_gpr_4); aot_gpr_4 = (aot_gpr_4 < static_cast(1) ? 1u : 0u); aot_gpr_4 = (aot_gpr_4 & 255u); if (aot_gpr_4 == 0u) { aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(84))); goto L_08A7D2C4; } goto L_08A7D2BC; L_08A7D2BC: { const bool branch_taken = 0u == 0u; aot_gpr_4 = (0u | 0u); if (branch_taken) { goto L_08A7D2C8; } goto L_08A7D2C4; } L_08A7D2C4: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(20))); goto L_08A7D2C8; L_08A7D2C8: { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_08A7D45C; } goto L_08A7D2D0; } L_08A7D2D0: aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(352))); { const bool branch_taken = aot_gpr_4 != aot_gpr_5; aot_gpr_4 = (2236u << 16u); if (branch_taken) { goto L_08A7D45C; } goto L_08A7D2DC; } L_08A7D2DC: aot_gpr_4 = (aot_gpr_4 + static_cast(32304)); aot_gpr_5 = (aot_mem.aot_direct_load8(aot_gpr_4 + static_cast(80))); aot_gpr_4 = (aot_gpr_4 + static_cast(112)); aot_gpr_5 = (aot_gpr_5 << 5u); aot_gpr_6 = (0u - aot_gpr_5); aot_gpr_5 = (aot_gpr_5 << 2u); aot_gpr_6 = (aot_gpr_6 + aot_gpr_5); aot_gpr_5 = (aot_gpr_5 << 2u); aot_gpr_17 = (aot_gpr_6 + aot_gpr_5); aot_gpr_17 = (aot_gpr_17 + aot_gpr_4); aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(aot_gpr_17 + static_cast(0)))))); aot_gpr_5 = (0u | 16u); { const bool branch_taken = aot_gpr_4 != aot_gpr_5; if (branch_taken) { goto L_08A7D45C; } goto L_08A7D314; } L_08A7D314: ctx.gpr[31] = (0x08A7D31Cu); aot_gpr_17 = (aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(116))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0087_entry, 87u, 28u, 0x089602C8u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7D31Cu) goto L_08A7D31C; AOT_REGCACHE_SYNC_OUT(); return; L_08A7D31C: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[2] + static_cast(852))); aot_gpr_5 = (0u | 6u); { const bool branch_taken = aot_gpr_4 != aot_gpr_5; if (branch_taken) { goto L_08A7D344; } goto L_08A7D32C; } L_08A7D32C: ctx.gpr[31] = (0x08A7D334u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0087_entry, 87u, 28u, 0x089602C8u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7D334u) goto L_08A7D334; AOT_REGCACHE_SYNC_OUT(); return; L_08A7D334: aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load8(ctx.gpr[2] + static_cast(1280)))))); aot_gpr_4 = (aot_gpr_4 & 16u); { const bool branch_taken = aot_gpr_4 != 0u; if (branch_taken) { goto L_08A7D45C; } goto L_08A7D344; } L_08A7D344: aot_gpr_4 = (0u | 3u); { const bool branch_taken = aot_gpr_17 == aot_gpr_4; if (branch_taken) { goto L_08A7D3D4; } goto L_08A7D350; } L_08A7D350: aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(aot_gpr_16 + static_cast(86)))))); aot_gpr_5 = (0u | 246u); { const bool branch_taken = aot_gpr_4 == aot_gpr_5; if (branch_taken) { goto L_08A7D3D4; } goto L_08A7D360; } L_08A7D360: aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(aot_gpr_16 + static_cast(86)))))); aot_gpr_5 = (0u | 237u); { const bool branch_taken = aot_gpr_4 == aot_gpr_5; if (branch_taken) { goto L_08A7D3D4; } goto L_08A7D370; } L_08A7D370: aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(aot_gpr_16 + static_cast(86)))))); aot_gpr_5 = (0u + static_cast(-966)); { const bool branch_taken = aot_gpr_4 == aot_gpr_5; aot_gpr_4 = (2236u << 16u); if (branch_taken) { goto L_08A7D3D4; } goto L_08A7D380; } L_08A7D380: aot_gpr_4 = (aot_gpr_4 + static_cast(32304)); aot_gpr_4 = (aot_mem.aot_direct_load8(aot_gpr_4 + static_cast(1956))); { const bool branch_taken = aot_gpr_4 != 0u; if (branch_taken) { goto L_08A7D3D4; } goto L_08A7D390; } L_08A7D390: { const bool branch_taken = aot_gpr_17 != 0u; if (branch_taken) { goto L_08A7D3C4; } goto L_08A7D398; } L_08A7D398: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(76))); aot_gpr_5 = (1u << 16u); aot_gpr_4 = (aot_gpr_4 & aot_gpr_5); aot_gpr_4 = (0u < aot_gpr_4 ? 1u : 0u); aot_gpr_4 = (aot_gpr_4 & 255u); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_08A7D3C4; } goto L_08A7D3B4; } L_08A7D3B4: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(380))); aot_gpr_5 = (0u | 4u); { const bool branch_taken = aot_gpr_4 == aot_gpr_5; if (branch_taken) { goto L_08A7D3D4; } goto L_08A7D3C4; } L_08A7D3C4: { const bool branch_taken = aot_gpr_17 != 0u; if (branch_taken) { goto L_08A7D440; } goto L_08A7D3CC; } L_08A7D3CC: { const bool branch_taken = 0u == 0u; if (branch_taken) { goto L_08A7D3E8; } goto L_08A7D3D4; } L_08A7D3D4: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(76))); ctx.gpr[2] = (0u | 2u); aot_gpr_4 = (aot_gpr_4 | 32u); { const bool branch_taken = 0u == 0u; aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(76), aot_gpr_4); if (branch_taken) { goto L_08A7DB9C; } goto L_08A7D3E8; } L_08A7D3E8: ctx.gpr[31] = (0x08A7D3F0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0087_entry, 87u, 28u, 0x089602C8u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7D3F0u) goto L_08A7D3F0; AOT_REGCACHE_SYNC_OUT(); return; L_08A7D3F0: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[2] + static_cast(852))); aot_gpr_5 = (0u | 1u); { const bool branch_taken = aot_gpr_4 != aot_gpr_5; if (branch_taken) { goto L_08A7D440; } goto L_08A7D400; } L_08A7D400: aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(aot_gpr_16 + static_cast(86)))))); aot_gpr_5 = (0u | 214u); { const bool branch_taken = aot_gpr_4 == aot_gpr_5; if (branch_taken) { goto L_08A7D440; } goto L_08A7D410; } L_08A7D410: aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(aot_gpr_16 + static_cast(86)))))); aot_gpr_5 = (0u | 250u); { const bool branch_taken = aot_gpr_4 == aot_gpr_5; if (branch_taken) { goto L_08A7D440; } goto L_08A7D420; } L_08A7D420: aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(aot_gpr_16 + static_cast(86)))))); aot_gpr_5 = (0u | 219u); { const bool branch_taken = aot_gpr_4 == aot_gpr_5; if (branch_taken) { goto L_08A7D440; } goto L_08A7D430; } L_08A7D430: aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(aot_gpr_16 + static_cast(86)))))); aot_gpr_5 = (0u | 278u); { const bool branch_taken = aot_gpr_4 != aot_gpr_5; if (branch_taken) { goto L_08A7D45C; } goto L_08A7D440; } L_08A7D440: aot_mem.aot_direct_store32(ctx.gpr[28] + static_cast(10080), aot_gpr_16); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(76))); aot_gpr_5 = (0u + static_cast(-33)); aot_gpr_4 = (aot_gpr_4 & aot_gpr_5); aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(76), aot_gpr_4); { const bool branch_taken = 0u == 0u; ctx.gpr[2] = (0u | 2u); if (branch_taken) { goto L_08A7DB9C; } goto L_08A7D45C; } L_08A7D45C: { const bool branch_taken = 0u == 0u; if (branch_taken) { goto L_08A7D60C; } goto L_08A7D464; } L_08A7D464: ctx.gpr[31] = (0x08A7D46Cu); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0087_entry, 87u, 28u, 0x089602C8u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7D46Cu) goto L_08A7D46C; AOT_REGCACHE_SYNC_OUT(); return; L_08A7D46C: { const bool branch_taken = ctx.gpr[2] != aot_gpr_16; aot_gpr_4 = (2236u << 16u); if (branch_taken) { goto L_08A7D60C; } goto L_08A7D474; } L_08A7D474: aot_gpr_4 = (aot_gpr_4 + static_cast(32304)); aot_gpr_5 = (aot_mem.aot_direct_load8(aot_gpr_4 + static_cast(80))); aot_gpr_4 = (aot_gpr_4 + static_cast(112)); aot_gpr_5 = (aot_gpr_5 << 5u); aot_gpr_6 = (0u - aot_gpr_5); aot_gpr_5 = (aot_gpr_5 << 2u); aot_gpr_6 = (aot_gpr_6 + aot_gpr_5); aot_gpr_5 = (aot_gpr_5 << 2u); aot_gpr_17 = (aot_gpr_6 + aot_gpr_5); aot_gpr_17 = (aot_gpr_17 + aot_gpr_4); aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(aot_gpr_17 + static_cast(0)))))); aot_gpr_5 = (0u | 16u); { const bool branch_taken = aot_gpr_4 != aot_gpr_5; if (branch_taken) { goto L_08A7D60C; } goto L_08A7D4AC; } L_08A7D4AC: aot_gpr_4 = (aot_mem.aot_direct_load8(ctx.gpr[28] + static_cast(7800))); aot_gpr_5 = (aot_gpr_4 + aot_gpr_4); aot_gpr_6 = (aot_gpr_4 << 8u); aot_gpr_4 = (aot_gpr_4 + aot_gpr_5); aot_gpr_4 = (aot_gpr_4 << 5u); aot_gpr_5 = (2238u << 16u); aot_gpr_4 = (aot_gpr_6 + aot_gpr_4); aot_gpr_5 = (aot_gpr_5 + static_cast(-6992)); aot_gpr_4 = (aot_gpr_4 + aot_gpr_5); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(4))); { const bool branch_taken = aot_gpr_4 != 0u; if (branch_taken) { goto L_08A7D60C; } goto L_08A7D4DC; } L_08A7D4DC: ctx.gpr[31] = (0x08A7D4E4u); aot_gpr_17 = (aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(116))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0087_entry, 87u, 28u, 0x089602C8u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7D4E4u) goto L_08A7D4E4; AOT_REGCACHE_SYNC_OUT(); return; L_08A7D4E4: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[2] + static_cast(852))); aot_gpr_5 = (0u | 6u); { const bool branch_taken = aot_gpr_4 != aot_gpr_5; if (branch_taken) { goto L_08A7D50C; } goto L_08A7D4F4; } L_08A7D4F4: ctx.gpr[31] = (0x08A7D4FCu); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0087_entry, 87u, 28u, 0x089602C8u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7D4FCu) goto L_08A7D4FC; AOT_REGCACHE_SYNC_OUT(); return; L_08A7D4FC: aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load8(ctx.gpr[2] + static_cast(1280)))))); aot_gpr_4 = (aot_gpr_4 & 16u); { const bool branch_taken = aot_gpr_4 != 0u; if (branch_taken) { goto L_08A7D60C; } goto L_08A7D50C; } L_08A7D50C: aot_gpr_4 = (0u | 3u); { const bool branch_taken = aot_gpr_17 == aot_gpr_4; if (branch_taken) { goto L_08A7D590; } goto L_08A7D518; } L_08A7D518: aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(aot_gpr_16 + static_cast(86)))))); aot_gpr_5 = (0u | 246u); { const bool branch_taken = aot_gpr_4 == aot_gpr_5; if (branch_taken) { goto L_08A7D590; } goto L_08A7D528; } L_08A7D528: aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(aot_gpr_16 + static_cast(86)))))); aot_gpr_5 = (0u | 237u); { const bool branch_taken = aot_gpr_4 == aot_gpr_5; if (branch_taken) { goto L_08A7D590; } goto L_08A7D538; } L_08A7D538: aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(aot_gpr_16 + static_cast(86)))))); aot_gpr_5 = (0u + static_cast(-966)); { const bool branch_taken = aot_gpr_4 == aot_gpr_5; aot_gpr_4 = (2236u << 16u); if (branch_taken) { goto L_08A7D590; } goto L_08A7D548; } L_08A7D548: aot_gpr_4 = (aot_gpr_4 + static_cast(32304)); aot_gpr_4 = (aot_mem.aot_direct_load8(aot_gpr_4 + static_cast(1956))); { const bool branch_taken = aot_gpr_4 != 0u; if (branch_taken) { goto L_08A7D590; } goto L_08A7D558; } L_08A7D558: { const bool branch_taken = aot_gpr_17 != 0u; if (branch_taken) { goto L_08A7D580; } goto L_08A7D560; } L_08A7D560: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(352))); aot_gpr_5 = (16384u << 16u); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(208))); aot_gpr_4 = (aot_gpr_4 & aot_gpr_5); aot_gpr_4 = (0u < aot_gpr_4 ? 1u : 0u); aot_gpr_4 = (aot_gpr_4 & 255u); { const bool branch_taken = aot_gpr_4 != 0u; if (branch_taken) { goto L_08A7D590; } goto L_08A7D580; } L_08A7D580: { const bool branch_taken = aot_gpr_17 != 0u; if (branch_taken) { goto L_08A7D5F0; } goto L_08A7D588; } L_08A7D588: { const bool branch_taken = 0u == 0u; aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(852))); if (branch_taken) { goto L_08A7D5A4; } goto L_08A7D590; } L_08A7D590: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(76))); ctx.gpr[2] = (0u | 2u); aot_gpr_4 = (aot_gpr_4 | 32u); { const bool branch_taken = 0u == 0u; aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(76), aot_gpr_4); if (branch_taken) { goto L_08A7DB9C; } goto L_08A7D5A4; } L_08A7D5A4: aot_gpr_5 = (0u | 1u); { const bool branch_taken = aot_gpr_4 != aot_gpr_5; if (branch_taken) { goto L_08A7D5F0; } goto L_08A7D5B0; } L_08A7D5B0: aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(aot_gpr_16 + static_cast(86)))))); aot_gpr_5 = (0u | 214u); { const bool branch_taken = aot_gpr_4 == aot_gpr_5; if (branch_taken) { goto L_08A7D5F0; } goto L_08A7D5C0; } L_08A7D5C0: aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(aot_gpr_16 + static_cast(86)))))); aot_gpr_5 = (0u | 250u); { const bool branch_taken = aot_gpr_4 == aot_gpr_5; if (branch_taken) { goto L_08A7D5F0; } goto L_08A7D5D0; } L_08A7D5D0: aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(aot_gpr_16 + static_cast(86)))))); aot_gpr_5 = (0u | 219u); { const bool branch_taken = aot_gpr_4 == aot_gpr_5; if (branch_taken) { goto L_08A7D5F0; } goto L_08A7D5E0; } L_08A7D5E0: aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(aot_gpr_16 + static_cast(86)))))); aot_gpr_5 = (0u | 278u); { const bool branch_taken = aot_gpr_4 != aot_gpr_5; if (branch_taken) { goto L_08A7D60C; } goto L_08A7D5F0; } L_08A7D5F0: aot_mem.aot_direct_store32(ctx.gpr[28] + static_cast(10080), aot_gpr_16); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(76))); aot_gpr_5 = (0u + static_cast(-33)); aot_gpr_4 = (aot_gpr_4 & aot_gpr_5); aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(76), aot_gpr_4); { const bool branch_taken = 0u == 0u; ctx.gpr[2] = (0u | 2u); if (branch_taken) { goto L_08A7DB9C; } goto L_08A7D60C; } L_08A7D60C: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(80))); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_08A7D66C; } goto L_08A7D618; } L_08A7D618: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(72))); aot_gpr_5 = (8u << 16u); aot_gpr_4 = (aot_gpr_4 & aot_gpr_5); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_08A7D66C; } goto L_08A7D62C; } L_08A7D62C: ctx.gpr[31] = (0x08A7D634u); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0179_entry, 179u, 50u, 0x08AD0530u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7D634u) goto L_08A7D634; AOT_REGCACHE_SYNC_OUT(); return; L_08A7D634: { const bool branch_taken = ctx.gpr[2] == 0u; if (branch_taken) { goto L_08A7D664; } goto L_08A7D63C; } L_08A7D63C: ctx.gpr[31] = (0x08A7D644u); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0195_entry, 195u, 375u, 0x08B11994u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7D644u) goto L_08A7D644; AOT_REGCACHE_SYNC_OUT(); return; L_08A7D644: { const bool branch_taken = ctx.gpr[2] != 0u; if (branch_taken) { goto L_08A7D664; } goto L_08A7D64C; } L_08A7D64C: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(76))); aot_gpr_4 = (aot_gpr_4 & 16u); { const bool branch_taken = aot_gpr_4 != 0u; if (branch_taken) { goto L_08A7D674; } goto L_08A7D65C; } L_08A7D65C: { const bool branch_taken = 0u == 0u; ctx.gpr[2] = (0u | 1u); if (branch_taken) { goto L_08A7DB9C; } goto L_08A7D664; } L_08A7D664: { const bool branch_taken = 0u == 0u; ctx.gpr[2] = (0u | 2u); if (branch_taken) { goto L_08A7DB9C; } goto L_08A7D66C; } L_08A7D66C: { const bool branch_taken = 0u == 0u; ctx.gpr[2] = (0u | 0u); if (branch_taken) { goto L_08A7DB9C; } goto L_08A7D674; } L_08A7D674: aot_gpr_4 = (aot_gpr_16 + static_cast(48)); { const std::uint32_t vfpu_address = aot_gpr_4 + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } aot_gpr_4 = (ctx.gpr[28] + static_cast(10048)); { const std::uint32_t vfpu_address = aot_gpr_4 + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<1u, 4u>(vfpu_value); } ctx.execute_vfpu_vec3_ct<0u, 0u, 1u, 3u, 1u>(); aot_gpr_4 = (aot_gpr_29 + static_cast(16)); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = aot_gpr_4 + static_cast(0); const std::uint32_t vfpu_words[4]{std::bit_cast(vfpu_value[0]), std::bit_cast(vfpu_value[1]), std::bit_cast(vfpu_value[2]), std::bit_cast(vfpu_value[3])}; aot_mem.aot_direct_store32_block(vfpu_address, vfpu_words); } { const std::uint32_t vfpu_address = aot_gpr_4 + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } ctx.execute_vfpu_vdot_ct<28u, 0u, 0u, 3u>(); ctx.execute_vfpu_unary_ct<28u, 28u, 1u, 22u>(); aot_gpr_4 = (ctx.vfpu_scalar_bits_ct<28u>()); aot_fpr_12 = std::bit_cast(aot_gpr_4); ctx.gpr[31] = (0x08A7D6ACu); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0080_entry, 80u, 165u, 0x089451D8u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7D6ACu) goto L_08A7D6AC; AOT_REGCACHE_SYNC_OUT(); return; L_08A7D6AC: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(76))); aot_gpr_5 = (0u + static_cast(-129)); aot_gpr_4 = (aot_gpr_4 & aot_gpr_5); aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(76), aot_gpr_4); { const bool branch_taken = 0u == 0u; ctx.gpr[2] = (0u | 0u); if (branch_taken) { goto L_08A7DB9C; } goto L_08A7D6C4; } L_08A7D6C4: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(76))); aot_gpr_4 = (aot_gpr_4 & 4096u); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_08A7D78C; } goto L_08A7D6D4; } L_08A7D6D4: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(80))); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_08A7D734; } goto L_08A7D6E0; } L_08A7D6E0: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(72))); aot_gpr_5 = (8u << 16u); aot_gpr_4 = (aot_gpr_4 & aot_gpr_5); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_08A7D734; } goto L_08A7D6F4; } L_08A7D6F4: ctx.gpr[31] = (0x08A7D6FCu); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0179_entry, 179u, 50u, 0x08AD0530u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7D6FCu) goto L_08A7D6FC; AOT_REGCACHE_SYNC_OUT(); return; L_08A7D6FC: { const bool branch_taken = ctx.gpr[2] == 0u; if (branch_taken) { goto L_08A7D72C; } goto L_08A7D704; } L_08A7D704: ctx.gpr[31] = (0x08A7D70Cu); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0195_entry, 195u, 375u, 0x08B11994u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7D70Cu) goto L_08A7D70C; AOT_REGCACHE_SYNC_OUT(); return; L_08A7D70C: { const bool branch_taken = ctx.gpr[2] != 0u; if (branch_taken) { goto L_08A7D72C; } goto L_08A7D714; } L_08A7D714: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(76))); aot_gpr_4 = (aot_gpr_4 & 16u); { const bool branch_taken = aot_gpr_4 != 0u; if (branch_taken) { goto L_08A7D73C; } goto L_08A7D724; } L_08A7D724: { const bool branch_taken = 0u == 0u; ctx.gpr[2] = (0u | 1u); if (branch_taken) { goto L_08A7DB9C; } goto L_08A7D72C; } L_08A7D72C: { const bool branch_taken = 0u == 0u; ctx.gpr[2] = (0u | 2u); if (branch_taken) { goto L_08A7DB9C; } goto L_08A7D734; } L_08A7D734: { const bool branch_taken = 0u == 0u; ctx.gpr[2] = (0u | 0u); if (branch_taken) { goto L_08A7DB9C; } goto L_08A7D73C; } L_08A7D73C: aot_gpr_4 = (aot_gpr_16 + static_cast(48)); { const std::uint32_t vfpu_address = aot_gpr_4 + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } aot_gpr_4 = (ctx.gpr[28] + static_cast(10048)); { const std::uint32_t vfpu_address = aot_gpr_4 + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<1u, 4u>(vfpu_value); } ctx.execute_vfpu_vec3_ct<0u, 0u, 1u, 3u, 1u>(); aot_gpr_4 = (aot_gpr_29 + static_cast(32)); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = aot_gpr_4 + static_cast(0); const std::uint32_t vfpu_words[4]{std::bit_cast(vfpu_value[0]), std::bit_cast(vfpu_value[1]), std::bit_cast(vfpu_value[2]), std::bit_cast(vfpu_value[3])}; aot_mem.aot_direct_store32_block(vfpu_address, vfpu_words); } { const std::uint32_t vfpu_address = aot_gpr_4 + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } ctx.execute_vfpu_vdot_ct<28u, 0u, 0u, 3u>(); ctx.execute_vfpu_unary_ct<28u, 28u, 1u, 22u>(); aot_gpr_4 = (ctx.vfpu_scalar_bits_ct<28u>()); aot_fpr_12 = std::bit_cast(aot_gpr_4); ctx.gpr[31] = (0x08A7D774u); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0080_entry, 80u, 165u, 0x089451D8u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7D774u) goto L_08A7D774; AOT_REGCACHE_SYNC_OUT(); return; L_08A7D774: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(76))); aot_gpr_5 = (0u + static_cast(-129)); aot_gpr_4 = (aot_gpr_4 & aot_gpr_5); aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(76), aot_gpr_4); { const bool branch_taken = 0u == 0u; ctx.gpr[2] = (0u | 0u); if (branch_taken) { goto L_08A7DB9C; } goto L_08A7D78C; } L_08A7D78C: aot_gpr_4 = (aot_gpr_16 + static_cast(48)); { const std::uint32_t vfpu_address = aot_gpr_4 + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = aot_gpr_29 + static_cast(0); const std::uint32_t vfpu_words[4]{std::bit_cast(vfpu_value[0]), std::bit_cast(vfpu_value[1]), std::bit_cast(vfpu_value[2]), std::bit_cast(vfpu_value[3])}; aot_mem.aot_direct_store32_block(vfpu_address, vfpu_words); } aot_gpr_5 = (ctx.gpr[28] + static_cast(10048)); ctx.gpr[31] = (0x08A7D7A4u); aot_gpr_4 = (aot_gpr_29 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0163_entry, 163u, 464u, 0x08A931D0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7D7A4u) goto L_08A7D7A4; AOT_REGCACHE_SYNC_OUT(); return; L_08A7D7A4: { const std::uint32_t vfpu_address = aot_gpr_29 + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } ctx.execute_vfpu_vdot_ct<28u, 0u, 0u, 3u>(); ctx.execute_vfpu_unary_ct<28u, 28u, 1u, 22u>(); aot_gpr_4 = (ctx.vfpu_scalar_bits_ct<28u>()); aot_fpr_20 = std::bit_cast(aot_gpr_4); aot_gpr_4 = (17317u << 16u); aot_fpr_12 = std::bit_cast(aot_gpr_4); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_20 <= aot_fpr_12)) ? 0x00800000u : 0u); { const bool branch_taken = ((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_08A7D7F4; } goto L_08A7D7D0; } L_08A7D7D0: ctx.gpr[31] = (0x08A7D7D8u); aot_gpr_4 = (aot_gpr_17 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0170_entry, 170u, 396u, 0x08AAE0ECu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7D7D8u) goto L_08A7D7D8; AOT_REGCACHE_SYNC_OUT(); return; L_08A7D7D8: ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_20 < ctx.fpr[0])) ? 0x00800000u : 0u); { const bool branch_taken = !((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_08A7D7F4; } goto L_08A7D7E8; } L_08A7D7E8: ctx.gpr[31] = (0x08A7D7F0u); aot_gpr_4 = (aot_gpr_17 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0170_entry, 170u, 396u, 0x08AAE0ECu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7D7F0u) goto L_08A7D7F0; AOT_REGCACHE_SYNC_OUT(); return; L_08A7D7F0: aot_fpr_20 = std::bit_cast(std::bit_cast(ctx.fpr[0])); goto L_08A7D7F4; L_08A7D7F4: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(72))); aot_gpr_4 = (aot_gpr_4 & 14u); aot_gpr_4 = (aot_gpr_4 ^ 8u); aot_gpr_4 = (aot_gpr_4 < static_cast(1) ? 1u : 0u); aot_gpr_4 = (aot_gpr_4 & 255u); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_08A7D84C; } goto L_08A7D810; } L_08A7D810: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(72))); aot_gpr_5 = (512u << 16u); aot_gpr_4 = (aot_gpr_4 & aot_gpr_5); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_08A7D84C; } goto L_08A7D824; } L_08A7D824: aot_gpr_4 = (0u | 1u); if (aot_gpr_4 == 0u) { aot_gpr_4 = (aot_mem.aot_direct_load16(aot_gpr_17 + static_cast(58))); goto L_08A7D840; } goto L_08A7D830; L_08A7D830: aot_gpr_4 = (aot_mem.aot_direct_load16(aot_gpr_17 + static_cast(58))); aot_gpr_4 = (aot_gpr_4 | 8u); { const bool branch_taken = 0u == 0u; aot_mem.aot_direct_store16(aot_gpr_17 + static_cast(58), static_cast(aot_gpr_4)); if (branch_taken) { goto L_08A7D84C; } goto L_08A7D840; } L_08A7D840: aot_gpr_5 = (0u + static_cast(-9)); aot_gpr_4 = (aot_gpr_4 & aot_gpr_5); aot_mem.aot_direct_store16(aot_gpr_17 + static_cast(58), static_cast(aot_gpr_4)); goto L_08A7D84C; L_08A7D84C: aot_gpr_4 = (aot_gpr_17 | 0u); ctx.gpr[31] = (0x08A7D858u); aot_fpr_12 = std::bit_cast(std::bit_cast(aot_fpr_20)); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0170_entry, 170u, 384u, 0x08AAE058u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7D858u) goto L_08A7D858; AOT_REGCACHE_SYNC_OUT(); return; L_08A7D858: ctx.gpr[19] = (ctx.gpr[2] | 0u); { const bool branch_taken = ctx.gpr[19] == 0u; if (branch_taken) { goto L_08A7D9CC; } goto L_08A7D864; } L_08A7D864: aot_gpr_4 = (0u | 0u); if (aot_gpr_4 == 0u) { aot_gpr_4 = (aot_mem.aot_direct_load16(aot_gpr_17 + static_cast(58))); goto L_08A7D880; } goto L_08A7D870; L_08A7D870: aot_gpr_4 = (aot_mem.aot_direct_load16(aot_gpr_17 + static_cast(58))); aot_gpr_4 = (aot_gpr_4 | 8u); { const bool branch_taken = 0u == 0u; aot_mem.aot_direct_store16(aot_gpr_17 + static_cast(58), static_cast(aot_gpr_4)); if (branch_taken) { goto L_08A7D88C; } goto L_08A7D880; } L_08A7D880: aot_gpr_5 = (0u + static_cast(-9)); aot_gpr_4 = (aot_gpr_4 & aot_gpr_5); aot_mem.aot_direct_store16(aot_gpr_17 + static_cast(58), static_cast(aot_gpr_4)); goto L_08A7D88C; L_08A7D88C: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(80))); { const bool branch_taken = aot_gpr_4 != 0u; if (branch_taken) { goto L_08A7D8B0; } goto L_08A7D898; } L_08A7D898: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(92))); aot_gpr_4 = (aot_gpr_4 + static_cast(64)); aot_gpr_5 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(aot_gpr_4 + static_cast(0)))))); aot_gpr_6 = (aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(4))); jump_target = aot_gpr_6; ctx.gpr[31] = (0x08A7D8B0u); aot_gpr_4 = (aot_gpr_16 + aot_gpr_5); ctx.pc = jump_target; if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_call(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7D8B0u) goto L_08A7D8B0; AOT_REGCACHE_SYNC_OUT(); return; L_08A7D8B0: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(80))); aot_gpr_5 = (aot_mem.aot_direct_load32(ctx.gpr[19] + static_cast(20))); aot_gpr_6 = (aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(20))); { const bool branch_taken = aot_gpr_5 == aot_gpr_6; if (branch_taken) { goto L_08A7D8D0; } goto L_08A7D8C4; } L_08A7D8C4: aot_gpr_5 = (aot_mem.aot_direct_load32(ctx.gpr[19] + static_cast(20))); ctx.gpr[31] = (0x08A7D8D0u); aot_gpr_6 = (0u | 4u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0085_entry, 85u, 455u, 0x0895B470u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7D8D0u) goto L_08A7D8D0; AOT_REGCACHE_SYNC_OUT(); return; L_08A7D8D0: aot_gpr_4 = (aot_mem.aot_direct_load8(aot_gpr_17 + static_cast(57))); aot_gpr_4 = (static_cast(aot_gpr_4) < 239 ? 1u : 0u); { const bool branch_taken = aot_gpr_4 == 0u; aot_gpr_4 = (0u | 255u); if (branch_taken) { goto L_08A7D8F0; } goto L_08A7D8E0; } L_08A7D8E0: aot_gpr_4 = (aot_mem.aot_direct_load8(aot_gpr_17 + static_cast(57))); aot_gpr_4 = (aot_gpr_4 + static_cast(16)); { const bool branch_taken = 0u == 0u; aot_mem.aot_direct_store8(aot_gpr_17 + static_cast(57), static_cast(aot_gpr_4)); if (branch_taken) { goto L_08A7D8F4; } goto L_08A7D8F0; } L_08A7D8F0: aot_mem.aot_direct_store8(aot_gpr_17 + static_cast(57), static_cast(aot_gpr_4)); goto L_08A7D8F4; L_08A7D8F4: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(80))); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_08A7D98C; } goto L_08A7D900; } L_08A7D900: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(72))); aot_gpr_5 = (8u << 16u); aot_gpr_4 = (aot_gpr_4 & aot_gpr_5); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_08A7D98C; } goto L_08A7D914; } L_08A7D914: ctx.gpr[31] = (0x08A7D91Cu); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0179_entry, 179u, 50u, 0x08AD0530u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7D91Cu) goto L_08A7D91C; AOT_REGCACHE_SYNC_OUT(); return; L_08A7D91C: { const bool branch_taken = ctx.gpr[2] == 0u; if (branch_taken) { goto L_08A7D97C; } goto L_08A7D924; } L_08A7D924: ctx.gpr[31] = (0x08A7D92Cu); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0195_entry, 195u, 375u, 0x08B11994u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7D92Cu) goto L_08A7D92C; AOT_REGCACHE_SYNC_OUT(); return; L_08A7D92C: { const bool branch_taken = ctx.gpr[2] != 0u; if (branch_taken) { goto L_08A7D97C; } goto L_08A7D934; } L_08A7D934: aot_gpr_4 = (aot_mem.aot_direct_load8(aot_gpr_17 + static_cast(57))); aot_gpr_5 = (0u | 255u); { const bool branch_taken = aot_gpr_4 != aot_gpr_5; if (branch_taken) { goto L_08A7D95C; } goto L_08A7D944; } L_08A7D944: aot_gpr_4 = (aot_mem.aot_direct_load16(aot_gpr_17 + static_cast(58))); aot_gpr_4 = (aot_gpr_4 & 64u); { const bool branch_taken = aot_gpr_4 != 0u; if (branch_taken) { goto L_08A7D9A0; } goto L_08A7D954; } L_08A7D954: { const bool branch_taken = 0u == 0u; aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(76))); if (branch_taken) { goto L_08A7D994; } goto L_08A7D95C; } L_08A7D95C: aot_gpr_4 = (aot_gpr_16 | 0u); ctx.gpr[31] = (0x08A7D968u); aot_fpr_12 = std::bit_cast(std::bit_cast(aot_fpr_20)); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0080_entry, 80u, 165u, 0x089451D8u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7D968u) goto L_08A7D968; AOT_REGCACHE_SYNC_OUT(); return; L_08A7D968: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(76))); ctx.gpr[2] = (0u | 0u); aot_gpr_4 = (aot_gpr_4 | 128u); { const bool branch_taken = 0u == 0u; aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(76), aot_gpr_4); if (branch_taken) { goto L_08A7DB9C; } goto L_08A7D97C; } L_08A7D97C: aot_gpr_4 = (0u | 255u); aot_mem.aot_direct_store8(aot_gpr_17 + static_cast(57), static_cast(aot_gpr_4)); { const bool branch_taken = 0u == 0u; ctx.gpr[2] = (0u | 2u); if (branch_taken) { goto L_08A7DB9C; } goto L_08A7D98C; } L_08A7D98C: { const bool branch_taken = 0u == 0u; ctx.gpr[2] = (0u | 0u); if (branch_taken) { goto L_08A7DB9C; } goto L_08A7D994; } L_08A7D994: aot_gpr_4 = (aot_gpr_4 & 16u); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_08A7D9C4; } goto L_08A7D9A0; } L_08A7D9A0: aot_gpr_4 = (aot_gpr_16 | 0u); ctx.gpr[31] = (0x08A7D9ACu); aot_fpr_12 = std::bit_cast(std::bit_cast(aot_fpr_20)); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0080_entry, 80u, 165u, 0x089451D8u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7D9ACu) goto L_08A7D9AC; AOT_REGCACHE_SYNC_OUT(); return; L_08A7D9AC: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(76))); aot_gpr_5 = (0u + static_cast(-129)); aot_gpr_4 = (aot_gpr_4 & aot_gpr_5); aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(76), aot_gpr_4); { const bool branch_taken = 0u == 0u; ctx.gpr[2] = (0u | 0u); if (branch_taken) { goto L_08A7DB9C; } goto L_08A7D9C4; } L_08A7D9C4: { const bool branch_taken = 0u == 0u; ctx.gpr[2] = (0u | 1u); if (branch_taken) { goto L_08A7DB9C; } goto L_08A7D9CC; } L_08A7D9CC: aot_gpr_4 = (aot_mem.aot_direct_load16(aot_gpr_17 + static_cast(58))); aot_gpr_4 = (aot_gpr_4 & 32u); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_08A7DA38; } goto L_08A7D9DC; } L_08A7D9DC: aot_gpr_4 = (0u | 0u); if (aot_gpr_4 == 0u) { aot_gpr_4 = (aot_mem.aot_direct_load16(aot_gpr_17 + static_cast(58))); goto L_08A7D9F8; } goto L_08A7D9E8; L_08A7D9E8: aot_gpr_4 = (aot_mem.aot_direct_load16(aot_gpr_17 + static_cast(58))); aot_gpr_4 = (aot_gpr_4 | 8u); { const bool branch_taken = 0u == 0u; aot_mem.aot_direct_store16(aot_gpr_17 + static_cast(58), static_cast(aot_gpr_4)); if (branch_taken) { goto L_08A7DA04; } goto L_08A7D9F8; } L_08A7D9F8: aot_gpr_5 = (0u + static_cast(-9)); aot_gpr_4 = (aot_gpr_4 & aot_gpr_5); aot_mem.aot_direct_store16(aot_gpr_17 + static_cast(58), static_cast(aot_gpr_4)); goto L_08A7DA04; L_08A7DA04: ctx.gpr[31] = (0x08A7DA0Cu); aot_gpr_4 = (aot_gpr_17 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0170_entry, 170u, 396u, 0x08AAE0ECu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7DA0Cu) goto L_08A7DA0C; AOT_REGCACHE_SYNC_OUT(); return; L_08A7DA0C: aot_gpr_4 = (16880u << 16u); aot_fpr_12 = std::bit_cast(aot_gpr_4); aot_fpr_12 = aot_fpr_20 - aot_fpr_12; ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((ctx.fpr[0] <= aot_fpr_12)) ? 0x00800000u : 0u); { const bool branch_taken = ((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_08A7DB98; } goto L_08A7DA28; } L_08A7DA28: { const bool branch_taken = ctx.gpr[18] == 0u; if (branch_taken) { goto L_08A7DB98; } goto L_08A7DA30; } L_08A7DA30: { const bool branch_taken = 0u == 0u; ctx.gpr[2] = (0u | 3u); if (branch_taken) { goto L_08A7DB9C; } goto L_08A7DA38; } L_08A7DA38: aot_gpr_4 = (16800u << 16u); aot_fpr_12 = std::bit_cast(aot_gpr_4); aot_gpr_4 = (aot_gpr_17 | 0u); ctx.gpr[31] = (0x08A7DA4Cu); aot_fpr_12 = aot_fpr_20 - aot_fpr_12; if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0170_entry, 170u, 401u, 0x08AAE140u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7DA4Cu) goto L_08A7DA4C; AOT_REGCACHE_SYNC_OUT(); return; L_08A7DA4C: aot_gpr_4 = (0u | 0u); { const bool branch_taken = aot_gpr_4 == 0u; ctx.gpr[19] = (ctx.gpr[2] | 0u); if (branch_taken) { goto L_08A7DA68; } goto L_08A7DA58; } L_08A7DA58: aot_gpr_4 = (aot_mem.aot_direct_load16(aot_gpr_17 + static_cast(58))); aot_gpr_4 = (aot_gpr_4 | 8u); { const bool branch_taken = 0u == 0u; aot_mem.aot_direct_store16(aot_gpr_17 + static_cast(58), static_cast(aot_gpr_4)); if (branch_taken) { goto L_08A7DA78; } goto L_08A7DA68; } L_08A7DA68: aot_gpr_4 = (aot_mem.aot_direct_load16(aot_gpr_17 + static_cast(58))); aot_gpr_5 = (0u + static_cast(-9)); aot_gpr_4 = (aot_gpr_4 & aot_gpr_5); aot_mem.aot_direct_store16(aot_gpr_17 + static_cast(58), static_cast(aot_gpr_4)); goto L_08A7DA78; L_08A7DA78: { const bool branch_taken = ctx.gpr[19] == 0u; if (branch_taken) { goto L_08A7DB64; } goto L_08A7DA80; } L_08A7DA80: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(80))); { const bool branch_taken = aot_gpr_4 != 0u; if (branch_taken) { goto L_08A7DAA4; } goto L_08A7DA8C; } L_08A7DA8C: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(92))); aot_gpr_4 = (aot_gpr_4 + static_cast(64)); aot_gpr_5 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(aot_gpr_4 + static_cast(0)))))); aot_gpr_6 = (aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(4))); jump_target = aot_gpr_6; ctx.gpr[31] = (0x08A7DAA4u); aot_gpr_4 = (aot_gpr_16 + aot_gpr_5); ctx.pc = jump_target; if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_call(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7DAA4u) goto L_08A7DAA4; AOT_REGCACHE_SYNC_OUT(); return; L_08A7DAA4: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(80))); aot_gpr_5 = (aot_mem.aot_direct_load32(ctx.gpr[19] + static_cast(20))); aot_gpr_6 = (aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(20))); { const bool branch_taken = aot_gpr_5 == aot_gpr_6; if (branch_taken) { goto L_08A7DAC4; } goto L_08A7DAB8; } L_08A7DAB8: aot_gpr_5 = (aot_mem.aot_direct_load32(ctx.gpr[19] + static_cast(20))); ctx.gpr[31] = (0x08A7DAC4u); aot_gpr_6 = (0u | 4u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0085_entry, 85u, 455u, 0x0895B470u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7DAC4u) goto L_08A7DAC4; AOT_REGCACHE_SYNC_OUT(); return; L_08A7DAC4: aot_gpr_4 = (aot_mem.aot_direct_load8(aot_gpr_17 + static_cast(57))); aot_gpr_4 = (static_cast(aot_gpr_4) < 239 ? 1u : 0u); { const bool branch_taken = aot_gpr_4 == 0u; aot_gpr_4 = (0u | 255u); if (branch_taken) { goto L_08A7DAE4; } goto L_08A7DAD4; } L_08A7DAD4: aot_gpr_4 = (aot_mem.aot_direct_load8(aot_gpr_17 + static_cast(57))); aot_gpr_4 = (aot_gpr_4 + static_cast(16)); { const bool branch_taken = 0u == 0u; aot_mem.aot_direct_store8(aot_gpr_17 + static_cast(57), static_cast(aot_gpr_4)); if (branch_taken) { goto L_08A7DAE8; } goto L_08A7DAE4; } L_08A7DAE4: aot_mem.aot_direct_store8(aot_gpr_17 + static_cast(57), static_cast(aot_gpr_4)); goto L_08A7DAE8; L_08A7DAE8: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(80))); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_08A7DB20; } goto L_08A7DAF4; } L_08A7DAF4: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(72))); aot_gpr_5 = (8u << 16u); aot_gpr_4 = (aot_gpr_4 & aot_gpr_5); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_08A7DB20; } goto L_08A7DB08; } L_08A7DB08: ctx.gpr[31] = (0x08A7DB10u); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0179_entry, 179u, 50u, 0x08AD0530u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7DB10u) goto L_08A7DB10; AOT_REGCACHE_SYNC_OUT(); return; L_08A7DB10: { const bool branch_taken = ctx.gpr[2] != 0u; if (branch_taken) { goto L_08A7DB28; } goto L_08A7DB18; } L_08A7DB18: { const bool branch_taken = 0u == 0u; if (branch_taken) { goto L_08A7DB54; } goto L_08A7DB20; } L_08A7DB20: { const bool branch_taken = 0u == 0u; ctx.gpr[2] = (0u | 0u); if (branch_taken) { goto L_08A7DB9C; } goto L_08A7DB28; } L_08A7DB28: ctx.gpr[31] = (0x08A7DB30u); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0195_entry, 195u, 375u, 0x08B11994u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7DB30u) goto L_08A7DB30; AOT_REGCACHE_SYNC_OUT(); return; L_08A7DB30: { const bool branch_taken = ctx.gpr[2] != 0u; if (branch_taken) { goto L_08A7DB54; } goto L_08A7DB38; } L_08A7DB38: aot_gpr_4 = (aot_gpr_16 | 0u); ctx.gpr[31] = (0x08A7DB44u); aot_fpr_12 = std::bit_cast(std::bit_cast(aot_fpr_20)); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0080_entry, 80u, 165u, 0x089451D8u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7DB44u) goto L_08A7DB44; AOT_REGCACHE_SYNC_OUT(); return; L_08A7DB44: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(76))); aot_gpr_4 = (aot_gpr_4 | 128u); { const bool branch_taken = 0u == 0u; aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(76), aot_gpr_4); if (branch_taken) { goto L_08A7DB5C; } goto L_08A7DB54; } L_08A7DB54: aot_gpr_4 = (0u | 255u); aot_mem.aot_direct_store8(aot_gpr_17 + static_cast(57), static_cast(aot_gpr_4)); goto L_08A7DB5C; L_08A7DB5C: { const bool branch_taken = 0u == 0u; ctx.gpr[2] = (0u | 2u); if (branch_taken) { goto L_08A7DB9C; } goto L_08A7DB64; } L_08A7DB64: ctx.gpr[31] = (0x08A7DB6Cu); aot_gpr_4 = (aot_gpr_17 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0170_entry, 170u, 396u, 0x08AAE0ECu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7DB6Cu) goto L_08A7DB6C; AOT_REGCACHE_SYNC_OUT(); return; L_08A7DB6C: aot_gpr_4 = (16968u << 16u); aot_fpr_12 = std::bit_cast(aot_gpr_4); aot_fpr_12 = aot_fpr_20 - aot_fpr_12; ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((ctx.fpr[0] <= aot_fpr_12)) ? 0x00800000u : 0u); { const bool branch_taken = ((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_08A7DB98; } goto L_08A7DB88; } L_08A7DB88: { const bool branch_taken = ctx.gpr[18] == 0u; if (branch_taken) { goto L_08A7DB98; } goto L_08A7DB90; } L_08A7DB90: { const bool branch_taken = 0u == 0u; ctx.gpr[2] = (0u | 3u); if (branch_taken) { goto L_08A7DB9C; } goto L_08A7DB98; } L_08A7DB98: ctx.gpr[2] = (0u | 0u); goto L_08A7DB9C; L_08A7DB9C: aot_fpr_20 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(116))); aot_gpr_16 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(120))); aot_gpr_17 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(124))); ctx.gpr[18] = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(128))); ctx.gpr[19] = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(132))); ctx.gpr[31] = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(136))); jump_target = ctx.gpr[31]; aot_gpr_29 = (aot_gpr_29 + static_cast(144)); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } // PSPRECOMP_V812_SHARED_SCHED_JUMP goto LOCAL_SCHED_BOUNDARY; L_08A7DBBC: aot_gpr_29 = (aot_gpr_29 + static_cast(-96)); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(72), ctx.gpr[21]); ctx.gpr[21] = (aot_gpr_4 | 0u); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[21] + static_cast(4))); ctx.gpr[7] = (aot_gpr_5 + static_cast(-1)); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(8), ctx.gpr[7]); aot_gpr_4 = (0u | 1u); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(64), ctx.gpr[19]); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(68), ctx.gpr[20]); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(80), ctx.gpr[23]); aot_fpr_13 = std::bit_cast(std::bit_cast(aot_fpr_12)); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(4), aot_gpr_5); ctx.gpr[19] = (0u | 0u); ctx.gpr[23] = (0u | 9999u); ctx.gpr[20] = (0u + static_cast(-9999)); ctx.gpr[8] = (static_cast(aot_gpr_4) < static_cast(aot_gpr_5) ? 1u : 0u); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(32), std::bit_cast(aot_fpr_20)); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(36), std::bit_cast(ctx.fpr[22])); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(40), std::bit_cast(ctx.fpr[24])); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(44), std::bit_cast(ctx.fpr[26])); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(48), std::bit_cast(ctx.fpr[28])); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(52), aot_gpr_16); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(56), aot_gpr_17); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(60), ctx.gpr[18]); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(76), ctx.gpr[22]); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(84), ctx.gpr[30]); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(88), ctx.gpr[31]); { const bool branch_taken = ctx.gpr[8] == 0u; aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(16), aot_gpr_6); if (branch_taken) { goto L_08A7DC7C; } goto L_08A7DC30; } L_08A7DC30: aot_gpr_5 = (ctx.gpr[21] + static_cast(8)); aot_gpr_6 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(4))); goto L_08A7DC38; L_08A7DC38: aot_fpr_14 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_5 + static_cast(4))); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_14 < aot_fpr_12)) ? 0x00800000u : 0u); { const bool branch_taken = !((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_08A7DC58; } goto L_08A7DC4C; } L_08A7DC4C: ctx.gpr[19] = (aot_gpr_4 | 0u); { const bool branch_taken = 0u == 0u; aot_fpr_12 = std::bit_cast(std::bit_cast(aot_fpr_14)); if (branch_taken) { goto L_08A7DC6C; } goto L_08A7DC58; } L_08A7DC58: ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_14 <= aot_fpr_13)) ? 0x00800000u : 0u); { const bool branch_taken = ((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_08A7DC6C; } goto L_08A7DC68; } L_08A7DC68: aot_fpr_13 = std::bit_cast(std::bit_cast(aot_fpr_14)); goto L_08A7DC6C; L_08A7DC6C: aot_gpr_4 = (aot_gpr_4 + static_cast(1)); ctx.gpr[7] = (static_cast(aot_gpr_4) < static_cast(aot_gpr_6) ? 1u : 0u); { const bool branch_taken = ctx.gpr[7] != 0u; aot_gpr_5 = (aot_gpr_5 + static_cast(8)); if (branch_taken) { goto L_08A7DC38; } goto L_08A7DC7C; } L_08A7DC7C: aot_fpr_12 = std::bit_cast(ctx.fpu_float_to_word_ct<1u>(aot_fpr_12)); ctx.gpr[18] = (ctx.gpr[19] | 0u); aot_fpr_13 = std::bit_cast(ctx.fpu_float_to_word_ct<1u>(aot_fpr_13)); aot_gpr_4 = (0u | 0u); aot_gpr_5 = (std::bit_cast(aot_fpr_12)); aot_gpr_6 = (std::bit_cast(aot_fpr_13)); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(0), aot_gpr_5); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(28), aot_gpr_6); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(8))); goto L_08A7DCA0; L_08A7DCA0: aot_gpr_6 = (ctx.gpr[18] << 3u); aot_gpr_16 = (ctx.gpr[21] + aot_gpr_6); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(0))); aot_gpr_4 = (aot_gpr_4 + static_cast(1)); ctx.gpr[18] = (ctx.gpr[18] + static_cast(-1)); { const bool branch_taken = static_cast(ctx.gpr[18]) >= 0; ctx.gpr[7] = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(4))); if (branch_taken) { goto L_08A7DCC0; } goto L_08A7DCBC; } L_08A7DCBC: ctx.gpr[18] = (aot_gpr_5 | 0u); goto L_08A7DCC0; L_08A7DCC0: aot_fpr_13 = std::bit_cast(ctx.gpr[23]); aot_fpr_13 = static_cast(static_cast(std::bit_cast(aot_fpr_13))); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 < aot_fpr_13)) ? 0x00800000u : 0u); { const bool branch_taken = !((ctx.fcr31 & 0x00800000u) != 0u); aot_gpr_17 = (ctx.gpr[18] << 3u); if (branch_taken) { goto L_08A7DCE0; } goto L_08A7DCD8; } L_08A7DCD8: aot_fpr_12 = std::bit_cast(ctx.fpu_float_to_word_ct<1u>(aot_fpr_12)); ctx.gpr[23] = (std::bit_cast(aot_fpr_12)); goto L_08A7DCE0; L_08A7DCE0: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(4))); ctx.gpr[30] = (ctx.gpr[21] + aot_gpr_17); aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[30] + static_cast(4))); aot_fpr_12 = std::bit_cast(ctx.fpu_float_to_word_ct<1u>(aot_fpr_12)); aot_fpr_13 = std::bit_cast(ctx.fpu_float_to_word_ct<1u>(aot_fpr_13)); ctx.gpr[8] = (std::bit_cast(aot_fpr_12)); ctx.gpr[9] = (std::bit_cast(aot_fpr_13)); { const bool branch_taken = ctx.gpr[8] != ctx.gpr[9]; ctx.gpr[8] = (static_cast(aot_gpr_4) < static_cast(ctx.gpr[7]) ? 1u : 0u); if (branch_taken) { goto L_08A7DD0C; } goto L_08A7DD04; } L_08A7DD04: { const bool branch_taken = ctx.gpr[8] != 0u; if (branch_taken) { goto L_08A7DCA0; } goto L_08A7DD0C; } L_08A7DD0C: aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(12), aot_gpr_6); aot_gpr_4 = (0u | 0u); goto L_08A7DD14; L_08A7DD14: aot_gpr_6 = (ctx.gpr[19] << 3u); ctx.gpr[22] = (ctx.gpr[21] + aot_gpr_6); aot_gpr_4 = (aot_gpr_4 + static_cast(1)); ctx.gpr[19] = (ctx.gpr[19] + static_cast(1)); { const bool branch_taken = ctx.gpr[19] != ctx.gpr[7]; aot_fpr_20 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[22] + static_cast(0))); if (branch_taken) { goto L_08A7DD30; } goto L_08A7DD2C; } L_08A7DD2C: ctx.gpr[19] = (0u | 0u); goto L_08A7DD30; L_08A7DD30: aot_fpr_12 = std::bit_cast(ctx.gpr[20]); aot_fpr_12 = static_cast(static_cast(std::bit_cast(aot_fpr_12))); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_20 <= aot_fpr_12)) ? 0x00800000u : 0u); if (((ctx.fcr31 & 0x00800000u) != 0u)) { aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[22] + static_cast(4))); goto L_08A7DD54; } goto L_08A7DD48; L_08A7DD48: aot_fpr_12 = std::bit_cast(ctx.fpu_float_to_word_ct<1u>(aot_fpr_20)); ctx.gpr[20] = (std::bit_cast(aot_fpr_12)); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[22] + static_cast(4))); goto L_08A7DD54; L_08A7DD54: aot_gpr_5 = (ctx.gpr[19] << 3u); ctx.gpr[22] = (ctx.gpr[21] + aot_gpr_5); aot_fpr_13 = std::bit_cast(ctx.fpu_float_to_word_ct<1u>(aot_fpr_12)); aot_fpr_14 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[22] + static_cast(4))); aot_fpr_14 = std::bit_cast(ctx.fpu_float_to_word_ct<1u>(aot_fpr_14)); ctx.gpr[8] = (std::bit_cast(aot_fpr_13)); ctx.gpr[9] = (std::bit_cast(aot_fpr_14)); { const bool branch_taken = ctx.gpr[8] != ctx.gpr[9]; ctx.gpr[8] = (static_cast(aot_gpr_4) < static_cast(ctx.gpr[7]) ? 1u : 0u); if (branch_taken) { goto L_08A7DD80; } goto L_08A7DD78; } L_08A7DD78: { const bool branch_taken = ctx.gpr[8] != 0u; if (branch_taken) { goto L_08A7DD14; } goto L_08A7DD80; } L_08A7DD80: aot_fpr_13 = std::bit_cast(ctx.fpu_float_to_word_ct<2u>(aot_fpr_12)); aot_fpr_13 = static_cast(static_cast(std::bit_cast(aot_fpr_13))); ctx.fpr[24] = aot_fpr_13 - aot_fpr_12; aot_gpr_4 = (ctx.gpr[21] + aot_gpr_6); ctx.gpr[31] = (0x08A7DD98u); aot_gpr_5 = (ctx.gpr[21] + aot_gpr_5); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0157_entry, 157u, 333u, 0x08A79B24u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7DD98u) goto L_08A7DD98; AOT_REGCACHE_SYNC_OUT(); return; L_08A7DD98: ctx.fpr[22] = std::bit_cast(std::bit_cast(ctx.fpr[0])); { const float fs = ctx.fpr[24]; const float ft = ctx.fpr[22]; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_14 = std::bit_cast(0x7FC00000u); else aot_fpr_14 = fs * ft; } aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(4))); aot_fpr_20 = aot_fpr_20 + aot_fpr_14; aot_fpr_12 = std::bit_cast(ctx.fpu_float_to_word_ct<2u>(aot_fpr_13)); aot_fpr_12 = static_cast(static_cast(std::bit_cast(aot_fpr_12))); ctx.fpr[24] = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(0))); ctx.fpr[28] = aot_fpr_12 - aot_fpr_13; aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(12))); aot_gpr_5 = (ctx.gpr[21] + aot_gpr_17); ctx.gpr[31] = (0x08A7DDC8u); aot_gpr_4 = (ctx.gpr[21] + aot_gpr_4); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0157_entry, 157u, 333u, 0x08A79B24u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7DDC8u) goto L_08A7DDC8; AOT_REGCACHE_SYNC_OUT(); return; L_08A7DDC8: ctx.fpr[26] = std::bit_cast(std::bit_cast(ctx.fpr[0])); ctx.gpr[7] = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(0))); { const float fs = ctx.fpr[28]; const float ft = ctx.fpr[26]; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_12 = std::bit_cast(0x7FC00000u); else aot_fpr_12 = fs * ft; } aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(28))); { const bool branch_taken = aot_gpr_4 == ctx.gpr[7]; ctx.fpr[24] = ctx.fpr[24] + aot_fpr_12; if (branch_taken) { goto L_08A7DE34; } goto L_08A7DDE0; } L_08A7DDE0: aot_fpr_12 = std::bit_cast(0u); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((ctx.fpr[26] < aot_fpr_12)) ? 0x00800000u : 0u); { const bool branch_taken = !((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_08A7DE0C; } goto L_08A7DDF4; } L_08A7DDF4: aot_fpr_13 = std::bit_cast(ctx.fpu_float_to_word_ct<1u>(ctx.fpr[24])); aot_gpr_4 = (std::bit_cast(aot_fpr_13)); aot_gpr_5 = (static_cast(aot_gpr_4) < static_cast(ctx.gpr[23]) ? 1u : 0u); { const bool branch_taken = aot_gpr_5 == 0u; if (branch_taken) { goto L_08A7DE0C; } goto L_08A7DE08; } L_08A7DE08: ctx.gpr[23] = (aot_gpr_4 | 0u); goto L_08A7DE0C; L_08A7DE0C: ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((ctx.fpr[22] < aot_fpr_12)) ? 0x00800000u : 0u); { const bool branch_taken = ((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_08A7DE34; } goto L_08A7DE1C; } L_08A7DE1C: aot_fpr_12 = std::bit_cast(ctx.fpu_float_to_word_ct<1u>(aot_fpr_20)); aot_gpr_4 = (std::bit_cast(aot_fpr_12)); aot_gpr_5 = (static_cast(ctx.gpr[20]) < static_cast(aot_gpr_4) ? 1u : 0u); { const bool branch_taken = aot_gpr_5 == 0u; if (branch_taken) { goto L_08A7DE34; } goto L_08A7DE30; } L_08A7DE30: ctx.gpr[20] = (aot_gpr_4 | 0u); goto L_08A7DE34; L_08A7DE34: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(28))); aot_gpr_4 = (static_cast(aot_gpr_4) < static_cast(ctx.gpr[7]) ? 1u : 0u); { const bool branch_taken = aot_gpr_4 != 0u; aot_gpr_4 = (0u + static_cast(2800)); if (branch_taken) { goto L_08A7E234; } goto L_08A7DE44; } L_08A7DE44: ctx.fpr[28] = std::bit_cast(0u); aot_gpr_5 = (ctx.gpr[7] << 4u); { const std::int64_t product = static_cast(static_cast(ctx.gpr[7])) * static_cast(static_cast(aot_gpr_4)); ctx.lo = static_cast(product); ctx.hi = static_cast(static_cast(product) >> 32u); } aot_gpr_4 = (ctx.gpr[7] + aot_gpr_5); aot_gpr_5 = (aot_gpr_5 + aot_gpr_4); aot_gpr_4 = (aot_gpr_5 + aot_gpr_4); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(24), aot_gpr_4); aot_gpr_4 = (ctx.lo); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(20), aot_gpr_4); goto L_08A7DE68; L_08A7DE68: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(0))); aot_gpr_4 = (static_cast(aot_gpr_4) < 50 ? 1u : 0u); { const bool branch_taken = aot_gpr_4 != 0u; if (branch_taken) { goto L_08A7DE80; } goto L_08A7DE78; } L_08A7DE78: { const bool branch_taken = 0u == 0u; if (branch_taken) { goto L_08A7E234; } goto L_08A7DE80; } L_08A7DE80: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(0))); { const bool branch_taken = static_cast(aot_gpr_4) < 0; aot_gpr_4 = (static_cast(ctx.gpr[23]) < 50 ? 1u : 0u); if (branch_taken) { goto L_08A7DF08; } goto L_08A7DE8C; } L_08A7DE8C: if (aot_gpr_4 == 0u) { aot_gpr_17 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(0))); goto L_08A7DF0C; } goto L_08A7DE94; L_08A7DE94: { const bool branch_taken = static_cast(ctx.gpr[23]) < 0; aot_gpr_17 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-25496))); if (branch_taken) { goto L_08A7DEB8; } goto L_08A7DE9C; } L_08A7DE9C: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(24))); aot_gpr_4 = (ctx.gpr[23] + aot_gpr_4); aot_gpr_5 = (aot_gpr_4 << 6u); aot_gpr_4 = (aot_gpr_4 << 3u); aot_gpr_4 = (aot_gpr_5 - aot_gpr_4); { const bool branch_taken = 0u == 0u; aot_gpr_17 = (aot_gpr_17 + aot_gpr_4); if (branch_taken) { goto L_08A7DEC0; } goto L_08A7DEB8; } L_08A7DEB8: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(20))); aot_gpr_17 = (aot_gpr_17 + aot_gpr_4); goto L_08A7DEC0; L_08A7DEC0: aot_gpr_16 = (ctx.gpr[23] | 0u); aot_gpr_4 = (static_cast(ctx.gpr[20]) < static_cast(aot_gpr_16) ? 1u : 0u); { const bool branch_taken = aot_gpr_4 != 0u; ctx.gpr[23] = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(16))); if (branch_taken) { goto L_08A7DF08; } goto L_08A7DED0; } L_08A7DED0: aot_gpr_4 = (0u | 50u); { const bool branch_taken = aot_gpr_16 != aot_gpr_4; if (branch_taken) { goto L_08A7DEE4; } goto L_08A7DEDC; } L_08A7DEDC: { const bool branch_taken = 0u == 0u; if (branch_taken) { goto L_08A7DF08; } goto L_08A7DEE4; } L_08A7DEE4: { const bool branch_taken = static_cast(aot_gpr_16) < 0; if (branch_taken) { goto L_08A7DEF8; } goto L_08A7DEEC; } L_08A7DEEC: jump_target = ctx.gpr[23]; ctx.gpr[31] = (0x08A7DEF4u); aot_gpr_4 = (aot_gpr_17 | 0u); ctx.pc = jump_target; if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_call(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7DEF4u) goto L_08A7DEF4; AOT_REGCACHE_SYNC_OUT(); return; L_08A7DEF4: aot_gpr_17 = (aot_gpr_17 + static_cast(56)); goto L_08A7DEF8; L_08A7DEF8: aot_gpr_16 = (aot_gpr_16 + static_cast(1)); aot_gpr_4 = (static_cast(ctx.gpr[20]) < static_cast(aot_gpr_16) ? 1u : 0u); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_08A7DED0; } goto L_08A7DF08; } L_08A7DF08: aot_gpr_17 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(0))); goto L_08A7DF0C; L_08A7DF0C: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(24))); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(20))); aot_fpr_20 = ctx.fpr[22] + aot_fpr_20; aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[30] + static_cast(4))); ctx.fpr[24] = ctx.fpr[26] + ctx.fpr[24]; aot_gpr_4 = (aot_gpr_4 + static_cast(50)); aot_fpr_12 = std::bit_cast(ctx.fpu_float_to_word_ct<1u>(aot_fpr_12)); aot_gpr_5 = (aot_gpr_5 + static_cast(2800)); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(24), aot_gpr_4); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(20), aot_gpr_5); aot_gpr_17 = (aot_gpr_17 + static_cast(1)); aot_gpr_4 = (std::bit_cast(aot_fpr_12)); { const bool branch_taken = aot_gpr_17 != aot_gpr_4; aot_gpr_6 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(8))); if (branch_taken) { goto L_08A7E08C; } goto L_08A7DF44; } L_08A7DF44: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(28))); { const bool branch_taken = aot_gpr_4 == aot_gpr_17; if (branch_taken) { goto L_08A7E024; } goto L_08A7DF50; } L_08A7DF50: ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((ctx.fpr[26] < ctx.fpr[28])) ? 0x00800000u : 0u); if (!((ctx.fcr31 & 0x00800000u) != 0u)) { aot_fpr_12 = ctx.fpr[24] - ctx.fpr[26]; goto L_08A7DF70; } goto L_08A7DF60; L_08A7DF60: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[30] + static_cast(0))); aot_fpr_12 = std::bit_cast(ctx.fpu_float_to_word_ct<1u>(aot_fpr_12)); { const bool branch_taken = 0u == 0u; ctx.gpr[23] = (std::bit_cast(aot_fpr_12)); if (branch_taken) { goto L_08A7DF78; } goto L_08A7DF70; } L_08A7DF70: aot_fpr_12 = std::bit_cast(ctx.fpu_float_to_word_ct<1u>(aot_fpr_12)); ctx.gpr[23] = (std::bit_cast(aot_fpr_12)); goto L_08A7DF78; L_08A7DF78: aot_gpr_4 = (ctx.gpr[18] | 0u); ctx.gpr[18] = (aot_gpr_4 + static_cast(-1)); if (static_cast(ctx.gpr[18]) >= 0) { aot_gpr_4 = (aot_gpr_4 << 3u); goto L_08A7DF90; } goto L_08A7DF88; L_08A7DF88: ctx.gpr[18] = (aot_gpr_6 | 0u); aot_gpr_4 = (aot_gpr_4 << 3u); goto L_08A7DF90; L_08A7DF90: aot_gpr_16 = (ctx.gpr[21] + aot_gpr_4); ctx.fpr[24] = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(0))); aot_fpr_12 = std::bit_cast(ctx.fpu_float_to_word_ct<1u>(ctx.fpr[24])); aot_gpr_5 = (std::bit_cast(aot_fpr_12)); ctx.gpr[7] = (static_cast(aot_gpr_5) < static_cast(ctx.gpr[23]) ? 1u : 0u); if (ctx.gpr[7] == 0u) { aot_gpr_5 = (ctx.gpr[18] << 3u); goto L_08A7DFB4; } goto L_08A7DFAC; L_08A7DFAC: ctx.gpr[23] = (aot_gpr_5 | 0u); aot_gpr_5 = (ctx.gpr[18] << 3u); goto L_08A7DFB4; L_08A7DFB4: ctx.gpr[30] = (ctx.gpr[21] + aot_gpr_5); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[30] + static_cast(4))); aot_fpr_12 = std::bit_cast(ctx.fpu_float_to_word_ct<1u>(aot_fpr_12)); ctx.gpr[7] = (std::bit_cast(aot_fpr_12)); { const bool branch_taken = aot_gpr_17 == ctx.gpr[7]; if (branch_taken) { goto L_08A7DF78; } goto L_08A7DFCC; } L_08A7DFCC: aot_gpr_4 = (ctx.gpr[21] + aot_gpr_4); ctx.gpr[31] = (0x08A7DFD8u); aot_gpr_5 = (ctx.gpr[21] + aot_gpr_5); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0157_entry, 157u, 333u, 0x08A79B24u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7DFD8u) goto L_08A7DFD8; AOT_REGCACHE_SYNC_OUT(); return; L_08A7DFD8: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(4))); ctx.fpr[26] = std::bit_cast(std::bit_cast(ctx.fpr[0])); aot_fpr_13 = std::bit_cast(ctx.fpu_float_to_word_ct<2u>(aot_fpr_12)); aot_fpr_13 = static_cast(static_cast(std::bit_cast(aot_fpr_13))); aot_fpr_12 = aot_fpr_13 - aot_fpr_12; aot_fpr_14 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[22] + static_cast(4))); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((ctx.fpr[26] < ctx.fpr[28])) ? 0x00800000u : 0u); aot_fpr_14 = std::bit_cast(ctx.fpu_float_to_word_ct<1u>(aot_fpr_14)); { const float fs = aot_fpr_12; const float ft = ctx.fpr[26]; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_12 = std::bit_cast(0x7FC00000u); else aot_fpr_12 = fs * ft; } aot_gpr_4 = (std::bit_cast(aot_fpr_14)); { const bool branch_taken = !((ctx.fcr31 & 0x00800000u) != 0u); ctx.fpr[24] = ctx.fpr[24] + aot_fpr_12; if (branch_taken) { goto L_08A7E0B8; } goto L_08A7E008; } L_08A7E008: aot_fpr_12 = std::bit_cast(ctx.fpu_float_to_word_ct<1u>(ctx.fpr[24])); aot_gpr_5 = (std::bit_cast(aot_fpr_12)); aot_gpr_6 = (static_cast(aot_gpr_5) < static_cast(ctx.gpr[23]) ? 1u : 0u); { const bool branch_taken = aot_gpr_6 == 0u; if (branch_taken) { goto L_08A7E0B8; } goto L_08A7E01C; } L_08A7E01C: { const bool branch_taken = 0u == 0u; ctx.gpr[23] = (aot_gpr_5 | 0u); if (branch_taken) { goto L_08A7E0B8; } goto L_08A7E024; } L_08A7E024: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[22] + static_cast(4))); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((ctx.fpr[26] < ctx.fpr[28])) ? 0x00800000u : 0u); aot_fpr_12 = std::bit_cast(ctx.fpu_float_to_word_ct<1u>(aot_fpr_12)); { const bool branch_taken = !((ctx.fcr31 & 0x00800000u) != 0u); aot_gpr_4 = (std::bit_cast(aot_fpr_12)); if (branch_taken) { goto L_08A7E07C; } goto L_08A7E038; } L_08A7E038: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[30] + static_cast(0))); aot_fpr_12 = std::bit_cast(ctx.fpu_float_to_word_ct<1u>(aot_fpr_12)); aot_gpr_5 = (std::bit_cast(aot_fpr_12)); goto L_08A7E044; L_08A7E044: ctx.gpr[18] = (ctx.gpr[18] + static_cast(-1)); { const bool branch_taken = static_cast(ctx.gpr[18]) >= 0; ctx.gpr[23] = (aot_gpr_5 | 0u); if (branch_taken) { goto L_08A7E054; } goto L_08A7E050; } L_08A7E050: ctx.gpr[18] = (aot_gpr_6 | 0u); goto L_08A7E054; L_08A7E054: ctx.gpr[30] = (ctx.gpr[18] << 3u); ctx.gpr[30] = (ctx.gpr[21] + ctx.gpr[30]); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[30] + static_cast(0))); aot_fpr_12 = std::bit_cast(ctx.fpu_float_to_word_ct<1u>(aot_fpr_12)); aot_gpr_5 = (std::bit_cast(aot_fpr_12)); ctx.gpr[7] = (static_cast(aot_gpr_5) < static_cast(ctx.gpr[23]) ? 1u : 0u); { const bool branch_taken = ctx.gpr[7] != 0u; if (branch_taken) { goto L_08A7E044; } goto L_08A7E074; } L_08A7E074: { const bool branch_taken = 0u == 0u; if (branch_taken) { goto L_08A7E0B8; } goto L_08A7E07C; } L_08A7E07C: aot_fpr_12 = ctx.fpr[24] - ctx.fpr[26]; aot_fpr_12 = std::bit_cast(ctx.fpu_float_to_word_ct<1u>(aot_fpr_12)); { const bool branch_taken = 0u == 0u; ctx.gpr[23] = (std::bit_cast(aot_fpr_12)); if (branch_taken) { goto L_08A7E0B8; } goto L_08A7E08C; } L_08A7E08C: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[22] + static_cast(4))); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((ctx.fpr[26] < ctx.fpr[28])) ? 0x00800000u : 0u); aot_fpr_12 = std::bit_cast(ctx.fpu_float_to_word_ct<1u>(aot_fpr_12)); { const bool branch_taken = !((ctx.fcr31 & 0x00800000u) != 0u); aot_gpr_4 = (std::bit_cast(aot_fpr_12)); if (branch_taken) { goto L_08A7E0AC; } goto L_08A7E0A0; } L_08A7E0A0: aot_fpr_12 = std::bit_cast(ctx.fpu_float_to_word_ct<1u>(ctx.fpr[24])); { const bool branch_taken = 0u == 0u; ctx.gpr[23] = (std::bit_cast(aot_fpr_12)); if (branch_taken) { goto L_08A7E0B8; } goto L_08A7E0AC; } L_08A7E0AC: aot_fpr_12 = ctx.fpr[24] - ctx.fpr[26]; aot_fpr_12 = std::bit_cast(ctx.fpu_float_to_word_ct<1u>(aot_fpr_12)); ctx.gpr[23] = (std::bit_cast(aot_fpr_12)); goto L_08A7E0B8; L_08A7E0B8: { const bool branch_taken = aot_gpr_17 != aot_gpr_4; if (branch_taken) { goto L_08A7E200; } goto L_08A7E0C0; } L_08A7E0C0: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(28))); { const bool branch_taken = aot_gpr_4 == aot_gpr_17; if (branch_taken) { goto L_08A7E198; } goto L_08A7E0CC; } L_08A7E0CC: ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((ctx.fpr[22] < ctx.fpr[28])) ? 0x00800000u : 0u); if (((ctx.fcr31 & 0x00800000u) != 0u)) { aot_fpr_12 = aot_fpr_20 - ctx.fpr[22]; goto L_08A7E0EC; } goto L_08A7E0DC; L_08A7E0DC: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[22] + static_cast(0))); aot_fpr_12 = std::bit_cast(ctx.fpu_float_to_word_ct<1u>(aot_fpr_12)); { const bool branch_taken = 0u == 0u; ctx.gpr[20] = (std::bit_cast(aot_fpr_12)); if (branch_taken) { goto L_08A7E0F4; } goto L_08A7E0EC; } L_08A7E0EC: aot_fpr_12 = std::bit_cast(ctx.fpu_float_to_word_ct<1u>(aot_fpr_12)); ctx.gpr[20] = (std::bit_cast(aot_fpr_12)); goto L_08A7E0F4; L_08A7E0F4: aot_gpr_6 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(4))); goto L_08A7E0F8; L_08A7E0F8: aot_gpr_4 = (ctx.gpr[19] | 0u); ctx.gpr[19] = (aot_gpr_4 + static_cast(1)); if (ctx.gpr[19] != aot_gpr_6) { aot_gpr_4 = (aot_gpr_4 << 3u); goto L_08A7E110; } goto L_08A7E108; L_08A7E108: ctx.gpr[19] = (0u | 0u); aot_gpr_4 = (aot_gpr_4 << 3u); goto L_08A7E110; L_08A7E110: aot_gpr_16 = (ctx.gpr[21] + aot_gpr_4); aot_fpr_20 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(0))); aot_fpr_12 = std::bit_cast(ctx.fpu_float_to_word_ct<1u>(aot_fpr_20)); aot_gpr_5 = (std::bit_cast(aot_fpr_12)); ctx.gpr[7] = (static_cast(ctx.gpr[20]) < static_cast(aot_gpr_5) ? 1u : 0u); if (ctx.gpr[7] == 0u) { aot_gpr_5 = (ctx.gpr[19] << 3u); goto L_08A7E134; } goto L_08A7E12C; L_08A7E12C: ctx.gpr[20] = (aot_gpr_5 | 0u); aot_gpr_5 = (ctx.gpr[19] << 3u); goto L_08A7E134; L_08A7E134: ctx.gpr[22] = (ctx.gpr[21] + aot_gpr_5); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[22] + static_cast(4))); aot_fpr_12 = std::bit_cast(ctx.fpu_float_to_word_ct<1u>(aot_fpr_12)); ctx.gpr[7] = (std::bit_cast(aot_fpr_12)); { const bool branch_taken = aot_gpr_17 == ctx.gpr[7]; if (branch_taken) { goto L_08A7E0F8; } goto L_08A7E14C; } L_08A7E14C: aot_gpr_4 = (ctx.gpr[21] + aot_gpr_4); ctx.gpr[31] = (0x08A7E158u); aot_gpr_5 = (ctx.gpr[21] + aot_gpr_5); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0157_entry, 157u, 333u, 0x08A79B24u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7E158u) goto L_08A7E158; AOT_REGCACHE_SYNC_OUT(); return; L_08A7E158: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(4))); ctx.fpr[22] = std::bit_cast(std::bit_cast(ctx.fpr[0])); aot_fpr_13 = std::bit_cast(ctx.fpu_float_to_word_ct<2u>(aot_fpr_12)); aot_fpr_13 = static_cast(static_cast(std::bit_cast(aot_fpr_13))); aot_fpr_12 = aot_fpr_13 - aot_fpr_12; ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((ctx.fpr[22] < ctx.fpr[28])) ? 0x00800000u : 0u); { const float fs = aot_fpr_12; const float ft = ctx.fpr[22]; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_12 = std::bit_cast(0x7FC00000u); else aot_fpr_12 = fs * ft; } { const bool branch_taken = ((ctx.fcr31 & 0x00800000u) != 0u); aot_fpr_20 = aot_fpr_20 + aot_fpr_12; if (branch_taken) { goto L_08A7E224; } goto L_08A7E17C; } L_08A7E17C: aot_fpr_12 = std::bit_cast(ctx.fpu_float_to_word_ct<1u>(aot_fpr_20)); aot_gpr_4 = (std::bit_cast(aot_fpr_12)); aot_gpr_5 = (static_cast(ctx.gpr[20]) < static_cast(aot_gpr_4) ? 1u : 0u); { const bool branch_taken = aot_gpr_5 == 0u; if (branch_taken) { goto L_08A7E224; } goto L_08A7E190; } L_08A7E190: { const bool branch_taken = 0u == 0u; ctx.gpr[20] = (aot_gpr_4 | 0u); if (branch_taken) { goto L_08A7E224; } goto L_08A7E198; } L_08A7E198: ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((ctx.fpr[22] < ctx.fpr[28])) ? 0x00800000u : 0u); if (((ctx.fcr31 & 0x00800000u) != 0u)) { aot_fpr_12 = aot_fpr_20 - ctx.fpr[22]; goto L_08A7E1F4; } goto L_08A7E1A8; L_08A7E1A8: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[22] + static_cast(0))); aot_fpr_12 = std::bit_cast(ctx.fpu_float_to_word_ct<1u>(aot_fpr_12)); aot_gpr_4 = (std::bit_cast(aot_fpr_12)); goto L_08A7E1B4; L_08A7E1B4: ctx.gpr[20] = (aot_gpr_4 | 0u); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(4))); ctx.gpr[19] = (ctx.gpr[19] + static_cast(1)); { const bool branch_taken = ctx.gpr[19] != aot_gpr_4; ctx.gpr[22] = (ctx.gpr[19] << 3u); if (branch_taken) { goto L_08A7E1D0; } goto L_08A7E1C8; } L_08A7E1C8: ctx.gpr[19] = (0u | 0u); ctx.gpr[22] = (ctx.gpr[19] << 3u); goto L_08A7E1D0; L_08A7E1D0: ctx.gpr[22] = (ctx.gpr[21] + ctx.gpr[22]); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[22] + static_cast(0))); aot_fpr_12 = std::bit_cast(ctx.fpu_float_to_word_ct<1u>(aot_fpr_12)); aot_gpr_4 = (std::bit_cast(aot_fpr_12)); aot_gpr_5 = (static_cast(ctx.gpr[20]) < static_cast(aot_gpr_4) ? 1u : 0u); { const bool branch_taken = aot_gpr_5 != 0u; if (branch_taken) { goto L_08A7E1B4; } goto L_08A7E1EC; } L_08A7E1EC: { const bool branch_taken = 0u == 0u; if (branch_taken) { goto L_08A7E224; } goto L_08A7E1F4; } L_08A7E1F4: aot_fpr_12 = std::bit_cast(ctx.fpu_float_to_word_ct<1u>(aot_fpr_12)); { const bool branch_taken = 0u == 0u; ctx.gpr[20] = (std::bit_cast(aot_fpr_12)); if (branch_taken) { goto L_08A7E224; } goto L_08A7E200; } L_08A7E200: ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((ctx.fpr[22] < ctx.fpr[28])) ? 0x00800000u : 0u); if (((ctx.fcr31 & 0x00800000u) != 0u)) { aot_fpr_12 = aot_fpr_20 - ctx.fpr[22]; goto L_08A7E21C; } goto L_08A7E210; L_08A7E210: aot_fpr_12 = std::bit_cast(ctx.fpu_float_to_word_ct<1u>(aot_fpr_20)); { const bool branch_taken = 0u == 0u; ctx.gpr[20] = (std::bit_cast(aot_fpr_12)); if (branch_taken) { goto L_08A7E224; } goto L_08A7E21C; } L_08A7E21C: aot_fpr_12 = std::bit_cast(ctx.fpu_float_to_word_ct<1u>(aot_fpr_12)); ctx.gpr[20] = (std::bit_cast(aot_fpr_12)); goto L_08A7E224; L_08A7E224: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(28))); aot_gpr_4 = (static_cast(aot_gpr_4) < static_cast(aot_gpr_17) ? 1u : 0u); { const bool branch_taken = aot_gpr_4 == 0u; aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(0), aot_gpr_17); if (branch_taken) { goto L_08A7DE68; } goto L_08A7E234; } L_08A7E234: aot_fpr_20 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(32))); ctx.fpr[22] = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(36))); ctx.fpr[24] = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(40))); ctx.fpr[26] = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(44))); ctx.fpr[28] = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(48))); aot_gpr_16 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(52))); aot_gpr_17 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(56))); ctx.gpr[18] = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(60))); ctx.gpr[19] = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(64))); ctx.gpr[20] = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(68))); ctx.gpr[21] = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(72))); ctx.gpr[22] = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(76))); ctx.gpr[23] = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(80))); ctx.gpr[30] = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(84))); ctx.gpr[31] = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(88))); jump_target = ctx.gpr[31]; aot_gpr_29 = (aot_gpr_29 + static_cast(96)); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } // PSPRECOMP_V812_SHARED_SCHED_JUMP goto LOCAL_SCHED_BOUNDARY; L_08A7E278: aot_gpr_29 = (aot_gpr_29 + static_cast(-512)); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(472), aot_gpr_16); aot_gpr_16 = (2236u << 16u); aot_gpr_16 = (aot_gpr_16 + static_cast(32304)); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(448), std::bit_cast(aot_fpr_20)); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(452), std::bit_cast(ctx.fpr[22])); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(456), std::bit_cast(ctx.fpr[24])); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(460), std::bit_cast(ctx.fpr[26])); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(464), std::bit_cast(ctx.fpr[28])); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(468), std::bit_cast(ctx.fpr[30])); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(476), aot_gpr_17); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(480), ctx.gpr[18]); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(484), ctx.gpr[19]); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(488), ctx.gpr[20]); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(492), ctx.gpr[21]); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(496), ctx.gpr[22]); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(500), ctx.gpr[23]); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(504), ctx.gpr[30]); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(508), ctx.gpr[31]); ctx.gpr[31] = (0x08A7E2CCu); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(1980))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0035_entry, 35u, 139u, 0x08890984u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7E2CCu) goto L_08A7E2CC; AOT_REGCACHE_SYNC_OUT(); return; L_08A7E2CC: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(1980))); ctx.gpr[31] = (0x08A7E2D8u); aot_gpr_17 = (ctx.gpr[2] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0035_entry, 35u, 116u, 0x088907E0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7E2D8u) goto L_08A7E2D8; AOT_REGCACHE_SYNC_OUT(); return; L_08A7E2D8: ctx.fpr[22] = std::bit_cast(0u); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(16), std::bit_cast(ctx.fpr[22])); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(20), std::bit_cast(ctx.fpr[22])); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(24), std::bit_cast(ctx.fpr[22])); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(0))); aot_fpr_20 = std::bit_cast(std::bit_cast(ctx.fpr[0])); aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(4))); { const float fs = aot_fpr_12; const float ft = aot_fpr_20; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_12 = std::bit_cast(0x7FC00000u); else aot_fpr_12 = fs * ft; } { const float fs = aot_fpr_13; const float ft = aot_fpr_20; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_13 = std::bit_cast(0x7FC00000u); else aot_fpr_13 = fs * ft; } aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(40), std::bit_cast(aot_fpr_20)); aot_fpr_12 = std::bit_cast(std::bit_cast(aot_fpr_12) ^ 0x80000000u); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(32), std::bit_cast(aot_fpr_12)); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(36), std::bit_cast(aot_fpr_13)); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(0))); aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(4))); { const float fs = aot_fpr_12; const float ft = aot_fpr_20; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_12 = std::bit_cast(0x7FC00000u); else aot_fpr_12 = fs * ft; } { const float fs = aot_fpr_13; const float ft = aot_fpr_20; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_13 = std::bit_cast(0x7FC00000u); else aot_fpr_13 = fs * ft; } aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(56), std::bit_cast(aot_fpr_20)); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(48), std::bit_cast(aot_fpr_12)); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(52), std::bit_cast(aot_fpr_13)); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(0))); aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(4))); { const float fs = aot_fpr_12; const float ft = aot_fpr_20; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_12 = std::bit_cast(0x7FC00000u); else aot_fpr_12 = fs * ft; } { const float fs = aot_fpr_13; const float ft = aot_fpr_20; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_13 = std::bit_cast(0x7FC00000u); else aot_fpr_13 = fs * ft; } aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(72), std::bit_cast(aot_fpr_20)); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(64), std::bit_cast(aot_fpr_12)); aot_fpr_12 = std::bit_cast(std::bit_cast(aot_fpr_13) ^ 0x80000000u); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(68), std::bit_cast(aot_fpr_12)); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(0))); aot_fpr_14 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(4))); { const float fs = aot_fpr_12; const float ft = aot_fpr_20; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_12 = std::bit_cast(0x7FC00000u); else aot_fpr_12 = fs * ft; } { const float fs = aot_fpr_14; const float ft = aot_fpr_20; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_14 = std::bit_cast(0x7FC00000u); else aot_fpr_14 = fs * ft; } aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(1980))); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(88), std::bit_cast(aot_fpr_20)); aot_fpr_12 = std::bit_cast(std::bit_cast(aot_fpr_12) ^ 0x80000000u); ctx.gpr[30] = (aot_gpr_29 + static_cast(32)); aot_fpr_13 = std::bit_cast(std::bit_cast(aot_fpr_14) ^ 0x80000000u); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(80), std::bit_cast(aot_fpr_12)); ctx.gpr[31] = (0x08A7E378u); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(84), std::bit_cast(aot_fpr_13)); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0035_entry, 35u, 121u, 0x08890828u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7E378u) goto L_08A7E378; AOT_REGCACHE_SYNC_OUT(); return; L_08A7E378: ctx.gpr[23] = (ctx.gpr[2] + static_cast(16)); ctx.gpr[31] = (0x08A7E384u); aot_mem.aot_direct_store32(ctx.gpr[28] + static_cast(10080), 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0080_entry, 80u, 129u, 0x08944F6Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7E384u) goto L_08A7E384; AOT_REGCACHE_SYNC_OUT(); return; L_08A7E384: aot_gpr_4 = (aot_mem.aot_direct_load16(ctx.gpr[28] + static_cast(-25492))); aot_gpr_5 = (0u | 65535u); aot_gpr_4 = (static_cast(aot_gpr_4) < static_cast(aot_gpr_5) ? 1u : 0u); aot_gpr_5 = (17302u << 16u); ctx.fpr[24] = std::bit_cast(aot_gpr_5); aot_gpr_5 = (17056u << 16u); ctx.fpr[26] = std::bit_cast(aot_gpr_5); aot_gpr_5 = (16880u << 16u); ctx.fpr[28] = std::bit_cast(aot_gpr_5); aot_gpr_5 = (16840u << 16u); ctx.gpr[20] = (aot_gpr_16 + static_cast(48)); ctx.fpr[30] = std::bit_cast(aot_gpr_5); ctx.gpr[19] = (ctx.gpr[28] + static_cast(7248)); ctx.gpr[18] = (aot_gpr_16 + static_cast(16)); aot_gpr_17 = (ctx.gpr[28] + static_cast(7264)); ctx.gpr[22] = (aot_gpr_29 + static_cast(96)); { const bool branch_taken = aot_gpr_4 == 0u; ctx.gpr[21] = (aot_gpr_29 + static_cast(112)); if (branch_taken) { goto L_08A7E3DC; } goto L_08A7E3CC; } L_08A7E3CC: aot_gpr_4 = (aot_mem.aot_direct_load16(ctx.gpr[28] + static_cast(-25492))); aot_gpr_4 = (aot_gpr_4 + static_cast(1)); { const bool branch_taken = 0u == 0u; aot_mem.aot_direct_store16(ctx.gpr[28] + static_cast(-25492), static_cast(aot_gpr_4)); if (branch_taken) { goto L_08A7E3EC; } goto L_08A7E3DC; } L_08A7E3DC: ctx.gpr[31] = (0x08A7E3E4u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0036_entry, 36u, 274u, 0x088954BCu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7E3E4u) goto L_08A7E3E4; AOT_REGCACHE_SYNC_OUT(); return; L_08A7E3E4: aot_gpr_4 = (0u | 1u); aot_mem.aot_direct_store16(ctx.gpr[28] + static_cast(-25492), static_cast(aot_gpr_4)); goto L_08A7E3EC; L_08A7E3EC: { const std::uint32_t vfpu_address = ctx.gpr[20] + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } { const std::uint32_t vfpu_address = ctx.gpr[19] + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<1u, 4u>(vfpu_value); } ctx.execute_vfpu_vec3_ct<0u, 0u, 1u, 3u, 1u>(); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = aot_gpr_29 + static_cast(0); const std::uint32_t vfpu_words[4]{std::bit_cast(vfpu_value[0]), std::bit_cast(vfpu_value[1]), std::bit_cast(vfpu_value[2]), std::bit_cast(vfpu_value[3])}; aot_mem.aot_direct_store32_block(vfpu_address, vfpu_words); } { const std::uint32_t vfpu_address = aot_gpr_29 + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } ctx.execute_vfpu_vdot_ct<28u, 0u, 0u, 3u>(); aot_gpr_4 = (ctx.vfpu_scalar_bits_ct<28u>()); aot_fpr_12 = std::bit_cast(aot_gpr_4); aot_gpr_4 = (16768u << 16u); aot_fpr_13 = std::bit_cast(aot_gpr_4); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 < aot_fpr_13)) ? 0x00800000u : 0u); { const bool branch_taken = !((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_08A7E460; } goto L_08A7E424; } L_08A7E424: { const std::uint32_t vfpu_address = ctx.gpr[18] + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } { const std::uint32_t vfpu_address = aot_gpr_17 + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<1u, 4u>(vfpu_value); } ctx.execute_vfpu_vdot_ct<28u, 0u, 1u, 3u>(); aot_gpr_4 = (ctx.vfpu_scalar_bits_ct<28u>()); aot_fpr_12 = std::bit_cast(aot_gpr_4); aot_gpr_4 = (16250u << 16u); aot_gpr_4 = (aot_gpr_4 | 57672u); aot_fpr_13 = std::bit_cast(aot_gpr_4); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 <= aot_fpr_13)) ? 0x00800000u : 0u); { const bool branch_taken = ((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_08A7E460; } goto L_08A7E454; } L_08A7E454: aot_gpr_4 = (0u | 1u); { const bool branch_taken = 0u == 0u; aot_mem.aot_direct_store8(ctx.gpr[28] + static_cast(7232), static_cast(aot_gpr_4)); if (branch_taken) { goto L_08A7E464; } goto L_08A7E460; } L_08A7E460: aot_mem.aot_direct_store8(ctx.gpr[28] + static_cast(7232), static_cast(0u)); goto L_08A7E464; L_08A7E464: { const std::uint32_t vfpu_address = ctx.gpr[20] + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = ctx.gpr[19] + static_cast(0); const std::uint32_t vfpu_words[4]{std::bit_cast(vfpu_value[0]), std::bit_cast(vfpu_value[1]), std::bit_cast(vfpu_value[2]), std::bit_cast(vfpu_value[3])}; aot_mem.aot_direct_store32_block(vfpu_address, vfpu_words); } { const std::uint32_t vfpu_address = ctx.gpr[18] + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = aot_gpr_17 + static_cast(0); const std::uint32_t vfpu_words[4]{std::bit_cast(vfpu_value[0]), std::bit_cast(vfpu_value[1]), std::bit_cast(vfpu_value[2]), std::bit_cast(vfpu_value[3])}; aot_mem.aot_direct_store32_block(vfpu_address, vfpu_words); } aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[23] + static_cast(40))); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 <= ctx.fpr[22])) ? 0x00800000u : 0u); { const bool branch_taken = !((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_08A7E504; } goto L_08A7E488; } L_08A7E488: aot_gpr_4 = (std::bit_cast(ctx.fpr[24])); ctx.set_vfpu_scalar_bits_ct<28u>(aot_gpr_4); { const std::uint32_t vfpu_address = ctx.gpr[30] + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } ctx.execute_vfpu_vscl_ct<0u, 0u, 28u, 3u>(); aot_gpr_4 = (aot_gpr_29 + static_cast(208)); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = aot_gpr_4 + static_cast(0); const std::uint32_t vfpu_words[4]{std::bit_cast(vfpu_value[0]), std::bit_cast(vfpu_value[1]), std::bit_cast(vfpu_value[2]), std::bit_cast(vfpu_value[3])}; aot_mem.aot_direct_store32_block(vfpu_address, vfpu_words); } aot_gpr_5 = (std::bit_cast(aot_fpr_20)); ctx.set_vfpu_scalar_bits_ct<28u>(aot_gpr_5); ctx.execute_vfpu_unary_ct<28u, 28u, 1u, 16u>(); { const std::uint32_t vfpu_address = aot_gpr_4 + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } ctx.execute_vfpu_vscl_ct<0u, 0u, 28u, 3u>(); aot_gpr_5 = (aot_gpr_29 + static_cast(192)); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = aot_gpr_5 + static_cast(0); const std::uint32_t vfpu_words[4]{std::bit_cast(vfpu_value[0]), std::bit_cast(vfpu_value[1]), std::bit_cast(vfpu_value[2]), std::bit_cast(vfpu_value[3])}; aot_mem.aot_direct_store32_block(vfpu_address, vfpu_words); } { const std::uint32_t vfpu_address = aot_gpr_5 + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = ctx.gpr[22] + static_cast(0); const std::uint32_t vfpu_words[4]{std::bit_cast(vfpu_value[0]), std::bit_cast(vfpu_value[1]), std::bit_cast(vfpu_value[2]), std::bit_cast(vfpu_value[3])}; aot_mem.aot_direct_store32_block(vfpu_address, vfpu_words); } aot_gpr_6 = (std::bit_cast(ctx.fpr[24])); ctx.set_vfpu_scalar_bits_ct<28u>(aot_gpr_6); aot_gpr_6 = (aot_gpr_29 + static_cast(48)); { const std::uint32_t vfpu_address = aot_gpr_6 + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } ctx.execute_vfpu_vscl_ct<0u, 0u, 28u, 3u>(); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = aot_gpr_5 + static_cast(0); const std::uint32_t vfpu_words[4]{std::bit_cast(vfpu_value[0]), std::bit_cast(vfpu_value[1]), std::bit_cast(vfpu_value[2]), std::bit_cast(vfpu_value[3])}; aot_mem.aot_direct_store32_block(vfpu_address, vfpu_words); } aot_gpr_6 = (std::bit_cast(aot_fpr_20)); ctx.set_vfpu_scalar_bits_ct<28u>(aot_gpr_6); ctx.execute_vfpu_unary_ct<28u, 28u, 1u, 16u>(); { const std::uint32_t vfpu_address = aot_gpr_5 + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } ctx.execute_vfpu_vscl_ct<0u, 0u, 28u, 3u>(); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = aot_gpr_4 + static_cast(0); const std::uint32_t vfpu_words[4]{std::bit_cast(vfpu_value[0]), std::bit_cast(vfpu_value[1]), std::bit_cast(vfpu_value[2]), std::bit_cast(vfpu_value[3])}; aot_mem.aot_direct_store32_block(vfpu_address, vfpu_words); } { const std::uint32_t vfpu_address = aot_gpr_4 + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = ctx.gpr[21] + static_cast(0); const std::uint32_t vfpu_words[4]{std::bit_cast(vfpu_value[0]), std::bit_cast(vfpu_value[1]), std::bit_cast(vfpu_value[2]), std::bit_cast(vfpu_value[3])}; aot_mem.aot_direct_store32_block(vfpu_address, vfpu_words); } { const bool branch_taken = 0u == 0u; if (branch_taken) { goto L_08A7E57C; } goto L_08A7E504; } L_08A7E504: aot_gpr_4 = (std::bit_cast(ctx.fpr[24])); ctx.set_vfpu_scalar_bits_ct<28u>(aot_gpr_4); aot_gpr_4 = (aot_gpr_29 + static_cast(80)); { const std::uint32_t vfpu_address = aot_gpr_4 + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } ctx.execute_vfpu_vscl_ct<0u, 0u, 28u, 3u>(); aot_gpr_4 = (aot_gpr_29 + static_cast(240)); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = aot_gpr_4 + static_cast(0); const std::uint32_t vfpu_words[4]{std::bit_cast(vfpu_value[0]), std::bit_cast(vfpu_value[1]), std::bit_cast(vfpu_value[2]), std::bit_cast(vfpu_value[3])}; aot_mem.aot_direct_store32_block(vfpu_address, vfpu_words); } aot_gpr_5 = (std::bit_cast(aot_fpr_20)); ctx.set_vfpu_scalar_bits_ct<28u>(aot_gpr_5); ctx.execute_vfpu_unary_ct<28u, 28u, 1u, 16u>(); { const std::uint32_t vfpu_address = aot_gpr_4 + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } ctx.execute_vfpu_vscl_ct<0u, 0u, 28u, 3u>(); aot_gpr_5 = (aot_gpr_29 + static_cast(224)); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = aot_gpr_5 + static_cast(0); const std::uint32_t vfpu_words[4]{std::bit_cast(vfpu_value[0]), std::bit_cast(vfpu_value[1]), std::bit_cast(vfpu_value[2]), std::bit_cast(vfpu_value[3])}; aot_mem.aot_direct_store32_block(vfpu_address, vfpu_words); } { const std::uint32_t vfpu_address = aot_gpr_5 + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = ctx.gpr[22] + static_cast(0); const std::uint32_t vfpu_words[4]{std::bit_cast(vfpu_value[0]), std::bit_cast(vfpu_value[1]), std::bit_cast(vfpu_value[2]), std::bit_cast(vfpu_value[3])}; aot_mem.aot_direct_store32_block(vfpu_address, vfpu_words); } aot_gpr_6 = (std::bit_cast(ctx.fpr[24])); ctx.set_vfpu_scalar_bits_ct<28u>(aot_gpr_6); aot_gpr_6 = (aot_gpr_29 + static_cast(64)); { const std::uint32_t vfpu_address = aot_gpr_6 + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } ctx.execute_vfpu_vscl_ct<0u, 0u, 28u, 3u>(); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = aot_gpr_5 + static_cast(0); const std::uint32_t vfpu_words[4]{std::bit_cast(vfpu_value[0]), std::bit_cast(vfpu_value[1]), std::bit_cast(vfpu_value[2]), std::bit_cast(vfpu_value[3])}; aot_mem.aot_direct_store32_block(vfpu_address, vfpu_words); } aot_gpr_6 = (std::bit_cast(aot_fpr_20)); ctx.set_vfpu_scalar_bits_ct<28u>(aot_gpr_6); ctx.execute_vfpu_unary_ct<28u, 28u, 1u, 16u>(); { const std::uint32_t vfpu_address = aot_gpr_5 + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } ctx.execute_vfpu_vscl_ct<0u, 0u, 28u, 3u>(); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = aot_gpr_4 + static_cast(0); const std::uint32_t vfpu_words[4]{std::bit_cast(vfpu_value[0]), std::bit_cast(vfpu_value[1]), std::bit_cast(vfpu_value[2]), std::bit_cast(vfpu_value[3])}; aot_mem.aot_direct_store32_block(vfpu_address, vfpu_words); } { const std::uint32_t vfpu_address = aot_gpr_4 + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = ctx.gpr[21] + static_cast(0); const std::uint32_t vfpu_words[4]{std::bit_cast(vfpu_value[0]), std::bit_cast(vfpu_value[1]), std::bit_cast(vfpu_value[2]), std::bit_cast(vfpu_value[3])}; aot_mem.aot_direct_store32_block(vfpu_address, vfpu_words); } goto L_08A7E57C; L_08A7E57C: { const std::uint32_t vfpu_address = ctx.gpr[22] + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } aot_gpr_4 = (aot_gpr_29 + static_cast(128)); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = aot_gpr_4 + static_cast(0); const std::uint32_t vfpu_words[4]{std::bit_cast(vfpu_value[0]), std::bit_cast(vfpu_value[1]), std::bit_cast(vfpu_value[2]), std::bit_cast(vfpu_value[3])}; aot_mem.aot_direct_store32_block(vfpu_address, vfpu_words); } { const std::uint32_t vfpu_address = ctx.gpr[21] + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } aot_gpr_4 = (aot_gpr_29 + static_cast(144)); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = aot_gpr_4 + static_cast(0); const std::uint32_t vfpu_words[4]{std::bit_cast(vfpu_value[0]), std::bit_cast(vfpu_value[1]), std::bit_cast(vfpu_value[2]), std::bit_cast(vfpu_value[3])}; aot_mem.aot_direct_store32_block(vfpu_address, vfpu_words); } aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(128))); aot_gpr_4 = (15948u << 16u); aot_gpr_4 = (aot_gpr_4 | 52429u); aot_fpr_13 = std::bit_cast(aot_gpr_4); { const float fs = aot_fpr_12; const float ft = aot_fpr_13; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_12 = std::bit_cast(0x7FC00000u); else aot_fpr_12 = fs * ft; } aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(128), std::bit_cast(aot_fpr_12)); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(144))); { const float fs = aot_fpr_12; const float ft = aot_fpr_13; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_12 = std::bit_cast(0x7FC00000u); else aot_fpr_12 = fs * ft; } aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(144), std::bit_cast(aot_fpr_12)); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(132))); { const float fs = aot_fpr_12; const float ft = aot_fpr_13; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_12 = std::bit_cast(0x7FC00000u); else aot_fpr_12 = fs * ft; } aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(132), std::bit_cast(aot_fpr_12)); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(148))); { const float fs = aot_fpr_12; const float ft = aot_fpr_13; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_12 = std::bit_cast(0x7FC00000u); else aot_fpr_12 = fs * ft; } aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(148), std::bit_cast(aot_fpr_12)); aot_gpr_17 = (aot_gpr_29 + static_cast(16)); aot_gpr_4 = (aot_gpr_17 | 0u); aot_gpr_5 = (aot_gpr_17 | 0u); aot_gpr_6 = (0u | 9u); ctx.gpr[31] = (0x08A7E5E8u); ctx.gpr[7] = (ctx.gpr[23] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0023_entry, 23u, 239u, 0x088619ACu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7E5E8u) goto L_08A7E5E8; AOT_REGCACHE_SYNC_OUT(); return; L_08A7E5E8: aot_mem.aot_direct_store8(ctx.gpr[28] + static_cast(7640), static_cast(0u)); aot_gpr_4 = (aot_mem.aot_direct_load8(aot_gpr_16 + static_cast(80))); aot_gpr_4 = (aot_gpr_4 << 5u); aot_gpr_5 = (0u - aot_gpr_4); aot_gpr_4 = (aot_gpr_4 << 2u); aot_gpr_5 = (aot_gpr_5 + aot_gpr_4); aot_gpr_4 = (aot_gpr_4 << 2u); aot_gpr_4 = (aot_gpr_5 + aot_gpr_4); aot_gpr_16 = (aot_gpr_4 + aot_gpr_16); aot_gpr_16 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(aot_gpr_16 + static_cast(112)))))); aot_gpr_4 = (0u | 1u); { const bool branch_taken = aot_gpr_16 == aot_gpr_4; aot_gpr_4 = (0u | 37u); if (branch_taken) { goto L_08A7E844; } goto L_08A7E61C; } L_08A7E61C: { const bool branch_taken = aot_gpr_16 == aot_gpr_4; if (branch_taken) { goto L_08A7E844; } goto L_08A7E624; } L_08A7E624: ctx.gpr[31] = (0x08A7E62Cu); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0087_entry, 87u, 39u, 0x089603D4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7E62Cu) goto L_08A7E62C; AOT_REGCACHE_SYNC_OUT(); return; L_08A7E62C: aot_gpr_4 = (ctx.gpr[2] | 0u); { const bool branch_taken = aot_gpr_4 == 0u; aot_gpr_16 = (aot_gpr_29 + static_cast(160)); if (branch_taken) { goto L_08A7E6CC; } goto L_08A7E638; } L_08A7E638: aot_gpr_4 = (aot_gpr_4 + static_cast(48)); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(8))); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 < ctx.fpr[22])) ? 0x00800000u : 0u); { const bool branch_taken = !((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_08A7E6CC; } goto L_08A7E650; } L_08A7E650: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(16))); aot_fpr_12 = aot_fpr_12 / ctx.fpr[26]; aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(20))); aot_fpr_14 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(96))); ctx.fpr[15] = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(100))); ctx.fpr[16] = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(112))); ctx.fpr[17] = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(116))); aot_gpr_6 = (2216u << 16u); aot_gpr_6 = (aot_gpr_6 + static_cast(-20068)); aot_gpr_4 = (aot_gpr_16 | 0u); aot_gpr_5 = (0u | 3u); aot_fpr_13 = aot_fpr_13 / ctx.fpr[26]; aot_fpr_14 = aot_fpr_14 / ctx.fpr[26]; ctx.fpr[15] = ctx.fpr[15] / ctx.fpr[26]; ctx.fpr[16] = ctx.fpr[16] / ctx.fpr[26]; ctx.fpr[17] = ctx.fpr[17] / ctx.fpr[26]; aot_fpr_12 = aot_fpr_12 + ctx.fpr[28]; aot_fpr_13 = aot_fpr_13 + ctx.fpr[30]; aot_fpr_14 = aot_fpr_14 + ctx.fpr[28]; ctx.fpr[15] = ctx.fpr[15] + ctx.fpr[30]; aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(160), std::bit_cast(aot_fpr_12)); aot_fpr_12 = ctx.fpr[16] + ctx.fpr[28]; aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(164), std::bit_cast(aot_fpr_13)); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(168), std::bit_cast(aot_fpr_14)); aot_fpr_13 = ctx.fpr[17] + ctx.fpr[30]; aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(172), std::bit_cast(ctx.fpr[15])); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(176), std::bit_cast(aot_fpr_12)); ctx.gpr[31] = (0x08A7E6C4u); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(180), std::bit_cast(aot_fpr_13)); goto L_08A7DBBC; L_08A7E6C4: { const bool branch_taken = 0u == 0u; if (branch_taken) { goto L_08A7E83C; } goto L_08A7E6CC; } L_08A7E6CC: aot_gpr_17 = (2216u << 16u); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_20 <= ctx.fpr[24])) ? 0x00800000u : 0u); { const bool branch_taken = ((ctx.fcr31 & 0x00800000u) != 0u); aot_gpr_17 = (aot_gpr_17 + static_cast(-5016)); if (branch_taken) { goto L_08A7E7CC; } goto L_08A7E6E0; } L_08A7E6E0: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(16))); aot_fpr_12 = aot_fpr_12 / ctx.fpr[26]; aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(20))); aot_fpr_14 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(128))); ctx.fpr[15] = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(132))); ctx.fpr[16] = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(144))); ctx.fpr[17] = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(148))); aot_gpr_6 = (2216u << 16u); aot_gpr_4 = (aot_gpr_16 | 0u); aot_gpr_5 = (0u | 3u); aot_gpr_6 = (aot_gpr_6 + static_cast(-3968)); aot_fpr_13 = aot_fpr_13 / ctx.fpr[26]; aot_fpr_14 = aot_fpr_14 / ctx.fpr[26]; ctx.fpr[15] = ctx.fpr[15] / ctx.fpr[26]; ctx.fpr[16] = ctx.fpr[16] / ctx.fpr[26]; ctx.fpr[17] = ctx.fpr[17] / ctx.fpr[26]; aot_fpr_12 = aot_fpr_12 + ctx.fpr[28]; aot_fpr_13 = aot_fpr_13 + ctx.fpr[30]; aot_fpr_14 = aot_fpr_14 + ctx.fpr[28]; ctx.fpr[15] = ctx.fpr[15] + ctx.fpr[30]; aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(160), std::bit_cast(aot_fpr_12)); aot_fpr_12 = ctx.fpr[16] + ctx.fpr[28]; aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(164), std::bit_cast(aot_fpr_13)); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(168), std::bit_cast(aot_fpr_14)); aot_fpr_13 = ctx.fpr[17] + ctx.fpr[30]; aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(172), std::bit_cast(ctx.fpr[15])); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(176), std::bit_cast(aot_fpr_12)); ctx.gpr[31] = (0x08A7E754u); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(180), std::bit_cast(aot_fpr_13)); goto L_08A7DBBC; L_08A7E754: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(16))); aot_fpr_12 = aot_fpr_12 / ctx.fpr[26]; aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(20))); aot_fpr_14 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(96))); ctx.fpr[15] = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(100))); ctx.fpr[16] = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(112))); ctx.fpr[17] = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(116))); aot_gpr_4 = (aot_gpr_16 | 0u); aot_gpr_5 = (0u | 3u); aot_gpr_6 = (aot_gpr_17 | 0u); aot_fpr_13 = aot_fpr_13 / ctx.fpr[26]; aot_fpr_14 = aot_fpr_14 / ctx.fpr[26]; ctx.fpr[15] = ctx.fpr[15] / ctx.fpr[26]; ctx.fpr[16] = ctx.fpr[16] / ctx.fpr[26]; ctx.fpr[17] = ctx.fpr[17] / ctx.fpr[26]; aot_fpr_12 = aot_fpr_12 + ctx.fpr[28]; aot_fpr_13 = aot_fpr_13 + ctx.fpr[30]; aot_fpr_14 = aot_fpr_14 + ctx.fpr[28]; ctx.fpr[15] = ctx.fpr[15] + ctx.fpr[30]; aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(160), std::bit_cast(aot_fpr_12)); aot_fpr_12 = ctx.fpr[16] + ctx.fpr[28]; aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(164), std::bit_cast(aot_fpr_13)); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(168), std::bit_cast(aot_fpr_14)); aot_fpr_13 = ctx.fpr[17] + ctx.fpr[30]; aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(172), std::bit_cast(ctx.fpr[15])); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(176), std::bit_cast(aot_fpr_12)); ctx.gpr[31] = (0x08A7E7C4u); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(180), std::bit_cast(aot_fpr_13)); goto L_08A7DBBC; L_08A7E7C4: { const bool branch_taken = 0u == 0u; if (branch_taken) { goto L_08A7E83C; } goto L_08A7E7CC; } L_08A7E7CC: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(16))); aot_fpr_12 = aot_fpr_12 / ctx.fpr[26]; aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(20))); aot_fpr_14 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(32))); ctx.fpr[15] = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(36))); ctx.fpr[16] = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(48))); ctx.fpr[17] = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(52))); aot_gpr_4 = (aot_gpr_16 | 0u); aot_gpr_5 = (0u | 3u); aot_gpr_6 = (aot_gpr_17 | 0u); aot_fpr_13 = aot_fpr_13 / ctx.fpr[26]; aot_fpr_14 = aot_fpr_14 / ctx.fpr[26]; ctx.fpr[15] = ctx.fpr[15] / ctx.fpr[26]; ctx.fpr[16] = ctx.fpr[16] / ctx.fpr[26]; ctx.fpr[17] = ctx.fpr[17] / ctx.fpr[26]; aot_fpr_12 = aot_fpr_12 + ctx.fpr[28]; aot_fpr_13 = aot_fpr_13 + ctx.fpr[30]; aot_fpr_14 = aot_fpr_14 + ctx.fpr[28]; ctx.fpr[15] = ctx.fpr[15] + ctx.fpr[30]; aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(160), std::bit_cast(aot_fpr_12)); aot_fpr_12 = ctx.fpr[16] + ctx.fpr[28]; aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(164), std::bit_cast(aot_fpr_13)); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(168), std::bit_cast(aot_fpr_14)); aot_fpr_13 = ctx.fpr[17] + ctx.fpr[30]; aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(172), std::bit_cast(ctx.fpr[15])); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(176), std::bit_cast(aot_fpr_12)); ctx.gpr[31] = (0x08A7E83Cu); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(180), std::bit_cast(aot_fpr_13)); goto L_08A7DBBC; L_08A7E83C: { const bool branch_taken = 0u == 0u; if (branch_taken) { goto L_08A7EC20; } goto L_08A7E844; } L_08A7E844: ctx.gpr[31] = (0x08A7E84Cu); aot_gpr_4 = (aot_gpr_29 + static_cast(288)); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0115_entry, 115u, 291u, 0x089D1AECu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7E84Cu) goto L_08A7E84C; AOT_REGCACHE_SYNC_OUT(); return; L_08A7E84C: aot_gpr_6 = (49864u << 16u); aot_fpr_20 = std::bit_cast(aot_gpr_6); aot_gpr_4 = (ctx.gpr[30] | 0u); aot_gpr_5 = (aot_gpr_17 | 0u); ctx.gpr[31] = (0x08A7E864u); aot_fpr_12 = std::bit_cast(std::bit_cast(aot_fpr_20)); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0157_entry, 157u, 334u, 0x08A79B48u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7E864u) goto L_08A7E864; AOT_REGCACHE_SYNC_OUT(); return; L_08A7E864: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(32))); aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(36))); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(256), std::bit_cast(aot_fpr_12)); aot_fpr_14 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(288))); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 < aot_fpr_14)) ? 0x00800000u : 0u); { const bool branch_taken = !((ctx.fcr31 & 0x00800000u) != 0u); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(260), std::bit_cast(aot_fpr_13)); if (branch_taken) { goto L_08A7E88C; } goto L_08A7E884; } L_08A7E884: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(256))); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(288), std::bit_cast(aot_fpr_12)); goto L_08A7E88C; L_08A7E88C: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(256))); aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(296))); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 <= aot_fpr_13)) ? 0x00800000u : 0u); if (((ctx.fcr31 & 0x00800000u) != 0u)) { aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(260))); goto L_08A7E8B0; } goto L_08A7E8A4; L_08A7E8A4: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(256))); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(296), std::bit_cast(aot_fpr_12)); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(260))); goto L_08A7E8B0; L_08A7E8B0: aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(300))); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 < aot_fpr_13)) ? 0x00800000u : 0u); if (!((ctx.fcr31 & 0x00800000u) != 0u)) { aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(260))); goto L_08A7E8D0; } goto L_08A7E8C4; L_08A7E8C4: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(260))); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(300), std::bit_cast(aot_fpr_12)); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(260))); goto L_08A7E8D0; L_08A7E8D0: aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(292))); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 <= aot_fpr_13)) ? 0x00800000u : 0u); { const bool branch_taken = ((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_08A7E8EC; } goto L_08A7E8E4; } L_08A7E8E4: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(260))); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(292), std::bit_cast(aot_fpr_12)); goto L_08A7E8EC; L_08A7E8EC: aot_gpr_4 = (aot_gpr_29 + static_cast(48)); aot_fpr_12 = std::bit_cast(std::bit_cast(aot_fpr_20)); ctx.gpr[31] = (0x08A7E8FCu); aot_gpr_5 = (aot_gpr_17 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0157_entry, 157u, 334u, 0x08A79B48u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7E8FCu) goto L_08A7E8FC; AOT_REGCACHE_SYNC_OUT(); return; L_08A7E8FC: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(48))); aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(52))); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(256), std::bit_cast(aot_fpr_12)); aot_fpr_14 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(288))); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 < aot_fpr_14)) ? 0x00800000u : 0u); { const bool branch_taken = !((ctx.fcr31 & 0x00800000u) != 0u); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(260), std::bit_cast(aot_fpr_13)); if (branch_taken) { goto L_08A7E924; } goto L_08A7E91C; } L_08A7E91C: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(256))); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(288), std::bit_cast(aot_fpr_12)); goto L_08A7E924; L_08A7E924: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(256))); aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(296))); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 <= aot_fpr_13)) ? 0x00800000u : 0u); if (((ctx.fcr31 & 0x00800000u) != 0u)) { aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(260))); goto L_08A7E948; } goto L_08A7E93C; L_08A7E93C: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(256))); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(296), std::bit_cast(aot_fpr_12)); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(260))); goto L_08A7E948; L_08A7E948: aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(300))); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 < aot_fpr_13)) ? 0x00800000u : 0u); if (!((ctx.fcr31 & 0x00800000u) != 0u)) { aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(260))); goto L_08A7E968; } goto L_08A7E95C; L_08A7E95C: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(260))); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(300), std::bit_cast(aot_fpr_12)); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(260))); goto L_08A7E968; L_08A7E968: aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(292))); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 <= aot_fpr_13)) ? 0x00800000u : 0u); { const bool branch_taken = ((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_08A7E984; } goto L_08A7E97C; } L_08A7E97C: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(260))); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(292), std::bit_cast(aot_fpr_12)); goto L_08A7E984; L_08A7E984: aot_gpr_4 = (aot_gpr_29 + static_cast(64)); aot_fpr_12 = std::bit_cast(std::bit_cast(aot_fpr_20)); ctx.gpr[31] = (0x08A7E994u); aot_gpr_5 = (aot_gpr_17 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0157_entry, 157u, 334u, 0x08A79B48u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7E994u) goto L_08A7E994; AOT_REGCACHE_SYNC_OUT(); return; L_08A7E994: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(64))); aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(68))); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(256), std::bit_cast(aot_fpr_12)); aot_fpr_14 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(288))); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 < aot_fpr_14)) ? 0x00800000u : 0u); { const bool branch_taken = !((ctx.fcr31 & 0x00800000u) != 0u); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(260), std::bit_cast(aot_fpr_13)); if (branch_taken) { goto L_08A7E9BC; } goto L_08A7E9B4; } L_08A7E9B4: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(256))); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(288), std::bit_cast(aot_fpr_12)); goto L_08A7E9BC; L_08A7E9BC: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(256))); aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(296))); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 <= aot_fpr_13)) ? 0x00800000u : 0u); if (((ctx.fcr31 & 0x00800000u) != 0u)) { aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(260))); goto L_08A7E9E0; } goto L_08A7E9D4; L_08A7E9D4: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(256))); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(296), std::bit_cast(aot_fpr_12)); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(260))); goto L_08A7E9E0; L_08A7E9E0: aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(300))); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 < aot_fpr_13)) ? 0x00800000u : 0u); if (!((ctx.fcr31 & 0x00800000u) != 0u)) { aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(260))); goto L_08A7EA00; } goto L_08A7E9F4; L_08A7E9F4: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(260))); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(300), std::bit_cast(aot_fpr_12)); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(260))); goto L_08A7EA00; L_08A7EA00: aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(292))); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 <= aot_fpr_13)) ? 0x00800000u : 0u); { const bool branch_taken = ((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_08A7EA1C; } goto L_08A7EA14; } L_08A7EA14: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(260))); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(292), std::bit_cast(aot_fpr_12)); goto L_08A7EA1C; L_08A7EA1C: aot_gpr_4 = (aot_gpr_29 + static_cast(80)); aot_fpr_12 = std::bit_cast(std::bit_cast(aot_fpr_20)); ctx.gpr[31] = (0x08A7EA2Cu); aot_gpr_5 = (aot_gpr_17 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0157_entry, 157u, 334u, 0x08A79B48u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7EA2Cu) goto L_08A7EA2C; AOT_REGCACHE_SYNC_OUT(); return; L_08A7EA2C: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(80))); aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(84))); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(256), std::bit_cast(aot_fpr_12)); aot_fpr_14 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(288))); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 < aot_fpr_14)) ? 0x00800000u : 0u); { const bool branch_taken = !((ctx.fcr31 & 0x00800000u) != 0u); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(260), std::bit_cast(aot_fpr_13)); if (branch_taken) { goto L_08A7EA54; } goto L_08A7EA4C; } L_08A7EA4C: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(256))); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(288), std::bit_cast(aot_fpr_12)); goto L_08A7EA54; L_08A7EA54: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(256))); aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(296))); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 <= aot_fpr_13)) ? 0x00800000u : 0u); if (((ctx.fcr31 & 0x00800000u) != 0u)) { aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(260))); goto L_08A7EA78; } goto L_08A7EA6C; L_08A7EA6C: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(256))); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(296), std::bit_cast(aot_fpr_12)); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(260))); goto L_08A7EA78; L_08A7EA78: aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(300))); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 < aot_fpr_13)) ? 0x00800000u : 0u); if (!((ctx.fcr31 & 0x00800000u) != 0u)) { aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(260))); goto L_08A7EA98; } goto L_08A7EA8C; L_08A7EA8C: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(260))); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(300), std::bit_cast(aot_fpr_12)); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(260))); goto L_08A7EA98; L_08A7EA98: aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(292))); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 <= aot_fpr_13)) ? 0x00800000u : 0u); if (((ctx.fcr31 & 0x00800000u) != 0u)) { aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(288))); goto L_08A7EAB8; } goto L_08A7EAAC; L_08A7EAAC: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(260))); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(292), std::bit_cast(aot_fpr_12)); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(288))); goto L_08A7EAB8; L_08A7EAB8: aot_fpr_12 = aot_fpr_12 / ctx.fpr[26]; aot_gpr_5 = (0u | 49u); aot_fpr_12 = aot_fpr_12 + ctx.fpr[28]; aot_fpr_12 = std::bit_cast(ctx.fpu_float_to_word_ct<1u>(aot_fpr_12)); aot_gpr_4 = (std::bit_cast(aot_fpr_12)); aot_gpr_5 = (static_cast(aot_gpr_5) < static_cast(aot_gpr_4) ? 1u : 0u); if (aot_gpr_5 != 0u) { aot_gpr_4 = (0u | 49u); goto L_08A7EAD8; } goto L_08A7EAD8; L_08A7EAD8: aot_gpr_5 = (static_cast(aot_gpr_4) < 0 ? 1u : 0u); if (aot_gpr_5 != 0u) { aot_gpr_4 = (0u | 0u); goto L_08A7EAE4; } goto L_08A7EAE4; L_08A7EAE4: aot_gpr_5 = (0u | 0u); ctx.gpr[19] = (0u | 0u); aot_gpr_5 = (static_cast(aot_gpr_5) < static_cast(aot_gpr_4) ? 1u : 0u); if (aot_gpr_5 != 0u) { ctx.gpr[19] = (aot_gpr_4 | 0u); goto L_08A7EAF8; } goto L_08A7EAF8; L_08A7EAF8: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(296))); aot_fpr_12 = aot_fpr_12 / ctx.fpr[26]; aot_gpr_5 = (0u | 49u); aot_fpr_12 = aot_fpr_12 + ctx.fpr[28]; aot_fpr_12 = std::bit_cast(ctx.fpu_float_to_word_ct<1u>(aot_fpr_12)); aot_gpr_4 = (std::bit_cast(aot_fpr_12)); aot_gpr_5 = (static_cast(aot_gpr_5) < static_cast(aot_gpr_4) ? 1u : 0u); if (aot_gpr_5 != 0u) { aot_gpr_4 = (0u | 49u); goto L_08A7EB1C; } goto L_08A7EB1C; L_08A7EB1C: aot_gpr_5 = (static_cast(aot_gpr_4) < 0 ? 1u : 0u); if (aot_gpr_5 != 0u) { aot_gpr_4 = (0u | 0u); goto L_08A7EB28; } goto L_08A7EB28; L_08A7EB28: aot_gpr_16 = (0u | 49u); aot_gpr_5 = (static_cast(aot_gpr_4) < 49 ? 1u : 0u); if (aot_gpr_5 != 0u) { aot_gpr_16 = (aot_gpr_4 | 0u); goto L_08A7EB38; } goto L_08A7EB38; L_08A7EB38: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(300))); aot_fpr_12 = aot_fpr_12 / ctx.fpr[26]; aot_gpr_5 = (0u | 49u); aot_fpr_12 = aot_fpr_12 + ctx.fpr[30]; aot_fpr_12 = std::bit_cast(ctx.fpu_float_to_word_ct<1u>(aot_fpr_12)); aot_gpr_4 = (std::bit_cast(aot_fpr_12)); aot_gpr_5 = (static_cast(aot_gpr_5) < static_cast(aot_gpr_4) ? 1u : 0u); if (aot_gpr_5 != 0u) { aot_gpr_4 = (0u | 49u); goto L_08A7EB5C; } goto L_08A7EB5C; L_08A7EB5C: aot_gpr_5 = (static_cast(aot_gpr_4) < 0 ? 1u : 0u); if (aot_gpr_5 != 0u) { aot_gpr_4 = (0u | 0u); goto L_08A7EB68; } goto L_08A7EB68; L_08A7EB68: aot_gpr_5 = (0u | 0u); aot_gpr_17 = (0u | 0u); aot_gpr_5 = (static_cast(aot_gpr_5) < static_cast(aot_gpr_4) ? 1u : 0u); if (aot_gpr_5 != 0u) { aot_gpr_17 = (aot_gpr_4 | 0u); goto L_08A7EB7C; } goto L_08A7EB7C; L_08A7EB7C: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(292))); aot_fpr_12 = aot_fpr_12 / ctx.fpr[26]; aot_gpr_5 = (0u | 49u); aot_fpr_12 = aot_fpr_12 + ctx.fpr[30]; aot_fpr_12 = std::bit_cast(ctx.fpu_float_to_word_ct<1u>(aot_fpr_12)); aot_gpr_4 = (std::bit_cast(aot_fpr_12)); aot_gpr_5 = (static_cast(aot_gpr_5) < static_cast(aot_gpr_4) ? 1u : 0u); if (aot_gpr_5 != 0u) { aot_gpr_4 = (0u | 49u); goto L_08A7EBA0; } goto L_08A7EBA0; L_08A7EBA0: aot_gpr_5 = (static_cast(aot_gpr_4) < 0 ? 1u : 0u); if (aot_gpr_5 != 0u) { aot_gpr_4 = (0u | 0u); goto L_08A7EBAC; } goto L_08A7EBAC; L_08A7EBAC: ctx.gpr[18] = (0u | 49u); aot_gpr_5 = (static_cast(aot_gpr_4) < 49 ? 1u : 0u); if (aot_gpr_5 != 0u) { ctx.gpr[18] = (aot_gpr_4 | 0u); goto L_08A7EBBC; } goto L_08A7EBBC; L_08A7EBBC: aot_gpr_4 = (aot_gpr_16 < ctx.gpr[19] ? 1u : 0u); { const bool branch_taken = aot_gpr_4 != 0u; if (branch_taken) { goto L_08A7EC20; } goto L_08A7EBC8; } L_08A7EBC8: ctx.gpr[20] = (aot_gpr_17 | 0u); aot_gpr_4 = (ctx.gpr[18] < ctx.gpr[20] ? 1u : 0u); { const bool branch_taken = aot_gpr_4 != 0u; aot_gpr_4 = (aot_gpr_17 << 4u); if (branch_taken) { goto L_08A7EC10; } goto L_08A7EBD8; } L_08A7EBD8: aot_gpr_5 = (aot_gpr_17 + aot_gpr_4); aot_gpr_4 = (aot_gpr_4 + aot_gpr_5); aot_gpr_4 = (aot_gpr_4 + aot_gpr_5); aot_gpr_4 = (ctx.gpr[19] + aot_gpr_4); ctx.gpr[21] = (aot_gpr_4 << 6u); aot_gpr_4 = (aot_gpr_4 << 3u); ctx.gpr[21] = (ctx.gpr[21] - aot_gpr_4); goto L_08A7EBF4; L_08A7EBF4: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-25496))); ctx.gpr[31] = (0x08A7EC00u); aot_gpr_4 = (aot_gpr_4 + ctx.gpr[21]); goto L_08A7EC68; L_08A7EC00: ctx.gpr[20] = (ctx.gpr[20] + static_cast(1)); aot_gpr_4 = (ctx.gpr[18] < ctx.gpr[20] ? 1u : 0u); { const bool branch_taken = aot_gpr_4 == 0u; ctx.gpr[21] = (ctx.gpr[21] + static_cast(2800)); if (branch_taken) { goto L_08A7EBF4; } goto L_08A7EC10; } L_08A7EC10: ctx.gpr[19] = (ctx.gpr[19] + static_cast(1)); aot_gpr_4 = (aot_gpr_16 < ctx.gpr[19] ? 1u : 0u); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_08A7EBC8; } goto L_08A7EC20; } L_08A7EC20: aot_fpr_20 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(448))); ctx.fpr[22] = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(452))); ctx.fpr[24] = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(456))); ctx.fpr[26] = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(460))); ctx.fpr[28] = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(464))); ctx.fpr[30] = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(468))); aot_gpr_16 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(472))); aot_gpr_17 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(476))); ctx.gpr[18] = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(480))); ctx.gpr[19] = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(484))); ctx.gpr[20] = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(488))); ctx.gpr[21] = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(492))); ctx.gpr[22] = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(496))); ctx.gpr[23] = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(500))); ctx.gpr[30] = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(504))); ctx.gpr[31] = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(508))); jump_target = ctx.gpr[31]; aot_gpr_29 = (aot_gpr_29 + static_cast(512)); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } // PSPRECOMP_V812_SHARED_SCHED_JUMP goto LOCAL_SCHED_BOUNDARY; L_08A7EC68: // TIER2_SUPERBLOCK_V2_HOOK_BEGIN if (vcs::tier2_cluster_enabled(vcs::Tier2ClusterId::World) && rt.memory().direct_fastmem_enabled()) { AOT_REGCACHE_SYNC_OUT(); aot_regcache_valid = false; vcs::tier2_superblock_world(rt, ctx, aot_mem, 0x08A7EC68u); AOT_REGCACHE_SYNC_OUT(); return; } // TIER2_SUPERBLOCK_V2_HOOK_END aot_gpr_29 = (aot_gpr_29 + static_cast(-80)); aot_gpr_5 = (0u | 12u); aot_gpr_6 = (aot_mem.aot_direct_load8(ctx.gpr[28] + static_cast(-7080))); aot_gpr_4 = (aot_gpr_4 + static_cast(8)); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(16), aot_gpr_5); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(20), std::bit_cast(aot_fpr_20)); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(24), std::bit_cast(ctx.fpr[22])); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(28), aot_gpr_16); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(32), aot_gpr_17); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(36), ctx.gpr[18]); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(40), ctx.gpr[19]); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(44), ctx.gpr[20]); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(48), ctx.gpr[21]); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(52), ctx.gpr[22]); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(56), ctx.gpr[23]); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(60), ctx.gpr[30]); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(64), ctx.gpr[31]); { const bool branch_taken = aot_gpr_6 == 0u; aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(12), aot_gpr_4); if (branch_taken) { goto L_08A7ECBC; } goto L_08A7ECB4; } L_08A7ECB4: aot_gpr_4 = (0u | 3u); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(16), aot_gpr_4); goto L_08A7ECBC; L_08A7ECBC: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(16))); aot_gpr_5 = (aot_gpr_4 + static_cast(-1)); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(8), aot_gpr_5); { const bool branch_taken = aot_gpr_4 == 0u; aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(16), aot_gpr_5); if (branch_taken) { goto L_08A7F048; } goto L_08A7ECD0; } L_08A7ECD0: aot_gpr_4 = (ctx.gpr[28] + static_cast(-5492)); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(4), aot_gpr_4); aot_gpr_4 = (49648u << 16u); aot_gpr_5 = (2280u << 16u); aot_fpr_20 = std::bit_cast(aot_gpr_4); aot_gpr_5 = (aot_gpr_5 + static_cast(-29568)); ctx.gpr[30] = (2280u << 16u); ctx.gpr[23] = (2279u << 16u); aot_gpr_4 = (16880u << 16u); ctx.gpr[20] = (2280u << 16u); ctx.fpr[22] = std::bit_cast(aot_gpr_4); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(0), aot_gpr_5); ctx.gpr[22] = (0u | 1u); ctx.gpr[21] = (0u | 3u); ctx.gpr[30] = (ctx.gpr[30] + static_cast(-21568)); ctx.gpr[23] = (ctx.gpr[23] + static_cast(27328)); ctx.gpr[20] = (ctx.gpr[20] + static_cast(-30208)); goto L_08A7ED14; L_08A7ED14: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(12))); ctx.gpr[19] = (aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(0))); aot_gpr_4 = (aot_gpr_4 + static_cast(4)); { const bool branch_taken = ctx.gpr[19] == 0u; aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(12), aot_gpr_4); if (branch_taken) { goto L_08A7F030; } goto L_08A7ED28; } L_08A7ED28: aot_gpr_17 = (aot_mem.aot_direct_load32(ctx.gpr[19] + static_cast(0))); aot_gpr_5 = (aot_mem.aot_direct_load16(aot_gpr_17 + static_cast(84))); aot_gpr_4 = (aot_mem.aot_direct_load16(ctx.gpr[28] + static_cast(-25492))); { const bool branch_taken = aot_gpr_5 == aot_gpr_4; ctx.gpr[19] = (aot_mem.aot_direct_load32(ctx.gpr[19] + static_cast(8))); if (branch_taken) { goto L_08A7F028; } goto L_08A7ED3C; } L_08A7ED3C: aot_gpr_6 = (aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(76))); aot_gpr_5 = (0u + static_cast(-1025)); aot_mem.aot_direct_store16(aot_gpr_17 + static_cast(84), static_cast(aot_gpr_4)); aot_gpr_4 = (aot_gpr_6 & aot_gpr_5); aot_mem.aot_direct_store32(aot_gpr_17 + static_cast(76), aot_gpr_4); ctx.gpr[31] = (0x08A7ED58u); aot_gpr_4 = (aot_gpr_17 | 0u); goto L_08A7CEC8; L_08A7ED58: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(76))); aot_gpr_6 = (4u << 16u); aot_gpr_6 = (aot_gpr_4 & aot_gpr_6); { const bool branch_taken = aot_gpr_6 == 0u; aot_gpr_5 = (ctx.gpr[2] | 0u); if (branch_taken) { goto L_08A7ED8C; } goto L_08A7ED6C; } L_08A7ED6C: aot_gpr_6 = (65532u << 16u); aot_gpr_6 = (aot_gpr_6 + static_cast(-1)); aot_gpr_4 = (aot_gpr_4 & aot_gpr_6); aot_gpr_6 = (aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(72))); aot_mem.aot_direct_store32(aot_gpr_17 + static_cast(76), aot_gpr_4); aot_gpr_4 = (8u << 16u); aot_gpr_4 = (aot_gpr_6 | aot_gpr_4); aot_mem.aot_direct_store32(aot_gpr_17 + static_cast(72), aot_gpr_4); goto L_08A7ED8C; L_08A7ED8C: aot_gpr_4 = (static_cast(aot_gpr_5) < 2 ? 1u : 0u); { const bool branch_taken = aot_gpr_4 == 0u; aot_gpr_4 = (static_cast(aot_gpr_5) < 3 ? 1u : 0u); if (branch_taken) { goto L_08A7EDB0; } goto L_08A7ED98; } L_08A7ED98: { const bool branch_taken = static_cast(aot_gpr_5) < 0; if (branch_taken) { goto L_08A7F028; } goto L_08A7EDA0; } L_08A7EDA0: { const bool branch_taken = static_cast(aot_gpr_5) <= 0; if (branch_taken) { goto L_08A7EF24; } goto L_08A7EDA8; } L_08A7EDA8: { const bool branch_taken = 0u == 0u; if (branch_taken) { goto L_08A7EDF0; } goto L_08A7EDB0; } L_08A7EDB0: { const bool branch_taken = aot_gpr_4 != 0u; aot_gpr_4 = (static_cast(aot_gpr_5) < 4 ? 1u : 0u); if (branch_taken) { goto L_08A7EF94; } goto L_08A7EDB8; } L_08A7EDB8: { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_08A7F028; } goto L_08A7EDC0; } L_08A7EDC0: ctx.gpr[31] = (0x08A7EDC8u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0179_entry, 179u, 542u, 0x08AD3220u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7EDC8u) goto L_08A7EDC8; AOT_REGCACHE_SYNC_OUT(); return; L_08A7EDC8: { const bool branch_taken = ctx.gpr[2] != 0u; if (branch_taken) { goto L_08A7EDE8; } goto L_08A7EDD0; } L_08A7EDD0: aot_gpr_4 = (aot_mem.aot_direct_load8(ctx.gpr[28] + static_cast(7640))); { const bool branch_taken = aot_gpr_4 != 0u; if (branch_taken) { goto L_08A7EDE8; } goto L_08A7EDDC; } L_08A7EDDC: aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(aot_gpr_17 + static_cast(86)))))); ctx.gpr[31] = (0x08A7EDE8u); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(4))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0179_entry, 179u, 548u, 0x08AD3280u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7EDE8u) goto L_08A7EDE8; AOT_REGCACHE_SYNC_OUT(); return; L_08A7EDE8: { const bool branch_taken = 0u == 0u; if (branch_taken) { goto L_08A7F028; } goto L_08A7EDF0; } L_08A7EDF0: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(72))); aot_gpr_4 = (aot_gpr_4 & 14u); aot_gpr_5 = (aot_gpr_4 ^ 4u); aot_gpr_5 = (aot_gpr_5 < static_cast(1) ? 1u : 0u); aot_gpr_5 = (aot_gpr_5 & 255u); { const bool branch_taken = aot_gpr_5 != 0u; if (branch_taken) { goto L_08A7EE4C; } goto L_08A7EE0C; } L_08A7EE0C: aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(76))); aot_gpr_6 = (1u << 16u); aot_gpr_6 = (aot_gpr_5 & aot_gpr_6); aot_gpr_6 = (0u < aot_gpr_6 ? 1u : 0u); aot_gpr_6 = (aot_gpr_6 & 255u); { const bool branch_taken = aot_gpr_6 != 0u; aot_gpr_6 = (aot_gpr_4 ^ 6u); if (branch_taken) { goto L_08A7EE4C; } goto L_08A7EE28; } L_08A7EE28: aot_gpr_6 = (aot_gpr_6 < static_cast(1) ? 1u : 0u); aot_gpr_6 = (aot_gpr_6 & 255u); { const bool branch_taken = aot_gpr_6 != 0u; aot_gpr_6 = (2u << 16u); if (branch_taken) { goto L_08A7EE4C; } goto L_08A7EE38; } L_08A7EE38: aot_gpr_5 = (aot_gpr_5 & aot_gpr_6); aot_gpr_5 = (0u < aot_gpr_5 ? 1u : 0u); aot_gpr_5 = (aot_gpr_5 & 255u); { const bool branch_taken = aot_gpr_5 == 0u; if (branch_taken) { goto L_08A7EE6C; } goto L_08A7EE4C; } L_08A7EE4C: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(10072))); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(0))); aot_gpr_6 = (aot_gpr_4 << 2u); aot_gpr_4 = (aot_gpr_4 + static_cast(1)); aot_gpr_5 = (aot_gpr_6 + aot_gpr_5); aot_mem.aot_direct_store32(ctx.gpr[28] + static_cast(10072), aot_gpr_4); { const bool branch_taken = 0u == 0u; aot_mem.aot_direct_store32(aot_gpr_5 + static_cast(0), aot_gpr_17); if (branch_taken) { goto L_08A7EF1C; } goto L_08A7EE6C; } L_08A7EE6C: aot_gpr_4 = (aot_gpr_4 ^ 10u); aot_gpr_4 = (aot_gpr_4 < static_cast(1) ? 1u : 0u); aot_gpr_4 = (aot_gpr_4 & 255u); { const bool branch_taken = aot_gpr_4 == 0u; ctx.gpr[18] = (0u | 0u); if (branch_taken) { goto L_08A7EEA4; } goto L_08A7EE80; } L_08A7EE80: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(5844))); { const bool branch_taken = aot_gpr_4 != 0u; aot_gpr_16 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(aot_gpr_17 + static_cast(86)))))); if (branch_taken) { goto L_08A7EE94; } goto L_08A7EE8C; } L_08A7EE8C: ctx.gpr[31] = (0x08A7EE94u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 339u, 0x08B6572Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7EE94u) goto L_08A7EE94; AOT_REGCACHE_SYNC_OUT(); return; L_08A7EE94: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(5844))); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(276))); if (aot_gpr_16 != aot_gpr_4) { ctx.gpr[18] = (ctx.gpr[22] | 0u); goto L_08A7EEDC; } goto L_08A7EEA4; L_08A7EEA4: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(72))); aot_gpr_4 = (aot_gpr_4 & 14u); aot_gpr_4 = (aot_gpr_4 ^ 8u); aot_gpr_4 = (aot_gpr_4 < static_cast(1) ? 1u : 0u); aot_gpr_4 = (aot_gpr_4 & 255u); { const bool branch_taken = aot_gpr_4 == 0u; aot_gpr_4 = (ctx.gpr[18] & 255u); if (branch_taken) { goto L_08A7EEE0; } goto L_08A7EEC0; } L_08A7EEC0: aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load8(aot_gpr_17 + static_cast(483)))))); aot_gpr_4 = (aot_gpr_4 & 16u); aot_gpr_4 = (0u < aot_gpr_4 ? 1u : 0u); aot_gpr_4 = (aot_gpr_4 & 255u); { const bool branch_taken = aot_gpr_4 == 0u; aot_gpr_4 = (ctx.gpr[18] & 255u); if (branch_taken) { goto L_08A7EEE0; } goto L_08A7EED8; } L_08A7EED8: ctx.gpr[18] = (ctx.gpr[22] | 0u); goto L_08A7EEDC; L_08A7EEDC: aot_gpr_4 = (ctx.gpr[18] & 255u); goto L_08A7EEE0; L_08A7EEE0: { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_08A7EF04; } goto L_08A7EEE8; } L_08A7EEE8: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(10076))); aot_gpr_5 = (aot_gpr_4 << 2u); aot_gpr_4 = (aot_gpr_4 + static_cast(1)); aot_gpr_5 = (aot_gpr_5 + ctx.gpr[30]); aot_mem.aot_direct_store32(ctx.gpr[28] + static_cast(10076), aot_gpr_4); { const bool branch_taken = 0u == 0u; aot_mem.aot_direct_store32(aot_gpr_5 + static_cast(0), aot_gpr_17); if (branch_taken) { goto L_08A7EF1C; } goto L_08A7EF04; } L_08A7EF04: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(10064))); aot_gpr_5 = (aot_gpr_4 << 2u); aot_gpr_4 = (aot_gpr_4 + static_cast(1)); aot_gpr_5 = (aot_gpr_5 + ctx.gpr[23]); aot_mem.aot_direct_store32(ctx.gpr[28] + static_cast(10064), aot_gpr_4); aot_mem.aot_direct_store32(aot_gpr_5 + static_cast(0), aot_gpr_17); goto L_08A7EF1C; L_08A7EF1C: { const bool branch_taken = 0u == 0u; if (branch_taken) { goto L_08A7F028; } goto L_08A7EF24; } L_08A7EF24: aot_gpr_5 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(aot_gpr_17 + static_cast(86)))))); aot_gpr_6 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(7656))); aot_gpr_6 = (static_cast(aot_gpr_5) < static_cast(aot_gpr_6) ? 1u : 0u); { const bool branch_taken = aot_gpr_6 == 0u; aot_gpr_4 = (0u | 0u); if (branch_taken) { goto L_08A7EF48; } goto L_08A7EF38; } L_08A7EF38: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(24))); aot_gpr_5 = (aot_gpr_5 << 2u); aot_gpr_4 = (aot_gpr_4 + aot_gpr_5); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(0))); goto L_08A7EF48; L_08A7EF48: aot_gpr_5 = (aot_mem.aot_direct_load8(aot_gpr_4 + static_cast(16))); if (aot_gpr_5 == ctx.gpr[22]) { aot_gpr_5 = (aot_mem.aot_direct_load16(aot_gpr_4 + static_cast(58))); goto L_08A7EF64; } goto L_08A7EF54; L_08A7EF54: if (aot_gpr_5 == ctx.gpr[21]) { aot_gpr_5 = (aot_mem.aot_direct_load16(aot_gpr_4 + static_cast(58))); goto L_08A7EF64; } goto L_08A7EF5C; L_08A7EF5C: { const bool branch_taken = 0u == 0u; aot_gpr_4 = (0u | 0u); if (branch_taken) { goto L_08A7EF84; } goto L_08A7EF64; } L_08A7EF64: aot_gpr_6 = (aot_gpr_5 & 8192u); { const bool branch_taken = aot_gpr_6 != 0u; aot_gpr_4 = (0u | 0u); if (branch_taken) { goto L_08A7EF7C; } goto L_08A7EF70; } L_08A7EF70: aot_gpr_5 = (aot_gpr_5 & 16384u); { const bool branch_taken = aot_gpr_5 == 0u; aot_gpr_4 = (aot_gpr_4 & 255u); if (branch_taken) { goto L_08A7EF84; } goto L_08A7EF7C; } L_08A7EF7C: aot_gpr_4 = (ctx.gpr[22] | 0u); aot_gpr_4 = (aot_gpr_4 & 255u); goto L_08A7EF84; L_08A7EF84: { const bool branch_taken = aot_gpr_4 != 0u; if (branch_taken) { goto L_08A7EF94; } goto L_08A7EF8C; } L_08A7EF8C: { const bool branch_taken = 0u == 0u; if (branch_taken) { goto L_08A7F028; } goto L_08A7EF94; } L_08A7EF94: aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(76))); aot_gpr_4 = (aot_gpr_17 + static_cast(48)); aot_gpr_5 = (aot_gpr_5 | 1024u); aot_mem.aot_direct_store32(aot_gpr_17 + static_cast(76), aot_gpr_5); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(10048))); aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(0))); aot_fpr_12 = aot_fpr_12 - aot_fpr_13; ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 <= aot_fpr_20)) ? 0x00800000u : 0u); { const bool branch_taken = ((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_08A7F020; } goto L_08A7EFC0; } L_08A7EFC0: ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 < ctx.fpr[22])) ? 0x00800000u : 0u); { const bool branch_taken = !((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_08A7F020; } goto L_08A7EFD0; } L_08A7EFD0: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(10052))); aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(4))); aot_fpr_12 = aot_fpr_12 - aot_fpr_13; ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 <= aot_fpr_20)) ? 0x00800000u : 0u); { const bool branch_taken = ((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_08A7F020; } goto L_08A7EFEC; } L_08A7EFEC: ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 < ctx.fpr[22])) ? 0x00800000u : 0u); { const bool branch_taken = !((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_08A7F020; } goto L_08A7EFFC; } L_08A7EFFC: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(10068))); aot_gpr_5 = (static_cast(aot_gpr_4) < 149 ? 1u : 0u); { const bool branch_taken = aot_gpr_5 == 0u; if (branch_taken) { goto L_08A7F020; } goto L_08A7F00C; } L_08A7F00C: aot_gpr_5 = (aot_gpr_4 << 2u); aot_gpr_5 = (aot_gpr_5 + ctx.gpr[20]); aot_mem.aot_direct_store32(aot_gpr_5 + static_cast(0), aot_gpr_17); aot_gpr_4 = (aot_gpr_4 + static_cast(1)); aot_mem.aot_direct_store32(ctx.gpr[28] + static_cast(10068), aot_gpr_4); goto L_08A7F020; L_08A7F020: { const bool branch_taken = 0u == 0u; if (branch_taken) { goto L_08A7F028; } goto L_08A7F028; } L_08A7F028: { const bool branch_taken = ctx.gpr[19] != 0u; if (branch_taken) { goto L_08A7ED28; } goto L_08A7F030; } L_08A7F030: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(16))); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(8))); aot_gpr_4 = (aot_gpr_4 + static_cast(-1)); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(8), aot_gpr_4); { const bool branch_taken = aot_gpr_5 != 0u; aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(16), aot_gpr_4); if (branch_taken) { goto L_08A7ED14; } goto L_08A7F048; } L_08A7F048: aot_fpr_20 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(20))); ctx.fpr[22] = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(24))); aot_gpr_16 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(28))); aot_gpr_17 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(32))); ctx.gpr[18] = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(36))); ctx.gpr[19] = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(40))); ctx.gpr[20] = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(44))); ctx.gpr[21] = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(48))); ctx.gpr[22] = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(52))); ctx.gpr[23] = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(56))); ctx.gpr[30] = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(60))); ctx.gpr[31] = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(64))); jump_target = ctx.gpr[31]; aot_gpr_29 = (aot_gpr_29 + static_cast(80)); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } // PSPRECOMP_V812_SHARED_SCHED_JUMP goto LOCAL_SCHED_BOUNDARY; L_08A7F080: // TIER2_SUPERBLOCK_V2_HOOK_BEGIN if (vcs::tier2_cluster_enabled(vcs::Tier2ClusterId::World) && rt.memory().direct_fastmem_enabled()) { AOT_REGCACHE_SYNC_OUT(); aot_regcache_valid = false; vcs::tier2_superblock_world(rt, ctx, aot_mem, 0x08A7F080u); AOT_REGCACHE_SYNC_OUT(); return; } // TIER2_SUPERBLOCK_V2_HOOK_END aot_gpr_29 = (aot_gpr_29 + static_cast(-80)); aot_gpr_5 = (0u | 12u); aot_gpr_6 = (aot_mem.aot_direct_load8(ctx.gpr[28] + static_cast(-7080))); aot_gpr_4 = (aot_gpr_4 + static_cast(8)); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(16), aot_gpr_5); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(20), std::bit_cast(aot_fpr_20)); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(24), std::bit_cast(ctx.fpr[22])); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(28), aot_gpr_16); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(32), aot_gpr_17); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(36), ctx.gpr[18]); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(40), ctx.gpr[19]); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(44), ctx.gpr[20]); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(48), ctx.gpr[21]); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(52), ctx.gpr[22]); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(56), ctx.gpr[23]); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(60), ctx.gpr[30]); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(64), ctx.gpr[31]); { const bool branch_taken = aot_gpr_6 == 0u; aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(12), aot_gpr_4); if (branch_taken) { goto L_08A7F0D4; } goto L_08A7F0CC; } L_08A7F0CC: aot_gpr_4 = (0u | 4u); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(16), aot_gpr_4); goto L_08A7F0D4; L_08A7F0D4: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(16))); aot_gpr_5 = (aot_gpr_4 + static_cast(-1)); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(8), aot_gpr_5); { const bool branch_taken = aot_gpr_4 == 0u; aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(16), aot_gpr_5); if (branch_taken) { goto L_08A7F4A0; } goto L_08A7F0E8; } L_08A7F0E8: aot_gpr_4 = (ctx.gpr[28] + static_cast(-5492)); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(4), aot_gpr_4); aot_gpr_4 = (49648u << 16u); aot_gpr_5 = (2280u << 16u); aot_fpr_20 = std::bit_cast(aot_gpr_4); aot_gpr_5 = (aot_gpr_5 + static_cast(-29568)); ctx.gpr[30] = (2280u << 16u); ctx.gpr[23] = (2279u << 16u); aot_gpr_4 = (16880u << 16u); ctx.gpr[20] = (2280u << 16u); ctx.fpr[22] = std::bit_cast(aot_gpr_4); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(0), aot_gpr_5); ctx.gpr[22] = (0u | 1u); ctx.gpr[21] = (0u | 3u); ctx.gpr[30] = (ctx.gpr[30] + static_cast(-21568)); ctx.gpr[23] = (ctx.gpr[23] + static_cast(27328)); ctx.gpr[20] = (ctx.gpr[20] + static_cast(-30208)); goto L_08A7F12C; L_08A7F12C: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(12))); ctx.gpr[19] = (aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(0))); aot_gpr_4 = (aot_gpr_4 + static_cast(4)); { const bool branch_taken = ctx.gpr[19] == 0u; aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(12), aot_gpr_4); if (branch_taken) { goto L_08A7F488; } goto L_08A7F140; } L_08A7F140: aot_gpr_17 = (aot_mem.aot_direct_load32(ctx.gpr[19] + static_cast(0))); aot_gpr_5 = (aot_mem.aot_direct_load16(aot_gpr_17 + static_cast(84))); aot_gpr_4 = (aot_mem.aot_direct_load16(ctx.gpr[28] + static_cast(-25492))); { const bool branch_taken = aot_gpr_5 == aot_gpr_4; ctx.gpr[19] = (aot_mem.aot_direct_load32(ctx.gpr[19] + static_cast(8))); if (branch_taken) { goto L_08A7F480; } goto L_08A7F154; } L_08A7F154: aot_gpr_6 = (aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(76))); aot_gpr_5 = (0u + static_cast(-1025)); aot_mem.aot_direct_store16(aot_gpr_17 + static_cast(84), static_cast(aot_gpr_4)); aot_gpr_4 = (aot_gpr_6 & aot_gpr_5); aot_mem.aot_direct_store32(aot_gpr_17 + static_cast(76), aot_gpr_4); ctx.gpr[31] = (0x08A7F170u); aot_gpr_4 = (aot_gpr_17 | 0u); goto L_08A7CEC8; L_08A7F170: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(76))); aot_gpr_6 = (4u << 16u); aot_gpr_6 = (aot_gpr_4 & aot_gpr_6); { const bool branch_taken = aot_gpr_6 == 0u; aot_gpr_5 = (ctx.gpr[2] | 0u); if (branch_taken) { goto L_08A7F1A4; } goto L_08A7F184; } L_08A7F184: aot_gpr_6 = (65532u << 16u); aot_gpr_6 = (aot_gpr_6 + static_cast(-1)); aot_gpr_4 = (aot_gpr_4 & aot_gpr_6); aot_gpr_6 = (aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(72))); aot_mem.aot_direct_store32(aot_gpr_17 + static_cast(76), aot_gpr_4); aot_gpr_4 = (8u << 16u); aot_gpr_4 = (aot_gpr_6 | aot_gpr_4); aot_mem.aot_direct_store32(aot_gpr_17 + static_cast(72), aot_gpr_4); goto L_08A7F1A4; L_08A7F1A4: aot_gpr_4 = (static_cast(aot_gpr_5) < 2 ? 1u : 0u); { const bool branch_taken = aot_gpr_4 == 0u; aot_gpr_4 = (static_cast(aot_gpr_5) < 3 ? 1u : 0u); if (branch_taken) { goto L_08A7F1C8; } goto L_08A7F1B0; } L_08A7F1B0: { const bool branch_taken = static_cast(aot_gpr_5) < 0; if (branch_taken) { goto L_08A7F480; } goto L_08A7F1B8; } L_08A7F1B8: { const bool branch_taken = static_cast(aot_gpr_5) <= 0; if (branch_taken) { goto L_08A7F37C; } goto L_08A7F1C0; } L_08A7F1C0: { const bool branch_taken = 0u == 0u; if (branch_taken) { goto L_08A7F248; } goto L_08A7F1C8; } L_08A7F1C8: { const bool branch_taken = aot_gpr_4 != 0u; aot_gpr_4 = (static_cast(aot_gpr_5) < 4 ? 1u : 0u); if (branch_taken) { goto L_08A7F3EC; } goto L_08A7F1D0; } L_08A7F1D0: { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_08A7F480; } goto L_08A7F1D8; } L_08A7F1D8: ctx.gpr[31] = (0x08A7F1E0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0179_entry, 179u, 542u, 0x08AD3220u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7F1E0u) goto L_08A7F1E0; AOT_REGCACHE_SYNC_OUT(); return; L_08A7F1E0: { const bool branch_taken = ctx.gpr[2] != 0u; if (branch_taken) { goto L_08A7F240; } goto L_08A7F1E8; } L_08A7F1E8: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(72))); aot_gpr_16 = (0u | 0u); aot_gpr_4 = (aot_gpr_4 & 14u); aot_gpr_4 = (aot_gpr_4 ^ 8u); aot_gpr_4 = (aot_gpr_4 < static_cast(1) ? 1u : 0u); aot_gpr_5 = (aot_gpr_4 & 255u); { const bool branch_taken = aot_gpr_5 == 0u; aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(aot_gpr_17 + static_cast(86)))))); if (branch_taken) { goto L_08A7F21C; } goto L_08A7F208; } L_08A7F208: ctx.gpr[31] = (0x08A7F210u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0179_entry, 179u, 607u, 0x08AD3698u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7F210u) goto L_08A7F210; AOT_REGCACHE_SYNC_OUT(); return; L_08A7F210: { const bool branch_taken = ctx.gpr[2] != 0u; aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(aot_gpr_17 + static_cast(86)))))); if (branch_taken) { goto L_08A7F21C; } goto L_08A7F218; } L_08A7F218: aot_gpr_16 = (0u | 32u); goto L_08A7F21C; L_08A7F21C: aot_gpr_6 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(4))); ctx.gpr[31] = (0x08A7F228u); aot_gpr_5 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0179_entry, 179u, 546u, 0x08AD3258u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7F228u) goto L_08A7F228; AOT_REGCACHE_SYNC_OUT(); return; L_08A7F228: ctx.gpr[31] = (0x08A7F230u); aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(aot_gpr_17 + static_cast(86)))))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0179_entry, 179u, 607u, 0x08AD3698u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7F230u) goto L_08A7F230; AOT_REGCACHE_SYNC_OUT(); return; L_08A7F230: { const bool branch_taken = ctx.gpr[2] != 0u; if (branch_taken) { goto L_08A7F240; } goto L_08A7F238; } L_08A7F238: aot_gpr_4 = (0u | 1u); aot_mem.aot_direct_store8(ctx.gpr[28] + static_cast(7640), static_cast(aot_gpr_4)); goto L_08A7F240; L_08A7F240: { const bool branch_taken = 0u == 0u; if (branch_taken) { goto L_08A7F480; } goto L_08A7F248; } L_08A7F248: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(72))); aot_gpr_4 = (aot_gpr_4 & 14u); aot_gpr_5 = (aot_gpr_4 ^ 4u); aot_gpr_5 = (aot_gpr_5 < static_cast(1) ? 1u : 0u); aot_gpr_5 = (aot_gpr_5 & 255u); { const bool branch_taken = aot_gpr_5 != 0u; if (branch_taken) { goto L_08A7F2A4; } goto L_08A7F264; } L_08A7F264: aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(76))); aot_gpr_6 = (1u << 16u); aot_gpr_6 = (aot_gpr_5 & aot_gpr_6); aot_gpr_6 = (0u < aot_gpr_6 ? 1u : 0u); aot_gpr_6 = (aot_gpr_6 & 255u); { const bool branch_taken = aot_gpr_6 != 0u; aot_gpr_6 = (aot_gpr_4 ^ 6u); if (branch_taken) { goto L_08A7F2A4; } goto L_08A7F280; } L_08A7F280: aot_gpr_6 = (aot_gpr_6 < static_cast(1) ? 1u : 0u); aot_gpr_6 = (aot_gpr_6 & 255u); { const bool branch_taken = aot_gpr_6 != 0u; aot_gpr_6 = (2u << 16u); if (branch_taken) { goto L_08A7F2A4; } goto L_08A7F290; } L_08A7F290: aot_gpr_5 = (aot_gpr_5 & aot_gpr_6); aot_gpr_5 = (0u < aot_gpr_5 ? 1u : 0u); aot_gpr_5 = (aot_gpr_5 & 255u); { const bool branch_taken = aot_gpr_5 == 0u; if (branch_taken) { goto L_08A7F2C4; } goto L_08A7F2A4; } L_08A7F2A4: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(10072))); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(0))); aot_gpr_6 = (aot_gpr_4 << 2u); aot_gpr_4 = (aot_gpr_4 + static_cast(1)); aot_gpr_5 = (aot_gpr_6 + aot_gpr_5); aot_mem.aot_direct_store32(ctx.gpr[28] + static_cast(10072), aot_gpr_4); { const bool branch_taken = 0u == 0u; aot_mem.aot_direct_store32(aot_gpr_5 + static_cast(0), aot_gpr_17); if (branch_taken) { goto L_08A7F374; } goto L_08A7F2C4; } L_08A7F2C4: aot_gpr_4 = (aot_gpr_4 ^ 10u); aot_gpr_4 = (aot_gpr_4 < static_cast(1) ? 1u : 0u); aot_gpr_4 = (aot_gpr_4 & 255u); { const bool branch_taken = aot_gpr_4 == 0u; ctx.gpr[18] = (0u | 0u); if (branch_taken) { goto L_08A7F2FC; } goto L_08A7F2D8; } L_08A7F2D8: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(5844))); { const bool branch_taken = aot_gpr_4 != 0u; aot_gpr_16 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(aot_gpr_17 + static_cast(86)))))); if (branch_taken) { goto L_08A7F2EC; } goto L_08A7F2E4; } L_08A7F2E4: ctx.gpr[31] = (0x08A7F2ECu); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 339u, 0x08B6572Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7F2ECu) goto L_08A7F2EC; AOT_REGCACHE_SYNC_OUT(); return; L_08A7F2EC: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(5844))); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(276))); if (aot_gpr_16 != aot_gpr_4) { ctx.gpr[18] = (ctx.gpr[22] | 0u); goto L_08A7F334; } goto L_08A7F2FC; L_08A7F2FC: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(72))); aot_gpr_4 = (aot_gpr_4 & 14u); aot_gpr_4 = (aot_gpr_4 ^ 8u); aot_gpr_4 = (aot_gpr_4 < static_cast(1) ? 1u : 0u); aot_gpr_4 = (aot_gpr_4 & 255u); { const bool branch_taken = aot_gpr_4 == 0u; aot_gpr_4 = (ctx.gpr[18] & 255u); if (branch_taken) { goto L_08A7F338; } goto L_08A7F318; } L_08A7F318: aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load8(aot_gpr_17 + static_cast(483)))))); aot_gpr_4 = (aot_gpr_4 & 16u); aot_gpr_4 = (0u < aot_gpr_4 ? 1u : 0u); aot_gpr_4 = (aot_gpr_4 & 255u); { const bool branch_taken = aot_gpr_4 == 0u; aot_gpr_4 = (ctx.gpr[18] & 255u); if (branch_taken) { goto L_08A7F338; } goto L_08A7F330; } L_08A7F330: ctx.gpr[18] = (ctx.gpr[22] | 0u); goto L_08A7F334; L_08A7F334: aot_gpr_4 = (ctx.gpr[18] & 255u); goto L_08A7F338; L_08A7F338: { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_08A7F35C; } goto L_08A7F340; } L_08A7F340: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(10076))); aot_gpr_5 = (aot_gpr_4 << 2u); aot_gpr_4 = (aot_gpr_4 + static_cast(1)); aot_gpr_5 = (aot_gpr_5 + ctx.gpr[30]); aot_mem.aot_direct_store32(ctx.gpr[28] + static_cast(10076), aot_gpr_4); { const bool branch_taken = 0u == 0u; aot_mem.aot_direct_store32(aot_gpr_5 + static_cast(0), aot_gpr_17); if (branch_taken) { goto L_08A7F374; } goto L_08A7F35C; } L_08A7F35C: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(10064))); aot_gpr_5 = (aot_gpr_4 << 2u); aot_gpr_4 = (aot_gpr_4 + static_cast(1)); aot_gpr_5 = (aot_gpr_5 + ctx.gpr[23]); aot_mem.aot_direct_store32(ctx.gpr[28] + static_cast(10064), aot_gpr_4); aot_mem.aot_direct_store32(aot_gpr_5 + static_cast(0), aot_gpr_17); goto L_08A7F374; L_08A7F374: { const bool branch_taken = 0u == 0u; if (branch_taken) { goto L_08A7F480; } goto L_08A7F37C; } L_08A7F37C: aot_gpr_5 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(aot_gpr_17 + static_cast(86)))))); aot_gpr_6 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(7656))); aot_gpr_6 = (static_cast(aot_gpr_5) < static_cast(aot_gpr_6) ? 1u : 0u); { const bool branch_taken = aot_gpr_6 == 0u; aot_gpr_4 = (0u | 0u); if (branch_taken) { goto L_08A7F3A0; } goto L_08A7F390; } L_08A7F390: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(24))); aot_gpr_5 = (aot_gpr_5 << 2u); aot_gpr_4 = (aot_gpr_4 + aot_gpr_5); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(0))); goto L_08A7F3A0; L_08A7F3A0: aot_gpr_5 = (aot_mem.aot_direct_load8(aot_gpr_4 + static_cast(16))); if (aot_gpr_5 == ctx.gpr[22]) { aot_gpr_5 = (aot_mem.aot_direct_load16(aot_gpr_4 + static_cast(58))); goto L_08A7F3BC; } goto L_08A7F3AC; L_08A7F3AC: if (aot_gpr_5 == ctx.gpr[21]) { aot_gpr_5 = (aot_mem.aot_direct_load16(aot_gpr_4 + static_cast(58))); goto L_08A7F3BC; } goto L_08A7F3B4; L_08A7F3B4: { const bool branch_taken = 0u == 0u; aot_gpr_4 = (0u | 0u); if (branch_taken) { goto L_08A7F3DC; } goto L_08A7F3BC; } L_08A7F3BC: aot_gpr_6 = (aot_gpr_5 & 8192u); { const bool branch_taken = aot_gpr_6 != 0u; aot_gpr_4 = (0u | 0u); if (branch_taken) { goto L_08A7F3D4; } goto L_08A7F3C8; } L_08A7F3C8: aot_gpr_5 = (aot_gpr_5 & 16384u); { const bool branch_taken = aot_gpr_5 == 0u; aot_gpr_4 = (aot_gpr_4 & 255u); if (branch_taken) { goto L_08A7F3DC; } goto L_08A7F3D4; } L_08A7F3D4: aot_gpr_4 = (ctx.gpr[22] | 0u); aot_gpr_4 = (aot_gpr_4 & 255u); goto L_08A7F3DC; L_08A7F3DC: { const bool branch_taken = aot_gpr_4 != 0u; if (branch_taken) { goto L_08A7F3EC; } goto L_08A7F3E4; } L_08A7F3E4: { const bool branch_taken = 0u == 0u; if (branch_taken) { goto L_08A7F480; } goto L_08A7F3EC; } L_08A7F3EC: aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(76))); aot_gpr_4 = (aot_gpr_17 + static_cast(48)); aot_gpr_5 = (aot_gpr_5 | 1024u); aot_mem.aot_direct_store32(aot_gpr_17 + static_cast(76), aot_gpr_5); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(10048))); aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(0))); aot_fpr_12 = aot_fpr_12 - aot_fpr_13; ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 <= aot_fpr_20)) ? 0x00800000u : 0u); { const bool branch_taken = ((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_08A7F478; } goto L_08A7F418; } L_08A7F418: ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 < ctx.fpr[22])) ? 0x00800000u : 0u); { const bool branch_taken = !((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_08A7F478; } goto L_08A7F428; } L_08A7F428: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(10052))); aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(4))); aot_fpr_12 = aot_fpr_12 - aot_fpr_13; ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 <= aot_fpr_20)) ? 0x00800000u : 0u); { const bool branch_taken = ((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_08A7F478; } goto L_08A7F444; } L_08A7F444: ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 < ctx.fpr[22])) ? 0x00800000u : 0u); { const bool branch_taken = !((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_08A7F478; } goto L_08A7F454; } L_08A7F454: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(10068))); aot_gpr_5 = (static_cast(aot_gpr_4) < 149 ? 1u : 0u); { const bool branch_taken = aot_gpr_5 == 0u; if (branch_taken) { goto L_08A7F478; } goto L_08A7F464; } L_08A7F464: aot_gpr_5 = (aot_gpr_4 << 2u); aot_gpr_5 = (aot_gpr_5 + ctx.gpr[20]); aot_mem.aot_direct_store32(aot_gpr_5 + static_cast(0), aot_gpr_17); aot_gpr_4 = (aot_gpr_4 + static_cast(1)); aot_mem.aot_direct_store32(ctx.gpr[28] + static_cast(10068), aot_gpr_4); goto L_08A7F478; L_08A7F478: { const bool branch_taken = 0u == 0u; if (branch_taken) { goto L_08A7F480; } goto L_08A7F480; } L_08A7F480: { const bool branch_taken = ctx.gpr[19] != 0u; if (branch_taken) { goto L_08A7F140; } goto L_08A7F488; } L_08A7F488: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(16))); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(8))); aot_gpr_4 = (aot_gpr_4 + static_cast(-1)); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(8), aot_gpr_4); { const bool branch_taken = aot_gpr_5 != 0u; aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(16), aot_gpr_4); if (branch_taken) { goto L_08A7F12C; } goto L_08A7F4A0; } L_08A7F4A0: aot_fpr_20 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(20))); ctx.fpr[22] = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(24))); aot_gpr_16 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(28))); aot_gpr_17 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(32))); ctx.gpr[18] = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(36))); ctx.gpr[19] = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(40))); ctx.gpr[20] = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(44))); ctx.gpr[21] = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(48))); ctx.gpr[22] = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(52))); ctx.gpr[23] = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(56))); ctx.gpr[30] = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(60))); ctx.gpr[31] = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(64))); jump_target = ctx.gpr[31]; aot_gpr_29 = (aot_gpr_29 + static_cast(80)); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } // PSPRECOMP_V812_SHARED_SCHED_JUMP goto LOCAL_SCHED_BOUNDARY; L_08A7F4D8: aot_gpr_4 = (2234u << 16u); aot_gpr_4 = (aot_gpr_4 + static_cast(7840)); jump_target = ctx.gpr[31]; aot_mem.aot_direct_store32(aot_gpr_4 + static_cast(64), 0u); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } // PSPRECOMP_V812_SHARED_SCHED_JUMP goto LOCAL_SCHED_BOUNDARY; L_08A7F4E8: { const std::uint32_t vfpu_address = aot_gpr_6 + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<1u, 4u>(vfpu_value); } { const std::uint32_t vfpu_address = aot_gpr_5 + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<4u, 4u>(vfpu_value); } { const std::uint32_t vfpu_address = aot_gpr_5 + static_cast(16); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<5u, 4u>(vfpu_value); } { const std::uint32_t vfpu_address = aot_gpr_5 + static_cast(32); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<6u, 4u>(vfpu_value); } { const std::uint32_t vfpu_address = aot_gpr_5 + static_cast(48); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<7u, 4u>(vfpu_value); } ctx.execute_vfpu_vtfm_ct<0u, 36u, 1u, 3u, 3u>(); ctx.execute_vfpu_vec3_ct<0u, 0u, 7u, 3u, 0u>(); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = aot_gpr_4 + static_cast(0); const std::uint32_t vfpu_words[4]{std::bit_cast(vfpu_value[0]), std::bit_cast(vfpu_value[1]), std::bit_cast(vfpu_value[2]), std::bit_cast(vfpu_value[3])}; aot_mem.aot_direct_store32_block(vfpu_address, vfpu_words); } jump_target = ctx.gpr[31]; local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } // PSPRECOMP_V812_SHARED_SCHED_JUMP goto LOCAL_SCHED_BOUNDARY; L_08A7F510: aot_gpr_29 = (aot_gpr_29 + static_cast(-48)); ctx.gpr[7] = (aot_gpr_5 | 0u); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(104))); aot_gpr_4 = (aot_gpr_5 | 0u); aot_gpr_6 = (aot_gpr_4 + static_cast(4)); aot_gpr_6 = (aot_mem.aot_direct_load32(aot_gpr_6 + static_cast(0))); { const bool branch_taken = aot_gpr_6 == 0u; if (branch_taken) { goto L_08A7F564; } goto L_08A7F530; } L_08A7F530: aot_mem.aot_direct_store8(aot_gpr_29 + static_cast(16), static_cast(0u)); ctx.gpr[8] = (aot_mem.aot_direct_load32(aot_gpr_6 + static_cast(16))); goto L_08A7F538; L_08A7F538: ctx.gpr[8] = (ctx.gpr[8] < ctx.gpr[7] ? 1u : 0u); ctx.gpr[8] = (ctx.gpr[8] & 255u); if (ctx.gpr[8] != 0u) { aot_gpr_6 = (aot_gpr_6 + static_cast(12)); goto L_08A7F558; } goto L_08A7F548; L_08A7F548: aot_gpr_4 = (aot_gpr_6 | 0u); aot_gpr_6 = (aot_gpr_4 + static_cast(8)); { const bool branch_taken = 0u == 0u; aot_gpr_6 = (aot_mem.aot_direct_load32(aot_gpr_6 + static_cast(0))); if (branch_taken) { goto L_08A7F55C; } goto L_08A7F558; } L_08A7F558: aot_gpr_6 = (aot_mem.aot_direct_load32(aot_gpr_6 + static_cast(0))); goto L_08A7F55C; L_08A7F55C: if (aot_gpr_6 != 0u) { ctx.gpr[8] = (aot_mem.aot_direct_load32(aot_gpr_6 + static_cast(16))); goto L_08A7F538; } goto L_08A7F564; L_08A7F564: if (aot_gpr_4 == aot_gpr_5) { aot_gpr_4 = (aot_gpr_5 | 0u); goto L_08A7F588; } goto L_08A7F56C; L_08A7F56C: aot_mem.aot_direct_store8(aot_gpr_29 + static_cast(17), static_cast(0u)); aot_gpr_6 = (aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(16))); aot_gpr_6 = (ctx.gpr[7] < aot_gpr_6 ? 1u : 0u); aot_gpr_6 = (aot_gpr_6 & 255u); if (aot_gpr_6 == 0u) { aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(12), aot_gpr_4); goto L_08A7F58C; } goto L_08A7F584; L_08A7F584: aot_gpr_4 = (aot_gpr_5 | 0u); goto L_08A7F588; L_08A7F588: aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(12), aot_gpr_4); goto L_08A7F58C; L_08A7F58C: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(12))); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(28), aot_gpr_5); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(8), aot_gpr_4); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(28))); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(8))); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(4), aot_gpr_4); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(4))); aot_gpr_4 = (aot_gpr_5 ^ aot_gpr_4); aot_gpr_4 = (aot_gpr_4 < static_cast(1) ? 1u : 0u); aot_gpr_4 = (aot_gpr_4 & 255u); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_08A7F5C4; } goto L_08A7F5BC; } L_08A7F5BC: { const bool branch_taken = 0u == 0u; ctx.gpr[2] = (0u | 0u); if (branch_taken) { goto L_08A7F5C8; } goto L_08A7F5C4; } L_08A7F5C4: ctx.gpr[2] = (aot_mem.aot_direct_load32(aot_gpr_5 + static_cast(20))); goto L_08A7F5C8; L_08A7F5C8: jump_target = ctx.gpr[31]; aot_gpr_29 = (aot_gpr_29 + static_cast(48)); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } // PSPRECOMP_V812_SHARED_SCHED_JUMP goto LOCAL_SCHED_BOUNDARY; L_08A7F5D0: aot_gpr_6 = (aot_gpr_5 + static_cast(32)); ctx.gpr[7] = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(aot_gpr_6 + static_cast(14)))))); aot_mem.aot_direct_store32(aot_gpr_4 + static_cast(0), ctx.gpr[7]); ctx.gpr[7] = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(aot_gpr_6 + static_cast(8)))))); aot_mem.aot_direct_store32(aot_gpr_4 + static_cast(4), ctx.gpr[7]); ctx.gpr[7] = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(aot_gpr_6 + static_cast(2)))))); aot_mem.aot_direct_store32(aot_gpr_4 + static_cast(8), ctx.gpr[7]); ctx.gpr[7] = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(aot_gpr_6 + static_cast(20)))))); aot_mem.aot_direct_store32(aot_gpr_4 + static_cast(12), ctx.gpr[7]); ctx.gpr[7] = (aot_mem.aot_direct_load32(aot_gpr_5 + static_cast(116))); aot_mem.aot_direct_store32(aot_gpr_4 + static_cast(16), ctx.gpr[7]); ctx.gpr[7] = (aot_mem.aot_direct_load32(aot_gpr_5 + static_cast(112))); aot_mem.aot_direct_store32(aot_gpr_4 + static_cast(20), ctx.gpr[7]); ctx.gpr[7] = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(aot_gpr_6 + static_cast(12)))))); aot_mem.aot_direct_store32(aot_gpr_4 + static_cast(24), ctx.gpr[7]); ctx.gpr[7] = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(aot_gpr_6 + static_cast(6)))))); aot_mem.aot_direct_store32(aot_gpr_4 + static_cast(28), ctx.gpr[7]); ctx.gpr[7] = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(aot_gpr_6 + static_cast(0)))))); aot_mem.aot_direct_store32(aot_gpr_4 + static_cast(32), ctx.gpr[7]); ctx.gpr[7] = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(aot_gpr_6 + static_cast(18)))))); aot_mem.aot_direct_store32(aot_gpr_4 + static_cast(36), ctx.gpr[7]); ctx.gpr[7] = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load8(aot_gpr_6 + static_cast(17)))))); aot_mem.aot_direct_store8(aot_gpr_4 + static_cast(44), static_cast(ctx.gpr[7])); ctx.gpr[7] = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load8(aot_gpr_6 + static_cast(11)))))); aot_mem.aot_direct_store8(aot_gpr_4 + static_cast(45), static_cast(ctx.gpr[7])); ctx.gpr[7] = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load8(aot_gpr_6 + static_cast(5)))))); aot_mem.aot_direct_store8(aot_gpr_4 + static_cast(46), static_cast(ctx.gpr[7])); ctx.gpr[7] = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load8(aot_gpr_6 + static_cast(23)))))); aot_mem.aot_direct_store8(aot_gpr_4 + static_cast(47), static_cast(ctx.gpr[7])); ctx.gpr[7] = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load8(aot_gpr_6 + static_cast(16)))))); aot_mem.aot_direct_store8(aot_gpr_4 + static_cast(48), static_cast(ctx.gpr[7])); ctx.gpr[7] = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load8(aot_gpr_6 + static_cast(22)))))); aot_mem.aot_direct_store8(aot_gpr_4 + static_cast(49), static_cast(ctx.gpr[7])); ctx.gpr[7] = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load8(aot_gpr_6 + static_cast(10)))))); aot_mem.aot_direct_store8(aot_gpr_4 + static_cast(50), static_cast(ctx.gpr[7])); aot_gpr_6 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load8(aot_gpr_6 + static_cast(4)))))); aot_mem.aot_direct_store8(aot_gpr_4 + static_cast(51), static_cast(aot_gpr_6)); aot_gpr_6 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load8(aot_gpr_5 + static_cast(151)))))); aot_mem.aot_direct_store8(aot_gpr_4 + static_cast(52), static_cast(aot_gpr_6)); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_5 + static_cast(136))); aot_fpr_12 = std::bit_cast(ctx.fpu_float_to_word_ct<1u>(aot_fpr_12)); ctx.gpr[2] = (aot_gpr_4 | 0u); aot_gpr_6 = (std::bit_cast(aot_fpr_12)); aot_mem.aot_direct_store8(aot_gpr_4 + static_cast(53), static_cast(aot_gpr_6)); aot_gpr_6 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load8(aot_gpr_5 + static_cast(149)))))); aot_mem.aot_direct_store8(aot_gpr_4 + static_cast(54), static_cast(aot_gpr_6)); aot_gpr_5 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load8(aot_gpr_5 + static_cast(148)))))); jump_target = ctx.gpr[31]; aot_mem.aot_direct_store8(aot_gpr_4 + static_cast(55), static_cast(aot_gpr_5)); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } // PSPRECOMP_V812_SHARED_SCHED_JUMP goto LOCAL_SCHED_BOUNDARY; L_08A7F694: aot_gpr_29 = (aot_gpr_29 + static_cast(-48)); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(16), aot_gpr_16); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(20), aot_gpr_17); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(24), ctx.gpr[18]); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(28), ctx.gpr[19]); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(32), ctx.gpr[31]); ctx.gpr[31] = (0x08A7F6B4u); aot_gpr_16 = (aot_gpr_4 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0162_entry, 162u, 273u, 0x08A8D728u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7F6B4u) goto L_08A7F6B4; AOT_REGCACHE_SYNC_OUT(); return; L_08A7F6B4: aot_gpr_4 = (2235u << 16u); aot_gpr_4 = (aot_gpr_4 + static_cast(-28596)); aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(4), aot_gpr_4); aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(176), static_cast(0u)); aot_fpr_12 = std::bit_cast(0u); aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load8(aot_gpr_16 + static_cast(204)))))); aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(180), std::bit_cast(aot_fpr_12)); aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(184), std::bit_cast(aot_fpr_12)); aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(188), std::bit_cast(aot_fpr_12)); aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(192), static_cast(0u)); aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(193), static_cast(0u)); aot_gpr_5 = (0u + static_cast(-3)); aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(194), static_cast(0u)); aot_gpr_4 = (aot_gpr_4 & aot_gpr_5); aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(195), static_cast(0u)); aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(204), static_cast(aot_gpr_4)); aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(196), static_cast(0u)); aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(200), std::bit_cast(aot_fpr_12)); aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load8(aot_gpr_16 + static_cast(204)))))); aot_gpr_5 = (0u + static_cast(-9)); aot_gpr_4 = (aot_gpr_4 & aot_gpr_5); aot_gpr_5 = (0u + static_cast(-1)); aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(204), static_cast(aot_gpr_4)); aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(205), static_cast(aot_gpr_5)); aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(206), static_cast(aot_gpr_5)); aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(207), static_cast(aot_gpr_5)); aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(208), static_cast(aot_gpr_5)); aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(448), static_cast(0u)); aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(452), aot_gpr_5); aot_gpr_4 = (17530u << 16u); aot_fpr_13 = std::bit_cast(aot_gpr_4); aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(460), std::bit_cast(aot_fpr_12)); aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(456), std::bit_cast(aot_fpr_13)); aot_gpr_4 = (0u | 1u); aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(464), static_cast(0u)); aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(524), static_cast(aot_gpr_4)); aot_gpr_4 = (aot_gpr_16 + static_cast(209)); aot_gpr_5 = (0u | 0u); aot_gpr_6 = (aot_gpr_16 + static_cast(213)); ctx.gpr[7] = (aot_gpr_16 + static_cast(232)); ctx.gpr[8] = (aot_gpr_16 + static_cast(248)); ctx.gpr[9] = (aot_gpr_16 + static_cast(264)); ctx.gpr[10] = (aot_gpr_16 + static_cast(280)); ctx.gpr[11] = (aot_gpr_16 + static_cast(296)); { const bool branch_taken = aot_gpr_4 == aot_gpr_6; ctx.gpr[19] = (aot_gpr_16 + static_cast(448)); if (branch_taken) { goto L_08A7F77C; } goto L_08A7F76C; } L_08A7F76C: aot_mem.aot_direct_store8(aot_gpr_4 + static_cast(0), static_cast(aot_gpr_5)); goto L_08A7F770; L_08A7F770: aot_gpr_4 = (aot_gpr_4 + static_cast(1)); if (aot_gpr_4 != aot_gpr_6) { aot_mem.aot_direct_store8(aot_gpr_4 + static_cast(0), static_cast(aot_gpr_5)); goto L_08A7F770; } goto L_08A7F77C; L_08A7F77C: aot_gpr_4 = (aot_gpr_16 + static_cast(216)); { const bool branch_taken = aot_gpr_4 == ctx.gpr[7]; aot_gpr_5 = (0u | 0u); if (branch_taken) { goto L_08A7F798; } goto L_08A7F788; } L_08A7F788: aot_mem.aot_direct_store32(aot_gpr_4 + static_cast(0), aot_gpr_5); goto L_08A7F78C; L_08A7F78C: aot_gpr_4 = (aot_gpr_4 + static_cast(4)); if (aot_gpr_4 != ctx.gpr[7]) { aot_mem.aot_direct_store32(aot_gpr_4 + static_cast(0), aot_gpr_5); goto L_08A7F78C; } goto L_08A7F798; L_08A7F798: { const bool branch_taken = ctx.gpr[7] == ctx.gpr[8]; if (branch_taken) { goto L_08A7F7B0; } goto L_08A7F7A0; } L_08A7F7A0: aot_mem.aot_direct_store32(ctx.gpr[7] + static_cast(0), std::bit_cast(aot_fpr_12)); goto L_08A7F7A4; L_08A7F7A4: ctx.gpr[7] = (ctx.gpr[7] + static_cast(4)); if (ctx.gpr[7] != ctx.gpr[8]) { aot_mem.aot_direct_store32(ctx.gpr[7] + static_cast(0), std::bit_cast(aot_fpr_12)); goto L_08A7F7A4; } goto L_08A7F7B0; L_08A7F7B0: { const bool branch_taken = ctx.gpr[8] == ctx.gpr[9]; if (branch_taken) { goto L_08A7F7C8; } goto L_08A7F7B8; } L_08A7F7B8: aot_mem.aot_direct_store32(ctx.gpr[8] + static_cast(0), std::bit_cast(aot_fpr_12)); goto L_08A7F7BC; L_08A7F7BC: ctx.gpr[8] = (ctx.gpr[8] + static_cast(4)); if (ctx.gpr[8] != ctx.gpr[9]) { aot_mem.aot_direct_store32(ctx.gpr[8] + static_cast(0), std::bit_cast(aot_fpr_12)); goto L_08A7F7BC; } goto L_08A7F7C8; L_08A7F7C8: { const bool branch_taken = ctx.gpr[9] == ctx.gpr[10]; if (branch_taken) { goto L_08A7F7E0; } goto L_08A7F7D0; } L_08A7F7D0: aot_mem.aot_direct_store32(ctx.gpr[9] + static_cast(0), std::bit_cast(aot_fpr_12)); goto L_08A7F7D4; L_08A7F7D4: ctx.gpr[9] = (ctx.gpr[9] + static_cast(4)); if (ctx.gpr[9] != ctx.gpr[10]) { aot_mem.aot_direct_store32(ctx.gpr[9] + static_cast(0), std::bit_cast(aot_fpr_12)); goto L_08A7F7D4; } goto L_08A7F7E0; L_08A7F7E0: { const bool branch_taken = ctx.gpr[10] == ctx.gpr[11]; if (branch_taken) { goto L_08A7F7F8; } goto L_08A7F7E8; } L_08A7F7E8: aot_mem.aot_direct_store32(ctx.gpr[10] + static_cast(0), std::bit_cast(aot_fpr_12)); goto L_08A7F7EC; L_08A7F7EC: ctx.gpr[10] = (ctx.gpr[10] + static_cast(4)); if (ctx.gpr[10] != ctx.gpr[11]) { aot_mem.aot_direct_store32(ctx.gpr[10] + static_cast(0), std::bit_cast(aot_fpr_12)); goto L_08A7F7EC; } goto L_08A7F7F8; L_08A7F7F8: aot_gpr_17 = (0u | 0u); ctx.gpr[18] = (aot_gpr_16 + static_cast(304)); goto L_08A7F800; L_08A7F800: aot_gpr_4 = (ctx.gpr[18] | 0u); aot_gpr_5 = (0u | 0u); ctx.gpr[31] = (0x08A7F810u); aot_gpr_6 = (0u | 32u); if (([&]() { /*PSPRECOMP_RESIDENT_SCHED_SAFE*/ if (rt.resident_generated_leaf_fast_allowed()) return rt.invoke_resident_generated_leaf<&vcs_resident_region_08B5814C, 213u, 28u, 0x08B5814Cu>(ctx, &aot_mem, ctx.pc, ctx.gpr[2], aot_gpr_4, aot_gpr_5, aot_gpr_6, ctx.gpr[7], ctx.gpr[8], ctx.gpr[9], ctx.gpr[31]); AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_resident_scheduler_fallback<&recomp_unit_0213_entry, 213u, 28u, 0x08B5814Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7F810u) goto L_08A7F810; AOT_REGCACHE_SYNC_OUT(); return; L_08A7F810: aot_gpr_17 = (aot_gpr_17 + static_cast(1)); aot_gpr_4 = (static_cast(aot_gpr_17) < 4 ? 1u : 0u); { const bool branch_taken = aot_gpr_4 != 0u; ctx.gpr[18] = (ctx.gpr[18] + static_cast(32)); if (branch_taken) { goto L_08A7F800; } goto L_08A7F820; } L_08A7F820: aot_gpr_4 = (aot_gpr_16 + static_cast(432)); { const bool branch_taken = aot_gpr_4 == ctx.gpr[19]; aot_gpr_5 = (0u | 0u); if (branch_taken) { goto L_08A7F83C; } goto L_08A7F82C; } L_08A7F82C: aot_mem.aot_direct_store32(aot_gpr_4 + static_cast(0), aot_gpr_5); goto L_08A7F830; L_08A7F830: aot_gpr_4 = (aot_gpr_4 + static_cast(4)); if (aot_gpr_4 != ctx.gpr[19]) { aot_mem.aot_direct_store32(aot_gpr_4 + static_cast(0), aot_gpr_5); goto L_08A7F830; } goto L_08A7F83C; L_08A7F83C: ctx.gpr[2] = (aot_gpr_16 | 0u); aot_gpr_16 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(16))); aot_gpr_17 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(20))); ctx.gpr[18] = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(24))); ctx.gpr[19] = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(28))); ctx.gpr[31] = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(32))); jump_target = ctx.gpr[31]; aot_gpr_29 = (aot_gpr_29 + static_cast(48)); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } // PSPRECOMP_V812_SHARED_SCHED_JUMP goto LOCAL_SCHED_BOUNDARY; L_08A7F85C: aot_gpr_29 = (aot_gpr_29 + static_cast(-16)); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(0), aot_gpr_16); aot_gpr_16 = (aot_gpr_5 | 0u); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(4), aot_gpr_17); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(8), ctx.gpr[18]); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(12), ctx.gpr[31]); ctx.gpr[31] = (0x08A7F87Cu); aot_gpr_17 = (aot_gpr_4 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0162_entry, 162u, 275u, 0x08A8D7B0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7F87Cu) goto L_08A7F87C; AOT_REGCACHE_SYNC_OUT(); return; L_08A7F87C: aot_gpr_4 = (2235u << 16u); aot_gpr_4 = (aot_gpr_4 + static_cast(-28596)); aot_mem.aot_direct_store32(aot_gpr_17 + static_cast(4), aot_gpr_4); aot_gpr_4 = (aot_mem.aot_direct_load16(aot_gpr_16 + static_cast(692))); aot_fpr_12 = std::bit_cast(aot_gpr_4); aot_fpr_12 = static_cast(static_cast(std::bit_cast(aot_fpr_12))); aot_mem.aot_direct_store32(aot_gpr_17 + static_cast(460), std::bit_cast(aot_fpr_12)); aot_gpr_4 = (aot_gpr_17 + static_cast(468)); aot_gpr_5 = (aot_gpr_16 + static_cast(384)); aot_gpr_6 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load8(aot_gpr_16 + static_cast(694)))))); ctx.gpr[31] = (0x08A7F8ACu); aot_mem.aot_direct_store8(aot_gpr_17 + static_cast(464), static_cast(aot_gpr_6)); goto L_08A7F5D0; L_08A7F8AC: aot_gpr_4 = (aot_mem.aot_direct_load8(aot_gpr_16 + static_cast(612))); aot_mem.aot_direct_store8(aot_gpr_17 + static_cast(524), static_cast(aot_gpr_4)); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(680))); aot_mem.aot_direct_store32(aot_gpr_17 + static_cast(528), aot_gpr_4); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(600))); aot_mem.aot_direct_store32(aot_gpr_17 + static_cast(180), std::bit_cast(aot_fpr_12)); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(604))); aot_mem.aot_direct_store32(aot_gpr_17 + static_cast(184), std::bit_cast(aot_fpr_12)); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(608))); aot_mem.aot_direct_store32(aot_gpr_17 + static_cast(188), std::bit_cast(aot_fpr_12)); aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load8(aot_gpr_16 + static_cast(613)))))); aot_gpr_4 = (aot_gpr_4 & 32u); aot_gpr_4 = (aot_gpr_4 >> 5u); aot_mem.aot_direct_store8(aot_gpr_17 + static_cast(192), static_cast(aot_gpr_4)); aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load8(aot_gpr_16 + static_cast(620)))))); aot_mem.aot_direct_store8(aot_gpr_17 + static_cast(206), static_cast(aot_gpr_4)); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(72))); aot_gpr_4 = (aot_gpr_4 & 496u); aot_gpr_4 = (aot_gpr_4 >> 4u); aot_mem.aot_direct_store8(aot_gpr_17 + static_cast(194), static_cast(aot_gpr_4)); aot_gpr_4 = (aot_mem.aot_direct_load8(aot_gpr_16 + static_cast(644))); aot_mem.aot_direct_store8(aot_gpr_17 + static_cast(196), static_cast(aot_gpr_4)); aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load8(aot_gpr_16 + static_cast(616)))))); aot_gpr_4 = (aot_gpr_4 & 2u); aot_gpr_4 = (aot_gpr_4 >> 1u); aot_mem.aot_direct_store8(aot_gpr_17 + static_cast(193), static_cast(aot_gpr_4)); aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load8(aot_gpr_16 + static_cast(618)))))); aot_gpr_4 = (aot_gpr_4 & 32u); aot_gpr_4 = (aot_gpr_4 >> 5u); aot_mem.aot_direct_store8(aot_gpr_17 + static_cast(176), static_cast(aot_gpr_4)); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(648))); aot_mem.aot_direct_store32(aot_gpr_17 + static_cast(200), std::bit_cast(aot_fpr_12)); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(636))); aot_mem.aot_direct_store32(aot_gpr_17 + static_cast(456), std::bit_cast(aot_fpr_12)); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(900))); { const bool branch_taken = aot_gpr_4 == 0u; ctx.gpr[18] = (0u | 0u); if (branch_taken) { goto L_08A7F954; } goto L_08A7F940; } L_08A7F940: ctx.gpr[31] = (0x08A7F948u); if (([&]() { /*PSPRECOMP_RESIDENT_SCHED_SAFE*/ if (rt.resident_generated_leaf_fast_allowed()) return rt.invoke_resident_generated_leaf<&vcs_resident_region_0890D44C, 66u, 315u, 0x0890D44Cu>(ctx, &aot_mem, ctx.pc, ctx.gpr[2], aot_gpr_4, ctx.gpr[31]); AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_resident_scheduler_fallback<&recomp_unit_0066_entry, 66u, 315u, 0x0890D44Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7F948u) goto L_08A7F948; AOT_REGCACHE_SYNC_OUT(); return; L_08A7F948: { const bool branch_taken = ctx.gpr[2] == 0u; if (branch_taken) { goto L_08A7F954; } goto L_08A7F950; } L_08A7F950: ctx.gpr[18] = (0u | 1u); goto L_08A7F954; L_08A7F954: aot_gpr_4 = (ctx.gpr[18] & 255u); aot_gpr_5 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load8(aot_gpr_17 + static_cast(204)))))); aot_gpr_4 = (aot_gpr_4 & 1u); aot_gpr_6 = (0u + static_cast(-3)); aot_gpr_5 = (aot_gpr_5 & aot_gpr_6); aot_gpr_4 = (aot_gpr_4 << 1u); aot_gpr_4 = (aot_gpr_5 | aot_gpr_4); aot_mem.aot_direct_store8(aot_gpr_17 + static_cast(204), static_cast(aot_gpr_4)); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(900))); { const bool branch_taken = aot_gpr_4 == 0u; ctx.gpr[18] = (0u + static_cast(-1)); if (branch_taken) { goto L_08A7F990; } goto L_08A7F980; } L_08A7F980: ctx.gpr[31] = (0x08A7F988u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0066_entry, 66u, 696u, 0x0890EF94u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7F988u) goto L_08A7F988; AOT_REGCACHE_SYNC_OUT(); return; L_08A7F988: ctx.gpr[18] = (ctx.gpr[2] << 24u); ctx.gpr[18] = (static_cast(static_cast(ctx.gpr[18]) >> 24u)); goto L_08A7F990; L_08A7F990: aot_mem.aot_direct_store8(aot_gpr_17 + static_cast(205), static_cast(ctx.gpr[18])); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(900))); aot_gpr_5 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load8(aot_gpr_17 + static_cast(204)))))); aot_gpr_4 = (0u < aot_gpr_4 ? 1u : 0u); aot_gpr_4 = (aot_gpr_4 & 255u); aot_gpr_6 = (0u + static_cast(-2)); aot_gpr_4 = (aot_gpr_4 & 1u); aot_gpr_5 = (aot_gpr_5 & aot_gpr_6); aot_gpr_4 = (aot_gpr_5 | aot_gpr_4); aot_mem.aot_direct_store8(aot_gpr_17 + static_cast(204), static_cast(aot_gpr_4)); aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load8(aot_gpr_16 + static_cast(613)))))); aot_gpr_5 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load8(aot_gpr_17 + static_cast(204)))))); aot_gpr_4 = (aot_gpr_4 & 16u); aot_gpr_4 = (aot_gpr_4 >> 4u); aot_gpr_6 = (0u + static_cast(-5)); aot_gpr_4 = (aot_gpr_4 & 1u); aot_gpr_5 = (aot_gpr_5 & aot_gpr_6); aot_gpr_4 = (aot_gpr_4 << 2u); aot_gpr_4 = (aot_gpr_5 | aot_gpr_4); aot_mem.aot_direct_store8(aot_gpr_17 + static_cast(204), static_cast(aot_gpr_4)); aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load8(aot_gpr_16 + static_cast(617)))))); aot_gpr_5 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load8(aot_gpr_17 + static_cast(204)))))); aot_gpr_4 = (aot_gpr_4 & 4u); aot_gpr_4 = (aot_gpr_4 >> 2u); aot_gpr_6 = (0u + static_cast(-9)); aot_gpr_4 = (aot_gpr_4 & 1u); aot_gpr_5 = (aot_gpr_5 & aot_gpr_6); aot_gpr_4 = (aot_gpr_4 << 3u); aot_gpr_4 = (aot_gpr_5 | aot_gpr_4); aot_mem.aot_direct_store8(aot_gpr_17 + static_cast(204), static_cast(aot_gpr_4)); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(700))); ctx.gpr[2] = (aot_gpr_17 | 0u); aot_mem.aot_direct_store8(aot_gpr_17 + static_cast(195), static_cast(aot_gpr_4)); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(636))); aot_mem.aot_direct_store32(aot_gpr_17 + static_cast(456), std::bit_cast(aot_fpr_12)); aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load8(aot_gpr_16 + static_cast(698)))))); aot_mem.aot_direct_store8(aot_gpr_17 + static_cast(207), static_cast(aot_gpr_4)); aot_gpr_16 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(0))); aot_gpr_17 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(4))); ctx.gpr[18] = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(8))); ctx.gpr[31] = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(12))); jump_target = ctx.gpr[31]; aot_gpr_29 = (aot_gpr_29 + static_cast(16)); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } // PSPRECOMP_V812_SHARED_SCHED_JUMP goto LOCAL_SCHED_BOUNDARY; L_08A7FA3C: aot_gpr_29 = (aot_gpr_29 + static_cast(-16)); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(0), aot_gpr_16); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(4), aot_gpr_17); aot_gpr_16 = (aot_gpr_5 | 0u); aot_gpr_17 = (aot_gpr_4 | 0u); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(8), ctx.gpr[18]); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(12), ctx.gpr[31]); ctx.gpr[31] = (0x08A7FA60u); ctx.gpr[18] = (0u | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0162_entry, 162u, 279u, 0x08A8D860u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7FA60u) goto L_08A7FA60; AOT_REGCACHE_SYNC_OUT(); return; L_08A7FA60: { const bool branch_taken = ctx.gpr[2] == 0u; aot_gpr_6 = (0u + static_cast(180)); if (branch_taken) { goto L_08A7FA88; } goto L_08A7FA68; } L_08A7FA68: ctx.gpr[7] = (0u | 544u); aot_gpr_4 = (aot_gpr_17 + static_cast(180)); aot_gpr_5 = (aot_gpr_16 + static_cast(180)); ctx.gpr[31] = (0x08A7FA7Cu); aot_gpr_6 = (ctx.gpr[7] - aot_gpr_6); if (([&]() { /*PSPRECOMP_RESIDENT_SCHED_SAFE*/ if (rt.resident_generated_leaf_fast_allowed()) return rt.invoke_resident_generated_leaf<&vcs_resident_region_08B58100, 213u, 23u, 0x08B58100u>(ctx, &aot_mem, ctx.pc, ctx.gpr[2], aot_gpr_4, aot_gpr_5, aot_gpr_6, ctx.gpr[7], ctx.gpr[8], ctx.gpr[9], ctx.gpr[31]); AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_resident_scheduler_fallback<&recomp_unit_0213_entry, 213u, 23u, 0x08B58100u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7FA7Cu) goto L_08A7FA7C; AOT_REGCACHE_SYNC_OUT(); return; L_08A7FA7C: { const bool branch_taken = ctx.gpr[2] != 0u; if (branch_taken) { goto L_08A7FA88; } goto L_08A7FA84; } L_08A7FA84: ctx.gpr[18] = (0u | 1u); goto L_08A7FA88; L_08A7FA88: ctx.gpr[2] = (ctx.gpr[18] & 255u); aot_gpr_16 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(0))); aot_gpr_17 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(4))); ctx.gpr[18] = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(8))); ctx.gpr[31] = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(12))); jump_target = ctx.gpr[31]; aot_gpr_29 = (aot_gpr_29 + static_cast(16)); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } // PSPRECOMP_V812_SHARED_SCHED_JUMP goto LOCAL_SCHED_BOUNDARY; L_08A7FAA4: ctx.gpr[2] = (2216u << 16u); jump_target = ctx.gpr[31]; ctx.gpr[2] = (ctx.gpr[2] + static_cast(-1372)); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } // PSPRECOMP_V812_SHARED_SCHED_JUMP goto LOCAL_SCHED_BOUNDARY; L_08A7FAB0: aot_gpr_29 = (aot_gpr_29 + static_cast(-16)); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(0), ctx.gpr[31]); ctx.gpr[31] = (0x08A7FAC0u); goto L_08A7FAA4; L_08A7FAC0: ctx.gpr[31] = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(0))); jump_target = ctx.gpr[31]; aot_gpr_29 = (aot_gpr_29 + static_cast(16)); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } // PSPRECOMP_V812_SHARED_SCHED_JUMP goto LOCAL_SCHED_BOUNDARY; L_08A7FACC: aot_gpr_29 = (aot_gpr_29 + static_cast(-16)); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(0), aot_gpr_16); aot_gpr_16 = (aot_gpr_5 | 0u); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(4), aot_gpr_17); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(8), ctx.gpr[18]); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(12), ctx.gpr[31]); ctx.gpr[31] = (0x08A7FAECu); ctx.gpr[18] = (0u | 0u); goto L_08A7FAA4; L_08A7FAEC: if (ctx.gpr[2] == aot_gpr_16) { ctx.gpr[18] = (0u | 1u); goto L_08A7FB34; } goto L_08A7FAF4; L_08A7FAF4: ctx.gpr[31] = (0x08A7FAFCu); aot_gpr_17 = (0u | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0034_entry, 34u, 400u, 0x0888E51Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7FAFCu) goto L_08A7FAFC; AOT_REGCACHE_SYNC_OUT(); return; L_08A7FAFC: if (ctx.gpr[2] == aot_gpr_16) { aot_gpr_17 = (0u | 1u); goto L_08A7FB24; } goto L_08A7FB04; L_08A7FB04: ctx.gpr[31] = (0x08A7FB0Cu); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0165_entry, 165u, 295u, 0x08A9A6CCu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7FB0Cu) goto L_08A7FB0C; AOT_REGCACHE_SYNC_OUT(); return; L_08A7FB0C: aot_gpr_4 = (ctx.gpr[2] ^ aot_gpr_16); aot_gpr_4 = (aot_gpr_4 < static_cast(1) ? 1u : 0u); aot_gpr_4 = (aot_gpr_4 & 255u); { const bool branch_taken = aot_gpr_4 == 0u; aot_gpr_4 = (aot_gpr_17 & 255u); if (branch_taken) { goto L_08A7FB28; } goto L_08A7FB20; } L_08A7FB20: aot_gpr_17 = (0u | 1u); goto L_08A7FB24; L_08A7FB24: aot_gpr_4 = (aot_gpr_17 & 255u); goto L_08A7FB28; L_08A7FB28: { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_08A7FB34; } goto L_08A7FB30; } L_08A7FB30: ctx.gpr[18] = (0u | 1u); goto L_08A7FB34; L_08A7FB34: ctx.gpr[2] = (ctx.gpr[18] & 255u); aot_gpr_16 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(0))); aot_gpr_17 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(4))); ctx.gpr[18] = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(8))); ctx.gpr[31] = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(12))); jump_target = ctx.gpr[31]; aot_gpr_29 = (aot_gpr_29 + static_cast(16)); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } // PSPRECOMP_V812_SHARED_SCHED_JUMP goto LOCAL_SCHED_BOUNDARY; L_08A7FB50: aot_gpr_29 = (aot_gpr_29 + static_cast(-16)); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(0), aot_gpr_16); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(4), ctx.gpr[31]); ctx.gpr[31] = (0x08A7FB64u); aot_gpr_16 = (aot_gpr_4 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0034_entry, 34u, 409u, 0x0888E5A0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7FB64u) goto L_08A7FB64; AOT_REGCACHE_SYNC_OUT(); return; L_08A7FB64: aot_gpr_4 = (2234u << 16u); aot_gpr_4 = (aot_gpr_4 + static_cast(30760)); aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(108), aot_gpr_4); aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(124), 0u); aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-5472))); aot_gpr_4 = (aot_gpr_4 + static_cast(1)); ctx.gpr[2] = (aot_gpr_16 | 0u); aot_mem.aot_direct_store32(ctx.gpr[28] + static_cast(-5472), aot_gpr_4); aot_gpr_16 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(0))); ctx.gpr[31] = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(4))); jump_target = ctx.gpr[31]; aot_gpr_29 = (aot_gpr_29 + static_cast(16)); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } // PSPRECOMP_V812_SHARED_SCHED_JUMP goto LOCAL_SCHED_BOUNDARY; L_08A7FB94: aot_gpr_29 = (aot_gpr_29 + static_cast(-16)); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(4), aot_gpr_17); aot_gpr_17 = (aot_gpr_4 | 0u); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(0), aot_gpr_16); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(8), ctx.gpr[31]); { const bool branch_taken = aot_gpr_4 == 0u; aot_gpr_16 = (aot_gpr_5 | 0u); if (branch_taken) { goto L_08A7FC20; } goto L_08A7FBB0; } L_08A7FBB0: aot_gpr_4 = (2234u << 16u); aot_gpr_4 = (aot_gpr_4 + static_cast(30760)); aot_mem.aot_direct_store32(aot_gpr_17 + static_cast(108), aot_gpr_4); aot_gpr_5 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-17328))); aot_gpr_6 = (0u | 0u); aot_gpr_4 = (aot_gpr_6 < aot_gpr_5 ? 1u : 0u); { const bool branch_taken = aot_gpr_4 == 0u; aot_gpr_4 = (2246u << 16u); if (branch_taken) { goto L_08A7FBF4; } goto L_08A7FBD0; } L_08A7FBD0: aot_gpr_4 = (aot_gpr_4 + static_cast(17840)); goto L_08A7FBD4; L_08A7FBD4: ctx.gpr[7] = (aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(12))); { const bool branch_taken = ctx.gpr[7] != aot_gpr_17; if (branch_taken) { goto L_08A7FBE4; } goto L_08A7FBE0; } L_08A7FBE0: aot_mem.aot_direct_store32(aot_gpr_4 + static_cast(12), 0u); goto L_08A7FBE4; L_08A7FBE4: aot_gpr_6 = (aot_gpr_6 + static_cast(1)); ctx.gpr[7] = (aot_gpr_6 < aot_gpr_5 ? 1u : 0u); { const bool branch_taken = ctx.gpr[7] != 0u; aot_gpr_4 = (aot_gpr_4 + static_cast(176)); if (branch_taken) { goto L_08A7FBD4; } goto L_08A7FBF4; } L_08A7FBF4: aot_gpr_5 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-5472))); aot_gpr_4 = (aot_gpr_17 | 0u); aot_gpr_5 = (aot_gpr_5 + static_cast(-1)); aot_mem.aot_direct_store32(ctx.gpr[28] + static_cast(-5472), aot_gpr_5); ctx.gpr[31] = (0x08A7FC0Cu); aot_gpr_5 = (0u | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0034_entry, 34u, 411u, 0x0888E5E4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7FC0Cu) goto L_08A7FC0C; AOT_REGCACHE_SYNC_OUT(); return; L_08A7FC0C: aot_gpr_4 = (aot_gpr_16 & 1u); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_08A7FC20; } goto L_08A7FC18; } L_08A7FC18: ctx.gpr[31] = (0x08A7FC20u); aot_gpr_4 = (aot_gpr_17 | 0u); if (([&]() { /*PSPRECOMP_RESIDENT_SCHED_SAFE*/ if (rt.resident_generated_leaf_fast_allowed()) return rt.invoke_resident_generated_leaf<&vcs_resident_region_08ABE2C0, 174u, 470u, 0x08ABE2C0u>(ctx, &aot_mem, ctx.pc, aot_gpr_4, aot_gpr_5, aot_gpr_6, ctx.gpr[7], ctx.gpr[8], aot_gpr_16, aot_gpr_17, ctx.gpr[18], ctx.gpr[19], ctx.gpr[20], aot_gpr_29, ctx.gpr[31]); AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_resident_scheduler_fallback<&recomp_unit_0174_entry, 174u, 470u, 0x08ABE2C0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7FC20u) goto L_08A7FC20; AOT_REGCACHE_SYNC_OUT(); return; L_08A7FC20: aot_gpr_16 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(0))); aot_gpr_17 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(4))); ctx.gpr[31] = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(8))); jump_target = ctx.gpr[31]; aot_gpr_29 = (aot_gpr_29 + static_cast(16)); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } // PSPRECOMP_V812_SHARED_SCHED_JUMP goto LOCAL_SCHED_BOUNDARY; L_08A7FC34: aot_gpr_29 = (aot_gpr_29 + static_cast(-16)); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(0), aot_gpr_16); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(4), aot_gpr_17); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(8), ctx.gpr[31]); aot_gpr_16 = (aot_gpr_4 | 0u); aot_gpr_17 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(104))); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(112))); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(92))); aot_gpr_5 = (aot_gpr_5 + static_cast(48)); aot_gpr_6 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(aot_gpr_5 + static_cast(0)))))); aot_gpr_4 = (aot_gpr_4 + aot_gpr_6); ctx.gpr[7] = (aot_mem.aot_direct_load32(aot_gpr_5 + static_cast(4))); jump_target = ctx.gpr[7]; ctx.gpr[31] = (0x08A7FC6Cu); aot_gpr_5 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(aot_gpr_17 + static_cast(86)))))); ctx.pc = jump_target; if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_call(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7FC6Cu) goto L_08A7FC6C; AOT_REGCACHE_SYNC_OUT(); return; L_08A7FC6C: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(220))); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(112))); aot_mem.aot_direct_store32(aot_gpr_4 + static_cast(220), std::bit_cast(aot_fpr_12)); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(208))); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(112))); aot_mem.aot_direct_store32(aot_gpr_4 + static_cast(208), std::bit_cast(aot_fpr_12)); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(212))); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(112))); aot_mem.aot_direct_store32(aot_gpr_4 + static_cast(212), std::bit_cast(aot_fpr_12)); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(216))); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(112))); aot_mem.aot_direct_store32(aot_gpr_4 + static_cast(216), std::bit_cast(aot_fpr_12)); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(112))); aot_gpr_4 = (aot_gpr_4 + static_cast(192)); aot_gpr_5 = (aot_gpr_17 + static_cast(192)); { const std::uint32_t vfpu_address = aot_gpr_5 + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = aot_gpr_4 + static_cast(0); const std::uint32_t vfpu_words[4]{std::bit_cast(vfpu_value[0]), std::bit_cast(vfpu_value[1]), std::bit_cast(vfpu_value[2]), std::bit_cast(vfpu_value[3])}; aot_mem.aot_direct_store32_block(vfpu_address, vfpu_words); } aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(112))); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(72))); aot_gpr_6 = (0u + static_cast(-513)); aot_gpr_5 = (aot_gpr_5 & aot_gpr_6); aot_mem.aot_direct_store32(aot_gpr_4 + static_cast(72), aot_gpr_5); aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(124), 0u); aot_gpr_4 = (aot_mem.aot_direct_load8(aot_gpr_17 + static_cast(548))); aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(132), static_cast(aot_gpr_4)); aot_gpr_4 = (aot_mem.aot_direct_load8(aot_gpr_17 + static_cast(549))); aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(133), static_cast(aot_gpr_4)); aot_gpr_4 = (aot_mem.aot_direct_load8(aot_gpr_17 + static_cast(550))); aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(134), static_cast(aot_gpr_4)); aot_gpr_4 = (aot_mem.aot_direct_load8(aot_gpr_17 + static_cast(551))); aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(135), static_cast(aot_gpr_4)); aot_gpr_4 = (aot_mem.aot_direct_load8(aot_gpr_17 + static_cast(552))); aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(136), static_cast(aot_gpr_4)); aot_gpr_4 = (aot_mem.aot_direct_load8(aot_gpr_17 + static_cast(553))); aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(137), static_cast(aot_gpr_4)); aot_gpr_4 = (aot_mem.aot_direct_load8(aot_gpr_17 + static_cast(554))); aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(138), static_cast(aot_gpr_4)); aot_gpr_4 = (aot_mem.aot_direct_load8(aot_gpr_17 + static_cast(555))); aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(139), static_cast(aot_gpr_4)); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(108))); aot_gpr_5 = (aot_gpr_4 + static_cast(152)); aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(aot_gpr_5 + static_cast(0)))))); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_5 + static_cast(4))); jump_target = aot_gpr_5; ctx.gpr[31] = (0x08A7FD20u); aot_gpr_4 = (aot_gpr_16 + aot_gpr_4); ctx.pc = jump_target; if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_call(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7FD20u) goto L_08A7FD20; AOT_REGCACHE_SYNC_OUT(); return; L_08A7FD20: aot_gpr_16 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(0))); aot_gpr_17 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(4))); ctx.gpr[31] = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(8))); jump_target = ctx.gpr[31]; aot_gpr_29 = (aot_gpr_29 + static_cast(16)); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } // PSPRECOMP_V812_SHARED_SCHED_JUMP goto LOCAL_SCHED_BOUNDARY; L_08A7FD34: aot_gpr_29 = (aot_gpr_29 + static_cast(-16)); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(0), ctx.gpr[31]); ctx.gpr[31] = (0x08A7FD44u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0165_entry, 165u, 355u, 0x08A9AE40u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7FD44u) goto L_08A7FD44; AOT_REGCACHE_SYNC_OUT(); return; L_08A7FD44: ctx.gpr[31] = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(0))); jump_target = ctx.gpr[31]; aot_gpr_29 = (aot_gpr_29 + static_cast(16)); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } // PSPRECOMP_V812_SHARED_SCHED_JUMP goto LOCAL_SCHED_BOUNDARY; L_08A7FD50: aot_gpr_29 = (aot_gpr_29 + static_cast(-160)); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(136), aot_gpr_16); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(160), aot_gpr_5); aot_gpr_16 = (aot_gpr_4 | 0u); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(120), std::bit_cast(aot_fpr_20)); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(124), std::bit_cast(ctx.fpr[22])); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(128), std::bit_cast(ctx.fpr[24])); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(132), std::bit_cast(ctx.fpr[26])); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(140), aot_gpr_17); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(144), ctx.gpr[18]); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(148), ctx.gpr[19]); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(152), ctx.gpr[20]); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(156), ctx.gpr[31]); ctx.gpr[31] = (0x08A7FD8Cu); aot_gpr_5 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(aot_gpr_29 + static_cast(160)))))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0034_entry, 34u, 429u, 0x0888E7E8u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7FD8Cu) goto L_08A7FD8C; AOT_REGCACHE_SYNC_OUT(); return; L_08A7FD8C: aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(124), 0u); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(96))); ctx.gpr[18] = (aot_gpr_29 + static_cast(32)); { const bool branch_taken = aot_gpr_4 != 0u; aot_gpr_17 = (0u | 5u); if (branch_taken) { goto L_08A7FDBC; } goto L_08A7FDA0; } L_08A7FDA0: aot_gpr_5 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(aot_gpr_16 + static_cast(10)))))); aot_gpr_6 = (aot_gpr_29 + static_cast(112)); ctx.gpr[31] = (0x08A7FDB0u); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0166_entry, 166u, 47u, 0x08A9C6FCu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7FDB0u) goto L_08A7FDB0; AOT_REGCACHE_SYNC_OUT(); return; L_08A7FDB0: aot_gpr_4 = (aot_mem.aot_direct_load8(aot_gpr_29 + static_cast(112))); aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(96), ctx.gpr[2]); aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(4), static_cast(aot_gpr_4)); goto L_08A7FDBC; L_08A7FDBC: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(96))); aot_gpr_5 = (2237u << 16u); aot_gpr_5 = (aot_gpr_5 + static_cast(-28736)); aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load8(aot_gpr_4 + static_cast(207)))))); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_5 + static_cast(100))); aot_gpr_5 = (aot_mem.aot_direct_load16(aot_gpr_5 + static_cast(52))); { const bool branch_taken = aot_gpr_4 != aot_gpr_5; if (branch_taken) { goto L_08A7FDEC; } goto L_08A7FDDC; } L_08A7FDDC: ctx.gpr[31] = (0x08A7FDE4u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_compact_generated_leaf<&vcs_compact_leaf_08960424, 87u, 0x08960424u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7FDE4u) goto L_08A7FDE4; AOT_REGCACHE_SYNC_OUT(); return; L_08A7FDE4: { const bool branch_taken = 0u == 0u; aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(124), ctx.gpr[2]); if (branch_taken) { goto L_08A7FDF0; } goto L_08A7FDEC; } L_08A7FDEC: aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(124), 0u); goto L_08A7FDF0; L_08A7FDF0: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(112))); aot_gpr_5 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(7656))); aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(aot_gpr_4 + static_cast(86)))))); aot_gpr_5 = (static_cast(aot_gpr_4) < static_cast(aot_gpr_5) ? 1u : 0u); { const bool branch_taken = aot_gpr_5 == 0u; ctx.gpr[19] = (0u | 0u); if (branch_taken) { goto L_08A7FE18; } goto L_08A7FE08; } L_08A7FE08: aot_gpr_5 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(24))); aot_gpr_4 = (aot_gpr_4 << 2u); aot_gpr_4 = (aot_gpr_5 + aot_gpr_4); ctx.gpr[19] = (aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(0))); goto L_08A7FE18; L_08A7FE18: aot_gpr_4 = (ctx.gpr[19] + static_cast(96)); { const std::uint32_t vfpu_address = aot_gpr_4 + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = ctx.gpr[18] + static_cast(0); const std::uint32_t vfpu_words[4]{std::bit_cast(vfpu_value[0]), std::bit_cast(vfpu_value[1]), std::bit_cast(vfpu_value[2]), std::bit_cast(vfpu_value[3])}; aot_mem.aot_direct_store32_block(vfpu_address, vfpu_words); } aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(96))); { const bool branch_taken = aot_gpr_4 != 0u; ctx.gpr[19] = (aot_gpr_29 + static_cast(16)); if (branch_taken) { goto L_08A7FE4C; } goto L_08A7FE30; } L_08A7FE30: aot_gpr_5 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(aot_gpr_16 + static_cast(10)))))); aot_gpr_6 = (aot_gpr_29 + static_cast(113)); ctx.gpr[31] = (0x08A7FE40u); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0166_entry, 166u, 47u, 0x08A9C6FCu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7FE40u) goto L_08A7FE40; AOT_REGCACHE_SYNC_OUT(); return; L_08A7FE40: aot_gpr_4 = (aot_mem.aot_direct_load8(aot_gpr_29 + static_cast(113))); aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(96), ctx.gpr[2]); aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(4), static_cast(aot_gpr_4)); goto L_08A7FE4C; L_08A7FE4C: aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(96))); aot_gpr_5 = (aot_gpr_5 + static_cast(16)); aot_gpr_4 = (ctx.gpr[19] | 0u); ctx.gpr[31] = (0x08A7FE60u); aot_gpr_6 = (ctx.gpr[18] | 0u); goto L_08A7F4E8; L_08A7FE60: aot_gpr_4 = (aot_gpr_29 + static_cast(16)); { const std::uint32_t vfpu_address = aot_gpr_4 + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = ctx.gpr[18] + static_cast(0); const std::uint32_t vfpu_words[4]{std::bit_cast(vfpu_value[0]), std::bit_cast(vfpu_value[1]), std::bit_cast(vfpu_value[2]), std::bit_cast(vfpu_value[3])}; aot_mem.aot_direct_store32_block(vfpu_address, vfpu_words); } aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(40))); aot_gpr_4 = (15897u << 16u); aot_gpr_4 = (aot_gpr_4 | 39322u); aot_fpr_13 = std::bit_cast(aot_gpr_4); aot_fpr_12 = aot_fpr_12 + aot_fpr_13; aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(40), std::bit_cast(aot_fpr_12)); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(96))); if (aot_gpr_4 != 0u) { aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(96))); goto L_08A7FEB0; } goto L_08A7FE90; L_08A7FE90: aot_gpr_5 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(aot_gpr_16 + static_cast(10)))))); aot_gpr_6 = (aot_gpr_29 + static_cast(114)); ctx.gpr[31] = (0x08A7FEA0u); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0166_entry, 166u, 47u, 0x08A9C6FCu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7FEA0u) goto L_08A7FEA0; AOT_REGCACHE_SYNC_OUT(); return; L_08A7FEA0: aot_gpr_4 = (aot_mem.aot_direct_load8(aot_gpr_29 + static_cast(114))); aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(96), ctx.gpr[2]); aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(4), static_cast(aot_gpr_4)); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(96))); goto L_08A7FEB0; L_08A7FEB0: aot_gpr_5 = (17274u << 16u); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(456))); aot_fpr_13 = std::bit_cast(aot_gpr_5); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 < aot_fpr_13)) ? 0x00800000u : 0u); { const bool branch_taken = !((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { (void)([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0159_entry, 159u, 3u, 0x08A8007Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()); AOT_REGCACHE_SYNC_OUT(); return; } goto L_08A7FECC; } L_08A7FECC: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(96))); if (aot_gpr_4 != 0u) { aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(96))); goto L_08A7FEF8; } goto L_08A7FED8; L_08A7FED8: aot_gpr_5 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(aot_gpr_16 + static_cast(10)))))); aot_gpr_6 = (aot_gpr_29 + static_cast(115)); ctx.gpr[31] = (0x08A7FEE8u); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0166_entry, 166u, 47u, 0x08A9C6FCu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7FEE8u) goto L_08A7FEE8; AOT_REGCACHE_SYNC_OUT(); return; L_08A7FEE8: aot_gpr_4 = (aot_mem.aot_direct_load8(aot_gpr_29 + static_cast(115))); aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(96), ctx.gpr[2]); aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(4), static_cast(aot_gpr_4)); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(96))); goto L_08A7FEF8; L_08A7FEF8: aot_gpr_4 = (aot_mem.aot_direct_load8(aot_gpr_4 + static_cast(194))); { const bool branch_taken = aot_gpr_4 == aot_gpr_17; if (branch_taken) { (void)([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0159_entry, 159u, 3u, 0x08A8007Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()); AOT_REGCACHE_SYNC_OUT(); return; } goto L_08A7FF04; } L_08A7FF04: { const std::uint32_t vfpu_address = ctx.gpr[18] + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } ctx.gpr[19] = (aot_gpr_29 + static_cast(64)); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = ctx.gpr[19] + static_cast(0); const std::uint32_t vfpu_words[4]{std::bit_cast(vfpu_value[0]), std::bit_cast(vfpu_value[1]), std::bit_cast(vfpu_value[2]), std::bit_cast(vfpu_value[3])}; aot_mem.aot_direct_store32_block(vfpu_address, vfpu_words); } aot_gpr_4 = (16230u << 16u); aot_gpr_4 = (aot_gpr_4 | 26214u); aot_fpr_20 = std::bit_cast(aot_gpr_4); ctx.fpr[22] = std::bit_cast(0u); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(80), std::bit_cast(ctx.fpr[22])); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(84), std::bit_cast(ctx.fpr[22])); aot_gpr_4 = (15436u << 16u); aot_gpr_4 = (aot_gpr_4 | 52429u); aot_fpr_12 = std::bit_cast(aot_gpr_4); { const float fs = aot_fpr_20; const float ft = aot_fpr_12; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) ctx.fpr[24] = std::bit_cast(0x7FC00000u); else ctx.fpr[24] = fs * ft; } aot_gpr_4 = (15820u << 16u); aot_gpr_4 = (aot_gpr_4 | 52429u); aot_fpr_13 = std::bit_cast(aot_gpr_4); ctx.gpr[31] = (0x08A7FF4Cu); { const float fs = aot_fpr_20; const float ft = aot_fpr_13; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) ctx.fpr[26] = std::bit_cast(0x7FC00000u); else ctx.fpr[26] = fs * ft; } if (([&]() { /*PSPRECOMP_RESIDENT_SCHED_SAFE*/ if (rt.resident_generated_leaf_fast_allowed()) return rt.invoke_resident_generated_leaf<&vcs_resident_region_08B20998, 199u, 113u, 0x08B20998u>(ctx, &aot_mem, ctx.pc, ctx.hi, ctx.lo, ctx.gpr[2], aot_gpr_4, aot_gpr_5, aot_gpr_6, ctx.gpr[7], ctx.gpr[28], aot_gpr_29, ctx.gpr[31]); AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_resident_scheduler_fallback<&recomp_unit_0199_entry, 199u, 113u, 0x08B20998u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7FF4Cu) goto L_08A7FF4C; AOT_REGCACHE_SYNC_OUT(); return; L_08A7FF4C: aot_fpr_14 = ctx.fpr[26] - ctx.fpr[24]; { const float fs = aot_fpr_14; const float ft = ctx.fpr[0]; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_12 = std::bit_cast(0x7FC00000u); else aot_fpr_12 = fs * ft; } aot_fpr_12 = ctx.fpr[24] + aot_fpr_12; aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(88), std::bit_cast(aot_fpr_12)); aot_gpr_6 = (aot_gpr_29 + static_cast(80)); aot_gpr_4 = (0u | 27u); aot_gpr_5 = (ctx.gpr[19] | 0u); ctx.gpr[7] = (0u | 0u); aot_fpr_12 = std::bit_cast(std::bit_cast(aot_fpr_20)); ctx.gpr[8] = (0u | 0u); ctx.gpr[9] = (0u | 0u); ctx.gpr[10] = (0u | 0u); ctx.gpr[31] = (0x08A7FF84u); ctx.gpr[11] = (0u | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0062_entry, 62u, 716u, 0x088FF060u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7FF84u) goto L_08A7FF84; AOT_REGCACHE_SYNC_OUT(); return; L_08A7FF84: { const std::uint32_t vfpu_address = ctx.gpr[19] + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } ctx.gpr[19] = (aot_gpr_29 + static_cast(96)); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = ctx.gpr[19] + static_cast(0); const std::uint32_t vfpu_words[4]{std::bit_cast(vfpu_value[0]), std::bit_cast(vfpu_value[1]), std::bit_cast(vfpu_value[2]), std::bit_cast(vfpu_value[3])}; aot_mem.aot_direct_store32_block(vfpu_address, vfpu_words); } aot_gpr_4 = (48928u << 16u); aot_fpr_12 = std::bit_cast(aot_gpr_4); { const float fs = aot_fpr_20; const float ft = aot_fpr_12; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) ctx.fpr[24] = std::bit_cast(0x7FC00000u); else ctx.fpr[24] = fs * ft; } aot_gpr_4 = (16160u << 16u); aot_fpr_13 = std::bit_cast(aot_gpr_4); ctx.gpr[31] = (0x08A7FFACu); { const float fs = aot_fpr_20; const float ft = aot_fpr_13; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) ctx.fpr[26] = std::bit_cast(0x7FC00000u); else ctx.fpr[26] = fs * ft; } if (([&]() { /*PSPRECOMP_RESIDENT_SCHED_SAFE*/ if (rt.resident_generated_leaf_fast_allowed()) return rt.invoke_resident_generated_leaf<&vcs_resident_region_08B20998, 199u, 113u, 0x08B20998u>(ctx, &aot_mem, ctx.pc, ctx.hi, ctx.lo, ctx.gpr[2], aot_gpr_4, aot_gpr_5, aot_gpr_6, ctx.gpr[7], ctx.gpr[28], aot_gpr_29, ctx.gpr[31]); AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_resident_scheduler_fallback<&recomp_unit_0199_entry, 199u, 113u, 0x08B20998u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7FFACu) goto L_08A7FFAC; AOT_REGCACHE_SYNC_OUT(); return; L_08A7FFAC: aot_fpr_14 = ctx.fpr[26] - ctx.fpr[24]; { const float fs = aot_fpr_14; const float ft = ctx.fpr[0]; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_14 = std::bit_cast(0x7FC00000u); else aot_fpr_14 = fs * ft; } aot_fpr_12 = ctx.fpr[24] + aot_fpr_14; ctx.fpr[15] = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(96))); aot_fpr_12 = ctx.fpr[15] + aot_fpr_12; aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(96), std::bit_cast(aot_fpr_12)); ctx.gpr[31] = (0x08A7FFCCu); if (([&]() { /*PSPRECOMP_RESIDENT_SCHED_SAFE*/ if (rt.resident_generated_leaf_fast_allowed()) return rt.invoke_resident_generated_leaf<&vcs_resident_region_08B20998, 199u, 113u, 0x08B20998u>(ctx, &aot_mem, ctx.pc, ctx.hi, ctx.lo, ctx.gpr[2], aot_gpr_4, aot_gpr_5, aot_gpr_6, ctx.gpr[7], ctx.gpr[28], aot_gpr_29, ctx.gpr[31]); AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_resident_scheduler_fallback<&recomp_unit_0199_entry, 199u, 113u, 0x08B20998u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7FFCCu) goto L_08A7FFCC; AOT_REGCACHE_SYNC_OUT(); return; L_08A7FFCC: aot_fpr_12 = ctx.fpr[26] - ctx.fpr[24]; { const float fs = aot_fpr_12; const float ft = ctx.fpr[0]; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_12 = std::bit_cast(0x7FC00000u); else aot_fpr_12 = fs * ft; } aot_fpr_12 = ctx.fpr[24] + aot_fpr_12; aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(100))); aot_fpr_12 = aot_fpr_13 + aot_fpr_12; aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(100), std::bit_cast(aot_fpr_12)); aot_gpr_4 = (16416u << 16u); aot_fpr_12 = std::bit_cast(aot_gpr_4); ctx.gpr[31] = (0x08A7FFF4u); { const float fs = aot_fpr_20; const float ft = aot_fpr_12; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_20 = std::bit_cast(0x7FC00000u); else aot_fpr_20 = fs * ft; } if (([&]() { /*PSPRECOMP_RESIDENT_SCHED_SAFE*/ if (rt.resident_generated_leaf_fast_allowed()) return rt.invoke_resident_generated_leaf<&vcs_resident_region_08B20998, 199u, 113u, 0x08B20998u>(ctx, &aot_mem, ctx.pc, ctx.hi, ctx.lo, ctx.gpr[2], aot_gpr_4, aot_gpr_5, aot_gpr_6, ctx.gpr[7], ctx.gpr[28], aot_gpr_29, ctx.gpr[31]); AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_resident_scheduler_fallback<&recomp_unit_0199_entry, 199u, 113u, 0x08B20998u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08A7FFF4u) goto L_08A7FFF4; AOT_REGCACHE_SYNC_OUT(); return; L_08A7FFF4: aot_fpr_14 = aot_fpr_20 - ctx.fpr[26]; { const float fs = aot_fpr_14; const float ft = ctx.fpr[0]; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_14 = std::bit_cast(0x7FC00000u); else aot_fpr_14 = fs * ft; } aot_fpr_14 = ctx.fpr[26] + aot_fpr_14; ctx.pc = 0x08A80000u; AOT_REGCACHE_SYNC_OUT(); return; } #undef AOT_REGCACHE_SYNC_IN #undef AOT_REGCACHE_SYNC_OUT void recomp_unit_0158(Runtime &rt, AllegrexContext &ctx) { auto aot_mem = rt.memory().aot_fast_view(); recomp_unit_0158_entry(rt, ctx, 0u, aot_mem); } void register_generated_unit_158(Runtime &runtime) { runtime.register_generated_unit(158u, 0x08A7C000u, 16384u, &recomp_unit_0158, &recomp_unit_0158_entry); // PSPRECOMP_V812_COMPACT_REGISTRATION: same entry set, looped once in Runtime instead of source-expanded calls. runtime.register_generated_entry_mask(0x08A7C004u, &recomp_unit_0158, "recomp_unit_0158", kEntryMasks_recomp_unit_0158, 64u); } } // namespace psprecomp